碧波液压网 欢迎你,游客。 登录 注册

基于MCU的加速度计线性误差补偿方法

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

  线性度是加速度计的一个关键指标,要实现高的线性度,常常意味着高成本,如果采用线性补偿技术,可以有效地提高加速度计的性能价格比。从实现线 性补偿的方法看,只依靠电路补偿措施来完成线性补偿是很困难的,使用MCU(单片机系统)通过软件来解决加速度计的线性误差问题是一个有效的方法 [1,2]。

  在单片机加速度计线性补偿系统中,要解决加速度计的线性补偿问题,首先要进行线性度试验,得出加速度计的线性误差,再结合试验数据分析研究加速 度计的线性特性。在单片机的控制下开始进行相应的信号转换,单片机读取转换后的加速度信号,进行补偿。补偿结束后,通过单片机转换接口,进行相应的信号转 换,得到补偿后的加速度信号[2,3]。

  加速度计单片机线性补偿系统原理框图如图1所示。

  1 线性补偿的数学模型

  线性误差(非线性)就是理论与实际的偏差,表现在加速度的输入输出特性曲线上的非线性变化。为解决这样的问题,必须找出它们之间的关系,建立对 应的数学模型。数学模型的正确建立是很重要的,模型不外乎动态的和静态的。就动态而言,需要用随机信号处理的方法。因为误差的来源是一些高斯分布的白噪, 这些数据可以看为随机信号,可选择随机信号处理的典型算法:维纳滤波和卡尔曼滤波算法。

  首先,卡尔曼过滤和维纳滤波应用背景很不明确,在只有几组试验数据的情况下建立量测方程的话,参数的到位是有问题的。其次,在实际的应用中,加 速度计工作过程并不是一个随机的过程,而是一个加速度有增有减的过程,而且它的增减有一定的规律可循。虽然以一个随机过程来解这个模型,但会引入许多与解 决问题相关不是很大的参数,算法也因此会很复杂。因此,用卡尔曼滤波和维纳滤波的话,计算量会大许多,速度无疑会下降。对于单片机有限的数据存储器来说, 难以解决计算过程中的众多迭代量。

  基于以上的考虑,决定采用静态方法来解决这个问题,就是建立一个类似于图表性质的程序段,读入一个数据后,根据这个数据值,再快速的通过查表运算得出。

  由于单片机得到的是一个一维的信号,见图2。对于一个加速度计实际输出u,无法判断其对应的加速度值是g1还是g2。单片机本身的转换并不提供 任何信息,但单片机输出的是一个二维的信号,有着与加速度值对应的输出值。这就是说,单片机的程序里面应该有一个附加条件。这和使用图表的方法不谋而合, 将实验得到的数据加以整理,就可以补足这个条件,使得补偿可顺利开展。

  可以把加速度计输入输出特性曲线按实测点分为若干段,假设为n段,然后把相邻两点之间的曲线用直线近似,这样可以得到图3的特性曲线,再对这若 干个点做最小二乘法拟合,得到一条拟合曲线。用k1和k2分别代表这条曲线的截距和斜率,则拟合曲线 y=k1+k2g图表法解决问题的实质就是由输入y 查到适合y解的输入范围,在这个范围内,利用特定的对应关系来求出y的解y′,y′即为y的修正值。

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签:
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论