Python是通用编程中被广泛使用的高级编程语言。Python可以让你高效工作,并且更有效率地集成你的系统。Python的语法允许程序员用比其他语言更少的代码来表达概念,这使它变得十分友好和容易学习。
上一节 previous section介绍了RoboDK API配合通用编程语言Python进行机器人编程的优势。
Python会自动默认与RoboDK进行安装和集成。通过菜单选项卡中的选择工具Select Tools ➔选项Options ➔其他Other更改默认设置(Python位置和Python编辑器Editor)。
提示: 除了Python IDLE(默认的集成开发环境)之外,还可以使用特定的文本编辑器,比如Notepad++或PyCharm。下图展示了相关文本编辑器的路径。
面向Python的RoboDK API有两个模块:
●Robolink模块(robolink.py): robolink模块建立了一个RoboDK与Python之间的接口。RoboDK Station Tree中的任何对象都可以通过使用Robolink对象进行检索,并由类别Item对象进行返回。同时也可以根据Robolink.Item类别对该项目执行各种操作。
●Robodk模块(robodk.py): robodk模块类似于Python的一个机器人工具箱,它允许对不同的机器人供应商进行姿态变换并获得欧拉角。所有的后置处理器都依赖于这个robodk模块。
Python的相关模块位于路径C:/RoboDK/Python/下,在安装RoboDK或者默认Python设置Set default Python settings时(见前面的图像),这些模块将会自动复制到Python文件夹路径中。
下面的小节将展示如何为仿真、离线编程和在线编程分别创建一个简单的程序。更多示例会在Python API for RoboDK 页面中展示。此外,RoboDK库还提供了Python的示例宏,它位于C:/RoboDK/ library / macros /路径下。
按照以下步骤,可以操纵UR机器人建立一个项目示例,并命令该机器人仿真完成一些动作。
1. 选择文件File ➔打开 Open
2. 打开UR10机器人
3. 选择文件File ➔打开 Open
4. 打开Paint_gun.tool文件
5. 在路径C:/RoboDK/Library/Macros/中打开离线编程Python实例文档SampleOfflineProgramming.py
提示:更多关于如何创建RoboDK站的信息请参见开始Getting started部分。
提示:创建一个Python程序可以在菜单选项卡中点击选择程序Program➔ 添加Python程序Add Python program。
6. 双击离线编程实例SampleOfflineProgramming以运行该仿真程序。机器人就会在它当前位置周围绘制一个六边图形,TCP的运行轨迹此时将会显示为黄色。或者右键单击该程序,选择运行Python脚本Run Python Script。
7. 右键单击离线编程实例SampleOfflineProgramming,选择编辑Python脚本Edit Python Script,就会看到下图所示的流程。
关于机器人的参考坐标,SampleOfflineProgramming宏会在机器人当前位置绘制出一个以n_sides为边和R为半径的多边形。你也可以将机器人移动到不同的位置,这样就会改变多边形的尺寸,同时会重新运行一次该程序。
你也可以在我们网站上的离线编程offline programming部分找到类似的案例。
提示:当尝试在Python编辑器上运行该程序,选择运行箭头➔Run,随后弹出的窗口会显示所有打印命令或是任何错误提示信息。
Python支持通过重复使用之前相同的Python代码 (如前面的Python仿真Python Simulation部分所示) 离线生成Python程序。离线编程Offline Programming允许生成在特定机器人控制器上执行过的机器人程序:
1.点击Python程序
2.选择生成机器人程序Generate robot program (F6)
基于这种操作,可以快速通过执行一个特定于机器人控制器的机器人程序获得相应结果,这个操作可以替代类似的仿真程序。
提示:右键单击机器人,选择后置处理程序Select Post Processor来指定离线编程里不同的后置处理器(如后置处理程序Post Processor部分所示)。
注意:点击生成机器人程序Generate robot program选项后,系统会自动将RDK/Robolink模块下的RunMode模式切换为RUNMODE_MAKE_ROBOTPROG模式。这意味着Python程序可以在RoboDK 图形用户界面GUI之外的编程环境里执行生成特定于供应商的程序,替代仿真程序。相关代码如下所示:
RDK = Robolink()
RDK.setRunMode(RUNMODE_MAKE_ROBOTPROG)
Python程序支持通过重复使用之前相同的Python代码(如Python仿真Python Simulation部分所示) 直接控制操纵机器人。在线编程允许在特定的机器人控制器上,使用机器人驱动Robot Drivers来运行该程序:
1. 点击Python 程序
2. 选择运行机器人Run on robot
随后程序就会在执行Python程序的时候运行该机器人。
重要提示:使用机器人驱动Robot Drivers需要连接PC和机器人(右键单击机器人,然后选择Connect to robot…)。更多相关信息请参见机器人驱动Robot Drivers section部分。
注意: 点击运行机器人Run on robot选项,系统会自动将RDK/Robolink下的RunMode模式切换为RUNMODE_MAKE_ROBOTPROG模式。这意味着操作者可以在RoboDK图形用户界面GUI之外的操作环境下运行该机器人的移动命令。相关代码如下所示:
RDK = Robolink()
RDK.setRunMode(RUNMODE_RUN_ROBOT)
提示:在线编程Python实例文档SampleOnlineProgramming.py位于路径C:/RoboDK/Library/Macros/ folder下,它提供了一个非常完整的示例,测试这个示例需要配合使用一个六边图形,相关内容可参见Python仿真Python simulation部分。
注释:更多关于如何通过API使用机器人驱动器的信息,可参见机器人驱动部分Robot Drivers section。