使用IOT-Tree Server通过FINS协议连接欧姆龙CP2E-N系列PLC

IOT-Tree Server是个开源物联网软件,可以作为组态软件成为自动化系统的上位软件。她提供了各种设备接入、数据组织管理、数据分享使用、消息流控制逻辑和人机交互多个方面的功能。当然,你也可以仅仅使用这个软件作为数据采集终端或边缘计算的软件。

这是IOT-Tree Server相关的系列文章,你可以参考其他文章更多了解IOT-Tree能给你带来的好处:

使用IOT-Tree Server通过MC协议连接三菱Q系列PLC

使用IOT-Tree Server连接西门子PLC S7-300/1200/1500

使用IOT-Tree Server通过PPI(RS485)连接西门子PLC S7-200

系列文章还包含IOT-Tree完成一个具体项目的过程,非常详细,如下:

机房自动化监控手把手分享给你 - 10 项目完成总结

本文介绍的是使用IOT-Tree Server通过FINS协议连接三菱Q系列PLC的具体过程。此项目和上面文章《使用IOT-Tree Server通过MC协议连接三菱Q系列PLC》类似,也是我们的实际项目,用户需要采集目标设备数据,然后通过MQTT协议发送到用户的云端系统即可。

1 设备和环境准备

1.1 欧姆龙PLC通信对接准备

欧姆龙CP2E-N系列PLC支持以太网接口,直接支持FINS/TCP以太网通信协议。

在欧姆龙PLC编程软件CX Programmer项目中,双击"设置",在弹出窗口中找到"内置以太网"页。设置或查看此PLC的IP地址(本案例为192.168.1.5),并且FINS协议使用了缺省端口9600。如下图:

1.2 IOT-Tree运行环境准备

我项目中运行IOT-Tree实例的设备是个嵌入式ARM Linux边缘计算小模块,长的这样:

有如下参数,可以直接支持IOT-Tree的运行:

|------|--------------------------------|
| 整机尺寸 | 157*125*28mm |
| CPU | 瑞芯微RK3506J,3*Cortex-A7@1.2GHz |
| 内存 | 512M |
| 存储 | 8GB |
| 串口 | 2 路RS485 |
| 以太网 | 2 路10/100Mbps |
| 电源 | 9V~36V 宽压直流 |
| 工作温度 | -40℃~85℃ |

现场只需要安装到标准导轨上,配合24V直流电源和网络连接,就完成了硬件环境部署。其中边缘设备一个网口接用户本地以太网络(IP地址:192.168.0.12)------支持对外互联网连接,另一个网口接PLC运行环境交换机中(IP地址:192.168.1.51)。两个网口使用不同网段安全隔离,整体很简单。

2 IOT-Tree接入欧姆龙PLC数据配置过程

访问边缘设备管理地址http://192.168.0.12:9090,输入管理员用户密码之后,进入管理主界面。在本地项目区块中,新增项目标题为:"欧姆龙PLC接入CP2E-N"。如下图:

点击此项目,进入项目管理主界面,接下来我们就可以开始具体的配置过程。

2.1 配置接入

因为FINS协议在PLC端是个Tcp Server,所以IOT-Tree项目中的接入应该使用Tcp Client。点击左上角接入菜单,选择"Tcp客户端",在弹出窗口中填写如下内容,特别注意主机和端口是PLC的IP地址和FINS支持端口9600。如下:

点击确定之后,就完成了接入配置:

2.2 配置通道和设备

接着,我们在中间浏览树根节点,鼠标右键选择"新增通道"。在弹出的窗口填写如下内容,其中驱动点击选择"Omron FINS Ethernet TCP"。

确定之后就完成了通道节点的添加。然后鼠标左键点击接入ormoncc的连接端子到这个通道ch的连接端子上方,然后松开左键,建立接入到这个通道的关联:

接着我们在这个通道下面添加PLC设备:鼠标右键点击ch这个通道,选择"新增设备"。在弹出窗口填写如下内容

复制代码
名称=plc1
标题=PLC1
Model=CJ2

完成之后我们就可以在通道下面看到这个设备节点了

接下来,根据FINS协议的要求,我们还需要修改一些参数。点击选中设备PLC1,打开右边属性页中,修改如下几个参数,他们分别对应运行IOT-Tree设备IP地址和PLCIP地址的最后一位:

复制代码
源节点数=51
目标节点数=5

点击右上角"应用按钮"进行保存,才完成了通信及设备参数配置。然后,就可以在这个设备节点下添加需要采集的数据标签了。

2.3 配置采集的数据标签

点击选中plc1设备节点,在右边标签[标签]列表中就可以添加需要采集的数据了。

点击"新增标签"按钮,弹出如下标签编辑窗口。

标签填写说明:

标签名称必须符合变量名称规范;地址区域填写的地址格式和欧姆龙PLC要求的规范一致。如果不确定地址和数据类型是否合理,可以点击"自动检查地址按钮"。IOT-Tree会根据当前填写的地址内容进行有效性判断和规范格式,并自动设置数据类型。当然,你还可以点击帮助查看支持的欧姆龙PLC地址格式和范围。

下面则是点击帮助按钮弹出的地址格式和范围说明文档:

确定之后,我们就添加了这个状态标签:

如果你采集的数据点不多,那么直接在设备PLC设备节点下配置全部标签(采集点)就行了。但是,如果需要采集的数据点很多,建议在这个设备节点下添加标签组子节点进行分类,然后在不同的标签组下面分别添加标签即可,整个过程基本鼠标右键使用里面的菜单项即可完成,在此不做详细展开了。配置标签和标签组最终效果如下:

补充说明:你也可以使用导入标签的方式一次添加多个标签。或者如果你已经做过类似机器配置,其他IOT-Tree项目与此类同。那么可以从另外项目导出标签列表文本,在此项目中使用"导入标签"快速导入。

3 IOT-Tree使用消息流MQTT节点向云端发送数据

本部分内容请参考我之前文章:使用IOT-Tree消息流MQTT模块节点实现监测数据推送功能

这篇文章详细说明了在IOT-Tree消息流中如何通过MQTT模块节点使用不同策略把项目数据发送到云端,并且同时接收云端指令进行后续处理。而本案例只需要定时把采集的数据打包推送即可,因此就不展开重复说明了。

4 其他说明

设备在现场运行,通电之后这个项目必须自动启动。你需要在管理主界面项目列表中,设置此项目自动启动:

相关推荐
九河云5 小时前
物流仓储自动化升级:物道供应链 AGV 机器人实现分拣效率提升 60%
人工智能·科技·物联网·机器人·自动化
学术小白人5 小时前
第十三届物联网标识、信息与知识国际会议(IIKI 2025)
物联网·信息可视化
无敌最俊朗@7 小时前
MQTT 关键特性详解
java·前端·物联网
祐言QAQ18 小时前
(超详细,于25年更新版) VMware 虚拟机安装以及Linux系统—CentOS 7 部署教程
linux·运维·服务器·c语言·物联网·计算机网络·centos
捷米特研发一部18 小时前
无线收发模块保障砂芯库桁架机器人稳定无线通信实践
工业自动化·无线数传模块·无线网桥·plc无线通讯
Stanford_110620 小时前
关于物联网的基础知识(四)——国内有代表性的物联网平台都有哪些?
人工智能·物联网·微信·微信公众平台·twitter·微信开放平台
捷米研发三部1 天前
DeviceNet转ProfiNet协议转换网关实现西门子PLC与丹佛斯变频器通讯的配置案例
网络·物联网·自动化
柱子jason1 天前
使用IOT-Tree消息流InfluxDB模块节点实现标签数据的时序数据库存储
数据库·物联网·时序数据库·influxdb·iot-tree
沐欣工作室_lvyiyi1 天前
基于物联网的智能衣柜系统的设计(论文+源码)
stm32·单片机·嵌入式硬件·物联网·毕业设计·智能衣柜