Wednesday, August 8, 2018

Converged IoT Platform Near The Edge Of Space

Disclaimer: Please check with local authorities before a mission. This blog is not responsible for injuries and damages caused by building and using this platform. Also, the rolling shutter correction, which should have been disabled, and the turning blades in HD footages with Gyroflow cause all jello/twitches in this chapter's videos wherever jello/twitches are present. It sabotages all videos, whether the original raw video is smooth or shaky, as shown in the following side-by-side comparisons.


This blog is intended to investigate and understand the performance of extreme robotics for better safety planning for cases as the following news. 

And discuss how inexpensive and capable modern components are with a sub-30 dollar motor.
The general platform built is in the previous blog, build-notes; the general operation note is in operation-notes. Our single-rotor platform with collective pitch has one extra degree of control for precision target diving,  compared to fixed-pitch crafts with unplanned displacements, as discussed in the video on the right. We build this new extreme robot based on the endurance build but divert 20 grams of the mass for battery toward crash resilience and computing, GPS (5.2g) tracking, higher crash-resistance rotor grips (extra 2.5g), higher resolution HD camera (extra 4.6g), and thicker flexible wires (3.8g extra) for crash resilience, thicker motor construct (1.7g extra), 1 extra power buck convert (0.9g) for 2.5K camera that has extra power requirement, and thicker landing skid (0.8g). The build is pictured below; the bill of material follows. 





Blade Linear Velocity And Angular Momentum For Fast Mission Travel

Reducing rotor diameter and increasing blade velocity from the endurance build logically should improve wind resistance and increase top speed. In the endurance build chapter page, it was discovered that the small-diameter Sokolov-twisted and Clark-Y-slanted foils could not be used in single-rotors and could not be fixed without deteriorating efficiency and motor overheating/overclocking. But, even disregarding efficiency, Sokolov-twisted and Clark-Y-twisted foils have reduced blade tip speed relative to wind or travel. 12-inch and 14-inch Sokolov-twisted blades rotate at 3250 and 2550 rpm as designated and extrapolated in the below graph, respectively. For comparison, the symmetrical airfoil we use rotates at 2640 rpm at the lowest for endurance with an 18.6-inch diameter, 
18.6/12*2640/3250*100%=126%, and 
18.6/14*2640/2550*100%=138% as fast. 
To catch the velocity up, 12-inch and 14-inch Sokolov-twisted blades will have to rotate at 4100 and 3500 rpm, respectively, with dangerous overheating. Remember, as tested in the endurance build, the slightly negative pitch that affords the 4100 and 3500 RPM has more drag than a positive drag in Sokolov-twisted and Clark-Y-slanted foils.


To refocus on straight blades, the ideal solution (the skinny blade unavailable in the market) for straight, symmetrical airfoil or endurance improves wind resistance for fast travel because the blade tip velocity is high at 3340 RPM, all in the same mode of operation for high endurance. Blade tip airspeed is 3340/60*(193*2+52)/1000*3.14 = 77 m/s, the same as having 3140 RPM on the prototype blades of 210mm and broader hub span, 3140/60*(210*2+52)/1000*3.14 = 77.5m/s. 

But is 77 m/s overkill and unnecessary? It was discovered that for a prototype with 210mm blades, the high-fuel-efficiency mode's RPM2640 is sufficient for both straight diving and cruising for both the orange (nylon) and black (graphite reinforced nylon) Oxy210 blades, 2.7mm and 2.5mm cord thickness (not blade root thickness), respectively. The first two diving videos below show the blade tips for using orange and black rotors with an ESC governor. The third video shows the pre-prototype RPM2640 setup without an RPM governor during the "motor selection" with our pre-prototype builds. However, RPM2640 with 2.5mm blades is prone to forward travel stall, blade tip velocity 2640/60*(210*2+52)/1000*3.14 = 65m/s, as shown at 2:02 and 2:12 of the first video, due to the helicopter physics, which tilts the craft's head upward when traveling against the wind. RPM2640, with 2.5mm thin blades, caused several flyaways in high winds. It is well known that a thicker airfoil allows a higher attack angle without stalling because the thicker convex surface exerts higher pressure on the gas to press it onto the airfoil firmer, except at the very tail tip where thickness approaches zero regardless of airfoils, and that the lift coefficient does not change when airfoil thickness changes. Also, the stall angle rises when Reynolds's number increases with the airspeed. In short, this recapitulates toward a separate operating mode at 77m/s or higher velocity as the solution.

We refocus on the 77 m/s with an angular momentum of 0.1 as the solution to solve the problem. In the current off-the-shelf parts market, the prototype and the production build need a compromise of a fast-travel operation mode (RPM and collective pitch angle) with less fuel efficiency than the high-efficiency mode. For the prototype build, the solution is RPM at 3140, setting the hovering pitch to slightly lower than 5 degrees but higher than 4 degrees, trading off 8% fuel efficiency as seen in operating note of cL/cD 23 versus 25. This angle between the orange and green lift curves so that the lift slope doesn't turn steep, which would have translated to more difficult altitude management. RPM of the new hovering pitch is 19% higher, 3100, versus 2600 of attitude mode. The RPM change from accelerometer mode to gyro mode has a ratio of 3100/2600=1.19. According to the NASA education page in the operating notes https://nocomputerbutphone.blogspot.com/2018/09/converted-iot-drone-operation-notes.html, the gyro mode should require the inverse of the square of the 1.19 ratio on the collective pitch, 1.19**2=1.42, because the lift is proportional to the airfoil pitch; in contrast, the lift is proportional to the second power of RPM-airspeed. The new pitch angle should be 6.2/1.42=4.37 degrees. However, the Reynolds number changes with RPM, shifting from the aqua-colored curve toward orange and green-colored curves, suppressing lift at a sub-6-degree angle but augmenting lift past 8 degrees. So, I experimented hovering to see that the mid-throttle collective pitch point needed to be 22 points, 22 / 29.9 x 6.2 degrees = 4.56 degrees of the collective pitch in the channel 1 curve. Notice that the mid-throttle is scaled by 0.98 in the transmitter and shown as 22x0.98 = 21.56 in the LCD display. However, the angle is 4.56 because the display of 21.56 points refers to the 989-2011us PWM range. The 0.98 scaling sets the PWM signal range 1000-2000 microseconds for 200 points for "83 degrees" as measured as the full servo horn travel angle. 21.56/200x(2011-989)+1500=1610us is the actual PWM signal. (1610-1500)x50%+1500=1555us is the mixer output toward the servo. (1555-1000)/1000x83=46.0 is the angle from the position where PWM is 1000us in the servo. 46.0-(83/2.0)=4.56 is the angle from neutral.
The maximum RPM of the prototype 24-pole motor (12 times as many poles as the simplest 2-pole elementary school motor) is 50,000/12 = 4167, so the hovering point is 200 x 3140 / 4167 - 100 = +51. When you listen to the hovering RPM, 3143/60=52Hz, you hear 2 octaves higher harmonics multiplied by the 2 blades, 52x2x2x2=416Hz, because this is the octave most people can hum and sing along. This frequency is the Baroque tuning frequency of an A4 music note. The attitude mode hovering sound is conversely an F#4 note. These 2 pitches have the same note interval as the first 2 notes of the Dvorak New World symphony folk tune of the 1800s era, which means that you can validate the powertrain set up in the field just by humming the song and matching it to the tone of the switching between the 2 modes.
As the video on the right shows, the free fall from the antenna tip to the church spire, 0:08 to 0:19, is about 200 m. The dive started next to the building, but the craft relented its position and drifted behind the building at the bottom of the dive. The craft's body provides drag and gives the craft the equivalent of a minute elevator down torque. Trying to improve the dive precision by keeping the lowest collective pitch at 1-2 degrees to provide compensation by using single-rotor helicopter dynamics and converting collective pitch force to craft elevator tilting at high forward speed, results in difficult-to-pilot, swinging motion, as tested in the video on the lower right, with the compensation with 8 points in the -100 to 100 RF transmitter point range.

For the production build, the solution can be simply an RPM 3300 for the 193 mm blades because that is how a 193 mm blade can achieve the needed 77m/s and 0.1 angular momentum. Still, we use RPM 3420 instead of the ideal 3300 for the margin for weather adjustments for blade velocity, and the angular momentum also has a slight safety margin above the target of 0.1, 1/12 * (13.4 + 5)/1000 * 0.438**2 * 3400/60*6.28 = 0.105. And the RF controller channel 5 bypass is 3420*7/50000*200-100 = -4.  In contrast, the prototype's angular momentum is much higher than necessary, at 1/12 * (13.4 + 5)/1000 * 0.438**2 * 3250/60*6.28 = 0.12, even though its blade velocity is right on target of 77m/s. Logically, the higher the angular momentum, the harder it is to make a smooth, balanced rotor.

I have experimented with an overall collective curve from 6 points at the first quarter and increasing by 17 points every quarter of the entire throttle range, ending at 57 points, 6.2 x 57 / 29.9 = 11.8 degrees maximum, as pictured below. But the high-end punching has craft yaw lapse, gradually spinning to the left while ascending, as seen in the first video of this discussion section

The workaround of increasing the P gain of the tail motor can not completely remedy the problem due to the near verticle drag slope at 11 degrees, as seen in the operating note's NASA foil data. The solution is pitch curve points at 0, 10, 23, 36, and 49, incrementing 13 points from the second to the last quartile of the stick range. Maximum collective pitch is 6.2x49/29.9=10.2 degrees. The zero collective pitch at the low end avoids the pre-prototype swinging motion. 

And the pitch curve for hovering in production is 23 instead of 22 in prototype. 
(3430/3140)**2 * 23/22 = ((210*2+52)/(193*2+52))**3

The estimated terminal speed is about 24.5 m/s. It is estimated graphically below.
The speed-time plot of free fall with drag is well know to be a tanh function with terminal speed in the scaling factors. The integral distance-time plot shows 10 seconds of dive with 203 m travel at 24.5 m/s terminal speed. Assuming pull-up force is 2.5 G, the craft stops within 1 seconds past the 10 seconds of dive with 12 m overshooting travel. The church's spire's height is about 50 m. The roof of the tower is about 240 m above ground, and the antenna mast likely adds another 25 m where the diving started.

The production craft's servo mixing is larger than the prototype craft's because the servo arms are shorter relative to the blade pitch arm width, the p-value in the following diagram. 
This mixer setting is the only difference between the prototype Betaflight dumpall and the production dump_all file. Production configuration is on the left.


CG Setting

During the pre-prototype build with the substitute camera Insta360 Go, it was discovered that moving CG forward stabilized the diving, as seen here. When using the substitute Runcam Hybrid2, which weighs the same as Insta360 but distributes weight rearward 6cm on the recording board that weighs 5.4g and without the 3.5g custom bracket and without the 2-gram Caddx Ant camera, and with the 49-gram, 450mah, battery front close to the battery cavity front edge, the dive swung as shown in videos here.
The weighing of the substitute components is in the pictures below. The loss of head-down torque with the Runcam Hybrid2 setup was 5.4gx6cm+(2g+3.5g)x9cm = 81.9g-cm, equivalent to having an 81.9gram-cm/30cm=2.7gram heavier tail motor.

What's worse is that the loss of head-down torque disrupts the level travel pitch holding, as shown in the following videos.
For the substitute Runcam Hybrid2, the solution is to modify the 450mah battery with double-sided mounting tape and Velcro to protrude 2-3cm (about 1.5-2.5cm in the horizontal component).
When tested with Runcam Hybrid2, there was no difference in flight characteristics between 2cm and 3cm protrusion. The solution for a 10.1-gram substitute Rumbcam Thumb with a 1.1-gram nano3 camera, and a 55.4-gram battery, needs similar protrusion. With Runcam ThumbPro, the head-down torque loss is less severe at (18Insta-13ThumbPro+1.1Ubracket+(2.0Ant-1.1Nano))*9cm-(55.4Batt-49Batt)*6=24.6g-cm. And so, the battery protrusion is only about 1cm, as tested in the first video of this chapter's web page.

So, the actual head-down torque is 
4.3g(servo)*1cm + 0.7g(Guard)*3cm + 1.7g(VTX)*4cm + 0.8g(buck))*4.5cm + 0.7g(skid)*5.5cm +  1.2g(antenna)*6.5cm + 55.4g(Battery)*6.5cm + 12.7g(Camera)*9.5cm + 1.2g(FPV)*10cm = 521 g-cm
; the actual tail-down torque is 
(5.6g(GPS)+9g(servos)+2.8g(computer)+4.2g(ESCs)+2.1g(skid))*3cm + 1.2g(RX)*(8.5cm+3.5cm) + 4.8g(boom)*(12.8cm+3.5cm) + 2.4g(fin)*(25.5cm+3.5cm) + (6.9g(motor)+1.5g(prop)*(25.5cm+3.5cm+1cm) = 485g-cm
. The original main gear radius is 3.5cm. The math is 
4.3*1 + 0.7*3 + 1.7*4 + 0.8*4.5 + 0.7*5.5 + 1.2*6.5 + 55.4*6.2 + 12.7*9.5 + 1.2*10 = 521
(5.6+9+2.8+4.2+2.1)*3 + 1.2*(8.5+3.5) + 4.8*(12.8+3.5) + 2.4*(25.5+3.5) + (6.9+1.5)*(25.5+3.5+1) = 485 

During the pre-prototype development, the substitute 230s frame has congruency as the 180 smart frame as the following diagram.

PIDs

It was discovered that the physical P-to-I ratio of 1:20 is suitable for straight-down terminal speed diving.
In the video, the left side is controlled by Betaflight with the vintage scaling numbers set by a racing champion robot or an anonymous human defector. Pitch PIDs at -1°C is 45/118/0.

The CC3D flight computer uses physical PID parameters on the video's right side. Pitch PIDs 0.002/0.04/0, tail yaw PIDs 0.0015/0.0034/2.1e-5 at -9°C. Both sides have identical main blades, RPM, swash mix, servos, tail motor, tail prop, weight, and weight distribution.

More than 3 different racing controllers in the market have "define" of
PTERM_SCALE 0.032029
ITERM_SCALE 0.244381
DTERM_SCALE 0.000529
PID_MIXER_SCALING 1000 PID_SERVO_MIXER_SCALING 0.7

, vintage scaling in their pid.h file.
For gyro-only-stabilization, straight-line traveling (the b and c terms in pid2 of Matlab are canceled by zero steering), we convert and cross-reference CC3D PIDs with Betaflight PIDs by applying the vintage scaling on the right column.
         pCC3D / 0.032029 / 0.7 * 1000/2 = pRacing
, i.e.  0.00200  / 0.032029 / 0.7 * 1000/2 =  45
, i.e.  0.0015   / 0.032029 / 0.7 * 1000/2 = 33
        iCC3D  / 0.244381 / 0.7 * 1000/2 = iRacing
, i.e.   0.0400  / 0.244381 / 0.7 * 1000/2 =  117
, i.e.   0.0034  / 0.244381 / 0.7 * 1000/2 = 10
         dCC3D / 0.000529 / 0.7 * 1000/2 = dRacing
, i.e.  2.1e-5 / 0.000529 / 0.7 * 1000/2 = 28
In racing quadcopter controllers, the 1000/2 factor emulates PWM 1500+/-500 servo travel of helicopter.
The 0.7 factor is another racing controller scaling in the developers' mind to protect servos from perceived overrun.
It was discovered that the PI values must be scaled together with the same physical scaling factors to compensate for air density conditions, as tested and recorded here. According to NASA's education page, an airfoil's lift is proportional to air density, which is linearly proportional to absolute temperature; an airfoil's lift is proportional to attack angle, which is first-order propotional to P gain. To fit the PID-temperature data, the temperature is given a 1.3th-order power to account for attack angle's non-purely-linear power on lift and exaggerate the PID range in the tabulation, with -9°C as the reference temperature as in the comparison video at the beginning of this discussion section,
physical Ppitch=0.002*(tempK/264)^1.3
physical Ipitch=0.040*(tempK/264)^1.3
physical PI for roll is 1/3 of those for pitch
, and the resulting tabulation for racing PIDs on the right table.
However, even with exaggeration, the PIDs in the right table does not cover the full range of PIDs needed to compensate for the variation of the swashplate slop. For an old swashplate with many crashes, the video shows the play between the outer and inner rings of the swashplate's bearing.
The swashplate is prone to slop because the bearing is designed to bear lateral/radial forces, but crash forces can be longitudinal/axial. For example, the brass inner ring of the swash can bite into the titanium shaft during impact, and the DFC link simultaneously pushes the outer ring of the swashplate bearing upward. The swashplate and the grip bearings are the only two metal-to-metal grinding points in the rotor of this craft, but the grip has thrust bearings designed to withstand longitudinal crash forces. 
When gauging the slop degradation, hold the craft vertically to drape the blades and gently tug the DFC links up and down to see the scissoring movement's end position, as pictured here, which is with the swashplate with considerable slop used in the first video of this chapter page.
Tugging up produces a 2mm gap between the front blade on the left and the hind blade on the right; tugging down produces an 8mm gap between the front blade on the right and the hind blade on the left, as pictured above.
With a brand-new swashplate, tugging up produces no gap, while tugging down produces a 3mm gap, as pictured below. 
For gauging purposes, the tuggings must make the blade tips switch places or perfectly align with a tugging direction while producing a gap with another tugging direction. The gaps need to be summed because the swashplate is not perfectly centered due to the limited precision of servos, which is 0.83 degrees, as discussed in the operating notes https://nocomputerbutphone.blogspot.com/2018/09/converted-iot-drone-operation-notes.html. In the examples, the old swash has a sum of gaps of 2+8=10mm, while the brand-new swash has 3+0=3mm. Our tabulation uses a 6mm gap sum as the neutral reference value. The loose swashplate example in the first video of this chapter page requires and uses cyclic PIDs 10-6=4 entries above the calculated values in the tabulation; the brand new swashplate with a 3mm gap sum requires cyclic PIDs 3-6=-3 entries below the calculated values in the tabulation. When brand-new DFC links are used with brand-new swash, the slop will be too small to gauge using the sum-and-difference method because you can't always find a swash position to make the scissoring of blades switch directions. This happens when the slop sum is smaller than 3mm - the limit of servo precision. To understand this limit, using the brand-new swash pictures as an example, the perfectly centered swash should produce (3+0)/2=1.5mm gaps either tugging up or down. The example picture shows the servos lower the blade tips by 3-1.5=1.5mm from the ideal perfect center. The servos are arcsin(1.5mm/207mm)=0.415 degrees too low. 207mm is the length of the blade's leading edge as viewed on the ruler. But adding 0.83 degrees would make the servos 0.83-0.415=0.415 degrees too high, producing a 207mm*sin(0.415)=1.5mm deviation of swash center, the same deviation as before, just a different place. When the slop is too small to gauge, the required PIDs can only be assumed to be 4 to 5 notches below the tabulation calculated entry. 

The following 2 videos show the diving with PIDs setting of the brand-new swashplate at 3 entries below 60°F, at the 30°F entry. The raw footage is on the left, and the post-production stabilized video is on the right.
 
Oversetting PIDs with high temperature settings produce craft vibration, as shown in the following 2 videos for comparison. The 2 tests were only 1 day apart with identical craft setup. But the second day's morning temperature was uncharacteristically low for summer and caught me off guard.
 
However, it was tested that underclocking/overclocking RPM, does not influence the required PID, as shown in the 2650 RPM discussion earlier and here, which uses the same old, loose swashplate.
The lookup PID only concerns terminal speed travel with zero steering stability in the FHD action camera view. It doesn't make the craft fly the same across different temperatures and rotor RPMs. For example, at RPM 2640, the lookup PID doesn't make the craft flip at the same speed as RPM 3140. Likewise, the lookup PID doesn't make the craft fly the same during winter and summer. But it ensures the precisions of straight-line terminal speed traveling both winter and summer.

So what happens when PIDs are set from the lookup as-is without adjusting for swashplate slop? The PIDs are 3 notches too high for a brand-new swashplate with a 3mm slop gap sum. The video below on the left has such an as-is PIDs setting, and the shaking of the craft at 0:22 and 0:27 is unnerving to the pilot because the craft is making a smooth turn, equivalent to 0:22 of the previous video of optimal PIDs setting with 3650 RPM. In the video below on the right, the PIDs are 5 notches too high for the same brand-new swashplate, and viewers, not just the pilot, can see that the craft is shaking itself apart. 
On the other hand, with the old loose swash, the lookup PIDs are 4 notches too low in the following video. The left side is the raw video, and the pilot can see shaking at 0:15-0:16 during a smooth turn. The right side is the stabilized version, and the footage sees twitches throughout the level traveling.
The shakings for insufficient and overshooting PIDs appear similar in the raw videos. But piloting can feel that the shaking with insufficient PIDs has a bigger rolling banking component while the shaking with overshooting PIDs has a bigger pitching, up-and-down component.

Tail PID

It has been tested and shown that, with Kd=0, at the bottom of the dives or whenever the main rotor torque has rapid, sudden increases, the direct drive tail lapses while the motor spins up with finite acceleration. The high integral produces winding resulting in "collision with thin air" bounces at 0:57, 1:16, and 1:41 of the video below on the left. One solution is to use a high torque tail motor of 1306 size and Kd=0, such as the video below on the right. But the CG setting is incorrect with the heavier tail motor, so the general solution is to set Kd to around 2.1e-5 in CC3D, or equivalent D=28 in Betaflight, with a small Ki with 1106/1303.5 motor.
The fact that whenever a control axis has ample, instant corrective torque, the Kd should be zero acknowledges that our rotor attitude control PID with Kd=0 is a correct setting because the variable pitch rotor can produce the desired corrective torque utilizing the considerable spinning momentum of the main rotor within half a revolution of the rotor without speeding up or slowing down any propeller. This also explains the contrast of why multi-rotor systems need Kd tuning for roll and pitch control.
Yet the general solution needs to consider wind conditions. In high winds, the I term should be lowered by 30%, D term should be upped by 20% for Betaflight to prevent wind-induced oscillation, as the following 2 experiments show.  
The dump_all configuration has the tail PIDs for wind resistance. Again, the software of this drone is a technology of convergence between utility drones and racing drones with single-rotor's physical endurance. The dump_all configuration is shared between the racing drone and the utility drone. The tabulation gives temperature 0.5th-order power to scale PIDs because tail PIDs control tail RPM with a 2nd-order power on thrust. To optimize tail stability for cinematic shots during low wind, set tail I=8*1.3=10.4, set tail D=35/1.2=29.2, and then adjust the single digit and decimal with temperature.

Higher Rotor Balancing With Angular Momentum Higher Than 0.1

In the platform's operating note, we visually make sure the rotors are symmetrical. For the prototype build with RPM 3140 and the production build with RPM 3420, the rotors has imbalances not visible to the eyes
. The first thing to take care of is the tightness of the rotor grips. For consistency, we set the blade draping angle to ideally 90 degrees, as the video on the right shows.
If the blades are over-tightened, imbalance easily results in mechanical vibration; if the grips are too loose, such as in the video on the right, the P-I ratio is different from usual and unpredictable.
Going from 2650 to 3100 and higher RPM requires fine-tuning the rotor with hand-tethered hovering. Here the R/D test retained the original decal of the blades. And the tuning took 3 tries in the research process, as pictured below. First, I fixed the tremoring by cutting out a corner of a decal. When aggressively trimming the corner, it was over-corrected, and tremoring reoccurred. The balance was restored by cutting the corner of the other decal. Once the amount of taping was determined, all decals were removed, and the clear tape was put in place for the required balancing. The balancing progress during the research is the 4 pictured below from left to right. The conclusion is that one square centimeter of tape makes all the difference because the rotor is stretched by centrifugal force like a musical instrument wire, and the 3143 RPM is on one of the resonance frequencies of the device. The thickness of tape 0.002-0.003inch = 0.005-0.0075cm, weight (assuming density 1g/cm-square) 0.005-0.0075 grams. This means RPM3150 needs a precision balance of 1/100th of a gram.
However, during multiple test builds, it was discovered that most builds could not achieve smooth balance and that blade swapping was needed. One of the successful blade pairings was pictured above on the right with a green checkmark. The 2 distinct symmetries, rotation and mirror, for balancing the rotors is diagramed here.

The swapping needs to restore the rotational symmetrically of curved blades because our rotor hub does not have a cord-wise balancing bolting like the Bell 222 rotor, as highlighted in the picture on the right. The 2 blades with up-down warpings can be none-mirroring as the right side in the above diagram when subjected to 3150 RPM's centrifugal force. The solution is to pick and match a pair that dynamically match the warping to each other.
The match needs not take blade ages into account. In the above example good match with a green checkmark; the older blade's color fades, but it is the best match picked out from 3 different sets of purchases. And the static warping mismatch is also disregarded. One warps up, and the other down, but they balanced up when spun up to 3150 RPM. All the other blades from the 3 sets fail to match the lower blade in the picture. The only way to check the pairing is to spin them up to full speed. And each pairing test needs to be checked with 2 different orientations of the grip installation. In the pictured example, only one orientation can produce a smooth spin. The other orientation always has vibrations that can't be tuned out with scotch tape.

Before the pairing process of a purchase, mark each blade with a unique serial number you manage, then weigh each blade individually and note the heaviest blade. The following pictures show an example of the heaviest blade, blade 3, of 7.301 grams. Then use scotch tapes spread evenly on each blade (except the heaviest one) to patch all the blades in the purchase to the heaviest weight. This ensures that the pairing process focuses on matching the the warpings of the blade material.

So, what happens if the rotor is axially off-balance by more than 1/100th of a gram in the field? In the videos below on the left, with perfect balancing, the PIDs are 2 notches lower than required because the swash slop is 10mm, the largest. The diving loses its heading hold about 2 seconds before pull-up at 0:11, but video stabilization patches up the insufficient PIDs below on the right.
But, when a 2 square-cm balacing tape is intentionally removed and immediately performing another test, the dive has loss of heading hold at 0:08 and 0:09, and the stabilization result is sub-par, with blurring at 0:07 and 0:09, to the above good video.
When inspecting the gyro data, both good and sub-par dives are 11 seconds between 2 green pitch-up dips in the following 2 pictures. The first picture is the good dive; the second is the sub-par one. And the blue-band noise level of the sub-par dive is about twice as thick. The good dive has a long period of quietness between 05:49 and 05:55, while the sub-par one has no quiet period.

The ultimate smooth balancing has a lateral (on the side) ballast, in addition to the axial balancing, as follows with 24 AWG copper wires.

The first loop has the crossing beneath the DFC bolting and excess wire trimmed. Then, pinch and turn the wire for a few turns. In the example on the right, the 7 loops on one side are the correct balancing because 14 loops were tried on one side, and zero loops on either side were also tested to be lesser balance. This example ballast weighed 0.2 grams with 7 loops.  However, this level of ultra balance is not required for smooth HD video shooting.





FPV And Action Camera

I have tested four different power supply configurations. First, the FPV and action camera share a buck converter, and the VTX does not have stub power tapping wires for the FPV camera; there was diagonal line noise in the FPV feed. Then the main buck converter was replaced and stub power tapping wires are added to VTX. The FPV and action camera share a buck converter. Still severe diagonal line noise in the FPV feed.
After swapping the shared buck converter, still obvious diagonal line noises.
Finally, the FPV camera used the VTX power tapping, and diagonal line noises resolved.
But wait, the TPU mount produces jello for the HD video, as shown on the right. The TPU mount is no better than just 3 zip ties in the original IoT craft build. Add a 6-8mm wide mounting tape to the front plate edge, as pictured below on the left. The double-sided mounting tape's non-stick backing should stay on the top side, contacting the camera body so that the camera can slide off for maintenance. Only peel off the backing on the bottom side bonding to the craft. 
  
When tying down the camera, use enameled wires, which allow some hand manipulation of the final angle, which should have a tilt to compensate for helicopter physics that needs a tilt (roll) angle for in-place hovering. Don't use Kevlar thread in this case because it is complex to navigate through the gaps of the zip ties, as shown in the following pictures. With the ThumbPro camera, use the rotary disk to cut a notch at the joint between the camera lens pole and the camera body, as pictured on the right, so the zip tie can sink in. 


The TBS Unity VTX, either pro or pro32 nano, comes with 4 wires about 9cm long.
3 wires connect VTX to FPV camera, and the 4th wiretaps the battery's power to the HD action camera.


The non-shielded, high-power TBS Unity Pro VTX has an oscillation problem with impedance changes on terminal points. As discussed by YouTubers and pictured below,
The solution is to bend the wiring out of the terminal points to tune the impedance, as pictured below, with the verification video on the right.
The tuning picture above on the left is the closeup of the CG Setting section's setup picture. And with the same setup, shown in the image in the CG Setting section, the sharing of the VTX power with servos is incidentally verified here not to be the source of the oscillation.

Mechanical/electronic calibration to fix aborted/diminished dive

 The example on the right is of diminished dive happened with 1495us center pitch PWM output. The full deflection of the stick is 720 degrees per second. The 5us from center 1500us is 5 / 500 x 720 x 0.25(exp) x 6(sec) = 10.8 degrees tilted dive at the bottom of the dive. And this tilting is also very obvious when tethered hovering in hand.



Hardware Modification

First, to trim the motor's stater base, preserve the outer ring as a guard against accidental rotary tool slips. Any rotary tool cuts are pre-cuts that don't go through the plate. Then, 6-inch long nose pliers bend along the pre-cut edges, and metal fatigue breaks the material. Trimming the 4004 motor stater saves 36.1-34.8=1.3 grams, as pictured below of the substitute 4004-300kv motor. The 2 pictures also reveal that the 300kv motor is about 2.5 grams heavier than the 400kv motor.
The good dives are reproducible consistently using Oxy2 grips, which have thrust bearings pictured here. 
When installing the Oxy2 grips, watch out for factory assembly mistakes that occur about once every 10 pieces by the tentative(without washers and without hard cranking) installation of the feathering shaft and pulling, as shown in the following video on the. But, first use a marker to mark a dot to make sure, if the pulled grip rotates smoothly by itself or by rotating the shaft and the other grip's bearing provides the smoothness. A correctly assembled grip set should feel surprisingly and pleasantly slick in the pulling test on both grips.
https://youtu.be/TO3bzg03NIM?si=063b4jaL0kc1dJRn

The following technique is not correct because either good grip on one side can make a smooth rotation.

 
The factory assembly sometimes misplaces a high-error inner thrust disk instead of the low-tolerance outer thrust disk, as explained in the video above on the right. Discard the bad grip. The outer thrust disk needs to hug the feather shaft tightly because the radial bearing's inner tube needs to rest on the outer thrust disk without sinking into the crevice between the shaft and the disk, which would result in transferring centripetal, axial force onto the junction between the outer radial bearing's inner and outer tube. The general IoT platform build uses Align250 main grips without thrust bearings to avoid the added build complexity.

The general build's Align main rotor grips without thrust bearings can also dive at terminal speed properly, as in the following video, but only with brand-new grips if without modifying PIDs, as seen in the previous section about calibration of electronic PWM. Unless you trim the rotor blade roots, the Align250 grips are too short to accommodate a thrust bearing on the far side, like the Align300 grips. With wearing, the feathering friction is more significant without thrust bearings, so the physical P-to-I ratio differs from 1-to-20 (as seen in CC3D, or, unscaled) for terminal speed traveling,as shown in the following video.
For maximum torque for instant punching, main rotor's ESC RPM governer P-Gain can be as high as 0.5 without motor oscillation (yes, motor RPM can oscillate, producing audible noise),
 
 

Highly Reliable RF Control

In the general operating notes https://nocomputerbutphone.blogspot.com/2018/09/converted-iot-drone-operation-notes.html , we showed that 4004 motors need the toned-down governor P-gain of 0.13 for proper RF control lost recovery. But, a high P-gain of 0.5 is needed for high-performance "punch up." In the RF control signal loss and recovery exercise in the video on the right, the 4004 motor's high torque with sudden high throttle breaks the motor anti-rotation zip tie when the ESC governer P-gain is 0.5. The wreckage of the crash has main motor power wires twisted due to anti-rotation zip tie failure. A common strategy is to increase the RF range to increase reliability. The TBS Crossfire RF control transmitter and receiver setup follow.




Canted Tail Rotor Setting

The build's helicopter tail rotor is not on the rotation plane of the main rotor. It has a small right-roll torque on the craft, and the gyroscopic precession makes it tilt backward and fly backward. The parasitic torque increase as the throttle increases. The pullback problem can be discovered in gyro mode travel with sudden maximum throttle, the tilt backward happens between 0:31 and 0:33. Just 2 seconds of pullback already sends the craft away from the car where it hovers initially. Then a forceful pitch down is applied in a panic at 0:33. At the end of second 33, the car is seen in front of the craft, compared to it is on the side of the craft at the beginning of the punch-up. Please notice that the tilt angle is barely perceived, lowering horizon for about half an inch when viewing this video on computer monitor. That means FPV pilot can not notice the problem is occurring.
On a high-wind day, the throttle may need to be kept high throughout the mission, and that causes the fly-away. The actual fly-away video footage shows traveling over roads and people, which was unlawful. It is only resolved when the throttle is lowered. The solution is the canted angle same as the Seahawk helicopter's design. The fix can be verified line-of-sight, on the right, and the maximum throttle punch-up at 0:30-0:33 happens rather uneventfully, straight up.

FPV Fishbowl Optical Illusion

A 30-frame-per-second FPV feed of a tail-spin, craft shaking itself apart, has the following 3 consecutive final frames,
, and the craft appears to move from the left side of the road to the ball park on the right side of the road more than 210 feet between 2 frames of 0.033 seconds illustrated in the satellite photo on the right.

In the third frame to the camera failure, the camera points toward the south east corner of the park; in the second to the last frame, the camera points toward near straight north.
The apparent mach-6 hypersonic movement optical illusion needs to be re-fitted into pilot's mental picture for the craft's actual movement. Due to the near-170 degree wide angle lens of either Goqotomo or Caddx Turtle, the camera can display overlapping objects after craft turning 160 degrees. In the above first and second frame, the area at the overlap of line of sight is the actual position of the craft. In the last frame, the battery pack is seen thrown off the craft, and the craft crashed on to the right curb of the road as circle-highlighted in the satellite photo. The craft's actual position is closer to the right curb of the road on the peripheral of the thrid and second frame than it appears.

All objects in the FPV feed are "squeezed" toward the center of the screen from all angles, and the pilot needs to know that the craft is actually positioned closer to the objects on the screen's periphery than they appear. This is the same principle of wide-angle rear mirrors where car manufacturers warn, "Objects in mirror are closer than they appear." The same principle applies to the footage of the mission leading to the tailspin in the video on the right.

At exactly 1:00 mark, the craft appears to be outside of the ballpark over the row of pine trees lining the south side street on the peripheral of the screen, but the craft is actually closer to the pine trees, likely right above them. 12 seconds later, at the 1:12 mark, the apparent position of the craft has moved the improbable 1000 feet to the northwest side of the curved road, even though the actual position is still in the confine of the park because the view is exactly the same as the third frame to the camera failure video picture frame. Between the 1:34 and 1:36 mark, the craft appears to move the impossible 600 feet from the southeast side outside the park to the curved roadside crash landing point within 2 seconds. The craft moved from near the park's center to the curb of the road, 80 feet at most, within 1 second.

The conclusion is that the craft has been within the confine of the ballpark all though out the entire mission doing very small maneuvers.

Navigation With GPS

The GPS connection needs baud rate 115200 , for HGLRC F411, on UART1(TX1/RX1) as the following. All these configurations are part of the "dump all" file in operating note https://nocomputerbutphone.blogspot.com/2018/09/converged-iot-platform-build-notes.html .Softserial, as the 3rd serial line, controls the video transmitter and is already soldered on the S5 lead as shown in the build note. This arrangement is based on the technical note from HGLRC.
The navigation depends on the 3 digits of coordinates as highlighted in the following video.  The historical definition of the metre dictates that the biggest of the 3 digits correponds to about 1km distance (actually about 1.1km on latitude and 0.9km on longitude). And diving requires 10m precisition, which is the smallest of the 3 digits. The heads-up display also shows the distance home, which is about 180m as shown in the thumbnail screen of the video. And the corresponding home latitude 3 digits is close to 021+(180m/11m) = 037, as shown at the landing of the video.The OSD elements' locations in the dump_all configuration https://drive.google.com/file/d/1_asy-pvVoEm3Tlr_Lams4AKPT4plXA37/ are pre-configured to be more centralized to the center of the video picture so that multiple substitute FPV cameras can see all the information elements. So, the exact element locations must be adjusted to align the latitude and longitude digits for each locale, except with the Nano3 camera in North America. For example, in the Eastern hemisphere, the missing negative sign of longitude pushes the decimal point one place to the left. The VTX setting does not use Pit Mode because the extremely low VTX power renders the video picture distorted and can be mistaken as hardware failure. The VTX setting is meant for SmartAudio VTX with 4 power levels, "powervalues 14 20 26 27" with the TBS Unity Pro32 Nano.

FPV Landing Procedure

 Gyro-only mode landing often results in capsizing due to the drifting nature of the gyro mode, as seen in the last few seconds of the video on the right when the pseudo touch down at 1:43 has a remaining altitude, maybe 1 foot, and the drift scraped the grass at 1:45 resulting in capsizing.
  Aborting landing in gyro-only mode also often results in a crash due to altitude drop with the large maneuvering nature of gyro mode. Gyro mode spot landing is often nearly impossible, even fly line of sight. Here in the following video, the landing approach, trying to avoid the fence, is deemed too high at 0:05 in the video here below,
and the go-around at 0:06 results in a steep increase in craft speed and altitude drop, resulting in a crash. A seemingly smooth touchdown in gyro mode can still capsize due to the general high speed approaching the target in the last video on the right.
Forgetting about switching to attitude mode can occur during high workload situations such as combating high wind while locating an obstacle landing patch impromptu.
So, the trick is to flip SwitchC to use accelerometer-assisted leveling mode for the final approach, and that should be trained into the pilot's reflex because attitude mode landing is appropriate in nearly all circumstances. And there should be a time to familiarize the wind conditions after changing to attitude mode before the actual touchdown, as shown in the footage here    

Diving Pullout

4-series lipo is required in this procedure.
When pulling out of a terminal velocity dive, first cyclic pitch up from negative 90 to negative 45 degrees, then add a collective pitch. Do not add a collective pitch first because helicopter physics dictates that the craft pitches upward, resulting in stalled movement with a collective pitch. The negative 45-degree attitude is enough to slow down the dive and make a horizontal movement because there is lift due to relative air movement that gives a small equivalent collective pitch (not enough to have a "receding blade stall").If, without a careful zero-collective-pitch maneuver, in the video below on the right (with Sunnysky v2806 400kv motor and 20A ESC), the pullout had stalled, stumbled movement.
3-series lipo is discussed in the substitute parts chapter page.

Motor, ESC, Shaft, and Battery Substitute

In addition to the prototype motors, the T-Motor MN2806 400kv works, as shown in the following diving. This dive uses a 10A 1-3S DYS ESC and a carbon fiber main shaft, the same as in the endurance build. And this dive uses a brand new Align 250 Sport grip set.

The 4 substitutes is the standard of the endurance build.
As pictured, this dive also uses a dedicated battery pack for the full HD camera.


Do Not Use Rolling Shutter Correction And Do Tilt Camera Slightly Down With Gyroflow

The FPV camera arrangement leaves the Runcam Thumb Pro in the upside-down position. All the HD videos of this chapter has the following 2 screenshots as the configuration,
The default settings in Gyroflow are all good except the rolling shutter correction. Disable it as follows.

Sources of jello are often related to shutter, as reported by Valley FPV below. A source of tremor is newer BLHeli_32 ESC that uses the same working frequency of 24kHz as the action camera's gyro sensor's working frequency, as reported by Valley FPV. But, according to the original BLHeli's manual, our ESC can not be (mis)configured to use the 24kHz working frequency.


When the helicopter blades are prominently visible in the HD camera's view, Gyroflow is confused, as in the video below on the left. Gyroflow's auto-sync shows yellow and orange flags of camera timing offset. The fix is to tilt the camera slightly down and away from the rotor blades, as in the video below on the right. 
  
Using the same craft build, the dive on the right was done one hour after the bad Gyroflow problem in the video on the left. There was no balancing work in the rotor in between. The FPV feed of the good dive is https://www.youtube.com/watch?v=1ryHxWiM1qU, which is similar in stability to the bad dive's FPV feed.


Sunnysky 2806 Motor On Carbon Fiber Shaft

 It uses 3 Kevlar strand inserts for the Sunnysky 2806 motors on a worn carbon fiber shaft. 
The substitute 2806 650KV motor doesn't produce noticeable excess heat compared to a 2806 400KV motor. But, as expected, a 2806 motor has noticeable extra heating compared to a 4004 motor. This 650KV was tested in the previous section's HD camera tilt-down test. All other videos on this page are with the non-substitute production 2806 400KV motor.




No comments:

Post a Comment