机器人的程序

RoboDK是一个专注于工业机器人应用的模拟器。这意味着可以为特定的机器人手臂和机器人控制器创建、模拟和离线生成机器人程序。换句话说,RoboDK是一款离线编程软件。

要创建机器人程序,需要选择一个机器人,加载机器人工具,并使用一个或多个CAD到路径功能,通过添加目标或使用特定工具(如将CNC程序转换为机器人程序)来创建程序。

一个广泛的图书馆工业机器人的数量是可用的.在RoboDK中,工业机器人的建模方式与它们使用供应商特定控制器的行为方式相同,包括轴限制、运动感和轴连接。

机器人程序-图片1

本节介绍如何使用RoboDK图形用户界面(GUI)为特定机器人控制器创建、模拟和生成机器人程序。

离线编程

离线编程(或离线编程)是指在生产环境之外为机器人编程。离线编程消除了车间编程(使用示教器编程)造成的生产停机。

模拟和离线编程允许在设置生产单元之前研究机器人单元的多个场景。设计工作单元时经常犯的错误可以及时预测。

离线编程是最大化机器人系统投资回报的最佳方式,它需要适当的模拟工具。采用新程序的时间可以从几周缩短到一天,从而实现短期生产的自动化。

创建一个项目

模拟可以通过在程序中添加一个指令序列来完成。每个指令代表特定控制器的特定代码,然而,RoboDK提供了一个图形用户界面(GUI),以通用方式轻松构建机器人程序,而无需编写代码。

程序生成时,将自动生成特定于机器人控制器的代码。要使用RoboDK图形用户界面创建新的空程序:

1.选择程序机器人程序-图2添加程序
或者,选择工具栏中相应的按钮。

2.选择工具重命名项…(F2)重命名程序

此操作将创建一个空程序,并允许通过右键单击程序或从中选择指令来添加新指令程序菜单. 下一节程序指令提供有关添加说明的详细信息。

机器人程序-图3

程序指令

可以通过右键单击程序或从中添加新指令程序菜单,如前一节所示。

本节介绍RoboDK图形用户界面支持的机器人离线编程指导。

联合行动

选择程序机器人程序-图4移动关节指令增加新的关节动作指导。或者,选择工具栏中相应的按钮。

除非在添加指令之前选择了一个目标,否则移动指令将创建一个新的目标,它们将被链接。如果目标被移动,移动也会被修改。

如果这是添加到程序中的第一条指令,那么在移动指令之前还会添加两条指令:a参考系选择和一个工具坐标系的选择. 这将确保当程序到达移动指令时,机器人使用与创建新目标相同的参考和工具框架。

机器人程序-图5

线性移动

选择程序机器人程序-图6移动线性指令添加新的线性运动指令。或者,在工具栏中选择相应的按钮。

除非在添加指令之前选择了一个目标,否则移动指令将创建一个新的目标,它们将被链接。如果目标被移动,移动也会被修改。

关节移动和线性移动的行为方式相同,可以很容易地从一种类型切换到另一种类型。

与关节移动指令相同,如果这是添加到程序中的第一条指令,则在移动指令之前还会添加两条指令:a参考系选择和一个工具坐标系的选择

与关节运动相反,线性运动对机器人的奇点和轴限是敏感的。例如,六轴机器人在直线移动后不能穿过奇点。下面的图片展示了一个例子说关节5太接近奇点(0度)。可以考虑联合行动. 如下图所示。

机器人程序-图7

如果线性移动不是绝对必要的,请在移动指令上单击鼠标右键,然后将其更改为关节指令。

机器人程序-图8

另外,必须修改目标、TCP或参考系的位置以避免奇异性。

设定参考系

选择程序机器人程序-图9设置参考框架指令使用特定的参照系。这将更新给定的参考框架在控制器上的以下运动指令,并将改变忙碌的机器人在RoboDK中的参考框架,用于模拟。这意味着针对特定目标(笛卡尔目标)的移动指令将针对最后一个参考帧集进行。

参考框架是一个变量,也称为Work Object (ABB机器人)、UFRAME (Fanuc机器人)、frame (Motoman机器人)或$BASE (KUKA机器人)。

机器人程序-图10

设置刀架

选择程序机器人程序-图11设置刀架指令使用特定的工具框架(TCP)。这将更新程序上给定的刀架,以获得以下移动指令,并更改忙碌的机器人的工具框架,用于仿真。这意味着到特定目标(笛卡尔目标)的运动指令将根据最后的工具框架集做出。

参考框架是一个变量,也被称为ToolData (ABB机器人)、UTOOL (Fanuc机器人)、TOOL (Motoman机器人)或$TOOL (KUKA机器人)。

机器人程序-图12

循环移动

选择程序机器人程序-图13循环移动指令添加新的圆周运动指令。或者,在工具栏中选择相应的按钮。

除非在添加指令之前选择了两个目标,否则移动指令不会创建新目标。需要分别添加两个以上的目标,并从循环移动指令链接它们,如下图所示。

机器人程序-图14

圆形路径是从机器人所在的点开始,经过第一个圆点(目标链接1)并在端点(目标链接2)处结束。

设定速度

选择程序机器人程序-图15设置速度指令添加更改速度和/或加速度的新指令。可以在关节空间和笛卡尔空间中指定速度和加速度。

激活相应的情况,以在程序中施加特定的速度和/或加速度。机器人速度从执行此指令时开始应用。

机器人速度也可以在机器人参数菜单中更改:双击机器人,然后选择参数。

机器人程序-图16

显示消息

选择程序机器人程序-图17显示信息指令添加一个新指令,该指令将在teach吊坠上显示一条消息。

机器人程序-图18

暂停

选择程序机器人程序-图19暂停指令添加一条新指令,暂停程序执行一段时间或停止程序,直到操作员希望恢复程序。

机器人程序-图20

程序调用

选择程序机器人程序-图21程序调用指令从当前程序中添加对子程序的调用。

默认情况下,这是对特定程序的阻塞调用。但是,可以切换到插入代码在本指令位置输入特定代码。这对于特定的应用程序和特定的控制器可能很有用。

机器人程序-图22机器人程序-图23

转换程序调用起始线程触发对子程序的非阻塞调用。在这种情况下,控制器将启动一个新线程。此选项仅适用于某些控制器,且仅适用于特定的操作。

设置/ IO等待

选择程序机器人程序-图24设置或等待I/O指令更改数字输出(DO)的状态。默认情况下,该指令被设置为设置数字输出. 此指令还允许等待特定数字输入(DI)切换到特定状态。

如果是命名变量,IO Name可以是一个数字或一个文本值。IO Value可以是一个数字(0代表False, 1代表True)或者一个文本值(如果它是一个命名状态)。

机器人程序-图25

设置为等待数字输入以停止程序执行,直到特定的输入更改为特定的值。此外,大多数机器人控制器支持超时延迟,如果等待时间超过特定值,就会引发错误。检查Timeout (ms)选项来激活此功能。

机器人程序-图26

改变模拟数字输入和数字输出将产生新的站变量。要检查这些变量的状态,可以右键单击桩号并选择桩号参数。也可以通过API读取或修改这些变量。

设置舍入值

选择程序机器人程序-图27组舍入指令改变舍入精度。用于在连续移动之间平滑边缘的舍入精度。此更改从在程序内执行时开始生效(与所有其他指令相同),因此通常在程序开始时设置此值。

在没有舍入指令的情况下,机器人每次运动结束时的速度都为0(除非下一个运动与前一个运动相切)。这将引起高加速度和快速的速度变化,以确保每个动作的最佳精度。

这个值也被称为混合半径(通用机器人),ZoneData (ABB机器人),CNT/FINE (Fanuc机器人),Cornering(学术机器人)或$APO. cdis /$APO。CPTP /提前(库卡机器人)。

机器人程序-图28

有些控制器需要将此值设置为百分比,例如在Fanuc控制器上,如果要提供CNT5命令,则应该输入值5。

中的舍入参数也可以指定节目活动如果您正在生成用于机器人加工、3D打印或曲线/点跟踪的程序。亚博ios下载

机器人程序-图29

罗博德路径精度测试可以让我们更好地理解不同舍入策略的影响。

模拟事件

选择程序机器人程序-图30模拟事件指令引发特定的模拟事件。模拟事件对生成的代码没有影响,仅用于激发用于模拟目的的特定事件。

使用图形用户界面的模拟事件允许您:

·将对象附着或分离到机器人工具

·显示或隐藏对象或工具

·改变物体和参考系的位置

机器人程序-图31

例如,如果机器人移动到特定位置抓取物体,我们可以设置连接对象事件将该对象与机器人一起移动。然后,在机器人移动并准备离开物体后,我们可以设置一个分离对象事件以保留工具抓取的任何对象。

机器人程序-图32

模拟程序

双击程序机器人程序-图33启动模拟程序。

或者:

1.右键单击程序

2.选择

如果双击程序,底部将出现一个模拟栏。可以使用仿真杆来滑动仿真来向前或向后移动仿真。

机器人程序-图34

默认情况下,RoboDK模拟速度比实时快5倍。这意味着,如果一个程序需要30秒来执行,它将在30/5=6秒的时间内被模拟。加速模拟会将此比率增加到100。可以在工具中更改正常和快速模拟速度选择权动作菜单

机器人程序-图37

生成程序

按照以下步骤生成机器人控制器(厂商专用机器人控制器)所需的机器人程序:

1.选择程序

2.选择程序生成程序(F6)

或者,右键单击程序并选择生成机器人程序(F6)生成程序。

机器人程序-图38

可以选择多个程序以一次生成多个程序。按住Ctrl键可选择多个程序。选择生成项目(s)……(Shift + F6)选项将打开一个窗口,要求用户提供保存程序的位置。

转移程序

可以将程序从计算机直接传输到机器人。此选项通常通过FTP协议或其他特定协议(如使用套接字消息传递或串行连接)将程序发送给机器人。首先,需要在robot connection(机器人连接)菜单中输入机器人IP和FTP设置:

1.右击机器人

2.选择连接到机器人…左侧将出现一个窗口。

3.输入机器人IP

4.选择更多的选择输入FTP设置和FTP凭据(如果需要)

机器人程序-图39

提供网络设置并正确连接机器人后,按照以下步骤将程序直接从RoboDK传输到机器人:

1.右键单击程序

2.选择向机器人发送程序(Ctrl+F6)

弹出窗口将显示状态(成功或失败)。

选择后置处理程序

从RoboDK模拟到一个特定的机器人程序的转换是由一个后处理器.后处理器定义了如何为一个特定的机器人生成机器人程序。在RoboDK中,每个机器人都有一个特定的/默认的后置处理器。

要为机器人选择特定的后处理器,请执行以下操作:

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

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

3.从列表中选择后处理器

4.选择OK

机器人程序-图40机器人程序-图41

现在应用更改,可以再次生成程序以查看结果。

RoboDK中的后处理器提供了完全的灵活性,可以根据特定需求生成机器人程序。RoboDK为大多数机器人品牌提供后处理器。后处理器可以轻松创建或修改。有关中的后处理器的详细信息用于后处理器的专用部分

拆分大型机器人程序

大型机器人程序可能会超出机器人控制器的限制。控制器限制可以是文件大小或每个程序的行数。例如,用于3D打印或机器人加工的机器人程序可以超过一百万行代码。在这种情况下,最好将如此长的程序拆分为更小的子程序,包括一个按顺序运行子程序的主程序。亚博ios下载

按照以下步骤自动拆分长程序:

1.选择工具选择权程序

2.检查限制每个程序的最大行数并提供每个程序生成每个文件所需的最大行数。

机器人程序-图42

内联子程序

当您生成一个调用子程序的程序时,RoboDK将自动创建一条指令来调用该子程序。另一方面,您可以在主程序上直接将程序输出自定义为内联子程序,并防止程序调用。

按照以下步骤来内联子程序,以避免调用脱机程序:

1.选择工具选择权

2.选择程序标签

3.选中该选项内联子程序

从现在起,当您生成包含子程序的程序时,您将直接在第一个/主程序中获得这些子程序的内容。

机器人程序-图43机器人程序-图44