zoukankan      html  css  js  c++  java
  • 002HC32F460(华大)+Air724UG(4G GPRS)基本控制篇(阿里云物联网平台)在阿里云物联网平台上一型一密动态注册设备(HC32F460+Air724UG)

    <p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/ZLIOTA/Air724UG/aliyun.html" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>

    说明

    如果设备成批量的出售,谁也不想,一个一个的在网页上添加上设备

    然后再一个一个的把设备信息(三元组)烧录到设备!!!!

    这节呢就是不需要再烧录或者配置什么三元组,

    所有的设备都是一个程序.

    设备连接上网络以后自己去注册.

    然后设备的名字我规定的是:

    如果是WiFi设备,就用WiFi的MAC地址作为设备名字

    如果是GPRS设备,就用IMEI作为设备的名字.

    动态注册的方式(咱使用的是,一型一密免预注册)

    先解释几个名词:一机一密 ;一型一密(预注册) ;一型一密(免预注册)

    一机一密:

    就是咱原先测试的在网页上去手动注册设备,然后把ProductKey、DeviceSecret、DeviceName

    给设备,然后设备根据这三个信息组合计算下得到mqtt的连接参数,然后就连接通信了

    https://help.aliyun.com/document_detail/74005.html?spm=a2c4g.11186623.6.585.3bb41114l1EN77

    一型一密(预注册):

    需要咱先在网页上注册上设备,然后把ProductKey、ProductSecret、DeviceName

    给设备,然后设备通过https或者mqtt获取DeviceSecret

    然后设备根据ProductKey、DeviceSecret、DeviceName这三个信息组合计算下得到mqtt的连接参数,然后就连接通信了

    https://help.aliyun.com/document_detail/132111.html?spm=a2c4g.11186623.2.18.59863f82PBOpQr#task-1545804

    一型一密(免预注册): 免预注册就是不用在云端自己注册设备,设备连接上网络以后设备自己去注册.

    这样子的话,每个设备烧录同样的程序就可以,不用再配置什么三元组了!

    不过每个设备程序里面的需要写上产品的ProductKey 和 ProductSecret  的值,这两个值是固定的.

    主要是区分开你注册的时候注册到哪个产品下.

    然后设备通过https或者mqtt接口注册设备,

    注册的时候服务器会返回ClientID和DeviceToken 等参数

    最后按照平台规定的组合MQTT参数

    MQTT连接的方式注册设备:

    https://help.aliyun.com/document_detail/132111.html?spm=a2c4g.11186623.2.18.59863f82PBOpQr#task-1545804

    拼接注册返回的参数连接MQTT:

    https://help.aliyun.com/document_detail/73742.html?spm=a2c4g.11186623.2.16.1c99426ff6ECtQ#concept-mhv-ghm-b2b

    测试本节一型一密(免预注册)程序

    1.打开本节的单片机程序

    2.登录自己的云平台打开动态注册

    注:选择哪个产品,设备就会注册到哪个产品下

    打开动态注册

    3,查看并替换自己产品的ProductSecret; ProductKey;

     

    4,查看并替换自己instanceId

    提示:在2021年7月30日之前购买的实例是没有 instanceId 的, 单片机程序里面可保持空

     

    提示:有 instanceId 的, 填写上实例的 instanceId

    5.编译下载后测试(可以观察日志口)

    6.在物联网平台上刷新一下设备列表,会看到注册了一个新设备

     

    单片机程序说明

    1. 先浏览下阿里云文档

    https://help.aliyun.com/document_detail/132111.html?spm=a2c4g.11186623.2.18.59863f82PBOpQr#task-1545804

    2.连接阿里云的TCP服务器(MQTT服务器),发送MQTT连接协议(实际是注册设备协议)

    根据阿里云的文档,组合发送注册设备信息, DeviceName 是获取的模块的IMEI

    解析处理数据,并把数据存储到flash

    3.设备重新连接TCP服务器

    4.发送MQTT连接协议

     

    5.解析服务器返回的数据,如果是连接成功数据, 便会调用连接成功函数

    6.连接MQTT成功以后,发送给服务器的数据都是靠这个函数轮训缓存来发送

    咱还没有订阅和发布消息,这个里面只是在处理心跳包

    7.连接MQTT成功以后,从服务器接收的数据都要丢给 mqtt_read_function函数处理

    这个函数会根据数据类型分发给各个回调函数

    结语

    有了动态注册以后,咱的设备就可以烧录一个程序

    然后只要设备可以连接网络,那么注册的事情就交给设备去做了.

    设备的名字一般使用模组的IMEI

  • 相关阅读:
    wp7订餐客户端源码
    AOP技术术语
    urlpattern详解
    .net 访问IBM DB2 数据库
    入驻博客园
    hadoop视频
    阿里OneData构建数据指标体系
    大数据领域全景解析
    PyTorch中梯度为什么默认自动累加,在反向传播前要手动将梯度清零?
    Pytorch:Dataloader和Dataset以及搭建数据部分的步骤
  • 原文地址:https://www.cnblogs.com/yangfengwu/p/15710422.html
Copyright © 2011-2022 走看看