FANUC数控技术的各位朋友们,在上个月我们为大家推出了系统常见问题排查的系列,是不是很有帮助呢?本月起,我们要推出一个新主题——常用PMC功能指令介绍。希望学习PMC编程或者正为梯形图所困的你,一定可以通过这一系列的介绍有所收获!
程序控制指令:
序号 | 指令名称 | 功能号 | 功能 |
1 | COM | 9 | 公共线控制 |
2 | COME | 29 | 公共线控制结束 |
3 | JMP | 10 | 跳转 |
4 | JMPE | 30 | 跳转结束 |
5 | CALL | 65 | 条件调用子程序 |
6 | CALLU | 66 | 无条件调用子程序 |
7 | SP | 71 | 子程序 |
8 | SPE | 72 | 子程序结束 |
9 | END1 | 1 | 第一级顺序程序结束 |
10 | END2 | 2 | 第二级顺序程序结束 |
11 | END3 | 48 | 第三级顺序程序结束 |
12 | END | 64 | 梯形图程序结束 |
13 | NOP | 70 | 空操作 |
COM指令控制其与公共线结束指令(COME)之间的线圈。COM指令中指定线圈数为0,用公共线结束指令(COME)指定控制范围。
如果程序中指定了COM指令,而未指定COME指令,CNC将显示“COMFUNCTION MISSING”错误信息。
指令格式:
控制条件:
ACT=0:指定范围内的线圈无条件断开(设为0);
ACT=1:与COM指令未使用的动作一致。
参数:
指定为0(仅限范围)。
注意:
1、COM指令操作
假定梯图程序中包括COM指令,如下所示。
对于输出线圈“OUTx”,COM指令使得上述梯图与下述梯图效果类似。
COM指定范围内的功能指令正常执行,而不管ACT信号如何。然而若COM指令中ACT=0,线圈执行结果为0。
2、在COM指令的指定范围内不允许使用另外的COM指令。
3、如第1条所描述的,COM指令中ACT=0时,指定范围内的WRT.NOT功能指令的线圈被无条件设为1。
4、在COM和COME指令间不能使用JMP和JMPE指令,否则跳转将不能正常执行。
指令示例:
X0.0=1,X0.1=1。
当R100.0置0时,此时Y0.0=0,Y0.1=1;若将R100.0置1,则Y0.0=1,Y0.1=0。
COME指令指定公共线结束指令(COME)的控制范围。不能单独使用,必须与COM成对使用。指令的使用请见COM指令。
指令格式:
指令示例:
请参考COM功能指令示例。
JMP指令使正常的程序执行顺序发生跳转,当指定JMP指令时,程序跳转至程序跳转结束指令(JMPE)处,不执行JMP与JMPE之间的逻辑指令(包括功能指令)。
使用跳转结束指令(JMPE)指定跳转范围。当跳转结束指令(JMPE)未被指定时,将显示信息“JUMP FUNCTION MISSING”。
指令格式:
控制条件:
ACT=0:跳过指定范围内的逻辑指令(包括功能指令),继续执行程序;
ACT=1:不执行跳转,继续执行JMP下一段程序。
参数:
指定为0(仅限范围)。
注意:
1、JMP指令操作
当ACT=1时,程序跳转至跳转结束指令处(JMPE),指定范围内的指令不执行。该指令可以减少梯图执行时间(扫描时间)。
JMPE指令之间不可嵌套使用。
2、使用JMP和JMPE指令所导致的跳转不能跳转至或者跳转自COM和COME指令之间的程序,否则不能正常执行。
指令示例:
若R100.0=0,不发生跳转,X0.0=1则Y0.0=1;
若R100.0=1,此时程序发生跳转,程序段不执行,即不管X0.0状态如何变化,Y0.0保持上一个状态。
JMPE指令指定跳转指令(JMP)的范围。不能单独使用,必须与JMPE指令成对使用。指令的使用请见JMP指令。
指令格式:
指令示例:
请参考JMP功能指令示例。
功能指令CALL用于调用子程序。在CALL指令中指定子程序号,当条件满足时跳转至子程序。
指令格式:
控制条件:
ACT=0:不执行CALL指令;
ACT=1:执行CALL指令。
参数:
(a) 子程序号
指定要调用的子程序号。子程序号必须以P地址形式指定。
指令示例:
当R100.0置1时,调用P1子程序,Y0.0状态取决于X0.0;若将R100.0置0,不调用P1子程序,无论X0.0如何变化,Y0.0保持之前的状态不变。
功能指令CALLU用于调用子程序。当指定子程序时,程序跳转至子程序。
指令格式:
参数:
(a) 子程序号
指定要调用的子程序号。子程序号必须以P地址形式指定,指定范围L1至L9999。
指令示例:
无条件调用P1子程序,Y0.0状态取决于X0.0。若X0.0=0,则Y0.0=0;若X0.0=1,则Y0.0=1。
功能指令SP用于生成子程序。子程序号作为子程序名称。SP指令与SPE指令一起指定子程序的范围。
指令格式:
参数:
(a) 子程序号
在此指令上指定子程序号,子程序号必须以P地址形式指定。指定的子程序号在顺序程序中必须唯一。
0i-D PMC | 0i-D/0i Mate-D PMC/L | 0i-D DCS PMC |
P1-P5000 | P1-P512 | P1-P512 |
指令示例:
如上图,X0.0行程序段属于P1子程序,X1.0行程序段属于P2子程序。
(下一期继续)
联系客服