mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-04-14 10:07:39 +08:00
* PositionSetpoint: remove yaw_valid field * Navigator: set yaw setpoint to NAN for Takeoff Don't set a yaw setpoint for takeoff, as Navigator doesn't handle the yaw reset. The yaw setpoint generation is handled by FlightTaskAuto. * PositionSetpoint.msg: remove disable_weather_vane and instead only use the yaw field Strictly follow the concept that if the position_setpoint.yaw is set, then follow it the controller, and otherwise let the controller set it as it thinks it's best. * Navigator: remove logic that sets yaw to be accepted in TAKEOFF No longer needed as during Takeoff we anyway don't set a yaw setpoint. * PositionSetpoint.msg: remove yawspeed_valid * PositionSetpoint.msg: remove yawspeed * Navigator: set yaw setpoint to NAN instead of current In set_takeoff and set_land_item, as well as for VTOL transition. The flight tasks then set the yaw corresponding to the current yaw. * Navigator: change get_yaw_acceptance into a bool * PositionSetpoint.msg: improve comment for yaw * MissionBlock: remove unnecessary code from set_vtol_transition_item * Navigator: clean up calculate_breaking_stop(), set yaw to NAN * Navigator: set yaw to NAN in variouls places where not specifc setpoint is desired * Navigator: set yaw to NAN in reset_position_setpoint() --------- Signed-off-by: Silvan Fuhrer <silvan@auterion.com> Co-authored-by: Matthias Grob <maetugr@gmail.com>
38 lines
1.9 KiB
Plaintext
38 lines
1.9 KiB
Plaintext
# this file is only used in the position_setpoint triple as a dependency
|
|
|
|
uint64 timestamp # time since system start (microseconds)
|
|
|
|
uint8 SETPOINT_TYPE_POSITION=0 # position setpoint
|
|
uint8 SETPOINT_TYPE_VELOCITY=1 # velocity setpoint
|
|
uint8 SETPOINT_TYPE_LOITER=2 # loiter setpoint
|
|
uint8 SETPOINT_TYPE_TAKEOFF=3 # takeoff setpoint
|
|
uint8 SETPOINT_TYPE_LAND=4 # land setpoint, altitude must be ignored, descend until landing
|
|
uint8 SETPOINT_TYPE_IDLE=5 # do nothing, switch off motors or keep at idle speed (MC)
|
|
|
|
uint8 LOITER_TYPE_ORBIT=0 # Circular pattern
|
|
uint8 LOITER_TYPE_FIGUREEIGHT=1 # Pattern resembling an 8
|
|
|
|
bool valid # true if setpoint is valid
|
|
uint8 type # setpoint type to adjust behavior of position controller
|
|
|
|
float32 vx # local velocity setpoint in m/s in NED
|
|
float32 vy # local velocity setpoint in m/s in NED
|
|
float32 vz # local velocity setpoint in m/s in NED
|
|
|
|
float64 lat # latitude, in deg
|
|
float64 lon # longitude, in deg
|
|
float32 alt # altitude AMSL, in m
|
|
float32 yaw # yaw (only in hover), in rad [-PI..PI), NaN = leave to flight task
|
|
|
|
float32 loiter_radius # loiter major axis radius in m
|
|
float32 loiter_minor_radius # loiter minor axis radius (used for non-circular loiter shapes) in m
|
|
bool loiter_direction_counter_clockwise # loiter direction is clockwise by default and can be changed using this field
|
|
float32 loiter_orientation # Orientation of the major axis with respect to true north in rad [-pi,pi)
|
|
uint8 loiter_pattern # loitern pattern to follow
|
|
|
|
float32 acceptance_radius # navigation acceptance_radius if we're doing waypoint navigation
|
|
|
|
float32 cruising_speed # the generally desired cruising speed (not a hard constraint)
|
|
bool gliding_enabled # commands the vehicle to glide if the capability is available (fixed wing only)
|
|
float32 cruising_throttle # the generally desired cruising throttle (not a hard constraint), only has an effect for rover
|