CN112440267B - 一种基于惯性传感器的步态相识别方法 - Google Patents
一种基于惯性传感器的步态相识别方法 Download PDFInfo
- Publication number
- CN112440267B CN112440267B CN202011367253.4A CN202011367253A CN112440267B CN 112440267 B CN112440267 B CN 112440267B CN 202011367253 A CN202011367253 A CN 202011367253A CN 112440267 B CN112440267 B CN 112440267B
- Authority
- CN
- China
- Prior art keywords
- axis
- moment
- angular velocity
- acquired
- inertial sensor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/0006—Exoskeletons, i.e. resembling a human figure
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
本发明一种基于惯性传感器的步态相识别方法,利用绑缚于脚踝处惯性传感器采集的体侧角速度进行极值判别。一个完整的步态周期大致可分为摆动态和支撑态两种相位,支撑态按顺序又可分为脚跟着地、全脚掌着地、脚跟离地和前脚掌离地四个阶段。当处于支撑态的全脚掌着地阶段时,脚相对于地面相对静止,即脚踝处的体侧角速度大小接近为零。利用角速度“触地为零”的特性,对比压力鞋垫标定结果可知,检测输入角速度的两个极大值即可将整个支撑态相位识别出来,可实现高准确率、低延时、硬件需求低和易于使用的目标。
Description
技术领域
本发明涉及一种基于惯性传感器的步态相识别方法,属于步态相识别技术领域。
背景技术
外骨骼机器人是一套人机系统,人体运动与外骨骼运动之间需要交互各种信息。外骨骼需要识别出人体运动的步态,识别人体的运动意图,用以驱动外骨骼运动。步态信息需要通过传感器系统采集的步态数据进行分析。不同的传感器系统采集得来的步态数据也不同,故而步态特征也不尽相同,所以步态识别的方法也有所不同。主要的步态数据包括:关节角度数据,肢体的加速度数据,相关肌肉群的肌电信号,脑电波信号,足底压力信号以及基于视频的图像数据等。
国内外的学者对下肢外骨骼机器人人机交互控制策略完成了大量研究。 Pappas利用脚的角速度和足底压力信号检测人在运动中的不同时相,并提出了一种基于规则的检测算法,且该系统能识别出非步行时的扰动,如坐下起立等。Skelly提出了一套实时监测系统,系统中包含了不同的层次的信号处理算法,如模糊逻辑算法等。Han等人提出了一种非约束动态检测系统,硬件包括一个三轴加速度传感器和一个视频摄像机;Lauer将自适应模糊神经网络用于步态检测;Lee融合了陀螺仪、加速度计等多种传感器数据完成步态识别;Havasi率先采用视频图像进行步态识别。Wilcox等提出基于肌电图(EMU)信号的研究方法,利用肌电信号分析对象运动意图识别,控制下肢外骨骼机器人辅助脊髓损伤患者进行康复性运动训练,该方法易受人体表面出汗等因素的影响。Huo等提出一种应用于下肢外骨骼的新型主动阻抗控制策略,设计人体关节扭矩观测器来估计人体关节扭矩,构建人体外骨骼系统时变理想阻抗模型,将人体外骨骼系统的机械阻抗降低至穿戴者的运动能力水平之下,为穿戴者的坐与站立提供动力辅助。龙亿等提出基于卡尔曼滤波预测人体运动意图的外骨骼机器人控制方法,使用力矩传感器测量人机交互信息,用卡尔曼滤波补偿意图延时,估计人体下肢关节的运动轨迹,该方法需要对PD控制律进行复杂的参数优化。丁峰等提出基于灰色理论的步态预测方法,将踝关节做为研究对象,通过视频捕捉设备(Kinect)捕获自然行走状态下的躁关节空间位置坐标,利用灰色预测系统进行预测,灰色预测系统一般只需要很少的数据就可以进行建模,要求原始数据基本符合灰色预测模型的可行性。
目前步态相识别技术存在以下问题:
(1)基于压力鞋垫、光捕摄像设备、机电或脑电采集设备等步态相识别技术对硬件的要求较高,这些设备不便于使用者快速穿戴且其中一些较为昂贵。
(2)基于惯性传感器的机器学习类步态相识别算法问题:机器学习类算法需要大量的训练数据来提升性能,因此需要一定时间为算法采集训练集,对差异性较大的使用者不能做到即穿即用;机器学习类算法的泛化能力高低不一,对于不同地形的适应性依赖于训练集的质量;机器学习类算法延时很难控制在毫秒级,实际使用中有滞后感。机器学习类算法占用较高的算力资源,对处理器的功率和算力有一定要求。
(3)基于惯性传感器的阈值判别类步态相识别算法问题:阈值判别类算法的阈值较难界定,需要大量数据提供依据;阈值判别类算法针对不同使用者和地形需要不断调整参数,鲁棒性较差;阈值判别类算法针对步态周期内的特殊动作容易出现误判和漏判。
发明内容
本发明解决的技术问题为:克服上述现有技术的不足,提供一种基于惯性传感器的步态相识别方法,可实现高准确率、低延时、硬件需求低和易于使用的目标。
本发明解决的技术方案为:一种基于惯性传感器的步态相识别方法,其特征在于步骤如下:
(1)在人体两个脚踝外侧各安装惯性传感器,使惯性传感器中的一轴垂直于身体矢状面,定义为Y轴;完成惯性传感器的安装;
(2)将两个惯性传感器实时采集的绕Y轴旋转的角速度,通过CAN总线,输出至处理器;
(3)处理器,针对其中一个惯性传感器送来的实时采集的绕Y轴旋转的角速度,将该惯性传感器当前时刻采集的绕Y轴旋转的角速度与上一时刻采集的Y轴旋转的角速度进行比较,确定当前时刻采集的绕Y轴旋转的角速度的状态;
(4)将步骤(3)确定的当前时刻采集的绕Y轴旋转的角速度的状态与上一时刻采集的绕Y轴旋转的角速度的状态进行比较,判定上一时刻采集的绕Y轴旋转的角速度波峰或波谷;
(5)设定第一阈值;若上一时刻采集的绕Y轴旋转的角速度为波谷,则对判定为波谷的上一时刻采集的绕Y轴旋转的角速度进行判断,若小于设定的第一阈值,则判定该上一时刻采集的绕Y轴旋转的角速度为触地预先判定点;否则,记录该判定为波谷的上一时刻采集的绕Y轴旋转的角速度;
(6)设定第二阈值;若上一时刻采集的绕Y轴旋转的角速度为波峰,则对判定为波峰的上一时刻采集的绕Y轴旋转的角速度进行判断,若大于设定的第二阈值,且该波峰的上一个波谷为触地预先判定点,则判定该上一时刻采集的绕Y轴旋转的角速度为支撑相开始时刻;否则,忽略该判定为波峰的上一时刻采集的绕Y轴旋转的角速度,实现一只脚支撑相开始时刻的确定;
(7)在步骤(3)进行的同时,处理器,针对另一个惯性传感器送来的实时采集的绕Y轴旋转的角速度,将该另一个当惯性传感器前时刻采集的绕Y轴旋转的角速度与上一时刻采集的Y轴旋转的角速度进行比较,确定当前时刻采集的绕Y轴旋转的角速度的状态;
(8)将步骤(7)确定的当前时刻采集的绕Y轴旋转的角速度的状态与上一时刻采集的绕Y轴旋转的角速度的状态进行比较,判定上一时刻采集的绕Y轴旋转的角速度波峰或波谷;
(9)设定第一阈值;若上一时刻采集的绕Y轴旋转的角速度为波谷,则对判定为波谷的上一时刻采集的绕Y轴旋转的角速度进行判断,若小于设定的第一阈值,则判定该上一时刻采集的绕Y轴旋转的角速度为触地预先判定点;否则,记录该判定为波谷的上一时刻采集的绕Y轴旋转的角速度;
(10)设定第二阈值;若上一时刻采集的绕Y轴旋转的角速度为波峰,则对判定为波峰的上一时刻采集的绕Y轴旋转的角速度进行判断,若大于设定的第二阈值,且该波峰的上一个波谷为触地预先判定点,则判定该上一时刻采集的绕Y轴旋转的角速度为支撑相开始时刻;否则,忽略该判定为波峰的上一时刻采集的绕Y轴旋转的角速度;实现另一只脚支撑相开始时刻的确定;
(11)将步骤(6)确定的一只脚支撑相开始时刻,作为另一只脚摆动相开始时刻;将一只脚支撑相开始时刻到该脚的脚摆动相开始时刻之间对应的该脚状态,判定为该脚支撑相;判定为该脚摆动相;该一只脚的支撑相开始时刻的下一时刻到该脚的脚摆动相开始时刻的上一时刻之间对应的该脚状态,判定为该脚支撑相;
将另一只脚支撑相开始时刻到该另一只脚的脚摆动相开始时刻之间对应的该另一只脚状态,判定为该另一只脚支撑相;该另一只脚的支撑相开始时刻的下一时刻到该另一只脚的脚摆动相开始时刻的上一时刻之间对应的该另一只脚状态,判定为该另一只脚支撑相,实现步态相识别。
优选的,将该惯性传感器当前时刻采集的绕Y轴旋转的角速度与上一时刻采集的Y轴旋转的角速度进行比较,确定当前时刻采集的绕Y轴旋转的角速度的状态;
当前时刻采集的绕Y轴旋转的角速度比上一时刻采集的Y轴旋转的角速度大,则当前时刻采集的绕Y轴旋转的角速度的状态为上升态;
当前时刻采集的绕Y轴旋转的角速度比上一时刻采集的Y轴旋转的角速度小,则当前时刻采集的绕Y轴旋转的角速度的状态为下升态。
优选的,波峰,定义为:如果当前时刻采集的绕Y轴旋转的角速度wt的状态为下降态,而上一时刻采集的绕Y轴旋转的角速度wt-1的状态为上升态,则上一时刻采集的绕Y轴旋转的角速度wt-1为波峰。
优选的,波谷,定义为:如果当前时刻采集的绕Y轴旋转的角速度wt的状态为上升态,而上一时刻采集的绕Y轴旋转的角速度wt-1的状态为下降态,则上一时刻采集的绕Y轴旋转的角速度wt-1为波谷。
优选的,触地预先判定阈值,要求为:该阈值通常为人体低速行走时,每个步态周期内的最小角速度。(优选以2km/h-3km/h速度行走时,每个步态周期内的最小角速度Thp,优选为Thp=-90°/s;)
优选的,触地判定阈值,要求为:该阈值优选设为Thh=0°/s
优选的,惯性传感器至少能采集一个维度的实时角速度;
优选的,惯性传感器的角速度量程应大于±500°/s;
优选的,惯性传感器的静态漂移在0.05°/s以内;
优选的,惯性传感器至少通过CAN总线或串口进行通讯;
优选的,惯性传感器的采样频率最低在20Hz以上;
优选的,惯性传感器的工作电压和工作电流应在人体安全用电范围内。
本发明与现有技术相比的优点在于:
(1)本发明因为算法(步骤(3)到步骤(11)形成算法)的主要数据处理过程为将惯性传感器前时刻的角速度与上一时刻的角速度进行比较,与惯性传感器的角速度的数据精度无关,所以算法对惯性传感器的数据精度要求不高,降低了对传感器性能的需求。现有的算法效果多依赖于传感器数据精度。
(2)本发明因为步骤(3)中将绕Y轴旋转的角速度作为算法输入,而该Y轴旋转的角速度在人体运动过程中相对稳定,所以算法对惯性传感器的位置精度要求不高,便于设备快速穿脱,提高了外骨骼的易用性。解决了现有技术对传感器位置精度要求过高的难题。
(3)本发明因为算法主要数据处理过程为将惯性传感器前时刻的角速度与上一时刻的角速度进行比较,所以算法不受惯性传感器自身累计误差的影响,提高了算法的鲁棒性。回避了惯性传感器长时间使用产生累计误差造成角速度干扰的问题。
(4)本发明利用了不同使用者以不同速度在不同地形下运动时,每一只脚在身体矢状面内的角速度“触地为零”这一特性一致不变,所以对于不同使用者以不同速度在不同地形下运动,本算法皆可适用且不需要针对不同使用者、不同速度或不同地形分别调整,提高了算法的鲁棒性和易用性。而现有算法针对不同情况大多需要做出相应的调整。
(5)本发明根据不同情况的实验数据(行走和上下楼)反馈,长时连续使用时本算法,实时准确率稳定在95%以上,实现了高准确率的要求。现有实时算法在线准确率大多保持在90%左右。
(6)本发明因为算法的时间复杂度和空间复杂度较低,优选使用100Hz 传感器延时可控制在15ms内,根据惯性传感器采样频率的提高延时可进一步缩短,实现了较高的实时性。
(7)本发明因为算法的时间复杂度和空间复杂度较低,本算法对处理器性能要求不高(STM32即可),可节省出更多的数据空间与算力,提高了整个外骨骼系统续航和多任务性能。
附图说明
图1本发明硬件组成图。
图2本发明惯性传感器绑缚位置示意图。
图3本发明本发明的算法流程图。
图4本发明10km/h跑步算法效果、120级/min上楼数据输入及算法效果图。
具体实施方式
下面结合附图和具体实施例对本发明做进一步详细描述。
本发明一种基于惯性传感器的步态相识别方法,利用绑缚于脚踝处惯性传感器采集的体侧角速度进行极值判别。一个完整的步态周期大致可分为摆动态和支撑态两种相位,支撑态按顺序又可分为脚跟着地、全脚掌着地、脚跟离地和前脚掌离地四个阶段。当处于支撑态的全脚掌着地阶段时,脚相对于地面相对静止,即脚踝处的体侧角速度大小接近为零。利用角速度“触地为零”的特性,对比压力鞋垫标定结果可知,检测输入角速度的两个极大值即可将整个支撑态相位识别出来,可实现高准确率、低延时、硬件需求低和易于使用的目标。
本发明的方法已应用于下肢助力外骨骼系统,该下肢助力外骨骼系统的目的是在合适的时刻对关节处加载力矩达到辅助运动的效果。采用本发明的方法可为该下肢助力外骨骼系统提供穿戴者的步态相识别结果,从而使下肢助力外骨骼系统可以及时确定力矩加载时刻与力矩撤销时刻,解决了下肢助力外骨骼系统难以确定助力时机的关键问题,并提升了穿戴者的助力体验,避免了下肢助力外骨骼系统因加载或撤销力矩时机错误对使用者造成伤害的意外情况。
本发明中的惯性传感器,优选方案具体为:
惯性传感器至少能采集一个维度的实时角速度。
惯性传感器的角速度量程应大于±500°/s。
惯性传感器的静态漂移在0.05°/s以内。
惯性传感器至少可通过CAN总线或串口进行通讯。
因为算法(步骤(3)到步骤(11)形成算法)的延时与惯性传感器的采样频率直接相关,设算法延时为Ta、惯性传感器的采样频率为K、代码执行时间为Tc,则
Ta=(1/K)+Tc,其中Tc<<1ms。
所以提高惯性传感器的采样频率可大幅降低算法的延时,对惯性传感器最高采样频率不作要求;因为人体运动的频率最快为15Hz到20Hz,所以对惯性传感器的采样频率要求最低为20Hz以上。
惯性传感器的工作电压和工作电流应在人体安全用电范围内。
本发明采用的传感器可测量三维角速度,角速度量程为±1000°/s,角速度静态漂移最大为0.04°/s,可通过CAN总线或串口进行通讯,采样频率为100Hz,工作电压3.3V~5V,工作电流小于25mA。
本发明中处理器,优选方案具体为:处理器至少为STM32L系列芯片,可以通过CAN总线进行通讯。
本发明采用的处理器优选为STM32F767。
如图1所示,实现本发明方法的硬件系统主要由两个IMU(惯性传感器) 模块、一个DSP底板以及一个STM32处理器组成,图1中的压力鞋垫作为优选的验证设备,可作为系统选配,不是系统必备配置。
IMU模块采集到的数据通过串口发送至DSP底板;DSP底板通过CAN总线,将IMU模块数据传输至STM32处理器作为算法输入;经过STM32处理器的运算,将算法结果通过串口传输至上位机以供参考。
本发明一种基于惯性传感器的步态相识别方法,优选方案步骤如下:
(1)在人体两个脚踝外侧各安装惯性传感器,使惯性传感器中任意可测量绕该轴角速度的一轴垂直于身体矢状面,定义为Y轴;完成惯性传感器的安装;如图2所示,安装在左脚的惯性传感器Y轴正方向指向左,安装在右脚的惯性传感器Y轴正方向指向右。安装方式可以用绑带绑缚、胶带贴附等。安装精度应尽量保证Y轴垂直于身体矢状面,但无具体精度要求。安装强度应保证惯性传感器不会因人体的剧烈运动导致与人体连接松脱;
(2)将两个惯性传感器实时采集的绕Y轴旋转的角速度,通过CAN总线,以100Hz的传输频率输出至处理器;每个惯性传感器每次采样发送一个字节的十六进制角速度数据,处理器通过中断接收惯性传感器发送的角速度数据,处理器中的算法将接收到的惯性传感器角速度数据换算成带符号的浮点数;
(3)处理器针对其中一个惯性传感器送来的实时采集的绕Y轴旋转的角速度,记为wt,如图3所示,将该当惯性传感器前时刻采集的绕Y轴旋转的角速度wt与上一时刻采集的Y轴旋转的角速度wt-1进行比较(本发明中预设两只脚上的惯性传感器的初始时刻角速度都为0),确定当前时刻采集的绕Y轴旋转的角速度的状态,当前时刻角速度的状态是当前时刻角速度的一个属性参数,可记为St,该状态包括下降态(St=1)、上升态(St=2)和水平态(St=0);下降态是指当前时刻采集的绕Y轴旋转的角速度小于上一时刻采集的Y轴旋转的角速度(wt-1-wt>0);上升态是指当前时刻采集的绕 Y轴旋转的角速度大于上一时刻采集的Y轴旋转的角速度(wt-1-wt<0);水平态是指当前时刻采集的绕Y轴旋转的角速度等于上一时刻采集的Y轴旋转的角速度(wt-1-wt=0);初始角速度的状态为水平态;
(4)如图3所示,将步骤(3)确定的当前时刻采集的绕Y轴旋转的角速度的状态St与上一时刻采集的绕Y轴旋转的角速度的状态St-1进行比较,如图3所示,比较完成后,将前时刻采集的绕Y轴旋转的角速度的状态St赋值给上一时刻采集的绕Y轴旋转的角速度的状态St-1;判定上一时刻采集的绕Y轴旋转的角速度是否为波峰或波谷;如果当前时刻采集的绕Y轴旋转的角速度wt的状态为下降态(St=1),而上一时刻采集的绕Y轴旋转的角速度wt-1的状态为上升态(St=2),则上一时刻采集的绕Y轴旋转的角速度wt-1为波峰;如果当前时刻采集的绕Y轴旋转的角速度wt的状态为上升态(St=2),而上一时刻采集的绕Y轴旋转的角速度wt-1的状态为下降态(St=1),则上一时刻采集的绕Y轴旋转的角速度wt-1为波谷;如果不是以上两种情况,则将前时刻采集的绕Y轴旋转的角速度的状态wt赋值给上一时刻采集的绕Y轴旋转的角速度的状态wt-1;
(5)设定触地预先判定阈值Thp,该阈值通常为人体低速行走 (2km/h-3km/h)时,每个步态周期内的最小角速度,经实验数据总结可确定为Thp=-90°/s;如图3所示,若上一时刻采集的绕Y轴旋转的角速度wt-1为波谷,则对判定为波谷的上一时刻采集的绕Y轴旋转的角速度wt-1进行判断,若小于设定的触地预先判定阈值Thp,则判定该上一时刻采集的绕Y轴旋转的角速度wt-1为触地预先判定点P并记录该触地预先判定点P,触地预先判定点P的作用是作为支撑相开始时刻的判断条件之一;否则,将前时刻采集的绕Y轴旋转的角速度的状态wt赋值给上一时刻采集的绕Y轴旋转的角速度的状态wt-1;
(6)设定触地判定阈值Thh,该阈值通常设为Thh=0°/s;如图3所示,若上一时刻采集的绕Y轴旋转的角速度wt-1为波峰,则对判定为波峰的上一时刻采集的绕Y轴旋转的角速度wt-1进行判断,若大于设定的触地判定阈值 Thh,且该波峰的上一个波谷为触地预先判定点P,则判定该上一时刻采集的绕Y轴旋转的角速度wt-1为支撑相开始时刻,并将前时刻采集的绕Y轴旋转的角速度的状态wt赋值给上一时刻采集的绕Y轴旋转的角速度的状态wt-1;否则,将前时刻采集的绕Y轴旋转的角速度的状态wt赋值给上一时刻采集的绕Y轴旋转的角速度的状态wt-1,实现一只脚支撑相开始时刻的确定;
(7)在步骤(3)进行的同时,处理器针对另一个惯性传感器送来的实时采集的绕Y轴旋转的角速度,将该另一个当惯性传感器前时刻采集的绕Y 轴旋转的角速度与上一时刻采集的Y轴旋转的角速度进行比较,确定当前时刻采集的绕Y轴旋转的角速度的状态;当前时刻角速度的状态是当前时刻角速度的一个属性参数,可记为Sother_t,该状态包括下降态(Sother_t=1)、上升态(Sother_t=2)和水平态(Sother_t=0);下降态是指当前时刻采集的绕Y轴旋转的角速度小于上一时刻采集的Y轴旋转的角速度(wother_t-1-wother_t>0);上升态是指当前时刻采集的绕Y轴旋转的角速度大于上一时刻采集的Y轴旋转的角速度(wother_t-1-wother_t<0);水平态是指当前时刻采集的绕Y轴旋转的角速度等于上一时刻采集的Y轴旋转的角速度(wother_t-1-wother_t=0);初始角速度的状态为水平态;
(8)将步骤(7)确定的当前时刻采集的绕Y轴旋转的角速度的状态 Sother_t与上一时刻采集的绕Y轴旋转的角速度的状态Sother_t-1进行比较,比较完成后,将前时刻采集的绕Y轴旋转的角速度的状态Sother_t赋值给上一时刻采集的绕Y轴旋转的角速度的状态Sother_t-1;判定上一时刻采集的绕Y轴旋转的角速度wother_t-1是否为波峰或波谷;如果当前时刻采集的绕Y轴旋转的角速度wt的状态为下降态(Sother_t=1),而上一时刻采集的绕Y轴旋转的角速度wother_t-1的状态为上升态(Sother_t=2),则上一时刻采集的绕Y轴旋转的角速度wother_t-1为波峰;如果当前时刻采集的绕Y轴旋转的角速度wother_t的状态为上升态(Sother_t=2),而上一时刻采集的绕Y轴旋转的角速度wother_t-1的状态为下降态(Sother_t=1),则上一时刻采集的绕Y轴旋转的角速度wother_t-1为波谷;如果不是以上两种情况,则将前时刻采集的绕Y轴旋转的角速度的状态wother_t赋值给上一时刻采集的绕Y轴旋转的角速度的状态wother_t-1;
(9)设定设定触地预先判定阈值Thpother,该阈值通常为人体低速行走 (2km/h-3km/h)时,每个步态周期内的最小角速度,经实验数据总结可确定为Thpother=-90°/s;若上一时刻采集的绕Y轴旋转的角速度wother_t-1为波谷,则对判定为波谷的上一时刻采集的绕Y轴旋转的角速度wother_t-1进行判断,若小于设定的触地预先判定阈值Thpother,则判定该上一时刻采集的绕Y轴旋转的角速度wother_t-1为触地预先判定点Pother并记录该触地预先判定点Pother,触地预先判定点Pother的作用是作为支撑相开始时刻的判断条件之一;否则,将前时刻采集的绕Y轴旋转的角速度的状态wother_t赋值给上一时刻采集的绕Y轴旋转的角速度的状态wother_t-1;
(10)设定触地判定阈值Thhother,该阈值通常设为Thhother=0°/s;若上一时刻采集的绕Y轴旋转的角速度wother_t-1为波峰,则对判定为波峰的上一时刻采集的绕Y轴旋转的角速度wother_t-1进行判断,若大于设定的触地判定阈值Thhother,且该波峰的上一个波谷为触地预先判定点Pother,则判定该上一时刻采集的绕Y轴旋转的角速度wother_t-1为支撑相开始时刻,并将前时刻采集的绕Y轴旋转的角速度的状态wother_t赋值给上一时刻采集的绕Y轴旋转的角速度的状态wother_t-1;否则,将前时刻采集的绕Y轴旋转的角速度的状态wother_t赋值给上一时刻采集的绕Y轴旋转的角速度的状态wother_t-1;实现另一只脚支撑相开始时刻的确定;
(11)将步骤(6)确定的一只脚支撑相开始时刻,作为另一只脚摆动相开始时刻;将一只脚支撑相开始时刻到该脚的脚摆动相开始时刻之间对应的该脚状态,判定为该脚支撑相;判定为该脚摆动相;该一只脚的支撑相开始时刻的下一时刻到该脚的脚摆动相开始时刻的上一时刻之间对应的该脚状态,判定为该脚支撑相;
将另一只脚支撑相开始时刻到该另一只脚的脚摆动相开始时刻之间对应的该另一只脚状态,判定为该另一只脚支撑相;该另一只脚的支撑相开始时刻的下一时刻到该另一只脚的脚摆动相开始时刻的上一时刻之间对应的该另一只脚状态,判定为该另一只脚支撑相,实现步态相识别。
本发明实现算法延时减少的进一步优选方案,如下:
设算法延时为Ta、惯性传感器的采样频率为K、代码执行时长为Tc,则 Ta=(1/K)+Tc,
根据以上公式可知,影响算法延时Ta的主要参数为惯性传感器的采样频率为K和代码执行时间为Tc。因为算法的复杂度较低,代码执行时长Tc 通常远小于1ms,而本发明的1/K为10ms,所以提高惯性传感器的采样频率为K可进一步减少算法延时。
本发明实现识别准确率提高的进一步优选方案,如下:
设惯性传感器角速度静态漂移量为E,惯性传感器工作时长为Tw,则优选约束条件为:当Tw=60时,|E2*Tw|<1,满足该优选条件,可以实现识别准确率的进一步提高。
本发明已经过测试,测试分为行走测试和楼梯测试两部分。受试者为 30岁健康男性,身高170cm。为测试快速运动(8-10km/h平地奔跑、100-120 级/min上楼)时本发明的效果,在完成步骤(1)和步骤(2)后,受试者被要求在室内跑步机上以10km/h的速度连续奔跑3min,恢复体能后再以120 级/min的速度上楼梯3min,测试期间同时记录算法输出结果曲线和角速度曲线。
本发明的测试效果如图4所示,10km/h的速度连续奔跑3min内识别准确率为99.8%,算法延时稳定在11ms到15ms之间。120级/min的速度上楼梯3min内识别准确率为99.1%,算法延时稳定在11ms到15ms之间。
本发明因为算法的主要数据处理过程为将惯性传感器前时刻的角速度与上一时刻的角速度进行比较,与惯性传感器的角速度的数据精度无关,所以算法对惯性传感器的数据精度要求不高,降低了对传感器性能的需求。现有的算法效果多依赖于传感器数据精度;本发明因为步骤(3)中将绕Y轴旋转的角速度作为算法输入,而该Y轴旋转的角速度在人体运动过程中相对稳定,所以算法对惯性传感器的位置精度要求不高,便于设备快速穿脱,提高了外骨骼的易用性。解决了现有技术对传感器位置精度要求过高的难题;本发明因为算法主要数据处理过程为将惯性传感器前时刻的角速度与上一时刻的角速度进行比较,所以算法不受惯性传感器自身累计误差的影响,提高了算法的鲁棒性。回避了惯性传感器长时间使用产生累计误差造成角速度干扰的问题。
本发明利用了不同使用者以不同速度在不同地形下运动时,每一只脚在身体矢状面内的角速度“触地为零”这一特性一致不变,所以对于不同使用者以不同速度在不同地形下运动,本算法皆可适用且不需要针对不同使用者、不同速度或不同地形分别调整,提高了算法的鲁棒性和易用性。而现有算法针对不同情况大多需要做出相应的调整;本发明根据不同情况的实验数据(行走和上下楼)反馈,长时连续使用时本算法,实时准确率稳定在95%以上,实现了高准确率的要求。现有实时算法在线准确率大多保持在90%左右。
本发明因为算法的时间复杂度和空间复杂度较低,优选使用100Hz传感器延时可控制在15ms内,根据惯性传感器采样频率的提高延时可进一步缩短,实现了较高的实时性;本发明因为算法的时间复杂度和空间复杂度较低,本算法对处理器性能要求不高(STM32即可),可节省出更多的数据空间与算力,提高了整个外骨骼系统续航和多任务性能。
Claims (10)
1.一种基于惯性传感器的步态相识别方法,其特征在于步骤如下:
(1)在人体两个脚踝外侧各安装惯性传感器,使惯性传感器中的一轴垂直于身体矢状面,定义为Y轴;完成惯性传感器的安装;
(2)将两个惯性传感器实时采集的绕Y轴旋转的角速度,通过CAN总线,输出至处理器;
(3)处理器,针对其中一个惯性传感器送来的实时采集的绕Y轴旋转的角速度,将该惯性传感器当前时刻采集的绕Y轴旋转的角速度与上一时刻采集的Y轴旋转的角速度进行比较,确定当前时刻采集的绕Y轴旋转的角速度的状态;
(4)将步骤(3)确定的当前时刻采集的绕Y轴旋转的角速度的状态与上一时刻采集的绕Y轴旋转的角速度的状态进行比较,判定上一时刻采集的绕Y轴旋转的角速度波峰或波谷;
(5)设定第一阈值;若上一时刻采集的绕Y轴旋转的角速度为波谷,则对判定为波谷的上一时刻采集的绕Y轴旋转的角速度进行判断,若小于设定的第一阈值,则判定该上一时刻采集的绕Y轴旋转的角速度为触地预先判定点;否则,记录该判定为波谷的上一时刻采集的绕Y轴旋转的角速度;
(6)设定第二阈值;若上一时刻采集的绕Y轴旋转的角速度为波峰,则对判定为波峰的上一时刻采集的绕Y轴旋转的角速度进行判断,若大于设定的第二阈值,且该波峰的上一个波谷为触地预先判定点,则判定该上一时刻采集的绕Y轴旋转的角速度为支撑相开始时刻;否则,忽略该判定为波峰的上一时刻采集的绕Y轴旋转的角速度,实现一只脚支撑相开始时刻的确定;
(7)在步骤(3)进行的同时,处理器,针对另一个惯性传感器送来的实时采集的绕Y轴旋转的角速度,将该另一个当惯性传感器前时刻采集的绕Y轴旋转的角速度与上一时刻采集的Y轴旋转的角速度进行比较,确定当前时刻采集的绕Y轴旋转的角速度的状态;
(8)将步骤(7)确定的当前时刻采集的绕Y轴旋转的角速度的状态与上一时刻采集的绕Y轴旋转的角速度的状态进行比较,判定上一时刻采集的绕Y轴旋转的角速度波峰或波谷;
(9)设定第一阈值;若上一时刻采集的绕Y轴旋转的角速度为波谷,则对判定为波谷的上一时刻采集的绕Y轴旋转的角速度进行判断,若小于设定的第一阈值,则判定该上一时刻采集的绕Y轴旋转的角速度为触地预先判定点;否则,记录该判定为波谷的上一时刻采集的绕Y轴旋转的角速度;
(10)设定第二阈值;若上一时刻采集的绕Y轴旋转的角速度为波峰,则对判定为波峰的上一时刻采集的绕Y轴旋转的角速度进行判断,若大于设定的第二阈值,且该波峰的上一个波谷为触地预先判定点,则判定该上一时刻采集的绕Y轴旋转的角速度为支撑相开始时刻;否则,忽略该判定为波峰的上一时刻采集的绕Y轴旋转的角速度;实现另一只脚支撑相开始时刻的确定;
(11)将步骤(6)确定的一只脚支撑相开始时刻,作为另一只脚摆动相开始时刻;将一只脚支撑相开始时刻到该脚的脚摆动相开始时刻之间对应的该脚状态,判定为该脚支撑相;判定为该脚摆动相;该一只脚的支撑相开始时刻的下一时刻到该脚的脚摆动相开始时刻的上一时刻之间对应的该脚状态,判定为该脚支撑相;
将另一只脚支撑相开始时刻到该另一只脚的脚摆动相开始时刻之间对应的该另一只脚状态,判定为该另一只脚支撑相;该另一只脚的支撑相开始时刻的下一时刻到该另一只脚的脚摆动相开始时刻的上一时刻之间对应的该另一只脚状态,判定为该另一只脚支撑相,实现步态相识别。
2.根据权利要求1所述的一种基于惯性传感器的步态相识别方法,其特征在于:将该惯性传感器当前时刻采集的绕Y轴旋转的角速度与上一时刻采集的Y轴旋转的角速度进行比较,确定当前时刻采集的绕Y轴旋转的角速度的状态;
当前时刻采集的绕Y轴旋转的角速度比上一时刻采集的Y轴旋转的角速度大,则当前时刻采集的绕Y轴旋转的角速度的状态为上升态;
当前时刻采集的绕Y轴旋转的角速度比上一时刻采集的Y轴旋转的角速度小,则当前时刻采集的绕Y轴旋转的角速度的状态为下升态。
3.根据权利要求1所述的一种基于惯性传感器的步态相识别方法,其特征在于:波峰,定义为:如果当前时刻采集的绕Y轴旋转的角速度wt的状态为下降态,而上一时刻采集的绕Y轴旋转的角速度wt-1的状态为上升态,则上一时刻采集的绕Y轴旋转的角速度wt-1为波峰。
4.根据权利要求1所述的一种基于惯性传感器的步态相识别方法,其特征在于:波谷,定义为:如果当前时刻采集的绕Y轴旋转的角速度wt的状态为上升态,而上一时刻采集的绕Y轴旋转的角速度wt-1的状态为下降态,则上一时刻采集的绕Y轴旋转的角速度wt-1为波谷。
5.根据权利要求1所述的一种基于惯性传感器的步态相识别方法,其特征在于:触地预先判定阈值,要求为:该阈值通常为人体低速行走时,每个步态周期内的最小角速度。
6.根据权利要求1所述的一种基于惯性传感器的步态相识别方法,其特征在于:触地判定阈值,要求为:该阈值优选设为Thh=0°/s。
7.根据权利要求1所述的一种基于惯性传感器的步态相识别方法,其特征在于:惯性传感器至少能采集一个维度的实时角速度。
8.根据权利要求1所述的一种基于惯性传感器的步态相识别方法,其特征在于:惯性传感器的角速度量程应大于±500°/s;惯性传感器的静态漂移在0.05°/s以内。
9.根据权利要求1所述的一种基于惯性传感器的步态相识别方法,其特征在于:惯性传感器至少通过CAN总线或串口进行通讯。
10.根据权利要求1所述的一种基于惯性传感器的步态相识别方法,其特征在于:惯性传感器的采样频率最低在20Hz以上;惯性传感器的工作电压和工作电流应在人体安全用电范围内。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011367253.4A CN112440267B (zh) | 2020-11-27 | 2020-11-27 | 一种基于惯性传感器的步态相识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011367253.4A CN112440267B (zh) | 2020-11-27 | 2020-11-27 | 一种基于惯性传感器的步态相识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112440267A CN112440267A (zh) | 2021-03-05 |
CN112440267B true CN112440267B (zh) | 2022-04-22 |
Family
ID=74738221
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011367253.4A Active CN112440267B (zh) | 2020-11-27 | 2020-11-27 | 一种基于惯性传感器的步态相识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112440267B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117171606B (zh) * | 2023-09-04 | 2024-05-28 | 北京泛源时空科技有限公司 | 一种基于自适应模糊推理的行人多步态模式识别方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104729507A (zh) * | 2015-04-13 | 2015-06-24 | 大连理工大学 | 一种基于惯性传感器的步态识别方法 |
CN106618979A (zh) * | 2017-03-03 | 2017-05-10 | 杭州福祉医疗器械有限公司 | 步态康复机器人及用于步态康复机器人的控制方法 |
CN109540133A (zh) * | 2018-09-29 | 2019-03-29 | 中国科学院自动化研究所 | 基于微惯性技术的自适应步态划分方法、系统 |
CN109998551A (zh) * | 2019-04-11 | 2019-07-12 | 北京航空航天大学 | 一种分段式局部峰值检测的步态相位分析方法 |
JP2020110332A (ja) * | 2019-01-11 | 2020-07-27 | 株式会社Atoun | 動作支援装置および動作支援方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102098986B (zh) * | 2008-07-23 | 2015-09-09 | 伯克利仿生技术公司 | 外骨骼和控制该外骨骼的迈步腿的方法 |
-
2020
- 2020-11-27 CN CN202011367253.4A patent/CN112440267B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104729507A (zh) * | 2015-04-13 | 2015-06-24 | 大连理工大学 | 一种基于惯性传感器的步态识别方法 |
CN106618979A (zh) * | 2017-03-03 | 2017-05-10 | 杭州福祉医疗器械有限公司 | 步态康复机器人及用于步态康复机器人的控制方法 |
CN109540133A (zh) * | 2018-09-29 | 2019-03-29 | 中国科学院自动化研究所 | 基于微惯性技术的自适应步态划分方法、系统 |
JP2020110332A (ja) * | 2019-01-11 | 2020-07-27 | 株式会社Atoun | 動作支援装置および動作支援方法 |
CN109998551A (zh) * | 2019-04-11 | 2019-07-12 | 北京航空航天大学 | 一种分段式局部峰值检测的步态相位分析方法 |
Non-Patent Citations (1)
Title |
---|
基于惯性测量器件的无线步态分析平台;姜鸣等;《大连理工大学学报》;20161231(第05期);第81-87页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112440267A (zh) | 2021-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zheng et al. | Gait phase estimation based on noncontact capacitive sensing and adaptive oscillators | |
Xu et al. | Real-time on-board recognition of continuous locomotion modes for amputees with robotic transtibial prostheses | |
Stolyarov et al. | Translational motion tracking of leg joints for enhanced prediction of walking tasks | |
CN108577854A (zh) | 步态识别方法和步态辅助设备 | |
CN109480857B (zh) | 一种用于帕金森病患者冻结步态检测的装置及方法 | |
Song et al. | Adaptive neural fuzzy reasoning method for recognizing human movement gait phase | |
CA2866025A1 (en) | Sensor unit for a functional electrical stimulation (fes) orthotic system | |
CN105806359A (zh) | 一种计步方法及计步器 | |
CN112336590A (zh) | 基于多传感信息的助力外骨骼运动意图与步态规划方法 | |
CN112440267B (zh) | 一种基于惯性传感器的步态相识别方法 | |
Ye et al. | An adaptive method for gait event detection of gait rehabilitation robots | |
Zhang et al. | Real-time assistive control via imu locomotion mode detection in a soft exosuit: An effective approach to enhance walking metabolic efficiency | |
Ling et al. | A domain adaptive convolutional neural network for sEMG-based gait phase recognition against to speed changes | |
CN116206358A (zh) | 一种基于vio系统的下肢外骨骼运动模式预测方法及系统 | |
CN114224326A (zh) | 一种穿戴式步态相位和动作识别装置及方法 | |
Félix et al. | Adaptive real-time tool for human gait event detection using a wearable gyroscope | |
CN207722304U (zh) | 基于多传感器融合的辅助行走外骨骼机器人系统 | |
CN116869521B (zh) | 一种下肢助力外骨骼系统的人体运动模式实时识别方法 | |
Park et al. | Real-time prediction of walking state and percent of gait cycle for robotic prosthetic leg using artificial neural network | |
CN110558990B (zh) | 一种步态分析方法及装置 | |
Gong et al. | Real-time Detection System of Gait Event for Disabled People | |
Zheng et al. | An automatic labeling strategy for locomotion mode recognition with robotic transtibial prosthesis | |
CN110558991A (zh) | 一种步态分析方法 | |
Sabatini | Wearable sensor systems in biomechanics: assessment of unrestrained walking features | |
US20210386329A1 (en) | Measurement device, control method, and program recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |