[[px4-analyse-position]]

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
px4-analyse-position [2018/10/27 21:56]
natwati [Other Functions]
px4-analyse-position [2018/10/27 22:02]
natwati [handle_command()]
Line 308: Line 308:
 </​code>​ </​code>​
 A previously calculated _groundspeed_undershoot value is added to the airspeed. The returned airspeed is constrained to a value between FW_AIRSPD_MAX and an increased FW_AIRSPD_MIN. FW_AIRSPEED_MIN is increased to ensure the increased demand for lift if the plane (current _att_sp) has a roll angle is met. This increase is only applied if airspeed is vaild (_airspeed_valid). ​ A previously calculated _groundspeed_undershoot value is added to the airspeed. The returned airspeed is constrained to a value between FW_AIRSPD_MAX and an increased FW_AIRSPD_MIN. FW_AIRSPEED_MIN is increased to ensure the increased demand for lift if the plane (current _att_sp) has a roll angle is met. This increase is only applied if airspeed is vaild (_airspeed_valid). ​
 +
 +==== calculate_gndspeed_undershoot() ====
  
 <code c++ FixedwingPositionControl.hpp>​ <code c++ FixedwingPositionControl.hpp>​
Line 314: Line 316:
 The minimum desired ground speed is the minimum airspeed projected on to the ground using the altitude and horizontal difference between the waypoints if available. _groundspeed_undershoot ensures that a plane (as long as its throttle capability is not exceeded) travels towards a waypoint (and is not pushed more and more away by wind). Not countering this would lead to a fly-away. The minimum desired ground speed is the minimum airspeed projected on to the ground using the altitude and horizontal difference between the waypoints if available. _groundspeed_undershoot ensures that a plane (as long as its throttle capability is not exceeded) travels towards a waypoint (and is not pushed more and more away by wind). Not countering this would lead to a fly-away.
  
 +==== get_waypoint_heading_distance() ====
 <code c++ FixedwingPositionControl.hpp>​ <code c++ FixedwingPositionControl.hpp>​
 static constexpr float HDG_HOLD_DIST_NEXT = 3000.0f; // initial distance of waypoint in front of plane in heading hold mode static constexpr float HDG_HOLD_DIST_NEXT = 3000.0f; // initial distance of waypoint in front of plane in heading hold mode
Line 323: Line 326:
 If flag_init is false the passed waypoint_next and waypoint_prev are used to generate a line. The waypoint_prev is generated on the line 1100 meters behind waypoint_next and the new waypoint_next is generated on the line 4000 meters ahead of the old waypoint_next.\\ If flag_init is false the passed waypoint_next and waypoint_prev are used to generate a line. The waypoint_prev is generated on the line 1100 meters behind waypoint_next and the new waypoint_next is generated on the line 4000 meters ahead of the old waypoint_next.\\
 _hold_alt is used for all waypoints. _hold_alt is used for all waypoints.
 +
 +==== update_desired_altitude() ====
 <code c++ FixedwingPositionControl.hpp>​ <code c++ FixedwingPositionControl.hpp>​
  bool update_desired_altitude(float dt);  bool update_desired_altitude(float dt);
Line 333: Line 338:
 Not examined yet Not examined yet
 ==== handle_command() ==== ==== handle_command() ====
-Not examined yet+This funcion solely handles the VEHICLE_CMD_DO_GO_AROUND. 
 +It  abort landing before point of no return (horizontal and vertical) by setting _fw_pos_ctrl_status.abort_landing to true.
 ==== tecs_update_pitch_throttle() ==== ==== tecs_update_pitch_throttle() ====
 Not examined yet Not examined yet
  • px4-analyse-position.txt
  • Last modified: 2018/10/27 22:02
  • by natwati