diff options
author | Thomas Gubler <thomasgubler@gmail.com> | 2014-09-28 12:36:26 +0200 |
---|---|---|
committer | Thomas Gubler <thomasgubler@gmail.com> | 2014-09-28 12:36:26 +0200 |
commit | 3efffb68e7c816dbf21d143a1c39de93f1b5b400 (patch) | |
tree | ac0545f1e2598092e22be0c2f0ce783bb760e763 /src/modules/navigator/mission.h | |
parent | d113fcfc54c246f3d5ac22ad5485f7103aecab41 (diff) | |
parent | 8a18cfa3869555389e7e9ff8f104d83f9c54cb43 (diff) | |
download | px4-firmware-3efffb68e7c816dbf21d143a1c39de93f1b5b400.tar.gz px4-firmware-3efffb68e7c816dbf21d143a1c39de93f1b5b400.tar.bz2 px4-firmware-3efffb68e7c816dbf21d143a1c39de93f1b5b400.zip |
Merge remote-tracking branch 'upstream/master' into HEAD
Conflicts:
src/modules/fw_pos_control_l1/fw_pos_control_l1_main.cpp
src/modules/navigator/geofence.cpp
src/modules/navigator/mission.cpp
Diffstat (limited to 'src/modules/navigator/mission.h')
-rw-r--r-- | src/modules/navigator/mission.h | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/src/modules/navigator/mission.h b/src/modules/navigator/mission.h index 1b8c8c874..176529209 100644 --- a/src/modules/navigator/mission.h +++ b/src/modules/navigator/mission.h @@ -36,6 +36,7 @@ * Navigator mode to access missions * * @author Julian Oes <julian@oes.ch> + * @author Thomas Gubler <thomasgubler@gmail.com> */ #ifndef NAVIGATOR_MISSION_H @@ -75,6 +76,11 @@ public: virtual void on_active(); + enum mission_altitude_mode { + MISSION_ALTMODE_ZOH = 0, + MISSION_ALTMODE_FOH = 1 + }; + private: /** * Update onboard mission topic @@ -103,6 +109,16 @@ private: void set_mission_items(); /** + * Updates the altitude sp to follow a foh + */ + void altitude_sp_foh_update(); + + /** + * Resets the altitude sp foh logic + */ + void altitude_sp_foh_reset(); + + /** * Read current or next mission item from the dataman and watch out for DO_JUMPS * @return true if successful */ @@ -131,6 +147,7 @@ private: control::BlockParamInt _param_onboard_enabled; control::BlockParamFloat _param_takeoff_alt; control::BlockParamFloat _param_dist_1wp; + control::BlockParamInt _param_altmode; struct mission_s _onboard_mission; struct mission_s _offboard_mission; @@ -149,7 +166,13 @@ private: bool _inited; bool _dist_1wp_ok; - MissionFeasibilityChecker missionFeasiblityChecker; /**< class that checks if a mission is feasible */ + MissionFeasibilityChecker _missionFeasiblityChecker; /**< class that checks if a mission is feasible */ + + float _min_current_sp_distance_xy; /**< minimum distance which was achieved to the current waypoint */ + float _mission_item_previous_alt; /**< holds the altitude of the previous mission item, + can be replaced by a full copy of the previous mission item if needed*/ + float _distance_current_previous; /**< distance from previous to current sp in pos_sp_triplet, + only use if current and previous are valid */ }; #endif |