KUKA链接机器人程序分析

描述

利用子程序技术可将机器人程序模块化,因而可以有效地按结构设计程序。

目的是不将所有指令写入一个程序,而是将特定的流程、计算或过程转移到单独的程序中。

通过使用子程序产生了一系列的优点:

 由于程序长度减短,主程序结构更清晰并更易读。

 可独立开发子程序:编程耗时可分摊,最小化错误源。

 子程序可多次反复应用。 原则上,有两种不同的子程序类型:

 全局子程序

机器人

一个全局子程序是一个独立的机器人程序,可由另一个机器人程序调用。

可根据具体要求对程序进行分支,即某一程序可在某次应用中用作主程序,而在另一次则用作子程序。

 局部子程序

机器人

局部子程序是集成在一个主程序中的程序,即指令包含在同一个 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_subprogram : my_subprogram()  

调用功能

函数是一种向主程序返回某一值的子程序。

功能拥有一个数据类型。 

功能的调用与子程序类似:在主程序中指定功能的名称,通过圆括号进行。

但是,功能调用绝不能单独存在,而是必须始终为相同数据类型的变量分配该值。

从主程序中调用的示例: REALVAR = REALFUNCTION() INTVAR = 5 * INTFUNCTION() + 1 使用子程序可以使主程序实现结构化,程序的结构化使得程序层次分明。

机器人

子程序不能调用自己本身。






审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分