ADXL345,单片机求Y,Z轴角度

[复制链接]
5547|6
 楼主| 波板糖 发表于 2013-7-30 14:36 | 显示全部楼层 |阅读模式
小弟想了几天,反正切能求出来,可是该函数运算量貌似很大,如果采用制表,这个输出的数字量,怎么制表,希望各位踊跃拍砖,指点
老鱼探戈 发表于 2013-8-1 09:32 | 显示全部楼层
X轴角度值是,X轴和Z轴的反正切值(换算成角度),减去原始夹角90°。
即:
假如X、Y、Z为原始数据,那么X的角度是
Roll=(float)(((atan2(Z,X)*180)/3.1416)-90);
Y轴原理和X轴一样(以水平为参考)。



 楼主| 波板糖 发表于 2013-8-1 15:09 | 显示全部楼层
老鱼探戈 发表于 2013-8-1 09:32
X轴角度值是,X轴和Z轴的反正切值(换算成角度),减去原始夹角90°。
即:
假如X、Y、Z为原始数据,那么X的 ...

11年全国电赛B题,大都采用的查表方式来推算角度。用函数会不会计算太慢,我自己用函数液晶显示角度不连续
老鱼探戈 发表于 2013-8-1 15:28 | 显示全部楼层
波板糖 发表于 2013-8-1 15:09
11年全国电赛B题,大都采用的查表方式来推算角度。用函数会不会计算太慢,我自己用函数液晶显示角度不连 ...

不连续? 你的意思是不是说显示的时候出现数据“跳动”的情况。那就稍微加些软件滤波就可以了。

若按你说的做成表格,那就计算才出一些角度的数据做表就行了。
如果要精确到1°,那就需要计算出90个数据,由于atan函数的非线性,最好不要用所谓的规律。

评分

参与人数 1威望 +1 收起 理由
波板糖 + 1 很给力!

查看全部评分

 楼主| 波板糖 发表于 2013-8-1 16:02 | 显示全部楼层
老鱼探戈 发表于 2013-8-1 15:28
不连续? 你的意思是不是说显示的时候出现数据“跳动”的情况。那就稍微加些软件滤波就可以了。

若按你 ...

现在Z轴从0变化到1.01。取0到60度就行,60度变化幅度大。只测轴加速度(倾斜不同Z变化),即0~60度变化Z值对应变化,这样知道Z就知道角度。可行不?函数怎么写?(这是软肋)
老鱼探戈 发表于 2013-8-1 16:16 | 显示全部楼层
本帖最后由 老鱼探戈 于 2013-8-1 16:18 编辑

你的1.01是弧度吧。换算成角度啊
可行,但是准确度有待考证。
其实就是一个夹角,三角函数就行。注意地心的G就行
 楼主| 波板糖 发表于 2013-8-1 16:51 | 显示全部楼层
老鱼探戈 发表于 2013-8-1 16:16
你的1.01是弧度吧。换算成角度啊
可行,但是准确度有待考证。
其实就是一个夹角,三角函数就行。注意地心的 ...

感谢,1.01直接就是对地加速度,嘿嘿
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

206

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部