一种 PLC 与 IPC 进行 TCP/IP 通讯的设计方案
文:文 / 唐山职业技术学院 崔文2023年第四期
西门子S7-1200系列PLC使用灵活、功能强大,可用 于控制各种各样的设备以满足自动化需求。S7-1200设计 紧凑、组态灵活且具有功能强大的指令集,其中CPU将微 处理器、集成电源、输入和输出电路、内置PROFINET、 高速运动控制 I/O以及板载模拟量输入组合到一个设计紧 凑的外壳中来形成功能强大的控制器。S7-1200集成的 工业以太网通讯接口用于与编程计算机、HMI(人机界 面)、其他PLC或者设备进行通讯 。
1 通讯系统组成
本系统采用西门子S7 - 1200系列PLC为控制系统核 心,其中CPU型号为1214C DC/DC/DC,固件版本为 V4.0, 产品的订货号6ES7 214-1AG40-0XB0。PLC与 上位机工业电脑IPC通过TCP/IP通讯协议进行通讯,可直 接使用工业以太网线通过工业网络交换机连接到PLC本体 模块上的工业以太网接口和IPC上的网络接口上。IPC上安装西门子PLC编程软件TIA Portal用来对PLC进行参数 配置、网络设置、程序编写及监控、调试等;TCP/IP通 常测试软件可用来模拟作为TCP/IP通讯的客户端,PLC端 则作为服务器,用来响应客户端的通讯请求,该系统的网 络结构图如图1所示。
图 1 系统网络结构
2 PLC端参数设置
PLC端进行TCP/IP通讯时,可以使用西门子的通讯功 能块:
(1)TSEND_C(v2.1),PLC发送数据的功能块; (2)TRCV(V3.0),PLC接收数据的功能块。
PLC发送/接收数据的功能块如下图2所示。需要注意 的是这些通讯模块的版本号会随TIA Portal的版本升级而 升级更新,功能可能会有所更新,需要及时查看对应的参 考说明手册文件。
PLC与PC之间进行基于TCP/IP的工业以太网通讯,
图 2 西门子 TCP/IP 通信功能块
PC给PLC发送字符串(String)类型的控制字命令,PLC 向PC发送字符串类型的状态字。
西门子S7 - 12 00系列CPU 支持使用String(字符 串)数据类型存储一串单字节字符。String数据类型包含 总字符数(字符串中的字符数)和当前字符数。String 类型提供了多达 256个字节,用于存储最大总字符数(1 个字节)、当前字符数(1个字节)以及最多254个字符 (每个字符占1个字节),即最多254个有效字符。
字符串存储的格式结构为:
(1)String [0]:最大总字节数(254);
(2)String [1]:当前字符数(根据实际情况);
(3)String [2]: 第一个有效字符,以此类推, 一直 到最后一个即第254个有效字符结束。由此可知PLC的一 个字符串的有效字符是从第2个字节开始,在使用字符串 时要注意。
2.1 数据PLC向 → PC
为了发送有效字符串,发送数据时使用字符型数 组,这样PLC反馈的状态字符串需要先进行“St rg_TO_ chars”(V1.2)字符串转换成字符数组,然后把字符数 组发送给PC。
在本系统中设置字符串的结束字符为“$00”,不 同长度的字符串通过“$00”来结束,在字符串中当读到 “$00”时就会结束读取。如发送“ERROR$00abc”、 “OK$00123”,字符数组中的字符分布为“ERROR”、 “OK”。因此,要求客户端在发送字符串通讯命令时要按照 事先约定好的通讯格式进行,否则就会出现异常。
为了能实时的将PLC端通讯数据发送给PC端,因此 在通讯发送端功能块TSEND_C的REQ管脚上连接了一个 1Hz频率的时钟信号,通过该时钟信号可以用1秒一次的 频率发送信息数据给PC端。这个时钟信号可以根据实际 项目的通讯速度的需求进行修改调整,PLC端发送数据功 能块如图3所示。
TCP/IP通讯组态的参数配置如下图所示,设置通讯 的参数如图4所示。
作为测试,Partner的Adress 128.168.0.50要与测 试软件所在的PC的IP保持一致,如图5所示。
测试软件为“ TCP&UDP Test Tool. exe”,软件设 置画面如图6所示。
图 3 PLC 发送数据功能块
图 4 PLC 端通讯参数设置
图 5 IPC 端 IP 地址和子网掩码设置
图 6 通讯测试软件设置
图 7 通讯连接成功
图 8 PLC 接收数据功能块
需要配置的参数如下:目标IP为PLC的IP地址。 用Socket通讯测试软件如图7所示。
2.2 数据PC → PLC
PC向PLC端发送字符串数据时,PLC端通过字符型数 组来接收,然后将字符数据转换成字符串。需要PC端在 发送控制字符串时在每个字符串最后加入结束字符, 如 “#”。PLC端接收数据的通讯功能块程序如图8所示。
“FC_Chars_to_ St rg”功能的作用是将PLC读进来 的字符数组转换成字符串,其中iSymbol管脚即是定义的 结束字符。当字符数组中读到结束字符时将将结束字符前 面的字符转换成字符串,数据块DB3作为发送、接收通 讯数据DB块使用,而数据块DB5是中间转换的数据块,PLC发送的字符串和从PC中读出的字符数组转换字符串。
3 结束语
PLC和IPC采用了TCP/IP通讯控制网络形式之后,整 个系统不仅接线变简单,而且运行稳定,通讯速度快,操 作配置参数简单,反馈的信息全面。本系统还可以用于西 门子S7-1200系列PLC和其他系列元器件设备(如工业相 机、工业机器人、扫码枪等)进行通讯测试项目,不需要 任何附加的设备即可对西门子PLC和IPC的通讯功能进行 测试,节省了成本和工作量,具有一定的实际意义,可用 于实际工程项目中。
中传动网版权与免责声明:
凡本网注明[来源:中国传动网]的所有文字、图片、音视和视频文件,版权均为中国传动网(www.chuandong.com)独家所有。如需转载请与0755-82949061联系。任何媒体、网站或个人转载使用时须注明来源“中国传动网”,违反者本网将追究其法律责任。
本网转载并注明其他来源的稿件,均来自互联网或业内投稿人士,版权属于原版权人。转载请保留稿件来源及作者,禁止擅自篡改,违者自负版权法律责任。
如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

关注伺服与运动控制公众号获取更多资讯

关注直驱与传动公众号获取更多资讯

关注中国传动网公众号获取更多资讯
- 运动控制
- 伺服系统
- 机器视觉
- 机械传动
- 编码器
- 直驱系统
- 工业电源
- 电力电子
- 工业互联
- 高压变频器
- 中低压变频器
- 传感器
- 人机界面
- PLC
- 电气联接
- 工业机器人
- 低压电器
- 机柜