基于MQTT协议的WZ指令开发V3.0版本支持onenet


title: 基于MQTT协议的WZ指令开发V3.0版本支持onenet
tags: WZ指令
date: 2019-02-18 10:53:00




视频讲解:(V3.0版本)—https://www.bilibili.com/video/av44025282/


src="//player.bilibili.com/player.html?aid=44025282&cid=77111540&page=1" scrolling="no" border="0" allowfullscreen="true">

视频讲解:(V2.0版本) —https://www.bilibili.com/video/av43813291/


src="//player.bilibili.com/player.html?aid=43813291&cid=76757310&page=1" scrolling="no" border="0" allowfullscreen="true">

**

用法:单片机主循环里无脑循环发一条串口指令即可,什么都不需要配置!只有一条串口AT指令!

**


昨天晚上我又更新了WZ指令至V3.0,以至于其可以兼容onenet服务器,而不需要添加其他的指令依旧是发送一条串口json字符串即可:

【V3.0】

{"wz":"wenzheng.club","id":"517254399","port":"6002","server":"mqtt.heclouds.com","user":"212737","password":"eL2ObaFLA1UvjAfxjCBcUYKjxtY=","topic&msg":"{\"wendu\":\"14\",\"shidu\":\"66\"}"}

【V2.0】

{"wz":"wenzheng.club","server":"60.205.203.64","user":"admin1","password":"public","topic":"20190213134505","message":"test2019"}

之前2.0 版本已经讲解过如何使用此指令:
就是通过单片机串口进行发送即可,注意双引号的转义与末尾的换行符:
STM32串口发送举例:

printf("{\"wz\":\"wenzheng.club\",\"server\":\"60.205.203.64\",\"user\":\"root\",\"password\":\"citc2018\",\"topic\":\"ZX10403001010000\",\"message\":\"T:226;H:232;\"}");

指令说明:


根据onenet官方MQTT资料可知


则WZ指令的json说明,就一目了然了:(键值对无顺序要求)


是否必要说明
wzwenzheng.club此字段为WZ指令的鉴权码,必须传入,否则无法使用
servermqtt.heclouds.com此字段为mqtt服务器的域名
id517254399此字段onenet必要设备ID,自建服务器可选(不选择默认上传esp地址码)
port6002此字段onenet必要服务器端口,其他服务器默认1883端口
user212737此字段为用户名,onenet为产品ID,其他服务器用户可自定义
passwordeL2ObaFLA1UvjAfxjCBcUYKjxtY=此字段为密码,onenet为apikey,其他服务器用户可以自定义
topicZX10403001010000若非onenet服务器,则此字段必要!为要发布的主题。
messagetest2019若非onenet服务器,则此字段必要!为要发布的对应主题的消息
topic&msg{“wendu”:“14”,“shidu”:“66”}"}若为onenet服务器此字段必要!注:此字段为json里面套了一个json,所以“”wendu”与“shidu”就是在onenet上面设置的数据点,单片机在后面添加数值即可!

更新日志:
2019年2月18日午夜更新V3.0版本
支持onenet平台
2019年2月13日晚上制作V2.0版本
添加mqtt_user验证
添加mqtt_passward验证
2019年2月13日上午制作V1.0版本
实现基本通讯
2019年初有初步想法


配网问题:为了更好地用户体验,不需要单片机进行AT指令配网,只需要在刷好固件以后,通过微信,或者安卓APP进行配置即可,一次配置,永久掉电存储,而且上电自动联网!等待单片机发送串口指令。如果到了新的wifi环境,10秒内连接网络失败,自动进入智能配网模式。


OK!总的来说,V3.0是兼容V2.0的协议的,只是多加了几个字段用于onenet服务器!
同时,针对onenet服务器作了topic和message的整合,这样可以一次传多个数据点。
缺点:采用了json包json的方式,这里用户体验或者数据封包可能不是太好,后续我会优化,或者写一个适用于单片机的函数。


有意见和建议欢迎留言QQ群:476840321,下一版本计划更新百度云平台,一行代码发送数据。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值