当前位置:首页 期刊杂志

实时高效的工业机器人控制系统设计

时间:2024-05-20

盛 涛

(哈尔滨博实自动化股份有限公司,黑龙江 哈尔滨 150001)

随着机械自动化水平的提高,机器人以其在机械结构、适用范围、灵活性、成本以及维护等方面的优势,使其应用渐为广泛,并成为一种发展趋势。而机器人控制系统的性能决定着机器人的品质,目前主流高性能运动控制系统的发展趋势是在具有很强计算能力的计算机上集成高性能实时系统和高速通讯总线的控制架构。以该种控制结构完成具有前馈补偿的控制结构。运动学、动力学和用于前馈补偿的伺服控制算法均在计算性能强大的工控机中完成。在每一个伺服周期内伺服控制指令通过高速通讯总线传递给驱动器,同时在同一个伺服周期内完成运动指令的反馈。伺服控制指令被叠加到电流回路指令给定端作为前馈补偿,其可以补偿动力学耦合和结构柔性产生的非线性效应。控制指令可以根据相应的控制算法进行实时计算。在前馈补偿作用下,每一个主动关节即可以视为一个简单的单输入单输出系统,从而采用驱动器内部的线性控制器即可获得较好的控制性能。

1 Windows内嵌实时系统

目前由于Windows良好的人机界面和交互功能,在工控领域应用越来越广泛,但由于其并不是一个实时系统,时间片设定在5毫秒以下时,其便很难保持精确稳定的运行。从而用于实时性要求较高的工控场合会存在很多的局限性,如完成伺服层的伺服调试,需要1个毫秒以下的精确定时。为了解决这一矛盾,出现了很多利用Window环境进行扩展或者内嵌实时内核的实时系统。其中德国Beckhoff公司的TwinCAT系统就是其中之一,TwinCAT(The Windows Control and Automation Technology)的原意是指“基于Windows的控制和自动化技术”,其通过在Windows环境下内嵌实时内核的方法,将每一台PC变为多个具有很强大处理能力的PLC集合,并同时具有良好的开发和编程环境,符合IEC-61131-3标准。其集成的人机界面开发环境,可以支持高级语言如VC++,Matlab直接编程。TwinCAT将实时控制与Windows环境有机结合,为工控机进行高性能工控任务提供了强大的实时扩展。所有的Windows环境下的程序,例如图形和可视化模块均可以通过ADS通讯的方式访问TwinCAT数据,或进行实时的数据交互。同时TwinCAT在软件方面集成了完善的错误诊断,稳定和安全机制,特别在各从站信号同步方面,采用了分布式时钟和抖动监测器,严格保证信号同步,增加了系统可靠性。同时其实时内核具有很高优先级和稳定性,在Windows系统蓝屏时,仍可保证后台服务稳定运行。

2 基于工业以太网的高速通讯总线技术

当完成所有在线指令的实时计算后,运动控制指令需要从运动控制单元传输到驱动单元中。以往的运动控制系统,运动控制指令通过模拟量进行传输,从而不存在时间延迟。但是电磁干扰和噪声对于模拟量是一个严重的问题。因此,采用模拟量方式进行运动指令传输在工业应用中要稳定可靠的运行难度很大,且一般无法进行长距离传输。目前由德国Beckhoff和EtherCAT Technology Group(ETG)推广的基于工业以太网的高性能通讯总线EtherCAT,其采用主从结构,由主站和多个从站组成。主站可以是工控机或者其他嵌入式控制器,从站使用专用芯片构成EtherCAT从站控制器,其具有完成EtherCAT通信协议所要求的物理层和数据链路层的所有功能。这种通讯总线将一些优秀的专门用于运动控制的总线协议(如Sercos,CAN)与以太网的高通讯带宽结合起来。同时传统工业以太网一般需要在每个节点接收以太网数据包,然后进行解码和编码,而EtherCAT在数据帧处理方式与此不同,系统控制周期由主站发起,主站发出下行电报。当数据帧通过每一个从站设备时,EtherCAT从站控制器直接分析寻址到本机的报文,根据EtherCAT报文,读写数据到报文指定的位置,同时从站硬件把该报文的工作计数器(WKC)加1,表示该数据被处理,整个过程大约产生十几个纳秒延迟。此过程是在从站控制器中通过硬件实现的,因此与协议堆栈软件的实时运行系统或处理器性能无关,有效地提高了通讯实时性。并且从站数量的增加对这一指标影响不大,在同时连接1000个I/O类型的从站节点下,能稳定运行的最小循环时间能达到62.5微秒。目前该总线已成为先进运动控制的主流,其所有协议均是开放,越来越多的工控和伺服厂家推出了支持该种通讯总线的产品。

3 机器人控制系统的软件实现

在TwinCAT PLC Control中提供的遵循IEC 61131-3标准的编程环境下,对4自由度搬运机器人底层软件进行了编写,并期望通过通用功能模块化封装的思想,开发能适用于各种型号工业机器人的底层运动控制程序库。整个控制器程序可以看做一个复杂的状态机,根据程序当前运行结果或外部条件触发而更改运行状态,并调用组件库中的对应功能。机器人组件库由一些功能模块组成,包括插补及运动规划组件,其以运动规划算法为基础完成机器人离线或者在线的运动规划,并在每一个主程序循环周期进行一次机器人的正逆解运算。伺服控制模块通过状态机的方式实现对机器人各轴进行控制,电机轴的运动状态可以通过示教盒或自身内部改变;编码器及传感器读取模块用于读取机器人电机轴的编码器数据及各传感器数据,用于进行反馈控制;上位机通讯网络模块,用于在示教状态下和外部输入设备交互,调用机器人系统的功能;机器人运动学及动力学组件库建立机器人运动学及动力学算法,在每个主程序循环周期内进行计算,通过高速总线将前馈补偿值传递给驱动器。安全模块对整个机器人系统提供安全保障。在软件系统中每个功能模块都以一个任务的形式存在,系统软件流程简图如下:

图1

4 总结

本文提出的控制系统架构和软件实现,使系统动态响应能力大幅提高,动态跟踪误差明显降低。可广泛用于物流自动化行业中的搬运、分拣等方面,具有广阔的前景。

[1]ALBU-SCHAFFER A,HADDADIN S,OTT C,et al.The DLR lightweight robot:design and control concepts for robots in human environments[J].Ind Robot,2007,34(5):376-85.

[2]SPONG M W.Modeling and Control of Elastic Joint Robots[J].J Dyn SysttAsme,1987,109(310-9.

[3]LI Q.Experimental validation on the integrated design and control of a parallel robot[J].Robotica,2006,24(173-81.

[4]GE S S,LEE T H,TAN E G.Adaptive neural network control of flexible joint robots based on feedback linearization[J].Int J Syst Sci,1998,29(6):623-35.

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!