Chris has recently pushed a change to master that removes the land collective min parameter and that is replaced by the collective mid parameter for the landing swashplate minimum value. It uses the land collective min value when it is no longer in dynamic flight which is defined by the velocity being less than 5 m/s. So if your collective range is set for plus or -10° then I think you should set your land collective man value to 400 initially. Then start the aircraft up in loiter and see if it’s appropriate without causing ground resonance. On the bench you can always put the aircraft into loiter and see what your collective pitch is at.
By the way, generally for UAV helicopters we do not set up collective pitch like that. Typically it’s -2° to 10°. Is your aircraft set up more like a sports helicopter or a UAV helicopter. The reason I ask is that UAV helicopters typically run almost twice the weight of a sport helicopter for that size. I just mention that because it may affect the tuning technique that Leonard has you’re doing.
Josh, the only other thing I was suggest regards to your tune. I would set your ILMI parameter higher for pitch and roll. Currently The controller will not have enough authority to hold attitude if you have high ambient winds in a hover.
You have it set to -6.5 degrees. With symmetric airfoils it should be set to feather pitch, with asymmetric airfoils to zero thrust pitch. You can pull maybe -1 or -2 on the ground but any more than that is a problem. Even 3D helicopters are not set up with negative pitch in Condition Normal for takeoff and landing. The idleups will have negative pitch setup with corresponding change in headspeed, curves and mixes. But ArduPilot doesn’t have any of that.
Great question, and I am glad you asked as it is obviously a very relevant point that I should have covered in my initial post. So, the heli is a sport helicopter that has been pulled back a bit (mostly by my skill level) to be able to perform UAV type missions but also do some mild to medium acro eventually. I intend to use it as a fun/training platform and potentially a POC platform down the road if I do more with Heli in the commercial sense. @Leonardthall was aware of this all along and I am able to confirm knowledge of that fact was a factor in all discussions around how I wanted the tune to perform. Truth be told, I’ve flown this with BeastX in the past and love it, but I never developed my 3D Heli skills beyond some back flips, maybe a front flip or roll, and maybe a couple seconds upside down, so the safety of ArduCopter available to me as I practice that kind of stuff more, as well as perform some FPV, is very very attractive. I could always fly it scale well enough, but the idea of the extra safety blanket is just too awesome to pass up!
on the surface, this strikes me as less safe, but maybe I am reading it incorrectly… I suppose the part I’m missing is that at mid collective I’m producing no lift with assymetric blades, so I’m probably falling. The question becomes - am I falling at a speed less than or greater than 5m/s. I suppose the logs will help me feel more comfortable with this one.
Can you confirm which param you meant there?
land collective man?
Thanks Bill, I’ll have a look at the tuning guide for these specifically and see what makes sense. I appreciate you calling that out! I’ll get a new value there and then come back and see if it is closer to what you’d expect.
Oh my. Thanks Chris, I’ll set it to the same value then as COL_MID as I am running symmetric blades.
Sounds like I should go for neutral here, will adjust
I agree with this, generally speaking, but I’ve gotten procedurally solid with bringing the collective up when I idle up. Perhaps I should do a curve on the Collective like you’re mentioning to further the safety here. I saw your other post about having curves for Acro, and that is on my list of things to eventually try as well, but at the point i’m at now if I leave Loiter with the Collective dead center and go to Stab, the copter holds altitude perfect and just begins to drift if there is any wind, but in no wind it will actually hold station reasonably well considering it isn’t actively trying. If I am off-center on Collective in the slightest when switching from Loiter to Stab, the helicopter lets me know immediately. A switched-on curve to have mid-band expo here would probably help with that. Do you agree?
If you are only using Stabilize then the four-point curve built into ArduPilot should work to line it up. The benefit of using custom expo and collective curve in the RC is only really seen in acro using the new virtual flybar acro we developed. Getting rid of all the negative pitch you don’t need makes the collective much smoother to begin with. All basic sport maneuvers, including loops, rolls, Immelman, etc do not require negative pitch as they are all positive G maneuvers. The only reason to have any at all is to recover lost headspeed in autorotation in the event of in-flight power loss. And even then negative pitch is not required as long as you have decent airspeed over 20kts or so.
RC helicopters usually have to have a slight amount of negative pitch as they don’t have the advanced blades that full-size have. Like a Jet Ranger’s blades has 14 degrees of washout root to tip. So at feather pitch the tips are technically at slight negative pitch on the Jet Ranger, but still positive angle of attack in autorotation, and the Jet Ranger can’t be autorotated below 58kts IAS. Your RC blades are simple straight airfoils so to get that same effect you’ll have to set up with like -2 or -2.5.
H_LAND_COL_MIN is a value between 0 which corresponds to COL_MIN and 1000 which corresponds to COL_MAX. So you don’t want to set it to the same value as H_COL_MID which is in PWM. In your case a value of H_LAND_COL_MIN of 500 would be 0 deg collective. So you can set it to that value or slightly less.
As far as ILMI, you could probably get away with a value between 0.07 and 0.1. That should be enough integrator to hold 4-5 deg of attitude error for wind compensation.
Hey Chris, not sure why you made that comment, but I’m going to assume it wasn’t meant to be as passive-aggressive as text-on-the-internet can make that sound and clarify something: One of my stated intents is to learn more acro with a heli while also being able to do other activities like Scale flying, potentially FPV and SUAS POC (survey, run out to a spot take a pic and run back, etc etc.) Acro is much more than loops and rolls, but I wonder here if you confused what I said I’m capable of comfortably today with what I intend to be better at tomorrow, things like rainbows, tic-tocs, inverted hover, inverted flight, inverted pogo, etc. The list can go on as you know. The negative collective is needed, and staying, so let’s move past that.
This reminds me another question I was hoping to get your and Bill’s thoughts on: Am I correct in assuming this scheme assumes throttle (
H_RSC_MODE) is in
1:CH8 Input vs
3:Throttle Curve? I ask because I went with
3 assuming that would be the safest case if the RC receiver entered failsafe and was configured to drop packets. Perhaps I’ve misunderstood? I don’t want there ever to be an RC Failsafe event wherein the Receiver inadvertantly commands a throttle value of zero while attempting to return to home. I’m quite happy right now with the way that is configured and working, even though it doesn’t let me go to max head speed for the acro stuff, so I’ve settled on a head speed I feel is a decent compromise between wanting scale behavior but also being able to play around. If you have advice here, or questions to ask that will help you give better advice, I am all ears!
Sounds interesting, where can I read more about this? Is this in stable release, or in master currently?
This actually makes perfect sense, thanks for catching that - I knew it but it slipped my mind. Thank you again!!
Got it, thanks Bill!
Acknowledged. I did go check the wiki and found myself wondering how I’d know if I got it right vs too much vs not enough. Mind walking me through the log analysis step in your leisure so I can be more self-sufficient on this?
You will need a different system for these types of flight maneuvers. ArduPilot is primarily an autopilot system. ArduPilot’s acro is not a replacement, nor any kind of match, for a commercial FBL unit. So I would suggest one of the commercial FBL units for more serious aerobatics. There are many of them, my wife has a HeliCommand (Bavarian Demon) AXON in her 700 gasser which I have become quite fond of. ArduPilot’s new acro can match her AXON for scale-quality handling. But it is no way shape or form a match for the AXON in 3D aerobatics.
I suspect that isn’t true, especially considering two of the things I want to do are things the autopilot itself can do. I respect that you have an opinion on this but I’m going to go forward with what I have and see how it goes. It may not perform as well as other controllers but I think it will still actually perform.
But, we’ve gotten way off topic. This thread was meant to be about auto take off and landing, not Acro aside from explaining why I have symmetrical collective configured. You’ve provided a lot of insight to that goal and I do appreciate it. Wish me luck for the next few flights!
In all fairness the “virtual flybar acro” only leaks the attitude error so it actually relies on a bad or incomplete tune to have any impact on the handling of the aircraft. If the aircraft is tuned and setup correctly the “virtual flybar acro” is no different to the standard multi acro.
So until someone actually has a fully setup and tuned aircraft combined with a pilot capable of 3d aerobatic maneuvers we don’t know how capable ArduHeli is at full 3d.
I seem to remember talking with Rob some years back about the 3D he was doing with TradHeli. But I digress.
The virtual flybar acro gets rid of the robotic feeling rotate and hold that helicopter pilots don’t like. It is adjustable via the existing roll and pitch bal parameters. Helicopters can be easily flown without any gyro stabilization at all but something must be done to damp the controls so they aren’t so jerky. This is the “feel” that helicopter pilots like because it is what the full-size machines have.
The main problem with ArduPilot and 3D aerobatics is the EKF. It provides the attitude solution, even for the VBar acro. The EKF is quite fragile and can cause a helicopter to roll over by doing something as simple as landing and ground running a hot piston engine at flight idle to cool it down. The VBar acro makes it a lot safer to do this as it doesn’t really care what the EKF thinks the attitude is as long as the pilot is on the controls. The EKF might think the helicopter is rolled 30 degrees, but the VBar won’t force it to that attitude. It was a vast improvement in acro for helicopters, but it is still not as robust as the commercial FBL units because of the EKF.
Again, ArduPilot is designed as an autonomous autopilot system, and for that the EKF is quite useful to correct drift and bias in sensors. But acro does not make ArduPilot a swiss army knife that can go from flying waypoints on one flight to F3C/N competition flying on the next. It does not even have the advanced setup features and options that FBL units have to do so. And, vice versa, FBL units do not have the advanced setup features and options to be an autopilot system. A few have tried it like HeliCommand GPS and Skookum Robotics but they are not as good as ArduPilot at being an autonomous system.
Two totally different applications for two totally different worlds. But that does not mean that pilots who fly the ArduPilot system do not like an acro mode that feels and handles identical to a full-size machine. And that is probably why the VBar acro is one of the more popular features for helicopters in the last 3 years.
The only way that the virtual flybar changes the way the aircraft flies is if the input shaping (or “feel” parameters in the attitude controller) are not being used because it has not been setup correctly. With Josh’s aircraft he will struggle to tell the difference even with the roll and pitch leak is set extremely high. This is because his heli doesn’t get much more than a degree or two from the target at any time. So there is nothing to leak.
VBar acro is still very dependent on the output of the EKF. The problem isn’t what angle the EKF thinks you are at it is the EKF changing what it thinks level is as this will be translated into acro as another input. This is just as true for VBar as the normal multi ACRO.
I do have two acro attitude controllers that are almost completly independent of the EKF except for the gyro bias.
I have been meaning to put an acro type parameter in to let people choose which one they use.
Will people win an acro competition while flying ArduCopter, no. Will we get it to a point where it is capable of full ACRO. There is no reason not to.
There’s a little more to it than that. Helicopter pilots do not want to move the ghost and then have the helicopter achieve that new attitude. The best example is the ground run where the frame can’t move but the rotor’s TPP can move. Say the heli is level on the ground (slope procedure is more complicated) so wind or dynamics makes it necessary for the pilot to make a control input to control the rotor’s TPP. With the conventional acro, make a control input, the ghost moves. Center the cyclic now the helicopter is trying to tip itself over and that’s not what the pilot is commanding it to do. It is a constant game of bump and center, bump and center to twiggle the ghost around. In flight it is the same thing, although now the frame can move. But to make it scale-quality smooth you can’t have the bump and center thing, with snap to attitude and hold. That’s artificial 3D type setup. What we want is scale quality - the flybar feel from a FBL head that a few of the FBL units like the Mikado VBar and AXON have mastered.
Everybody that has flown it loves it. The pilots are the ultimate test of whether or not it works.
I was simply pointing out that 20 degrees of collective range is not near as smooth in the same stick throw as 12 degrees. Since the system is not set up or suitable to use that much negative pitch you are creating your own issue with not only touchy collective control when switching modes, but also potential for destroying your helicopter. That kind of pitch at only 1,800 rpm can off-track the blades into the tail boom and blow it up. Just so you are aware of the implications of such a setup. The 3D guys run custom expo curves on the bottom side to prevent accidentally overloading the rotor and blowing it up. ArduPilot doesn’t have any of that setup.
@ChrisOlson brings up a good point here and probably where the Vbar (attitude error leak) shines. The air/ground transition aspects become much better with having that attitude error leak off when the airframe is being held while the pilot is making inputs. I would be curious for @JoshW to try the Vbar acro with @Leonardthall approved setup to further explore the implications in flight. In theory, I agree with Leonard, now that he pointed it out, that a perfectly tuned helicopter should not see any difference with Vbar versus regular Acro.