|
Auterion App SDK
Auterion SDK is a library that can be used by AuterionOS apps to communicate with the system.
|
Specific-force to body-rate controller for fixed-wing aircraft. More...
#include <auterion_sdk/control/fixedwing/body_frame_specific_force_controller.hpp>
Classes | |
| struct | Parameters |
| struct | State |
Public Member Functions | |
| BodyFrameSpecificForceController (const Parameters ¶meters) | |
| Constructs a BodyFrameSpecificForceController with the given parameters. | |
| void | setParameters (const Parameters ¶meters) |
| Updates controller parameters. | |
| void | update (double dt, const Eigen::Vector3d &acc_sp_enu, const Eigen::Quaterniond &attitude_enu, const Eigen::Vector3d &specific_force_flu, std::optional< double > true_airspeed, std::optional< Eigen::Vector3d > los=std::nullopt) |
| Runs one update step of the body-rate controller. | |
| const State & | state () const |
| Returns a const reference to the current controller state. | |
Specific-force to body-rate controller for fixed-wing aircraft.
Converts a guidance acceleration setpoint in ENU frame to roll/pitch/yaw body-rate setpoints and a normalized thrust command, using a hybrid bank-to-turn / skid-to-turn (BTT/STT) law with airspeed-scaled PI controllers.
|
explicit |
Constructs a BodyFrameSpecificForceController with the given parameters.
| parameters | Initial controller parameters. |
| void auterion::BodyFrameSpecificForceController::setParameters | ( | const Parameters & | parameters | ) |
Updates controller parameters.
| parameters | New parameters, applied on the next call to update(). |
| void auterion::BodyFrameSpecificForceController::update | ( | double | dt, |
| const Eigen::Vector3d & | acc_sp_enu, | ||
| const Eigen::Quaterniond & | attitude_enu, | ||
| const Eigen::Vector3d & | specific_force_flu, | ||
| std::optional< double > | true_airspeed, | ||
| std::optional< Eigen::Vector3d > | los = std::nullopt |
||
| ) |
Runs one update step of the body-rate controller.
| dt | Time step [s]. |
| acc_sp_enu | Guidance acceleration setpoint in ENU frame [m/s²]. |
| attitude_enu | Current vehicle attitude quaternion (ENU convention). |
| specific_force_flu | Measured body-frame specific force in FLU convention [m/s²]. |
| true_airspeed | True airspeed [m/s]; if empty, falls back to approach_airspeed. |
| los | Normalized line-of-sight vector (ENU). Required only when the camera VFOV pitch limiter is enabled (pitch_lim_camera_vertical_fov > 0). Pass std::nullopt to skip the limiter entirely regardless of the parameter setting. |