2011年8月8日
近年来,人机交互系统出现了大量发展前景。本文概述了一种新型机器人设备与开源软件的集成,该集成可快速实现一系列交互功能。随后,我们介绍了一种神经康复应用的临床应用。
该实验的总体目标是将机器人集成到虚拟环境库中,并利用该机器人进行中风康复治疗。首先创建一个包装类以扩展触觉库,然后将该包装类集成到触觉库中。下一步是创建另一个包装类以扩展图形库,待包装类完成后,再将其集成到图形库中。
该H 3D API接口用于为中风患者测试建立有限状态机。随后利用集成机器人帮助中风患者进行康复治疗。该技术的主要优势在于,无需再为每种机器人编写不同的软件应用程序。
此外,全球各地的科研人员均可运行这些应用程序,而无需考虑其实验室使用何种机器人设备。该方法有助于回答康复、机器人学和运动控制领域中的关键问题,例如我们的神经系统在多大程度上可能受益于误差增强。该方法可为中风导致的功能障碍提供深入见解,同时进一步增进我们对正常运动功能的理解。
通常,刚进入康复阶段的中风患者在使用机器人辅助治疗时,需要克服一些障碍,例如学习如何握持手柄。当我们意识到需要一种具有较大操作工作空间且具备重力补偿功能的机器人时,便首次提出了这一方法。同时,我们希望尽量减少软件的重复编写,以便未来的研究生能够受益于前人的工作成果,而无需重复相同的工作。
本视频介绍了如何将全臂操作(WHAM)机器人与 www.hthreedpi.org 网站提供的开源代码进行集成。要将新型机器人集成到触觉库中,第一步是为 HAP 触觉渲染引擎编写一个封装类,该引擎用于控制 WHAM 机器人的运动。首先创建一个 CPP 文件和头文件。
本示例使用的文件名分别为 happy、wham、cpp 和 happy wham h。将 happy wham cpp 文件放入源目录中,即 Happy slash source,然后放置 happy。
将 wham h 放入头文件目录。happy/slash/include/slash/happy。在 happy wham h 的顶部包含机器人的主要头文件。
请注意,由于所包含的库是用 C 语言编写的,而 H 3D API 是用 C++ 编写的,因此需要使用 extern C 来解决编译器的名称修饰问题。在 Happy WHAM 中,需为机器人创建类,并在其中包含四个函数:触觉设备释放、触觉设备、更新设备参数和发送输出。请确保该类公开继承自 Happy HapticsDevice 类。
接下来,为该类创建头文件保护。然后在 happy WHAM 类下创建静态设备输出和静态触觉设备注册属性。接着,为与机器人相关的回调创建静态成员函数。
对于 WHAM 机器人,回调函数在公牛和触觉设备的初始化函数中使用。现在,由于原型已在头文件中设置,打开 happy wham.cpp 文件,并包含适当的头文件和命名空间。接下来,在 Happy Wam.cpp 中定义构造函数和析构函数。
然后在 Happy Wam cpp 中注册该设备。现在在 happy Wam cpp 中定义四个继承的函数和回调函数。update device values 函数用于告知计算机机器人手臂的位置以及机器人对环境施加的力的大小。
创建 Happy Wrapper 类后,下一步是将该封装构建到 Happy 库中。WAM 依赖于一些 H 3D API 在原始形式下并不依赖的库。因此,需要将这些库添加到 happy 中。
进入 H 3D 2.1/happy/build 目录并编辑 CMakeLists.txt 文件。在标记为“Set optional libs”的行后添加依赖库。打开命令行终端,导航至 H 3D 2.1/happy/build 目录,依次输入以下命令:make、make install,以完成新机器人与 H 3D 开源代码的集成。
为场景图编写第二个包装类。该 API 称为 H 3D API。此示例使用一个名为 wam device 的包装类。
导航至源目录 H 3D AP I / source,并创建 WAM 设备的 CPP 文件 wam device.Cpp。添加所有 H 3D PI 设备的标准源代码。接着,将 Wam device H 头文件放入头文件目录中。
Wam 设备 H 应包含所有 H 3D API 设备的标准头文件。现在包装类已创建完毕,通过编辑目录 H three DPI / build 中的 C make lists 文本,重新构建 H 3D PI 库。最后进入目录 H 3D PI / build。
使用命令 CMake、点伪生成(pseudo make)和伪生成安装(pseudo make install)重建 H 3D API 库。新的封装类现已可与机器人配合使用。在安装适当的封装类后,将创建一个有限状态机,以控制 Barrett WHAM 机器人进行目标指向任务的实验协议。该状态机的状态包括试验开始、启动、目标接触以及试验结束。
试验开始阶段始于目标的分配。每次试验的目标位置可以随机设置,也可以从文件中读取设定。试验开始阶段结束,随即进入发射阶段。
当受试者的手启动并向目标移动的速度超过速度阈值(通常为 0.06 米/秒)时,启动阶段结束,目标接触阶段开始。当光标接触到目标时,目标消失,目标接触阶段结束,试验结束阶段开始。
试验结束状态会向数据采集软件发出信号,以在数据文件中添加标记,表示本次试验的结束。除非已完成最后一次试验,否则试验结束状态的终止将触发下一次试验的开始状态,并分配一个新的目标。本节演示了一种用于中风患者康复的不同机器人,称为phantom。
通过将幻影装置的封装类代码代入适当的库中,可将新型机器人集成到虚拟环境中。此处使用的是一个名为虚拟现实机器人与光学操作装置(ROOM)的三维触觉图形系统。该系统结合了在半透银镜叠加显示器上实现的投影立体头戴追踪渲染技术与一套机器人系统,后者能够记录手腕位置并生成力矢量。一套影院级数字投影仪显示图像,覆盖一个五英尺宽的显示区域,形成110度的宽视角。
红外发射器通过液晶快门眼镜同步左右眼的独立图像。使用Ascension Flock of Birds磁性元件追踪头部运动,从而以适当的以头部为中心的视角渲染视觉显示。带有腕部夹板的外骨骼肌腱手套有助于维持腕部和手部的中立对齐。
将机器人手柄的中心置于桡腕关节远端的前臂上。这使得其作用力可施加于腕部,同时允许手部自由活动。使用由弹簧驱动的威尔明顿机器人外骨骼重力平衡矫形器来减轻患者手臂的重量。
坐在患者旁边的治疗师使用跟踪设备在显示屏上移动光标。在患者前方,指导其使用机器人手柄追逐光标。机器人通过视觉反馈和自身产生的力提供误差增强训练。
当患者的光标偏离治疗师的光标时,瞬时误差矢量 E 被定义为治疗师光标与患者手部位置之间的差异。该误差在误差增强过程中以 1.5 E 的倍数进行视觉放大。此外,向患者手臂施加一个大小为 100 E 的误差增强力,该力被程序设定为最大不超过 4 牛顿。
出于安全考虑,误差增强会放大患者感知到的误差,从而促进重新学习过程。治疗方案要求患者练习若干特定动作,包括向前和向侧方伸展时的肩肘联动,以及对角线方向穿越身体的伸展动作。在接下来的演示中,将更换为高级代码,并使用 Barrett WHAM 机器人。
本项任务的目标是让健康受试者或卒中患者在半透明的绿色球体内捕捉一个虚拟投射物。如果患者的手移出球体范围,球体将变为红色,同时机器人为患者手臂提供错误增强反馈。当患者在规定空间内成功捕捉到投射物时,球体保持绿色。
该图显示了中位数到达误差。每个圆点代表对两分钟典型功能性运动区段所测得的中位数误差。尽管患者在两周内总体呈现进步趋势,但并非每天都表现出改善。
该图显示了误差增强在选择性降低运动间变异性的方面所产生的益处。上方的图显示了对照组的数据,下方的图显示了治疗组的数据。每种颜色代表不同的受试者。
两条水平线显示了任务边界的所在位置。受试者的目标是在这些边界内接住虚拟投射物。圆点的位置显示了每位受试者最接近接触点的位置。
在投射图中,叠加于原始数据上方的蓝色半透明直方图显示了该组的运动分布情况。在前部轴向上,卒中患者共完成了600次抓取任务试验,其中前200次试验和后200次试验期间未提供误差增强反馈,而第201至400次试验期间未给予反馈。机器人向患者提供误差增强反馈,显著提高了患者在规定边界内成功抓取目标的能力。
完成该操作流程后,传统的康复方法仍然可以继续实施,但借助机器人,我们可以在多次重复试验中持续量化患者手部的实时位置。该技术为神经工程领域的新研究开辟了道路,使我们能够在特定区域内探索模拟的伸手运动,从而获得多种可能的解决方案。观看本视频后,您应能够理解如何扩展所选康复机器人的 H 3D API 库,并应用多种触觉图形界面来评估和治疗卒中患者。
因此,与机器人协作可能存在潜在危险,在选择用于此类人机交互的机器人时应仔细考量。在最近的项目中,我们选择了 Barrett WHAM 机器人,因为它功能更强大且具备反向驱动能力。反向驱动能力意味着,如果我们进行相应编程,机器人几乎可以感受不到阻力,同时它也是目前可用于人机交互的最安全选项之一。
它配备了一个独立的看门狗计算机,用于监控主计算机,并在出现任何异常时禁用系统;动态制动功能则确保系统在不工作时始终处于阻尼状态。尽管许多机器人性能各异,但它们的许多功能确实存在重叠。因此,我们技术在不同机器人之间的可移植性可能促进实验室之间的新合作与资源共享。
明确的是,诸如本研究中所展示的训练方法为恢复患者功能提供了令人鼓舞的证据,同时也可增强体育训练、遥操作音乐表演、外科手术技术以及任何需要重复练习的任务的训练效果。
本文讨论了将机器人设备与开源软件集成用于神经康复应用,特别是针对中风治疗。该方法可在虚拟环境中利用一系列交互式功能。
这项工作解决了转化神经科学和康复工程领域的一个关键瓶颈:不同机器人平台之间缺乏软件互操作性。通过使单一代码库能够与多种触觉设备对接,该方法降低了开发成本,并支持对运动学习干预措施进行可重复的临床前评估。这一能力通过在不同实验室间标准化行为读数,提高了对神经康复疗法早期靶点验证的预测可信度。
该方法通过将机器人系统转化为用于运动环路调控的标准化表型分析工具,契合从发现到临床前研究的连续过程,并可直接应用于神经康复药物研发中的先导化合物筛选。