使用免费中间件LECPServer通过MQTT协议连接和采集PLC信息

5 篇文章 0 订阅
4 篇文章 0 订阅

前言:LECPServer最新版本支持通过MQTT网关,将PLC的状态信息发布给其他上位系统,如MES,HIM,SCADA等系统,并对信息进行采集和二次加工。

在现代工业现场中,会大量的使用MQTT协议,将现场PLC设备(如欧姆龙,三菱,西门子,施耐德等PLC)的状态,收集到MES、HIM、SCADA系统上,但目前支持独立的MQTT客户端的PLC价格昂贵,而且大部分都不支持。因此有人提供了两组不同的方案

  1. 外接硬件的解决方案,即在PLC的串口或者网口上添加一个MQTT客户端网关。这种解决方案需要每台PLC都需要追加硬件和独立配置。
     
  2. 通过软件进行信息转载,如 KepServer 就是这种方案的翘楚,现场只需要架设一台服务器,通过KepServer与PLC设备连接(可以使用RS232/485、以太网等方式),获取到PLC信息后,通过KepServer内置的MQTT客户端,将信息发布到MQTT Broker上。

LECPServer使用的就是第二种方案。

LECPServer对于PLC的连接和配置,这里就不再赘述了,需要的小伙伴可以到这里阅读。

Kepware KepServer的完美替代者,免费开源项目 LECPServer 使用指南_JamesChan的专栏-CSDN博客_lecpserver

这里陈述下LECPServer关于MQTT的配置方法

LECPServer 提供了两个MQTT的支持:

  1. MQTT Broker(MQTT服务端),可以通过配置mqtt.conf文件启动或者关闭
  2. MQTT Client(MQTT客户端),通过页面配置,可以进行对节点信息的发布,使到对应的订阅者能收到最新的节点状态信息

如何配置 MQTT Broker

配置MQTT Broker非常简单,只需要打开mqtt.conf文件 其中

    "MQTTSERVER": {
        "PORT": 1883,
        "START": false
    }

为MQTT Broker的配置,PORT是Broker需要打开的端口,START如果是true,则启动Broker,否则则不启动Broker

用户可以使用LECPServer自带的Broker,也可以使用第三方的Broker进行信息的发布

如何配置 MQTT Client

点开配置页面,我们就可以对MQTT进行配置了。

  1. 点击"设备"栏,的"新加设备"选项,新增一个MQTT设备
  2. 填写MQTT客户端名称,这时候,名称不可重复
  3. 点击"确认,添加",新加设备完毕
  4. 配置MQTT客户端,IP,PORT对应Broker的地址和端口,Client_ID 是客户端ID,可不填,TOPIC是需要发布的主题名称,其他客户端可通过该Topic来订阅信息
  5. SCAN_RATE,为巡检节点时间,单位ms,默认为1000ms,每巡检一遍,触发一次设备节点的发布
  6. 配置好必要信息后,点击“应用”按键,即可连上Broker

 

 如何配置 MQTT Client 节点

接下来我们就可以通过配置节点,让MQTT Client实现信息发布

  1. 点击节点配置里面的“添加”按键
  2. 选择需要添加的节点,选择完成后点击“应用”
  3. 这时候添加的节点就会以每次巡检间隔发布一次给Broker

 

 我们使用HSL来做MQTT Broker来演示一遍最终效果,下面是GIF动图

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值