8.6 对M、S、T指令的处理程序
1.对M指令的处理
M指令的主要用途是:在加工程序中发出M指令,用以驱动主轴及外围设备如润滑电动机,冷却电动机的动作,对于构成一台机床的整体协调动作极其重要。事实上M指令就像一个开关。可以通过这个开关启动某一设备动作。
在PLC程序中处理M指令可分为三部分:
1)对加工程序中发出的M指令进行检测。如果加工程序中发出了M指令,在PLC程序中要检测出来,并据此发出相关的指令信号。这一部分的程序处理如图8-13所示,图中,R504是系统内部用于存放M代码的文件寄存器。当加工程序中发出M指令后,R504中的数据就是其相应的代码。例如:
加工程序发出了M3指令。R504=H3;
加工程序发出了M25指令,R504=H25。
R504中存储的是BCD码。在处理时必须注意。在图8-13中,用以与R504比较的数据是十六进制数据就是因为R504中的数据是BCD码。(可参看本书第7章或接口手册)
R504中的数据还有一特点,即一旦R504中存储了一个M代码数据后,它一直保持该数据,直到下一个M代码被输入。因此在本书第25章图25-2所示的PLC程序中,要注意可以使用脉冲型指令清零。
图8-13 用于检测M代码的程序
另外,在三菱数控中,在同一行加工程序中可以同时发出4个M指令,(可参看本书第7章或接口手册),其处理方法都是类似的。
R504存放第1位置的M指令代码;
R506存放第2位置的M指令代码;
R508存放第3位置的M指令代码;
R510存放第4位置的M指令代码。
2)使用这一“相关信号M”驱动对应的外围设备工作。发出M指令的目的还是要启动相关的设备动作,在图8-14所示的程序中,就是用“M3”启动“主轴正转”的程序,在这一程序中可以清楚地看到M指令相当于一个开关。
图8-14 M指令的驱动对象,完成条件及FIN信号
3)对M指令完成动作的检测。由M指令发出的动作是否执行完成了呢?必须用一信号来检测,在图8-14所示的程序中,M3指令就是要驱动“主轴正转”,当“主轴正转Y1898=ON”,就表示M3指令的目的达到了,因此Y1898=ON就是M3指令的“完成条件”。
每一个M指令对应一个自己的“完成条件”,发出一个M指令,随后又检测到该M指令的“完成条件”后,就驱动系统专用接口“Y0C1E”。该接口的意义是:从自动程序或操作面板上发出M、S、T指令已经执行完毕,马上进入执行下一行程序。这一接口的作用非常重要,正确的使用可以构成安全的生产节拍。在组合机床和磨床程序中会使用很多M指令,因此正确的理解和使用M指令是很重要的。
2.S指令
S指令是主轴运动指令。S指令的功能有两个方面,一是指定主轴的转速,一是利用其选通信号发出主轴换挡指令。S指令也有完成条件,这就是“主轴换挡完成”或“主轴速度到达”。用“完成条件”驱动专用接口“Y0C1E”(FIN)。
3.T指令
T指令即选刀指令,也是在自动加工程序中的指令,该指令功能其一是指定要选用的刀具号,其二也可以指定一个换刀过程。因此,T指令也有“完成条件”——特别是用于指定一个“换刀过程”时,这个“完成条件”条件的确认就特别重要。车床的换刀就习惯只用一个T指令指定一个换刀过程。
图8-15所示为对M、S、T指令的组合处理。如果在自动加工程序的同一行中同时发出M、S、T指令时,
图8-15 M、S、T指令的完成条件及其对FIN指令的处理
例如:T09 M6;
S2000,M3,M8
必须M、S、T指令的完成条件都满足时才进入下一行。