结合FPGA与DSP的仿人假手控制系统设计
仿人假手作为肢残患者重获人手功能的主要对象,具有重大的社会需求。理想的假手应具有人手的仿生特征,主要体现在假手构造、控制方式与环境感知3个方面,但由于其有限的体积和复杂的传感器系统,对控制系统提出了更高的要求。
现有的控制系统有外置式和内置式两种。外置式控制系统多用于研究型假手,如Cyber Hand,Tokyo Hand,Vanderbilt Hand等,这种控制系统主要用于算法、方案的验证,在残疾人应用上推广意义较小。内置式控制系统在研究型假手和商业型假手上均有应用,其中研究型假手控制系统,在环境感知和双向信息交互上投入大量研究,如Smart Hand,DARPA hand;而商业型假手控制系统虽然也有部分集成有外部传感器,但传感器系统简单,双向信息交互上也有较大欠缺,如i-Limb,BeBionic Hand.
HIT IV代假手控制系统采用DSP作为主控芯片,集成有位置传感器和力矩传感器,可对肌电信号采样。但控制系统为一个整体,且体积较大,只适用于HIT IV代假手。DSP芯片在功能拓展上弱于FPGA,不利于二次开发。
本文采用模块化设计方案,以FPGA作为核心芯片,运动控制、肌电信号采集、电刺激等模块独立设计,通过通用接口连接。在此基础上,进行多模式的多指抓取实验。
1仿人假手系统介绍
本文所设计的控制系统以HIT V代手为控制对象。该手略小于成年人人手,具有5根手指,每根手指2个指节,大拇指还另有一个内旋/外展关节,共有11个活动关节,整个手由6个直流电机驱动,每根手指安装有力矩传感器、位置传感器、指尖六维力传感器。
控制系统采用模块化设计思想,将整个系统分割成几个模块,通过通用接口建立相互连接,使整个控制系统可以放置在仿人假手内部,实现机电一体化。
2基于FPGA的控制系统设计
仿人假手电气控制系统用于实现假手各手指的驱动控制、多种传感器信息的采集以及与上位机( PC或PCI控制卡)之间的通信。该控制系统由10个模块组成,分别为:由FPGA组成的主控芯片模块、USB接口模块、拇指控制电路模块、食指控制电路模块、中指控制电路模块、无名指控制电路模块、小指控制电路模块、肌电信号采集模块、电池管理系统模块、电刺激反馈模块。模块化设计方法增加了控制系统的灵活性与独立性,便于对模块单独进行调试与修改。电气系统总体功能框图如图1.
图1 电气系统功能框图
2.1 FPGA主控芯片模块设计
FPGA主控芯片模块采用Altera公司CycloneⅢ系FPGA芯片EP3C25F25617作为控制核心,负责肌电信号和多种传感器信号的处理、与手指电路的通信、USB通信、CAN通信接口等功能。同时,主控芯片模块还负责大拇指内旋/外展自由度驱动电机的控制。各个功能通过VHDL语言进行编写,FPGA中嵌入双NIOS核构成双核处理器,其中一个NIOS核用于肌电信号处理,另一个NIOS核用于通信;双核通过2M的EEPROM进行通信。FPGA功能框图如图2.
图2 FPGA功能框图
RS—485通信通过在NIOS核内自定义元件AutoSCI控制RS—485收发接口芯片MAX3362实现。MAX3362收发芯片可通过3.3 V低压实现高速数据传送。CAN与LVDS通信采用复用电路设计(图3),通过更换接收发送接口芯片完成功能转换。CAN通信采用TI公司的CAN收发器SN65HVD230QD作为接口芯片。LVDS通信采用TI公司的半双工LVDS收发接口芯片SN65LVDM176,构成PPSeCo高速串行通信系统与PCI控制卡通信,通信速率可达25 Mbps,保证控制信息与传感器信息传送的及时性。
图3 CAN通信/LVDS通信复用电路
拇指内旋/外展自由度驱动电机由NIOS核中自定义元件PWM控制。元件功能通过VHDL语言编写,PWM波周期和占空比均可调。电机驱动芯片采用MPC17531A,其内部集成双H桥,可直接控制直流有刷电机。
2.2手指运动控制模块设计
五根手指的运动控制模块采用相同的设计方案,增强系统的互换性与通用性。该模块由DSP作为控制核心,直流有刷电机驱动芯片MPC17531A作为电机驱动芯片,负责手指电机的驱动,力矩传感器、位置传感器、电机电流传感器信号的采集与处理,以及与触觉传感器系统的通信,最后各项数据通过RS—485通信接口与主控芯片模块通信。控制模块如图4.
图4 手指运动控制模块功能框图
该模块采用的DSP TMS320F28027运行速率高,封装小。内部集成的16通道12位A/D转换器可实现对力矩、位置、电机电流信号的采样。串行异步通信接口通过RS —485收发接口芯片实现与主控芯片模块通信。EPWM模块可直接控制直流有刷电机驱动芯片MPC17531A.
如图5,关节力矩传感器信号采集系统包括力矩
- 用大电流LDO为FPGA供电需要低噪声、低压差和快速瞬态响应(08-17)
- 基于FPGA 的谐波电压源离散域建模与仿真(01-30)
- 基于FPGA的VRLA蓄电池测试系统设计(06-08)
- 降低从中间总线电压直接为低电压处理器和FPGA供电的风险(10-12)
- FPGA和功能强大的DSP的运动控制卡设计(03-27)
- DE0-Nano-SoC 套件 / Atlas-SoC 套件(10-30)