马运动轨迹复现方法及其应用研究*
2011-07-28李鹏飞肖金壮王洪瑞
李鹏飞,肖金壮,王洪瑞
(河北大学 电子信息工程学院,河北 保定 071000)
随着社会的发展,健身运动已经深受现代人的重视,骑马锻炼也成为了人们喜爱的运动之一。但由于人们生活环境的局限性,限制了骑马运动的发展。本研究通过采集马的运动轨迹,让机器马实现真马的运动,使人们可以选择时间去骑马锻炼,丰富了人们的生活。
采集运动数据的传感器有很多种,如单轴陀螺仪和三轴陀螺仪。单轴和三轴采集的信息量不能充分显示物体的完全特征。六自由度ADIS陀螺仪传感器是一款相对完整的三轴陀螺仪和三轴加速计惯性检测系统,采集参数包括X轴、Y轴和Z轴线性加速度和X轴、Y轴和 Z轴角速率。采集的加速度和角速率数据需要通过积分转化成位移和角度,积分方法分为时域积分和频域积分两类。时域积分是对采集的数据直接进行积分,设计比较简单,但数据的初始值对积分效果影响明显;频域积分是将时域信号通过傅里叶变换转变为频域信号,再进行积分,形成傅里叶变换积分[1-2],通常是运用快速傅里叶变换(FFT)[3]。该方法使用灵活,快速准确。观测数据的方法有录制视频观测、行为捕捉(motion capture)等。
1 系统方案
本设计在六自由度机器马[4]的基础上进行研究,该平台可以较为真实地模拟马的多种运动方式。硬件如图1所示,通过AVR单片机把ADIS陀螺仪传感器采集的数据通过串口传递并存储在SD卡模块。由AVR单片机、ADIS陀螺仪和SD卡模块组装成一个模块,放置在马背上,真实地采集马的多种运动方式。陀螺仪传感器采集数据的六个自由度方向,X轴、Y轴和Z轴的线性加速度,X轴、Y轴和 Z轴的角速率,如图2所示。通过LabVIEW软件进行数据分析,将其加速度数据进行转换成位移数据,角速度数据转化成转角数据,通过数据的分析在三维空间中模拟显示出马的真实运动轨迹,并通过得到的真实数据移植到六自由度机器马,机器马按照真马的运动轨迹运动,验证采集和转化过程的正确性。
图1 硬件组成图
图2 六自由度方向
2 六自由度数据的采集和处理
2.1 数据的采集过程
ADIS陀螺仪传感器一旦通电工作就会生成六自由度方向的运动数据,同时通过AVR单片机的串口把运动数据传递给SD卡模块,并存储在SD卡中,保证了六自由度的同一时间性。通过设置AVR单片机采集时间为10 ms,SD卡的内存为 2 GB,可以连续采集 426 h的六自由度数据。
2.2 数据的转化过程
通过读卡器读取SD卡中采集的数据是以ASCII码的格式显示的,LabVIEW软件将数据以数值的形式把六自由度数据读取出来,其中最为关键的部分就是数据的转换,即把X轴、Y轴和Z轴的线性加速度数据转化成位移数据,X轴、Y轴和Z轴的角速度转化成转角。
假设一般的正弦线性位移的数据为:
则运动速度为:
加速度为:
式(1)~式(3)中,s为位移;A为幅值;ω为角频率;v为速度;a为加速度。
采集得到的加速度数据可以通过二次积分得到位移数据。初始数据和漂移的不确定性对直接二次积分的影响很大,如图3、图4所示。对于一些复杂、变化较为剧烈的数据,经过二次积分后存在较大偏差,很难达到准确性。由于马的运动方式多样化,运动的轨迹通常会不规则,运动曲线频率也会不断变化,导致直接二次积分的误差非常明显。为了克服这些不利因素的影响,本文采用了相对比较完善的傅里叶变换和积分方法来处理采集的数据。
2.3 傅里叶变换、积分与反变换
时域积分存在初始数据的不确定性和漂移的误差比较明显,因此本设计采用频域积分。频域和时域表明了动态信号的两个观察角度,这两种观察信号方法以不同的角度揭示了信号的物理特征,采用傅里叶变换建立起它们之间的联系。在信号分析时,如果时域分析变得很困难,可以通过傅里叶变换将时域变换到频域分析,使之变得简单明了。此法正是通过傅里叶变换,将时域计算不能得到精确结果的问题变换到频域中去处理,进而得到精确解。设f(t)↔F(ω)为傅里叶变换的表达形式为:
通过傅里叶变换原理,如式(4)所示,将时f(t)域变换成频域 F(ω),其中 ω为变化角频率。通过式(5)傅里叶积分定理把时域积分计算变化为频域乘法计算;将频域内的计算结果通过傅里叶反变换转化到时域,傅里叶反变换的原理公式如式(6)所示,实现了在时域的积分,解决了时域积分误差大的难题。假定已知加速度信号,则可以通过积分得到位移频谱;相反,如果先通过傅里叶变换得到加速度信号的频域谱,再利用傅里叶变换积分定理和傅里叶逆变换,可得到加速度在时域的积分结果,即速度或位移曲线。由于马的运动轨迹是不规则的,就造成了运动曲线频率的变化。通过“SINAD分析”模块检测出信号的基频ω,就能在频域中实现积分,准确地表达加速度到位移的数据,如图3、图5所示。时域中的积分问题在频域中得到解决。
X轴、Y轴和Z轴的加速度曲线数据通过两次运用傅里叶变换积分定理转化为位移曲线数据,同时运用一次傅里叶变换积分定理把X轴、Y轴和Z轴的角速率曲线数据转换为转角曲线数据,通过傅里叶反变换转换到时域中,解决了时域难以解决的问题。
图3 加速度数据曲线
图4 时域积分位移数据曲线
图5 傅里叶频域位移数据曲线
2.4 三次样条差值(Spline插值)
由于采集数据的波动性较大,直接影响了积分的结果。为了使数据具有相对较高的光滑性,采用了Spline插值[5]。
Spline插值是通过一系列点构成的光滑曲线,通过数学求解三弯矩方程组得出曲线函数组的过程。样条插值是一种既能克服高次多项式插值的现象,又能保证一定光滑度的插值,要求这样的曲线应该具有连续的曲率,即连续的二阶导数。分段插值曲线的光滑性关键在于段与段之间的衔接点(节点)处的光滑性。
采集的初始数据经过傅里叶变换和积分变成位移数据和转角数据,如图6所示。经过样条插值后变成较为光滑和连续的光滑曲线如图7所示。这样就从初始数据中去除了漂移曲线的效果,也没有使原有信号失真和变异,达到了很好的效果。
图6 初始曲线
图7 三次样条插值曲线
3 三维立体显示与应用
建造一个三维坐标系,把经过转换后的数据输入给立体图形模块。X轴、Y轴和Z轴的数据是相对应的同一时刻的数据,即表示该时刻的三维坐标,这个立体图形可以根据实际的需要而变化。可以看到在三个平面的投影,从投影面验证数据的正确性;也可以改变空间的位置,调整观看角度,形象地显示了物体的运动。
通过三维立体图形的正确验证后,将准确转换后的数据移植到六自由度机器马,如图8所示。机器马平台实现这些运动,从而实现了由马场骑马到骑机器马的转变,节约了时间和场地,并可以随时进行健身训练。
图8 机器马系统
本文在数据采集、数据分析和六自由度机器马仿真方面都取得了良好的效果。LabVIEW软件强大的信号处理功能使得三次样条插值和傅里叶变换非常实用。通过机器马平台的仿真证明了测试过程中数据采集和数据转化过程的正确性。骑马运动方式的多样性,让身体产生相应的适应运动,得到很好地锻炼,并且该系统具有一定的商业价值。
[1]刘世元,张传维,沈宏伟,等.基于傅里叶变换红外反射谱的DRAM深沟槽结构测量系统研究[J].光谱学与光谱分析,2009,29(4):935-939.
[2]李志忠,叶家玮.波浪补偿稳定平台运动响应位移测量数据处理方法研究[J].中国舰船研究,2010,5(3):30-33.
[3]徐世浙.迭代法与FFT法位场向下延拓效果的比较[J].地球物理学报,2007,50(1):285-289.
[4]王洪瑞,宋洋,赵立兴,等.神经网络在仿生机器马速度预 测 中的 应 用[J].微 计算 机 信 息 ,2009,25(12-2):27-28,142.
[5]姚建阁,何为,全晓莉,等.基于三次样条插值技术的去除胸阻抗基线漂移的方法研究 [J].中国医学物理学杂志,2007,24(5):371-374.