Skip to content

Commit

Permalink
docs: add notes about updating platform mass for controllers
Browse files Browse the repository at this point in the history
  • Loading branch information
gemenerik committed Dec 9, 2024
1 parent 287bf9a commit dbad112
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions docs/functional-areas/sensor-to-control/controllers.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,8 @@ Check the implementation details in `position_controller_pid.c` in `positionCont

## Mellinger Controller

_**Note:** This controller relies on the platform mass for its calculations. Ensure the platform mass is updated in [the firmware's platform defaults](https://github.com/bitcraze/crazyflie-firmware/tree/master/src/platform/interface) whenever the setup changes._

Conceptually the Mellinger controller is similar to the cascaded PID controller, i.e. there is an attitude controller (running at 250 Hz) and a position controller (running at 100 Hz). The main difference to the cascaded PID controller is how errors are defined and how the position error is translated into desired attitude setpoints. Like the cascaded PID, this is a reactive geometric controller that uses the mathematical property of differential flatness. Details are given in the following scientific publication:

```
Expand All @@ -82,6 +84,8 @@ https://doi.org/10.2514/1.G001490

## Brescianini Controller

_**Note:** This controller relies on the platform mass for its calculations. Ensure the platform mass is updated in [the firmware's platform defaults](https://github.com/bitcraze/crazyflie-firmware/tree/master/src/platform/interface) whenever the setup changes._

Details of this controller are in the following scientific publication:

```
Expand All @@ -93,6 +97,8 @@ https://doi.org/10.3929/ethz-a-009970340

## Lee Controller

_**Note:** This controller relies on the platform mass for its calculations. Ensure the platform mass is updated in [the firmware's platform defaults](https://github.com/bitcraze/crazyflie-firmware/tree/master/src/platform/interface) whenever the setup changes._

Conceptually the Lee controller is similar to the cascaded PID controller, i.e. there is an attitude controller (running at 250 Hz) and a position controller (running at 100 Hz). The main difference to the cascaded PID controller is how errors are defined and how the position error is translated into desired attitude setpoints. Like the cascaded PID, this is a reactive geometric controller that uses the mathematical property of differential flatness. Compared to the Mellinger controller, a different angular velocity error and higher-order terms in the attitude controller are used. Details including a stability proof are given in the following scientific publication:

```
Expand Down

0 comments on commit dbad112

Please sign in to comment.