[飞控]聊点姿态(三)-什么是地理系和机体系?

到底什么是地理坐标系?什么是机体坐标系?

我用一句话概括一下:
东西南北」是地理坐标系,「前后左右」是机体坐标系

如果使用地理坐标系导航是怎么操作的?
你需要知道你自己的经纬度,然后「走到经度 10, 纬度 20」

使用机体坐标系呢?
在你当前的位置,「往前走100米然后右转」

同样如果用地理坐标系描述一个从A到B的旋转
你需要知道自己在地理系的位置,然后「旋转到北偏东30度」。

如果使用机体坐标系呢?
根据你当前的位置,「向左转5度」。

所以地理坐标系给你的是个「绝对目标你去寻找就行」,前提是你知道你自己在地理系的位置。

而机体坐标系只给你的是个「增量」,不需要知道其他信息,只需要在当前基础上,增加这个量即可。

那么你肯定要问了,控制器到底需要什么样想信息呢?

1.如果是遥控飞机的时候希望控制的是飞行器的「前后左右」,所以我们遥控给的是机体坐标系下的期望。但是导航给我们的是地理系下的位置,速度,以及旋转,所以一定会将导航系的信息转换到机体系来做处理。

2.如果不用遥控,让飞机自主飞行,那么主要控制的就是地理系下的速度和位置了,这时候我们希望控制的是飞行器的「东西南北」,至于你是左边是东还是右边是东,我不在乎,反正你向东走就行。
这也是为什么会说 yaw,不如 roll , pitch 重要的原因,因为我在乎的是地理坐标系下的速度,机头朝哪个方向无所谓,而地理系下的速度,是由 roll,pitch 控制的。

ps:「导航坐标系」:是一种当地地理坐标系,原点位于导航系统所处的位置点,坐标轴指向北、东和当地垂线方向(向下)。也就是我们说的「地理坐标系」和「NED坐标系」

上篇文章倾转分离(一)中的画图就分别用到了两个不同的函数
根据地理系下的旋转画出地理系中的姿态 plot_rotate_NED.m
根据机体系下的旋转画出地理系中的姿态 plot_rotate_body.m
这两个函数使用的是不同思路,更加能体现出不同坐标系下的旋转的区别。

现在是不是能更好的理解这些坐标系了呢?关注微信公众号,一个有趣的飞控工程师,持续分享飞控干货。

zinghd wechat
期待您的关注
您的赞赏是最大的支持