优傲机器人

优傲机器人可通过RoboDK采用两种方式编程:URP文件与脚本文件。

1.图形用户界面(URP文件):URP程序通过机器人示教器的触摸屏创建。一个URP程序可包含一个或多个SCRIPT文件作为子程序。URP程序在执行前会在机器人控制器后台自动转换为SCRIPT程序。

2.脚本文件:脚本程序使用URScript编程语言。与其他编程语言类似,URScript支持变量、数据类型、流程控制语句及函数等。此外,URScript还内置了用于控制机器人I/O和运动的专用变量与函数。

使用RoboDK,你可以生成可由UR机器人执行的SCRIPT和URP文件。此外,如果机器人与计算机相连,还可以通过RoboDK远程运行程序

RoboDK亦支持将SCRIPT文件导入模拟器,便于对脚本程序进行仿真、修改后重新导出。

UR机器人软件界面称为PolyScope(如下图所示)。

Robots Universal Robots - 图片 1

连接UR机器人IP

机器人的IP地址需要直接从RoboDK模拟器执行程序。也可以通过FTP传输程序文件。

机器人的IP地址可以在UR示教器主屏幕的About菜单获取。

Robots Universal Robots - 图片 2

机器人必须通过以太网连接(直接连接或通过网络)与计算机相连。Ping测试可用于检测网络链路是否已正确建立。

运行程序

机器人驱动程序提供了离线编程(即先生成程序,然后传输到机器人并执行)的替代方案。你可以直接在机器人上运行RoboDK的仿真(在线编程)。更多信息请参阅机器人驱动器章节。

连接到机器人操作步骤:

1.在RoboDK中右击机器人

2.选择:Robots Universal Robots - 图片 3连接到机器人...

3.输入机器人的IP地址

4.选择:连接

如果连接成功,会显示"Ready"的绿框。

Important:如果你使用的是URe机器人系列(UR3e、UR5e或UR10e),则需要额外开启URe远程控制选项。

Note:如果连接失败,请确保在计算机和机器人之间正确建立了网络连接。确保计算机IP与机器人位于同一网络。在Windows系统中,你可能需要管理员权限才能这样做。更多信息请参考故障检测章节。

Note:为了更好地排除故障,建议关闭Windows防火墙。

在连接机器人窗口选择:获取位置关节运动,即可移动机器人。

Tip:如果机器人没有反应,双击:断开,可强制停止驱动器进程。然后,选择:连接,即可重启连接。

Robots Universal Robots - 图片 4

从电脑到机器人运行程序有两种不同的方法:

1.通过RoboDK逐步运行并实时反馈(在线编程)​​:

将机器人作为服务器,模拟器中的每条指令会逐步发送至机器人执行。该方法适用于调试场景。

a.右键点击程序(本例中为Print3D)

b.选择:在机器人上运行

c.双击程序启动(或右键点击选择:运行)

勾选此选项后,每次双击程序(或右键选择运行)时,RoboDK将自动连接真实机器人。

这些操作也可从RoboDK API中获得,它可以将机器人编程与其他应用程序整合在一起。API可用Python和C#等程序语言编写。

Robots Universal Robots - 图片 5

2.发送程序至机器人(机器人离线编程)​​:

此方法会生成完整程序,传输至机器人并直接启动执行。

a.右键点击程序(本例中为Print3D)

b.选择:发送程序到机器人(Ctrl+F6)

Robots Universal Robots - 图片 6

 

启用URe远程控制

如果你使用的是URe机器人(UR3e、UR5e或UR10e),则应启用UR机器人控制器上的远程控制选项。

请按照以下步骤启用URe的远程控制功能:

1.从右上角按钮选择"设置"菜单

2.选择系统-远程控制

3.选择启用

4.将操作模式更改为远程控制

Note:第一代UR机器人(非URe),如UR3、UR5和UR10,默认情况下已启用远程控制选项。

Robots Universal Robots - 图片 7Robots Universal Robots - 图片 8

Robots Universal Robots - 图片 9

在UR控制器上运行程序

RoboDK仿真准备就绪后,你就可以生成SCRIPT和/或URP程序。这两个文件可由机器人控制器执行。请按照以下步骤,从机器人仿真中生成SCRIPT和URP程序:

1.右键单击程序(本例中为Print3D)

2.选择生成机器人程序F6

程序将在文本编辑器中显示(可在菜单:工具➔选项➔程序中更换该行为)。

Tip:使用名为优傲( Universal Robots URP)的后处理器生成URP文件,可在机器人控制器上轻松修改。右击程序,选择"选择后处理器",即可更改后处理器。

Tip:可以选择不同的后处理器或自定义后处理器,以定义程序的生成方式(例如,支持夹爪或外部传感器)。

Note:默认的后处理器(称为Universal Robots)会生成一个SCRIPT程序和一个以脚本文件形式执行程序的URP程序。此后置处理器经过优化,可以很好地处理大型程序(如果选择Universal Robots URP后置处理器,则不会出现这种情况)。

Robots Universal Robots - 图片 10

可以通过SFTP传输或USB驱动器传输SCRIPT和URP文件。

Note:URP程序可直接在机器人上执行,但SCRIPT程序必须从另一个URP程序执行。

加载URP程序

以下步骤概述了在优傲(UniversalRobots)机器人上加载URP文件的步骤。

1.右击程序选择:选择后处理程序

2.选择 Universal Robots URP。        
前2个步骤是可选的,因为默认职位也会生成URP文件,不过,它可以让你生成用户可读的URP程序,而不是执行脚本文件的URP程序。

3.右击程序,选择生成机器人程序(F6)

4.将生成的URP文件保存到USB存储盘中。

5.将USB存储盘连接到机器人示教器(UR的Polyscope)

6.在机器人示教器上选择"运行"选项卡

7.选择"加载程序",加载RoboDK生成的程序

8.选择"程序"选项卡,然后选择"播放"按钮启动程序

Note:你可能需要切换到手动模式(右上角显示手形的按钮必须可见)。

Note:你可能需要激活机器人(左下方的指示灯应为绿色,而非红色)。

9.选择播放按钮启动程序。

Robots Universal Robots - 图片 11Robots Universal Robots - 图片 12

Robots Universal Robots - 图片 13Robots Universal Robots - 图片 14

加载脚本文件

以下步骤和图片概括了在机器人上执行SCRIPT程序的步骤。运行URP程序文件不需要这些步骤:

1.在示教器主屏幕上选择机器人程序

2.选择Empty Program

3.选择选项卡:Structure

4.选择选项卡:Advanced

5.选择:Script Code

6.选择File(如图所示)

7.选择RoboDK生成的脚本文件

8.选择播放图标运行程序

9.选择文件➔Save

10.最后,就可以执行程序了

Robots Universal Robots - 图片 15Robots Universal Robots - 图片 16

Robots Universal Robots - 图片 17Robots Universal Robots - 图片 18

传输程序(FTP )

从RoboDK生成的SCRIPT程序(如按F6键)可通过USB盘传输到机器人,如果机器人和计算机连接,也可通过FTP传输。

建议将FileZilla客户端安装在默认路径下或直接安装在RoboDK安装文件夹内,以便RoboDK自动检测到它:

C:\RoboDK\FileZillaFTP客户端

通过FTP传输文件:

1.右键点击机器人

2.选择:连接到机器人...

3.下拉菜单选择:浏览,with FileZilla…。

4.选择:文件➔网站管理器...

5.预定义站点中选择:Universal Robots sample

6.选择:Duplicate。这会创建Copy of Universal Robots sample,一个副本。

7.输入机器人的IP地址(本例中为192.168.1.66)。

8.选择:Connect

9.将之前生成的SCRIPT文件传输到机器人。

SCRIPT程序通常存储在机器人控制器的/Programs/文件夹中。

Note:通信端口可能需要改为22,UR控制器可能只接受SFTP连接。

Robots Universal Robots - 图片 19

UR监控功能

RoboDK库中提供专用宏文件,可实时监控UR机器人状态,并将真实机器人的位姿同步至模拟环境。

1.选择:文件➔打开

2.从以下位置加载宏UR_ActivateMonitoring.py:C:/RoboDK/Library/Macros/。我们将在站内添加一个新的Python物件。

3.确保在机器人连接参数中正确提供了机器人的IP地址。

4.双击宏即可开始监控。

模拟器将更新机器人的位置,并在真实机器人移动时创建目标。此外,还可以监控机器人的速度、加速度和电机电流。

RobotiQ夹爪

RoboDK支持为优傲机器人生成可操作RobotiQ夹爪的程序。既可通过离线编程生成程序,也可通过RoboDK的UR机器人驱动来操控该夹爪。

通过RoboDK操作RobotiQ夹爪 ​

借助RoboDK离线生成的程序,你可直接从UR控制器端操作RobotiQ夹爪。

启用RobotiQ夹爪支持​需按以下步骤选择专用后处理器:

1.右键单击程序或机器人

2.选择:选择后处理程序

3.指定"Universal_Robots_RobotiQ"后处理器

Tip:程序关联的后处理器变更将作用于所有使用同款机器人的程序

配置完成后,我们可以生成夹爪控制指令,例如:rq_move_and_wait(255)完全打开夹爪,或rq_move_and_wait(0)完全关闭夹爪。

Robots Universal Robots - 图片 20

​​在RoboDK中完成程序准备后,可通过以下两种方式在机器人上运行程序:​​

  • 右键单击程序(如GripperOpenClose),然后选择"发送程序到机器人"。
  • 右键单击程序(GripperOpenClose),然后选择生成程序(此方式需手动将程序加载到机器人)。

此操作方式无需使用驱动程序。

Tip:进一步了解如何在程序部分生成程序。

通过驱动程序操作RobotiQ夹爪​​

你可以使用驱动器(在机器人上运行选项)直接从RoboDK操作RobotiQ夹爪。通过用于UR和RobotiQ的RoboDK驱动程序,你可以从RoboDK中逐步运行程序,并随时从RoboDK中查看正在运行的指针。

确保可连接至机器人(可能需要Windows管理员权限),以允许此通信(如果禁用Windows防火墙,可能有助于排除是否与防火墙有关的问题)。必要时需添加Windows防火墙规则(或临时关闭防火墙排查问题)。

Note:选项"生成程序(F6)""发送程序到机器人"仍可正常工作,无需设置驱动器(Windows防火墙、杀毒软件等)。

你应按照以下步骤,为直接从RoboDK移动RobotiQ夹爪添加支持:

1.下载脚本文件:          
https://robodk.com/files/upload/progrobodk-rq.zip

Note:对于不支持通过工具进行通信的旧版控制器,应使用此版本:
https://robodk.com/files/upload/progrobodk-rq-no-tool-com.zip。

2.在此处解压缩progrobodk.script文件:         
C:/RoboDK/bin/progrobodk.script

3.确保重新启动正在运行的驱动器(双击断开连接,然后,连接)。

4.菜单栏选中:工具➔选项➔驱动选项卡。

5.取消选中该选项:当连接到机器人时,在RoboDK中显示机器人反馈(仅兼容机器人)

Tip:UR日志可以帮助我们了解机器人方面是否有任何故障。

要使用驱动器正确操作夹爪(例如,打开/关闭夹爪),应通过传递0-255范围内的参数,使用程序调用rq_move_and_wait。

例如

rq_move_and_wait( 0 ) # Fully close the gripper

rq_move_and_wait( 255 ) # Fully open the gripper

作为参数传递的数字是驱动器所需要的。

圆弧运动与直线运动

UR机器人支持圆弧(Circular)和直线(Linear)运动,但若通过​​驱动程序​​("在机器人上运行"选项)操作,可能会在示教器上触发以下错误。这是因为驱动程序默认不会应用UR后处理器中的代码优化过滤器(这些过滤器可确保程序在控制器中流畅运行)。

这些错误包括

1.无线半径圆弧错误(CIRCULAR_ARC_WITH_INFINITE_RADIUS):当你尝试制作半径较大的圆弧运动时,可能会看到此错误。后处理器会自动将这些运动转换为线性运动。

2.​零半径圆弧错误(CIRCULAR_ARC_WITH_ZERO_RADIUS):小的圆弧运动可能会出现此错误。后处理器可能会删除这些移动或将其转换为线性移动。

离线生成程序(右键单击程序并选择生成程序,或F6)或自动发送到机器人(右键单击程序并选择发送程序到机器人,或Ctrl+F6)时,应该不会出现这些错误。这两种生成程序的方法使用的是后处理器,而不是驱动器。

如果脱机生成程序(不使用驱动器)时仍出现错误,可以通过以下步骤自动将圆弧移动转换为线性移动:

  1. 主菜单选择:工具➔选项➔程序
  2. 最小圆弧尺寸设置:1 mm。
  3. 最大圆弧尺寸设置:0.5 mm。
  4. 最小步长设置:0.5 mm:这将确保你导出的点不会小于0.5毫米,因此混合半径会产生一些影响,增大此值可减少抖动。

URSim安装指南

URSim可以让你在电脑上模拟真实优傲机器人控制器的行为。这样你就能熟悉控制器并测试通过RoboDK生成的程序。本节将指导你安装URSim。

下载要求

你可以从优傲(UniversalRobots)网站下载URSim官方镜像,并从官方网站下载OracleVMVirtualBox。

1.从以下链接下载最新的非Linux版离线模拟器:https://www.universal-robots.com/download/?query=。

Robots Universal Robots - 图片 21

3.从以下链接安装OracleVMVirtualBox软件:https://www.virtualbox.org/wiki/Downloads。

4.在D盘上创建文件夹:URSim

Robots Universal Robots - 图片 22

5.将下载的URSim压缩文件内容解压到URSim文件夹。

Robots Universal Robots - 图片 23

6.双击启动OracleVMVirtualBox

VirtualBox

本节介绍如何使用OracleVMVirtualBox创建新的虚拟机,以模拟优傲(UiversalRobots)控制器。

请按以下步骤创建新的Linux机器并加载下载的控制器镜像:

1.启动VirtualBox,然后点击"New"。

Robots Universal Robots - 图片 24

2.将名称设为:UR_Sim_Eseries,并将机器文件夹设为你创建的文件夹。   
将类型设为Linux,版本设为Ubuntu(64位)。

Robots Universal Robots - 图片 25Robots Universal Robots - 图片 26

3.将内存大小设置为768MB,然后按"Next"。

Robots Universal Robots - 图片 27

4.选择选项"Use an existing virtual hard disk file",并定义解压缩文件所在文件夹的路径。按"Add"。

Robots Universal Robots - 图片 28

Robots Universal Robots - 图片 29

Robots Universal Robots - 图片 30

Robots Universal Robots - 图片 31

5.按"Start"启动虚拟机器。

Robots Universal Robots - 图片 32

6.如果出现" Hardware acceleration is not available"(硬件加速不可用)的错误,可能需要重启电脑并在BIOS中启用虚拟化设置。启用虚拟化后,可重新启动Windows、VirtualBox和虚拟机。

7.此时虚拟机应能正常启动。

Robots Universal Robots - 图片 33

Windows与URSim共享文件夹

你可以选择在Windows电脑和模拟控制器之间设置共享文件夹,以便轻松传输程序文件。

请按照以下步骤将RoboDK程序文件夹映射到模拟UR机器人控制器中的新文件夹:

1.本节介绍如何在Windows和URSim之间建立共享文件夹以传输程序。

2.打开URSim的虚拟机。

3.在Linux Ubuntu系统中创建一个名为“RoboDK_Shared”的文件夹,路径为“/home/ur/”。

Robots Universal Robots - 图片 34

4.通过拖放“RoboDK_Shared”文件夹到桌面,创建桌面快捷方式。

Robots Universal Robots - 图片 35

5.双击打开:RoboDK_Shared.

6.选择:View➔Folder View Mode➔Compact View.

Robots Universal Robots - 图片 36

7.从VirtualBox窗口的顶部菜单中选择: Devices➔Shared Folders➔Shared Folders Settings.

Robots Universal Robots - 图片 37

8.使用下图所示按钮添加新的共享文件夹。

Robots Universal Robots - 图片 38

9.选择Windows中共享文件夹的路径(可使用计算机上的任何文件夹)。

10.选中:“Auto-mount” 和“Make Permanent”.

11.Mount point:/home/ur/RoboDK_Shared

Robots Universal Robots - 图片 39

Robots Universal Robots - 图片 40

12.从VirtualBox顶部菜单中选择:Devices➔Insert Guest Additions CD Image

Robots Universal Robots - 图片 41

13.选择" Open in File Manager",然后按"OK"。

Robots Universal Robots - 图片 42

14.打开文件夹:/media/ur/VBox_Gas_6.1.38(VBox版本可能有所不同)。

Robots Universal Robots - 图片 43

15.双击"autorun.sh"文件并选择"Execute"(密码为"easybot")。脚本运行可能需要一点时间。

Robots Universal Robots - 图片 44

16.重新启动虚拟机器。

Note:请确保使用Linux Start menu➔Logout➔Reboot,或关闭虚拟机并选择Send the shutdown signal.选项重新启动。

17.打开终端:选择: Start button➔System Tools➔UXTerm

Robots Universal Robots - 图片 45

18.在终端中键入:sudo adduser $USER vboxsf,然后按回车键。

Robots Universal Robots - 图片 46

19.重启VM。

20.如果你在Windows共享文件夹中用RoboDK生成了新文件,可以在虚拟机共享文件夹" RoboDK_Shared"中按 “View” → “Reload Folder” 或按"F5"键。

Robots Universal Robots - 图片 47

在URSim中使用RoboDK驱动程序

你可以使用URSim测试RoboDK和优傲(UniversalRobots)控制器之间的连接。

1.在OracleVMVirtualBox管理器中。

2.选择UR_Sim_EseriesVM并按设置

Robots Universal Robots - 图片 48

3.选择 Network➔Attached:并选择BridgeAdapter(网桥适配器),然后按OK(确定)。

Robots Universal Robots - 图片 49

4.启动URSim虚拟机器加工。

Robots Universal Robots - 图片 50

5.使用你首选的UR型号启动Polyscope。

Robots Universal Robots - 图片 51

6.读取模拟器IP地址。

Robots Universal Robots - 图片 52

7.进入URSim的"Move"窗口。

Robots Universal Robots - 图片 53

8.在RoboDK工作站中打开相同的UR模型。

9.选择: Connect➔ConnectRobot。

Robots Universal Robots - 图片 54

10.输入URSimIP地址,然后点击:Connect

11.使用"Get Position",获取URSim机器人的位置,并将其应用于RoboDK。

12.使用"Move Joints",将URSim机器人移动到RoboDK机器人的位置。

13.右键单击RoboDK程序,选择"Run on robot"和"Run",即可同时在RoboDK和URSim中运行程序。

更新机器人运动学参数​

本节操作步骤为可选流程,仅当离线编程需要高精度时才需执行。下文将介绍如何在RoboDK中输入您所用UR机器人的专属运动学参数,以实现精确模拟。

Important:若你已对机器人进行校准,并希望生成可补偿真实机器人误差的过滤程序,则必须执行此流程。

每台UR控制器的运动学参数具有唯一性。这些参数以DH参数表(Denavit-Hartenberg)形式定义机器人的几何尺寸。RoboDK模拟器默认使用UR标称运动学参数,因此模拟器与控制器之间可能存在2-10毫米的位姿偏差。

要使模拟结果与真实机器人完全吻合,你可通过直接打开示教器生成的URP文件来导入专属运动学参数。

Note:所用URP文件必须由待模拟的控制器生成。

你也可按以下步骤手动加载URP文件:

1.获取​​通过真实机器人生成的URP文件(非RoboDK或UR模拟器生成)

2.打开​​RoboDK中的机器人模型(可从RoboDK库调用UR机器人,或使用现有工作站中的模型)

3.菜单栏选择:工具➔运行脚本

4.执行UR_LoadControllerKinematics脚本

5.加载​​从机器人控制器提取的URP文件

加载成功后将显示如下图所示提示信息。若加载无效URP文件或选错机器人型号,系统会显示警告提示。

Robots Universal Robots - 图片 55

​完成此流程后​​,你可以右键点击机器人并选择​​"另存为.robot文件"​​。相关参数将随机器人文件保存,后续新建项目时可直接调用该文件,无需重复此流程。

RoboDK会从URP文件中提取你机器人的专属参数,并在机器人文件中将其应用于仿真与离线编程。如需恢复默认运动学参数,可通过机器人参数菜单进行设置(如下图所示)。

Robots Universal Robots - 图片 56

此时你将观察到:示教器显示的位姿数据会与RoboDK中的运动学参数完全匹配(注意:需在RoboDKUR机器人中移除工具坐标系与参考坐标系后再进行比对)。

Note: RoboDK采用​​改进型DH参数​​(modified Denavit Hartenberg),与UR标准DH参数不同。系统会自动将URP文件中的DH参数转换为改进型DH参数,因此不可直接将urcontrol.conf.[UR3/UR5/UR10]文件中的参数复制到本表格使用。

每台UR机器人的运动学参数均经过出厂校准,具有唯一性。而其他品牌(如KUKA、ABB、安川或发那科)除非选购​​绝对精度选项​​(涉及40余项校准参数),否则不进行出厂校准。

本流程与RoboDK的机器人校准​​有本质区别——后者用于提升真实机器人的绝对精度。