加我模型论坛

 找回密码
 注册
搜索
热搜: 活动 交友 discuz
查看: 1522|回复: 0

【转载】利用加速度计和陀螺仪测量车辆运动

[复制链接]
发表于 2013-6-5 23:04:53 | 显示全部楼层 |阅读模式
本帖最后由 joyrus 于 2013-6-5 23:06 编辑

当测试车辆时,常常需要测量车辆运动以及车辆相对于道路的倾角。我们可以通过加速度计来获得车辆转弯、加速或者制动时产生的冲击力。但是有运动加速度时,加速度计将得到一个不准确的倾角,而陀螺仪有助于纠正车俩向前倾斜带来的不利影响。

当测试车辆时,人们常常需要测量车辆的动态运动以及车辆相对于道路的倾角。我们可以通过加速度计来获得车辆转弯、加速或者制动时产生的冲击力,但是,除非车辆在进行上述运动时保持水平,否侧测试结果是不准确的。比如,你想用加速度计测量车辆的制动力,但车辆是向前倾斜的,测量结果中就会有重力分量。
大多数倾斜传感器把重力方向当作参考方向。重力是一种加速度,并且不断变化(应该是随高度变化吧)。制动、加速和转弯时,车辆会产生加速度。然而当进行倾斜测量时,我们只需要得到重力加速度;当进行车辆动力测量时,却又只想得到运动加速度。
有运动加速度时,倾斜传感器将得到一个不准确的倾角。也就是说,在车辆倾斜时只通过加速度计将无法得到准确的倾角。
通过测量绕车辆重心的旋转,陀螺仪有助于纠正车俩向前倾斜带来的不利影响。不幸的是,陀螺仪有其自身的缺陷。它测量旋转速度,不是旋转角度,通过不断积分得到角度。当旋转速度的测量出现偏差,积分后所得的角度将会有很大的偏差。但是,你可以结合角速度值和加速度值,计算出车辆动态运动时的精确数据。角速度和加速度的缺点可以相互弥补。当拥有足够强的计算能力,我们就可以得到实时的加速度和角度的精确值。
要实现这一点,你需要测量沿三个轴的加速度和角速度。于是我们沿着车身安装了三轴加速度计,和与值对应的三轴陀螺仪。见图1。如果可能,传感器最好安装在车辆重心,尽量减少旋转加速度对测量带来的不利影响。

1.jpg

我们可以用陀螺仪测量车辆绕给定轴的旋转。如果一直对角速度积分,将会得到角度关于时间的函数。例如,您可以使用陀螺仪来跟踪车辆沿着X和Y轴的旋转,然后对传感器信号积分,计算出车辆俯仰角和翻滚角。这是一个关于时间的函数。根据这个计算得到的俯仰角和翻滚角,从加速度传感器信号中减去由于倾斜带来的重力分量,最终得到运动加速度。
要得到可靠的俯仰角和翻滚角,你必须对角速度信号积分。结果是,角速度信号的偏差,会造成角度的偏差,并且随时间线性增加。此外,陀螺仪的随机噪声会导致计算角度的随机波动,这种波动使得角度以与时间的平方根成正比的速度漂移。这些影响将限制昂贵的陀螺仪在超过几分钟测量时的应用。
幸运的是,我们可以利用陀螺仪短时测量准确的优势和加速度计长时稳定的特点,两者结合,得到即能短时稳定又能长时稳定的倾角。用陀螺仪测量短时内角度变化,把加速度传感器当做倾角传感器测量倾角,并在一个长时间范围内,迫使陀螺仪得到的倾角慢慢匹配加速度传感器得到的倾角。
要执行这些操作,需要有传感器,以及数据采集和处理设备。我们使用一个三轴加速度计和(三个)3轴陀螺仪。不管沿哪个方向,你都需要以能测量车辆完整运动的目的来安装这些传感器。还可以添加一个温度传感器,用其采集的数据补偿温度对加速度计和陀螺仪输出的影响。然后将传感器信号数字化,并输入计算机或存储器。
可以使用电脑对得到的数据进行计算。但是,如果想看到实时的计算结果,那得需要一台数字信号处理器(DSP),作为信号采集设备之一。然后,将计算得到的角度数据、已修正的加速度和角速度信息用数据线传送到电脑。如果发送的是二进制数据包,工作在38.4K波特率的串行RS-232数据线应该满足超过200Hz的传输速率。这大大快于陀螺仪的带宽。
尽量把传感器安装在靠近车辆运动中心的地方。否侧旋转产生的离心力将会被加速度计测量。请注意,我们使用加速度计只是测量车辆重心的线性加速度,所以要尽量减少旋转运动对加速度测量的耦合。


2.jpg

图3显示了一个轴的算法。实时对陀螺仪输出积分得到原始角度。利用加速度计测量重力方向并推断出倾斜角度。例如,如果在x轴上得到0.1G的加速度,这意味着倾斜角为arcsin(0.1)=5.7°。为了避免震动和冲击造成倾斜角计算错误,使用截止频率为100Hz或更底的低通滤波器。简单的单极RC滤波器即可。

3.jpg

计算两角度之差,为误差信号。它可以用来更正角度计算。这里定义了一个增益参数,k,决定着有多少误差信号用于更正角速度积分。最后将角速度原始积分与误差信号(已乘增益)相加。该过程的输出是一个角度值,短时间看角速度值起主导作用,但长时间看是由加速度值来修正的。时间尺度由k值决定。
计算增益参数k值:在设定的时间内角速度传感器计算得到的角度被重力计算的角度稳定修正。您应该选择一个比预期测试更长的时间常数。然后将它除于测量速率,就是k值了。例如,如果你选了一个5s的时间常数,而且角速度和加速度计的工作速率是200Hz。那么,k=5/200=0.025。
一旦得到稳定的倾角,就可以用它修正原始的加速度数据。这样能得到沿任一轴的真实(运动)加速度。请注意, 一旦倾斜,重力分量就会被x和y轴的加速度计测量。解决这一问题的办法之一是建立一个旋转矩阵,根据已求取的倾斜角,将加速度矢量(x,y和z轴与车辆一致)旋转到地面坐标系(对车辆坐标系进行坐标变换)。在水平系统中,重力是完全竖直的,所以水平方向上x,y轴得到的将是纯运动加速度,没有重力分量。
最终结果是得到车辆运动的完整描述,包括角速度,稳定的倾斜角度和纠正了的线性加速度。以上描述的实时系统可以使用固态传感器实现。这构成了一个可靠,廉价的车辆运动检测系统。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|JOYRUS.com

GMT+8, 2019-11-15 19:04 , Processed in 0.091394 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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