本发明涉及计算机智能制造控制技术领域,特别涉及一种用于协作机器人的驱控一体化控制系统。
背景技术:
协作机器人,是一种可以在一定区域内安全的与人类进行直接交互的机器人。一般来说,协作机器人的操作相对较为简单,是工业机器人的一个分系,在价格上也比传统工业机器人便宜很多。
与传统工业机器人不同,协作机器人在体型上就跟它不在一个档次。为了达到“协作”的目的,机器人与人类之间的工作距离就不能太远,因而,协作机器人尺寸都是偏小的,甚至可以直接放置在正常工作台。
此外,作为协作人类而存在,灵活性是必不可缺的。以库卡的协作机器人lbriiwa为例,它一共拥有7个关节扭矩传感器,这使得它的“独臂”能够360度灵活转动,特别适用于柔性、灵活度和精准度要求较高的行业。
以中国为例,企业版图中共拥有超过5000万家企业,其中中小企业就占了99%,而低成本自动化向来都是中小企业梦寐以求的生产模式。
传统工业机器人的价格一般位于10万~40万人民币之间,使用寿命为5~8年,而要将其应用到自家生产线,那将要多出2~3倍的部署花费,这个支出对于利润微薄的中小企业而言是承受不起的;而协作机器人的价格一般介于2~3万美元,但因为省去了部署的过程,从而就比传统工业机器人少去了那个“大头”的支出。由此基于成本的比较,协作机器人显然更适合中小企业,其需求也就随之上升。
对于一些讲究细致的工作,其准确性与灵活性在很大程度上能够满足工作的需求,而它缓慢的速度也为人类提供了一些安全保障。像3c产品的装配,一边是协作机器人准确地零件放置,一边是人类的快速组装,两处相得益彰,大大提高了生产线的效率。
据国际机器人联合会(ifr)统计,2015年全球工业机器人销量超过24万台,同比增长8%。2006-2015年,全球工业机器人销量年均增速约为14%。2015年我国工业机器人市场规模继续保持世界第一,达到6.6万台,约占全球销量的1/4,同比增长16%,保有量增长至25.6万台。
在传统的工业机器人逐渐取代单调、重复性高、危险性强的工作之时,协作机器人也将会慢慢渗入各个工业领域,与人共同工作。abb在2014年推出了其首款协作机器人yumi,目标市场为消费电子行业。同年,库卡发布了他们的协作机器人lbriiwa,安川motoman也发布了他们的协作机器人产品dexterbot。相对于传统的刚性机器人,具备高安全、精密质轻的协作性机器人成为未来机器人发展的重要方向。
目前工业机器人大多仍采用一个运动控制器加多个伺服驱动器的分布式控制方式,在实际应用中存在系统硬件冗余度高、信号传输易受干扰、及价格昂贵等问题。同时,分布式架构的设计,导致信号在传输速率上存在瓶颈,限制工业机器人的实时性和快速性,而协作机器人需要在短时间内判断是否与人接触并即时做出响应。同时,速度前馈、加速度前馈、柔顺控制等新的控制算法由于控制器与驱动器的分离而只能停留在仿真阶段。
因此,针对协作机器人合作性、共存性、安全性的控制需求,研究用于协作机器人的驱控一体化控制平台,开发集驱动、感知、控制于一体的模块化控制单元,结合多核架构的实时操作系统,基于反射内存技术实现电机驱动数据的高速共享,形成用于协作机器人的驱控一体化控制器具有重大的意义。
技术实现要素:
本发明所要解决的技术问题在于,提供了一种用于协作机器人的驱控一体化控制器。针对市场对协作机器人合作性、共存性、安全性的控制需求,提供一种支持以反射内存共享实现多电机驱控一体化系统的技术方案,为协作机器人速度前馈、加速度前馈、柔顺控制等新的控制算法提供实现平台。
为解决上述技术问题,本发明提供了一种用于协作机器人的驱控一体化控制系统,包括电机驱动模块和多核实时控制器,并通过反射内存机制实现电机状态参数和控制参数的实时交互。
所述控制系统,优选进一步包括:上位机;所述多核实时控制器为x86实时控制器;所述电机驱动模块为一个或多个与被控电机相连的fpga驱控模块。
所述上位机,可以为运行windows操作系统的pc平台,并构建基于matlab软件的仿真环境,能够开展基于协作机器人的控制算法研究。
所述上位机可以通过以太网与所述多核实时控制器相连。
,所述多核实时控制器,优选为基于qnx实时操作系统的x86架构平台,支持ethercat总线协议,为所述上位机提供可以运行matlab实时代码的仿真环境;硬实时操作系统qnx严格时间片轮转机制,用于保证高速控制算法、同时避免其他进程/线程抢占资源。
所述多核实时控制器优选采用快速模型分割技术,用于保证大量i/o集成和在线监控。
所述电机驱动模块,优选为基于fpga开发的包含电机的集成模块;其中,fpga芯片采集编码器信息和电流反馈信息,通过反射内存卡与控制器交互控制信息,并通过数字模拟io给出控制信号到功率驱动电路,控制电机的运行。
所述电机驱控模块,优选用于将双级位置传感器、力矩传感器反馈的信号,电机电流反馈信号通过反射内存卡实时传递给所述多核实时控制器;并结合所研究的协作机器人控制算法,将控制指令通过数字模拟io给出控制信号到功率驱动电路,控制电机的运行,实现电机的柔顺控制和位置控制。
为解决上述技术问题,本发明还提供了一种如前述任一项所述用于协作机器人的驱控一体化控制系统的制备方法,包括以下步骤:首先在matlab环境中进行协作机器人控制算法的仿真测试;然后将仿真模型根据不同的运算量分配到控制器的不同内容中运行,仿真模型中需要加入反射内存卡的驱动模块,用以实现与底层fpga驱控模块的信息交互;通过在线调参的方式,多控制算法的参数进行在线调整,直到获取理想的协作机器人控制效果。
为解决上述技术问题,本发明又提供了一种如前述任一项所述用于协作机器人的驱控一体化控制系统的制备方法,包括以下步骤:
步骤s1:算法设计,建立协作机器人模型,设计控制器并仿真;
步骤s2:模型改造,在上述模型中添加反射内存卡驱动模块,同时进行模型分割;
步骤s3:自动代码生成与下载,将改造后的模型下载到控制器中,在qnx环境下运行;
步骤s4:动态参数调整,针对实际的控制效果,在线修改协作机器人控制参数;
步骤s5:重复上一操作,直到获得理想的控制效果;
步骤s6:程序固化,将验证好的控制算法固化到控制器中,即可推出理想的协作机器人控制系统。
本发明产生的有益效果包括:
1、本发明控制系统不针对某一个别型号的机器人,其标准化、模块化的设计理念适用于多种机型的机器人控制应用。
2、本发明的协作机器人控制器,集驱动、感知、控制于一体,可以进行柔顺控制等新的协作机器人控制算法的实物验证。
3、本发明可以很好地应对协作机器人合作性、共存性、安全性的控制需求,是一种新的快速设计解决方案,利于推广使用。
附图说明
图1为本发明实施例所述的用于复杂信息物理融合系统的机器人柔性控制系统硬件组成框图;
图2为本发明实施例所述的fpga电机数据采集与驱动模块结构图;
图3为本发明实施例所述的协作机器人控制系统结构图;
图4为本发明实施例所述的驱控一体化控制系统制备方法流程图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明,但本发明并不局限于这些实施例。
本发明所述fpga(field-programmablegatearray),即现场可编程门阵列,它是在pal、gal、cpld等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(asic)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
以硬件描述语言(verilog或vhdl)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至fpga上进行测试,是现代ic设计验证的技术主流。这些可编辑元件可以被用来实现一些基本的逻辑门电路(比如and、or、xor、not)或者更复杂一些的组合功能比如解码器或数学方程式。在大多数的fpga里面,这些可编辑的元件里也包含记忆元件例如触发器(flip-flop)或者其他更加完整的记忆块。
系统设计师可以根据需要通过可编辑的连接把fpga内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里。一个出厂后的成品fpga的逻辑块和连接可以按照设计者而改变,所以fpga可以完成所需要的逻辑功能。
fpga一般来说比asic(专用集成电路)的速度要慢,实现同样的功能比asic电路面积要大。但是他们也有很多的优点比如可以快速成品,可以被修改来改正程序中的错误和更便宜的造价。厂商也可能会提供便宜的但是编辑能力差的fpga。因为这些芯片有比较差的可编辑能力,所以这些设计的开发是在普通的fpga上完成的,然后将设计转移到一个类似于asic的芯片上。另外一种方法是用cpld(complexprogrammablelogicdevice,复杂可编程逻辑器件)。
在本发明的一实施例中,本发明用于协作机器人的驱控一体化控制系统,其中包括基于fpga的电机驱动模块,基于x86的多核实时控制器,通过反射内存机制实现电机状态参数和控制参数的实时交互。
在本发明的另一实施例中,如图1所示,为用于复杂信息物理融合系统的机器人柔性控制系统硬件组成框图。其中包括:上位机、x86实时控制器以及一个或多个与电机相连的fpga驱控模块。
所述的上位机,是运行windows操作系统的普通pc平台,构建的基于matlab软件的仿真环境,可以开展基于协作机器人的控制算法研究。上位机通过以太网与控制机相连。
所述的控制器,是基于qnx实时操作系统的x86架构平台,支持ethercat总线协议,为上位机提供可以运行matlab实时代码的仿真环境,硬实时操作系统(qnx)严格时间片轮转机制,保证高速控制算法、同时避免其他进程/线程抢占资源;基于多核处理器的快速模型分割技术,保证大量i/o集成和在线监控。
所述的fpga驱控模块,是基于fpga开发的包含电机的集成模块,fpga芯片采集编码器信息和电流反馈信息,通过反射内存卡与控制器交互控制信息,并通过数字模拟io给出控制信号到功率驱动电路,控制电机的运行。
在本发明的再一实施例中,如图2所示,为本发明实施例所述的fpga电机数据采集与驱动模块结构图。其中,fpga驱控模块,将双级位置传感器、力矩传感器反馈的信号,电机电流反馈信号通过反射内存卡实时传递给控制器,结合所研究的协作机器人控制算法,将控制指令通过数字模拟io给出控制信号到功率驱动电路,控制电机的运行,实现电机的柔顺控制、位置控制等。
在本发明的又一实施例中,如图3所示,为本发明实施例所述的协作机器人控制系统结构图。本发明协作机器人控制系统,是基于x86架构设计开发的多核系统,运行qnx实时操作系统,运行的运行时支持matlab自动代码生成机制,可以运行设计的协作机器人控制算法,通过反射内存卡采集fpga模块的电机数据信息,并将控制指令反馈给fpga模块,形成完整的协作机器人控制回路。
如图4所示,为本发明实施例所述的驱控一体化控制系统制备方法流程图。本发明协作机器人控制系统的制备流程是:首先在matlab环境中进行协作机器人控制算法的仿真测试,然后将仿真模型根据不同的运算量分配到控制器的不同内容中运行,仿真模型中需要加入反射内存卡的驱动模块,用以实现与底层fpga驱控模块的信息交互。可以通过在线调参的方式,多控制算法的参数进行在线调整,直到获取理想的协作机器人控制效果。
以下将描述本发明一个实施实例,研发人员针对协作机器人开发的步骤具体为:
步骤s1:算法设计,建立协作机器人模型,设计控制器并仿真。
步骤s2:模型改造,在上述模型中添加反射内存卡驱动模块,同时进行模型分割。
步骤s3:自动代码生成与下载,将改造后的模型下载到控制器中,在qnx环境下运行。
步骤s4:动态参数调整,针对实际的控制效果,在线修改协作机器人控制参数。
步骤s5:重复上一操作,直到获得理想的控制效果。
步骤s6:程序固化,将验证好的控制算法固化到控制器中,即可推出理想的协作机器人控制系统。
综上所述,本发明所要解决的技术问题在于针对协作机器人合作性、共存性、安全性的控制需求,提供一种支持以反射内存共享实现多电机驱控一体化的系统设计方案,为协作机器人速度前馈、加速度前馈、柔顺控制等新的控制算法提供实现平台。适用范围广,开发周期短,能给协作机器人研发生产带来更多的便利。本发明对于协作机器人的轴数没有限制,可以根据实际需要进行扩展,很好地应对协作机器人开发的多种需求,增加了协作机器人开发的灵活性,是一种新的快速设计解决方案,利于推广使用。
以上所述,仅是本发明的几个实施例,并非对本发明做任何形式的限制,虽然本发明以较佳实施例揭示如上,然而并非用以限制本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案的范围内,利用上述揭示的技术内容做出些许的变动或修饰均等同于等效实施案例,均属于技术方案范围内。