mcu_arm9 发表于 2011-8-21 18:30:25

我用得ENC-03的陀螺仪,看一看我的公式对不对呀,怎么老是出错呢(个人认为是一个重量级问

http://cache.amobbs.com/bbs_upload782111/files_44/ourdev_669711CMHFFA.jpg
(原文件名:未命名.jpg)
这个是陀螺仪的数据

http://cache.amobbs.com/bbs_upload782111/files_44/ourdev_669712ECAY3X.jpg
(原文件名:1.jpg)
这个是原理图(放大10倍,不知可对)

我用得是10位的AD采样,ATMEG64单片机

W = (Vout -V0) / 0.67mV /°/s             其中0.67mV/°/s为ENC-03陀螺仪的灵敏度 V0=1.35V
W=(VOUT-276.21)/1.37                      276.21是1023/5*1.35      1.37是1023/5000*(0.67*10)w是角速度

下面是角度换算
Angle_next=Angle+W*T;    //T是积分步长 我的陀螺仪是50HZ,即20MS
Angle_next=Angle+W*0.005   //我用的是5MS的AD采样,现在问题是我是不是一定要用20MS的采样时间或者以上,是不是我的5MS就是不行。
Angle=Angle_next;       //我的算法就是这样的啊

Angle是角度值,现在是飘得很吓人,30秒就到300度了,自动加的。

所有的变量都是float类型

ssaweee 发表于 2011-8-21 18:46:43

本来飘得都惊人

sclsdhlr 发表于 2011-8-22 10:50:02

试着把采样时间再变短一点…………一般来说是要加滤波的(呵呵,不过我不会滤波)

tang-guo 发表于 2011-10-5 20:04:20

学习中

wscjun 发表于 2011-11-23 18:01:42

学习中
页: [1]
查看完整版本: 我用得ENC-03的陀螺仪,看一看我的公式对不对呀,怎么老是出错呢(个人认为是一个重量级问