made NED pos available in buzz
This commit is contained in:
parent
f2c662dfa9
commit
b129d26a02
@ -89,6 +89,8 @@ void set_filtered_packet_loss(float value);
|
|||||||
/*
|
/*
|
||||||
* sets current position
|
* sets current position
|
||||||
*/
|
*/
|
||||||
|
void set_currentNEDpos(double x, double y);
|
||||||
|
|
||||||
void set_currentpos(double latitude, double longitude, float altitude, float yaw);
|
void set_currentpos(double latitude, double longitude, float altitude, float yaw);
|
||||||
/*
|
/*
|
||||||
* returns the current go to position
|
* returns the current go to position
|
||||||
|
@ -19,6 +19,7 @@ static float rc_gimbal[4];
|
|||||||
static float batt[3];
|
static float batt[3];
|
||||||
static float obst[5] = { 0, 0, 0, 0, 0 };
|
static float obst[5] = { 0, 0, 0, 0, 0 };
|
||||||
static double cur_pos[4];
|
static double cur_pos[4];
|
||||||
|
static double cur_NEDpos[2];
|
||||||
static uint8_t status;
|
static uint8_t status;
|
||||||
static int cur_cmd = 0;
|
static int cur_cmd = 0;
|
||||||
static int rc_cmd = 0;
|
static int rc_cmd = 0;
|
||||||
@ -629,6 +630,15 @@ int buzzuav_update_xbee_status(buzzvm_t vm)
|
|||||||
return vm->state;
|
return vm->state;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void set_currentNEDpos(double x, double y)
|
||||||
|
/*
|
||||||
|
/ update interface position array
|
||||||
|
-----------------------------------*/
|
||||||
|
{
|
||||||
|
cur_NEDpos[0] = x;
|
||||||
|
cur_NEDpos[1] = y;
|
||||||
|
}
|
||||||
|
|
||||||
void set_currentpos(double latitude, double longitude, float altitude, float yaw)
|
void set_currentpos(double latitude, double longitude, float altitude, float yaw)
|
||||||
/*
|
/*
|
||||||
/ update interface position array
|
/ update interface position array
|
||||||
@ -697,6 +707,14 @@ int buzzuav_update_currentpos(buzzvm_t vm)
|
|||||||
buzzvm_pushs(vm, buzzvm_string_register(vm, "altitude", 0));
|
buzzvm_pushs(vm, buzzvm_string_register(vm, "altitude", 0));
|
||||||
buzzvm_pushf(vm, cur_pos[2]);
|
buzzvm_pushf(vm, cur_pos[2]);
|
||||||
buzzvm_tput(vm);
|
buzzvm_tput(vm);
|
||||||
|
buzzvm_push(vm, tPosition);
|
||||||
|
buzzvm_pushs(vm, buzzvm_string_register(vm, "x", 0));
|
||||||
|
buzzvm_pushf(vm, cur_NEDpos[0]);
|
||||||
|
buzzvm_tput(vm);
|
||||||
|
buzzvm_push(vm, tPosition);
|
||||||
|
buzzvm_pushs(vm, buzzvm_string_register(vm, "y", 0));
|
||||||
|
buzzvm_pushf(vm, cur_NEDpos[1]);
|
||||||
|
buzzvm_tput(vm);
|
||||||
// Store read table in the proximity table
|
// Store read table in the proximity table
|
||||||
buzzvm_push(vm, tPoseTable);
|
buzzvm_push(vm, tPoseTable);
|
||||||
buzzvm_pushs(vm, buzzvm_string_register(vm, "position", 0));
|
buzzvm_pushs(vm, buzzvm_string_register(vm, "position", 0));
|
||||||
|
@ -987,6 +987,7 @@ void roscontroller::local_pos_callback(const geometry_msgs::PoseStamped::ConstPt
|
|||||||
{
|
{
|
||||||
cur_pos.x = msg->pose.position.x;
|
cur_pos.x = msg->pose.position.x;
|
||||||
cur_pos.y = msg->pose.position.y;
|
cur_pos.y = msg->pose.position.y;
|
||||||
|
set_currentNEDpos(msg->pose.position.y,msg->pose.position.x);
|
||||||
// cur_pos.z = pose->pose.position.z; // Using relative altitude topic instead
|
// cur_pos.z = pose->pose.position.z; // Using relative altitude topic instead
|
||||||
tf::Quaternion q(
|
tf::Quaternion q(
|
||||||
msg->pose.orientation.x,
|
msg->pose.orientation.x,
|
||||||
|
Loading…
Reference in New Issue
Block a user