随着计算机控制技术的不断发展,可编辑逻辑控制 器的应用也在不断普及,成为自动化技术的重要组成, 其中西门子 S7 系列的 PLC 在我国工业控制中也占有了很 大的比重。触摸屏作为一种直观、方便的人机交互方 式,在工业控制中得到了广泛的应用。笔者在长期的使 用过程中,发现很多人对于不同型号的 PLC 之间,以及 西门子 PLC 与第三方触摸屏的数据通信比较陌生,本文 将以具体实例来说明如何采用以太网的方式实现 MCGS 触摸屏与西门子 S7 系列的 PLC 进行通信,为工业自动化 控制系统搭建基础。
1 硬件构成
本控制系统的硬件由3 个西门子S7 系列的PLC 模块构 成,其中一个选用了典型的 S7-300 系列 CPU314C-2PN/ DP PLC 作为主站,另外两个选择S7-200Smart 系列的SR40 和 ST30 PLC 作 为 从 站 , 触 摸 屏 选 用 了 昆 仑 通 泰 的 TPC7062Ti (具备以太网口),触摸屏只与主站PLC 进行通 信,而主站可以和两个从站进行通信,两个从站PLC 之间 也可以进行通信。3 个PLC 模块使用网线和交换机进行连 接,通过编程软件分别给3 台PLC 设置IP 地址,另外,触 摸屏和编程计算机也需要设置IP 地址,注意本系统中所有 设备IP 地址都必须在同一网段[1]。其系统硬件构成和IP 分 配如图1 所示。
图1 系统硬件构成及IP 分配
2 上位机组网
2.1 S7-300PLC以太网设置 (1)硬件及网络组态
CPU 采用了 314-2PN/DP,使用 STEP7 Manger V5.5 软 件,插入1 个S3-300 站,在硬件组态中插入CPU314-2PN/ DP,其硬件组态的硬件参数必须要和实际的硬件参数相 同,因CPU314-2PN/DP 自带两个以太网PN 接口,在进行 组态的时候会弹出以太网属性设置窗口,在该窗口中根据 图1 设置IP 地址,选择不使用路由器(普通的交换机没有 IP 地址),新建一个Ethernet(1)子网,硬件设置完毕后,点 击保存并编译,创建系统数据。
(2)网络配置
打开“ NetPro” 设置网络参数,选中 CPU 314-2PN/ DP,在连接列表中插入两个新连接,连接伙伴选择 (未 指定),站点 (未指定),连接类型选择S7 连接,在属性 设置中,本地连接端点勾选建立主动连接,块参数选择, 因 S7-300 需要跟 S7-200Smart 系列 PLC 的 ST30 和 SR40 通信,可分别设置为“1”和“2”,伙伴栏键入相关PLC 的 IP 地 址 , 根 据 图 1 分 别 设 置 为 “192.168.0.2” 和
“192.168.0.3”, 地 址 栏 设 定 为 S7-300 的 IP 地 址
“192.168.0.1”,然后点击地址详细信息,伙伴栏机架/插槽
栏,需要将插槽号改为1,确定,创建网络组态,编译无 错后下载。
2.2 Smart200PLC以太网设置
Smart200PLC (包括ST30 和SR40) 都使用STEP 7 Mi⁃ croWIN SMART V2.2,在软件中打开“系统快”,CPU 选择对应的模块,可根据图1 系统硬件构成及IP 分配,设置IP 地址和参数,如图2 所
示。设置完成后,在 “通信”对话框中需要 选择和编程计算机网卡 类型相匹配的网络接口 卡,通 过 “ 查 找 CPU“, 选 择 不 同 的 PLC 相匹配的IP 地址来图2 Smart200PLC IP 地址参数设置 下载程序。
图2 Smart200PLC IP 地址参数设置
Smart200PLC 之间的以太网通信使用GET/PUT 向导来
实现,打开 GET/PUT 向导对话框,在操作中添加名称为 Operation1 为 GET 类型,传送大小可设定为 100,设定远 程 CPU 的远程 IP 为 SR40 的 IP 地址:192.168.0.3,本地地 址 和 远 程 地 址 均 可 设 定 为 200, 实 现 将 SR40 的 VB200~VB299 的数据传递给ST30 的VB200~VB299;Oper⁃ ation2 为PUT 类型,传送大小、远程CPU 的远程IP 设定与 Operation1 相同,本地地址和远程地址设定为300,实现将 ST30 的 VB300~VB399 的 数 据 传 递 给 SR40 的 VB300~VB399。这样在ST30 和SR40 就划分一块区域进行 数据交换。必须注意的是在设定向导时,单击向导中
“存储器分配”,所组态的每个网络从操作都需要20 字节 的 V 存储器,该地址不能与划分为数据交换的存储器地
址重合,可通过“建议”设定一个未使用块的地址作为 起始地址。
2.3 MCGS触摸屏以太网设置
触摸屏在上电后,可连续点击屏幕,进入系统设置, 在系统维护的“设置系统参数”中可修改IP 地址。MCGS
触屏采用以太网组网方式时,在“设备窗口”中添加一个
“通用TCP/IP 父设备”和一个“西门子CP443-1 驱动”子
设 备 , 父 设 备 中 设 置 本 地 IP 为 编 程 计 算 机 IP
“192.168.0.5”, 远 程 IP 地 址 设 置 为 触 摸 屏 IP
“192.168.0.4”; 子 设 备 中 设 置 本 地 IP 为 触 摸 屏 IP
“192.168.0.4”, 远 程 IP 地 址 设 置 为 主 站 S7-300IP
“192.168.0.1”。
3 控制要求
系统要求完成触摸屏与3 台PLC 之间的通讯检测。当 3 台 PLC 上电后处于运行状态时,若系统网络连接正常,则触摸屏中对应的通信指示灯点亮。此外,每一台PLC 需 要分配一个输出点,作为通信测试灯。分两种情况测试:
(1) 3 台PLC 之间通信测试:按下SB1 按钮 (主站), 从站一PLC 输出点的通信测试灯亮;再按下SB1 按钮,从 站一PLC 输出点的通信测试灯保持点亮,从站二PLC 输出 点的通信测试灯亮;再按下SB1 按钮,从站一、二PLC 输 出点的通信测试灯灭,第一种通信测试完成。
(2) 触摸屏与3 台PLC 之间通信测试:在触摸屏设计 一个测试框,在测试框内输入 (10),主站PLC 输出点的 通信测试灯亮;输入 (20),主站、从站一PLC 输出点的 通信测试灯亮;输入(30),主站、从站一、从站二PLC输 出点的通信测试灯亮;输入其他值,所有通信测试灯熄灭。
4 人机界面设计
根据控制要求,人机对话界面需要设置 3 个输出指 示灯,分别为主站、从站一、从站二通信指示灯;一个 测试框,其属性变量如表 1 所示。MCGS 触屏在用户窗 口的工具箱中可使用插入元件构件和输入框构件来实 现,在操作属性中设定其变量。并可以使用工具箱中的直线和标签构件 对 界 面 进 行 说 明 美化,其界面设计如图 3所示。
图3 人机界面设计
5 程序设计
5.1 PLC的输入输出分配
从控制要求上看,该系统只有一个输入按钮,由 S7-300 分配一个输入点;3 台PLC 分别分配一个输出点用 作通信测试灯,如表2 所示。
5.2 S7-300与Smart200通信程序
在 S7-300 中可调用 FB14 和 FB15 两个块来实现对 Smart200PLC 中数据的读和写的操作。先调用 FB14 和 FB15 设定为DB14 和DB15,其中ID 为W#16#1,如图4 所 示。图4 中的程序段1 为读取指令,在M0.0 的上升沿,将 从站一ST30 的MB21 读取到主站S7-300 的MB12 中;程序段2 为写指令,在T1 的上升沿,将主站的MB10 写入到从站一的MB20 中。
图4 读写操作指令
如图5 所示的程序段 表示FB14 和FB15 利用定 时来进行读写,T2 延时 100 ms 到,M0.0 线圈通 电,进行读取操作;T1 开始延时 100 ms,时间 到开始写操作。
图5 定时读写
同理,调用FB14 和FB15 设定为DB16 和DB17,其中 ID 为 W#16#2, 完 成 从 站 二 SR40 的 MB31 读 取 到 主 站 S7-300的MB13中,主站的MB10写入到从站二的MB30中。 5.3 主站S7-300功能实现
图6 计数启动
图7 触屏数据启动 图8 主站通信指示灯点亮
如图6 所示为计数启动,该程序通过计数器记录按下 SB1 的次数,使用比较器分别启动不同状态M1.0、M1.1、M1.2;如图 7 所示为触 屏数据启动,该程序实 现将触屏测试框的数据 传递给给 S7-300,并根 据触屏输入数据,使用 比 较 器 启 动 不 同 状 态 M1.3、 M1.4、 M1.5。 其 中 M1.3、M1.4、M1.5 均 启动主站 PLC 输出点的 通 信 指 示 灯 Q136.0 点 亮,可使用如图 8 所示 的程序来实现;M1.0、M1.1、M1.4、M1.5 启动从站一PLC 输出点的通信指示灯点 亮,M1.1、M1.5 启动从站二 PLC 输出点的通信测试灯点 亮,使用如图9 所示的程序来实现,由于从站一和从站二 的测试灯信号数据需要分别传递给ST30 和SR40,故在图 9 程序中使用数据M10.0 和M10.1,M10.0 对应传递到ST30 中的数据为 M20.0,M10.1 对应传递到 SR40 中的数据为 M30.1。如图10 所示为S7-300 上电则触屏主站通信指示灯 点亮。
图9 从站通信指示灯启动
图10 主站通信测试灯启动
5.4 从站程序设计
Smart200 ST30 和SR40 分别作为两个从站,如果互相 通信还需要在从站中将作为本地CPU 的ST30 主程序块中 调用执行子程序NET_EXE,如图11 所示。如图12 所示为 程序实现上电点亮 M21.0,因该数据可传递给 S7-300 的 M12.0,从而使得触屏从站一通信指示灯点亮;而 M20.0 来自 S7-300 的 M10.0,可点亮 ST30 的输出点 Q0.0,实现 从站一的通信测试灯点亮。同理,可实现从站二的通信指 示灯和通信测试灯点亮。
图11 调用NET_EXE 子程序 图12 ST30 中程序
6 结束语
本 文 通 过 一 个 具 体 实 例 , 详 细 给 出 了 上 位 机 S7-300、S7-200Smart PLC 以及 MCGS 触屏以太网设置, 人机界面设计及构件属性设置,S7-300 与 S7-200Smart PLC 程序功能,实现了MCGS 触摸屏与西门子S7 系列不同 PLC 型号之间以太网通信测试,为不同工业自动化控制系 统搭建基础。
微信扫一扫
关注公众号
18150066586 3004636837@qq.com 0591-87578810
15306977124 3004993430@qq.com 0591-83851589
15306977204 2851617306@qq.com 0591-88075780
15306977014 2851617301@qq.com 0591-87580173
18005007289 2851617310@qq.com 0591-87722515
15306977484 2851617304@qq.com 0591-83855060
18065057209 2881507050@qq.com 0591-22875422
15306977024 2851617309@qq.com 0591-83532940
15306977134 2851617313@qq.com 0591-83841178
15306977494 2851617303@qq.com 0591-83855720