一、前言:
由于控制单轴的运动控制系统已被广泛实现,而针对轴组协调轨迹运动描述较少,本文已西门子1500T为例,介绍一下基于PLCOPEN定义的轴组功能块,实现直线插补与圆弧插补。
二、轴组状态机
图一
PLCopen 组织在 2008 年 12 月份推出了第四部分规范多轴协调运动控制模块,规范了多轴协调运动控制的理论基础和应用范围,并详尽规定了各种相关的功能块。 如图一所示 分为:轴组运动 、 轴组停止 、 轴组回原点 、 轴组等待 、轴组出错停止 、 轴组禁用
(1)初始状态,需要通过调用 MC_GroupEnable 使能功能块来对轴组功能块进行使能,将其切换到轴组暂停状态。
(2)轴组状态机中,只有在暂停状态下才能调用MC_GroupHome 回零功能块将轴的状态转换到回零点状态。
(3)在运行过程中需要进行停止操作,只能调用 MC_GroupStop 停止功能块使所有的轴停止运动,这时轴组进入停止状态,当所有轴都停止运动时,轴组会自动进入暂停状态;
(4)轴组停止状态下,这时轴组只能调用 MC_ResetGroup 重置功能块来使轴组恢复到停止状态。
三、PLC工艺对象组态
先创建3个轴的工艺对象如图
创建TO_Kinematics
选择轴组类型
关联轴对象
四、坐标系
世界坐标系 (WCS)
运动机构坐标系 (KCS)
法兰坐标系 (FCS)
工具坐标系 (TCS)
对象坐标系 (OCS)
五、轴组功能块说明
(1)直线补为了满足待插补线段具有任意性的特点,插补首点一般不是轴组的起始点。轴组需要先执行起始点到插补首点的直线插补,再执行待插补线段的插补操作
下面以 MC_MoveLinearAbsolute 轴组直线运动功能块为例,对 PLCopen 功能块的模型设计进行说明。轴组直线运动功能块能够实现空间直线运动控制,
直线插补功能块
(2)圆弧插补:相比较直线插补,圆弧插补的实现比较复杂,需要将一段圆弧转化成若干微小线段,在每个运动周期内,轴组进行直线运动,每个细小线段的最终组合逼近理论圆弧。
圆弧插补功能块
(3)BufferMode
BufferMode 功能执行流程图
需要说明的是:PLCopen 标准在定义轴组运动功能块时加 BufferMode引脚BufferMode 功能模式;BufferMode功能有两方面作用:一是可以根据BufferMode模式来实现不同的执行方式包括 Buffered模式和Aborting 模式其中 Buffered 模式包括 Buff-ered、BlendingLow、BlendingPrevious、BlendingNext 和BlendingHigh 5 种速度控制模式二是在缓存模式中可以选择不同的速度控制模式,实现前后功能块间速度的混成和缓和。本研究采用建立信息队列的方法来实现 BufferMode功能。当轴组功能块被使能准备开始运动时,会为其建立一个信息队列,使其成为队首功能块,利用信息队列先进先出的执行方式,每次扫描信息队列时只执行队首功能块,后续使能的功能块也将依次被放入队列中,后续使能的功能块根据所选的执行模式来决定是否清空队列,将其移至队首,以此来实现BufferMode 功能。