DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1416|回复: 0
打印 上一主题 下一主题

[待整理] 结合FPGA与DSP的仿人假手控制系统设计

[复制链接]
跳转到指定楼层
楼主
发表于 2015-4-27 16:07:15 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
仿人假手作为肢残患者重获人手功能的主要对象,具有重大的社会需求。理想的假手应具有人手的仿生特征,主要体现在假手构造、控制方式与环境感知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,关节力矩传感器信号采集系统包括力矩传感器、处理放大电路、滤波电路和A/D转换电路。力矩传感器基于应变原理,采用仪表放大器INA337组成半桥电路对力矩信号进行放大后通过RC滤波电路进入A/D转换芯片。
       
       
        图5力矩传感器信号采集系统

         
        如图6,关节位置传感器信号采集系统包括位置传感器、处理放大电路、滤波电路和A/D转换电路。位置传感器基于旋转电位器原理,采用集成运放MAX9618对电位器信号进行放大后通过RC滤波电路进入A/D转换芯片。
       
       
        图6位置传感器信号采集系统

         
        2.3肌电信号采集模块设计
       
        肌电信号采集模块用来采集肌电电极的信号以及对信号的滤波和D/A转换后存储在CPU中,包括RC电路组成的滤波电路、D/A转换电路和电压转换电路。数字信号通过电压转换芯片转换为3.3 V电压,通过SPI接口输入到CPU中央处理器。
       
        2.4电池管理系统模块设计
       
        电池管理模块包括电池、电流传感器、蜂鸣器电路、LED显示电路。电流传感器实时监测电池输出电流大小,通过LED显示电路和蜂鸣器电路显示充电状态和电池电量过低报警。
        3软件实现
          在FPGA控制器程序设计中主要完成各系统参数的初始化与控制算法的实现,具体由如下几部分构成:
       
        1)与上位机通信部分:通过3种方式与上位机通信,获得控制指令,分别为USB通信、LVDS通信、CAN通信,其中LVDS通信与CAN通信不能同时使用;
       
        2)肌电信号采集部分:通过A/D转换芯片将肌电电极信号转换为数字量,并经过运算处理得到控制指令;
       
        3)与手指运动控制模块通信部分:通过SCI接口实现与手指运动控制模块的RS—485通信;
       
        4)生成驱动电机控制参数部分:运算处理控制指令,生成电机运动参数(方向与占空比)。
       
        控制流程图如图7所示。
       
       
        图7 FPGA控制流程图

         
        DSP控制程序主要完成DSP各参数的初始化,控制流程图如图8.
       
       
        图8 DSP控制流程图

         
        4假手抓取实验
       
        基于上述设计,研制出HIT V假手样机,进行抓取实验(图9),可实现多种动作模式的抓取,分别为:两指捏取、三指捏取、圆柱抓取、球形抓取、单指指向、胡克抓取、侧边捏取、五指端取。控制过程中,系统工作稳定,满足仿人假手运动控制和传感器信息采集要求。
       
       
        图9多指抓取实验

         

          5结论
       
        本文介绍了结合FPGA与DSP的仿人假手控制系统的设计组成与工作流程。该控制系统体积小巧,可完全安装于假手内部。实验证明:该系统运行可靠、控制灵活,使用效果良好。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-12-29 10:10 , 耗时 0.097368 秒, 22 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表