已回答假定已回答

关于adis16135与stm32f103的通信问题

wkd_dynamic 在 2016-4-23 詢問的問題
最後回覆由dufangling於2016-8-7提供

本人第一次接触这么高端的陀螺仪,发现有相当多的问题需要注意,来这里求助希望大神们可以帮帮我

先说一下主要目的:希望同过读取adis16135的角速度来进行积分然后输出角度,传感器装载在一个移动底盘上。

问题:

1,想知道怎样确保每次读取正常的数据。adis16135和32之间用的spi通信。程序里spi的配置都根据手册上设置了,读取数据的速度都不会超过300hz(手册上说明通信速度是335hz)而且每次使用都有预热30分钟,但是读取的数据还是会出问题。现在是使用32的系统时钟写的延迟函数来控制读取间隔(有位大神跟我说那函数记时会不准),还有什么好的建议吗(用定时器的中断来读取的话会出错,网上说定时器中断里读spi会有冲突)。

2,怎么偏置优化数据,我跟一位大神聊过,他告诉我这类陀螺仪的数据跟温度有较大的关系,让后我参照"ADIS16130快速入门指南及编置优化技巧,作者:Mark Looney"的文章进行优化数据,优化后陀螺仪静止时角速度的数据都在0.5~-0.5之间飘动,有时候回到1点几或-1点几(这样的数据正常吗),至于转动的时候的数据因为接触的陀螺仪不多,水平有限,看不出来正不正常。

3,怎么积分角度较好,程序用的非常简单的式子:角度=角度+角速度*采样间隔,现在因为采样间隔的时间很难确定,所以积分出来的数据有很大的问题,特别是转动几下后就会留下巨大的累积误差。

PS。。。。。。。adis16135是5,6千的传感器,和我之前接触的mpu6050和jy901之类价格不过百的陀螺仪加速度计集成的芯片比好在哪里,数据更加精准吗,有没有哪位大神有adis16135的stm32的样例程序分享下,不胜感激。。

我发现上网搜索基本没有adis16135的有关讨论。

結果