Auterion App SDK
Auterion SDK is a library that can be used by AuterionOS apps to communicate with the system.
Loading...
Searching...
No Matches
guidance_control.hpp
1#pragma once
2
3#include <eigen3/Eigen/Eigen>
4#include <functional>
5#include <memory>
6#include <variant>
7
8#include "../../auterion.hpp"
9
10namespace auterion {
11namespace fixedwing {
12
30 private:
31 float _course_setpoint = NAN;
32 float _lateral_acceleration_feedforward = NAN;
33 float _altitude_setpoint = NAN;
34 float _height_rate_setpoint = NAN;
35 float _equivalent_airspeed_setpoint = NAN;
36
37 public:
41 class Config {};
42
43 GuidanceSetpoint() = default;
44
57 GuidanceSetpoint& withCourse(float course_rad, float lateral_accel_feedforward_m_s2 = NAN) {
58 _course_setpoint = course_rad;
59 _lateral_acceleration_feedforward = lateral_accel_feedforward_m_s2;
60 return *this;
61 }
62
71 GuidanceSetpoint& withAltitude(float altitude_msl) {
72 _altitude_setpoint = altitude_msl;
73 return *this;
74 }
75
84 GuidanceSetpoint& withHeightRate(float height_rate_m_s) {
85 _height_rate_setpoint = height_rate_m_s;
86 return *this;
87 }
88
89 GuidanceSetpoint& withEquivalentAirspeed(float equivalent_airspeed_sp) {
90 _equivalent_airspeed_setpoint = equivalent_airspeed_sp;
91 return *this;
92 }
93
94 inline float getCourseSetpoint() const { return _course_setpoint; }
95 inline float getLateralAccelerationFeedforward() const {
96 return _lateral_acceleration_feedforward;
97 }
98 inline float getAltitudeSetpoint() const { return _altitude_setpoint; }
99 inline float getHeightRateSetpoint() const { return _height_rate_setpoint; }
100 inline float getEquivalentAirspeedSetpoint() const { return _equivalent_airspeed_setpoint; }
101};
102
104} // namespace fixedwing
105} // namespace auterion
Placeholder config.
Definition guidance_control.hpp:41
Represents a setpoint to control course, altitude, equivalent airspeed, height rate and lateral accel...
Definition guidance_control.hpp:29
GuidanceSetpoint & withHeightRate(float height_rate_m_s)
Set a height rate setpoint.
Definition guidance_control.hpp:84
GuidanceSetpoint & withCourse(float course_rad, float lateral_accel_feedforward_m_s2=NAN)
Set the course reference with an optional lateral acceleration feedforward.
Definition guidance_control.hpp:57
GuidanceSetpoint & withAltitude(float altitude_msl)
Set the altitude reference.
Definition guidance_control.hpp:71