APP下载

上肢康复机器人训练系统的设计与实现

2015-01-27常国权冯慧玲郭晓波

自动化与仪表 2015年2期
关键词:PC机微控制器电路设计

常国权,冯慧玲,郭晓波

(安阳工学院 计算机科学与信息工程学院,安阳 455000)

康复机器人作为医疗机器人的一个重要分支,已成为机器人领域的一个研究热点。目前,康复机器人已广泛应用到康复护理、假肢和康复治疗等方面,这不仅促进了康复医学的发展,也带动了相关领域的新技术和新理论的发展。随着机器人技术和康复医学的发展,康复机器人已经成为一种新的运动神经康复治疗技术,利用机器人技术进行康复训练对于中风患者肢体功能的恢复具有重要的意义[1]。有研究表明,对脑中风或有运动功能障碍的患者有针对性的进行肢体康复训练对促进其恢复运动功能有着重要的作用。

1 系统概述

为帮助患者有效地进行上肢康复训练,本上肢康复机器人训练系统主要由3部分构成:手臂运动机械装置,该机械装置主要用来固定患者的上肢、手腕等,并在肩关节、肘关节、腕关节以及手掌关节位置安装有角度传感器与压力传感器;数据采集系统,该系统采用32位STM32微控制器实现对传感器信号变换、数据处理与数据传输等功能,数据传输采用成熟的WiFi无线通信技术和PC机通讯,增加了系统的稳定性和可靠性;基于游戏人机交互的数据管理及分析系统,患者可通过机械手臂控制PC机游戏运动画面进行互动,并可针对不同患者选择游戏的种类、模式和难易程度,同时把患者在肢体运动过程中采集到的传感器数据存入数据库,实现对数据的分析、对比、总结、评估等功能。该系统把复杂的底层控制功能通过游戏的方式表达在用户界面上,使得患者可与康复机器人进行人机交互,增加了患者康复训练的趣味性,提高了康复训练的效果[2]。系统总体结构示意如图1所示。

图1 系统的总体结构示意图Fig.1 Schematic diagram of the overall structure of the system

2 系统硬件设计

2.1 系统电源电路设计

由于系统采用的STM32微控制器的工作电压是3.3V,而串口无线WiFi模块、角度传感器等需5 V电压,考虑到5 V电压系统需要的功率稍大,因此,系统电源设计采用了效率更高、功能更强的DC-DC转换器LM2576-5.0。LM2576系列是3 A电流输出降压开关型集成稳压电路,它内含固定频率振荡器和基准稳压器,并具有完善的保护电路,包括电流限制及热关断电路等,利用该器件只需极少的外围器件便可构成高效稳压电路[3]。而AMS1117则给低功耗的STM32微控器等模块提供3.3 V工作电压。自恢复保险丝F1和稳压二极管D3构成电压保护电路,当因某原因致使输出电压超过3.5 V时,D3导通,使F1自动保护。系统电源设计如图2所示。

图2 系统电源设计Fig.2 Design diagram of system power supply

2.2 数据采集电路设计

从成本和性能综合考虑,主控制器采用STM32-F103RBT6微控制器,它是基于Cortex-M3核心的32位处理器,具有高性能、低功耗、低成本等优点[4]。该芯片内部集成了全速USB2.0设备接口模块和16通道的12位高精度A/D转换器、USART接口等,单芯片即可完成设计任务,避免了复杂的接口电路设计,有效降低了系统接口的复杂度和开发难度,在很大程度上提高了系统的稳定性[5]。

此处的数据采集主要用到了STM32的12位高精度A/D转换器、LM324运算放大器以及INA118精密仪表放大器。如前所述,该上肢康复系统有7路采集传感器,肩关节有3路角度传感器,肘关节有2路角度传感器,腕关节有1路角度传感器,手掌关节有1路握力传感器,这些传感器输出的都是模拟信号,需要经过处理以后送入到STM32的A/D转换器转换为数字信号。角度传感器采用的是WDG-AM34-360,该角度传感器将机械转动或角位移转化为电信号输出,5 V工作电压,输出信号0~5 V。为了保证传送到STM32 A/D转换器的模拟信号不超过3.3 V,此处采用LM324运算放大器对角度传感器输出的0~5 V模拟电压进行线性转换为0~3.3 V电压。测量手掌关节的握力传感器采用的是PLD204D-13,它是内置温度补偿、零点平衡校正、量程为10 kg的电桥压力传感器,它的激励电压是直流5~10 V,灵敏度为1.0 mV/V,就是说当该传感器承受10 kg压力、5 V激励电压的情况下它输出的差分电压信号才为5 mV,因此,这里采用了TI公司的精密仪表放大器INA118对该差分信号进行放大。INA118具有精度高、功耗低、电路设计简单等优点,适合对这种微小信号进行放大[6]。所有传感器的输出信号经过相应的电压转换以后送入到STM32的A/D通道转换为数字信号。系统数据采集电路设计如图3所示。在图3中LM324运算放大器对2路肩关节角度传感器进行电压转换,肘关节和腕关节传感器转换图跟该图类似。

2.3 无线传输电路设计

如前所述,STM32微控制器在把7路传感器信号转换为数字信号后,需要再发送给PC机进行处理并实现患者和游戏界面的人机交互操作,出于灵活性和方便性考虑,这里采用了HLK-RM04串口WiFi无线模块进行无线通信传输。HLK-RM04是嵌入式UART-ETH-WiFi(串口-以太网-无线网)模块。它是基于通用串行接口的符合网络标准的嵌入式模块,内置TCP/IP协议栈,能够实现用户串口、以太网、无线网(WiFi)3个接口之间的转换。通过HLK-RM04模块,传统的串口设备在不需要更改任何配置的情况下,即可通过Internet网络传输数据。为用户的串口设备通过网络传输数据提供完整快速的解决方案[7]。

图3 系统数据采集电路设计图Fig.3 System design diagram of data acquisition circuit

要使串口WiFi无线模块正常工作,必须要先对它进行正确的配置,配置模块可使用网络透传模式或AT指令模式。网络透传模式比较灵活方便,因此预留了一个LAN网络接口,可方便地通过LAN网络接口和PC机连接对WiFi无线模块进行配置。正常上电后,模块会检查当前的网络串口配置是否正常,如果网络连接正常,则模块自动进入网络透传模式,否则进入AT指令模式。这里的串口WiFi无线模块和PC机人机交互之间被配置成C/S模式,即串口WiFi无线模块在这里被配置成客户端,PC机作为服务器。串口WiFi无线模块具有断开自动重新连接功能,它的第9引脚CONNECT就是表示C/S模式是否以TCP/IP协议的方式正确连接上的标志,CONNECT若输出高电平则表示网络连接已正确连接,未连接则输出低电平。网络接口采用的是把变压器和RJ-45接头集成到一起的 HR911105A,HR911105A符合 IEEE 802.3标准,采用金属外壳封装,抑制EMI性能较好,而且可减少电路板空间和简化PCB板布局,使信号传输更加稳定可靠[8]。无线传输电路设计如图4所示。

图4 无线传输电路设计Fig.4 Design diagram of wireless transmission circuit

3 系统软件设计

整体软件在MDK环境下采用C语言编写,采用ST-LINK仿真器对程序进行调试与下载。系统采集测试图如图5所示。STM32微控器上电复位后,首先进行系统初始化,如配置时钟、设置中断向量等,然后对串口和ADC进行初始化,初始化完成后,STM32微控制器检测串口WiFi无线模块的第9引脚CONNECT的输出电平,如果CONNECT的输出为高电平1,则表明串口WiFi无线模块已和服务器建立了网络连接,STM32微控制器就对肩关节、肘关节、手掌关节等传感器采集到的信号依次进行AD转换,并把AD转换的数据以浮点精度进行保存,通过串口依次发送给WiFi无线模块,由WiFi无线模块进行网络打包并传送给PC机人机交互游戏软件。若通信工程中网络中断,WiFi无线模块可实现自动重连,此时CONNECT的输出为高电平0,STM32微控制器检测到该信号后,会停止AD转换和串口数据发送,直到网络重新建立起连接为止。系统数据处理流程如图6所示。

图5 系统数据采集测试Fig.5 System data acquisition test diagram

图6 系统数据处理流程Fig.6 Flow chart of system data processing

要把采集的传感器数据通过无线网络正确发送到PC机,需要对串口WiFi无线模块的参数进行配置。如前所述,正常上电后,WiFi无线模块会检查当前的网络串口配置是否正常,如果LAN网络接口连接正常,则模块自动进入网络透传模式,否则,进入串口AT指令模式。在串口AT指令模式,可以使用特定的串口AT指令集对WiFi无线模块进行参数配置。使用网络透传模式对WiFi无线模块进行参数配置具有简单、方便、灵活等优点。系统参数配置流程如图7所示。

图7 系统参数配置流程Fig.7 Flow chart of the system parameter configuration

PC机人机交互软件设计采用的是VC++6.0和Unity3D综合型游戏开发工具开发而成,VC++6.0主要实现网络Socket编程、数据分析与处理、数据库的管理等功能[9],在VC++中建立一个专门的线程用来监听指定的IP和端口号,当Socket收到WiFi发送过来的传感器数据后进行数据的解包和校验,并把传感器数据值大小和游戏界面的相关动作及声音关联起来,以实现趣味性的人机交互。对数据库的管理是通过调用相应SQL语句来实现,并在设置的时间间隔内对采集的数据进行存储。Unity3D主要完成创建诸如三维视频游戏、建筑可视化、实时三维动画等内容的设计,利用交互的图型化开发环境可简化复杂三维动画素材的设计工作[10]。

4 结语

该系统采用32位STM32微控制器和WiFi无线通信技术设计,并采用基于游戏方式的人机交互模式,不但提高了系统的稳定性和可靠性,而且提高了人机交互界面友好性和趣味性,可更好地帮助患者进行上肢康复训练。本系统在安阳神方康复机器人有限公司测试使用后获得较好效果,并在多家医院的实际使用进一步验证了系统的稳定性和可靠性。

[1]徐宝国,彭思,宋爱国,等.基于运动想象脑电的上肢康复机器人[J].机器人,2011,33(3):53-59.

[2]张颖,易金花,张晓玉,等.基于嵌入式Linux的上肢康复机器人用户系统研究[J].电子技术应用,2014,40(5):23-26.

[3]National Semiconductor Corporation.LM2576 Series SIMPLE SWITCHER 3A Step-Down Voltage Regulator[P].2004.

[4]STMicroelectronics.STM32F103xx datasheet[DB/OL].http://www.st.com/.2007.

[5]唐伟,于平,李峥辉.STM32F103x的USB多路数据采集系统设计[J].单片机与嵌入式系统应用,2009(8):39-41.

[6]Texas Instruments Incorporated.INA118 datasheet[DB/OL].http://www.ti.com/.2000.

[7]深圳市海凌科电子有限公司.HLK-RM04使用手册[DB/OL].http://www.hlktech.com/.2012.

[8]汉仁电子有限公司.带磁模块和LED的单端口RJ45连接器HR911105A手册[P].2008.

[9]孙鑫,余安萍.VC++深入详解[M].北京:电子工业出版社,2012.

[10]路朝龙.Unity 3D游戏开发从入门到精通[M].北京:中国铁道出版社,2013.

猜你喜欢

PC机微控制器电路设计
TASKING针对英飞凌第三代AURIX微控制器推出多核开发环境
基于Multisim的单管共射放大电路设计与仿真分析
一种车用醉驾检测电路设计
Altium Designer在电路设计中的应用
负反馈放大电路设计
用于高品质电动汽车的分布式并行计算
基于三菱FXPLC的感应淬火机床与PC机的串行通信实现
用VC++实现PC机与单片机的串行通信
VC.NET下实现dsPIC单片机与PC机的通信
基于单片机与PC机的电气量采集系统设计