文章目录提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
- 前言
- 一、MQTT
- 二、使用步骤
- 1.rabbitmq支持 MQTT 协议
- 2.RMS监听消息和发送消息
- 3.Web监听消息和发送消息
- 4.RMS和WEB客户端启动后
- 总结
前言
EAP是MES与设备的桥梁,EAP通过SECS国际标准协议与机台进行数据传输。我们公司RMS也是通过SECS国际标准协议与机台进行数据传输,只是多了本该在MES上的业务逻辑,放到了RMS上,架构上没这么使用EAP这样分工明确,RMS把业务逻辑拿掉改造下也能成为EAP,我就简单试试
提示:以下是本篇文章正文内容,下面案例可供参考
一、MQTT1、使用消息队列
MES和其他系统通过消息队列来发送信息给RMS,RMS收到消息在通过SECSGEM 与半导体设备通讯
优点:
1、对系统进行解耦,提高响应速度,系统功能向内聚合,对外开放;
2、对系统异步功能进行剥离,减少功能耦合,提供开发效率;
有优点也有缺点,具体可网上查,这就不系讲
MQTT协议是一种消息列队传输协议,采用订阅、发布机制,订阅者只接收自己已经订阅的数据,非订阅数据则不接收,既保证了必要的数据的交换,又避免了无效数据造成的储存与处理。因此在工业物联网中得到广泛的应用.
我使用的是rabbitmq,因为rabbitmq 支持 MQTT 协议,还有MQTT 协议还支持用于Web消息推送,实现起来也比较简单,既支持WEB,有支持客户端,还是通用的协议,任何系统都能使用此协议与RMS通讯
代码如下(示例):
第一种 rabbitmq_mqtt 提供与后端服务交互使用,对应端口1883。 rabbitmq-plugins enable rabbitmq_mqtt 第二种 rabbitmq_web_mqtt 提供与前端交互使用,对应端口15675。 rabbitmq-plugins enable rabbitmq_web_mqtt2.RMS监听消息和发送消息
在RMS加入代码如下(示例):
RMS监听到其他系统发过来消息,在通过SECSGEM 与半导体设备通讯,机器返回结果后再通过MQTT将结果发给其他系统
代码如下(示例):
4.RMS和WEB客户端启动后
测试WEB端
测试RMS端
rabbitmq 在队列会产生mqtt-开头的队列,当你关闭客户端,这队列也随之消失。
总结
记录点点滴滴



