ABB机器人socket通讯
- 设置机器人的ip 192.168.0.100
wan 只能作为客户端 lan 客户端和主端都可以 - Abb 与abb 通讯的话,网端设置为127.0.0.1;选择LAN端
Socket通讯
- 传输协议,是对TCP/IP的封装
- 需要一对套字 client socket 和 server socket;
- 通过socket才能进TCP通讯
TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。在Internet协议族(TCP/IP协议族)中,TCP层位于IP层之上,提供了应用层与网络层之间的传输服务。TCP旨在适应支持多网络应用的分层协议层次结构,连接到不同但互操作的计算机通信网络的主计算机中的进程,通过端到端的可靠数据通信
常用指令
Server——主站 负责创建通道,与ip和端口 地址进行绑定;sever是一对多的,需在自身内部内化一个client1;通过给client1发送消息,经ip网络传给外围真正的client;
Socketclose 、 socket create 、
socketconnect 、 (参数 socket IP(主站ip) 端口)嵌套字向服务器连接设置
socketBind (参数 socket IP 端口)绑定ip,SocketBind server,"192.168.240.124",2000;//将用于作为服务端的socket设备与服务器的ip地址及端口号进行绑定。服务器ip地址为公共WAN地址或控制器服务端口地址;默认配置下,abb机器人自身的控制器服务器端口地址为192.168.125.1;需要注意在仿真软件上,控制器的服务器端口是不可用的,因此该范例地址选用计算机上的ip地址。端口号选用自由端口号即可。
主站——SocketListen (socket)开始监听
主站——SocketAccept (socket,socket)监听到就保存数据
表示外部从站client发出请求时,允许替身server_client的加入。
主/从站——SocketStatus 是一个用于检查套接字(socket)状态的功能或属性。通过查询SocketStatus,你可以了解当前套接字的连接状态、数据传输状态以及其他相关信息。
主/从站——SocketsSend 、socketreceived
ABB选项设计
- device net 2,interface选项
- 主站程序
VAR socketdev server1;
VAR string receibe1; ——创建接收字符串
VAR socketdev server_client; ——创建内化的从站替身
SocketCreate server1; ——创建主站
SocketBind server1 ,"127.0.0.1",8000; ——绑定主站ip和端口
SocketListen server1; ——监听主站
SocketAccept server1,server_client; ——当从站从ip请求,允许与替身进行绑定
WHILE TRUE DO
SocketSend server_client\Str:="huanyingjiaru"; ——给替身发送
SocketReceive server_client\Str:=receibe1; ——收到从站发来
TPWrite "kehushuo+"+receibe1;
ENDWHILE
- 从站程序
PROC main()
!
VAR socketdev client1; ——定义从站1
VAR string send0:="hallo word"; ——定义要发的字符并赋值
VAR string receive0; ——定义接收的字符串
SocketClose client1; ——初始化从站1
SocketCreate client1;
SocketConnect client1 ,"127.0.0.1",8000 ; ——通过ip请求绑定
WHILE TRUE DO
SocketSend client1 \Str:=send0; ——从站自己发出
SocketReceive client1 \Str:=receive0; ——从站自己接收
TPWrite "shoudaodeshi+"+receive0;
ENDWHILE