目录
版权声明 (1)
声明 (1)
(1)
第1章TCPIP通讯 (3)
1.1通信设置 (3)
1.2指令说明 (5)
1.2.1打开通讯 (5)
1.2.2关闭通讯 (5)
1.2.3接收数据 (5)
1.2.4发送数据 (6)
1.3示教程序 (6)
第2章RS232串口通信 (7)
2.1通信设置 (7)
2.2指令说明 (9)
2.2.1 打开串口端口 (9)
2.2.2 关闭串口端口 (9)
2.2.3接收数据 (9)
2.2.4发送数据 (9)
2.3示教程序 (10)
第3章字符串处理指令 (13)
3.1指令说明 (13)
3.1.1 整型转字符串 (13)
3.1.2 位置型转字符串 (13)
3.1.3 实数型转字符串 (13)
3.1.4 字符串转整型 (13)
3.1.5 字符串转位置点 (13)
3.1.6 字符串转实数 (13)
3.1.7 字符串连接 (14)
3.1.8 字符串拆分 (14)
3.1.9 字符串比较 (14)
3.1.10 计算字符串长度 (14)
3.1.11 字符串取左 (14)
3.1.12 字符串取右 (14)
3.1.13 取字符串中间的部分字符 (14)
TCPIP通讯
TCPIP 通讯(即SOCKET通讯)是通过网线将服务器Server端与客户机Client端进行连接,在遵循类似ISO/OSI模型的四层层级架构的基础上通过TCP/IP协议建立的通讯。控制器可以设置为服务器端或者客户端。
1.1 通信设置
按下手持操作示教器上的【上
移】或者【下移】使主菜单下
。按下
手持操作示教器上的【右移】
【上移】或者【下移】使主菜
。按下
手持操作示教器上的【右移】
通讯功能可以同时开通
,你可以点击通路
选择下面的向左或者向右按
每次改
变或者设置新的通路选择参
服务器地址:即服务器端的IP地址,当机器人控制器作为
客户端时,则需要填入服务器IP地址;当机
器人控制器作为服务器端,则可以不填该参
数。
端口:服务器端口又是本地端口号,前者是对于控制器作
为客户端而言,后者是对于控制器作为服务器端而
言。这里要求服务器和客户端的这个参数必须相同。
结束符:参数默认就是CLRF,回车换行符。是从控制器发
送出的数据带回车换行符。
超时时间:Socket 通讯时非阻塞模式下的延迟时间,对于
接收指令SOCKRECV,控制器会在这段时间内
不停扫描设备端是否有数据发送过来,如果有则
马上接收,如果超出这段时间仍然没有数据发送
至控制器,则示教程序会自动执行SOCKRECV
的下一条指令。
通路名:参数是给Socket取的名字,相当于控制器端Socket
的ID。
1.2指令说明
1.2.1打开通讯
SOCKOPEN Str1 Type= CLIENT
Str1:表示此次打开的Socket的名字,需要和界面设置的【通路名】赋值一样。所以在使用该指令时要先进入主界面里的【变量】-【数值变量】设置里面使得字符型变量S001的值为【通路名】的值。例如,在上图设置了【#301】的【通路名】为‘robot’,那么在S001中的值应该为’robot’。STR1对应的是S001,STR2对应的是S002,以此类推,如果用户在S002里面写入了Socket名字,那么参数STR1改为STR2。
Type:指定这时的机器人控制器产生的Socket为客户端还是服务器端。
注意:每个机器人控制器产生的Socket必须且只能打开一次。
1.2.2关闭通讯
SOCKCLOSE Str1
Str1:需要关闭的Socket名字,和前面SOCKOPEN指令里的STR1参数是一样的。
1.2.3接收数据
SOCKRECV Str1 Str2 B1
Str1:表示Socket名称,赋值为设置界面中的Access name,与SOCKOPEN指令里Str1参数含义及赋值都一样。
Str2:接收到的字符串数据,将存储在字符串型变量S002里面,每次接收的字符串不能超过255个字节。
B1:>0数据正常发送,=-1Socket不存在,=-2连接失败,=-3错误,=-4超时。
socket通信在哪一层注意:
1、使用SOCKRECV指令时,可以在一段时间内不停检测是否有数据发送过来,如果有则马上
接收,如果没有,则自动执行下一条指令。这段时间值可以在设置界面的【超时时间】里面设置。
2、如果示教程序在SOCKRECV这条指令执行时手动暂停了,那么计时将停止,控制器在暂停
期间不会接收数据。如果暂停结束后,那么SOCKRECV这条指令的检测时间重新开始计时,暂停期间如果设备端有发送数据,则这些数据在暂停期间不会被接收,暂停结束后的第一条SOCKRECV指令将全部接收这些数据。
3、如果网线中间断开链接,SOCKRECV指令能否接收到数据取决于控制器缓冲区是否有数
据,如果在网线断开之前数据就已经传送到控制器缓冲区,就能接收到数据;反之,接收为空字符。
1.2.4发送数据
SOCKSEND Str1 Str2 B1
Str1:与前面一样,表示此处的Socket名称。
Str2:要发送的字符串,存在字符型变量S002里面,每次发送不能超过255个字节。
B1:>0数据正常发送,=-1Socket不存在,=-2连接失败,=-3错误,=-4超时。
注意:机器人控制器能同时开通16个Socket作为客户端,每个Socket只能开通关闭一次,开通之后能接收或者发送数据N次,然后必须要关闭,不然下次开通该Socket会报错。
1.3示教程序
利用网络调试助手做服务器进行模拟发送,用控制器作为客户端进行接收。设置本地IP地址为192.168.0.3,端口号5050。设置完如图1所示。控制器端就按TCPIP通讯中第四步操作进行设置。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。