mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-30 08:03:35 +08:00
Merged beta into paul_estimator
This commit is contained in:
@@ -35,8 +35,8 @@
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* @file mission_item.h
|
||||
* Definition of one mission item.
|
||||
* @file mission.h
|
||||
* Definition of a mission consisting of mission items.
|
||||
*/
|
||||
|
||||
#ifndef TOPIC_MISSION_H_
|
||||
@@ -46,14 +46,24 @@
|
||||
#include <stdbool.h>
|
||||
#include "../uORB.h"
|
||||
|
||||
#define NUM_MISSIONS_SUPPORTED 256
|
||||
|
||||
/* compatible to mavlink MAV_CMD */
|
||||
enum NAV_CMD {
|
||||
NAV_CMD_WAYPOINT = 0,
|
||||
NAV_CMD_LOITER_TURN_COUNT,
|
||||
NAV_CMD_LOITER_TIME_LIMIT,
|
||||
NAV_CMD_LOITER_UNLIMITED,
|
||||
NAV_CMD_RETURN_TO_LAUNCH,
|
||||
NAV_CMD_LAND,
|
||||
NAV_CMD_TAKEOFF
|
||||
NAV_CMD_WAYPOINT=16,
|
||||
NAV_CMD_LOITER_UNLIMITED=17,
|
||||
NAV_CMD_LOITER_TURN_COUNT=18,
|
||||
NAV_CMD_LOITER_TIME_LIMIT=19,
|
||||
NAV_CMD_RETURN_TO_LAUNCH=20,
|
||||
NAV_CMD_LAND=21,
|
||||
NAV_CMD_TAKEOFF=22,
|
||||
NAV_CMD_ROI=80,
|
||||
NAV_CMD_PATHPLANNING=81
|
||||
};
|
||||
|
||||
enum ORIGIN {
|
||||
ORIGIN_MAVLINK = 0,
|
||||
ORIGIN_ONBOARD
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -69,22 +79,25 @@ enum NAV_CMD {
|
||||
*/
|
||||
struct mission_item_s {
|
||||
bool altitude_is_relative; /**< true if altitude is relative from start point */
|
||||
double lat; /**< latitude in degrees * 1E7 */
|
||||
double lon; /**< longitude in degrees * 1E7 */
|
||||
double lat; /**< latitude in degrees */
|
||||
double lon; /**< longitude in degrees */
|
||||
float altitude; /**< altitude in meters */
|
||||
float yaw; /**< in radians NED -PI..+PI */
|
||||
float yaw; /**< in radians NED -PI..+PI, NAN means don't change yaw */
|
||||
float loiter_radius; /**< loiter radius in meters, 0 for a VTOL to hover */
|
||||
uint8_t loiter_direction; /**< 1: positive / clockwise, -1, negative. */
|
||||
enum NAV_CMD nav_cmd; /**< true if loitering is enabled */
|
||||
float param1;
|
||||
float param2;
|
||||
float param3;
|
||||
float param4;
|
||||
int8_t loiter_direction; /**< 1: positive / clockwise, -1, negative. */
|
||||
enum NAV_CMD nav_cmd; /**< navigation command */
|
||||
float acceptance_radius; /**< default radius in which the mission is accepted as reached in meters */
|
||||
float time_inside; /**< time that the MAV should stay inside the radius before advancing in seconds */
|
||||
float pitch_min; /**< minimal pitch angle for fixed wing takeoff waypoints */
|
||||
bool autocontinue; /**< true if next waypoint should follow after this one */
|
||||
enum ORIGIN origin; /**< where the waypoint has been generated */
|
||||
};
|
||||
|
||||
struct mission_s {
|
||||
struct mission_item_s *items;
|
||||
unsigned count;
|
||||
struct mission_s
|
||||
{
|
||||
int dataman_id; /**< default -1, there are two offboard storage places in the dataman: 0 or 1 */
|
||||
unsigned count; /**< count of the missions stored in the datamanager */
|
||||
int current_index; /**< default -1, start at the one changed latest */
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -93,5 +106,6 @@ struct mission_s {
|
||||
|
||||
/* register this as object request broker structure */
|
||||
ORB_DECLARE(mission);
|
||||
ORB_DECLARE(onboard_mission);
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user