haas506 2.0开发教程-高级组件库-aliyunIoT
最新案例教程点击下方链接跳转,优快云已停止更新
点
击
跳
转
案例说明
案例说明:
案例实现设备与物联网平台的连接(并进行OTA升级)。
阿里云物联网连接方式之一。
注意 :目前仅华东2(上海)地域支持设备进行一型一密免预注册认证。
关于动态注册
-
在物联网平台为产品开启动态注册功能后,直连设备可使用一型一密安全认证方式完成动态注册,通过MQTT通信协议连接物联网平台。设备先基于TLS建立与物联网平台的连接,获取MQTT连接所需的设备密钥,再断开连接,然后重新建立MQTT连接进行通信。
-
动态注册流程,基于MQTT通道的设备动态注册

关于创建产品
- 使用物联网平台接入设备前,您需在物联网平台控制台创建产品和对应设备,获取设备证书(ProductKey、DeviceName和DeviceSecret)。
- 产品相当于一类设备的集合,同一产品下的设备具有相同的功能。您可以根据产品批量管理设备,如定义物模型、自定义Topic等。
- 您的每个实际设备需对应一个物联网平台设备。将物联网平台颁发的设备证书(ProductKey、DeviceName和DeviceSecret)烧录到设备上,用于设备连接物联网平台的身份验证。
阿里云平台连接
1、平台产品创建
第一次使用物联网平台的读者,需要开通实例后使用物联网平台功能。也可以使用免费的公共实例进行开发,在阿里云物联网平台中,左上角选择‘华东2-上海’,点击‘公共实例’,即可开通。
① 登录物联网平台控制台

② 在实例概览页面,找到对应的实例,单击实例进入实例详情页面。
-
注意 在中国地域,目前仅华东2(上海)地域开通了公共实例服务。
-
在左侧导航栏,选择设备管理 > 产品,单击创建产品。

-
输入产品信息

2、添加设备

使用IMEI号添加设备
注意:设备名称需要输入IMEI号,代码需要使用设备名称IMEI进行动态注册

- 点击确定

3、开启动态注册
要连接云平台必须打开动态注册按钮。在这个界面也可以查看需要复制的产品信息。

4、代码复制
- 注意更改productKey和productSecret(176行)
- 2.2版本获取IMEI号接口有更新,需要更改以下内容(Ctrl+F 查找modem)
# 获取设备的IMEI 作为deviceName 进行动态注册
deviceName = modem.info.getDevImei()
...
main.py
# coding=utf-8
from driver import GPIO
import network
import ujson
import utime as time
import modem
from aliyunIoT import Device
import ota
import kv
# ota 消息推送的接受函数
def on_trigger(data):
global info
# 保存服务端推送的ota信息
info['url'] = data['url']
info['length'] = data['length']
info['module_name'] = data['module_name']
info['version'] = data['version']
info['hash'] = data['hash']
info['hash_type'] = data['hash_type']
# 开始ota 包下载
dl_data = {
}
dl_data['url'] = info['url']
dl_data['store_path'] = info['store_path']
ota.download(dl_data)
# ota 升级包下载结果回调函数
def on_download(data):
global info
if data >= 0:
print('Ota download succeed')
# 开始ota包校验
param = {
}
param['length'] = info['length']
param['store_path'] = info['store_path']
param['hash_type'] = info['hash_type']
param['hash'] = info['hash']
ota.verify(param)
# ota 升级包校验结果回调函数
def on_verify(data):
global info
print(data)
if data >= 0 :
print('Ota verify succeed')
print('Start Upgrade')
# 开始ota升级
param = {
}
param['length'] = info['length']
param['store_path'] = info['store_path']
param['install_path'] = info['install_path']
ota.upgrade(param)
# ota 升级包结果回调函数
def on_upgrade(data

本教程详细介绍了如何使用HaaS506开发板连接阿里云物联网平台,实现设备动态注册、OTA升级等功能。首先在物联网平台创建产品和设备,开启动态注册,然后通过IMEI号添加设备。接着,代码中展示了如何使用动态注册获取deviceSecret,以及设备连接物联网平台的步骤。同时,教程还涵盖了设备的OTA升级流程,包括接收、下载、校验和升级固件的回调函数。整个过程涉及网络连接、设备注册、属性上报以及错误处理等关键环节。
最低0.47元/天 解锁文章
1485

被折叠的 条评论
为什么被折叠?



