OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2913|回复: 0

state->acc.z利用旋转矩阵求的的加速度是不是无论将四轴怎么放置,静止时输出减去重力加速度都为0?

[复制链接]

48

主题

109

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
387
金钱
387
注册时间
2016-11-21
在线时间
64 小时
发表于 2017-12-18 22:19:19 | 显示全部楼层 |阅读模式
我是直接利用dmp库里的四元数的,公式是根据原子求解state->acc.z的来算的:
accel_z=2*(q1q3-q0q2)*accel[0]+2*(q0q1+q2q3)*accel[1]+(q0q0-q1q1-q2q2+q3q3)accel[2];
还未减去重力加速度,量程是8G,水平静止时用这个公式算出来的重力加速度和直接用dmp读取的Z轴重力加速度值accel[2]差不多如图,左边是accel_z,右边是accel[2]
2.PNG
然后将飞机倾斜至90度静止,dmp读取的Z轴重力加速度值accel[2]应为与重力加速度垂直所以应该是0了,accel_z是通过旋转矩阵得到的所以应该还是有重力加速度的值,但是结果却如图:
捕获.PNG
accel_z不但不是接近重力加速度,反而差不多是负的重力加速度值,请问这是为什么呢?
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 03:43

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表