OpenEdv-开源电子网

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

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

[复制链接]

48

主题

109

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
387
金钱
387
注册时间
2016-11-21
在线时间
64 小时
发表于 2017-12-18 22:20:58 | 显示全部楼层 |阅读模式
我是直接利用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劲爆上市
回复

使用道具 举报

3

主题

2164

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5703
金钱
5703
注册时间
2013-11-22
在线时间
1198 小时
发表于 2017-12-19 09:14:27 | 显示全部楼层
dmp不太清楚,但我们MiniFly静止状态(无论飞机如何放置)下,四元数互补滤波出来的重力 方向加速度都是1G左右
回复 支持 反对

使用道具 举报

1

主题

48

帖子

0

精华

高级会员

Rank: 4

积分
558
金钱
558
注册时间
2017-7-26
在线时间
50 小时
发表于 2017-12-19 15:17:54 | 显示全部楼层
我感觉你这个好像还没标定
回复 支持 反对

使用道具 举报

48

主题

109

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
387
金钱
387
注册时间
2016-11-21
在线时间
64 小时
 楼主| 发表于 2017-12-19 16:41:08 | 显示全部楼层
617150851 发表于 2017-12-19 15:17
我感觉你这个好像还没标定

什么意思?
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

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

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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