mpu6050如何将输出的角速度或加速度积分成角度

2019-03-24 17:11发布

用了一个mpu6050程序,能够分别输出x、y、z的角速度和加速度。但是我需要让它输出角度。有查过说是要对时间进行积分,但不知如何编写程序。求高手指点。单片机用的是STC12C5A60S2~~ 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
Li_Lei
1楼-- · 2019-03-24 20:08
 精彩回答 2  元偷偷看……
shihuntaotie
2楼-- · 2019-03-25 01:34
韶华墨 发表于 2014-8-4 09:07
好吧   这几天麻烦你了  谢谢啊~~

我刚好弄过这个,所以解答,因为我当时做时啥都没有,只能各个论坛到处搜相关的,然后自己改,而且点方向都没有,我知道那种痛苦
shihuntaotie
3楼-- · 2019-03-25 07:33
ACCE_X=(GetData(ACCEL_XOUT_H));
ACCE_Y=(GetData(ACCEL_YOUT_H));
x=(float)ACCE_X/4096.0;//4096是根据你的设置来选择的,具体在datasheet里有,就是陀螺仪的测量范围。
y=(float)ACCE_Y/4096.0;
angleAx=atan2(x,y)*180/3.14;这是根据两个加速度来求解角度的。
shihuntaotie
4楼-- · 2019-03-25 09:26
 精彩回答 2  元偷偷看……
大北极熊
5楼-- · 2019-03-25 13:32
shihuntaotie 发表于 2014-7-30 18:29
你可以百度,百度用公式,或者等我下火车回家之后给你回帖。我用过不过主控不一样

想问一下,从MPU6050那儿获得的加速度和角速度数据具体是什么数据?还望赐教
韶华墨
6楼-- · 2019-03-25 15:12
shihuntaotie 发表于 2014-8-1 22:59
ACCE_X=(GetData(ACCEL_XOUT_H));
ACCE_Y=(GetData(ACCEL_YOUT_H));
x=(float)ACCE_X/4096.0;//4096是根 ...

为什么要除以4096啊???

一周热门 更多>