安川机器人以太网通信简介
上次简单介绍了现场总线的通信,这次我们来介绍一下,工业数据通信中另一种应用也极为广泛的通信方式,就是以太网通信。
和总线通信相比,以太网通信可传输的数据类型就更加多样化,可以读写I/O,变量数据,机器人位置信息,程序内容等。
安川机器人常用的以太网通信协议有两种:
1.TCP,全称Transmission Control Protocol传输控制协议,在安川机器人中对应了以太网服务器功能。
2.UDP,全称User Datagram Protocol用户数据报协议,在安川机器人中对应了高速以太网服务器功能。
要注意到的是,安川机器人在使用这两种通信协议的时候,担任的都是服务器的角色,要想实现当客户端的角色,就要通过二次开发软件,MotoPlus。
TCP协议在使用的时候,机器人要在远程模式(Remote),确认虚拟输入信号中的87015处于打开状态(此处以YRC1000机型做介绍),调试用电脑关闭防火墙,默认机器人的端口号是80。
确认打开87015 CMD REMOTE SEL
通信的过程分为,开始请求、命令请求、数据请求。
我们以读取机器人当前的B001的值是10为案例简单介绍一下。
发送开始请求:CONNECT Robot_access\r\n
收到回复版本号:OK: DX Information Server(1.00)\r\n
发送命令请求:HOSTCTRL_REQUEST SAVEV 4\r\n
收到回复:OK:SAVEV(命令正确)
NG…(命令错误)
发送数据请求:0,1\r
收到回复:10
这么一套指令下来,成功地读取到了机器人当前的B001的值是10。
UDP协议在使用时,机器人一般在任何模式都可以,此时默认机器人的端口号是10040。
为了实现类似的操作,UDP指令次数相比就少一些。比如读取机器人当前D变量的某个数值D001的,发送的16进制指令如下。指令的可读性较差,需要以16进制的发送和接收。
5945524320000400030100010000000039393939393939397C0000000102000000000000
你没有看错,就是这么一长串16进制数据,机器人回复的格式也是如上类似的16进制。
***后,使用以太网功能往往需要用户具备一定的编程开发能力,希望大家保持学习和进步的热情。