《KUKA机器人编程3(共3册)》由会员分享,可在线阅读,更多相关《KUKA机器人编程3(共3册)(89页珍藏版)》请在金锄头文库上搜索。
1、Training 机器人编程 3 库卡系统软件 8 KUKA Roboter GmbH 发布日期 16 10 2012 Version P3KSS8 Roboterprogrammierung 3 V2 zh PDF COL 机器人编程 3 2 89发布日期 16 10 2012 Version P3KSS8 Roboterprogrammierung 3 V2 zh PDF COL 版权 2012 KUKA Roboter GmbH Zugspitzstra e 140 D 86165 Augsburg 德国 此文献或节选只有在征得库卡机器人集团公司明确同意的情况下才允许复制或对第三方开放
2、除了本文献中说明的功能外 控制系统还可能具有其他功能 但是在新供货或进行维修时 无权要 求库卡公司提供这些功能 我们已就印刷品的内容与描述的硬件和软件内容是否一致进行了校对 但是不排除有不一致的情况 我们对此不承担责任 但是我们定期校对印刷品的内容 并在之后的版本中作必要的更改 我们保留在不影响功能的情况下进行技术更改的权利 本文件为原版文件的翻译 KIM PS5 DOC Publication Pub COLLEGE P3KSS8 Roboterprogrammierung 3 PDF COL zh Bookstructure P3KSS8 Roboterprogrammierung 3 V
3、2 1 Version P3KSS8 Roboterprogrammierung 3 V2 zh PDF COL 3 89发布日期 16 10 2012 Version P3KSS8 Roboterprogrammierung 3 V2 zh PDF COL 目录 1结构化编程 5 1 1采用统一编程方法的目的 5 1 2创建结构化机器人程序的辅助工具 5 1 3如何创建程序流程图 9 2SUBMIT 解释器 13 2 1使用 SUBMIT 解释器 13 3KRL 工作空间 17 3 1使用工作空间 17 3 2练习 工作空间监控 26 4用 KRL 进行信息编程 29 4 1用户自定义信息提
4、示概述 29 4 2 提示信息方面的工作 36 4 3练习 给提示信息编程 37 4 4状态信息方面的工作 38 4 5练习 给状态信息编程 39 4 6确认信息方面的工作 41 4 7练习 给确认信息编程 42 4 8等待信息方面的工作 43 4 9练习 给等待信息编程 44 4 10对话信息方面的工作 45 4 11练习 给对话编程 48 5中断编程 49 5 1给中断例程编程 49 5 2练习 中断方面的工作 57 5 3练习 用中断来取消运行 59 6给撤回策略编程 61 6 1给撤回策略编程 61 6 2练习 给撤回策略编程 62 7模拟信号方面的工作 65 7 1给模拟输入端编程
5、65 7 2给模拟输出端编程 67 7 3练习 有关模拟输入 输出端方面的工作 69 8外部自动运行模式的过程和配置 71 8 1配置并采用外部自动运行 71 8 2练习 外部自动运行 79 9给碰撞识别编程 81 9 1给具有碰撞识别的运动编程 81 索引 87 目录 4 89发布日期 16 10 2012 Version P3KSS8 Roboterprogrammierung 3 V2 zh PDF COL 机器人编程 3 5 89发布日期 16 10 2012 Version P3KSS8 Roboterprogrammierung 3 V2 zh PDF COL 1 结构化编程 1结
6、构化编程 1 1采用统一编程方法的目的 采用统一编程方法 的目的 采用统一编程方法 以便 通过严密的分段结构方便地解决复杂的问题 以清晰易懂的方式展示基本方法 无需深度编程知识 提高维护 修改和扩展程序的效率 前瞻性程序规划可 使复杂的任务得以分解成几个简单的分步任务 降低编程时的总耗时 使相同性能的组成部分得以更换 单独开发各组成部分 对一个机器人程序的 6 个要求 1 高效 2 无误 3 易懂 4 维护简便 5 清晰明了 6 具有良好的经济效益 1 2创建结构化机器人程序的辅助工具 注释有什么用处 注释是在编程语言中补充 说明的部分 所有编程语言都由计算机指令 代 码 和对文本编辑器的提示
7、 注释 组成 如果进一步处理源程序 编译 解释等 时 处理软件则会忽略注释 因此不会影响结果 在 KUKA 控制器中使用行注释 即注释在行尾自动结束 单凭注释无法使程序可读 但它可以提高结构分明的程序的可读性 程序员 可通过注释在程序中添加说明 解释 而控制器不会将其理解为句法 程序员负责使注释内容与编程指令的当前状态一致 因此在更改程序时还必须 检查注释 并在必要时加以调整 注释的内容以及其用途可由编辑人员任意选择 没有严格规定的句法 通常 以 人类 语言书写注释 或使用作者的母语或常用语言 对程序内容或功能的说明 内容和用途可任意选择 改善程序的可读性 有利于程序结构化 注释的时效性由程序
8、员负责 KUKA 使用行注释 控制器不会将注释理解为句法 在什么时候和什么 地方使用注释 关于整个源程序的信息 关于整个源程序的信息 作者可在源程序开头处写上引言 包括作者说明 授权 创建日期 出现疑问 时的联系地址以及所需其它文件的列表等等 6 89发布日期 16 10 2012 Version P3KSS8 Roboterprogrammierung 3 V2 zh PDF COL 机器人编程 3 源程序的分段 源程序的分段 标题和段落可以这样标出 在此通常不仅会使用语言表达方式 而且还使用 可由文字转换为图形的方式 单行的说明 单行的说明 这样可以说明文本段 例如程序行 的工作原理或含义
9、 以便于其他人或作 者本人以后理解 对需执行的工作的说明 对需执行的工作的说明 注释可以标记不完整的代码段 或者标记完全没有代码段的通配符 变为注释 变为注释 如要临时删除以后可能还会重新使用的代码组成部分 则要将其变为注释 只 要代码段包含在注释中 则编译器就不再将其视为代码 即实际上代码已经不 再存在 DEF PICK CUBE 该程序将方块从库中取出 作者 Max Mustermann 创建日期 2011 08 09 INI END DEF PALLETIZE 该程序将 16 个方块堆垛在工作台上 作者 Max Mustermann 创建日期 09 08 2011 INI 位置的计算 1
10、6 个方块的堆垛 16 个方块的卸垛 END DEF PICK CUBE INI PTP HOME Vel 100 DEFAULT PTP Pre Pos 驶至抓取预备位置 LIN Grip Pos 驶至方块抓取位置 END DEF PICK CUBE INI 此处还必须插入货盘位置的计算 PTP HOME Vel 100 DEFAULT PTP Pre Pos 驶至抓取预备位置 LIN Grip Pos 驶至方块抓取位置 此处尚缺少抓爪的关闭 END 7 89发布日期 16 10 2012 Version P3KSS8 Roboterprogrammierung 3 V2 zh PDF CO
11、L 1 结构化编程 在机器人程序中使 用 FOLD 有什么作 用 在 FOLD 里可以隐藏程序段 FOLD 的内容对用户来说是不可见的 FOLD 的内容完全如通常情况在程序运行流程中得到处理 通过使用 Fold 可改善程序的可读性 Fold 应用示例有哪 些 在 KUKA 控制器上通常由系统使用准备好的 Fold 例如在显示联机表单时 这些 Fold 使联机表单中输入的值更为简洁明了 并为操作人员隐藏无关的程 序段 除此之外 用户 专家用户组以上 还可以创建自己的 Fold 这些 Fold 例 如可以由程序员使用 使用时虽然可以通知操作人员在程序的一定位置处发生 的事件 但在后台仍保持实际的
12、KRL 句法 Fold 通常在创建后首先显示成关闭状态 DEF Palletize INI PICK CUBE CUBE TO TABLE CUBE TO MAGAZINE END DEF Main INI KUKA FOLD 关闭 SET EA 由用户建立的 FOLD 关闭 PTP HOME Vel 100 DEFAULT KUKA FOLD 关闭 PTP P1 CONT Vel 100 TOOL 2 Gripper BASE 2 Table PTP HOME Vel 100 Default END DEF Main INI KUKA FOLD 关闭 SET EA 由用户建立的 FOLD 打
13、开 OUT 12 TRUE OUT 102 FALSE PART 0 Position 0 PTP HOME Vel 100 DEFAULT KUKA FOLD 关闭 PTP P1 CONT Vel 100 TOOL 2 Gripper BASE 2 Table PTP HOME Vel 100 Default END 8 89发布日期 16 10 2012 Version P3KSS8 Roboterprogrammierung 3 V2 zh PDF COL 机器人编程 3 为什么要使用子程 序技术进行工作 在编程中 子程序主要用于实现相同任务部分的多次使用 从而避免程序码重 复 另外 采
14、用子程序后也可节省存储空间 使用子程序的另一个重要原因是由此会使程序结构化 子程序应该能够完成包含在自身内部并可解释详明的分步任务 子程序现在主要是通过其简洁明了 条理清晰的特点而使得维护和排除程序错 误更为方便 因为现代计算机内部用于调用子程序的时间和管理成本实际上已 经无足轻重了 可以多次使用 避免程序码重复 节省存储空间 各组成部分可单独开发 随时可以更换具有相同性能的组成部分 使程序结构化 将总任务分解成分步任务 维护和排除程序错误更为方便 子程序的应用 指令行的缩进有什 么作用 为了便于说明程序模块之间的关系 建议在程序文本中缩进嵌套的指令列 并 一行紧挨一行地写入嵌套深度相同的指令
15、 所获得的效果只是体现在外观上 它只与作为人与人之间交流方式的程序可读 性有关 DEF Main INI KUKA FOLD 关闭 SET EA 由用户建立的 FOLD 关闭 PTP HOME Vel 100 DEFAULT KUKA FOLD 打开 BWDSSTART FALSE PDAT ACT PDEFAULT FDAT ACT FHOME BAS PTP PARAMS 100 H POS XHOME PTP XHOME PTP P1 CONT Vel 100 TOOL 2 Gripper BASE 2 Table PTP HOME Vel 100 Default END DEF MAI
16、N INI LOOP GET PEN PAINT PATH PEN BACK GET PLATE GLUE PLATE PLATE BACK IF IN 1 TRUE THEN EXIT ENDIF ENDLOOP END 9 89发布日期 16 10 2012 Version P3KSS8 Roboterprogrammierung 3 V2 zh PDF COL 1 结构化编程 合理命名的数据名 称有什么作用 为了能够正确解释机器人程序中的数据和信号函数 应在为其命名时使用意义 明确的概念 比如其中包括 输入和输出信号的长文本名称 工具与基坐标的名称 输入和输出的信号协定 点的名称 1 3如何创建程序流程图 什么是程序流程图 PAP 程序流程图 PAP 是一个程序的流程图 也称为程序结构图 它是在一个程 序中执行某一算法的图示 描述了为解决一个课题所要进行的运算之顺序 程 序流程图中所用的图标在 DIN 66001 标准中作了规定 程序流程图也常常用 于图示过程和操作 与计算机程序无关 与基于代码的描述相比 提高了程序算法的易读性 因为通过图示可明显地便 于识别结构 以后转换成程序