找回密码
 马上注册

QQ登录

只需一步,快速开始

查看: 9823|回复: 7

求助 使用陀螺仪计算角度的问题..

[复制链接]
发表于 2011-8-21 22:37:23 | 显示全部楼层 |阅读模式
本帖最后由 bazzixs 于 2011-8-21 22:51 编辑

为了防止陀螺仪数据的抖动,我弄了个判断,只有幅度达到2才记录数值...我的采样时间为0.1S一次..
这个算法累加起来误差会很大呀...
Ang=0;
while(true)
{
        Fir=SensorHTGyro(IN_2);
        Wait(10);
        Sec=SensorHTGyro(IN_2);
        Res1=abs(Fir-Sec);
        if(Res1<2)
        {
           Err = 0;
           continue;
        }
        Ima = (Fir + Sec)   / 2;
        Err = (Ima  - Gyroaverage)*0.1;
        Ang=Ang+Err;
        Wait(100);
}
请高手指点~~如果需要一些复杂的算法那就算了,我放弃..我高三毕业,水平有限..什么滤波,高数都不会.....
另外,按这段程序用手调试的时候有个奇怪的现象,我把机器人向前摆和向后摆,角度一样,速度都差不多,但是两次Ang的变化不一样,向前摆Ang总是变化比较大,向后摆总是变化比较小...郁闷中....


如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
发表于 2011-8-22 11:24:00 | 显示全部楼层
呵呵,lego的设备是不适合做精度太高的工作的
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

 楼主| 发表于 2011-8-22 14:37:58 | 显示全部楼层
Help.........
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-8-22 15:36:25 | 显示全部楼层
LEGO是玩具哦,并没有多少应用价值哦。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

 楼主| 发表于 2011-8-22 16:23:51 | 显示全部楼层
安步当车 发表于 2011-8-22 15:36
LEGO是玩具哦,并没有多少应用价值哦。

LS的......你根本不了解LEGO.
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

 楼主| 发表于 2011-8-22 22:23:40 | 显示全部楼层
高手帮帮忙呀~
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

 楼主| 发表于 2011-8-22 22:26:00 | 显示全部楼层
是不是定义整形不合适啊??
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-9-15 10:11:01 | 显示全部楼层
两个问题:
(1)
int SensorHTGyro  ( const byte &  port,  
  int  offset = 0   
)   [inline]

Read HiTechnic Gyro sensor.

Read the HiTechnic Gyro sensor on the specified port. The offset value should be calculated by averaging several readings with an offset of zero while the sensor is perfectly still.

陀螺仪是需要校准的,就是在静止放置下,多读几次陀螺仪的数值,平均后作为0点的位移校准值。
然后以后每次调用这个函数的时候,第二个参数为上面得到的值进行校准,否则用缺省的0可能产生你说的向前、向后好像不一致。(因为静止的时候就不是0)

(2)
请检查摆放的传感器的位置
因为陀螺仪是进行旋转角度速度的测定,所以你看看你放置的位置和向后向前旋转起来的时候是不是对传感器来说旋转角度并不对称,
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

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

本版积分规则

手机版|中文乐高 ( 桂ICP备13001575号-7 )

GMT+8, 2024-11-23 07:57 , Processed in 0.085257 second(s), 18 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

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