![工业机器人实战应用及调试](https://wfqqreader-1252317822.image.myqcloud.com/cover/838/43806838/b_43806838.jpg)
上QQ阅读APP看书,第一时间看更新
5.3 C开头指令
5.3.1 CallP——调用子程序指令
(1)功能 本指令用于调用子程序,子程序与主程序的关系如图5-3所示。
![](https://epubservercos.yuewen.com/F85A97/23083822101913406/epubprivate/OEBPS/Images/73_05.jpg?sign=1739237593-HHqPtcCwSZzj0EjzLAQuLcAqDlCJsTwc-0-255371c88c9b369b32850bfb1ce19fdb)
图5-3 调用子程序示意图
(2)指令格式 CallP[程序名][自变量1][自变量2]。
(3)指令格式说明
1)程序名:被调用的子程序名字。
2)[自变量1][自变量2]:设置在子程序中使用的变量,类似于局部变量,只在被调用的子程序中有效。
(4)指令例句1 调用子程序时同时指定自变量。
![](https://epubservercos.yuewen.com/F85A97/23083822101913406/epubprivate/OEBPS/Images/74_01.jpg?sign=1739237593-sr4PFkbKMXcl0D22lKe8kowfuJ0ErytD-0-b547c35a38c92465f15bf6ac67fee38d)
10号子程序如下:
![](https://epubservercos.yuewen.com/F85A97/23083822101913406/epubprivate/OEBPS/Images/74_02.jpg?sign=1739237593-psTivjeSljuAWbNQ3Bk7EXrYMm6fwydF-0-e27f4faec20bc90eea1036a78ff5678b)
注意:在主程序第1步、第4步调用子程序时,10号子程序变量M01,P01,P02与主程序指定的变量M1,P1,P2相对应。
在主程序第10步调用子程序时,10号子程序变量M01,P01,P02与主程序指定的变量M2,P3,P4相对应。
(5)指令例句2 调用子程序时不指定自变量。
![](https://epubservercos.yuewen.com/F85A97/23083822101913406/epubprivate/OEBPS/Images/74_03.jpg?sign=1739237593-oXb4KRufYG9Y69XarW2X52EvrECsqFzn-0-674e20ae876f49b61b1b77e86543bfef)
20号子程序如下:
![](https://epubservercos.yuewen.com/F85A97/23083822101913406/epubprivate/OEBPS/Images/74_04.jpg?sign=1739237593-OVWxyNwMxMsDVg0DWQZzkG3KQF3SxGIG-0-9e88b7b8718bddcb48c0f488ba213ea7)
(6)说明
1)子程序以End结束并返回主程序。如果没有End指令,则在最终行返回主程序。
2)CallP指令指定自变量时,在子程序一侧必须用FPrm定义自变量,而且数量类型必须相同,否则会发生报警。
3)可以执行8级子程序调用。
4)TOOL数据在子程序中有效。