mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-11-01 13:41:36 +08:00
sdlog2: update vision log fields
This commit is contained in:
@@ -76,6 +76,7 @@
|
|||||||
#include <uORB/topics/vehicle_gps_position.h>
|
#include <uORB/topics/vehicle_gps_position.h>
|
||||||
#include <uORB/topics/satellite_info.h>
|
#include <uORB/topics/satellite_info.h>
|
||||||
#include <uORB/topics/vehicle_vicon_position.h>
|
#include <uORB/topics/vehicle_vicon_position.h>
|
||||||
|
#include <uORB/topics/vision_position_estimate.h>
|
||||||
#include <uORB/topics/vehicle_global_velocity_setpoint.h>
|
#include <uORB/topics/vehicle_global_velocity_setpoint.h>
|
||||||
#include <uORB/topics/optical_flow.h>
|
#include <uORB/topics/optical_flow.h>
|
||||||
#include <uORB/topics/battery_status.h>
|
#include <uORB/topics/battery_status.h>
|
||||||
@@ -934,7 +935,7 @@ int sdlog2_thread_main(int argc, char *argv[])
|
|||||||
struct vehicle_global_position_s global_pos;
|
struct vehicle_global_position_s global_pos;
|
||||||
struct position_setpoint_triplet_s triplet;
|
struct position_setpoint_triplet_s triplet;
|
||||||
struct vehicle_vicon_position_s vicon_pos;
|
struct vehicle_vicon_position_s vicon_pos;
|
||||||
struct vehicle_vision_position_s vision_pos;
|
struct vision_position_estimate_s vision_pos;
|
||||||
struct optical_flow_s flow;
|
struct optical_flow_s flow;
|
||||||
struct rc_channels_s rc;
|
struct rc_channels_s rc;
|
||||||
struct differential_pressure_s diff_pres;
|
struct differential_pressure_s diff_pres;
|
||||||
@@ -1046,7 +1047,7 @@ int sdlog2_thread_main(int argc, char *argv[])
|
|||||||
subs.global_pos_sub = orb_subscribe(ORB_ID(vehicle_global_position));
|
subs.global_pos_sub = orb_subscribe(ORB_ID(vehicle_global_position));
|
||||||
subs.triplet_sub = orb_subscribe(ORB_ID(position_setpoint_triplet));
|
subs.triplet_sub = orb_subscribe(ORB_ID(position_setpoint_triplet));
|
||||||
subs.vicon_pos_sub = orb_subscribe(ORB_ID(vehicle_vicon_position));
|
subs.vicon_pos_sub = orb_subscribe(ORB_ID(vehicle_vicon_position));
|
||||||
subs.vision_pos_sub = orb_subscribe(ORB_ID(vehicle_vision_position));
|
subs.vision_pos_sub = orb_subscribe(ORB_ID(vision_position_estimate));
|
||||||
subs.flow_sub = orb_subscribe(ORB_ID(optical_flow));
|
subs.flow_sub = orb_subscribe(ORB_ID(optical_flow));
|
||||||
subs.rc_sub = orb_subscribe(ORB_ID(rc_channels));
|
subs.rc_sub = orb_subscribe(ORB_ID(rc_channels));
|
||||||
subs.airspeed_sub = orb_subscribe(ORB_ID(airspeed));
|
subs.airspeed_sub = orb_subscribe(ORB_ID(airspeed));
|
||||||
@@ -1465,14 +1466,18 @@ int sdlog2_thread_main(int argc, char *argv[])
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* --- VISION POSITION --- */
|
/* --- VISION POSITION --- */
|
||||||
if (copy_if_updated(ORB_ID(vehicle_vision_position), subs.vision_pos_sub, &buf.vision_pos)) {
|
if (copy_if_updated(ORB_ID(vision_position_estimate), subs.vision_pos_sub, &buf.vision_pos)) {
|
||||||
log_msg.msg_type = LOG_VISN_MSG;
|
log_msg.msg_type = LOG_VISN_MSG;
|
||||||
log_msg.body.log_VISN.x = buf.vision_pos.x;
|
log_msg.body.log_VISN.x = buf.vision_pos.x;
|
||||||
log_msg.body.log_VISN.y = buf.vision_pos.y;
|
log_msg.body.log_VISN.y = buf.vision_pos.y;
|
||||||
log_msg.body.log_VISN.z = buf.vision_pos.z;
|
log_msg.body.log_VISN.z = buf.vision_pos.z;
|
||||||
log_msg.body.log_VISN.pitch = buf.vision_pos.pitch;
|
log_msg.body.log_VISN.vx = buf.vision_pos.vx;
|
||||||
log_msg.body.log_VISN.roll = buf.vision_pos.roll;
|
log_msg.body.log_VISN.vy = buf.vision_pos.vy;
|
||||||
log_msg.body.log_VISN.yaw = buf.vision_pos.yaw;
|
log_msg.body.log_VISN.vz = buf.vision_pos.vz;
|
||||||
|
log_msg.body.log_VISN.qx = buf.vision_pos.q[0];
|
||||||
|
log_msg.body.log_VISN.qy = buf.vision_pos.q[1];
|
||||||
|
log_msg.body.log_VISN.qz = buf.vision_pos.q[2];
|
||||||
|
log_msg.body.log_VISN.qw = buf.vision_pos.q[3];
|
||||||
LOGBUFFER_WRITE_AND_COUNT(VISN);
|
LOGBUFFER_WRITE_AND_COUNT(VISN);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -397,9 +397,13 @@ struct log_VISN_s {
|
|||||||
float x;
|
float x;
|
||||||
float y;
|
float y;
|
||||||
float z;
|
float z;
|
||||||
float roll;
|
float vx;
|
||||||
float pitch;
|
float vy;
|
||||||
float yaw;
|
float vz;
|
||||||
|
float qx;
|
||||||
|
float qy;
|
||||||
|
float qz;
|
||||||
|
float qw;
|
||||||
};
|
};
|
||||||
|
|
||||||
/********** SYSTEM MESSAGES, ID > 0x80 **********/
|
/********** SYSTEM MESSAGES, ID > 0x80 **********/
|
||||||
@@ -459,7 +463,7 @@ static const struct log_format_s log_formats[] = {
|
|||||||
LOG_FORMAT(EST1, "ffffffffffffffff", "s12,s13,s14,s15,s16,s17,s18,s19,s20,s21,s22,s23,s24,s25,s26,s27"),
|
LOG_FORMAT(EST1, "ffffffffffffffff", "s12,s13,s14,s15,s16,s17,s18,s19,s20,s21,s22,s23,s24,s25,s26,s27"),
|
||||||
LOG_FORMAT(PWR, "fffBBBBB", "Periph5V,Servo5V,RSSI,UsbOk,BrickOk,ServoOk,PeriphOC,HipwrOC"),
|
LOG_FORMAT(PWR, "fffBBBBB", "Periph5V,Servo5V,RSSI,UsbOk,BrickOk,ServoOk,PeriphOC,HipwrOC"),
|
||||||
LOG_FORMAT(VICN, "ffffff", "X,Y,Z,Roll,Pitch,Yaw"),
|
LOG_FORMAT(VICN, "ffffff", "X,Y,Z,Roll,Pitch,Yaw"),
|
||||||
LOG_FORMAT(VISN, "ffffff", "X,Y,Z,Roll,Pitch,Yaw"),
|
LOG_FORMAT(VISN, "ffffffffff", "X,Y,Z,VX,VY,VZ,QuatX,QuatY,QuatZ,QuatW"),
|
||||||
LOG_FORMAT(GS0A, "BBBBBBBBBBBBBBBB", "s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15"),
|
LOG_FORMAT(GS0A, "BBBBBBBBBBBBBBBB", "s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15"),
|
||||||
LOG_FORMAT(GS0B, "BBBBBBBBBBBBBBBB", "s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15"),
|
LOG_FORMAT(GS0B, "BBBBBBBBBBBBBBBB", "s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15"),
|
||||||
LOG_FORMAT(GS1A, "BBBBBBBBBBBBBBBB", "s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15"),
|
LOG_FORMAT(GS1A, "BBBBBBBBBBBBBBBB", "s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15"),
|
||||||
|
|||||||
Reference in New Issue
Block a user