解析视觉控制系统与ABB机器人之间的通讯

2020-11-20 02:07郝磊
装备维修技术 2020年7期
关键词:工业机器人自动化

郝磊

摘要:研究了一种基于SDK网络通讯机制的ABB机器人与视觉系统之间的通讯编程方法,实现了机器人基于C/S模型的分布式网络控制系统模型,为机器人柔性自动化系统的开发验证了一种可行的方法。

关键词:自动化 视觉控制系统 工业机器人 通讯协议

我公司承接的北汽萨博冲压分厂FAGOR自动线国内安调项目,为原澳洲三菱阿德莱德(Adelaide)工厂二手设备,该线由西班牙FAGOR联合瑞典ABB两家公司设计、成套。全线由两台2400吨和两台800吨闭式4点大台面机械压力机和自动化上下料、传递装置(8台ABB机器人)、快速换模台车及隔声房组成,总长72米。其中第二台机器人的卸载运动由独立于整线自动化控制系统的视觉系统控制。

该系统采用机器视觉技术和运动控制技术相结合,视觉系统计算板料的位置差异参考坐标,发送给ABB机器人,修正机器人以正确的姿态从传送带卸载板料,然后装载到第一台压机。

但视觉系统与ABB机器人之间的通讯问题成为整线自动化调试的技术难点,经过查阅大量资料及咨询国内外相关专业厂家,终于解决了此难点。下面具体介绍一下视觉系统与ABB机器人的通讯。

ABB机器人控制器通过Ethernet卡与外部视觉计算机相连,实现基于TCP/IP协议的以机器人控制器为服务器,视觉计算机为客户机之间的通讯。机器人控制器作为服务器,提供数据管理服务和应用服务,响应并受理由外部计算机发出的请求,并将计算结果传送给外部视觉计算机。

ABB S4型机器人控制系统的软件结构由机器人多任务操作系统BaseWare OS和基于该操作系统的机器人RAPID程序及SDK服务器程序等组成。由于机器人的运动和操作只受机器人程序控制,要实现机器人在線控制,必须与机器人RAPID程序进行实时数据通讯,而SDK服务器程序可以跨越进程与操作系统或机器人程序进行数据通讯,从而获得机器人系统和机器人RAPID程序的状态和数据变量。外部视觉计算机运行SDK客户端程序,通过向机器人控制器发出请求,并实时响应机器人控制器上的SDK服务器程序的答复的方法进行数据通讯。

一、通讯配置

1.ABB机器人的配置:

在开始配置之前,必须在示教器上检查机器人FactoryWare的安装情况。按服务按钮→选择服务菜单→在视图菜单下→选择系统信息的ProductID,在那里,它应安装FatoryWare(以太网模块)。

下一步是配置FactoryWare。按服务按钮→选择系统参数→在主题菜单下→选择通讯类型→进入应用协议→按添加按钮添加以下参数:

名称:介绍这个配置的名字。 i.e:RAP1

传输协议:传输协议是TCP / IP(必须定义)

类型:该参数必须选择读写

远程方向:IP Webware的安装。

上述参数的定义和机器人重新启动后,机器人示教器上方能显示这个参数。之后,在这里输入视觉PC的IP地址。

重要的事情是声明所有的变量,我们希望机器人和Webware之间的沟通做到持久性。必须在机器人示教器上执行以下步骤:

按程序按钮→在查看菜单下→进入数据类型→选择要声明的数据类型→按新增按钮→介绍名称,然后声明所有的变量后,用户可以从任何远程应用程序,使用简单的视觉机器人驱动机器人的程序访问这些变量执行。

2.视觉系统Webware的配置

要配置Webware的用户必须使用以太网。具体操作如下:

1)Start→Programs→ABB Automation→WebWare SDK→InterLink Configuration

2)首先,用户必须添加一个新的机器人配置文件,按 图标。然后,下面的屏幕上会出现:

3)这里,必须在第一个框中(L2A; ROBSLAVE)键入机器人的名称。之后,选择机器人的TCP/ IP协议,按“编辑主机文件”按钮,然后会弹出这个窗口:

TCP / IP节点必须加入。按“添加”按钮,将打开配置窗口:

4)在此窗口中,必须引进的主机名(R2)和机器人的IP地址。按“OK”,保存。

设置机器人2的IP地址(视觉机器人)。

5)最后,必须声明一个名字,按“编辑个人资料”按钮,然后到“接口”标签:

6)在窗口必须选择“Poll simulated IO”和“Use optimal polling list”。最后介绍机器人的IO文件的路径。下一步就是订阅所有的快速程序使用沟通与视觉系统的持久变量。做这个必须去'变量订阅'选项卡:

7)在此窗口中,必须引入变量名,选择变量的类型,按添加按钮。逐个新增视觉系统所使用的所有变量:

数字变量:errorcode1,errorcode2,errorcode3,errorcode4,errorcodeGen,orierr1,orierr2,orierr3,orierr4,xerr1,xerr2,xerr3,xerr4,yerr1,yerr2,yerr3,yerr4,partnum。

布尔变量:startcycle,visionready。

配置完成后,主窗口必须显示此参数;

8)视觉PC Robot2的IP地址

视觉PC的IP地址是与机器人必须兼容。

9)运行视觉软件

进入开始菜单 - 程序 - ABB自动化 - Webware的SDK和运行互联监视器验证机器人和视觉电脑之间的通讯。

二、通信协议。

视觉系统与机器人使用以太网的通信是基于一系列的可读取和写入双方的共同变量。在机器人这边,这些常见的变量必须是恒定的。除此之外,机器人必须在自动模式下读取和写入双方的共同变量。如果事实并非如此,视觉系统将无法读写任何变量。

双方所使用的变量的名称必须在逻辑上是平等的,以及它们的类型。

下面是每个变量的解释:

startcycle:

这个变量进行数据收集的启动。机器人将此变量设置为TRUE时视觉系统已确认的变量已经改变,它将阅读图像。视觉系统变量设置为FALSE,使机器人可以识别,如果必要的话,视觉系统必须确认登记。

visionready:

视觉系统将此变量设置为TRUE,表明机器人在最后一次读取相应变量模型的数据是已经准备好的。机器人将这个变量设置为FALSE,将读取模板的数据。

partnum:

机器人设置此变量,每次都需要从模型中收集数据。其中startcycle变量设置为TRUE的时,代表视觉系统要读取工件代码,然后视觉系统在其数据库发现此模板的型号并在轨道上发现的型号,

errorcodeGen:

这是由视觉系统,并表示可能发生一般性错误。機器人必须读这个变量,并检查错误板块读取数据之前发生的。如果发生错误,发现板块的变量的数据是不可预知的。

错误代码:

0没有一般的错误。

-1参考在“partnum”的要求是无效的。

-2这个模型文件没有找到。

errorcode1

在第一个工件可能出现的错误。

错误代码:

-0未找到正确的模板。

-1传送带上工件没有找到,没有有效的数据。

-2工件已超出传送带的边缘。

xerr1:

这是视觉系统指示机器人在传送带上发现工件位置的变量之一。这个变量通知机器人在传送带上工件沿X轴的位置变化。在本环节中工件是唯一的,相应的变量将显示,由于其余的都是相同的。

yerr1:

这个变量通知机器人在传送带上工件沿Y轴的位置变化。

orierr1:

这个变量通知机器人在传送带上工件角度的位置变化。

通信协议

*视觉系统读取机器人发来的“partnum”数字量。

*机器人设置“startcycle”变量为TRUE,以便视觉系统开始工作。

*视觉系统读取“startcycle”,把它设置为FALSE,并同时读取数据库的模板。

*视觉系统设置一般错误。

*视觉系统计算实际工件和模型的坐标偏差。

*视觉系统设置“visionready”变量为TRUE。

*机器人读取“visionready”并将其设置为FALSE。

*机器人读取视觉系统发来的坐标偏差(X、Y、角度)。

结论:视觉导引运动控制系统适和多种应用,从大量元件的自动分析到简单的捡取和放置应用。设计这种系统虽然很复杂,但它能最大限度地提高生产效率。通讯只是建立整个系统比较初级的部分但它非常重要,如果视觉系统与工业机器人之间的通讯无法建立,将导致视觉导引运动系统无法实现。视觉引导机器人技术具有良好的成本节约优势,能对零件式样与位置的变化进行管理,免去了成本高昂的精密夹具、机械料挡和料盘,实现了人工作业的自动化;能精确定位料架上的零件,延长生产线正常运行时间,消除机器人碰撞的机会;并通过基本检验和零件识别功能提升产品质量。该项技术已经被广泛地应用于各类搬运、组装、机械加工和压铸工艺中。

猜你喜欢
工业机器人自动化
浅谈工业机器人的安全生产
基于力传感器的工业机器人力控试验系统的研制
基于虚拟样机的工业机器人末端液压夹持器的设计
工业机器人模拟仿真技术在职业教育中的应用浅析
工业机器人现场编程工学结合课程开发
AGV小车在白酒行业自动化立体仓库中的应用
配电室无人职守集控站在京博石化的运用
配电线路运行资料管理自动化的探讨
基于SolidWorks的工业机器人离线仿真系统分析