Pixhawk Flight modes

cytogen

Member
Hey Guys,

Been reading up on the pixhawk flight modes in preparation for my TX setup. Since I'm coming from Naza / SuperX, I'm more familiar to the manual/Atti/GPS modes. What would the respective modes to these on the Pixhawk be? I'm guessing the following would be the closest;

Manual = Acro
Attitude = Alt Hold
GPS = Loiter

What about PosHold?


Going to start with this modes first so I want to make sure I set them up correctly. The drift mode looks like a neat feature as well.

Thanks,
 

J.T.

Spiralling out of control
As I understand it, Manual =stabilize mode, Attitude = Alt Hold, GPS = Loiter which is Position hold. Arco is Acrobatic mode I think.

I have a three position switch set to stabilize, Loiter, Auto mission, then a two position switch Alt hold then RTH.
 

Old Man

Active Member
I have a 3dR quad running APM 2.6 that features a similar three position switch and a Pixhawk in another copter that makes use of two switches for 6 flight modes. Your description of the positions relative to DJI was good. In addition to the three positions you described, each can be set to a "Simple" or "Super Simple" mode. In simple mode using any of the three modes you described, the copter will fly using the general area of take off as the base reference position. How the copter is yawed, or rotated won't have any effect on how the flight controls work. Left will always be left, and forward/back relative to the general take off point will remain that way regardless of the copter's orientation. In Super Simple all maneuvering is done relative to the point of take off. When you are away and want to come back to the take off point one only needs to pull the stick back. That's similar to the DJI "Home Lock" mode I believe. In either Simple or Super Simple mode the aircraft should have been positioned with the front of the aircraft pointing away from the user at the time of power up. You can get into a bit of a bind with either Simple or Super Simple if you elect to fly "behind" the take off point. You enter an area of control reversal and you should be prepared to think about your control inputs before making them, and do so slowly until you are comfortable with how things work.

With both APM and Pixhawk you can set up a "six position" flight mode switch arrangement if desired, using a given set of switch positions to make use of any one of about 10 or 12 pre-established/programmed flight modes. Each of those can also be set up to use the Simple or Super Simple features. One should always have three primary flight modes; Stabilized, Loiter, and Return to Land. Those modes act as "baselines" that one can always go to in a pinch to save yourself in the event you lose orientation. I've had to use RTL twice, once when so far away I could not discern the direction of travel and once when I confused myself far away and lost orientation. Both times the copter returned and landed softly within a couple feet of the take off point. Bear in mind that things like RTL and Loiter are highly dependent of a functioning GPS unit. One should always be prepared to fly in the semi manual Stabilized mode or simply land if things become too difficult to keep up with or should one experience GPS failure. I have both of my copters set up to auto land at location if and when GPS fails, battery voltage gets too low, or link is lost with the transmitter.

Visit the 3D Robotics site and follow some of the links to the areas noted as "learn" to gain considerable expansion on their flight systems. You could also go here; http://copter.ardupilot.com/wiki/table-of-contents/
 
Last edited by a moderator:

cytogen

Member
Thanks for the clarification and awesome information.

I'll configure up Stabilize, AltHold and Loiter for now with another separate channel for RTL(failsafe). After I get it going with these modes, I'll start looking into applying the other modes. I'm reading up on the drift mode and that sounds like a fun on to try out as well as Sport.

I was thinking of trying out the simple and super simple modes, but I think I might leave them off so I can properly practice orientation. As Old Man suggested, I'll have the RTL switch ready at hand if I lose orientation.

Thanks!
 


jdennings

Member
The closest Pixhawk mode to Naza/WKM GPS is indeed loiter, but it is not as good: stops/go are more abrupt and there are twiches. Not really usable for smooth filming for instance, imho. Position Hold is different that loiter and was specifically designed for smooth movements, very closely mimicking Naza/WKM GPS (it was called hybrid earlier on). But it is only available in 3.2 release candidates at this point, will be available in 3.2.
 

R_Lefebvre

Arducopter Developer
I still have to get my brain around the fact that Position Hold doesn't mean what it used to mean...

I don't really get that Loiter is abrupt on stop/go. I find it's actually too slow. I set Loiter speed to 20 m/s on my helis, and they stop like a freight train in Loiter mode.
 

Old Man

Active Member
Thanks for the clarification and awesome information.

I'll configure up Stabilize, AltHold and Loiter for now with another separate channel for RTL(failsafe). After I get it going with these modes, I'll start looking into applying the other modes. I'm reading up on the drift mode and that sounds like a fun on to try out as well as Sport.

I was thinking of trying out the simple and super simple modes, but I think I might leave them off so I can properly practice orientation. As Old Man suggested, I'll have the RTL switch ready at hand if I lose orientation.

Thanks!

Altitude Hold and Loiter are not that far different. If I was setting up a "primary" 3 position switch it would be stabilize, Loiter, and RTL with the two most important at either end of that switch. When you need RTL you'll want it bad, and looking for a second switch is something you probably won't have time for. Put Altitude Hold and other secondary modes on a second switch. I think you'll end up glad you did. Where Loiter is concerned adjust upwards the Loiter speed in the PID's. Bottom right corner of the page. Stock setting makes for a very slow flying copter in Loiter but you can adjust that speed upwards in centimeters/second until you achieve a level flight speed you like. It's pretty easy to do and leaves you with a rock solid flight platform in all axis. Superior to Altitude Hold.

Regarding "drift" mode. It is indeed quite a lot of fun but understand you will have zero input where yaw is concerned. That is taken away when you use Drift. It's also absolutely lousy for anything that might be filming something unless you're in a "chase" type situation and can keep the target inside the frame for the entire flight. So forget any camera work, especially if you have a good gimbal. The gimbal wipes out the dramatic effects of bank angles for the most part. You can fly wild but end up with a level picture until you exceed the limits of the gimbal. There's also a strange "quirk" when you get to the extremes of bank (roll) where the copter may act like it's trying to roll over. Simply walk before you run and learn the mode with a little self restraint.
 

Old Man

Active Member
The closest Pixhawk mode to Naza/WKM GPS is indeed loiter, but it is not as good: stops/go are more abrupt and there are twiches. Not really usable for smooth filming for instance, imho. Position Hold is different that loiter and was specifically designed for smooth movements, very closely mimicking Naza/WKM GPS (it was called hybrid earlier on). But it is only available in 3.2 release candidates at this point, will be available in 3.2.

In Loiter mode the copter will always acellerate/decellerate at 1/2 the Loiter speed, so that's somewhat adjustable. I've flown Naza and Wookong and have not seen better stability in general for filming with those over Pixhawk's Loiter, but that's just my perception. I will admit starts and stops in Loiter can be a bit abrupt if stick sensitivity is set too high. Pixhawk may well be a little more aggressive than DJI stuff. In and of itself that's not a bad thing since you have more adjustment flexibility.
'
 


Old Man

Active Member
Thank you for the informational link and video! I don't get over to DIY very much and it appears I should do so more often.

The video shows some very smooth operations, and I managed to learn the reason for the small altitude diversions we experience with APM as due to small baro changes induced somehow. Probably high and low pressure zones generated by propellers. Up until now I was thinking those altitude shifts as the rotor changed flight direction to be something associated with division of lift conditions between the propellers as they changed angles of attack such as one experiences with fixed wing when going from level flight to a bank. I had also been thinking there could be some "sense and do" latency between all the electronics involved throughout a system. In this case I'm relating a propeller to be like a wing as a lifting body, not considering things like precession.
 

R_Lefebvre

Arducopter Developer
In Loiter mode the copter will always acellerate/decellerate at 1/2 the Loiter speed, so that's somewhat adjustable. I've flown Naza and Wookong and have not seen better stability in general for filming with those over Pixhawk's Loiter, but that's just my perception. I will admit starts and stops in Loiter can be a bit abrupt if stick sensitivity is set too high. Pixhawk may well be a little more aggressive than DJI stuff. In and of itself that's not a bad thing since you have more adjustment flexibility.
'

That's interesting. I usually hear that Arducopter is actually not as "smooth" in Loiter as DJI is. And I've seen plenty of video evidence that I believe it. It's the one place where I think they have an edge on us. Arducopter holds position well, but it's usually "busy". DJI just seems to do it very smooth.

There's also a strange "quirk" when you get to the extremes of bank (roll) where the copter may act like it's trying to roll over.

I wonder if this is the same problem I've seen. Is this usually at higher flight speeds? I complained about the algorithm for Drift, that it doesn't work well above 15 m/s. Most multis never get that high, but helis do. It usually results in a bad roll wobble if you try to turn it too hard at high speeds.
 


R_Lefebvre

Arducopter Developer
Ah. Ok, so the problem is this. The way the drift mode works, is that the "turn input" actually gives us a yaw rate, not a roll rate. The roll is fully automatic. The system attempts to eliminate lateral movement as detected by the GPS. So you lead with yaw, which results in "skidding", which the controller tries to stop by creating roll counter to the skid. So it tries to rail around the corner. This seems to work fine until higher speeds. Unfortunately, the maximum yaw rate allowed in the mode means that above 15 m/s, the craft would need more than 1G of lateral acceleration. This isn't really possible when you have a roll limit at 45°. But the yaw is not bounded. So it will allow you to yaw around faster than you can turn. Essentially, you end up "drifting" around the corner. I think what then happens is, as the machine over-yaws, you end up with large roll angles leading into the relative wind due to your speed. The large relative wind being exposed to the rolled airframe, increases the lift quite a bit. This especially happens on a helicopter with lower disk loading than a multi. So now you actually have access to quite a bit more lateral acceleration than normal. So the craft carves the turn, but then lateral airspeed drops, the extra lift disappears, and the lateral acceleration goes away. So it starts skidding again. This basically results in it rocking back and forth.

The problem is, there is a feed-back mechanism between the roll angle and the lateral airspeed, which is undamped.

What is needed is more of a coordinated turn.
 

Old Man

Active Member
Sounds reasonable but not possible to accomplish without having full input on all of the primary control axis;)
 

R_Lefebvre

Arducopter Developer
No, it's definitely possible. And actually sort of easy on a multirotor. It's helicopters that are super tricky since they are asymmetric in flight, with the tail rotor constantly pushing it sideways, which requires a bit of roll to counter. But the amount is constantly changing depending wind conditions affecting the tail, etc.
 

Old Man

Active Member
But not while in the current format of Drift mode, which was what I was referring to.

Since the yaw channel is completely blocked to user input while in Drift you get whatever amount of yaw the code provides, which is only the amount necessary to match the demand in roll to change heading a given amount. If some changes were made in the code that would permit the user to lead with yaw before rolling, and alter the amount of yaw as heading changed, based upon the amount of roll, then coordinated turns in a mode similar to Dfift would be possible. This presumes the user understandsthe controls and flight well enough to manipulate the yaw channel. A very large number of fixed wing flyers forget yaw, or rudder, the moment the aircraft departs terra firma so some would still have some level of difficulty.
 

Top