|
Firmware
|
Public Member Functions | |
| bool | initializeSubscriptions (SubscriptionArray &subscription_array) override |
| Initialize the uORB subscriptions using an array. More... | |
| bool | activate () override |
| Call once on the event where you switch to the task. More... | |
| bool | updateInitialize () override |
| Call before activate() or update() to initialize time and input data. More... | |
| bool | update () override |
| To be called regularly in the control loop cycle to execute the task. More... | |
Public Member Functions inherited from FlightTaskManual | |
| bool | applyCommandParameters (const vehicle_command_s &command) override |
| To be called to adopt parameters from an arrived vehicle command. More... | |
Public Member Functions inherited from FlightTask | |
| virtual void | reActivate () |
| Call this to reset an active Flight Task. | |
| virtual bool | updateFinalize () |
| Call after update() to constrain the generated setpoints in order to comply with the constraints of the current mode. More... | |
| const vehicle_local_position_setpoint_s | getPositionSetpoint () |
| Get the output data. More... | |
| const vehicle_constraints_s & | getConstraints () |
| Get vehicle constraints. More... | |
| const landing_gear_s & | getGear () |
| Get landing gear position. More... | |
| const vehicle_trajectory_waypoint_s & | getAvoidanceWaypoint () |
| Get avoidance desired waypoint. More... | |
| void | handleParameterUpdate () |
| Call this whenever a parameter update notification is received (parameter_update uORB message) | |
| virtual void | setYawHandler (WeatherVane *ext_yaw_handler) |
| Sets an external yaw handler which can be used by any flight task to implement a different yaw control strategy. More... | |
| void | updateVelocityControllerIO (const matrix::Vector3f &vel_sp, const matrix::Vector3f &thrust_sp) |
Public Member Functions inherited from ModuleParams | |
| ModuleParams (ModuleParams *parent) | |
| void | setParent (ModuleParams *parent) |
| Sets the parent module. More... | |
| ModuleParams (const ModuleParams &)=delete | |
| ModuleParams & | operator= (const ModuleParams &)=delete |
| ModuleParams (ModuleParams &&)=delete | |
| ModuleParams & | operator= (ModuleParams &&)=delete |
Public Member Functions inherited from ListNode< ModuleParams *> | |
| void | setSibling (ModuleParams * sibling) |
| const ModuleParams * | getSibling () const |
Protected Member Functions | |
| void | _updateHeadingSetpoints () |
| sets yaw or yaw speed | |
| virtual void | _updateSetpoints () |
| updates all setpoints | |
| virtual void | _scaleSticks () |
| scales sticks to velocity in z | |
| void | _rotateIntoHeadingFrame (matrix::Vector2f &vec) |
| rotates vector into local frame | |
| void | _updateAltitudeLock () |
| Check and sets for position lock. More... | |
| DEFINE_PARAMETERS_CUSTOM_PARENT(FlightTaskManual,(ParamFloat< px4::params::MPC_HOLD_MAX_Z >) _param_mpc_hold_max_z,(ParamInt< px4::params::MPC_ALT_MODE >) _param_mpc_alt_mode,(ParamFloat< px4::params::MPC_HOLD_MAX_XY >) _param_mpc_hold_max_xy,(ParamFloat< px4::params::MPC_Z_P >) _param_mpc_z_p,(ParamFloat< px4::params::MPC_MAN_Y_MAX >) _param_mpc_man_y_max,(ParamFloat< px4::params::MPC_MAN_TILT_MAX >) _param_mpc_man_tilt_max,(ParamFloat< px4::params::MPC_LAND_ALT1 >) _param_mpc_land_alt1,(ParamFloat< px4::params::MPC_LAND_ALT2 >) _param_mpc_land_alt2,(ParamFloat< px4::params::MPC_LAND_SPEED >) _param_mpc_land_speed,(ParamFloat< px4::params::MPC_TKO_SPEED >) _param_mpc_tko_speed) private void | _respectMinAltitude () |
| Terrain following. More... | |
| void | _respectMaxAltitude () |
| void | _respectGroundSlowdown () |
| Sets downwards velocity constraint based on the distance to ground. More... | |
Protected Member Functions inherited from FlightTaskManual | |
| float | stickDeadzone () const |
Protected Member Functions inherited from FlightTask | |
| void | _resetSetpoints () |
| Reset all setpoints to NAN. | |
| void | _evaluateVehicleLocalPosition () |
| Check and update local position. | |
| virtual void | _setDefaultConstraints () |
| Set constraints to default values. | |
Protected Member Functions inherited from ModuleParams | |
| virtual void | updateParams () |
| Call this method whenever the module gets a parameter change notification. More... | |
| virtual void | updateParamsImpl () |
| The implementation for this is generated with the macro DEFINE_PARAMETERS() | |
Protected Attributes | |
| uORB::Subscription< home_position_s > * | _sub_home_position {nullptr} |
| uint8_t | _reset_counter = 0 |
| counter for estimator resets in z-direction | |
| float | _max_speed_up = 10.0f |
| float | _min_speed_down = 1.0f |
| bool | _terrain_follow {false} |
| true when the vehicle is following the terrain height | |
| bool | _terrain_hold {false} |
| true when vehicle is controlling height above a static ground position | |
| float | _dist_to_ground_lock = NAN |
| Distance to ground during terrain following. More... | |
Protected Attributes inherited from FlightTaskManual | |
| bool | _sticks_data_required = true |
| let inherited task-class define if it depends on stick data | |
| matrix::Vector< float, 4 > | _sticks |
| unmodified manual stick inputs | |
| matrix::Vector< float, 4 > | _sticks_expo |
| modified manual sticks using expo function | |
| int | _gear_switch_old = manual_control_setpoint_s::SWITCH_POS_NONE |
| old switch state | |
Protected Attributes inherited from FlightTask | |
| uORB::Subscription< vehicle_local_position_s > * | _sub_vehicle_local_position {nullptr} |
| uORB::Subscription< vehicle_attitude_s > * | _sub_attitude {nullptr} |
| uint8_t | _heading_reset_counter {0} |
| estimator heading reset | |
| float | _time = 0 |
| passed time in seconds since the task was activated | |
| float | _deltatime = 0 |
| passed time in seconds since the task was last updated | |
| hrt_abstime | _time_stamp_activate = 0 |
| time stamp when task was activated | |
| hrt_abstime | _time_stamp_current = 0 |
| time stamp at the beginning of the current task update | |
| hrt_abstime | _time_stamp_last = 0 |
| time stamp when task was last updated | |
| matrix::Vector3f | _position |
| current vehicle position | |
| matrix::Vector3f | _velocity |
| current vehicle velocity | |
| float | _yaw = 0.f |
| current vehicle yaw heading | |
| float | _dist_to_bottom = 0.0f |
| current height above ground level | |
| matrix::Vector3f | _position_setpoint |
| Setpoints which the position controller has to execute. More... | |
| matrix::Vector3f | _velocity_setpoint |
| matrix::Vector3f | _acceleration_setpoint |
| matrix::Vector3f | _jerk_setpoint |
| matrix::Vector3f | _thrust_setpoint |
| float | _yaw_setpoint |
| float | _yawspeed_setpoint |
| matrix::Vector3f | _velocity_setpoint_feedback |
| matrix::Vector3f | _thrust_setpoint_feedback |
| vehicle_constraints_s | _constraints {} |
| Vehicle constraints. More... | |
| landing_gear_s | _gear {} |
| vehicle_trajectory_waypoint_s | _desired_waypoint {} |
| Desired waypoints. More... | |
Protected Attributes inherited from ListNode< ModuleParams *> | |
| ModuleParams * | _sibling |
Additional Inherited Members | |
Static Public Attributes inherited from FlightTask | |
| static const vehicle_local_position_setpoint_s | empty_setpoint = {0, NAN, NAN, NAN, NAN, NAN, NAN, NAN, NAN, NAN, NAN, NAN, NAN, NAN, NAN, {NAN, NAN, NAN}} |
| Empty setpoint. More... | |
| static const vehicle_constraints_s | empty_constraints = {0, NAN, NAN, NAN, NAN, NAN, NAN, NAN, {}} |
| Empty constraints. More... | |
| static const landing_gear_s | empty_landing_gear_default_keep = {0, landing_gear_s::GEAR_KEEP, {}} |
| default landing gear state | |
| static const vehicle_trajectory_waypoint_s | empty_trajectory_waypoint |
| Empty desired waypoints. More... | |
Static Protected Attributes inherited from FlightTask | |
| static constexpr uint64_t | _timeout = 500000 |
| maximal time in us before a loop or data times out | |
|
protected |
Sets downwards velocity constraint based on the distance to ground.
To ensure a slowdown to land speed before hitting the ground.
|
protected |
Terrain following.
During terrain following, the position setpoint is adjusted such that the distance to ground is kept constant.
| apply_brake | is true if user wants to break |
| stopped | is true if vehicle has stopped moving in D-direction Minimum Altitude during range sensor operation. If a range sensor is used for altitude estimates, for best operation a minimum altitude is required. The minimum altitude is only enforced during altitude lock. |
|
protected |
Check and sets for position lock.
If sticks are at center position, the vehicle will exit velocity control and enter position control.
|
overridevirtual |
Call once on the event where you switch to the task.
Reimplemented from FlightTask.
Reimplemented in FlightTaskSport, FlightTaskOrbit, FlightTaskManualPosition, FlightTaskManualPositionSmoothVel, and FlightTaskManualAltitudeSmoothVel.
|
overridevirtual |
Initialize the uORB subscriptions using an array.
| subscription_array | handling uORB subscribtions externally across task switches |
Reimplemented from FlightTaskManual.
Reimplemented in FlightTaskManualPosition.
|
overridevirtual |
To be called regularly in the control loop cycle to execute the task.
Implements FlightTask.
Reimplemented in FlightTaskOrbit.
|
overridevirtual |
Call before activate() or update() to initialize time and input data.
Reimplemented from FlightTaskManual.
Reimplemented in FlightTaskManualPosition.
|
protected |
Distance to ground during terrain following.
If user does not demand velocity change in D-direction and the vehcile is in terrain-following mode, then height to ground will be locked to _dist_to_ground_lock.
1.8.12