完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
先说一下我对四元数粗浅的理解,四元数是欧拉角之外的另一种三维角度的表达方式,比欧拉角表示法的好处是不存在 Gimbal Lock 问题。(如有误请指正)
假设使用了 MPU6050 6轴传感器(详见InvenSense官方Datasheet),该传感器分为 Acce 的3个轴和 Gyro 的3个轴,传感器输出的 Acce 轴的原始数值通过简单线性转换可得到该轴向上的加速度,传感器输出的 Gyro 轴的原始数值通过简单的线性转换可得到该轴上的角速度。通过角速度对时间的积分得到能得到该轴的角度。Gyro 得到的角度会随着时间漂移,误差越来越大,所以配合 Acce 感知重力方向得到的无人机姿态,使用互补滤波进行修正,可以得到基本正确的无人机当前姿态。 得到当前姿态后,通过 PID 对执行单元(电机等)控制将当前姿态变化为期望姿态。从而完成控制过程。 根据robotics.stackexchange上的这个问题下,marcv81用户的回答,控制算法只接收三个角度作为参数,也就是说,四元数和控制部分无关,四元数只是用来解算姿态的。我找到的有关使用四元数对四轴飞行器姿态控制的文献大多讲了如何将四元数转化成最后供控制算法使用的三个当前飞行器角度 φ, θ, ψ。使用四元数的原因除了没有 Gimbal lock,还有运算量小,适合运算能力差的嵌入式平台。 我的问题是在我上述的无人机姿态控制过程中,没有涉及到四元数的部分就完成了姿态控制,从 MPU 6050 中取出的原始数据通过简单线性计算就可以得到以角度表示的存在漂移误差的当前飞行器姿态,通过互补滤波后就可以得到可靠的以角度表示的当前飞行器姿态,紧接着这三个角度就被送入控制算法处理了,从此和四元数再无瓜葛,那么四元数究竟被应用在了送入控制算法之前的哪一个环节了? |
|
相关推荐
3个回答
|
|
你说的是对的。四元数只是姿态解算的一种方法而已
|
|
|
|
|
|
谢大佬指点!
|
|
|
|
只有小组成员才能发言,加入小组>>
请问下图大疆lightbridge2遥控器主板电源芯片型号是什么?
4465 浏览 1 评论
使用常见的二极管、三极管和mos做MCU和模组的电平转换电路,但是模组和MCU无法正常通信,为什么?
341浏览 2评论
为了提高USIM卡电路的可靠性和稳定性,在电路设计中须注意的点有哪些?
341浏览 2评论
367浏览 2评论
360浏览 2评论
405浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-20 03:20 , Processed in 1.002129 second(s), Total 81, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号