|
|
|
@ -60,16 +60,26 @@ enum SETPOINT_TYPE
@@ -60,16 +60,26 @@ enum SETPOINT_TYPE
|
|
|
|
|
SETPOINT_TYPE_TAKEOFF, /**< takeoff setpoint */ |
|
|
|
|
SETPOINT_TYPE_LAND, /**< land setpoint, altitude must be ignored, descend until landing */ |
|
|
|
|
SETPOINT_TYPE_IDLE, /**< do nothing, switch off motors or keep at idle speed (MC) */ |
|
|
|
|
SETPOINT_TYPE_OFFBOARD, /**< setpoint set by offboard */ |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
struct position_setpoint_s |
|
|
|
|
{ |
|
|
|
|
bool valid; /**< true if setpoint is valid */ |
|
|
|
|
enum SETPOINT_TYPE type; /**< setpoint type to adjust behavior of position controller */ |
|
|
|
|
float x; /**< local position setpoint in m in NED */ |
|
|
|
|
float y; /**< local position setpoint in m in NED */ |
|
|
|
|
float z; /**< local position setpoint in m in NED */ |
|
|
|
|
bool position_valid; /**< true if local position setpoint valid */ |
|
|
|
|
float vx; /**< local velocity setpoint in m in NED */ |
|
|
|
|
float vy; /**< local velocity setpoint in m in NED */ |
|
|
|
|
float vz; /**< local velocity setpoint in m in NED */ |
|
|
|
|
bool velocity_valid; /**< true if local velocity setpoint valid */ |
|
|
|
|
double lat; /**< latitude, in deg */ |
|
|
|
|
double lon; /**< longitude, in deg */ |
|
|
|
|
float alt; /**< altitude AMSL, in m */ |
|
|
|
|
float yaw; /**< yaw (only for multirotors), in rad [-PI..PI), NaN = hold current yaw */ |
|
|
|
|
float yawspeed; /**< yawspeed (only for multirotors, in rad/s) */ |
|
|
|
|
float loiter_radius; /**< loiter radius (only for fixed wing), in m */ |
|
|
|
|
int8_t loiter_direction; /**< loiter direction: 1 = CW, -1 = CCW */ |
|
|
|
|
float pitch_min; /**< minimal pitch angle for fixed wing takeoff waypoints */ |
|
|
|
|