作者: 徐樱樱
日期:
2016-9-29
版本:
V1.0
E_mail:
yy.xu@beckhoff.com.cn
上海市江场三路市北工业园区 163 号 4 楼
(200436)TEL: 021-66312666FAX: 021-
66315696
TCP/IP Client/Server 使用介绍
概 述
当倍福的控制器和第三方的设备(支持 TCP/IP Server)通讯时,我们可以参考本例程。
本事例介绍了 Socket Tool 的使用方法。
本事例介绍了 TCP/IP 的 Client 的功能块的使用。
CX5020 作为 Client 请参考实验操作中的 CX5020 作为 Client 实验步骤:
CX5020 作为 Server 请参考实验操作中的 CX5020 作为 Server 实验步骤
文档中包含的文件
文件名称
TF6310-TCP-IP
Socket Tool
TwinCAT3 软件
Function 的安装包
以太网调试助手
编程软件(Ver. 3.1.4018.26)
下载路径链接:
TwinCAT 3 软件下载路径:
文件说明
ftp://ftp.beckhoff.com.cn/TwinCAT3/install/InstallationPackage/
TF6310 TC3 TCP/IP Function 下载路径:
ftp://ftp.beckhoff.com.cn/TwinCAT3/install/Functions/TF6x-Connectivity/TF6310-TCP-IP/
Socket Tool 以太网调试工具下载路径:
ftp://ftp.beckhoff.com.cn/TwinCAT3/Samples/TF6310-TcpIpServer/Tools/
备注
免责声明
我们已对本文档描述的内容做测试。但是差错在所难免,无法保证绝对正确并完全满足您的使用需求。本文档的内
容可能随时更新,也欢迎您提出改进建议。文档内容可能随时更新
如有改动,恕不事先通知
For questions or comments, email support@beckhoff.com.cn 1
一. 本例软、硬件配置:
1. 硬件:CX5020-0112(嵌入式 PC)
2. 软件:TF6310-TCP-IP 的安装包
Socket Tool(以太网调试助手)
TwinCAT3 软件(编程软件)
二.本例实验操作步骤:
1.CX5020 作为 Client 实验步骤:
㈠实验要求
CX5020 作为 Client,Socket Tool 作为 Server, 结合 Socket Tool,把 Socket Tool 上面数据发给
控制器 CX5020 数组内存 arrReciveData,把 CX5020 数组内存 arrSendData 发送给 Socket Tool。
(二)实验系统搭建图
(三)实验步骤:
1. 安装 TCP/IP 的 Function,(具体步骤见实验一), 打开 TwinCAT3,新建工程,激活相应的
license。
2. 添加相应的功能库,右键 References,选择 Add library,选择 Communication 里面的
TC2_TCPIP。
For questions or comments, email support@beckhoff.com.cn 2
3. 本次实验需要用到 4 个功能块,分别是 FB_SocketConnect(用于建立连接),
FB_SocketSend(用于发送),FB_SocketReceive(用于接收),FB_SocketClose(用于关
闭连接),建立相关的变量。
4. 编写实验案例
第一步,编写 TCP/IP 连接功能块,确认 TCP/IP Server 的 IP 地址为 169.254.0.1 和端口
号 6000,并将 fbSocketConnect 获取到 hSocket 与声明的 hSocket 进行绑定
第二步,编写 TCP/IP 发送功能块。
For questions or comments, email support@beckhoff.com.cn 3
第三步,编写 TCP/IP 接收功能块
第四步,编写 TCP/IP 关闭功能块
5. 对 Socket Tool 设置,选中 TCP Server,点击创建,设置监听端口号为 6000。
6. 连接上控制器,激活配置,下载程序,把 SocketConnect 功能块触发位 bExecute 变为 True
For questions or comments, email support@beckhoff.com.cn 4
之后,便建立了 TCP/IP 连接。可以看见 hSocket 有值,显示 Server 和 Client 的 IP 地址
与通讯端口。其中 Local 指 CX 控制器,Remote 指 PC 侧的 Socket Tool
7. Socket Tool 写入发送数据 16#1111,16#2222,16#3333,16#4444,然后导通 bReceive 接收数
据,在数组 arrrecieveData 接收到 Socket Tool 发送的数据
8. 接收测试完成之后,导通 bSend,并且把数组 arrsendData,发送给 Socket Tool。
For questions or comments, email support@beckhoff.com.cn 5
9. 如果不使用 TCP/IP 通讯,建议关掉先前使用的 TCP/IP 通讯端口。
(四)配套 PLC 例程下载链接
CX5020 作为 Client 的案例链接:
ftp://ftp.beckhoff.com.cn/TwinCAT3/Samples/TF6310
TcpIpServer/TCPIP_SampleCode/TCPCP_Client_SampleCodeV1.tpzip
2.CX5020 作为 Server 实验步骤:
(一)实验要求
CX5020 作为 Server,Socket Tool 作为 Client, 结合 Socket Tool,把 Socket Tool 上面数据发
给控制器 CX5020 数组内存 arrReciveData,把 CX5020 数组内存 arrSendData 发送给 Socket
Tool。
(二)实验搭建图
For questions or comments, email support@beckhoff.com.cn 6
(三)实验步骤
1. 安装 TCP/IP 的 Function,(具体步骤见实验一), 打开 TwinCAT3,新建工程,激活相应的
license。
2. 添加相应的功能库,右键 References,选择 Add library,选择 Communication 里面的
TC2_TCPIP。
3. 本次实验需要用到 5 个功能块,分别是 FB_SocketListen,FB_ SocketAccept,
FB_SocketSend,FB_SocketReceive,FB_SocketClose,建立相关的变量。
4. 编写实验案例
第一步,编写 TCP/IP Server 的监听功能块,确认 TCP/IP Sever 的 IP 地址为 169.254.0.1
和端口号 8000。
For questions or comments, email support@beckhoff.com.cn 7
第二步,编写 TCP/IP Server 接受功能块。
第三步,编写 TCP/IP 发送功能块。
第四步,编写 TCP/IP 接收功能块
第五步,编写 TCP/IP 关闭功能块
For questions or comments, email support@beckhoff.com.cn 8