Paparazzi UAS
v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
|
#include "target_pos.h"
#include <math.h>
#include "modules/datalink/telemetry.h"
#include "modules/core/abi.h"
Go to the source code of this file.
Macros | |
#define | TARGET_POS_TIMEOUT 5000 |
#define | TARGET_RTK_TIMEOUT 1000 |
#define | TARGET_OFFSET_HEADING 180.0 |
#define | TARGET_OFFSET_DISTANCE 12.0 |
#define | TARGET_OFFSET_HEIGHT -1.2 |
#define | TARGET_INTEGRATE_XY true |
#define | TARGET_INTEGRATE_Z false |
Functions | |
static void | gps_cb (uint8_t sender_id, uint32_t stamp, struct GpsState *gps_s) |
static void | send_target_pos_info (struct transport_tx *trans, struct link_device *dev) |
void | target_pos_init (void) |
void | target_parse_target_pos (uint8_t *buf) |
Receive a TARGET_POS message from the ground. More... | |
bool | target_get_pos (struct NedCoor_f *pos, float *heading) |
Get the current target position (NED) and heading. More... | |
bool | target_get_vel (struct NedCoor_f *vel) |
Get the current target velocity (NED) More... | |
bool | target_pos_set_current_offset (float unk) |
Set the current measured distance and heading as offset. More... | |
Variables | |
struct target_t | target |
static abi_event | gps_ev |
Definition in file target_pos.c.
#define TARGET_INTEGRATE_XY true |
Definition at line 56 of file target_pos.c.
#define TARGET_INTEGRATE_Z false |
Definition at line 60 of file target_pos.c.
#define TARGET_OFFSET_DISTANCE 12.0 |
Definition at line 48 of file target_pos.c.
#define TARGET_OFFSET_HEADING 180.0 |
Definition at line 44 of file target_pos.c.
#define TARGET_OFFSET_HEIGHT -1.2 |
Definition at line 52 of file target_pos.c.
#define TARGET_POS_TIMEOUT 5000 |
Definition at line 35 of file target_pos.c.
#define TARGET_RTK_TIMEOUT 1000 |
Definition at line 40 of file target_pos.c.
Definition at line 109 of file target_pos.c.
References LlaCoor_i::alt, target_t::gps_lla, LlaCoor_i::lat, GpsState::lla_pos, LlaCoor_i::lon, and target.
Referenced by target_pos_init().
|
static |
Definition at line 83 of file target_pos.c.
References LlaCoor_i::alt, target_pos_t::climb, target_pos_t::course, dev, target_offset_t::distance, target_pos_t::ground_speed, target_pos_t::heading, target_offset_t::heading, target_offset_t::height, LlaCoor_i::lat, target_pos_t::lla, LlaCoor_i::lon, target_t::offset, target_t::pos, and target.
Referenced by target_pos_init().
bool target_get_pos | ( | struct NedCoor_f * | pos, |
float * | heading | ||
) |
Get the current target position (NED) and heading.
Definition at line 142 of file target_pos.c.
References target_offset_t::distance, get_sys_time_msec(), target_t::gps_lla, target_pos_t::heading, target_offset_t::heading, heading, target_offset_t::height, target_t::integrate_xy, target_t::integrate_z, target_pos_t::lla, State::ned_initialized_i, ned_of_lla_point_i(), State::ned_origin_i, target_t::offset, target_t::pos, target_pos_t::recv_time, state, target, target_get_vel(), target_t::target_pos_timeout, target_pos_t::valid, NedCoor_f::x, NedCoor_i::x, NedCoor_f::y, NedCoor_i::y, NedCoor_f::z, and NedCoor_i::z.
bool target_get_vel | ( | struct NedCoor_f * | vel | ) |
Get the current target velocity (NED)
Definition at line 191 of file target_pos.c.
References target_pos_t::climb, target_pos_t::course, get_sys_time_msec(), target_pos_t::ground_speed, State::ned_initialized_i, target_t::pos, target_pos_t::recv_time, state, target, target_t::target_pos_timeout, target_pos_t::valid, NedCoor_f::x, NedCoor_f::y, and NedCoor_f::z.
Referenced by target_get_pos().
void target_parse_target_pos | ( | uint8_t * | buf | ) |
Receive a TARGET_POS message from the ground.
Definition at line 121 of file target_pos.c.
References LlaCoor_i::alt, target_pos_t::climb, target_pos_t::course, get_sys_time_msec(), gps_tow_from_sys_ticks(), target_pos_t::ground_speed, target_pos_t::heading, LlaCoor_i::lat, target_pos_t::lla, LlaCoor_i::lon, sys_time::nb_tick, target_t::pos, target_pos_t::recv_time, target, target_pos_t::tow, and target_pos_t::valid.
void target_pos_init | ( | void | ) |
Definition at line 99 of file target_pos.c.
References ABI_BROADCAST, DefaultPeriodic, gps_cb(), gps_ev, register_periodic_telemetry(), and send_target_pos_info().
bool target_pos_set_current_offset | ( | float | unk | ) |
Set the current measured distance and heading as offset.
Definition at line 209 of file target_pos.c.
References target_offset_t::distance, get_sys_time_msec(), target_pos_t::heading, target_offset_t::heading, target_offset_t::height, target_pos_t::lla, State::ned_initialized_i, ned_of_lla_point_i(), State::ned_origin_i, target_t::offset, target_t::pos, target_pos_t::recv_time, state, stateGetPositionNed_f(), target, target_t::target_pos_timeout, target_pos_t::valid, NedCoor_f::x, NedCoor_i::x, NedCoor_f::y, NedCoor_i::y, NedCoor_f::z, and NedCoor_i::z.
|
static |
Definition at line 78 of file target_pos.c.
Referenced by target_pos_init().
struct target_t target |
Definition at line 1 of file target_pos.c.
Referenced by georeference_run(), gps_cb(), lsm303d_spi_init(), mavlink_common_message_handler(), nav_eight(), nav_set_heading_towards(), px4flash_event(), recursive_least_squares(), send_target_pos_info(), target_get_pos(), target_get_vel(), target_parse_target_pos(), target_pos_set_current_offset(), and update_target_point().