AUTO TIME
7
FRONTIER DISCUSSION | 前沿探讨
ABB 工业机器人与LabVIEW 数据交互
喻建军1 李辰1 吴凡2 刘耿聪1
1.智新科技股份有限公司 湖北省武汉市 430058
2.东风李尔汽车座椅有限公司 湖北省武汉市 430090
摘 要: 本文简要介绍了ABB 工业机器人与LabVIEW 之间进行数据交互的解决方案。ABB 机器人与LabVIEW 通
过socket 建立通信,读取机器人坐标数据。以此为人机交互提供一个更便捷、更高效的新思路。
关键词:工业机器人 LabVIEW socket(TCP/IP)
1 前言
随着“中国制造2025”概念的提出,中国制造业将会大步伐的向着信息化、智能化精密化迈进,中国工业也会伴随着发生巨大的变革。越来越多的高新技术科技成果被应用到产品的生产制造中。而作为工业自动化代表的机器人在制造业中所占比重不断增加,正加速取代人工操作、生产。而为了能够更高效的发挥机器人的智能化、精准化程度高的特点,建立一套可靠性良好、传输速率高的数据通信模式势在必行(如图1)。
图
1
2 工业机器人主流通信方式简介
在国际上,工业机器人技术日趋成熟,已经成为一种标准设备而得到工业界广泛
应用,从而也形成了一批在国际上较有影响力的、著名的工业机器人公司,诸如:ABB , FANUC、Yaskawa、KUKA 等。这些主流工业机器人公司为了提成产品的场景适用性,经济性,也正在大力拓展其可用于二次开发的工业数据通信模式,例如: Modbus RTU、Profibus、socket、Profinet 等。
目前尤其是基于TCP/IP 协议的通信方式正逐步被工业数据通信领域所接纳。各个机器人、外围仪表设备之间可以灵活的组网,且每一个网络节点都有唯一的IP 地址和通
信端口,数据收发带有校验机制,数据传输准确、稳定、可靠。
简单比对一下目前工业机器人主流通信
模式优缺点,如表1:
有鉴于上述各种通信方式性能、效费等比较,在数据交换量不太大的情况下使用socket 套字节通信方式(基于TCP/IP 协议)可行性最高。
3 ABB 工业机器人Socket(TCP/IP)数据发送
对于工业机器人的应用场景而言,与配套仪表、设备之间数据传输的稳定性、准确性、高效性显得尤为重要。下面我们就以ABB 工业机器人的socket(基于TCP/IP 协议)通信为例,介绍如何将机器人TCP 坐标数据向外发送。
首先,ABB 工业机器人系统软件中需
ABB Industrial Robots Interacting with LabVIEW Data
Yu Jianjun Li Chen Wu Fan Liu Gengcong
Abstract :
T his article briefl y describes the solution for data interaction between ABB industrial robots and LabVIEW. ABB robots communicate with LabVIEW through sockets and read robot coordinate data. In this way, it provides a more convenient and effi cient new idea for human-computer interaction.
Key words :industrial robots, LabVIEW, sockets (TCP/IP)
表
1
8
AUTO TIME
FRONTIER DISCUSSION | 前沿探讨
要配置616-1 PC interface 模块,这是在工业机器人与其外围仪表、设备间建立socket 通信的基础。
以机器人为server,上位机为client 为例,如图2所示步骤建立上位机与机器人之间的通信。需要注意的是使用socket 一定按照“建立”、“绑定”、“监听”、“接收”以及“关闭”等套字节指令的位置顺序,且编写在“while”循环外。而循环内则主要进行server 与client 端进行数据交互,例如发送坐标数据。
将读取到的X、Y、Z 轴的坐标数据分别转换为字符串,并连接在一起打包发送。需要注意两点:1.坐标数据转化为字符串时,需要统一小数点后位数,便于统计字符总数量。
2.构成的整条字符串中建议用特殊符号间隔,便于LabVIEW 识别区分各个轴的坐标。
ABB 机器人(server)端建立socket 通信及坐标发送可以参考源代码1。
在实际的工程项目实施时需要注意以下两点:
如果想在ABB 机器人向上位机发送三轴坐标的同时执行其他运动指令,首先需要ABB 工业机器人系统软件中配置623-1 multitasking(多任务)模块,其次需要使用multitasking 新建一个“任务模块T2”,并配置成Normal 类型,如图3所示。再将通信程序代码(源代码1)移植到T2任务模块中。在多任务情况下,一般将数据通信放在后台运行(T2模块),而进行人
运动程序则放在前台运行(T_ROB1),因为在后台运行的程序不能执行运动指令,如果执行,系统会报错。
如果想以上位机为server、机器人为client 尝试建立二者之间的通信,建议直接使用实体ABB 机器人。当使用虚拟机器人时,其IP 地址虽然一般默认为“127.0.0.1”,但是其通信端口会随机跳变,无法实现二者之间的连接绑定。而实体机器人则不存在该问题,其通信端口是固定的,不会任意改变。
4 使用LabVIEW 读取socket 套节字数据
上位机PC 端使用LabVIEW 接收读取ABB 机器人发送的坐标数据。使用Labview 进行socket“套接字”(ABB 机器人的socket 通信本质就是TCP/IP)通信时,需要监听机器人(server)的IP 地
址和通信端口。
以虚拟的ABB 机器人为例,默认的IP 地址为127.0.0.1,通信端口为8001。在LabVIEW 中建立程序框图的步骤,如图4所示。由此可以实现上位机每100ms 读取一次ABB 机器人的坐标值,并显示在人机交互界面中。也可以根据实际应用场景的需求,灵活的调整机器人套接字循环发送间隔时间和上位机接收读取周期,以期达到最佳效果。
读取坐标的程序框图如图4所示。需要注意的有3点:
1.设定读取的字符串长度需要大于机器人发出的总字符串长度(最多80个字节)。
2.使用LabVIEW 中“TCP 协议”里 “TCP 读取”模块读取的字符串数据,进行识别的时候正好可以借助机器人发出的坐标字符串中的特殊字符进行解码。利用字符串中的“匹配模式”模块即可灵活便捷的分离出X、Y、Z 三轴坐标。
3.程序框图中的while 循环的间隔时间建议为机器人发送数据循环间隔时间的2倍。
5 结束语
随着工业通信领域技术的飞速发展,
越来越多的通信方式会被应用到工业机器
PROC main()
SocketCreate temp_socket; 建立以机器人为服务器的socket 通信SocketBind temp_socket,"127.0.0.1",8001;将机器人绑定固定的IP 地址和端口(以虚拟机器
人为例)
SocketListen temp_socket;启动服务器端(机器人)socket 监听
SocketAccept temp_socket,Client_socket\
ClientAddress:=Client_IP
\Time:=WAIT_MAX;服务器端接收客户端地址信息及超时
WHILE TRUE DO 当为真时执行
WaitTime 0.05;延时50毫秒,即循环发送间隔
P_now:=CRobT(\Tool:=tool0\WObj:=wobj0); 读取机器人的当前坐标位置
s e n d _s t r i n g :=N u m T o S t r (P _n o w.t r a n s.x,2)+"#";
将当前位置的X 轴坐标保留2位小数,并由数值型转换为字符串型发送至客户端,并用#符号与其后字符串分隔
send_string:=send_string+NumToStr(ans.y,2)+"@";
将当前位置的Y 轴坐标保留2位小数,并由数值型转换为字符串型,并用@符号与其后字符串分隔
send_string:=send_string+NumToStr(ans.z,2)+"*";
将当前位置的Z 轴坐标保留2位小数,并由数值型转换为字符串型, 并用 * 符号与其后字符串分隔
SocketSend Client_socket\Str:=send_string;将上述内容构成的字符串发送至客户端PC ENDWHILE
SocketClose Client_socket;关闭服务器和客户端之间的socket 通信
ENDPROC
源代码1
图2
机器人软件模块
机器人为server
建立socket通信绑定server的IP地址
&通信端口
创建对client 数据的建立while循环读取server(机器人)当前TCP坐标值
将TCP(x,y,z)坐标值转换成字符串打包发出
响应响应client要求关闭socket
socket通信为什么要指定端口未响应
设置循环发送间隙时间
“侦听”与“接收”
上位机PC为client
616-1 PC interface
FRONTIER DISCUSSION | 前沿探讨
人领域,以便于更大程度的提高生产、协作效率。而基于工业以太网的通信协议正在飞速的发展和应用于工业制造生产、检测监控行业。希望仅借此文能为工业机器人领域的二次开发提供更多可供选择的思[2]陈瞭.ABB工业机器人二次开发与应用 北
京:电子工业出版社2021.4.
[3]陈树学. Labview宝典(第2版) 北京:
电子工业出版社
2017.9.
图4
图3
路和通信方式。
参考文献:
[1]叶晖. 工业机器人实操与应用技巧. 北京:
机械工业出版社2010.10.
图5
AUTO TIME 9
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论