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. This blog is intended to investigate and understand the performance of extreme robotics for better safety planning.
The general platform built is in the previous blog, https://nocomputerbutphone.blogspot.com/2018/09/converged-iot-platform-build-notes.html; the general operation note is in https://nocomputerbutphone.blogspot.com/2018/09/converted-iot-drone-operation-notes.html. This chapter page focuses on gaining mission performance with the mindset of illicit pilots/builders, as reported here.


Collective Pitch Curve For Fast Travel

It was discovered that 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 orange and black rotor tips with ESC governer. 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, 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 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 airspeed.

For gyro mode fast travel with both thin and thick blade airfoils with a higher RPM at 3143, we set the hovering pitch to slightly lower than 5 degrees but higher than 4 degrees 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, 3143, versus 2643 of attitude mode. We will refer to these 2 different RPMs as 31 hundred or 3150 and 26 hundred or 2650, respectively, in further discussion for brevity. The RPM change from accelerometer mode to gyro mode has a ratio of 3141/2643=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 23 points, 23 / 29.9 x 6.2 degrees = 4.77 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 23x0.98 = 22.5 in the LCD display. But the angle is 4.77 because the 22.5 points display 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. 22.5/200x(2011-989)+1500=1615us is the actual PWM signal. (1615-1500)x50%+1500=1557.5us is the mixer output toward the servo. (1557.5-1000)/1000x83=46.27 is the angle from the position where PWM is 1000us in the servo. 46.27-(83/2.0)=4.77 is the angle from neutral.
The maximum RPM of the 14-poles motor (7 times as many poles as the simplest 2-pole elementary school motor) is 50,000/7 = 7143, so the hovering point is 200 x 3143 / 7143 = 88. 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 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 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.

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 alternative swinging motion.

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.

CG Setting

During the research of the alternative camera Insta360 Go, it was discovered that moving CG forward stabilized the diving, as seen here. When using the alternative 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 alternative 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 alternative 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 alternative 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 

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.

Rotor Balancing For RPM 3150 And Setting

In build notes https://nocomputerbutphone.blogspot.com/2018/09/converged-iot-platform-build-notes.html , we visually balanced the rotor for lower RPM 2607 to 0.03 grams precision, but the high 3150 RPM 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 3150 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 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.

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. The suspension mounting has an intrinsic tilt angle of balanced forces by the length of the cable ties from the saddle ridge over the camera. Compared to the horizontal setup in the picture on the right, for the tilting of 16 degrees, pictured on the left, the zip ties are pre-bent about 4mm rearward. 
 
The zip ties are pre-bent at 2 points 3mm apart to form the smooth saddle. The thru-holes should be slightly loose because the zip ties will be removed and replaced thru the velcro strip gaps. With the ThumbPro, the pre-bending positions are 36mm and 41mm from the base for the horizontal-forward camera mounting. Also, with the ThumbPro, 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 that the zip tie can sink in. This is because the ThumbPro has a shorter flat surface for the zip ties to hold the camera.

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.

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 alternative 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 installation of the feathering shaft and pulling, as shown in the following video on the left. A correctly assembled grip should feel surprisingly and pleasantly slick in the pulling test.
 
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 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 sometimes. 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. The feathering friction is more significant without thrust bearings, so the physical P-to-I ratio differs from 1:20 for terminal speed traveling. 
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.


Mechanical/electronic calibration to fix aborted/diminished dive

The example on the right is of diminished dive happened with 1510us center pitch PWM output. The full deflection of the stick is 720 degrees per second. The 10us from center 1500us is 10 / 500 x 720 x 0.1(exp) x 10(sec) = 14.4 degrees tilted dive at the bottom of the dive.





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 alternative 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    

HD Video

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 GyroFlow.AppImage 1.5 accommodates the rotation by itself, and we don't enter any rotation information. For the Rotor Balancing section's good dive video stabilization configurations, the full view is in this screenshot,
, for the raw footage here.
The Gyroflow software is designed to make a smooth, continuous curve, tracing the movement of an action camera. The software can not trace our "zero steering" terminal speed traveling properly. The PID setting section shows that the Gyroflow software does not improve diving videos. This problem can not be improved by a smoother rotor or by reduced gyro noise. In fact, when gyro noise is extremely low, the software can not detect craft movement to make time synchronization points with the experiment raw video here on the right. Two stabilization attempts are made with their respective screenshots in the following 2 pictures. In the first attempt, the auto synchronization incorrectly added a -26ms synchronization point; in the second attempt, the synchroniztion points were manually removed. The resulting stabilized videos are nearly identical and no improvements over the original raw footage.
The first attempt's result is on the left; the second attempt's result is on the right. Both have obvious twitches on the lower and right areas of the video.
   
To workaround the zero steering problem in the Gyroflow software, the first video of this chapter page uses the alternative non-zero collective pitch in the Collective Curve Pitch section to generate craft attitude movements, emulating a level traveling, as shown in the below gyro data screenshot. The raw video is in the Collective Curve Pitch section. But the successful stabilization can not be replicated consistently, and the below screenshot's synchronization points and many other attempts do not produce successful stabilization.


Rail Guard

Kydex material is flexible and can be cut with household scissors. In the base build, we outlined the edge of the carving about 2-3mm from the straight stud wall. Here we drill 1.2mm anchor holes for the rail guard as close to the stud wall as possible or as far away from the plane edges as possible to maximize the strength of the anchor holes against tearing forces. Then the rail is attached by Kevlar threads or M1.5 screws.

No comments:

Post a Comment