PLC远程用MQTT协议实现二次开发

在这里插入图片描述
MQTT协议是为大量计算能力有限,且工作在低带宽,不靠谱的网络的远程传感器和远程控制设备通讯而设计的一种协议。
MQTT是即时通讯协议,也是成为物联网的重要组成部分,该协议支持所有平台,几乎把所有物联网物品与外部链接起来,被用来当着传感器与制动器的通讯协议。
在这里插入图片描述
在物联网飞速发展的4G时代,这种协议也广泛应用在工业路由器远程控制二次开发应用上,MQTT路由器采用订阅式发布,减少了服务器的负担,大幅提高了数据传输效果。HJ8300MQTT工业级4G路由器是一款带SDK二次开发工业级4G路由器,利用移动网络为终端设备提供无线数据传输功能。 支持SDK二次开发,ROOT权限,集成交叉编译器,集成了GCC、GDB、GLIBC库,支持C/C++,Python,PHP,支持MQTT,SSH、FTP、MySQL。用户可以直接通过SSH在HJ8300里编译自己软件,并且直接运行。MQTT协议在客户端和服务器端之间通讯完成,通讯过程中,MQTT协议中有三种身份:发布者(Publish)、代理服务器(Broker)和订阅者(Subscribe)。
消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。
MQTT传输的消息分为:主题(Topic)和负载(payload)两个部分

  1. Topic: 消息的类型,订阅者订阅(Subscribe)后,就会收到该主题的消息内容(payload)。
    1.MQTT说明
    MQTT最大优点是可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。做为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。
    MQTT协议在PLC远程控制上的二次开发应用 华杰智控
    MQTT协议在客户端和服务器端之间通讯完成,通讯过程中,MQTT协议中有三种身份:发布者(Publish)、代理服务器(Broker)和订阅者(Subscribe)。
    消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。
    MQTT传输的消息分为:主题(Topic)和负载(payload)两个部分
    1.Topic: 消息的类型,订阅者订阅(Subscribe)后,就会收到该主题的消息内容(payload)。
    2.Payload:消息的内容,是指订阅者具体要使用的内容。MQTTdemo的框架示意图(由PIPE线程和MQTT线程组成)
    在这里插入图片描述
    注意:
    1 MQTT订阅的消息处理回调函数解析命令,把命令挂在在PIPE线程的rf_cmmd_list队列,由PIPE线程负责发送
    2 PIPE线程的定时器负责检查超时的数据处理。
    3 PIPE线程接收函数负责处理从RF433M的管道来的数据,同时发送rf_cmmd_list队列的数据到RF433M的管道。

猜你喜欢

转载自blog.csdn.net/weixin_42687537/article/details/88304590