|
发表于 2024-4-2 19:38:31
1545 浏览 6 回复
无人机实机offboard起飞之后出现找东问题
在进行野外实机offboard模式起飞时,无论飞机怎么放,都出现起飞之后转一圈先找东的问题,查阅资料好像是因为mavros与px4坐标系定义不同,请问这种情况有人遇到过吗,该怎么解决?
尘埃1未定已获得悬赏 4 阿木币最佳答案
无人机中NED坐标理解 机体坐标系:机体坐标系固连飞机,其原点 取在多旋翼的重心位置上。 x轴在多旋翼对称平面内指向机头(机头方向与多旋+字形或X字形相关)。 z轴在飞机对称平面内,垂直轴向下。然后,按右手定 ...
|
扫一扫浏览分享
|
|
|
|
|
|
|
PX4和MAVROS在处理坐标系时存在一些差异,PX4主要使用NED坐标系,而ROS采用的是ENU坐标系。可以提前用ros的工具或者函数将坐标系进行转换。 |
|
|
|
|
|
|
|
楼主|
发表于 2024-4-9 12:50:04
经坐标变换处理之后,我起飞之前的飞机朝向需要正东吗? |
|
|
|
|
|
|
|
楼主|
发表于 2024-4-9 19:18:09
|
|
|
|
|
|
|
无人机中NED坐标理解 机体坐标系:机体坐标系固连飞机,其原点 取在多旋翼的重心位置上。 x轴在多旋翼对称平面内指向机头(机头方向与多旋+字形或X字形相关)。 z轴在飞机对称平面内,垂直轴向下。然后,按右手定则确定y轴 。 地球固联坐标系:通常以多旋翼起飞位置作为坐标原点 。先让x轴在水平面内指向某一方向,z轴垂直于地面向下。然后,按右手定则确定y轴,坐标原点还有用地心的?比如NED坐标系为x轴为正北方向,y轴为正东方向,z轴指向下。 飞机的欧拉角就是基于上面两个坐标系的转换。pitch+为抬头,roll+为右旋转,yaw+为右偏航。 ————————————————
Yaw与指南针角度的关系
指南针的角度是确定不变的,北朝向为0度,东为90度,南为180度,西为270度。 Yaw角是当前机头方向与正北方向的夹角(若地球固联坐标系为NED) 也就是说当我们知道YAW角时我们就可以确定飞机当前的航向(东,北哪个方向),比如我们的vision通过mavros给飞控的Yaw的角度是90度,而且飞机的地球固联坐标系为NED,那么可以确定飞机机头当前指向为正东,即使我们没有磁力计测方向,但我们假设了一个方向,此时Yaw角与指南针的角度完全重合或者说相同。
但当我们的Yaw角为90度,机头朝向为正北方向,那么我们可以确定飞机地球固联坐标系采用的是WND(W为西)。
在PX4中用到的地球固联坐标轴是NED坐标系,即x,y,z的方向固定不变(Offboard模式下除外,但是在offboard模式下,初始上电后其东北方向由Yaw角决定)
———————————————— ENU与NED转换
在ROS中用到的坐标系是ENU坐标系,而我们飞控中用到的坐标系是NED所有需要转换,好在mavros已将帮我们转换好了。
下面是转化公式供参考
|
|
|
|
|
|
|
|
楼主|
发表于 2024-4-10 12:25:08
十分感谢您的细心回答!我还有一点疑问,就像您说的,mavros已经帮我们把坐标系转换好了,那理论上来说是不是不应该出现起飞之后找东的问题了呀?为什么还需要自己提前去做二次处理呢? |
|
|
|
|
|
|
|