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 and discussing how inexpensive and capable modern components are with a sub-50-dollar motor.

The general platform built (utility drone) 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 and unpredictable displacements, as discussed in the video on the right. We build this new extreme robot based on the endurance build but divert about 15 grams of the mass from the battery pack toward crash resilience and signal transmission, GPS (3.3g) tracking, more robust landing skid (1.1g extra), higher RF control receiving (1.8g extra) thicker flexible wires (3.2g extra), titanium main shaft (extra 2.8g), extra video transmission antenna (2.5g extra). 3.3+1.1+1.8+3.2+2.8+2.5 = 14.7g. The battery pack is about 20 grams lighter, 87.2+2.4+0.8+0.4-70.1 = 20.7g. The build is pictured below; the bill of materials is provided below. 


RPM 3430 With 180 mm Blades For Racing

(SI default units except
otherwise stated)
Prototype High
Endurance Build
Prototype
Racing Build
Production High
Endurance Build
Production
Racing Build
RPM 2640 3100 3250 3430
Rotor Diameter  18.6 in/472mm 18.6 in/472mm 16.1in/410mm 16.1in/410mm
Hover Blade Angle 6.2 degrees 4.8 degrees 5.47 degrees 4.85 degrees
Blade Mass 14.6 grams 17 or 14.6 grams 13.3 grams 13.3 grams
Moment Of Inertia
3.6388e-4 4.0843 or 3.5e-4 2.5885e-4 2.5885e-4
Angular Momentum
0.101 0.133 or 0.114 0.088 0.093
Blade Tip Speed 65(146mph) 77(173mph) 68(153mph) 72(162mph)
Mid Collective-Throttle Stick
Blade Angle Meaning
neutral buoyancy neutral buoyancy 12% higher than
neutral buoyancy
12% higher than 
neutral buoyancy
The endurance optimization from prototype 210mm blades to 180mm blades did not improve endurance but did increase blade tip velocity, which we call a "high speed efficiency zone," incidentally optimizing racing and wind resistance. Summary table here on the right.  

Reducing rotor diameter and increasing blade tip 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 70% 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 for a 250-gram lift , as  designated and extrapolated in the graph below . Their blade tip speeds are 3.14*(12*25.4/1000)*3250/60=52m/s and 3.14*(14*25.4/1000)*2550/60=47m/s, respectively. For comparison, the symmetrical airfoil we use rotates at 2640 rpm at the lowest for endurance with an 18.6-inch diameter, has a blade tip speed of 3.14*(18.6*25.4/1000)*2640/60=65m/s. 
To patch up the velocity (before improving upon the prototype build), 12-inch and 14-inch Sokolov-twisted blades would have to rotate at 4100 and 3500 rpm, respectively, with slight motor overheating. Remember, as tested in the endurance build, the slightly negative pitch affording the 4100 and 3500 RPM has more drag than a positive drag in Sokolov-twisted and Clark-Y-slanted foils.


But the biggest problem, as shown in the endurance build note, is the lack of gyroscopic stabilizing angular moment, much lower than 0.1 kg⋅m^2/s of the prototype endurance build. When Sokolov-twisted and Clark-Y-slanted rotors were spun to match the angular momentum of the prototype endurance build, even without improving upon the prototype endurance build, the overheating became a liability.

A prototype rotor with 77 m/s blade tip speed was built to refocus on straight blades, which performed successful terminal speed dives. But was 77 m/s overkill and unnecessary? It was discovered that for a prototype with 210mm blades, the high-fuel-efficiency setting RPM2640 was 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 was 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 video on the left, 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, except at the very tail tip where thickness approaches zero.

For the prototype build, the solution was increasing RPM by 19% to 3100 for 77m/s balde tip speed because the prototype efficiency mode's blade speed was not optimized to high speed efficiency zone, setting 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, 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.25/1.42=4.4 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.8 x 6.25 degrees = 4.6 degrees of the collective pitch in the channel 1 curve. Notice that the mid-throttle is scaled by 0.978 in the transmitter and shown as 22x0.978 = 21.5 in the LCD display. However, the angle is 4.6 because the display of 21.5 points refers to the 989-2011us PWM range. The 0.978 scaling sets the PWM signal range 1000-2000 microseconds for 200 points for "83.8 degrees" as measured as the full servo horn travel angle. 21.5/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.8=46.5 is the angle from the position where PWM is 1000us in the servo. 46.5-(83.8/2.0)=4.6 is the angle from neutral. 

The prototype build was subjected to maximum climbing (punch) test with an overall collective curve from 6 points in the first quarter and increasing by 17 points every quarter of the entire throttle range, ending at 57 points, 6.2 x 57 / 30 = 11.8 degrees maximum, as pictured on the right. But the high-end punching has craft yaw lapse, gradually spinning to the left while ascending, as shown in the first video of this section. The workaround of increasing the P gain of the tail motor could 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 prototype was subjected to terminal speed zooming (diving) 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, resulted in difficult-to-pilot, swinging motion, as tested in the video on the lower right, with the compensation with 6 points of collective pitch in the -100 to 100 RF transmitter point range.

Nonetheless, the prototype verified that the stable terminal speed that our build can handle is at least 24.5 m/s or 55MPH or 90 km/h. It is calculated graphically below. The speed-time plot of free fall with drag is well known 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 the punch-out force is 2.5 G, the craft stops within 1 second past the 10 seconds of dive with 12 m overshooting travel. The church's spire's height is about 50 m. The tower's roof is about 240 m above ground, and the antenna mast likely adds another 25 m where the diving started.
We try to approach the 77 m/s blade tip speed with an angular momentum of 0.1 as the guide for the production build. The calculated hovering angle for racing mode is 4.85 degrees =  5.47(measured high-efficiency in-place hovering) / (3430/3250)^2 = 4.85 degrees. The production build's racing mode pitch curve is set to 0, 13, 26, 39, 39, stipulated collective pitch at (83.8/2) * 39 / 100 / 2 =8.2 degrees because this is generally considered a high-performance region of an airfoil. The zero collective pitch at the low end avoids the pre-prototype swinging motion. The mid-point's collective pitch is (83.8/2) * 26 / 100 / 2 =5.45 degrees, 12% more than needed for hovering, about the same extra angle as the production operation's high efficiency (takeoff) mode. This means that switching between the 2 modes gives the pilot the same "feel" of lift. 

So, the conclusion of this RPM change exercise is, 77 m/s blade tip speed is indeed overkill, at the expense of mission time. But why do we need a different RPM for racing at all? The answer is that the 410 mm rotor diameter used during endurance optimization is not 18 mm wide blades that we predicted to give 36 minutes of endurance. The part selection is off the shelf, and the 5% increase in racing mode is a fine tuning.


Use A Moderate C-Rating Battery For High Capacity While Providing Strong Surge Power As High-C Batteries By Helicopter Physics

Moderate C-Rated batteries are low-C by the hobby industry speech due to marketing pressure. It was discovered during the endurance build that the wide helicopter rotor acts as a flywheel energy capacitor, and the low-C (hobby industry speech) airsoft batteries work well with it, have good longevity. However, airsoft batteries are elongated and arranged inside the fuselage, not taking advantage of the strap-on concept of the high-crash-resilience general build note. 

A Voltek audio recorder was installed to compare the main rotor RPM recovery during diving punch-outs with non-elongated batteries that fit in the strap-on configuration. The audio fingerprint provides quantitative measurements in addition to visual dive punchout comparisons in the endurance build. 
120C marked battery GNB Beat The Competition (GNB Beat for short) and 90C marked CNHL SpeedyPizza were compared to the production-built 60C marked GNB LongRange battery. All batteries weigh within a 1-gram margin of error from one another. The audio fingerprints below show identical RPM fluttering recovery S curves between the production build within 70% discharge and CNHL SpeedyPizza within 95% discharge. The GNB Beat battery was also audio fingerprinted, but not shown here. The RPM fluttering is an artifact of the ESC's RPM governor adjusting the RPM. The production build is just as powerful for power punch-outs as a high-C-marking battery when using the same ESC RPM PID governor production parameters.

LongRange 850mAh 4S 60C

Spectroid spectrum at 5:20 arm minutes

at 6:50

at 8:24
.
SpeedyPizza 600mAh 4S 120C

Spectroid spectrum at 4:47 arm minutes

at 6:30

at 7:42
.
Both batteries, nearly brand new, were also tested with 570mAh of proximity missions after the audio card was removed for performance. In the following two videos, they have identical total climbs of 1100m on windy days.
For the LongRange battery, the discharge is about 575/830x100%=69%; for the high-C-marking battery, the discharge is about 575/580x100%=99%. The high-capacity battery has a good safety reserve of about 830-575=255mAh; the high-C-marking battery has no safety reserve of about 580-575=5mAh and crash landed. High-C marked (industry speech for 90+C) batteries are not useful for helicopters.

With extreme robotics missions, the LongRange battery has a lifespan of about 8 cycles, as tested to failure in the video on the right. 3 tested packs have similar lifespans, but the other 2 packs are not documented.

The non-sustained punch of the 8th cycle of the GNB Beat battery is very similar to that of the LongRange battery's same cycle performance in the 2 videos here for comparison. Neither could climb fast past the 6-minute time.
No obvious signs of degradation at the 7th cycle of all 3 batteries, as the documented LongRange battery. Again, high-C marked batteries only add dead weight and are not useful for helicopters.

Strap-On Battery Solves Fluid Vortex Resonance 

Prototype's enclosed battery configuration was changed in the production build to a strap-on configuration as seen in build notes, giving a nearly indestructible craft body, as summarized in the table below.  The accidental discovery that the attached battery configuration made an indestructible craft body is in the crash video below on the right. The crash that should have resulted in the destruction of the battery, rotor DFC components, motor mount truss, and bottom plate, instead, only had a broken top plate at the front protrusion - there was no detectable damage to the battery.   
Prototype Build Production Build
Battery pack setup Enclosed Strap-on
Contact with body
during diving
Sliding Pressed head-on
Contact with body
during crash
Head-on impact Deflected-off
Vortex Resonance
if tight mounting
No Yes
Battery Munting Blind Mounting Visually Measured
Crash damage Severe Indestructible
The video below on the left (for testing bad tail bumps with a near-death battery) in April 06 shows another startling example of the production build's robustness. The crash at terminal velocity caused zero damage, so on April 10, the correction of the tail bumps is described in the tail PID configuration section of this page, which is also shown as the pre-fix video below on the right with a video serial number immediately adjacent to the crash video, proving no fix of any damage was made.
 
Action cameras logically have proprietary motion blur and other features that consumers cannot control, making them difficult to be a converged solution with high levels of control for a wide range of applications. Nonetheless, action cameras were used during prototype builds, as pictured below on the left, with stable video on the right (post-stabilization result). The enclosed configuration is shown in the picture below on the left, where the bottom of the battery is at the zinc colored screw's level and the aft wall of the battery is behind that screw.

FPV cameras are on the trajectory to become open source with OpenIPC and are chosen for production builds. But when the prototype's action camera block was removed from the front battery bay roof, it resulted in high headwind vibrations, as shown in the video (first dive) below on the left. When the battery pack's mounting was strengthened, the resonance became stronger and more persistent, as shown in the video below on the right.
The wrong solution that creates extra problem was to use soft, extended battery mounting, as pictured below on the left that was taken immediately after test flight (video below on the right) landing. The front mount point is 2 cm in front of the battery tray lip; the rear velcro also gave a gap between battery and the bottom plate's front truss. Both with no-adhesive-backing soft velcro strap. Head-on wind vibration was eliminated video below on the right. But it resulted in side-wind vibration 0:27 to 0:31 of the video because the extended mounting was too long to hold the battery steadily.

The raw video of above Gyroflow stabilized video is below on the left. In the wrong solution picture, the extended mounting incorporates a Velcro loop cloth on the ceiling of the battery bay. The roof cushion is for craft attitudes when the battery touches the roof, such as inverted or diving vertically down. Without this cushion, the battery knocking on the roof produces yet another vibration, as shown in the video below on the right.  So, the experiment with extended mounting discovered an additional problem, not just the head wind vibration.

PID tuning and tightening the battery logically can also divert the craft's whole mechanical system resonance frequency. However, testing with downshifting PID to the equivalent of 60 degrees F colder temperature's PID did not shift the frequency enough, as shown in the following 2 videos. The video on the left is raw FPV footage; the video on the right is Gyroflow stabilized but still shows fluid vortex vibration during vertical dive.

The correct solution has 2 parts. The strap-on mounting, as shown in the general build note, gives a 5 mm gap between the top battery velcro and the battery tray's lip, and it also gives a 5 mm gap between the aft wall of the battery and the bottom plate, as pictured here below on the left. Then the lip itself needs to be trimmed out of the red part in the picture by the injection mold seam line, same as in endurance build, to stop the knocking.

The good result video immediately before the above picture was taken is on the right. But all the other good result videos in the parts note are with this 2-part solution.




Emax 9051 F3P Servo And "Tail Servos" Interchangeable With A Fixed Set Of Control PIDs

Prototype adjusted PIDs with air density, temperature, and swashplate slop; production build only adjusts RPM and discards swashplate with crash damages.
It was discovered that the physical P-to-I ratio of 1:20 is suitable for straight-down terminal speed diving with a 188 Hz low-pass gyro filtering at 1 kHz PID looping rate.
In the video, the left side is controlled by Betaflight (our production build) with the vantage scaling numbers set by a racing champion robot or an anonymous human defector as follows,
PTERM_SCALE  0.032029
ITERM_SCALE  0.244381
DTERM_SCALE  0.000529
PID_MIXER_SCALING 1000 
PID_SERVO_MIXER_SCALING 0.7
.  More than 3 different racing controllers in the market follow such a "define" of scaling in their pid.h file. Pitch PIDs at -1°C is 45/118/0 on the left side. The prototype  CC3D flight computer used 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 had identical main blades, RPM, swash mix, servos, tail motor, tail prop, weight, and weight distribution.

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 as follows.
          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 our production build, which uses racing quadcopter controller, 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. 

The prototype's PI values scale together in conjunction with compensation for air density conditions (temperature) and swashplate slop, as tested and recorded in the substitution build note.

The production build adjusts the main rotor RPM according to the general operating note, but PID for pitch axis is always 45/117/0 for all weather. The production build's swashplate has sacrificial linkage stubs that break easily as pictured on the right, so the swash slop does not worsen after a crash. So, there is no need to adjust PIDs for swash slop either. And the axillary channel 5 RF control for throttle RPM for racing, rate mode operation is always 5 points higher than for attitude mode. This persistent 5-point difference can be illustrated when we are changing RPM from 3250 to 3430 for high-speed missions. 3430/3250 = 1.055 . In cold and dense air, base point 87 multiplied by 1.055 gives 92 points; in hot and thin air, base point 94 multiplied by 1.055 gives 99  points. Every 10 degrees Celsius rise in temperature corresponds to about 1 point. The RPM measured below on the left produced the video below on the right.


The following 2 videos show the production build diving at the 33°F. The raw footage is on the left, and the post-production stabilized video is on the right.

Overclocking RPM produced craft vibration that completely destroyed the video, as shown in the following 2 videos for comparison. This was tested on a prototype build with an RPM meant for 20 degrees F higher. The 2 tests were only 1 day apart with identical craft setups. But the second day's morning temperature was uncharacteristically low for summer and caught me off guard.
 

The following video on the left is underclocking at 2650 RPM for the prototype discussion earlier, using the same old, loose swashplate. The video to the right is another underclocking but with production build.
 
The shakings for insufficient RPM and PIDs appear similar in videos. However, piloting can feel that the shaking with insufficient RPM and PIDs has a bigger rolling banking component, while the shaking with overshooting RPM and PIDs has a bigger pitching, up-and-down component.

Three perplexing observations in the optimization and blade-changing exercise: 
  1. PIDs are immutable for a given craft mass distribution and material stiffness when only changing the blade length and adjusting RPM accordingly so that the craft hovers at the same angle of attack.
    • For the attitude mode, we changed RPM from 2640 to 3250 and kept the hovering collective pitch at 6.2 degrees for the prototype(II) 193mm blades, and the PIDs are evidently immutable.
    • For the racing mode, we changed RPM from 3100 to 3430 and changed the hovering collective pitch slightly from 4.85 degrees to 5.47 degrees for the prototype(II) 193mm blades, which means the production build's RPM is slightly underclocked, and PIDs need a slight boost. And indeed, at RPM 3430, several videos use PIDs 48/125/0 and produced good videos. It can be inferred that, had the collective pitch been kept at 4.85 degrees for both the prototype and production builds, the PIDs would have stayed the same and immutable.
    • But why aren't PIDs 48/125/0 used in production racing mode? The special case did not use "zero slop." The production build has "zero slop" feathering shaft center, tighter/stiffer than the prototype build, which lowers the PIDs to 45/117.0. Had the collective pitch been kept at 4.85 degrees with the stiffer feathering shaft, PIDs would have been lower than 45/117/0. But the collective pitch for production build is 5.47 degrees, slighter higher than 4.85 degrees, so PIDs need to stay at 45/117/0 to compensate for the raised collective pitch and lowered RPM. 
  1. PIDs are only mutable when air density changes, but RPM compensation for air density substitutes for PID changes.
  2. The first point extends to changing the blade airfoil, provided that the RPM stays the same and neutral buoyancy with the same RPM occurs when blade angle is at its highest efficiency for both airfoils. 
The first 2 points are used by a 193 mm Oxy2 blades to obtain the RPMs for the production build while the airfoil stays the same as the prototype. The third point is used by the production Joukowsky10.5 airfoil to reuse the production RPMs while changing the meaning of the mid collective-throttle stick.

DYS Sn20a And Favorite Blheli20a ESCs With 1106/1303.5 Motor All Interchangeable Using Same Software And Configuration For Tail

Prototype
Production
Part Gemfan oblong 4025 prop.
HQ Prop slanted 4025 prop.
PIDs 33, 10, 28
50, 8,35
High-wind PID 33, 8, 34
50, 8, 35
The production build's all-weather tail PIDs are improved based off the prototype's PID set that needed a separate high-wind set of PIDs. The prototype tail with a glued straight propeller was 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 limited acceleration and limited yaw-left movement. The high integral produces winding resulting in tail bumping "collision with thin air" bounces at 0:57, 1:16, and 1:41 of the video below on the left. One solution was 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 was incorrect with the heavier tail motor, so the general solution was 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. With the prototype's glued straight tail propeller, in high winds, the I term should be lowered by 20%, D term should be upped by 30% for Betaflight to prevent wind-induced oscillation, as the following 2 experiments show.  


The production build uses the high-wind PIDs modified with the slanted propeller, requiring 50% extra P gain, and is in the dump_all configuration. 


The tabulation here gives temperature 0.5th-order power to scale PIDs because tail PIDs control tail RPM with a 2nd-order power on thrust and is part of the dump_all config file. The following videos show a comparison of a flip turn with the production build with a 40% extra P gain on the left and a 50% extra P gain on the right. You can see the tail wagging at 3:37 with an insufficient 40% extra P gain in the video on the left. 2:09 flip in the video on the right has no wagging. 
The insufficient P gain wagging can not be fixed with post-production stabilization, as shown in the following 2 videos, at 0:31 for post-production stabilization for the previous 2 videos.

A trial of a particular ESC/motor (undocumented) combination found that startup 1.25 had propeller stuttering (without video recording), even though FVT Blheli20a and DYS Sn20a can start the 1106 motor smoothly, regardless of 0.5 or 1.25 startup.
The verification with 0.5 startup with FVT is in multiple videos on this page, including the GPS glitch and punch-out jerking prevention discussion video. DYS with 0.5 startup is verified in the video here with production 1303.5 2500kv tail motor.



Tail punch/reset/bumping takes 5 parts of corrections to fix. In the operating note, the tail punch was solved with constant main rotor RPM, and the tail reset was solved with slanted props. The strap-on battery configuration testing discovered that a near-death battery needs to be avoided to reduce tail left turn after dives due to RPM recovery curve deviation. The 0.5 startup prevented tail prop stuttering as the 4th correction. The final correction for the tail bumping is to make smooth punch-outs. With production FVT ESC, video is here.

With the interchangeable DYS tail ESC, the video is in the 8th battery cycle discussion.

1303.5 2500kv motors with 60C 4S 850mah have been verified in many different settings, including video here. 



Make Rotor Stiffness Consistent And Balanced For Stable Video

A prototype with overly loose grips that draped before turning the craft to the side 90 degrees, as the video below on the left shows, was recorded to have off-standard PID settings, as in the video below on the right.
For consistency, we set the blade not to drape, but barely holding on, at 90 degrees because the prototype(II) build's grips are slightly smaller in jaw width than the blade root's thickness, which clamps the blade so that it needs a slight bumping to make the blades drape. 

If the blades are over-tightened, imbalance easily results in mechanical vibration (not recorded).

So, what happens if the rotor has longitudinal 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 dive loses its heading hold about 2 seconds before punch-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.


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.

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 diversity receiver setups with TBS Agent Lite (built-in to Radiomaster Pocket bundle SD card) follow.
The general build's 1-inch across straw is replaced with 7-to-8-inch straw that houses the transverse antenna. Only CH3 in the Nano RX can be SBUS, CH1 and CH2 are fixed by ROM.

Canted Tail Rotor Setting Solves "Thrubbling"

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 increases as the throttle increases. The pullback problem can be discovered in racing mode with sudden maximum throttle, where 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 here.
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.

GPS+Visual Navigation

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 last 3 decimal digits of coordinates 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. 

GPS glitches with solar flare and thick clouds are not uncommon. Here, the backup is visual navigation.

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 center the SwitchC to use accelerometer-assisted leveling mode for the final approach. The switch causes a flash of green asterisks in the FPV feed, which is shown in multiple videos in this page.


Camera Video Transmission Dual Antenna Fixes Single Antenna VTX Difficulties

Here is an FPV view of the Walksnail HD v2 Single Antenna VTX when the craft blocked the antenna, at 11:20 (best attitude to counter wind but most severe video freeze), resulting in a momentary video freeze right before the dive.

In this wind condition of 20 mph from southeast, the attitude to counter the wind unavoidably blocked the antenna at 9:34, 9:54 - 10:05, 10:17, 10:30, all in the best attitude to counter the wind, but most severe video freezes. The production build with a 9 cm video bus wire allows an antenna on the front and another 10-cm belly antenna below the battery to allow a steep tilt down while the craft faces the ground station. But not all 10-cm antenna has the same length. The Lollipop antenna is slightly shorter and heavier and has not been verified. Runcam Link and Walksnail 10-cm antennas have the exact same length and verified with indistinguishable performance.

But, first insert another ziptie's knot to the ziptie to prevent the whole ziptie from rotating backward and rotating the cameras upward. The camera's fixture holes are only drilled diagonally from the factory, so the Kevlar thread only inserts into 1 hole on one side. Use a 1.10 mm drill bit manually to drill the other side hole. The long tube of the antenna needs to be sliced open with a pair of cuticle scissors and trimmed.

The bbl gyro data file from the flight computer is loaded into blackbox.betaflight.com, as seen in the Hardware Modification section, to verify the right bbl file for Gyroflow processing. The FPV onboard recording video is also loaded into blackbox.betaflight.com to facilitate the verification of the bbl file for a video file.

It is well known that the Walksnail cameras' built-in gyro requires elaborate soft mounting to be valid. Walksnail HD V2's built-in gyro adds additional vibrations to the video when without the elaborate soft mounting, as shown in the following video comparison. The video on the left uses Betaflight black-box bbl gyro log; the video on the left uses Walksnail HD V2's built-in gyro gcsv log.
The 2 videos were stabilized in the same Gyroflow app session with identical parameters. The low-pass filter was tried with the Walksnail HD V2's built-in gyro (right-side video) without improvement.

The Kevlar tie fixed the diving vibration with a 5.6-gram Walksnail HDv2. The following 2 videos with their respective tie/missing-tie photographs beneath them are with HGLRC F722 Zeus mini.

When using the Walksnail HDv2 video transmitter's included 5-cm video bus wire, the setup is here below.
In this configuration, the belly antenna is further from the battery, and when the craft faces the ground station, the antenna's line of sight may be blocked by the battery. It can be a risk depending on whether the ground effect for EM wave propagation is favorable, as shown in the video here.


Production build shall use the forwarded position as in the first pictures of this section. Also shown here above is the damage when landing vertically with the antenna tubing as installed by the factory without the trimming modification.

During storage and before taking off, the belly antenna needs to be flung forward, as in all pictures of this chapter, to achieve optimal 25Mbps/25ms at 1km distance near ground and in the sky, verified here in video and picture.



Use Software Rendering Gyroflow; Do Not Use Rolling Shutter Correction

The GPU rendering of Gyroflow is not compatible with all desktop computers. Uncheck the GPU rendering with Chromebook Gyroflow1.6.AppImage , or err when attempting to render/save.
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.
 
 
 

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 straight forward and reduce the view of 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.

Software Gyro Noise Filter Does Not Rescue PWM 50Hz And Oversetting PID

The gyro data time series shows the Betaflight 4.3+ notch filter dramatically reduces the motor vibration noise in the following 2 screenshots. The comparison test was done with overturned PID and PWM 50Hz. Normally, PWM is set to 480Hz. All the prototype video tests on this page are done with PWM 480. There is no noticeable video improvement by the notch filter.

The actual video corresponding to the top gyro data time series (without notch filter) screenshot is at 0:29 here,

The actual video corresponding to the bottom gyro data time series (has notch filter) screenshot is at 0:28 here,

There is no subjective difference between piloting with and without a software notch filter with the HGLRC F722 Zeus Mini flight computer, which has a MPU6000 gyro chip. The dump_all configuration file does not have a notch filter, so that blackbox logs all movements of the craft for complete video stabilization.

Walksnail Decasing Heatsink

The heatsink casing weighs 7.5 grams and needs to be removed before installation. The heatsink is not necessary even at 92°F ambient temperature. 


To use the heatsink, save 4 grams or more in the build, such as using new Align grips (2.5 grams saving) and/or enameled wires (3.2 grams saving) or carbon fiber axle (2.8 grams saving). When installing the video computer with the heat sink, use 1.8mm zip ties because 3mm zip ties can't go through the M2 fixture holes. The zip tie nuts sandwich the heatsink and the cable protectors, so the nuts need to directly press onto the fixture holes, as pictured on the right. The pre-existing 3mm zip tie nuts are twice as tall as 1.8mm zip tie nuts, we use 2 layers of 1.8mm zip tie nuts on the bottom side in the picture. 

The heatsink with production dual walksnail lean antennas is verified here.

Interchangeable Oxy2 193mm Nylon Blades

The Oxy2 193mm blades have 18mm (narrower) of chord length and need (measured) 6.2 degrees of alpha for in-place hovering in the cruising (high efficiency) RPM 3250 mode and (measured) 5.45 degrees of alpha for RPM 3430. This means that the throttle stick's mid-point is for in-place hovering in both modes. The different airfoil math models make different predictions, not always matching the experimental result.

No comments:

Post a Comment