自适应跑步机多运动模式人机交互技术
钱宇阳, 鲁森, 杨开明, 朱煜    
清华大学 机械工程系, 精密超精密制造装备及控制北京市重点实验室, 北京 100084
摘要:自适应跑步机是虚拟现实(virtual reality, VR)环境中用于人机交互的重要设备, 实现该设备在VR环境下的多运动模式交互是丰富其应用场景的关键。该文构建了一种基于自适应跑步机的多运动模式交互控制架构, 该架构包括感知层和控制层, 感知层基于足底压力鞋垫实现高泛化性能的人体运动模式识别; 控制层依据人体稳定性条件对不同运动模式(站立、行走、倒退、奔跑和跳跃)下的控制策略进行切换。该架构自动将运动模式识别结果与跑步机运动控制相结合, 实现了多运动模式人机交互控制。实验结果表明:分层控制方法能够实现稳定、平滑的多运动模式人机交互, 保证用户在交互过程中步态自然、姿态稳定, 满足自适应跑步机的人机交互需求。
关键词自适应跑步机    多运动模式人机交互    运动模式识别    控制策略    
Multi-locomotion mode human-robot interaction technology for self-paced treadmills
QIAN Yuyang, LU Sen, YANG Kaiming, ZHU Yu    
Beijing Key Laboratory of Precision/Ultra-Precision Manufacturing Equipments and Control, Department of Mechanical Engineering, Tsinghua University, Beijing 100084, China
Abstract: [Objective] A self-paced treadmill (SPT) is key human-robot interactive equipment for virtual reality, which can enable a user to walk at the intended speed by using a re-positioning technology. Realizing multimode interactions of SPTs is crucial for enriching their applications. However, existing studies only realizes a few interaction modes. To realize multimode interactions in self-paced treadmills, a novel multilayer control framework is proposed in this paper. [Methods] In this study, the control system is divided into two layers: the recognition layer and the control layer. First, a novel hybrid spatial-temporal graph convolutional neural network is proposed to realize user-independent human locomotion mode recognition based on plantar pressure insoles in the recognition layer. The proposed network separates the pressure and acceleration signals and dealt with them individually. It is also utilized to extract the natural spatial topology between pressure nodes. Long short-term memory layers are used to individually extract temporal-dependent features of pressure and acceleration signals and to fuse multimodal features for final recognition. A multilayer perceptron is utilized to map the fusion features to the locomotion modes. By extracting the natural spatial-temporal features of multimodal data during human locomotion, a high generalization capability of the recognition results can be expected. Second, control strategies for different locomotion modes are designed in the control layer according to the stability condition of different human locomotion modes. Meanwhile, a walking speed feedforward control strategy is proposed to re-position the user and ensure natural gaits for the walking mode. Variable gain control strategies are adopted to manipulate the acceleration for the running and back walking modes. A buffer control strategy is proposed to improve the stability during jump landing for the jumping mode. Then, a finite state machine is used to automatically switch the control strategies. The states are transited based on the recognition results. [Results] 1) The proposed locomotion mode recognition method was evaluated on a dataset that comprises eight subjects with five locomotion modes through the leave-one-subject-out cross validation. Then, it was compared with the convolutional neural network (CNN) and domain-adversarial neural network (DANN). Experimental results indicated that the mean and standard deviation classification accuracies of the CNN, DANN, and HSTGCN are (90.26±8.54)%, (97.71±3.60)%, and (97.37±1.40)%, respectively. These results validated that the proposed method can achieve high generalization capability without any dependency on the data of target subjects. Hence, the burden of repeated data collection and network training was reduced. 2) Based on the recognition results, experiments on the multi-locomotion mode human-robot interaction were conducted using a finite state machine. Experimental results indicated that a user can freely change the locomotion modes on the treadmill, and the balance was not significantly affected by the treadmill acceleration. [Conclusions] The proposed framework can automatically combine the recognition results with the treadmill control and can realize the control of multi-locomotion mode human-robot interactions. Further, experimental results validate that the proposed multilayer control strategy can achieve a stable and smooth multi-locomotion mode human-robot interaction, ensure natural gaits and posture stability of the user, and meet the requirements of multi-locomotion mode human-robot interactions for self-paced treadmills.
Key words: self-paced treadmill    multi-locomotion mode human-robot interaction    locomotion mode recognition    control strategy    

自适应跑步机通过重定位技术克服了普通定速跑步机的不足, 使用户在交互过程中能够自由地改变运动状态[1-2], 并能够在一定程度上模拟人体在地面上的运动步态[3-4]。将自适应跑步机与相应的虚拟现实(virtual reality, VR)设备相结合, 能够为用户提供丰富的视觉、动觉等感知信息, 带来身临其境的沉浸式体验, 因而在康复医疗[3, 5-6]、军事训练[7]、游戏娱乐等领域都拥有广阔的应用前景。

为了使用户能够在有限的物理空间内实现无限的虚拟世界交互, Souman等[8-9]设计了全向自适应跑步机, 该设备将多条跑步带在其运动的正交方向进行环形阵列排布, 并采用2条同步链轮带动该环形阵列运动, 通过2个正交方向的运动合成实现全向运动以抵消人体位移。为了提高用户在交互过程中的沉浸式感受, 学者们对自适应跑步机交互控制策略进行了大量研究, 研究大多针对单一交互模式展开, 且主要集中在行走交互模式[3-4, 10-11], 对转向[12]、急停[13]等交互模式略有涉及。

随着VR技术的迅猛发展, 交互模式多样化的VR场景需求日益凸显。2021年, Virtuix公司发布了Omni One装置,能够实现行走、倒退、奔跑、跳跃、下蹲等复杂的人机交互动作,该装置是典型的被动式交互设备, 通过低摩擦的碗形底面实现位移抵消, 并采用腰部固定器来维持用户姿态稳定, 因而会使用户在交互过程中受束缚较多、沉浸式体验差。为了解决被动式交互设备存在的问题, 进一步提升用户在VR环境中的交互体验, 实现自适应跑步机下的多运动模式人机交互至关重要。

鉴于人体在不同运动模式下对扰动的敏感程度不同, 跑步机需要根据用户当前的运动模式改变其输出响应, 以保证用户在交互过程中姿态稳定。考虑到人体对侧向加速度的抗干扰能力较差, 为了防止用户在转向过程中产生交叉步态, 文[12]基于人体转向角度采用变增益控制对侧向加速度进行抑制。为了解决急停过程中跑步机加速度过大的问题, 文[13]采用直接切换方法将行走速度是否为零作为判断条件, 对行走与急停控制策略进行切换。然而, 上述研究都是在行走交互模式的基础上针对某种特定运动情况开展的研究,且都基于简单的逻辑判断优化控制策略, 缺乏系统层面的分析, 无法应用于多种运动交互模式共存的复杂情况。为了实现自适应跑步机多运动模式交互控制, 需要形成一种控制架构, 既能保证用户在特定交互模式下的稳定性, 又能无障碍地拓展到多种新的交互模式中, 即该架构需要在准确识别用户多种运动模式的基础上自动实现不同控制策略的切换与执行。

同时, 为了实现虚拟环境下的最佳人机运动交互, 人体运动模式识别也是关键环节。现有研究广泛采用深度学习方法[14-17]实现人体运动模式识别, 但由于人体运动的差异性较大, 识别结果的泛化能力难以保证。为解决该问题, 学者们采用迁移学习, 基于有标记的源域数据和无标记的目标域数据进行网络训练[18-19], 但此类方法仍对新对象的数据有一定依赖性, 需要重新进行网络训练。为了进一步减少数据依赖性并简化数据采集与网络训练流程, 需要一种更有效的方法来解决上述问题。另外, 多种运动交互模式的控制及其控制切换是虚拟环境下的最佳人机运动交互的另外一个关键环节, 目前该领域尚无相关研究报道。

针对自适应跑步机多运动模式人机交互, 本文从控制架构、人体运动模式识别、人机交互控制3个方面开展了相关工作。本文主要内容如下:1) 提出一种分层控制架构以实现自适应跑步机多运动模式人机交互。2) 提出一种混合时空图卷积网络(hybrid spatial-temporal graph convolutional network, HSTGCN)以实现高泛化性能的人体运动模式识别。3) 依据人体稳定性条件设计不同运动模式下的交互控制策略, 并采用有限状态机实现自适应跑步机多运动模式切换控制。

1 多运动模式人机交互系统架构

在自适应跑步机人机交互系统中, 用户是交互系统的主体, 跑步机需要对用户的运动意图进行快速响应, 尽可能地减少主动调整动作给用户神经-肌肉系统造成的负担, 提高沉浸体验。因此, 为了实现自适应跑步机的人机共融, 本文提出了如图 1所示的分层控制架构。图中θ为用户转向角度;r(s)、P(s)、G(s)和H(s)分别为控制目标、控制器、人机交互系统和测量算法, s为Laplace变换中的复变数;vcvw分别为跑步机和用户速度;GRF(ground reaction force)为地面反作用力。该架构由控制系统、测量系统和人机交互系统3部分组成, 其中控制系统又分为感知层和控制层2个层级。感知层需要识别用户当前的运动意图, 如站立、行走、奔跑、倒退和跳跃等。控制层首先基于感知层识别的结果, 切换到对应的控制模式;然后基于该模式下的人体稳定性执行对应的交互控制策略, 以保证用户在不同运动模式下的稳定性。测量系统服务于控制系统, 为准确识别人体运动模式、顺利执行控制策略提供必要的人体运动相关信息。典型的输入信号包括人体关节、质心位置和加速度等运动学信号, 足底压力分布和GRF等动力学信号, 以及表面肌肉电流信号等生物信号。人机交互系统由用户和跑步机组成, 用户根据个人意愿在跑步机上进行自由运动;跑步机在控制系统的作用下输出速度和加速度, 在抵消用户位移的同时, 保证其运动的稳定性。基于上述架构, 在实际交互过程中, 当感知层检测到用户运动模式发生改变后, 控制系统可以在无需任何用户主动输入的情况下, 主动切换到相应的交互控制策略, 进而保证用户在新模式下的运动稳定性, 减少用户神经-肌肉系统的负担, 提供良好的交互体验。

图 1 多运动模式人机交互系统分层控制架构概念图

基于分层控制架构, 本文构建了如图 2所示的多运动模式人机交互实验系统, 整个系统主要分为测量系统、控制系统和VR系统3大部分。图中不同颜色和样式的箭头分别表示通用异步收发器(universal asynchronous receiver/transmitter, UART)、用户报数据协议(user datagram protocol, UDP)和控制器局域网络(controller area network, CAN)总线3种通信方式。对于测量系统而言, 在满足控制系统需求的基础上, 选用的传感器应尽可能便携、无束缚且易于布置, 以减少对用户正常运动的干扰。首先, 为了满足感知层的测量需求, 本文选用Moticon公司生产的OpengGo系列足底压力鞋垫进行数据采集, 采样频率为50 Hz, 每只鞋垫包含16个压力传感器和1个三轴惯性测量单元(inertial measurement unit, IMU), 并通过wifi传输数据, 此类传感器不会给用户带来任何侵入感, 且能够充分捕捉运动学、动力学信息[20-21], 为后续的运动模式识别奠定基础。此外, 现有研究广泛采用位置反馈与行走速度前馈相结合的控制策略对用户进行重定位, 因此为了满足控制层的测量需求, 本文分别采用Microsoft公司生产的采样频率为30 Hz的Azure Kinect传感器和Wit-Motion公司生产的采样频率为100 Hz的WT901九轴IMU, 进行人体位置和行走速度测量。其中,Azure Kinect放置于跑步机前方1 m、高1.2 m处, 通过UDP传输数据, 能够准确测量用户实时关节位置[22-23], 并以此计算人体质心的实时位置;IMU布置于小腿部位, 通过蓝牙传输数据, 用于测量人体实时行走速度。3种传感器分别连接到数据采集与同步模块, 该模块对不同类型的传感器数据进行并行处理, 根据制定的算法将原始信号转换为控制系统所需的运动模式、行走速度、质心位置等参数, 其中运动模式与行走速度每运动一步更新一次;质心位置更新频率与Azure Kinect采样频率一致, 为30 Hz。

图 2 多运动模式人机交互实验系统

控制系统由控制器、上位机和运动平台3个部分组成, 控制器(STM32F103@144 MHz)的主程序通过以太网接收数据采集模块发送的UDP数据包解析并更新系统参数, 采用定时中断对跑步机加速度进行控制, 控制频率为100 Hz。控制信号通过CAN总线输入到电机驱动器中, 对运动平台进行控制, 同时运动平台将实时运动速度反馈给控制器。VR系统接收测量系统与控制器的输出信号, 并计算用户在场景中的位置和速度以实现场景的运动。

2 人体运动模式识别方法

根据VR场景的交互需求, 用户在自适应跑步机中的运动模式主要划分为:站立、行走、后退、奔跑、转向和跳跃6种, 其中站立和跳跃模式可根据瞬时的运动参数进行识别, 而其他运动模式往往由连续步态组成, 需要一定时间内的数据作为输入以进行有效识别, 识别难度相对较高。因此, 接下来将主要针对后者进行深入研究。

2.1 HSTGCN

为提高识别结果的泛化能力, 简化数据采集及网络训练的流程, 本文提出了HSTGCN, 如图 3所示,图中T表示时间轴。原始输入信号为足底压力分布信号与多轴加速度信号组成的多模态数据, 为了更好地提取有效特征, 本文将不同模态的传感器数据进行分离, 分别进行处理。首先, 针对足底压力分布信号, 考虑其节点之间的自然空间拓扑关系, 采用时空图卷积网络(spatial-temporal graph convolutional network, STGCN)[24-25]对不同节点之间的空间相关特征及同一节点在不同时间内的短期时间相关特征进行提取, 并将提取后的信号输入到长短时记忆(long short-term memory, LSTM)神经网络中,进一步对长期时间相关特征进行提取。其次, 针对多轴加速度信息, 采用LSTM神经网络进行时间相关特征的提取。最后, 将提取的多模态特征输入到另一个LSTM神经网络中进行特征融合, 并将融合后的特征输入到多层感知机(multi-layer perceptron, MLP)中, 以获得最终的识别结果。

图 3 HSTGCN结构图

HSTGCN主要由STGCN、LSTM和MLP这3个模块组成。其中, STGCN模块的输入为不同时间点的足底压力空间分布图, 其特征提取过程分为空间图卷积和一维时间卷积2步。首先将每帧压力分布图输入到一阶简化后的图卷积网络(graph convolutional network, GCN)中[24], 计算如下,

$ \boldsymbol{H}_{\mathrm{GCN}}(t)=f\left(\widetilde{\boldsymbol{D}}^{-\frac{1}{2}}(\widetilde{\boldsymbol{A}} \mathop {}\limits^o \boldsymbol{M}) \widetilde{\boldsymbol{D}}^{-\frac{1}{2}} \boldsymbol{X}_{t} \boldsymbol{\varTheta}\right) . $ (1)

其中:XtHGCN(t)为t时刻图卷积的输入和输出, $ \widetilde{\boldsymbol{D}}$$ \widetilde{\boldsymbol{A}}$分别为所输入时空图的度矩阵和邻接矩阵, Θ为可训练的滤波器的参数矩阵, M为可训练的邻接权重矩阵, f()为激活函数。在此基础上, 采用平均池化方法降低网络复杂度, 并提高网络的泛化能力。

$ {{\boldsymbol{H}}_{{\rm{pool}}}}(t) = \sum\limits_{i = 1}^d {{{\boldsymbol{H}}_{{\rm{GCN}}}}} (t, m)/d{\rm{. }} $ (2)

其中:Hpool(t)为池化层输出, HGCN(t, m)为t时刻图卷积层的第m个特征维度输出,d为图卷积层输出的特征维度大小。由式(2)可知, 其输出结果为每个节点在t时刻各维度特征的平均值。将池化后的特征输入到一维卷积神经网络(convolutional neurual network, CNN)中, 对每个节点在一定时间内的数据进行聚合,

$ \boldsymbol{H}_{\mathrm{STGCN}}(t)=\sum\limits_{h=0}^{K-1} \boldsymbol{H}_{\mathrm{pool}}(t+h) \cdot \omega(h) . $ (3)

其中:HSTGCN(t)为t时刻STGCN模块的最终输出;h为卷积过程中的时间偏移量;ω(h)为卷积滤波器参数;K为卷积核大小, 卷积过程中进行补零操作以保证输入和输出维度一致。

LSTM模块主要用于提取时间相关特征, 并对不同模态特征进行融合。每个LSTM层由多个LSTM单元基于时间顺序串联而成, 每个LSTM单元通过3个门(输入门、遗忘门和输出门)控制隐藏和单元状态, 图 3中每个LSTM层中的xtCtht分别表示t时刻的单元输入、单元状态和隐藏状态。通过LSTM模块对加速度信息和足底压力信息进行时间相关性提取及特征融合后, 采用MLP将特征空间映射到具体的运动模式, 其网络层数为3。

2.2 数据采集与实验设计

8名受试者分别穿戴足底压力鞋垫进行实验,受试者的年龄:(28.3±4.7)岁, 身高:(173.4±6.9) cm, 体重:(68.3±12.9) kg, 所有受试者均无下肢损伤或神经系统疾病史。实验过程中, 运动模式分为行走、后退、奔跑和转向。考虑到本文所采用的自适应跑步机最大转弯半径为1 m, 且转向半径越小,识别越容易, 本实验将转向半径分别设置为1和2 m。此外, 转向运动也被进一步细分为左转和右转2种模式。为了构建运动数据集, 首先需要对步态进行划分, 以提取每一步的运动信息用于后续运动模式识别。图 4为步态事件划分的示例图, 划分过程中, 对每支压力鞋垫分别计算GRF, 并基于阈值检测的方法识别着地和离地时间点, 以划分每一步运动信息, 检测方法如下:

$ \left\{\begin{array}{l} t_{\mathrm{on}}=t_{i}, F\left(t_{i}\right) \geqslant \alpha G \& F\left(t_{i-1}\right)<\alpha G ;\\ t_{\text {off }}=t_{i}, F\left(t_{i-1}\right) \geqslant \alpha G \& F\left(t_{i}\right)<\alpha G . \end{array}\right. $ (4)
图 4 步态事件划分示例图

其中:tontoff分别为脚掌落地和离地的时间点;ti为第i个采样时刻;F(ti)为ti时刻GRF大小;G为用户重力大小;α为阈值因子, 本次实验中取0.1。此外, 由于用户每一步的行走时间不同, 其数据采样点数也不同, 为便于后续模式识别, 本研究按照步态周期百分比对每一步数据进行重采样。

2.3 人体运动模式识别实验验证

为了验证HSTGCN的有效性, 本文进行对比实验。选取CNN和域对抗神经网络(domain adversarial neural network, DANN)[26]作为对比方法,选取理由如下:1) CNN无需任何新对象数据, 能够自动提取高维特征, 被广泛用于人体运动模式识别。2) DANN基于有标记的源域数据和无标记的目标域数据进行网络训练, 通过对抗学习实现特征对齐, 是目前性能较好的泛化能力提升方法之一[18, 27]

为了评估上述方法的性能, 本文分别采用十折交叉检验和留一(leave-one-subject-out, LOSO)交叉检验[18]进行实验验证。十折交叉检验将所有对象的步态数据平均划分为10份, 每次选取其中一份作为测试集, 其他作为训练集, 取10次的均值作为检验精度, 该方法能够有效评价识别算法对训练集中对象的识别效果。LOSO交叉检验每次将单个对象的步态数据作为测试集, 将其他对象的步态数据作为训练集, 重复该训练流程直至每个对象都被选为测试集, 并将测试集结果的平均值作为检验精度, 该方法能够有效评价识别算法对未训练对象的泛化能力。

本文实验过程中共采集了10 196步运动数据, 实验中使用的GPU为GeForce 2060S, CPU为Intel i5-10400, 并采用Pytorch框架进行网络训练。在该环境下, HSTGCN采用LOSO交叉检验的训练时间为3.8 h, 单次识别所需时间仅为3.3×10-3 s, 完全能够满足实时测量需求。

实验结果表明:采用十折交叉检验, CNN和HSTGCN均能够实现100%的识别准确率。该结果表明对于训练集中的对象, 实现高精度的识别难度较低。采用LOSO交叉检验, CNN、DANN和HSTGCN的识别精度及标准差分别为(90.26±8.54)%, (97.71±3.60)%和(97.37±1.40)%, 各方法对每个对象的识别精度及其统计结果见表 1。相较于CNN方法, HSTGCN同样无需任何新对象的数据输入, 但能够大幅提高对未训练对象的识别准确率, 且标准差大大降低, 精度和稳定性都得到质的提升。相较于DANN, HSTGCN能够在不依赖任何新对象数据的前提下, 实现接近DANN的识别准确率, 且对于不同对象识别结果的标准差更低, DANN和HSTGCN的标准差分别为3.60%和1.40%。

表 1 LOSO交叉校验识别结果 
%
对象 CNN DANN HSTGCN
1 93.08 96.92 96.07
2 86.74 99.91 95.21
3 99.76 100.00 99.04
4 98.75 98.45 98.97
5 84.30 99.75 97.73
6 85.88 98.71 96.71
7 75.62 89.15 98.45
8 97.93 98.82 96.76
均值 90.26 97.71 97.37
标准差 8.54 3.60 1.40

上述结果证明:HSTGCN通过模态分离与融合以及时空特征提取可以保证所提取的特征的泛化性, 在不依赖新对象数据的前提下实现较高的泛化精度, 可以降低数据依赖性, 大大节约数据采集和网络训练的时间, 满足自适应跑步机运动模式识别的需求, 为多运动模式交互奠定了基础。

值得注意的是, HSTGCN识别结果的混淆主要存在于转向和行走模式中。考虑到本实验的条件设置相对于实际情况更为苛刻(转向运动模式细分为了左转和右转2种子模式,且最大转弯半径为实际半径的2倍)。在实际应用过程中, 该混淆对自适应跑步机控制效果的影响将进一步下降。

3 多运动模式人机交互控制策略

在人体运动模式识别的基础上, 为实现自适应跑步机多运动模式交互, 保证良好的交互体验, 需要对控制策略进行深入研究。在不失一般性的前提下, 为了保证实验的安全性, 本文后续研究将在单一运动方向展开, 其原因如下:1) 自适应跑步机在2个运动方向完全解耦, 单方向的控制可无障碍地拓展到2个正交方向的控制。2) 转向运动模式下的控制可通过参数变增益分解到2个方向的运动中[12]。因此, 本文后续对于交互控制策略的研究将围绕站立、行走、倒退、奔跑、跳跃5种模式, 对不同运动模式下的交互控制策略及多运动模式切换控制方法展开。

3.1 不同模式下的交互控制策略

行走交互模式是用户在交互过程中最常采用的运动模式, 有着最为丰富的应用场景。学者们也对该模式下的控制策略进行了大量研究[3, 8, 10], 其中速度前馈与位置反馈相结合的控制策略被广泛采用。为了提高行走交互的稳定性和跑步机响应速度, 准确的行走速度测量至关重要[3, 28], 本文沿用文[29]提出的基于IMU的多策略融合方法对行走速度进行测量, 并基于该测量结果实现行走交互控制, 控制策略可表示为

$ \boldsymbol{a}_{t}=k_{1}\left(\boldsymbol{x}-\boldsymbol{x}_{\mathrm{ref}}\right)+k_{2}\left(\boldsymbol{v}_{\mathrm{w}}-\boldsymbol{v}_{\mathrm{c}}\right) . $ (5)

其中:at为跑步机的加速度输出;xxref分别为用户实时位置和参考位置;vw为行走速度测量结果;vc为跑步机实时速度;k1k2为权重系数, 实验中分别取1和0.5。此外, 若检测到用户处于站立状态, 则控制器会切换到站立控制, 自动将vw设置为0以实现渐进稳定。

奔跑模式和倒退模式仍可采用位置反馈与速度前馈相结合的控制方式, 但由于人体速度难以准确测量, 因此采用状态观测器[11]对运动速度进行估计, 观测器设计与控制策略如下:

$ \left\{\begin{array}{l} \dot{\boldsymbol{\xi}}=-\boldsymbol{v}_{\mathrm{c}}+k_{3}(\boldsymbol{x}-\boldsymbol{\xi}), \\ \boldsymbol{V}_{\mathrm{w}}=k_{3}(\boldsymbol{x}-\boldsymbol{\xi}) ; \end{array}\right. $ (6)
$ \boldsymbol{a}_{t}=\left(k_{4}-k_{5}\right)\left(\boldsymbol{V}_{\mathrm{w}}-\boldsymbol{v}_{\mathrm{c}}\right)+k_{4} k_{5}\left(\boldsymbol{x}-\boldsymbol{x}_{\mathrm{ref}}\right) . $ (7)

其中:ξ为观测器内部状态, $ \dot{\boldsymbol{\xi}}$为该内部状态的一阶导数;Vw为观测器的估计结果;k3k4k5为权重系数, 根据文[11], 一组合适的权重参数为2.25、2和5。考虑到奔跑模式下跑步机需要快速响应, 而倒退模式下人体对加速度扰动更敏感, 因此在式(7)的基础上根据当前运动模式对加速度输出进行变增益, 奔跑模式和倒退模式分别采用2和0.5的增益系数。

现有研究尚未涉及跳跃交互模式, 其交互过程中的稳定性也最难保证, 若控制不当可能引起人体失稳, 增加摔倒风险。图 5为实验中记录的一组人体跳跃过程的关节运动图, 整个跳跃过程可分为3段:起跳、飞行和落地。其中, 起跳阶段人体从站立状态开始下蹲蓄力, 随后在肌肉爆发作用下, 下肢关节舒展并推动质心向前、向上运动, 直至双脚离开地面;飞行阶段人体在重力和初速度的作用下做斜上抛运动, 同时在空中进行姿态调整;落地阶段下肢肌肉做离心运动(肌肉产生的力与其收缩方向相反)产生抵抗力, 并改变足底压力中心位置以产生抵抗扭矩, 对落地速度进行缓冲以最终实现人体稳定。

图 5 人体跳跃过程各关节运动示意图

为了保证用户能够顺利起跳, 在检测到用户跳跃意图后, 控制器将加速度置为0, 防止其对起跳过程产生干扰;随后, 在飞行阶段维持跑步机速度不变, 以保证用户在起跳和落地前后的参照系速度不变, 使落地过程符合日常生活经验, 提高沉浸式体验;在用户落地后, 需要对跑步机进行控制, 以提高用户落地后的稳定性, 降低摔倒风险。

为完成上述目标, 本文提出了缓冲控制策略, 在检测到用户落地后, 通过跑步机模拟日常生活中沙地对人体跳跃落地的缓冲作用, 控制策略如下:

$ \boldsymbol{a}_{t}=\operatorname{sign}\left(\boldsymbol{v}_{\mathrm{x}}-\boldsymbol{v}_{\mathrm{c}}\right) f\left(\boldsymbol{v}_{\mathrm{x}}-\boldsymbol{v}_{\mathrm{c}}\right)^{2}\left(\mathrm{e}^{q t}-1\right). $ (8)

其中:sign()为取正负号函数;vxvc分别为质心水平速度和跑步机速度;f(vx- vc)2用于模拟沙地对于人体在水平方向的阻尼作用,其中f为阻尼系数,在实验中取10; (eqt-1)用于模拟“吃沙深度”(人体与沙子接触的体积表征量), 接触时间越长, 深度越深, 阻尼作用越强, 该项初始为零且随时间变化呈指数增长, q为时间系数, 在实验中取值1.5。

3.2 多运动模式切换控制方法

为实现自适应跑步机多运动模式交互, 本研究提出了基于有限状态机的切换控制方法。如图 6所示, 有限状态机共定义了5种主状态, 其中跳跃状态进一步细分为起跳、飞行和落地3个子状态。此外, 考虑到交互的安全性, 各状态之间的转移受到了一定的限制, 仅站立状态可与任一模式进行自由切换。各状态之间的转移条件以c0~c6进行表征, 具体条件将在下文进行分析。

图 6 有限状态机及其转移过程

本研究将运动状态分为即时切换和连续运动2种类型, 其中站立和跳跃模式需要即时切换, 因而采用阈值检测的方法作为切换条件;而行走、倒退、奔跑作为连续的运动状态, 一般需要一个步态周期的数据进行检测, 采用运动模式识别结果作为转移条件。表 2列举了具体的状态转移条件。表中:G为用户自身的重力大小, N;MS表示运动模式识别结果(1、2和3分别为行走、倒退和奔跑);comy为Azure Kinect解算出的质心(center of mass, COM)垂直方向的位置(下标y为垂直方向);FsFd分别为双脚的压力和与压力差, s和d分别为和与差;L为站立时质心高度;T为当前状态的持续时间。通过有限状态机实现控制状态切换后, 控制器会根据3.1节所述的不同模式下的控制策略对跑步机进行控制, 以实现多运动模式交互。

表 2 状态转移条件
状态转移 转移条件
c0 Fs>0.8GFd<0.1GT>0.2 s
c1 MS=1
c2 MS=2
c3 MS=3
c4 comy<0.8L
c5 Fs<0.05G
c6 Fs>0.2G

3.3 多运动模式人机交互控制策略验证

为了验证多运动模式交互控制方法的有效性, 用户按照个人意愿进行了连续的多运动模式交互实验。整个交互过程中, 跑步机速度变化平滑、响应迅速, 用户始终保持在跑步机安全范围内, 且未出现用户主动调整步态以维持平衡的情况。为了更好地说明交互过程及多运动模式切换控制效果, 本文截取了交互过程中几个典型时间段的实验数据进行分析。图 710为不同阶段系统整体状态曲线, 图中控制状态坐标轴数值0—4分别表示控制器处于站立、行走、倒退、奔跑和跳跃控制状态。

图 7 站立-行走-奔跑运动过程

图 8 行走-站立-倒退运动过程

图 9 向前跳跃运动过程

图 10 向后跳跃运动过程

图 7为站立-行走-奔跑连续运动过程中的控制器输出、跑步机速度和人体质心位置变化曲线。由图可知, 当人体从站立状态开始运动后, 跑步机能够快速响应并达到稳态;切换到奔跑状态后, 在更高的增益参数作用下, 跑步机迅速响应, 提高运动速度并维持人体位置基本不变。图 11a对该运动过程中不同时刻的典型人体姿态进行可视化, 由图可知, 人体在行走和奔跑时的姿态稳定、步态自然。

图 11 多运动模式交互过程中Azure Kinect传感器测量的人体典型姿态图(单位:s)

图 8为行走-站立-倒退连续运动过程中的数据曲线, 该过程中用户从行走状态逐渐减速并站立, 跑步机能够很好地跟随用户的减速过程, 并在用户停止运动后, 在较小的加速度作用下逐渐停止运动, 并逐渐将人体恢复到初始位置;当用户切换到倒退模式后, 控制器降低增益参数以减少跑步机对人体的扰动。图 11b为该运动过程的可视化结果, 用户在停止运动切换到站立状态时, 上半身未出现明显的倾角变化, 跑步机加速度对人体姿态稳定性的影响很小。同时, 当用户处于倒退运动状态时, 在变增益控制的作用下, 跑步机加速度进一步减小, 使用户的倒退过程十分平稳。

图 9为用户向前跳跃运动过程中各参数的变化曲线。整个跳跃过程分为起跳、飞行和落地3个阶段。当测量系统检测到用户下蹲后, 跑步机加速度被置为零, 以保证用户能够顺利完成起跳动作, 同时在飞行阶段维持跑步机速度不变。当系统检测到足底压力出现上升时, 意味着用户脚面开始与跑步机接触, 并在该时刻开始施加缓冲控制, 控制器基于落地时间、人体质心与跑步机速度之差计算加速度, 在落地瞬间加速度为零, 并随着时间推移增加, 最后随着速度差减小而逐渐降为零, 该过程中跑步机速度出现明显下降。随后, 在用户恢复稳定后切换到站立控制策略, 将用户逐渐拉回初始位置, 为后续运动保留充足的运动空间。在该过程中, 用户可随时切换到其他运动模式, 跑步机能够快速响应新的运动模式。图 11c为该运动过程的可视化结果, 第36.4~37.4 s用户处于起跳与飞行阶段, 跑步机不会对该过程产生干扰, 用户能够顺利起跳;第37.4 s后用户开始与地面接触, 在跳跃交互控制策略与自身骨骼肌肉的综合作用下逐渐恢复平衡, 落地后未产生调整步态, 上半身姿态稳定。

图 10为用户向后跳跃运动过程中的数据曲线。由于人体向后跳跃能力较差、速度较慢, 落地稳定性相对容易保证, 因而跑步机在落地过程中所需输出的加速度相较于向前跳跃也出现了明显的降低。此外, 在跳跃交互控制策略的作用下, 用户也能够进行原地的垂直跳跃或180°旋转跳跃以改变其朝向。图 11d11e分别对向后跳跃与180°旋转跳跃过程中不同时刻的典型人体姿态进行可视化, 由图可知, 无论用户采用前述哪种跳跃方式, 落地后的稳定性都得到了很好的保证。

综上所述, 用户在自适应跑步机多运动模式交互过程中能够按照个人意志自由地改变运动状态, 并在控制策略的作用下始终维持在平台范围内, 且受到跑步机加速度扰动较小(加速度峰值小于1 m/s2)。无论用户采用何种交互模式, 多运动模式交互控制架构都能保证用户运动的稳定性。

4 结论

为实现自适应跑步机多运动模式人机交互, 本文提出了分层控制架构, 该架构将控制系统分为感知层和控制层, 分别实现人体运动模式识别和控制策略切换与执行。为提高感知层识别结果的泛化性能, 本文提出了HSTGCN, 该方法基于足底压力鞋垫的多模态数据, 通过模态分离与融合及时空特征提取, 实现了高泛化性能的人体运动模式识别, 降低了识别方法对新用户数据的依赖性, 节约了数据采集及网络重复训练的时间。为了保证多运动模式交互的稳定性, 控制层首先设计了不同交互模式下的控制策略, 保证在单一模式下人机交互的稳定性, 并在感知层识别结果的基础上, 采用有限状态机定义了控制器状态及其转移条件, 实现了多运动模式切换控制。多运动模式交互实验结果表明:用户能够稳定地在自适应跑步机中实现站立、行走、倒退、奔跑和跳跃, 整个交互过程中用户姿态稳定, 无需主动调整步态, 验证了分层控制架构的有效性。

参考文献
[1]
LICHTENSTEIN L, BARABAS J, WOODS R L, et al. A feedback-controlled interface for treadmill locomotion in virtual environments[J]. ACM Transactions on Applied Perception, 2007, 4(1): 7-28. DOI:10.1145/1227134.1227141
[2]
VON ZITZEWITZ J, BERNHARDT M, RIENER R. A novel method for automatic treadmill speed adaptation[J]. IEEE Transactions on Neural Systems and Rehabilitation Engineering, 2007, 15(3): 401-409. DOI:10.1109/TNSRE.2007.903926
[3]
YOON J, PARK H S, DAMIANO D L. A novel walking speed estimation scheme and its application to treadmill control for gait rehabilitation[J]. Journal of Neuroengineering and Rehabilitation, 2012, 9(1): 62-74. DOI:10.1186/1743-0003-9-62
[4]
SLOOT L H, VAN DER M M, HARLAAR J. Self-paced versus fixed speed treadmill walking[J]. Gait & Posture, 2014, 39(1): 478-484.
[5]
SLOOT L H, HARLAAR J, VAN DER KROGT M M. Self-paced versus fixed speed walking and the effect of virtual reality in children with cerebral palsy[J]. Gait & Posture, 2015, 42(4): 498-504.
[6]
SCHERER M. Gait rehabilitation with body weight-supported treadmill training for a blast injury survivor with traumatic brain injury[J]. Brain Injury, 2007, 21(1): 93-100. DOI:10.1080/02699050601149104
[7]
DARKEN R P, COCKAYNE W R, CARMEIN D. The omni-directional treadmill: A locomotion device for virtual worlds[C]//Proceedings of the 10th Annual ACM Symposium on User Interface Software and Technology. Banff, Canada: ACM, 1997: 213-221.
[8]
SOUMAN J L, GIORDANO P R, SCHWAIGER M, et al. Cyberwalk: Enabling unconstrained omnidirectional walking through virtual environments[J]. ACM Transactions on Applied Perception, 2011, 8(4): 1-22.
[9]
SOUMAN J L, GIORDANO P R, FRISSEN I, et al. Making virtual walking real: Perceptual evaluation of a new treadmill control algorithm[J]. ACM Transactions on Applied Perception, 2010, 7(2): 1-14.
[10]
WANG W, YANG K M, ZHU Y, et al. Speed adaptation and acceleration ripple suppression of treadmill user system using a virtual force moment balance model[J]. Transactions of the Institute of Measurement and Control, 2020, 42(2): 322-329. DOI:10.1177/0142331219868924
[11]
HEJRATI B, CRANDALL K L, HOLLERBACH J M, et al. Kinesthetic force feedback and belt control for the treadport locomotion interface[J]. IEEE Transactions on Haptics, 2015, 8(2): 176-187. DOI:10.1109/TOH.2015.2404357
[12]
DE LUCA A, MATTONE R, GIORDANO P R, et al. Control design and experimental evaluation of the 2D CyberWalk platform[C]//2009 IEEE/RSJ International Conference on Intelligent Robots and Systems. St. Louis, USA: IEEE, 2009: 5051.
[13]
ASL H J, PYO S H, YOON J. An intelligent control scheme to facilitate abrupt stopping on self-adjustable treadmills[C]//2018 IEEE International Conference on Robotics and Automation. Brisbane, Australia: IEEE, 2018: 1639-1644.
[14]
HUA Y X, FAN J Z, LIU G F, et al. A novel weight-bearing lower limb exoskeleton based on motion intention prediction and locomotion state identification[J]. IEEE Access, 2019, 7: 37620-37638. DOI:10.1109/ACCESS.2019.2904709
[15]
ISLAM M, HSIAO-WECKSLER E T. Detection of gait modes using an artificial neural network during walking with a powered ankle-foot orthosis[J]. Journal of Biophysics, 2016, 2016: 7984157.
[16]
DEHZANGI O, TAHERISADR M, CHANGALVALA R. IMU-based gait recognition using convolutional neural networks and multi-sensor fusion[J]. Sensors, 2017, 17(12): 2735-2756. DOI:10.3390/s17122735
[17]
ORDÓÑEZ F J, ROGGEN D. Deep convolutional and LSTM recurrent neural networks for multimodal wearable activity recognition[J]. Sensors, 2016, 16(1): 115. DOI:10.3390/s16010115
[18]
ZHANG K G, WANG J, DE SILVA C W, et al. Unsupervised cross-subject adaptation for predicting human locomotion intent[J]. IEEE Transactions on Neural Systems and Rehabilitation Engineering, 2020, 28(3): 646-657. DOI:10.1109/TNSRE.2020.2966749
[19]
WANG J D, ZHENG V W, CHEN Y Q, et al. Deep transfer learning for cross-domain activity recognition[C]//Proceedings of the 3rd International Conference on Crowd Science and Engineering. Singapore: ACM, 2018: 1-8.
[20]
IVANOV K, MEI Z Y, PENEV M, et al. Identity recognition by walking outdoors using multimodal sensor insoles[J]. IEEE Access, 2020, 8: 150797-150807. DOI:10.1109/ACCESS.2020.3016970
[21]
ZHANG K, SUN M, LESTER D K, et al. Assessment of human locomotion by using an insole measurement system and artificial neural networks[J]. Journal of Biomechanics, 2005, 38(11): 2276-2287. DOI:10.1016/j.jbiomech.2004.07.036
[22]
TÖLGYESSY M, DEKAN M, CHOVANEC L, et al. Evaluation of the azure kinect and its comparison to kinect V1 and kinect V2[J]. Sensors, 2021, 21(2): 413-437. DOI:10.3390/s21020413
[23]
ANTICO M, BALLETTI N, LAUDATO G, et al. Postural control assessment via Microsoft Azure Kinect DK: An evaluation study[J]. Computer Methods and Programs in Biomedicine, 2021, 209: 106324. DOI:10.1016/j.cmpb.2021.106324
[24]
DEFFERRARD M, BRESSON X, VANDERGHEYNST P. Convolutional neural networks on graphs with fast localized spectral filtering[C]//Proceedings of the 30th International Conference on Neural Information Processing Systems. Barcelona, Spain: NIPS, 2016: 3844-3852.
[25]
YAN S J, XIONG Y J, LIN D H, et al. Spatial temporal graph convolutional networks for skeleton-based action Recognition[C]//32nd AAAI Conference on Artificial Intelligence. New Orleans, USA: AAAI, 2018: 912.
[26]
GANIN Y, USTINOVA E, AJAKAN H, et al. Domain-adversarial training of neural networks[J]. The Journal of Machine Learning Research, 2016, 17(1): 2096-2030.
[27]
TANG H, JIA K. Discriminative adversarial domain adaptation[C]//Proceedings of the 34th AAAI Conference on Artificial Intelligence. New York, USA: AAAI, 2020: 5940-5947.
[28]
QIAN Y Y, YANG K M, ZHU Y, et al. Local dynamic stability of self-paced treadmill walking versus fixed-speed treadmill walking[J]. Journal of Biomechanical Engineering, 2020, 142(4): 044502. DOI:10.1115/1.4045595
[29]
QIAN Y Y, YANG K M, ZHU Y, et al. Combining deep learning and model-based method using Bayesian Inference for walking speed estimation[J]. Biomedical Signal Processing and Control, 2020, 62: 102117. DOI:10.1016/j.bspc.2020.102117