Optitrack动捕下的无人机悬停

1.设备:轴距350四旋翼

5153e769875daa72139f124abe9bfe41.jpeg

机载电脑:Jeston xavier NX 电脑

飞控:pixhawk2.4.8

飞控固件版本:PX4 1.13.3

使用的技术文档:XTdrone配置仿真平台基础配置(仿真平台基础配置(对应PX4 1.13版))

阿木实验室的坐标转换文件:

仿真平台基础配置(对应PX4 1.13版) · 语雀

1.optitrack的标定操作

需要注意的是标定杆和标定坐标系使用的不是一个,如果使用错的话,精度标定上升值会很小,正常是1s几百数值的增加。

首先我们先检查是否有反光点,去除反光点。

该界面保持默认。

此时我们使用标定杆在场地挥舞,确保最小值也超过10000,最后检查各个摄像头的精度。

下一步我们标定坐标系,杆都已经给了推荐的方向,可以注意到它的x,y,z坐标系方向与我们之前不同,y轴朝上,我们熟悉的可能是z轴朝上。这个我们可以在软件的设置页面修改。

b1b938f3ac6698bf63f80d2212eb0a23.jpeg

使用vrpn_clinet_ros功能包来得到地面软件发出的定位信息(只需要将地面软件所在的电脑和机载电脑接入同一个局域网,IP设置正确即可。此时,动捕捕获的位置数据会通过话题广播的数据发送出去,如果我们想要接收到的话,机载电脑就必须要和动捕的电脑连在同一个局域网下

例如:如果你把机体命名为 robot1,你会得到一个主题,比如 /vrpn_client_node/robot1/pose

7dab2f2f7afb763691c333c8eaa99523.jpeg 

关于具体的配置,大家可以看:配置获取动捕数据

5d61bd666b537b2d828fc3e10a981f03.jpeg

 

 

2.px4 坐标系和mavros坐标系

MAVROS的坐标系是ENU,也就是x朝东,y朝北,z朝上。需要特别注意的是!!!:上述坐标可以旋转,比如说x朝北,y朝西,z朝上也属于ENU坐标系,只是在原坐标系方向向西旋转了90°。(当时我们整这个坐标系问题半个月,对enu理解有误,来回修改文件,其实刚开始的就是对的。。。。)我们检验坐标系 是否正确,打开地面站,mavlink消息检测的local_position,它是否是ENU坐标系,如果正确,不用去管其它的

optitrack原始数据的坐标系是ENU(我们使用Z轴朝上,也就是topic /vrpn_client_node/robot1/pose 原始数据是ENU坐标系),px4的坐标系是NED,mavros的坐标系是ENU,中间的转换采用的是阿木实验室的坐标转换:px4_pos_estimator.cpp

整体流程是:

  • 首先是传感器测量得到,由机载电脑中的ros话题发布出来。
  • px4_pos_estimator.cpp订阅该话题,进行一定处理后,转存至另一个话题/mavros/vision_pose/pose 并发布。
  • Mavros功能包中vision_pose_estimate.cpp订阅/mavros/vision_pose/pose话题,并将其封装成Mavlink消息,发送给飞控。
  • 飞控接收到该Mavlink消息,通过mavlink_receiver.cpp接收并处理,转存为相应的uORB消息。
  • 飞控中ekf2模块订阅该uORB消息,并进行相应计算处理,融合得到无人机的位置速度等状态。

飞控参数设置:EKF2

  • EKF2_AID_MASK 设置为24(即勾选vision position fusion and vision yaw fusion
  • EKF2_HGT_MODE 设置为VISION (默认为气压计)
  • MAV_1_CONFIG= TELEM 2(刚开始没有参数,先设置它)

    MAV_1_MODE = Onboard

    SER_TEL2_BAUD = 921600

    EKF2_AID_MASK =24

    EKF2_HGT_MODE 设置为 Vision,有激光定高的可设为Range sensor

    MAV_ODOM_LP设置1

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YBH最帅!!!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值