zoukankan      html  css  js  c++  java
  • 阿里云和中移物联网M5311的MQTT通讯

    我的BILIBILI链接   https://www.bilibili.com/read/cv5476993

    模块简介

    中移物联网M5311就是这个样子的

    特点

    选择模块注意事项:这个模块分两个版本CM和LV

    CM:单频标压--只能用中国移动

    LV:多频低压--三大运营商都能用

    我所用的测试板子是

    淘宝链接:https://item.taobao.com/item.htm?spm=a230r.1.14.29.16202010ygMswi&id=613393784018&ns=1&abbucket=17#detail

    使用MQTT连接阿里云

    • 准备

    首先需要在阿里云开通物联网,新建产品和设备,详见阿里云文档

    连接需要准备一下几个参数

    产品名称(ProductKey):在阿里云控制台的设备管理里面的产品可以看到

    连接地址:${产品ProductKey}. iot-as-mqtt.cn-shanghai.aliyuncs.com

    连接端口号:1883

    ClientID:${clientId}|securemode=3,signmethod=hmacsha1|
    UserName:${YourDeviceName}&${YourPrductKey}
    Password:这个密码需要使用签名工具计算出来,链接:https://help.aliyun.com/document_detail/116333.html?spm=5176.11065259.1996646101.searchclickresult.5ba741a0T1JclE

    • 开始连接

      USB转串口模块连接好M5311和你的电脑,然后打开串口工具

      使用MQTTCFG命令来设置参数

      AT+MQTTCFG="a1EZnSXXXXX.iot-as-mqtt.cn-shanghai.aliyuncs.co
      m",1883,"test001|securemode=3,signmethod=hmacsha1|",60,"NB_192& a1EZnSXXXXX
      ","6BCA70F7E36D7C7068F8D7E6F4B6222A3C3E9198",1

      使用MQTTOPEN命令打开连接

      AT+MQTTOPEN=1,1,0,0,0

      使用MQTTPUB命令发送数据

      AT+MQTTPUB="/sys/ a1EZnSXXXXX/NB_192/thing/event/property/post",1,1,0,0,"{pa
      rams:{CurrentTemperature:51.8,RelativeHumidity:37,LightLuxValue:56}}"

      使用MQTTSUB订阅主题

      AT+MQTTSUB="dev/gsm/u",2

      订阅好了之后服务器发送数据设备就可以接收到命令了

    注意事项

    M5311提供了休眠模式,因为M5311是NB-Iot模块,所以他有DRX、eDRx、PSM三个模式

    DRX虽然叫做“不连续接收”,但是对硬件产品来讲,是“连续接收”随时都可以收到数据。相当于随时在监听,所以功耗最高。(DRX待机功耗1mA左右)

    eDRX就是把网络先开一会、再停一会。 开的时候能收到数据,停的时候收不到数据。停的时间从几十秒到几个小时,可以配置。(eDRX 5分钟间隔的待机功耗在0.2mA左右)

    PSM相当于把eDRX开关网络的频率放的更低,低至几天打开一次网络。同样,打开网络的时候能收到数据,不打开网络的时候收不到数据。(PSM模式下,待机功耗只有微安级别,此时才能做到“一节电池用5年”。)

    所以如果你想实时接收到数据,你必须关闭eDRx、PSM

    AT+SM=UNLOCK_FOREVER

    AT+CPSMS=0

    AT+CEDRXS=0,5

    M5311模块的电流很低,不像M6315需要2A的电流才能成功启动,M5311只需要电脑USB供电就能启动起来

  • 相关阅读:
    jquery操作select(取值,设置选中)
    jQuery懒加载插件 – jquery.lazyload.js简单调用
    js获取URL中的参数
    数据结构之队列C++版
    数据结构之堆栈java版
    数据结构之堆栈C++版
    c++操作符重载
    QT状态机
    c++/c关于函数指针
    学习Qt的一点小感想
  • 原文地址:https://www.cnblogs.com/kawayidamiao/p/13843769.html
Copyright © 2011-2022 走看看