自动化工程师朋友们都知道,工控现场有许多 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 数据交换应用如下:
除此之外,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 数据交换。
该功能基于 BCNet-FX-S 的 ModbusTCP 客户机功能实现,通过 BCDevice(软件版本 V1027 及以上)进行主站命令配置,无需 PLC 编程,提高应用开发速度和便捷性。
数据交换也可采用 BCNet-FX-S 的 WiFi 接口实现,可实现两个 PLC 直接的无线数据交换;具体在建立客户机时,本地网卡可选择 WiFi 接口。
一、配置 FX5U
STEP 1
1.打开 GX Work3,新建项目,以太网配置(内置以太网口)中,配置“Modbus/TCP 连接设备”。
2.编辑 PLC 软元件分配,按下表配置所示,D0 映射的Modbus地址为 40001(HoldingRegister的 0 地址)。
二、配置 BCNet 模块数据交换命令
STEP 2
1.打开 BCDevice,搜索到 BCNet-FX-S 后,选择【修改设备参数】
2.新建客户机
【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.在客户机中配置数据交换命令
【1】点击新建命令(FX3U 的 D0 读取 FX5U 的 D0);
【2】选择[远程→本地],传输 1 个字;传输超时设置层 2s;
【3】本地站点(FX3U)设置数据区域选择 D 寄存器,起始地址为 0,即选择软元件 D0;
【4】 远程站点(FX5U)的 D0 由上一章映射表可知被映射成 HoldingRegister 的 0 地址;故数据区域选择 HoldingRegsiter,偏移地址填 0,站点地址是 ModbusTCP 协议中的单元号,这边由于 FX5U 不是网关,故可忽略;
【5】点击“检查”按钮可进行规则检查,点击“确认”按钮即可生成命令;
4.客户机监视
点击客户机监视按钮,【错误信息】为无错误,且【正确】有数据跳动,说明通信成功。
三、验证数据交换
STEP 3
1.打开 GXWork3 变量监视表,对 FX5U 的 D0 进行数据修改为 BC12H;
2.打开 GXWork2 变量监视表,对 FX3U 的 D0 进行数据监视,值为 BC12H;
3.上述监视说明已经将 FX5U 的 D0 数据读取到 FX3U 的 D0 中,实现了数据交换功能;数据交换功能亦可实现 FX3U 到 FX5U、FX5U 到 FX3U 的位、字节和字的数据交换功能。
S 系列的型号及适用 PLC