3.5.7 Acro Mode

That will be answered by Chris or Bill. I am a RC Heli pilot only.
BTW Chris recommends to set ACCEL_Z_IMAX to 800 value. I have that on both of my big 600 and 700 Helis set to that.

Yes, Fred is spot-on. I’m not sure how you got 0.5 for ACCEL_Z_P. That should default to 0.3 for heli in Copter 3.5.x. In Copter 3.6 we now have some param files you can load for either a fresh install, or an upgrade (which I still have to PR to master) that will make these settings.

The acceleration P gain for Z-axis affects any altitude controlled flight mode. When you sped up the head on your heli, now it became more responsive and is responding like a helicopter should, so the Z P-gain is too high.

Around 3,000 rpm is pretty good for a 450 class machine. Somewhere around 380-400 fps blade tip speed is good for UAV. However 3D pilots will want way more than that. The 3D guys will wrap a 450 out to 3,500-3,600 rpm.

Compare this to full-size helicopters where light utility class machines typically run 550 fps blade tip speed, and larger helicopters with up to 190kt cruise speed are almost universally at 700 fps. The one exception in the helicopter world is the largest and most powerful helicopter on earth - the Russian MIL Mi-26 Halo. It has a main rotor diameter equal to the wingspan of an Airbus A320, 23,000 shaft horsepower, holds 17 world records for weight lifting, and runs an incredible 750 fps blade tip speed.

In UAV RC heli’s we like to see performance comparable to full-size light utility class for proper handling and ability to handle wind and payload. But we don’t need the full 550 fps that full-size runs because the disc loading on RC is usually about half that of full-size light utility class.

There’s a lot of folks that like to run low headspeed for UAV, especially with electrics, to try to get more flight time. But helicopters require a minimum thrust to weight ratio to work correctly, and slowing the head too far only results in very sluggish handling and collective response.

The formula, obviously, is pi * rotor dia^2 x rpm / 60 where main rotor diameter is in feet to get feet per second of blade tip speed. So little helicopters will run higher rpm, bigger ones lower rpm. And little ones can never achieve the performance of big ones that can achieve blade tip speeds of 550+ fps.

In the example of the Mi-26 Halo I mentioned, it only has a main rotor speed of 132 rpm. But the length of the blades give it the speed. My wife and I saw one of these machines up close and personal when we were in Russia a couple years ago. It is not only the size of an airliner, it can pick one up vertically and fly away with it. I would love to build a RC scale model of one of these with twin JetCat turbines in it.

Very nice machine right there.

Thanks for all the help. The ACCEL_Z_P param down to .3 immediately solved the issue.

Does a flow chart exist for how all the controllers interact and what params are responsible for what section?


I don’t know of a flow chart anywhere. The parameters are kind of grouped by section, like ATC is Attitude Controller, H_ is helicopter, INS is Inertial Navigation System, etc…

There is a wiki with the full parameter list that explains what they all do.

The fact that you could fly a helicopter at all with ACCEL_Z_P set to 0.5 indicates you were using headspeed that was way too low for satisfactory performance from the Loiter controller. Flying at very low headspeed is ok in stabilize (or acro) but a certain minimum amount of performance is required for the autopilot modes or you will have problems with oscillations or loss of control.

Like with my bigger gassers the autopilot is ok with them up to about 35 lbs takeoff weight. They can lift and fly with 50 lbs takeoff weight but only I can fly it at that weight - the autopilot can’t handle it. The reason is a thing called pre-compensation. The autopilot is kind of a dumb robot - it responds to changes based on its sensor outputs. A human pilot has situational awareness and with experience knows what the helicopter is going to do next and compensates for it before the helicopter does it. So a human pilot can handle a 30lb sling load being lifted by a 20lb helicopter with the collective and power maxed out. The autopilot can’t because it waits for a change in attitude that it can sense, then corrects for it. This results in the autopilot loosing control of the machine because it starts “chasing it”. The autopilot is one step behind what the helicopter is doing, where a skilled human pilot is one step ahead. With the very low headspeed situation the autopilot’s being one step behind is not really all that desirable from a stability standpoint.

1 Like