基于CANopen的分布式模块化机械臂系统的制作方法

文档序号:2362155阅读:288来源:国知局
专利名称:基于CANopen的分布式模块化机械臂系统的制作方法
技术领域
本发明涉及的是一种机电智能控制技术领域的装置,具体是一种基于CANopen协议标准(Controllor Area Network Open Protocol)的分布式模块化机械臂系统。
背景技术
机器人是机械电子研究领域最高研究成果的代表。机械手臂作为最早出现的机器人,也是最早出现的现代机器人,它可代替人的繁重劳动以实现生产的机械化和自动化,能在有害环境下操作以保护人身安全,因而广泛应用于机械制造、冶金、电子、轻工和原子能等部门。近几年,智能机器人成为最新的机器人研究方向之一,机械臂也越来越小型化、智能化,应用范围也从工业向社会各行各业渗透,在服务,医疗,教育,娱乐等多个社会领域得到广泛应用。比如家庭服务机器人,机器人一般安装有一条或两条仿人机械臂,代替人手的功能。由于仿人机械臂具有人类手臂的外观,更具灵活性,因而可以最高程度的适应人类的生活和工作环境,代替人类完成各种日常任务,在很多方面扩展人类的能力。除了外形结构,机械臂的控制系统是机械臂的重要组成部分,它相当于人的大脑,由它来指挥机械臂的动作,并协调机械臂和机器人其他各个系统的关系。机械臂控制系统的控制内容应包括机械臂各个关节的运动伺服控制,包括应到达的位置、应走过的路径、动作时间间隔、运动速度;机械臂各个关节实时状态反馈,包括当前位置,当前速度,关节电机电流;手臂的实时状态反馈,比如机械手作用在抓取物上的作用力,碰撞检测传感器的信息等。此外,有别于工厂相对固定的工作环境,为了适应生活中复杂多变的工作环境,机械手臂上所需要的传感器数量越来越多,信息传输量也大大增大。这些都对机械臂的控制系统提出了更高的要求。一个稳定、可靠、高效的控制系统对于一个高精度的机械臂来说至关重要。采用总线技术进行分布式控制,是当前高精度机械臂控制普遍采用的技术。分布式系统采用开放式、标准化、模块化和系列化设计。各个功能子系统都采用模块化设计方法,各个模块相互独立,互不影响,同时工作,各个模块通过总线相互连接,并最终连接到总控制终端。当需要改变或扩充系统功能时,可将新增功能节点方便地连入总线或从总线上卸下,几乎不影响系统其他功能节点的工作。而传统式的星型拓扑结构,所有的机械臂功能模块都要连接到控制器,当功能模块数目增加时,其系统结构变得庞大,连线困难,稳定性, 可靠性都要大打折扣,不利于机械手的小型化和实用化。经过文献检索发现,中国专利文献号CN1434391,名称基于通用串行总线接口的个人机械臂系统,以及中国专利文献号CN1586829,名称基于分布式控制的即插即用机械臂系统,这两个专利实现了基于通用串行总线USB实现对机械臂的分布式控制,支持热插拔,具有可扩展性。但是通用串行总线技术USB还存在着众多缺点,影响其在控制上的应用。比如理论上,USB可以实现高达127个设备的串列连接,但是在实际应用中,3到4个设备就可能导致一些设备失效。另外,尽管USB本身可以提供500mA的电流,但一旦碰到高电耗的设备或者设备数量增加,就会导致供电不足,常常出现设备无法识别。并且手臂上电机运转会产生电磁干扰,在抗干扰能力方面,USB还无法达到工业标准。中国专利文献号CN101131586,名称机械臂系统中的M-LVDS高速串行通信装置及其通信控制方法,引入了 M-LVDS高速串行通信装置,极大的提高了通信速率,但是M-LVDS不太可能应用于噪声干扰严重的工业环境,仅仅适用于通信应用。

发明内容
本发明针对现有技术存在的上述不足,提供一种基于CANopen的分布式模块化机械臂系统,具有简化结构的同时在稳定性、实时性、抗干扰性都得到了进一步的提高,可以根据实际不同任务,方便的扩展添加传感器,以完成日常生活中的各种任务比如拿起桌上的杯子,因而具有可扩展性,这为日后服务机器人进入广大家庭提供了基础。本发明是通过以下技术方案实现的,本发明包括主控模块、总线接口模块、电机驱动模块、传感器模块、通信总线、监控模块和机械臂,其中主控模块与总线接口模块相连接以传输控制信息并从总线接口模块接收反馈得到的手臂状态信息,总线接口模块与CAN 总线相连接并将主控模块下发的控制信息发送到CAN总线上,总线接口模块从CAN总线上接收反馈信息发送至主控模块,电机驱动模块与CAN总线相连接并接收CAN总线上下发的控制信息进而伺服控制关节电机运动同时反馈受控关节运动状态信息,传感器模块与CAN 总线相连接并传输传感器信息,监控模块直接到CAN总线上并传输控制信息和获取机械臂状态信息,机械臂与机器人本体直接相连接。所述的电机驱动模块包括驱动电源电路、驱动处理器、码盘信号采集电路、电机驱动电路以及CAN总线通信驱动电路,其中驱动电源电路与各个电路模块直接相连并为其提供所需工作电压,驱动处理器与码盘信号采集电路相连并采集电子码盘反馈的信号, 进而计算出电机的工作状态,驱动处理器与电机驱动电路直接相连并输出PWM信号控制电机驱动电路驱动电机运动,驱动处理器与CAN总线通信驱动电路直接相连,接受或者发送控制指令。所述的传感器模块包括传感器电源电路、传感处理器、传感器电路和传感器通信驱动电路,其中传感器电源电路与各个部分直接相连并为其提供所需工作电压,传感处理器与传感器电路相连并将传感器信号采集转化为数字信号,传感处理器与传感器通信驱动电路直接相连并通过传感器通信驱动电路接受或者发送指令。所述的机械臂包括直流电机伺服驱动模块、机械臂传感器、铝合金骨架、手掌、关节电机和舵机,其中铝合金骨架安装在机器人肩部,手掌安装在铝合金骨架的末端,关节电机安装在铝合金骨架的各个关节处,舵机安装在手掌手指处,驱动手指运动,机械臂传感器和直流电机伺服驱动模块直接安装在铝合金骨架上。本发明通过PCCAN卡将主控计算机与CAN总线相连,用户可以在主控计算机上通过设计好的软件观察机械臂的实时状态,并可通过相应界面控制机械臂的运动。工作时,用户首先将所需模块均连接到CAN总线上,并且设置好所有在线模块的ID可以在硬件上直接通过拨动开关设置上电默认ID,也可在软件里进行更改、设置CAN总线的波特率最高可达 Mbps0设置好以后,启动总线系统,此时,用户可以通过相应的界面对不同的模块进行操作。 对于直流电机伺服驱动模块,用户可以直接利用鼠标拖动实现各个关节的运动。此时,主控计算机自动会把目标角度,运动速度,加速度根据CANopen协议写入数据包,通过CAN总线发送至相应关节的电机驱动模块。电机伺服驱动模块的微控制器收到指令后会回复一条指令,通知主控计算机指令收到。与此同时,微控制器自动根据期望角度值,控制电机以期望运动速度,加速度开始运动,并且定周期反馈当前的位置,速度。而主控计算器不需要再控制关节运动,只需接受各个关节的实时状态信息,包括绝对角度相对于机械零位,角速度, 电机电流,更新显示在界面上。对于传感器模块,界面上将显示各个传感器模块的输出信息,这样便完成了实时控制。由于各个模块自身又是一个子系统,子系统独立于上级系统自动工作,因此上层的主控计算机的只需处理指令的下发和数据采集显示,因而主控计算机 CPU的负载较低,具有充分的裕度,提高了控制的实时性,可靠性。当需要新增加或更换传感器模块或是增加、减少机械臂关节时,只需将不需要的模块取下,连接上新的模块,再按照前所描述的过程,设置好ID以及波特率,即可马上使用。在设计调试阶段或者维修阶段,监控模块可在CAN总线的任何位置接入总线,使用特制的软件,可以读取总线上的数据,获取系统当前各个模块的工作状态,也可作为往总线上的各个节点发送数据,进行相应的调试。本发明采用基于CANopen的分布式控制系统结构,实现了结构简单贯穿手臂的连线只有根线电源正负以及CAN总线高低信号线,可靠稳定,扩展方便的机械臂系统。采用此套控制系统的上海交大交龙服务机器人成功在上海世博会的大众参与馆上展出,并完成了打招呼、握手、抓取桌上的杯子等日常任务。本发明所使用的电机驱动,传感器均采用模块化设计理念,统一接口,方便更换、扩展,相比于传统设计思想,缩短了设计周期,提高了效率,并且有利于日后在现有基础上改进技术,开发新产品,使机械臂具有很高的适应性、可扩展性。


图1是本发明整体系统结构示意图。图中1主控计算机、2PC104CAN卡、3直流电机伺服控制模块、3_1微处理器、3_2 电机驱动电路、4传感器模块、4-1微处理器、4-2各个传感器、5CAN总线、6监控模块。图2是本发明功能框图。图3是本发明各功能模块的通用接口示意图。图4是本发明电机驱动模块和传感模块的结构示意图。图5是本发明机械臂安装结构示意图。
具体实施例方式下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。如图1所示,本实施例包括主控模块1、总线接口模块2、电机驱动模块3、传感器模块4、通信总线5、监控模块6和机械臂7,其中主控模块1与总线接口模块2相连接以传输控制信息并从总线接口模块2接收反馈得到的手臂状态信息,总线接口模块2与CAN 总线相连接并将主控模块1下发的控制信息发送到CAN总线上,总线接口模块2从CAN总线上接收反馈信息发送至主控模块1,电机驱动模块3与CAN总线相连接并接收CAN总线上下发的控制信息进而伺服控制关节电机运动同时反馈受控关节运动状态信息,传感器模块4与CAN总线相连接并传输传感器信息,监控模块6直接到CAN总线上并传输控制信息和获取机械臂7状态信息,机械臂7与机器人本体直接相连接。所述的主控模块1通过主控计算机得以实现。所述的监控模块6通过监控计算机得以实现。所述的总线接口模块2通过PC104CAN卡得以实现。所述的电机驱动模块3包括驱动电源电路8、驱动处理器9、码盘信号采集电路 10、电机驱动电路11以及CAN总线通信驱动电路12,其中驱动电源电路8与各个电路模块直接相连,为其提供所需工作电压。驱动处理器9 与码盘信号采集电路10相连,采集电子码盘反馈的信号,进而计算出电机的工作状态。驱动处理器9与电机驱动电路11直接相连,驱动处理器输出PWM信号控制电机驱动电路驱动电机运动。驱动处理器9与CAN总线通信驱动电路12直接相连,接受或者发送控制指令。所述的传感器模块4包括传感器电源电路13、传感处理器14、传感器电路15和传感器通信驱动电路16,其中传感器电源电路13与各个部分直接相连,为其提供所需工作电压。传感处理器14与传感器电路15相连,将传感器信号采集转化为数字信号。传感处理器14与传感器通信驱动电路16直接相连,通过传感器通信驱动电路接受或者发送指令。所述的通信总线5包括CAN总线17以及终端匹配电阻120R,其中CAN总线17与各个功能模块相连,在终端,CAN总线17串联一个终端匹配电阻 120R。如图3中所示。所述的机械臂7包括直流电机伺服驱动模块18、机械臂传感器19、铝合金骨架 20、手掌21、关节电机22和舵机23,其中铝合金骨架20安装在机器人肩部,手掌21安装在铝合金骨架20的末端。关节电机22安装在铝合金骨架20的各个关节处。舵机23安装在手掌21手指处,驱动手指运动。直流电机伺服驱动模块18和机械臂传感器19直接安装在铝合金骨架20上。所述的直流电机伺服驱动模块18由微处理器和电机驱动器实现,其中微处理器通过采集关节直流电机的数字码盘信号并得到反馈信息,通过PID算法闭环控制直流电机的转动角度,速度控制实现控制手臂的运动。所述的直流电机伺服驱动模块18分别与通信总线5相连接并接收控制信号,实现各个独立控制。所述的机械臂传感器19由微处理器和传感器实现,其中微处理器通过模拟数字转换模块ADC将模拟信号输出型传感器的输出信号采集,或根据传感器设定的通信协议采集传感器的输出信号,然后通过通信总线反馈回主控模块1。本装置通过以下方式进行实际应用本实施例为一个家庭服务机器人上的一条 6D0F自由度的仿人关节机械臂,该机械臂各关节配置模仿人手关节自由度配置,如图1右边所示,因而该机械臂可模仿人手动作,完成人类可完成的日常任务。6个关节分别由6个直流电机伺服驱动模块驱动,直接连接在CAN总线上,节点ID分别设置为0X01 0X06,此外,每个手臂上都安装有加速度传感器模块,手掌上还安装有力传感器模块,这些传感器模块也直接连接到CAN总线上。主控计算机采用的是一台工业计算机,其通过PC104CAN卡连接到CAN总线上,其ID默认为0X00,所有模块均接受主控计算机下发的指令,向主控计算机反馈信息。监控模块可以使任意一台笔记本电脑或者掌上电脑。在设计调试阶段或者维修阶段,监控模块通过USBCAN设备在CAN总线的任何位置接入总线,监控模块的ID可任意设置为空闲ID,使用特制的软件,可以直接读取总线上的数据,获取系统当前各个模块的工作状态,检查总线当前状态。也可作为往总线上的各个节点发送数据,进行相应的调试。图2表示了整个系统的功能流程图。工作时,用户首先将所需模块均连接到CAN总线上,并且设置好所有在线模块的ID可以在硬件上直接通过拨动开关设置上电默认ID,也可在软件里进行更改、设置CAN总线的波特率最高可达1Mbps。设置好以后,启动总线系统, 此时,用户可以通过相应的界面对不同的模块进行操作。用户可以直接利用鼠标拖动实现各个关节的运动或者控制整个手臂的动作。此时,主控计算机自动会把规划好的目标角度, 运动速度,加速度根据协议写入数据包,通过CAN总线发送至相应关节的电机驱动模块。电机伺服驱动模块的微控制器收到指令后会回复一条指令,通知主控计算机指令收到。与此同时,微控制器自动根据期望角度值,控制电机以期望运动速度,加速度开始运动,并且定周期反馈当前的位置,速度。而主控计算器不需要再控制关节运动,只需接受各个关节的实时状态信息,包括绝对角度相对于机械零位,角速度,电机电流,更新显示在界面上。对于传感器模块,界面上将定期接收并显示各个传感器模块的信息,这样便完成了实时监控。当运动时出现异常情况时比如某个关节失控,出现飞转,主控计算机可及时响应停止运动,并且实时报警,防止造成人员伤亡。由于各个模块自身又是一个子系统,子系统独立于上级系统自动工作,因此上层的主控计算机的只需处理指令的下发和数据采集显示,而不需要再实时控制所有的子系统,因而主控计算机CPU的负载较低,具有充分的裕度,提高了控制的实时性,可靠性。当需要新增加或更换传感器模块或是增加、减少机械臂关节时,只需将不需要的模块取下,连接上新的模块,再按照前所描述的过程,设置好ID以及波特率,即可马上使用。在设计调试阶段或者维修阶段,监控模块可在CAN总线的任何位置接入总线,实现同主控计算机一样的功能。图3为模块的通用接口示意图,对于不同功能的模块,均统一接口,以实现快速更换,增加扩展系统的功能。本例中所用到的电机伺服驱动模块以及传感器模块中所采用的微处理器是意法半导体公司的STM32F10X系列,该系列微处理器可同时产生3路独立的PWM 信号,即可同时控制3个直流电机,在本装置中,每个处理器只控制2个电机,第三路PWM可扩充控制机械手手掌上的舵机,以实现手掌手指的动作。另外STM32F10X系列还有2个16 通道、12位精度的ADC转换模块,最快转换时间可达lus,可方便的采集各种传感器的电压信号。此外STM32F10X还具有丰富的通信接口,如I2C,USARTs,SPIs,CAN,USB 2.0。因此以STM32F10X为控制核心,进行设计,可实现具有各种功能的功能模块。而通过CAN总线接口组成总线系统,基于CANopen协议,与其他模块进行通信,又实现了不同功能模块的接口统一,实现系统的模块化设计,提高了系统的灵活性。图4是本实施例电机驱动模块和传感模块的结构示意图。驱动电源电路与各个电路模块直接相连,为其提供所需工作电压。驱动处理器与码盘信号采集电路相连,采集电子码盘反馈的信号,进而计算出电机的工作状态。驱动处理器与电机驱动电路直接相连,驱动处理器输出PWM信号控制电机驱动电路驱动电机运动。驱动处理器与CAN总线通信驱动电路直接相连,接受或者发送控制指令。传感器电源电路也与各个部分直接相连,为其提供所需工作电压。传感处理器与传感器电路相连,将传感器信号采集转化为数字信号。传感处理器与传感器通信驱动电路直接相连,通过传感器通信驱动电路接受或者发送指令。
图5是本实施例机械臂安装结构示意图。铝合金骨架安装在机器人肩部,手掌安装在铝合金骨架的末端。关节电机安装在铝合金骨架的各个关节处。舵机安装在手掌手指处,驱动手指运动。机械臂传感器和直流电机伺服驱动模块直接安装在铝合金骨架上。
权利要求
1.一种基于CANopen的分布式模块化机械臂系统,其特征在于,包括主控模块、总线接口模块、电机驱动模块、传感器模块、通信总线、监控模块和机械臂,其中主控模块与总线接口模块相连接以传输控制信息并从总线接口模块接收反馈得到的手臂状态信息,总线接口模块与CAN总线相连接并将主控模块下发的控制信息发送到CAN总线上,总线接口模块从CAN总线上接收反馈信息发送至主控模块,电机驱动模块与CAN总线相连接并接收CAN 总线上下发的控制信息进而伺服控制关节电机运动同时反馈受控关节运动状态信息,传感器模块与CAN总线相连接并传输传感器信息,监控模块直接到CAN总线上并传输控制信息和获取机械臂状态信息,机械臂与机器人本体直接相连接。
2.根据权利要求1所述的基于CANopen的分布式模块化机械臂系统,其特征是,所述的电机驱动模块包括驱动电源电路、驱动处理器、码盘信号采集电路、电机驱动电路以及 CAN总线通信驱动电路,其中驱动电源电路与各个电路模块直接相连并为其提供所需工作电压,驱动处理器与码盘信号采集电路相连并采集电子码盘反馈的信号,进而计算出电机的工作状态,驱动处理器与电机驱动电路直接相连并输出PWM信号控制电机驱动电路驱动电机运动,驱动处理器与CAN总线通信驱动电路直接相连,接受或者发送控制指令。
3.根据权利要求1所述的基于CANopen的分布式模块化机械臂系统,其特征是,所述的传感器模块包括传感器电源电路、传感处理器、传感器电路和传感器通信驱动电路,其中 传感器电源电路与各个部分直接相连并为其提供所需工作电压,传感处理器与传感器电路相连并将传感器信号采集转化为数字信号,传感处理器与传感器通信驱动电路直接相连并通过传感器通信驱动电路接受或者发送指令。
4.根据权利要求1所述的基于CANopen的分布式模块化机械臂系统,其特征是,所述的机械臂包括直流电机伺服驱动模块、机械臂传感器、铝合金骨架、手掌、关节电机和舵机, 其中铝合金骨架安装在机器人肩部,手掌安装在铝合金骨架的末端,关节电机安装在铝合金骨架的各个关节处,舵机安装在手掌手指处,驱动手指运动,机械臂传感器和直流电机伺服驱动模块直接安装在铝合金骨架上。
5.根据权利要求1所述的基于CANopen的分布式模块化机械臂系统,其特征是,所述的直流电机伺服驱动模块由微处理器和电机驱动器实现,其中微处理器通过采集关节直流电机的数字码盘信号并得到反馈信息,通过PID算法闭环控制直流电机的转动角度,速度控制实现控制手臂的运动。
6.根据权利要求1所述的基于CANopen的分布式模块化机械臂系统,其特征是,所述的机械臂传感器由微处理器和传感器实现,其中微处理器通过模拟数字转换模块ADC将模拟信号输出型传感器的输出信号采集,或根据传感器设定的通信协议采集传感器的输出信号,然后通过通信总线反馈回主控模块。
全文摘要
一种机电智能控制技术领域的基于CANopen的分布式模块化机械臂系统,包括主控模块、总线接口模块、电机驱动模块、传感器模块、通信总线、监控模块和机械臂。本发明具有简化结构的同时在稳定性、实时性、抗干扰性都得到了进一步的提高,可以根据实际不同任务,方便的扩展添加传感器,以完成日常生活中的各种任务比如拿起桌上的杯子,因而具有可扩展性,这为日后服务机器人进入广大家庭提供了基础。
文档编号B25J13/00GK102179815SQ20111009415
公开日2011年9月14日 申请日期2011年4月14日 优先权日2011年4月14日
发明者唐奥林, 曹其新, 谭宏斌, 邓成呈 申请人:上海交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1