首先我们回顾一下同步指令的用法:
MOVESYNC -- 同步运动,皮带上物体跟随
语法:MOVESYNC(mode,synctime,syncposition,syncaxis,pos1[,pos2, pos3…])
参数解释:
(1)mode:mode=0 + angle,angle:皮带旋转角度,角度=皮带轴dpos正向与BASE轴正向的夹角。使用时需要将角度转换为弧度(0~2PI)。
(2)synctime:同步时间,ms单位。
(3)syncposition:皮带轴物体被感应到时皮带轴的位置。
(4)syncaxis:皮带轴轴号,-1表示没有皮带轴。
(5)pos1:皮带轴物体被感应到时的BASE第1个轴绝对位置。
(6)posn:皮带轴物体被感应到时的BASE第n个轴绝对位置。
使用疑难点解析
(1)如何获知syncposition:皮带轴物体被感应到时皮带轴的位置?
首先,我们先了解跟随的完整实现流程,如下:
光电传感器产生信号→控制器收到信号,锁存获取跟随坐标→产品流到到位,跟随触发→追赶产品,进入同步加工,走轨迹→进入下一次跟随。
那么按照流程看,物体被感应到时的位置就由锁存产生并记录,我们只需要将锁存数据记录就获取到了参数syncposition的值。
(2)如何获知同步跟随所需的POSN:皮带轴物体被感应到时跟随轴的位置?
syncposition与POSN都是在物体被感应到时的位置,两者的关系是同时相对静止的;所以此处的POSN:皮带轴物体被感应到时跟随轴的位置并不是感应到产品时跟随轴所处的位置,而是感应到产品时跟随轴应该走到的位置,也就是我们想要的产品同步跟随位置点。
在上一步,我们获知了皮带轴的感应位置是在锁存的时候获取到,那么可以在程序中设计,产品经过传感器后停下来,获取当前皮带轴位置,用锁存到的值-皮带轴当前位置=跟随方向的位移量→移动归零后的跟随轴组到产品上标记的需要加工的起点位置,记录下轴组位置数据→将轴组中跟随方向轴的坐标-计算出来的跟随方向的位移量=锁存时跟随轴组中跟随方向的轴位置→记录下数据就得到了皮带轴物体被感应到时跟随轴的位置POSN。
(3)跟随三个过程中的数据怎么填?是否需要重新计算?
跟随三个过程中的参数数据不需要重新计算;三个过程中唯一需要变化的参数是synctime,其他的参数保持不变;而synctime参数根据实际加工需要设定即可,一般会将同步加工时间设置大。
(4)在同步加工段中,怎么去走加工轨迹?能直接控制跟随轴组走轨迹吗?
在同步过程中一般是不能直接使用运动指令去操控跟随轴组走轨迹的,不然会打断跟随的状态;可以使用叠加运动的方式间接走轨迹;通过addax指令将几个没有用到的虚拟轴,叠加到跟随轴组上,使用运动指令控制虚拟轴执行加工轨迹,就能实现在保持跟随状态下走加工轨迹。
(5)不同产品轨迹所需时间不一样,同步加工段的时间怎么计算?
其实在实际应用中,同步加工段的时间通常会设置一个很大很大的时间值确保加工完成,加工完成后,用MOVESYNC的-2模式强制结束即可。
(6)加工中产品不断进来,怎么实现跟随轴组不回待机,连续跟随加工产品?
只需要注意不要在程序中每一段的跟随加工返回待机位的后面加入等待或者其他进运动缓冲的指令即可;因为复位用-1模式时,其会被后面的缓冲MOVESYNC覆盖,也就是当下一个产品的MOVESYNC跟随指令已经压进运动缓冲之后,当前产品加工完的复位MOVESYNC就会被覆盖,无效。