历史上的今天
今天是:2026年03月02日(星期一)
2023年03月02日 | KUKA链接机器人程序
2023-03-02 来源:机器人及PLC自动化应用
利用子程序技术可将程序模块化,因而可以有效地按结构设计程序。目的是不将所有指令写入一个程序,而是将特定的流程、计算或过程转移到单独的程序中。
通过使用子程序产生了一系列的优点:
由于程序长度减短,主程序结构更清晰并更易读。
可独立开发子程序:耗时可分摊,最小化错误源。
子程序可多次反复应用。
原则上,有两种不同的子程序类型:
全局子程序
一个全局子程序是一个独立的机器人程序,可由另一个机器人程序调用。可根据具体要求对程序进行分支,即某一程序可在某次应用中用作主程序,而在另一次则用作子程序。
局部子程序
局部子程序是集成在一个主程序中的程序,即指令包含在同一个 SRC 文件中。子程序的点坐标相应存放在同一个 DAT 文件中。
每个程序都以 DEF 行开始并以 END 行 结束。如果要在主程序中调用子程序,则正常情况下子程序会从 DEF 运行至 END。到达 END 行后,程序运行指针重新跳入发出调用指令的程序 (主程序)。
为了能提早退出子程序 (即在 END 行之前),可以在子程序中编入 RETURN 指令。程序读到该程序行时,即可提前终止子程序的运行。
调用子程序的操作步骤:
为了能够对子程序调用进行编程,必须已选择用户组 “ 专家 ”。子程序调用的句法为:名称( )
1. 在主菜单中选择 配置 》 用户组。将显示出当前用户组。
2. 若欲切换至其它用户组,则:按下 登录 …。选定用户组专家。
3. 输入密码 kuka,然后用登录确认。
4. 用 打开将所需的主程序载入编辑器。
INI
PTP HOME Vel= 100% DEFAULT
PTP HOME Vel= 100% DEFAULT
5. 将光标定位在所需的行内。
6. 输入子程序名称和括号,例如:myprog( )。
INI
PTP HOME Vel= 100% DEFAULT
myprog( )
PTP HOME Vel= 100% DEFAULT
7. 用关闭图标关闭编辑器并保存修改。
KRL文件中包含至多255个局部子程序
子程序的最大嵌套深度为20
局部子程序位于主程序之后,通过 DEF 和 END 区别
局部子程序可被重复调用
点坐标保存于相应的 DAT 列表,并且可被全部文件调用
当局部子程序执行完,程序跳转回调用子程序后的下一条指令
子程序是从主程序中链接的程序。处理完子程序后,主程序将在紧接着子程序调用后面的一行继续运行。
局部子程序包含在与主程序相同的 SRC 文件中。可用关键词 GLOBAL 将其定义为全局。
全局子程序是从另一个程序中链接的包含自有 SRC 文件的程序。
在主程序中给出子程序的名称,然后加上圆括号,即可调用子程序。
在下列示例中将调用子程序 my_subprog :
my_subprogram()
调用功能
函数是一种向主程序返回某一值的子程序。功能拥有一个数据类型。
功能的调用与子程序类似:在主程序中指定功能的名称,通过圆括号进行。但是,功能调用绝不能单独存在,而是必须始终为相同数据类型的变量分配该值。
从主程序中调用的示例:
REALVAR = REALFUNCON()
INTVAR = 5 * INTFUNCTION() + 1
使用子程序可以使主程序实现结构化,程序的结构化使得程序层次分明。
子程序不能调用自己本身。
审核编辑 :李倩
史海拾趣
|
在单片机应用开发中,代码的使用效率问题、单片机抗干扰性和可靠性等问题仍困扰着 工程师。为帮助工程师解决单片机设计上的难题,《电子工程专辑》网站特邀Holtek香 港分公司工程部处长邓宏杰先生担任《单片机应用编程技巧》专题讨论的嘉宾,与广 ...… 查看全部问答> |
|
编程器是按下面的图接的。 我是用STC-ISP软件下载的,COM口没错。 下面是下载失败的提示信息: Chinese:正在尝试与 MCU/单片机 握手连接 ... MCU Type is: STC89C52RC MCU Firmware Version: 4.3C Chinese:MCU 固件版本号: 4.3C Double s ...… 查看全部问答> |
|
说法太多了,HP Compaq nx6325 RD122AA#AB到底是否支持SATA,请明白的帮看看我的系统信息 http://photo1.bababian.com/upload14/20090207/651211455BCE31074A0A2B1FF588E4DE_500.jpg http://photo1.bababian.com/upload14/20090207/55CFC057F9DCF84795016970BDC17D0E_500.jpg http://photo1.bababian.com/upload14/20090207/B5D16 ...… 查看全部问答> |
|
在网上下了几个debug都提示dos版本不对,实在找不到dos 7.1下的debug,邮箱:jerk66@163.com,非常感谢… 查看全部问答> |
|
犹太人在巴勒斯坦的历史 巴勒斯坦在亚洲西部,位于地中海、死海、约旦河之间,面积约2.7万平方公里。公元前三千年,从阿拉伯半岛迁来的半游牧部落的迦南人定居巴 勒斯坦,公元前二千年建立迦南国。后来,爱琴海沿岸的腓尼基人来到巴勒斯坦 ...… 查看全部问答> |
|
WinCE5.0不加载explorer.exe无法保存注删表 我的注册表是基于hive方式的,一切都很正常,但是修改注册表: [HKEY_LOCAL_MACHINE\\init] \"Launch50\"=\"MyApplication.exe\" \"Depend50\"=hex:14,00, 1e,00 即explorer.exe用我自己的程序代替,不加载桌面而启动我的程序,这时出现注册表 ...… 查看全部问答> |
|
今天叫同学拿的Jlink 仿真器。 一开始我把驱动装好,把Jlink 连上电脑 , 再把JTAG的20PIN 连上 ARM9开发板的 JTAG 调试口。刚开始的时候 用J-Link Commander 能打印出Jlink 的信息 但是检测不到开发板芯片,后来鼓捣了几 ...… 查看全部问答> |
|
终端节点、路由器节点 应用程序都采用同样的程序编译,定时5分钟传一帧数据到协调器 运行一段时间,部分路由器没有定时上送帧了,终端节点是正常的。 但是路由节点转发别的节点的数据的功能是正常的 。 总共74个节点,其中6个路由器。 & ...… 查看全部问答> |




