APP下载

基于神经网络PID控制器的外骨骼系统设计

2021-06-03游博洋王险峰逄万山党志强

计算机技术与发展 2021年5期
关键词:感受器外骨骼指令

游博洋,王险峰,赵 玲,李 龙,逄万山,党志强

(东北石油大学 计算机与信息技术学院,黑龙江 大庆 163318)

0 引 言

近年来,外骨骼机器人在动力、传感器、控制[1]/步态算法等方面逐渐成熟[2],许多研究者设计了各式各样的外骨骼系统并考虑用于生活、医疗、军事等领域,分别对于各关节机械结构[3]、整体电控系统[4-5]、步态稳定性[6-7]、传感器系统[8-10]以及特殊驱动方式[11-14]等方面进行了相应的研究。目前,国内外在该领域已较为成熟,但并未普及,其市场缺口极大,且由国务院法制办于2015年7月发布《残疾预防和残疾人康复条例(草案)(征求意见稿)》显示,康复外骨骼领域也受到政府支持,同时研究者也对其在康复应用中的可行性进行了相应的分析[15]。但由于外骨骼机械结构、软硬件系统复杂等原因,上市公司开发的外骨骼也很难获得CFDA认证。

该文所实现的外骨骼具有成本较低、易扩展、能无线控制等优点,具有两种控制方式可按需切换,可作为一套外骨骼框架在未来进行进一步优化。且由于足底EMG存在超前ZMP约160 ms的优势[8],本外骨骼设计同样利用该特性提高外骨骼机器人行走稳定性。

1 外骨骼结构设计

1.1 外骨骼系统的整体结构设计

由于外骨骼机器人整体作为一个可供人穿戴的机构,需要保证使用安全的同时足够轻便,且拥有足够的活动范围和尺寸可调整,整体应允许承受一定的冲击力。设计尺寸参考由国家技术监督局发布的《中国成年人人体尺寸(GB/T 10000-1988)》中的人体数据,并结合个人情况进行一定调整。

如图1所示,该外骨骼机器人整体结构主要由腰部整体结构、髋关节整体结构、膝关节整体结构、踝关节整体结构、大腿调节机构、小腿调节机构和脚掌结构组成。本设计中单腿有3个电机驱动的关节和1个可自由转动的关节,保证了人肢体运动时良好的跟随性。大腿和小腿处各有一个由直线导杆、下部固定块、上部固定块、可调固定块构成的伸缩调整机构,使得该外骨骼机器人能适配不同体型的人。

1.腰部整体结构 2.髋关节整体结构 3.膝关节整体结构4.踝关节整体结构 5.大腿调节机构 6.小腿调节机构 7.脚掌结构

1.2 腰部结构设计

腰部结构由腰部固定板、摆动固定块、转动轴和髋关节电机安装板组成。腰部固定板嵌入于摆动固定块中,髋关节电机安装板和摆动固定块之间可自由转动,两腿部外骨骼因此可自由向左右两边转动。

1.3 髋关节结构设计

髋关节结构由摆动固定块、电机安装板、电机安装板盖板、57步进电机、电机减速机和大腿上板组成。

髋关节在人体或机器人中均用于连接大腿和腰部,人体的髋关节由股骨头和髋臼构成,其能承受人体上半身的重量,可作多轴的运动,但因股骨头深深嵌入髋臼内,且有各种韧带的限制,其运动幅度远逊于肩关节。

图1中,57步进电机与电机减速机间由M5螺丝固定,电机安装板与电机安装板盖板于两端柱形沉头孔通过M8六角头螺栓固定。带编码器的步进电机通过齿轮减速机输出到大腿上板,可带动整个大腿前后运动。由电机安装板和电机安装盖板内结构构成的机械限位也从结构上有效地保证了使用者的安全。

1.4 膝关节结构设计

膝关节结构由大腿上板、伸缩调整机构、膝关节上板、膝关节连接板和电动推杆组成。

人体的膝关节是由股骨下端、胫骨上端和髌骨组成的,是人体中最大且最复杂的关节,属于滑车关节。长期体力劳动者和肥胖人群易出现膝关节相关病症,使用该外骨骼机器人减轻关节负荷对该类人群有一定帮助。

该膝关节设计由电动推杆作为动力,其核心为驱动电机、减速齿轮、螺杆、螺母等部件组成的直线驱动器。本设计中选择使用合适行程的电动推杆,与膝关节其他结构形成机械限位,使膝关节转动角度为0~90度,且整体设计紧凑。伸缩调整机构由直线导杆和可调固定块组成,通过更换固定块实现对不同体型人群的适配。

1.5 踝关节及脚掌结构设计

踝关节及脚掌结构由踝关节上板、57步进电机、电机减速机和足部装配体(脚板、脚板安装板、鞋子固定环、脚部电机支架)组成。

人体踝关节由胫骨、腓骨下端关节面以及距骨滑车构成。从足与小腿间角度不同可分为背屈和跖屈,两者由足与小腿间的角度区分。背屈时,足尖朝上,而足部与小腿间的角度小于90度;跖屈时,足尖向下,足与小腿间的角度大于90度。由于跖屈时踝关节松动容易发生扭伤,若可使用外骨骼调整行走时脚平面仰角,则有可能降低踝关节扭伤的可能。

踝关节部分驱动使用57步进电机,脚板上即为脚底压力传感器阵列,使用者可赤脚或穿鞋将足放上脚板,然后使用鞋子固定环将足部固定。电机固定架上有限位开关,可在超过限位时断电保证用户安全。

2 外骨骼硬件设计

2.1 外骨骼系统的整体硬件设计

外骨骼系统设计中分为感受器、效应器和核心控制器三部分。各部分都有独立电池并由控制器执行各部分电源管理。

本外骨骼硬件设计中,主要由感受器采集使用者数据,核心控制器负责复杂运算,效应器负责执行控制信号。各部分均可通过有线或无线两种连接方式进行通信,且电源独立各部分可分开工作。

2.2 感受器硬件设计

感受器部分为下肢感受器单元两种感受器单元。如图2所示,感受器单元包括stm32f103rct6局部控制器、电源管理模块、肌电传感器阵列[16]、各关节电位器阵列、无线通信模块和压力传感器阵列。图2给出了该感受器的硬件原理框图,硬件可由所述结构实现所需功能。

图2 感受器硬件原理框图

电池经过电源管理电路后分别接入电源共享接口、稳压电源电路,并与单片机通信发送电源信息,该外骨骼系统电网可通过电源共享接口并入。稳压电源获得的5 V、3.3 V电压分别给控制器和各传感器供电。EMG肌电传感器通过差分电极采集表面肌电信号后放大、滤波以及A/D转换获得肌电信号发送给单片机;HX711为一款国产的两路24位可选增益的A/D转换器,内部集成了稳压电源、片内时钟振荡器等电路,具有集成度高、抗干扰性强的优点。该ADC芯片典型工作电流小于1.7 mA,断电电流小于1 μA,工作电压范围为2.6 V~5.5 V,工作温度范围为-20℃~+85 ℃。本设计中设置增益为128,使用80 Hz输出数据速率,使用电桥电路接入FSR压力传感器,控制器将定时请求ADC数值并换算为压力值;WH148 B10K电位器为一款长寿命可调电位器,本设计选用10 kΩ款,其三个引出端分别接入GND、3V3和stm32的ADC端口,使用内置12位ADC进行采样换算关节角度;nRF24L01无线收发器是一款由NORDIC公司生产的单片无线收发器芯片,可工作在2.4 GHz~2.5 GHz,其工作温度为-40 ℃~+80 ℃,拥有极低的电流消耗,在发射功率为0 dBm时,发射和接收模式中仅消耗约12 mA,其无线数据传输速率支持1 Mbps/2 Mbps,并拥有126个通讯通道,6个数据通道;CAN总线作为国际上应用最广泛的现场总线之一,其高性能和可靠性得到了业界广泛认同,故本设计选择CAN作为有线通信方式。感受器中使用ST公司的STM32F103RCT6单片机作为控制器,该MCU具有一个32位ARM Cortex-M3架构RISC处理器,具有72 MHz的较高速度,丰富的外设、较强的处理能力和256KB ROM/48KB RAM且集成CAN控制器使其被选择成为本设计中感受器和效应器的控制核心。由于该芯片集成了CAN控制器,为实现CAN总线故还需要一片CAN收发器,而SN65HVD230为TI公司生产的3.3 V CAN收发器,使用该收发器的CAN总线具有较高通讯速率,最高可达1 Mb/s,抗干扰能力较好且具有高可靠性。该收发器可用于较高干扰环境下,工作在低电流等待模式时,其典型电流仅有370微安。SN65HVD230 CAN收发器在这里将实现二进制码流和差分信号的转换。各个传感器采样后通过stm32f103rct6微控制器进行汇总,并根据不同模式通过无线收发器或微控制器中集成的CAN总线与效应器或高性能核心控制器通信。

2.3 效应器硬件设计

效应器部分为下肢效应器单元两种效应器单元。图3中可以看到效应器单元包括stm32f103rct6局部控制器、电源管理模块、电机及其编码器、无线通信模块和压力传感器阵列。

图3 效应器硬件原理框图

效应器硬件结构与感受器大体相同,主要区别在于效应器中没有EMG肌电传感器和用于测量关节角度的电位器,但相应增加了外骨骼所需要的全桥有刷直流电机驱动器、编码器电机、闭环步进电机驱动器、57步进电机以及PID电流环所需的ACS712霍尔电流传感器。

本外骨骼机器人设计中使用了带编码器的电动推杆,其核心动力由一个有刷直流电机提供。该电机使用的编码器为AB相增量式正交霍尔编码器,由两个方波脉冲相位可解码得到电机位置变化方向和距离。全桥电机驱动器使用HIP4082IBZ全桥式功率驱动芯片,具有80V/1.25A峰值驱动能力,具有可程控的死区时间,其控制范围为0.1 μs~4.5 μs,使用时驱动器的偏置电压由自举和电荷泵来保证,可用于UPS系统、直流电机控制、隔离型全桥式开关稳压电源等领域。功率场效应管选择N型沟道的IRF3205,其Vds典型值为55 V,Id持续可达110 A,具有极低的导通阻抗,高效可靠且应用范围超广;电流采样部分选择Allegro MicroSystems公司的ACS712霍尔电流传感器,使用时将其串联于电路。该电流传感器外围电路简单,可支持80 kHz~120 kHz的带宽,拥有μs级响应速度,精度在-40℃~+85℃时小于2%且可测交直流电流;外骨骼髋关节和踝关节部分选择使用57步进电机,驱动器将直接选择配套的成品闭环步进电机驱动器。该步进电机驱动器支持宽电压输入,用户可使用交流或直流24 V~60 V供电,信号输入使用光耦隔离,逻辑输入电流7 mA~16 mA,性能优越便于控制故选择使用。

2.4 核心控制器硬件设计

如图4所示,核心控制器包括OrangePi PC ARM控制板、MCP2515 CAN控制器、电源部分、九轴姿态传感器、无线通信模块五个部分。

图4 核心控制器硬件原理框图

核心控制器选择使用开源的OrangePi PC ARM开发板作为控制核心。该嵌入式控制板尺寸为85 mm*55 mm,可运行常见的Android、Ubuntu、Debian系统。其使用了全志H3的SoC,拥有1 GB DDR3运行内存。全志H3拥有四核ARM Cortex-A7处理器,并含有USB、UART和SPI等外设可供使用;MPU9250为九轴姿态传感器,其内部除集成了基本所需的3轴陀螺仪(角加速度计)、3轴加速度计和3轴磁力计(电子罗盘)外,还集成了数字运动处理器(DMP),通信使用传输速率可达400 kHz/s的IIC总线。其可编程陀螺仪最大可支持±2 000°/秒(dps),可编程加速度计最大可支持±16 g,以及磁力计最大可支持4 800 μT;由于全志H3内部及OrangePi PC开发板上未集成CAN控制器和收发器,故选择使用分立式SPI接口的CAN控制器MCP2515和CAN收发器SN65HVD230。MCP2515是由Microchip公司生产的一款CAN控制器。该CAN控制器完全支持CAN V2.0B技术规范,通讯速率为1 Mb/s。其工作电压为2.7 V~5.5 V,典型工作电流为5 mA,休眠模式的典型待机电流为1 μA。且由于其工业级(I)工作温度范围较宽,为-40 ℃~+85 ℃,作为CAN控制器将实现由核心控制器编程要求的成帧处理、CRC校验、应答检测、硬件过滤等功能。

3 外骨骼软件设计

3.1 外骨骼系统的整体软件设计

整个外骨骼系统硬件分为感受器、效应器和核心控制器三部分,因此对应的软件开发也包含这三部分。其中包含了模拟分时操作系统、数据通信协议、ZMP算法、神经网络PID这4个关键技术点

外骨骼系统分为主动和被动两种控制模式(见图5),且被动模式可无线遥控控制。主动模式中,外骨骼机器人将通过传感器实时采集整体姿态、关节角度等信息,使用内置步态算法控制外骨骼;被动模式中,外骨骼感受器单元将采集人体关节角度,同步控制外骨骼机器人,由于整体通信指令通用,在实现无线通信模块后即可无线控制外骨骼机器人。

图5 外骨骼系统主动-被动模式软件框图

感受器单元采集传感器数据后,若当前状态为主动模式,则接收核心控制器数据请求指令,将数据传回;若为被动模式,则直接与效应器通信,发送同步控制指令。在核心控制器单元无效的情况下,模式切换可由效应器单元上的应急主动/被动切换开关和有线/无线切换开关实现。

效应器单元在主动模式时,一方面采集传感器数据保持外骨骼目标角度并传回感受器核心控制器单元,一方面接收执行核心控制器的控制指令;被动模式时则直接接收感受器传来的控制指令。

核心控制器在主动模式下,通过向效应器和感受器请求传感器数据,通过步态算法获取下一步运动状态,然后向效应器发送指令;切换到被动模式后,核心控制器进入低功耗休眠状态,只接收唤醒指令和模式切换请求。正常情况下,模式切换可由核心控制器单元上的应急主动/被动切换开关和有线/无线切换开关实现。

3.2 感受器端和效应器端软件设计

感受器和效应器中使用的控制板为STM32F103RCT6,其支持使用面向对象的编程语言C++进行软件开发。在编写过程中各部分硬件被抽象成类,运用操作系统的思想,程序结构模拟分时操作系统,实现了轻量级的程序调控。

3.2.1 模拟分时操作系统

本设计中模拟分时操作系统的主要程序框图如图6所示。模拟分时操作系统在bootloader启动后开始初始化操作系统所需数据结构,如内存分配表、任务内存指针、系统时间、电源信息表、系统任务表、用户任务表。完成数据结构初始化后开始进行定时器中断配置,初始化系统时钟并启动,在系统启动后用户可根据静态结构体系统时间来获取微秒至年的时间,并可选编译实时时钟芯片DS1603和万年历类。随后开始初始化系统对象,并执行相应构造函数和配置、启动函数。该模拟分时操作系统至此完成基本的初始化,并在这里暴露了一个函数接口可供用户进行一些硬件、对象的初始化操作。用户设置程序结束后,系统开始装载各个非阻塞的用户时间片,对于可能阻塞的延时函数,本操作系统进行了单独的封装,可在阻塞时运行其他时间片,保证了系统整体的正常运行。至此系统完成所有初始化,进入时间片轮转。系统会首先运行系统进程时间片,如进行系统时间刷新,然后执行调度程序,调整用户进程顺序和时间节点后运行用户进程时间片,随后完成本次时间片轮转。

图6 模拟分时操作系统的程序框图

3.2.2 数据通信协议

数据通信协议(data communication protocols)是为保证数据通信双方能有效可靠的通信而进行的一系列规定。由于NRF24L01无线2.4 GHz通信中容易因距离、环境电磁波干扰和障碍物阻碍等造成丢包和数据出现错误,以及CAN报文在高负载时可能出现丢包的情况,本设计中有线CAN通信和无线2.4 GHz通信均使用该通信协议保证数据指令无误,且拥有不同的通信程序对象保证不同数据连接互不干扰。程序流程如图7所示。通信时间片开始后,程序根据协议对数据帧结构(见表1)定义进行对帧头的检测,作为获取后续数据的入口。

表1 数据帧结构

在接收到无关数据后会直接抛弃,而在检测到帧头后,程序准备获取指令长度n。协议规定,当等待接收数据超过一定时间后,即该帧视为无效帧,直接结束本次通信时间片。若在有效时间内获取指令长度,则将后续n+2读取到内存缓冲区。完成读取后将数据和指令类型进行累加和校验(Checksum算法),判断有效后检测帧结尾,若均有效则将指令和指令类型打包到指令数据结构提交各操作系统进行下一步操作。

图7 数据通信时间片程序流程

系统获取指令后,将指令数据结构传递给指令响应程序,该程序将对指令进行相应的解析和执行,程序流程如图8所示。程序将通过对指令结构体中的指令类型和列表指令类型进行对比,确定指令类型相同后通过函数指针执行相应程序。

图8 指令响应程序流程

4 结束语

使用stm32f103rct6、orangepi嵌入式开发板、无线通信模块以及相关的传感器接口电路,设计实现了外骨骼系统。该外骨骼系统可根据脚底压力和关节角度,主动引导人步态实现行走,也可以被动跟随人肢体运动,且支持无线遥控外骨骼肢体,有效提高了外骨骼机器人的易用性和实用性,并使用机械结构限位、限位开光强制关断和软件限位三重保护,增强了外骨骼机器人安全性,可作为基础外骨骼机器人框架,具有较好的应用价值。

猜你喜欢

感受器外骨骼指令
下肢外骨骼康复机器人的研究与发展
2种丽细蛾触角感受器超微结构特征
基于抽象汇编指令的恶意软件家族分类方法
探索基于真实学习体验的生物学情境教学
《单一形状固定循环指令G90车外圆仿真》教案设计
钩臀蚁蛉幼虫触角和颚管感受器超微结构观察
新机研制中总装装配指令策划研究
俄罗斯EO-1被动型外骨骼有望2019年底前完成认证测试
洛?马公司研制成功FORTIS新型外骨骼
手指为什么比其他部位敏感?