当前位置:文档之家› 常见工业物联网通信技术及典型应用

常见工业物联网通信技术及典型应用

• 工业现场设备联网一般有以下几种方式: • 设备本身具有联网能力,支持工业通信协议 • 通过工业网关,进行设备数据采集,并通过工业协议对外输出 • 附加传感器,温度、湿度、振动

4
图:工业网关
设备联网的技术协议以TCP协议为基础
• 常见的工业的协议有:
• OPC UA • Modbus TCP /RTU • PROFINET • MQTT • RS232/RS485
15
常见MQTT SERVER
• Apache Apollo • Mosquitto • Apache ActiveMQ • RabbitMQ • EMQTT

16
性能测试
• 并发测试:192.168.6.156 上用 emqttd_benchmark 测试 192.168.6.157 上的各MQTT SERVER 并发量
派发给订阅者。即,它从发布者接收消息,然后把消息转发给订阅者。 • 转发消息时,MQTT代理使用话题(topic)来过滤客户端。话题就像一个虚拟通
道,把发布者与它的订阅者连接起来。话题由MQTT代理管理。通过这个虚拟 通道,发布者与订阅者解耦,客户端(发布者或订阅者)不必相互知道。


10
MQTT 消息模式
• MQTT实现了发布者-订阅者模式。 • 发布者-订阅者模式将发布消息的客户端(发布者)与接收消息的客户端(订
阅者)解耦开来。 • MQTT是个异步协议,它不会在等待消息时阻塞客户端。 • MQTT协议也不要求订阅者和发布者是相互连接的。 • MQTT其中的关键组件是MQTT代理(broker)。MQTT代理的主要任务是将消息

5
Modbus
• Modbus是一种串行通信协议,是Modicon公司(现在的施耐德电气Schneider Electric)于1979年为使用可编程逻辑控制器(PLC)通信而发表。Modbus已经成 为工业领域通信协议的业界标准(De facto),并且现在是工业电子设备之间常用 的连接方式。 Modbus比其他通信协议使用的更广泛的主要原因有:
• 消息发送测试:本地电脑 用php程序 使用一个客户端连接情况下 发送10万消息 到 192.168.6.157上的各MQTT SERVER。
emqtt,并发最高,但cpu占用较高,稳定性高。消息发送较慢。
moqtuitto ,发送消息快,稳定性高,cpu占用很少,并发比较高。
其它2个稳定性不太高。

25
发送控制信息
• ctl主题的内容格式:
• 第一条轨道和第三条轨道的返修是右转,ctl发送 0;0,0,0x110005,0; • 第二条轨道的返修是左转,ctl发送 0;0,0,0x100005,0;
• 第一条和第三条正常前进,ctl发送 0;0,0,0x100005,0; • 第二条正常前进,ctl发送 0;0,0,0x110005,0;
11
设计模式-发布订阅模式(观察者模式)

12
委托与事件
• 分分钟用上C#中的委托和事件 • C# 中的委托和事件

13
为什么使用MQTT 协议?
• MQTT中文翻译过来就是遥测传输协议:其主要提供订阅/发布模式,更为简 约、轻量,易于使用,针对受限环境(带宽低、网络延迟高、网络通信不稳 定),属于物联网(Internet of Thing)的一个传输协议。设计思想是开放、 简单、轻量、易于实现。这些特点使它适用于受限环境。但不仅限于此:
• 特别适合于网络代价昂贵,带宽低、不可靠的环境。 • 能在处理器和内存资源有限的嵌入式设备中运行。
• 使用发布/订阅消息模式,提供一对多的消息发布,从而解除应用程序耦合。 • 使用 TCP/IP 提供网络连接。 • 提供Last Will 和 Testament 特性通知有关各方客户端异常中断的机制。
• 获取小车的状态信息,订阅主题:agv/小车号/msg ,比如订阅主题 agv/160/msg 就是订阅160号小车的状态信息。
• 控制小车的运行,发布主题:agv/160/ctl,比如发布主题agv/160/ctl 就是控制 160号小车的运行。
状态监控
• msg主题的内容格式:<消息ID>;<地址,值>;<地址,值>; • 例如:接收到主题为agv/160/msg、内容为0000063a;1,0;11,2;12,0;13,2005;14,97;15,150; 的
常见工业物联网通信技术 及典型应用
2018/8/28
20元体验物联网——简易环境监测站
通信协议是工业物联网技术的桥梁
工业网互联网应用的技术方向:“物联网”+“互联网”技术
通信协议是工业物联网技术的桥梁
• 工业物联网/工业物联网首先要解决的就是设备联网问题。 • 非标设备、不同品牌设备间存在协议壁垒 • 大量老旧设备没有联网能力
基于数据节点的订阅和推送机制。在软件系统中使用OPCUA进行数据 采集的大部分场景是监听数据节点的变化。

9
MQTT协议介绍
• MQTT (Message Queue Telemetry Transport),翻译成中文就是:遥测传输协议, 其主要提供了订阅/发布两种消息模式,更为简约、轻量,易于使用,特别适合于 受限环境(带宽低、网络延迟高、网络通信不稳定)的消息分发,属于物联网 (Internet of Thing)的一个标准传输协议。

6

7
OPCUA协议

8
OPCUA协议
OPCUA即OPC统一架构,是OPC协议的最新版本。OPC(OLE for Process Control, 用于过程控制的OLE)是一个工业标准。广泛应用于 多种自动化设备。如今在工业4.0领域,OPCUA是一个热门技术。
消息,
• 0000063a:发布的消息ID • 地址1:控制寄存器,预计不会使用 • 地址11:AGV当前运行状态信息,具体的各种状态参考图片 AGV当前状态信息.jpg • 地址12:AGV上层电机状态,目前诺力AGV没有上层电机所以无用 • 地址13:当前AGV的位置RFID(就是小车停在哪个工位上) • 地址14:AGV当前电量百分比 • 地址15:当前AGV速度(mm/s)

14
MQTT的服务质量
• 对消息中间件,估计大家不得不关心的就是消息的可靠性,也就是消息的发布 服务质量,可喜的是,MQTT支持三种消息发布服务质量(QoS):
• 至多一次”(QoS==0),消息发布完全依赖底层 TCP/IP 网络。会发生消息丢 失或重复。这一级别可用于如下情况,环境传感器数据,丢失一次读记录无所 谓,因为不久后还会有第二次发送。
• 至少一次”(QoS==1),确保消息到达,但消息重复可能会发生。 • 只有一次”(QoS==2),确保消息到达一次。这一级别可用于如下情况,在计
费系统中,消息重复或丢失会导的头部是 2 字节),协议交换最小化,以降低网络流量。


如何绕过常规的构造器,提供一种机制来保证一个类只有一个实例?

这应该是类设计者的责任,而不是使用者的责任
• 意图(Intent)

保证一个类仅有一个实例,并提供一个该实例的全局访问点。——《设
计模式》GoF

21

22
MQTT应用案例
MQTT控制AGV小车运行与小车状态监控

26
编码建议
17
EMQTT与MQTT功能演示

18
设备在线监测系统中的MQTT集成
设备在线监测系统中的MQTT集成

20
设计模式-单例模式
• 动机(Motivation)

在软件系统中,经常有这样一些特殊的类,必须保证它们在系统中只存在一
个实例,才能确保它们的逻辑正确性、以及良好的效率。
• 公开发表并且无版权要求 • 易于部署和维护 • 对供应商来说,修改移动本地的比特或字节没有很多限制
• Modbus允许多个 (大约240个) 设备连接在同一个网络上进行通信,举个例子,一 个由测量温度和湿度的装置,并且将结果发送给计算机。在数据采集与监视控制系 统(SCADA)中,Modbus通常用来连接监控计算机和远程终端控制系统(RTU)。
相关主题