1概述
智能窗簾設(shè)備不僅接收數(shù)字管家應(yīng)用下發(fā)的指令來(lái)控制窗簾開啟的時(shí)間,而且還可以加入到數(shù)字管家的日程管理中。通過(guò)日程可以設(shè)定窗簾開關(guān)的時(shí)間段,使其在特定的時(shí)間段內(nèi),窗簾自動(dòng)打開或者關(guān)閉;通過(guò)日程管家還可以實(shí)現(xiàn)窗簾和其他的智能設(shè)備聯(lián)動(dòng)。
1.交互流程
如上圖所示,智能窗簾整體方案原理圖可以大致分成:智能窗簾設(shè)備、數(shù)字管家應(yīng)用、云平臺(tái)三部分。智能窗簾通過(guò)MQTT協(xié)議連接華為IoT物聯(lián)網(wǎng)平臺(tái),從而實(shí)現(xiàn)命令的接收和屬性上報(bào)。關(guān)于智能設(shè)備接入華為云IoT平臺(tái)的具體細(xì)節(jié)可以參考 連接IOT云平臺(tái)指南;智能設(shè)備同數(shù)字管家應(yīng)用之間的設(shè)備模型定義可以參考窗簾設(shè)備profile定義
2.實(shí)物簡(jiǎn)介
我們使用小熊派bearpi_hm_nano開發(fā)底板+ E53_IA1拓展板來(lái)模擬智能窗簾設(shè)備。
通過(guò)PWM接口控制拓展板上的電機(jī)來(lái)模擬窗簾開關(guān)工作狀態(tài);
reset按鍵控制設(shè)備重啟;reset按鍵組合控制按鍵可以清除已保存的配網(wǎng)信息,具體操作:先按下控制按鍵F2,然后按下reset按鍵;
通過(guò)NFC模塊實(shí)現(xiàn)設(shè)備碰一碰快速配網(wǎng);
3.實(shí)物操作體驗(yàn)
2快速上手
1. 硬件開發(fā)環(huán)境準(zhǔn)備
BearPi-HM Nano套件一套預(yù)裝HarmonyOS手機(jī)一臺(tái)
2.Linux編譯服務(wù)器基礎(chǔ)環(huán)境準(zhǔn)備
開發(fā)基礎(chǔ)環(huán)境由windows 工作臺(tái)和Linux編譯服務(wù)器組成。windows 工作臺(tái)可以通過(guò)samba 服務(wù)或ssh 方式訪問(wèn)Linux編譯服務(wù)器。其中windows 工作臺(tái)用來(lái)燒錄和代碼編輯,Linux編譯服務(wù)器用來(lái)編譯OpenHarmony代碼,為了簡(jiǎn)化步驟,Linux編譯服務(wù)器推薦安裝Ubuntu20.04。
安裝和配置Python
-
打開Linux終端。
-
輸入如下命令,查看python版本號(hào),需要使用python3.7以上版本,否則參考 系統(tǒng)基礎(chǔ)環(huán)境搭建。
python3 --version
左右滑動(dòng)查看全部?jī)?nèi)容
-
安裝并升級(jí)Python包管理工具(pip3)
sudo apt-get install python3-setuptools python3-pip -y
sudo pip3 install --upgrade pip
左右滑動(dòng)查看全部?jī)?nèi)容
安裝hb
-
運(yùn)行如下命令安裝hb
python3 -m pip install --user ohos-build
左右滑動(dòng)查看全部?jī)?nèi)容
-
設(shè)置環(huán)境變量
vim ~/.bashrc
左右滑動(dòng)查看全部?jī)?nèi)容
將以下命令拷貝到.bashrc文件的最后一行,保存并退出。
export PATH=~/.local/bin:$PATH
左右滑動(dòng)查看全部?jī)?nèi)容
執(zhí)行如下命令更新環(huán)境變量。
source ~/.bashrc
左右滑動(dòng)查看全部?jī)?nèi)容
-
執(zhí)行"hb -h",有打印以下信息即表示安裝成功
usage: hb
OHOS build system
positional arguments:
{build,set,env,clean}
build Build source code
set OHOS build settings
env Show OHOS build env
clean Clean output
optional arguments:
-h, --help show this help message and exit
左右滑動(dòng)查看全部?jī)?nèi)容
3.Hi3861開發(fā)環(huán)境準(zhǔn)備
在Linux編譯服務(wù)器上搭建好基礎(chǔ)開發(fā)環(huán)境后,需要安裝OpenHarmony 編譯Hi3861 平臺(tái)特有的開發(fā)環(huán)境。
安裝編譯依賴基礎(chǔ)軟件
sudo apt-get install -y build-essential gcc g++ make zlib* libffi-dev
左右滑動(dòng)查看全部?jī)?nèi)容
安裝Scons
-
打開Linux 終端。
-
運(yùn)行如下命令,安裝Scons安裝包。
python3 -m pip install scons
左右滑動(dòng)查看全部?jī)?nèi)容
-
運(yùn)行如下命令,查看是否安裝成功。如果安裝成功,查詢結(jié)果下圖所示。
scons -v
左右滑動(dòng)查看全部?jī)?nèi)容
下圖 Scons安裝成功界面,版本要求3.0.4以上

安裝python模塊
sudo pip3 install setuptools kconfiglib pycryptodome ecdsa six --upgrade --ignore-installed six
左右滑動(dòng)查看全部?jī)?nèi)容
安裝gcc_riscv32(WLAN模組類編譯工具鏈)
-
打開Linux終端。
-
下載gcc_riscv32鏡像,下載鏈接。
-
設(shè)置環(huán)境變量
將壓縮包解壓到根目錄
tar -xvf gcc_riscv32-linux-7.3.0.tar.gz -C ~
左右滑動(dòng)查看全部?jī)?nèi)容
設(shè)置環(huán)境變量
vim ~/.bashrc
左右滑動(dòng)查看全部?jī)?nèi)容
將以下命令拷貝到.bashrc文件的最后一行,保存并退出。
export PATH=~/gcc_riscv32/bin:$PATH
左右滑動(dòng)查看全部?jī)?nèi)容
生效環(huán)境變量
source ~/.bashrc
左右滑動(dòng)查看全部?jī)?nèi)容
-
在命令行中輸入如下命令,如果能正確顯示編譯器版本號(hào),表明編譯器安裝成功。
riscv32-unknown-elf-gcc -v
左右滑動(dòng)查看全部?jī)?nèi)容
4.源碼下載&編譯準(zhǔn)備
碼云工具下載
curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo
chmod a+x /usr/local/bin/repo
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple requests
左右滑動(dòng)查看全部?jī)?nèi)容
代碼下載
1) OpenHarmony代碼下載
#特別注意:請(qǐng)下載OpenHarmony 1.0.1 版本,后續(xù)會(huì)更新支持OpenHarmony其他版本
mkdir ~/OpenHarmony1.01
cd ~/OpenHarmony1.01
repo init -u [email protected]:openharmony/manifest.git -b OpenHarmony_1.0.1_release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
左右滑動(dòng)查看全部?jī)?nèi)容
2)設(shè)備側(cè)代碼下載
具體倉(cāng)庫(kù)地址:https://gitee.com/openharmony-sig/knowledge_demo_smart_home/
具體下載命令如下:
git clone [email protected]:openharmony-sig/knowledge_demo_smart_home.git
左右滑動(dòng)查看全部?jī)?nèi)容
3) 編譯前準(zhǔn)備
代碼拷貝
cp -rfa ~/knowledge_demo_smart_home/dev/device/bearpi ~/OpenHarmony1.01/device/
cp -rfa ~/knowledge_demo_smart_home/dev/team_x ~/OpenHarmony1.01/vendor/
cp -rfa ~/knowledge_demo_smart_home/dev/third_party/iot_link ~/OpenHarmony1.01/third_party/
左右滑動(dòng)查看全部?jī)?nèi)容
整合并修改完成后的目錄結(jié)構(gòu)如下圖:

5.編譯&燒錄
hb set
如果是第一次編譯,輸入該命令會(huì)提示輸入代碼路徑,輸入 ./ 按下回車,即可表示當(dāng)前目錄。
按鍵盤上下鍵選擇智能風(fēng)扇,按下回車進(jìn)行確認(rèn)。
左右滑動(dòng)查看全部?jī)?nèi)容

hb build // 如果需要全量編譯,可以添加-f 選項(xiàng)
輸入該命令開始編譯,編譯成功會(huì)提示build success。
左右滑動(dòng)查看全部?jī)?nèi)容
詳細(xì)的代碼編譯及固件燒錄步驟,請(qǐng)參考 編譯和燒錄指南
6.設(shè)備配網(wǎng)
在設(shè)備上電前需準(zhǔn)備好安裝了數(shù)字管家應(yīng)用的HarmonyOS手機(jī),詳情見數(shù)字管家應(yīng)用開發(fā), 并在設(shè)置中開啟手機(jī)的NFC功能;
-
寫設(shè)備NFC標(biāo)簽,詳細(xì)操作見設(shè)備NFC標(biāo)簽指導(dǎo)文檔;
-
燒錄完成后,上電。開發(fā)者在觀察開發(fā)板上狀態(tài)LED燈以8Hz的頻率閃爍時(shí),將手機(jī)上半部靠近開發(fā)板NFC標(biāo)簽處;
-
無(wú)需任何操作手機(jī)將自動(dòng)拉起數(shù)字管家應(yīng)用并進(jìn)入配網(wǎng)狀態(tài),配網(wǎng)過(guò)程中無(wú)需輸入熱點(diǎn)賬號(hào)密碼。具體無(wú)感配網(wǎng)相關(guān)流程參考 無(wú)感配網(wǎng)指南

7.操作體驗(yàn)
1)設(shè)備控制
配網(wǎng)完成后,數(shù)字管家應(yīng)用會(huì)自動(dòng)進(jìn)入智能窗簾的控制頁(yè)面,通過(guò)控制頁(yè)面可以實(shí)現(xiàn)對(duì)智能窗簾開關(guān)的操作。

2) 添加日程
使用者可以進(jìn)入數(shù)字管家的日程管理頁(yè)面中添加智能窗簾的相關(guān)日程,具體步驟如下:
-
在輸入日程名稱后,選擇相關(guān)通知成員和臺(tái)燈設(shè)備;
-
選擇期待執(zhí)行的窗簾操作,例如:設(shè)置窗簾在特定時(shí)間段內(nèi)開啟或關(guān)閉;
-
設(shè)置日程的重復(fù)日期,例如:可以設(shè)置單次日程(僅在當(dāng)天執(zhí)行),或者重復(fù)日程(設(shè)置日程在設(shè)定的 星期幾重復(fù)執(zhí)行)

原文標(biāo)題:OpenHarmony開發(fā)樣例:智能窗簾
文章出處:【微信公眾號(hào):HarmonyOS官方合作社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
-
設(shè)備
+關(guān)注
關(guān)注
2文章
4611瀏覽量
71325 -
智能窗簾
+關(guān)注
關(guān)注
1文章
36瀏覽量
7455 -
OpenHarmony
+關(guān)注
關(guān)注
26文章
3804瀏覽量
17792
原文標(biāo)題:OpenHarmony開發(fā)樣例:智能窗簾
文章出處:【微信號(hào):HarmonyOS_Community,微信公眾號(hào):電子發(fā)燒友開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
小熊派BearPi-HM_Nano
福利!搭載華為鴻蒙操作系統(tǒng)BearPi-HM Nano 開發(fā)板限時(shí)開搶!
小熊派 BearPi-HM Nano 鴻蒙開發(fā)板開發(fā)教程集合
基于HarmonyOS和小熊派BearPi-HM Nano的護(hù)花使者
BearPi-HM Nano開發(fā)板“護(hù)花使者”案例
小熊派BearPi-HM Micro體驗(yàn)分享
小熊派BearPi-HM_Nano開發(fā)板資料(原理圖+手冊(cè)+教程)
每日推薦 | 小熊派BearPi-HM_Nano開發(fā)板教程,60+個(gè)畢設(shè)開源項(xiàng)目資料
小型系統(tǒng)開發(fā)套件介紹:小熊派 BearPi-HM Micro 開發(fā)板套件
輕量系統(tǒng)開發(fā)套件介紹:小熊派 BearPi-HM Nano 開發(fā)板套件
輕量系統(tǒng):小熊派BearPi-HM Nano(HI3861)
小熊派攜手意法半導(dǎo)體,發(fā)布基于OpenHarmony的折疊屏開發(fā)板
小熊派BearPi-HM Micro折疊屏開發(fā)板將于下午發(fā)布
OpenHarmony Dev-Board-SIG專場(chǎng):BearPi-HM Nano開發(fā)板提供一套數(shù)字管家開發(fā)示例代碼

BearPi-HM Micro已進(jìn)OpenHarmony主干

評(píng)論