智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 1204|回复: 0
打印 上一主题 下一主题

[编程类] 求指教,是关于陀螺仪和加速度计的

[复制链接]

1

主题

4

帖子

0

精华

注册会员

Rank: 2

积分
116
威望
64
贡献
26
兑换币
28
注册时间
2014-4-22
在线时间
13 小时
毕业学校
某大学
跳转到指定楼层
1#
发表于 2014-5-2 12:09:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1贡献
以下程序是在陀螺仪硬件积分得到,加速度计通过X、Z轴获得角度   
可是不知道为什么角度只在一个很小的范围内拟合,而且ang大约只能在-45~+45变化 这是为什么????
while(!ATD0STAT0_SCF);
    AD_in = ATD0DR0;   //读取z轴的信号
    AD_in2 = ATD0DR1;  //读取x轴的信号
    gro=ATD0DR2;   //读取陀螺仪硬件积分后的数据
    ang=(float)0.0052*gro;  //0.0052是自己经过多次试验计算后得到的,是通过du变化量与ang变化量比例 ,
    ang=ang-94; //j减去垂直时的值   ,但是ang与du只是在很小的范围内拟合

    dianyaZ = AD_in * 0.33/ 4095;  //不解为什么参考电压时3.3V却要用0.33
    DeltaVoltsRz = dianyaZ - 1.65;
    RZ = DeltaVoltsRz / 0.8;

    dianyaX = AD_in2 * 0.33 / 4095;
    DeltaVoltsRX = dianyaX - 1.65;
    RX = DeltaVoltsRX / 0.8;
    angle = asin(RZ/(sqrt(RZ*RZ + RX*RX)));
    du = -angle * 180/3.1415;




补充内容 (2014-5-2 12:46):
求帮助,指教啊

回复

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-11-6 21:37 , Processed in 0.047945 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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