4 Star 18 Fork 5

小熊派开源社区 / BearPi-IoT_Std_LiteOS

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
readme.md 9.83 KB
一键复制 编辑 原始数据 按行查看 历史

基于WiFi LwM2M协议的智慧烟感案例

1. 基于WiFi LwM2M协议的智慧烟感案例概述

本文档将介绍如何使用BearPi-IoT_Std的完成基于WiFi LwM2M协议的智慧烟感实验。

2. 实验准备

  • 开发板:小熊派开发板(WIFI8266通信扩展板、E53_SF1案例扩展板等)
  • IoT平台:华为云账号(需完成实名认证)

3. 硬件连接

连接好E53_SF1案例扩展板和WIFI8266通信扩展板,将串口选择开关拨到MCU模式,并用USB线将开发板与电脑连接,如下图所示。

4. 创建产品

某一类具有相同能力或特征的设备的集合称为一款产品。除了设备实体,产品还包含 该类设备在物联网能力建设中产生的产品信息、产品模型(Profile)、插件、测试报告 等资源。

  • 使用华为云账号,登录设备接入,选择页面左侧的产品,单击右上角下拉框,选择新建产品所属的资源空间。

  • 单击右上角的“创建产品”,创建一个基于LwM2M/CoAP协议的产品,填写参数后,单击“立即创建”,在跳出页面中点击“查看详情”。

5. Profile定义

  • 在“模型定义”页面下,单击“自定义模型”,配置产品的服务。

5.1 新增服务名称Smoke

  • 填写Smoke服务相关信息后,单击“确认”。

  • 在“Smoke”的列表下点击“添加属性”填写“Smoke_Value”相关信息,单击“确认”。

  • 在“Smoke”的列表下点击“添加命令”填写Smoke_Control_Beep相关信息

  • 在“新增命令”里点击“新增输入参数”填写相关信息,再单击“确定”。

  • 在“新增命令”里点击“新增响应参数”填写相关信息,再单击“确认”,最后在“新增命令”里点“确认”。

6. 编解码插件开发

6.1 新增消息Smoke。

  • 在产品详情插件开发页面,选择“图形化开发”,单击“图形化开发”。

  • 在“在线开发插件”区域,单击“新增消息”。

  • 新增消息:

    消息名:Smoke

    消息类型:数据上报

    添加响应字段:否

  • 在“新增消息”界面,单击“添加字段”,在“添加字段”界面,勾选“标记为地址域”,默认值填0x8,然后单击“确认”,添加地址域字段messageId。

  • 在“新增消息”界面,单击“添加字段”,填写Smoke_Value相关信息,然后单击“确认”。

  • 在“新增消息”界面,单击“确认”,完成消息Smoke的配置。

6.2 新增消息Smoke_Control_Beep。

  • 新增消息:

    消息名:Smoke_Control_Beep

    消息类型:命令下发

    添加响应字段:是

  • 在“新增消息”界面,单击“添加字段”, 在“添加字段”界面,勾选“标记为地址域”,默认值填0x9,然后单击“确认”,添加地址域字段messageId。

  • 在“新增消息”界面,单击“添加字段”,在“添加字段”界面,勾选“标记为 响应标识字段”,然后单击“确认”,添加响应标识字段 mid。

  • 在“新增消息”界面,单击“添加字段”,填写Beep相关信息,然后单击“完成”。

  • 在“新增消息”界面,单击“添加响应字段”, 在“添加字段”界面,勾选“标记为地址域”,默认值填0xa,然后单击“确认”,添加地址域字段 messageId。

  • 在“添加字段”界面,勾选“标记为响应标识字段”,然后单击“确认”,添加响应标识字段 mid。

  • 在“添加字段”界面,勾选“标记为命令执行状态字段”,然后单击“确认”,添加命令执行状态字段 errcode。

  • 在“新增消息”界面,单击“添加响应字段”,填写Beep_State相关信息,单击“确认”。

  • 在“新增消息”界面,单击“确认”,完成消息 Smoke_Control_Beep 的配置。

6.2 字段映射

  • 拖动右侧“产品模型”区域的属性字段、命令字段和响应字段,与数据上报消息、命令下发消息和命令响应消息的相应字段建立映射关系。

  • 单击“保存”,并在插件保存成功后单击“部署”,将编解码插件部署到物联网平台

7. 设备开发

7.1 程序编译

  1. 进入编译目录
cd targets/STM32L431_BearPi
  1. 拷贝工程配置
cp Demos/oc_wifi_lwm2m_smoke/defaults.sdkconfig .config
  1. 生成config.h

    start genconfig.exe
  2. 修改iot_config.h

    • 将iot_config.h中的CONFIG_ESP8266_SSID、CONFIG_ESP8266_PWD修改为所要连接的wifi热点的账号密码;

    • 将CONFIG_APP_ENDPOIINT_ID改为不与别人冲突的字符串,作为“设备标识码”,用于平台注册设备。

  3. 编译工程

    make clean
    make -j8

7.2 烧录程序

  1. 在编译目录下输入

    make download

8. 业务调试

  1. 注册设备

    • 点击华为云IoT平台页面左侧的“设备”→“所有设备”,点击右上角“注册设备”。
    • 选择所属资源空间及产品,设备标识码填写iot_config.h中CONFIG_APP_ENDPOIINT_ID设置的信息,点击“确定”
  2. 示例代码编译烧录代码后,按下开发板的RESET按键,可通过串口助手查看日志,平台上的设备显示为在线状态,设备无法上线问题排查

  3. 点击设备右侧的“查看”,进入设备详情页面,可看到上报的数据。

  4. 在华为云平台设备详情页,单击“命令”,选择异步命令下发,选中创建的命令属性,单击“确定”,即可发送下发命令控制设备。

C
1
https://gitee.com/bearpi/bearpi-iot_std_liteos.git
git@gitee.com:bearpi/bearpi-iot_std_liteos.git
bearpi
bearpi-iot_std_liteos
BearPi-IoT_Std_LiteOS
master

搜索帮助