论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
容器及微服务
›
容器及微服务
›
动手实践开发一个智慧路灯控制器
动手实践开发一个智慧路灯控制器
风雨同行
金牌会员
|
2023-4-4 14:10:03
|
显示全部楼层
|
阅读模式
楼主
主题
511
|
帖子
511
|
积分
1533
本文分享自华为云社区《
智慧路灯实验手册(MQTT+Wi-Fi)-完善版
》,作者:华为云社区精选。
版本说明
本示例代码工程基于IoT LINK 2.1.0版本构建。
简介
智慧路灯是城市智能化道路上重要一环,智慧路灯的实施具有节约公共照明能耗、较少因照明引起的交通事故等多种社会意义。路灯也是大家在日常生活中可以强烈感知到的公共设施,更易理解其智能化的场景。
本实验基于NB-IoT和WIFI实现智慧路灯案例,实现实时数据的采集,实现命令下发的响应,实现端云互通。
E53_SC1扩展板采用了E53标准接口,包含了一个路灯灯珠,一个BH1750光照强度传感器,其中路灯灯珠使用普通GPIO控制,BH1750使用IIC接口通信。
开发前准备
环境准备
• 已注册华为云官方帐号。未注册可点击
注册页面
完成注册。
• 已完成实名制认证。未完成可在华为云上点击
实名认证
完成认证,否则无法使用设备接入功能。
• 已开通设备接入服务。未开通则访问
设备接入服务
,点击“免费试用”后开通该服务。
• 已下载IDE:
Huawei LiteOS Studio
1.45+(含扩展插件)
• 已下载
编译烧录工具包
:包含arm-none-eabi、build、openocd-0.10.0。
• 已下载ST-Link驱动包:
ST-Link.zip
硬件准备
• 开发板:小熊派开发板(含WIFI通信扩展板、E53_SC1案例扩展板)
环境配置
1. 硬件连接
连接好E53_SC1案例扩展板和Wi-Fi通信扩展板。将串口选择开关拨到AT-MCU模式,并用USB线将开发板与电脑连接,如图所示。
2. IDE安装配置
1) 下载并解压
HUAWEI-LiteOS-Studio.zip
。
2) 双击运行HUAWEI-LiteOS-Studio-Setup-x64-1.45.9.exe,根据提示步骤完成默认安装。
3) 启动运行HUAWEI-LiteOS-Studio,在IDE活动栏中,打开扩展视图,点击更多操作...,在弹出的菜单中选择从VSIX安装,然后指定中文语言包MS-CEINTL.vscode-language-pack-zh-hans-1.45.1.vsix文件路径,即可完成安装。
4) 根据提示重启IDE,即可切换为中文界面。
3. 编译烧录工具配置
下载并解压
Tools.zip
,将解压后的arm-none-eabi、build、openocd-0.10.0全部拷贝到C:\Users\xxx\.huawei-liteos-studio\tools目录下。
注:xxx为本地PC用户名,请根据实际路径进行配置。
4. 驱动安装
下载并解压
ST-Link.zip
,根据操作系统类型,双击配套的执行文件进行安装。
开始使用
1. 创建产品
对于设备上报至物联网平台的数据,云端物联网平台要能够解析设备上报的数据。故需要在设备接入服务侧完成产品模型定义,编解码插件开发部署等。
产品模型是用来描述设备能力的文件,通过JSON的格式定义了设备的基本属性、上报数据和下发命令的消息格式。定义产品模型,即在物联网平台构建一款设备的抽象模型,使平台理解该款设备支持的属性信息。
步骤1 进入设备接入服务控制台,选择左侧导航栏“产品”进入页面。
步骤2 单击右上角的“创建产品”,按照页面提示填写信息。
• 所属资源空间:选择默认资源空间
• 产品名称:自定义,如MQTT_streetlight
• 协议类型:MQTT
• 数据格式:JSON
• 设备类型选择:自定义类型
• 设备类型:自定义,如MQTT_ streetlight
步骤3 单击“确定”,创建产品成功。
步骤4 单击“查看详情”,进入产品详情页面。在“模型定义”页签下,单击“上传模型文件”。
步骤5 添加产品模型文件“
Smart_Light_profile.zip
”,并单击“确定”完成上传。
模型文件下载链接:
Smart_Light_profile.zip
查看服务列表,属性和命令信息如下:
2. 注册设备
步骤1 进入设备接入服务控制台,选择左侧导航栏“设备”进入设备列表页面。
步骤2 单击右上角的“注册设备”,按照页面提示填写相关参数。
• 所属资源空间:选择上一步创建产品时选择的资源空间
• 所示产品:选择刚创建的产品,如MQTT_streetlight
• 设备标识码:自定义,如streetlight012345
• 设备名称:自定义,如streetlight_01
• 设备认证类型:选择“密钥”
• 密钥/确认密钥:自定义,如12345678
步骤3 单击“确定”,添加设备成功,请保存好设备ID和密钥,用于设备接入平台认证。
3. 导入代码工程
步骤1 获取
项目工程代码包
并解压(注:路径不要包含中文、空格)。
获取项目工程:
MQTT_StreetLight_Demo.rar
步骤2 启动HUAWEI LiteOS Studio工具,单击“Open Project”,打开项目工程。
项目工程预览如下:
4. 配置项目工程
步骤3 单击
打开工程配置,目标板选择STM32L431RC,并“确认”。
步骤4 填写编译器配置选项后,单击“确认”。
• 编译器类型:arm-none-eabi
• 编译器目录:请根据实际路径配置,例如 c:\Users\xxx\.huawei-liteos-studio\tools\arm-none-eabi\bin
• Make构建器:请根据实际路径配置,例如c:\Users\xxx\.huawei-liteos-studio\tools\build\bin\make.exe
• Make脚本:请根据打开的项目工程进行配置,例如targets\STM32L431_BearPi\GCC\Makefile
步骤5 填写烧录器配置选项后,单击“确认”。
• 烧录方式:选择OpenOCD
• 端口:选择USB
• 烧录器配置:请根据实际路径配置,例如.\tools\openocd-0.10.0\bin-x64
• Interface文件:默认值
• Target文件:默认值
• 烧录文件:无需配置,待项目工程编译成功后会自动填充,例如.\targets\STM32L431_BearPi\GCC\build\Huawei_LiteOS.bin
5. 修改配置参数
步骤1 在代码中修改设备信息。
1) 打开文件:*\targets\STM32L431_BearPi\iot_config.h
2) 修改CN_EP_DEVICEID为在物联网平台注册设备时生成的设备ID,修改CN_EP_PASSWD为在物联网平台注册设备时填写的密钥。
3) 修改完成,请按Ctrl+S保存修改。
步骤2 配置WIFI用户名和密码。
此处只能使用用户名密码加密方式认证的WIFI,不能使用其他加密方式的WIFI。(可以使用手机开启WIFI热点,数据量不大不会占用太多个人流量)
开发板Wifi模块仅支持2.4GHz频段的热点,暂不支持5GHz频段。
1) 打开文件:*\targets\STM32L431_BearPi\.config
2) 修改CONFIG_ESP8266_SSID为热点设备名称,修改WIFI_ESP8266_PWD为热点密码。
3) 修改完成,请按Ctrl+S保存修改。
4) 打开文件:*\targets\STM32L431_BearPi\iot_config.h
5) 修改CONFIG_ESP8266_SSID为热点设备名称,修改WIFI_ESP8266_PWD为热点密码。
6) 修改完成,请按Ctrl+S保存修改。
6. 编译烧录
步骤1 单击
进行编译,单击
进行烧录。
如果修改了.config文件和iot_config.h文件,请单击
全量重新编译,否则修改点可能不会生效。
步骤 2 单击
打开串口终端,选择端口,设置波特率115200,开启串口,可以在接收区查看到打印的日志信息。
步骤3 在LCD屏上,可以看到实时数据显示。
7. 调试运行
步骤1 在物联网平台中,可以看到设备实时上报属性数据。
步骤2 在物联网平台中下发控制命令(开启路灯),查看命令下发结果及开发板的响应。
注:当前MQTT设备仅支持同步命令下发,NB设备仅支持异步命令下发。
示例代码
案例程序文件:
"targets\STM32L431_BearPi\Demos\oc_streetlight_template\oc_streetlight_template.c"
参考
详细了解IoT设备接入服务,请参考
IoTD
A
帮助文档
。
修订记录
点击关注,第一时间了解华为云新鲜技术~
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
风雨同行
金牌会员
这个人很懒什么都没写!
楼主热帖
深入Python网络编程:从基础到实践 ...
HTML+CSS+JS——动漫风二次元论坛(2页) ...
我的第二次博客作业
【numpy基础】--广播计算
互联网技术大佬独立博客推荐 ...
【Spring基础补充】 注解补充(二) ...
转载自ChatGPT:Python关键字 asynico ...
在IDEA上跑struts1框架
没用好mybatisplus的Wrapper,我真难为 ...
多道技术与进程理论
标签云
挺好的
服务器
浏览过的版块
云原生
快速回复
返回顶部
返回列表