多种PLC之间互相交换数据的方法,建议收藏

自动化工程师朋友们都知道,工控现场有许多 PLC 之间需要通讯和数据交换,实现项目之间的数据对接和共享 。
但对于不同品牌的 PLC 来说,由于接口、协议不同,程序不开放等诸多因素,往往令人头疼,也很无解,给项目的顺利实施增加了很多困扰 。

多种PLC之间互相交换数据的方法,建议收藏

文章插图
北辰 S 系列,是实现 PLC 数据交换的神器 。
之所以称它为神器,是因为 S 系列可以把 PLC 的串口和网口都统一成通用的 ModbusTCP 以太网协议,PLC 之间以 ModbusTCP 服务器(从站)和客户机(主站)的形式进行通讯,解决了 PLC 协议转换和数据交换的难题 。
北辰 S 系列具有 ModbusTCP 服务器功能,Modbus 数据区可自动或编辑映射至 PLC 寄存器,ModbusTCP 的客户机如组态软件、OPC、DCS 系统、PLC 都可以便捷访问 。
S 系列还具有 ModbusTCP客户机功能,西门子、三菱、欧姆龙、松下、台达等 PLC 配上北辰 S 系列模块,即可轻松实现 ModbusTCP主从站通讯和数据交换 。
所以,北辰模块既可用于编程监控、数据采集和设备联网,还可用于协议转换和数据交换,既可用于有线网络环境,也可用于无线网络环境的协议转换和数据交换 。
以适用于西门子 S7300/400 的 BCNet-S7300-S 为例,ModbusTCP 和 ModbusRTU 数据交换应用如下:
多种PLC之间互相交换数据的方法,建议收藏

文章插图
除此之外,S 系列还可应用于三菱、欧姆龙、松下、台达、施耐德、信捷、MODBUS RTU等PLC和设备之间的数据交换,在这里不一一列举 。
示例
以 FX3U 与 FX5U 交换数据为例,数据交换采用 ModbusTCP 协议实现,其它支持 ModbusTCP从站协议的 PLC(如施耐德 PLC),均可实现该数据交换,步骤类似不再重复介绍 。
对于支持ModbusTCP 从站协议的仪表,FX3U 可直接通过 BCNet-FX-S 进行仪表数据采集 。
BCNet-FX-S 的 MD8(X1)连接 FX3U 的圆形编程口,FX5U 自带以太网口与 BCNet-FX-S 的以太网口连接,BCNet-FX-S 通过 BCDevice 工具配置交换命令,实现实时高效的 FX3U 和 FX5U 数据交换 。
多种PLC之间互相交换数据的方法,建议收藏

文章插图
该功能基于 BCNet-FX-S 的 ModbusTCP 客户机功能实现,通过 BCDevice(软件版本 V1027 及以上)进行主站命令配置,无需 PLC 编程,提高应用开发速度和便捷性 。
数据交换也可采用 BCNet-FX-S 的 WiFi 接口实现,可实现两个 PLC 直接的无线数据交换;具体在建立客户机时,本地网卡可选择 WiFi 接口 。
一、配置 FX5U
STEP 1
1.打开 GX Work3,新建项目,以太网配置(内置以太网口)中,配置“Modbus/TCP 连接设备” 。
多种PLC之间互相交换数据的方法,建议收藏

文章插图
2.编辑 PLC 软元件分配,按下表配置所示,D0 映射的Modbus地址为 40001(HoldingRegister的 0 地址) 。
多种PLC之间互相交换数据的方法,建议收藏

文章插图
二、配置 BCNet 模块数据交换命令
STEP 2
1.打开 BCDevice,搜索到 BCNet-FX-S 后,选择【修改设备参数】
多种PLC之间互相交换数据的方法,建议收藏

文章插图
2.新建客户机
多种PLC之间互相交换数据的方法,建议收藏

文章插图
【1】点击数据交换,右键创建新的客户机 0;
【2】ModbusTCP协议用于连接远端的从站设备,此例中为 FX5U 的网口,该网口通过配置,已经支持 ModbusTCP 服务器功能,且 PLC 的数据和 Modbus 地址映射关系也已配置;
【3】本地网卡选择,选择 LAN 时,基于以太网口进行数据交换;选择 WiFiStation 或者 WiFiAP时,采用 WiFi 无线方式进行数据交换,该方式应当确保设备之间的 WiFi 连接已经建立;
【4】远程服务器的 IP 地址为 FX5U 的 IP 地址,这里设置为 192.168.1.130;远程服务器的通讯端口号,默认为 502;连接超时时间默认为 10s;
【5】点击确认,创建客户机 。
3.在客户机中配置数据交换命令
多种PLC之间互相交换数据的方法,建议收藏

文章插图
【1】点击新建命令(FX3U 的 D0 读取 FX5U 的 D0);
【2】选择[远程→本地],传输 1 个字;传输超时设置层 2s;
【3】本地站点(FX3U)设置数据区域选择 D 寄存器,起始地址为 0,即选择软元件 D0;
【4】 远程站点(FX5U)的 D0 由上一章映射表可知被映射成 HoldingRegister 的 0 地址;故数据区域选择 HoldingRegsiter,偏移地址填 0,站点地址是 ModbusTCP 协议中的单元号,这边由于 FX5U 不是网关,故可忽略;


推荐阅读