(2)运动子程序。Ox0~Ox99运动子程序为运动控制程序,主要为控制20PM系列主机进行X-Y轴双轴运动之子程序,于Ox0~Ox99运动子程序区段中,有支持基本指令、应用指令、运动指令及G码指令,并在程序中可规划呼叫Pn指针子程序,通过PLC提供的内部特D特M进行子程序的控制。主要提供运动子程序的建立,以及运动子程序的运动控制,在架构上可算是20PM的运动指令及G码指令规划区域。
(3) 子程序。这里所说的子程序是指以Pn开头的一般用子程序,主要是被O100主程序及Ox运动子程序调用的子程序。如在O100主程序调用Pn指针,则Pn指针子程序支持基本指令及应用指令;若在Ox0 ~ Ox99运动子程序中调用Pn指针时,则Pn指针子程序区段可支持基本指令、应用指令、运动指令及G码指令。
3.2PMSOFT软件介绍
与台达PLC的WPLSoft软件相似,DVP20PM的编程软件PMSOFT按照IEC61131标准设计,具有梯形图和语句表两种编程方式,且具有G码汇入、错误提示、区段注释、装置注释、标尺、完善的监控窗口、运动指令追踪等便利工具提供给用户,特别值得一提的是该软件具有运动轨迹仿真功能,当您编辑好程序后可利用此功能对加工轨迹进行模拟演示,参见图5。
为方便切换阶梯窗口,只要点选系统信息列中的树枝状对应的程序编号,自动切换对应的程序编辑窗口,在PMSoft编辑环境中同时只能有一个阶梯图窗口,这是为了在庞大复杂程序中找寻程序方便,同时将主程序、运动子程序、一般子程序这三种程序模块化处理,O100主程序只有一个编辑窗口,Oxn运动程序有100个编辑窗口,Pm子程序有256个编辑窗口,总共有357个窗口,每个窗口未编辑都有10 network。程序编辑由网络区段组成,每个网络区段是由输入与输出编辑区域所组成,在编辑过程中,自动产生逻辑结构正确的阶梯图,使用者无须再做额外补线的动作,网络区段编辑并具有错误提示功能。

图5 梯形图编程界面
4 运动控制编程
4.1 相关概念
在谈到DVP20PM产品的应用之前,我们对以下概念进行一个简要介绍。
(1)插补。插补是在组成轨迹的直线段或曲线段的起点和终点之间,按一定的算法进行数据点的密化工作,以确定一些中间点。从而为轨迹控制的每一步提供逼近目标。
逐点比较法是以四个象限区域判别为特征,每走一步都要将加工点的瞬时坐标与相应给定的图形上的点相比较,判别一下偏差,然后决定下一步的走向。如果加工点走到图形外面去了,那么下一步就要向图形里面走;如果加工点已在图形里面,则下一步就要向图形外面走,以缩小偏差,这样就能得到一个接近给定图形的轨迹,其最大偏差不超过一个脉冲当量(一个进给脉冲驱动下工作台所走过的距离)。
(2)直线插补。这个概念一般是用在计算机图形显示,或者数控加工的近似走刀等情况下,以数控加工为例子:
一个零件的轮廓往往是多种多样的,有直线,有圆弧,也有可能是任意曲线,样条线等。数控机床的刀具往往是不能以曲线的实际轮廓去走刀的,而是近似地以若干条很小的直线去走刀,走刀的方向一般是x和y方向。
插补方式有:直线插补,圆弧插补,抛物线插补,样条线插补等等。
所谓直线插补就是只能用于实际轮廓是直线的插补方式(如果不是直线,也可以用逼近的方式把曲线用一段段线段去逼近,从而每一段线段就可以用直线插补了).首先假设在实际轮廓起始点处沿x方向走一小段(一个脉冲当量),发现终点在实际轮廓的下方,则下一条线段沿y方向走一小段,此时如果线段终点还在实际轮廓下方,则继续沿y方向走一小段,直到在实际轮廓上方以后,再向x方向走一小段,依次循环类推.直到到达轮廓终点为止.这样,实际轮廓就由一段段的折线拼接而成,虽然是折线,但是如果我们每一段走刀线段都非常小(在精度允许范围内),那么此段折线和实际轮廓还是可以近似地看成相同的曲线的--这即是直线插补。