Page 1 of 1

Mellinger controller and high_level_commander class

Posted: Tue Apr 27, 2021 8:04 pm
by fede_tiberti
Hi, I'm new in the forum. I'm a student and I'm using the Bitcraze platform for my thesis. ;)
I have a crazyflie 2.0 with the flow-deck 2.0, do the Mellinger controller and the high_level_commander class work with my equipment?

I suppose that I need a Loco-Positioning-System to make them work, is it right?

Re: Mellinger controller and high_level_commander class

Posted: Wed Apr 28, 2021 6:57 am
by kristoffer
Hi!
The Mellinger is mainly useful for very good positioning systems, like mocap. It is very sensitive to errors in the estimated position.
You can always try to see what happens :-)

The HighLevelCommander can be used with a Flow deck if you want to, it is just a thin wrapper around the high level commander module in the Crazyflie firmware. The high level commander is mainly based on absolute position which is not really available with the Flow deck and you might get some unpredictable results.

The MotionCommander class is designed for relative positioning and uses velocity set points instead which matches the Flow deck. This is probably the best option (depending on your use case)

Re: Mellinger controller and high_level_commander class

Posted: Wed Apr 28, 2021 10:11 am
by fede_tiberti
So is the PID controller the only one that I can use effectively with the MotionCommander class (or simply commander class)?

Re: Mellinger controller and high_level_commander class

Posted: Fri Apr 30, 2021 8:01 am
by arnaud
Yes I would say that currently the Mellinger controller is only usable when using the high-level commander command and that for anything else, the PID controller should be used.

While, in theory, you should be able to use the high-level commander with flow, the main problem I have observed is with take-off: at take-off the flow deck sends very noisy measurements which makes absolute position control very shaky. Once the Crazyflie has taken off, high-level commander works quite well. This makes it near impossible to use Mellinger with the flow deck and very scary/instable to use PID and high-level controller with the flow deck.