为什么要使用MQTT上传数据图片呢?
MQTT(消息队列遥测传输)是ISO 标准(ISO/IEC PRF 20922)下基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,它工作在 TCP/IP协议族上,是为硬件性能低下的远程设备以及网络状况糟糕的情况下而设计的发布/订阅型消息协议,为此,它需要一个消息中间件 。MQTT网关就应运而生。
但是,对于一个4G摄像头来说,使用这种MQTT协议来上传,还是需要4G模块的支持才可以。合方圆的4G低功耗摄像头模组,采用4G低功耗模块G8100作为主控,通过一个USB接口,接一个sony镜头板,通过MQTT,HTTP,TCP/IP ,国网电力平台I1,B1等接口,上传图片,数据到指定的服务器云平台,这种需要4G模块具备能支持多种协议能力。
本文将介绍G8100 MQTT指令,由于MQTT是建立在TCP链接的基础上实现的应用协议,因此,
G8100使用MQTT应用时,需要首先配置TCP链接的服务器地址等信息,在收发数据时仍然使用
TCPIP部分的指令,一些典型的应用场景例如:
1) 通过CIPMUX配置使用单链接还是多链接,在单链接模式,仅仅可以建立一个客户端链接;
在多链接模式下,用户可以建立最多10个MQTT客户端链接。
2) 通过CIPSEND可以向已经配置了发布主题(TOPIC)的节点发送数据,如果在一个MQTT链接
上配置了多个消息发布主题,则会同时向多个主题发送同一数据;
3) 接收消息时,也是通过模块提示“+IPD”获得数据到达指示,但如果订阅了多个主题,无
法提示由哪个订阅主题获得数据;
使用MQTT指令可以配置MQTT链接需要的大部分参数,比如:登录认证信息、QOS、消息订阅、
消息发布等,G8100的MQTT应用特点:
1) 可支持多个MQTT链接,因此大部分的MQTT指令都带有链接ID;
2) MQTT的心跳包间隔和TCP配置的心跳间隔都是用CIPCFG指令配置;
3) 每个MQTT链接可以支持配置多路消息订阅和消息发布;
4)MQTT可以支持数据透传模式
合方圆摄像头模组如下图,支持MQTT协议上传图片数据到监控系统
这款摄像头有点高级,这款是一个4G模块控制3个镜头的摄像头,电力国网称的三目输电线路摄像头,简单一点的,可以一个4G主控板,搭配一个镜头板就可以实现MQTT的上传了,具体更多的开发流程,AT指令配置,欢迎评论区留言