# 基于 Bearpi-Micro 鸿蒙3.0开发板开发的OpenHarmony智慧中控面板的使用说明 ## 1 开发环境搭建 【从0开始搭建开发环境】参考:[官方开发环境搭建教程](https://gitee.com/bearpi/bearpi-hm_micro_small/blob/master/applications/BearPi/BearPi-HM_Micro/docs/device-dev/开发环境搭建.md) 【快速搭建开发环境】参考:[快速上手教程](https://gitee.com/bearpi/bearpi-hm_micro_small/blob/master/applications/BearPi/BearPi-HM_Micro/docs/device-dev/BearPi-HM_Micro十分钟上手.md) 【注意】:快速上手教程第六步出拉取代码时需要修改代码仓库地址 ![image-20220314113346980](images/image-20220314113346980.png) 4. 在MobaXterm中输入以下命令获取源码: ``` git clone https://gitee.com/ohpostman/bearpi-hm_micro_small ``` 其他同请参考官方文档。 ## 2 开发板设置 【注意】:使用demo时必须修改网络信息配置文件后才能继续进行: 打开开发板源码目录: ![image-20220314120253791](images/image-20220314120253791.png) ![image-20220314120323734](images/image-20220314120323734.png) 修改自己的网络热点信息后编译烧录镜像文件重启 开发板上电后等待网络驱动加载完毕,即出现以下界面: ![image-20220314115320661](images/image-20220314115320661.png) 此时,输入命令: ``` ./bin/wpa_supplicant -i wlan0 -c /etc/wpa_supplicant.conf ``` 【注意,上述命令必须处于根目录,若开发板为刚安装好Hap应用,请切换到根目录】使用下列命令即可 ``` cd / ``` ![image-20220314115816371](images/image-20220314115816371.png) 等待Wifi连接完成。 【注意】开发板设置界面WIFI连接暂时存在BUG,请勿使用,必须使用命令行进行连接 连接完成后命令界面如下: ![image-20220314115956130](images/image-20220314115956130.png) 此时可以输入下列命令检测网络是否通畅 ``` ping www.baidu.com ``` ![image-20220314120056230](images/image-20220314120056230.png) ## 3 智慧面板应用程序源码下载及安装 【注意:Demo程序使用笔者预先在华为云创建的设备,如不能使用需按步骤 5 教程自己创建】 在Windows主机上拉取智慧面板demo应用程序源码 ``` git clone https://gitee.com/ohpostman/smart-pannel ``` 代码拉取完毕后,使用`DevEco Studio 3.0.0` 打开工程 ![image-20220314114215523](images/image-20220314114215523.png) 拉取完毕后编译工程: 点击`Build->Build Hap(s)->Build Hap(s)` ![image-20220314114332827](images/image-20220314114332827.png) 编译后的安装包所在目录为: ![image-20220314114537169](images/image-20220314114537169.png) 文件名:entry-debug-lite-unsigned.hap 将该文件安装到开发板:安装请参考[applications/BearPi/BearPi-HM_Micro/docs/device-dev/如何在开发板上安装HAP应用.md · 小熊派开源社区/BearPi-HM_Micro_small - Gitee.com](https://gitee.com/bearpi/bearpi-hm_micro_small/blob/master/applications/BearPi/BearPi-HM_Micro/docs/device-dev/如何在开发板上安装HAP应用.md) 安装完成后:![image-20220314114830856](images/image-20220314114830856.png) ## 4 demo应用测试 打开命令行终端,输入下列命令初始化驱动: ``` ./bin/smartcnt ``` 出现下列信息即说明驱动加载完成并已经连接上云服务器: ![image-20220314121508170](images/image-20220314121508170.png) 此时查看云设备: ![image-20220314121629713](images/image-20220314121629713.png) 此时,你需要一块小熊派Nano开发板作为子节点,详情看代码仓: [BearPi-HM_Nano: 小熊派BearPi-HM Nano开发板基于HarmonyOS的源码 (gitee.com)](https://gitee.com/bearpi/bearpi-hm_nano) [applications/BearPi/BearPi-HM_Nano/sample/README.md · 小熊派开源社区/BearPi-HM_Nano - Gitee.com](https://gitee.com/bearpi/bearpi-hm_nano/blob/master/applications/BearPi/BearPi-HM_Nano/sample/README.md) 参考例程: [applications/BearPi/BearPi-HM_Nano/sample/D9_iot_cloud_oc_light/README.md · 小熊派开源社区/BearPi-HM_Nano - Gitee.com](https://gitee.com/bearpi/bearpi-hm_nano/blob/master/applications/BearPi/BearPi-HM_Nano/sample/D9_iot_cloud_oc_light/README.md) 打开例程后,修改接入地址: ![image-20220314122118623](images/image-20220314122118623.png) 主要修改:网络热点信息 ![image-20220314122219839](images/image-20220314122219839.png) 笔者的demo设备信息: ``` #define CONFIG_APP_DEVICEID "61ed6998de9933029be43a78_bearpinano" //替换为注册设备后生成的deviceid #define CONFIG_APP_DEVICEPWD "eff7148f5597501527986078e6901a6e" //替换为注册设备后生成的密钥 ``` 【注意:Demo程序使用笔者预先在华为云创建的设备,如不能使用需按步骤 5 教程自己创建】 下载烧录后nano板出现以下调试信息,说明连接成功: ![image-20220314122703302](images/image-20220314122703302.png) 此时,打开中控板上的scp应用程序。【左右滑动切换】 ![image-20220314122926504](images/image-20220314122926504.png) ![image-20220314122936702](images/image-20220314122936702.png) 点击打开测试灯按钮。 ![image-20220314123120751](images/image-20220314123120751.png) 可以看见中控命令行终端出现类似信息,并且可以观察到Nano节点的LED处于打开状态。 ![image-20220314123250053](images/image-20220314123250053.png) 点击关闭测试灯按钮。可以看见灯光熄灭。 ![image-20220314123325444](images/image-20220314123325444.png) 自此,整个demo使用实例演示完毕。下面我们进入自己添加设备的阶段。 ## 5 添加自己的设备 ### 5.1 修改自己的云信息 打开华为云IOT平台,[设备接入-控制台 (huaweicloud.com)](https://console.huaweicloud.com/iotdm/?agencyId=712504c635db4342a8ecfa2c0c8e569c®ion=cn-north-4&locale=zh-cn#/dm-portal/home),登录后进入 ![image-20220314123659770](images/image-20220314123659770.png) 找到如下信息: ![image-20220314123759607](images/image-20220314123759607.png) 接着打开命令终端: ![image-20220314124041818](images/image-20220314124041818.png) 找到对应的IP地址,备用 接着进入产品界面 ![image-20220314124215983](images/image-20220314124215983.png) 点击创建产品,输入相关信息后点击确定 ![image-20220314124332209](images/image-20220314124332209.png) 接着注册设备 ![image-20220314124509773](images/image-20220314124509773.png) ![image-20220314124553759](images/image-20220314124553759.png) 填入信息,点击注册即可 接着点击产品,注册服务 ![image-20220314124820404](images/image-20220314124820404.png) 填入相关信息即可 下面是demo相关信息,按需添加即可 ![image-20220314124904637](images/image-20220314124904637.png) ![image-20220314124951150](images/image-20220314124951150.png) ![image-20220314125207205](images/image-20220314125207205.png) 下面点击规则 ![image-20220314125624491](images/image-20220314125624491.png) ![image-20220314125635270](images/image-20220314125635270.png) 同理,添加其他内容即可。 ### 5.2 将自己的云信息添加到系统 【注意】该处设计有待优化,后续优化后会更新文档 打开中控代码,修改下列信息 ![image-20220314125918188](images/image-20220314125918188.png) 注意:连接参数请参考[Huaweicloud IoTDA Mqtt ClientId Generator (myhuaweicloud.com)](https://iot-tool.obs-website.cn-north-4.myhuaweicloud.com/)进行生成 修改完成,编译烧录即可完成中控端的配置 接着修改应用端配置信息: 打开应用端源代码: 【注意】UI界面请按自己的喜好进行设计 找到如下文件 ![image-20220314130345414](images/image-20220314130345414.png) 将红框内数据按照云服务的定义进行配置,接着添加事件,以,打开测试灯为例,添加open函数,按下列进行修改 ![image-20220314130529553](images/image-20220314130529553.png) 将led属性设置为1,云端匹配完成后会下发指令到led节点进行控制。 ![image-20220314130654873](images/image-20220314130654873.png) 同理,可以安装上述步骤添加属于自己的控制信息。 ## 6 总结 本项目将一直处于开发当中,待后续购买拓展板进行案例补充,欢迎持续关注。