随着工业现场需求的日益变化,机器视觉在机器人集成项目中的应用越来越广泛。在视觉与机器人的配合中,要解决的问题有很多,比如视觉的内外参标定,视觉系统和机器人间的标定问题,视觉和机器人间的通讯等等。
其中视觉和机器人间的通讯往往作为重难点存在,不同品牌视觉在和不同品牌机器人通讯时,可供选择的通讯方案比较多,比如串口通讯、现场总线通讯、以太网通讯等等,其中TCP/IP通讯是一种比较方便也容易使用的通讯方式。
那么,问题来了,如何实现ABB机器人和视觉系统间的TCP/IP通讯呢?
ABB机器人实现TCP/IP通讯的前提是必须要有616-1 PC Interface 选项功能,如下图是ABB官方对于PCInterface选项功能的介绍:
所以,当我们在真实机器人系统上想实现TCP/IP通讯要先检查下系统是否含此选项功能,参考如下界面:
TCP是因特网中的传输层协议,使用三次握手协议建立连接,过程比较复杂,实际使用中,我们可以用socket编程接口实现服务器与客户端间的通讯,关于TCP/IP与socket之间的关系大家可以查阅相关资料,下图是ABB机器人使用socket接口实现通信的过程。
下面我们在RobotStudio软件中模拟机器人实现此功能的过程(这里我们把机器人作为客户端client使用):
第一步,创建机器人系统,这里要注意参考图片把PCInterface选项加入。
通讯相关指令在Communicate指令集下。
第三步,编写程序,具体程序如下:
SocketCreate socket_vision;
!创建套接字,用于连接远程计算机,这里注意,下面编程是把机器人作为客户端,远程计算机作为服务器的
SocketConnect socket_vision,“127.0.0.1”, 5001;
!连接远程计算机,这里要写明远程计算机的IP地址和通讯双方共用的端口号。注意,在真实机器人系统上,远程计算机网口和机器人LAN口或WAN口间要用网线做好连接,并将计算机IP地址设置和机器人IP地址同一网段,此外,端口号不可随意设置,一般不会用0~1023之间的数字。这里为了和本机上TCP/IP测试工具间实现通讯,IP地址设为回送地址 “127.0.0.1”
SocketSend socket_visionStr:="hello!";
!向远程计算机发送信息,发送内容可以为具体字符串,也可以是string型变量
SocketReceive socket_visionStr:=string_vision;
!接收来自远程计算机发送过来的数据,存储在string_vision变量中,注意,string_vision存储类型必须为变量,数据类型为string
SocketClose socket_vision;
!关闭通讯
TPErase;
!擦除屏幕上的显示的文本信息
TPWrite string_vision;
!将 string_vision的文本信息写入示教器屏幕,验证写入的信息和远程计算机发送的信息是否一致
第四步,测试通讯。
到此,我们就实现了ABB机器人和视觉系统间的通讯啦。
审核编辑:汤梓红
-
机器人
+关注
关注
211文章
28762浏览量
208981 -
以太网
+关注
关注
40文章
5472浏览量
172925 -
TCP
+关注
关注
8文章
1383浏览量
79399 -
串口通讯
+关注
关注
1文章
262浏览量
25060 -
视觉系统
+关注
关注
3文章
337浏览量
30868
原文标题:【干货】如何实现ABB机器人和视觉系统的通讯?
文章出处:【微信号:你身边的机器人专家,微信公众号:你身边的机器人专家】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
嵌入式在机器人视觉系统的应用
如何实现ABB机器人和视觉系统间的TCP/IP通讯呢?
![如何<b class='flag-5'>实现</b><b class='flag-5'>ABB</b><b class='flag-5'>机器人和</b><b class='flag-5'>视觉系统</b>间的<b class='flag-5'>TCP</b>/<b class='flag-5'>IP</b><b class='flag-5'>通讯</b>呢?](https://file.elecfans.com/web1/M00/88/35/pIYBAFyHIQuAMX5HAAALo7AnATg334.png)
评论