域名注册好怎么建设网站,wordpress菜单栏的函数调用,设计教程网,怎样注册个人网站本文初次写于2023.03.03#xff0c;pixhawk飞控应该是刷写了ArduPilot 4.1以上的版本。
机载计算机通过WIFI和vrpn_ros_client获取动捕系统#xff08;vicon或者nokov#xff09;的无人机定位数据#xff08;x#xff0c;y#xff0c;z四元数#xff09;#xff0c;然…本文初次写于2023.03.03pixhawk飞控应该是刷写了ArduPilot 4.1以上的版本。
机载计算机通过WIFI和vrpn_ros_client获取动捕系统vicon或者nokov的无人机定位数据xyz四元数然后通过 /mavros/vision_pose/pose 的ROS话题发送给APM飞控。APM飞控收到这些动捕数据后并不是直接使用而是也利用EKF融合了imu最终飞控实际融合结果可以在 /mavros/local_position/pose 话题中读到但是读之前要先启动APM的数据流
rosservice call /mavros/set_stream_rate .....
# message_rate 设置100 on_off 设置为true
APM中需要改的参数
AHRS_EKF_TYPE3
EK3_ENABLE1
EK2_ENABLE0
COMPASS_USE0
COMPASS_USE20
COMPASS_USE30
VISO_TYPE1 # mavlink
EK3_SRC1_POSXY6
EK3_SRC1_POSZ6
EK3_SRC1_YAW6 # 使用动捕四元数的偏航角
EK3_SRC1_VELXY0
EK3_SRC1_VELZ0
EK3_SRC2_YAW6 # 可能非必须
EK3_SRC3_YAW6 # 可能非必须
参考
Nokov Indoor Optical Tracking System - Blog - ArduPilot Discourse Intel RealSense T265 — Copter documentation (ardupilot.org)
注意
动捕系统的坐标系要z轴朝上并且遵循xyz右手定则。
如果不使用动捕的偏航角yaw而是使用磁罗盘那么要保证动捕的xy轴和真实世界的东北对应。因为mavros默认发送的xyz是东北天位置。
如果使用动捕的偏航角yaw那么也要检查飞控融合后的偏航角是否正确。
/mavros/local_position/pose 中的四元数可能和 /mavros/vision_pose/pose 中的四元数并不相同比如可能转了180°。要调整动捕球的安装方式或者刚体建立方式保证机头朝向动捕坐标系x轴正向时mission planner上显示偏航角是90°方向是正东机头朝向动捕坐标系y轴正向时mission planner上显示偏航角是0°或者360°方向是正北。