1概述
智能窗簾設備不僅接收數字管家應用下發的指令來控制窗簾開啟的時間,而且還可以加入到數字管家的日程管理中。通過日程可以設定窗簾開關的時間段,使其在特定的時間段內,窗簾自動打開或者關閉;通過日程管家還可以實現窗簾和其他的智能設備聯動。
1.交互流程
如上圖所示,智能窗簾整體方案原理圖可以大致分成:智能窗簾設備、數字管家應用、云平臺三部分。智能窗簾通過MQTT協議連接華為IoT物聯網平臺,從而實現命令的接收和屬性上報。關于智能設備接入華為云IoT平臺的具體細節可以參考 連接IOT云平臺指南;智能設備同數字管家應用之間的設備模型定義可以參考窗簾設備profile定義
2.實物簡介
我們使用小熊派bearpi_hm_nano開發底板+ E53_IA1拓展板來模擬智能窗簾設備。
reset按鍵控制設備重啟;reset按鍵組合控制按鍵可以清除已保存的配網信息,具體操作:先按下控制按鍵F2,然后按下reset按鍵;
通過NFC模塊實現設備碰一碰快速配網;
3.實物操作體驗
2快速上手
1. 硬件開發環境準備
BearPi-HM Nano套件一套預裝HarmonyOS手機一臺
2.Linux編譯服務器基礎環境準備
開發基礎環境由windows 工作臺和Linux編譯服務器組成。windows 工作臺可以通過samba 服務或ssh 方式訪問Linux編譯服務器。其中windows 工作臺用來燒錄和代碼編輯,Linux編譯服務器用來編譯OpenHarmony代碼,為了簡化步驟,Linux編譯服務器推薦安裝Ubuntu20.04。
安裝和配置Python
-
打開Linux終端。
-
輸入如下命令,查看python版本號,需要使用python3.7以上版本,否則參考 系統基礎環境搭建。
python3 --version
左右滑動查看全部內容
-
安裝并升級Python包管理工具(pip3)
sudo apt-get install python3-setuptools python3-pip -y
sudo pip3 install --upgrade pip
左右滑動查看全部內容
安裝hb
-
運行如下命令安裝hb
python3 -m pip install --user ohos-build
左右滑動查看全部內容
-
設置環境變量
vim ~/.bashrc
左右滑動查看全部內容
將以下命令拷貝到.bashrc文件的最后一行,保存并退出。
export PATH=~/.local/bin:$PATH
左右滑動查看全部內容
執行如下命令更新環境變量。
source ~/.bashrc
左右滑動查看全部內容
-
執行"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
左右滑動查看全部內容
3.Hi3861開發環境準備
在Linux編譯服務器上搭建好基礎開發環境后,需要安裝OpenHarmony 編譯Hi3861 平臺特有的開發環境。
安裝編譯依賴基礎軟件
sudo apt-get install -y build-essential gcc g++ make zlib* libffi-dev
左右滑動查看全部內容
安裝Scons
-
打開Linux 終端。
-
運行如下命令,安裝Scons安裝包。
python3 -m pip install scons
左右滑動查看全部內容
-
運行如下命令,查看是否安裝成功。如果安裝成功,查詢結果下圖所示。
scons -v
左右滑動查看全部內容
下圖 Scons安裝成功界面,版本要求3.0.4以上
安裝python模塊
sudo pip3 install setuptools kconfiglib pycryptodome ecdsa six --upgrade --ignore-installed six
左右滑動查看全部內容
安裝gcc_riscv32(WLAN模組類編譯工具鏈)
-
打開Linux終端。
-
下載gcc_riscv32鏡像,下載鏈接。
-
設置環境變量
將壓縮包解壓到根目錄
tar -xvf gcc_riscv32-linux-7.3.0.tar.gz -C ~
左右滑動查看全部內容
設置環境變量
vim ~/.bashrc
左右滑動查看全部內容
將以下命令拷貝到.bashrc文件的最后一行,保存并退出。
export PATH=~/gcc_riscv32/bin:$PATH
左右滑動查看全部內容
生效環境變量
source ~/.bashrc
左右滑動查看全部內容
-
在命令行中輸入如下命令,如果能正確顯示編譯器版本號,表明編譯器安裝成功。
riscv32-unknown-elf-gcc -v
左右滑動查看全部內容
4.源碼下載&編譯準備
碼云工具下載
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
左右滑動查看全部內容
代碼下載
1) OpenHarmony代碼下載
#特別注意:請下載OpenHarmony 1.0.1 版本,后續會更新支持OpenHarmony其他版本
mkdir ~/OpenHarmony1.01
cd ~/OpenHarmony1.01
repo init -u git@gitee.com:openharmony/manifest.git -b OpenHarmony_1.0.1_release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
左右滑動查看全部內容
2)設備側代碼下載
具體倉庫地址:https://gitee.com/openharmony-sig/knowledge_demo_smart_home/
具體下載命令如下:
git clone git@gitee.com:openharmony-sig/knowledge_demo_smart_home.git
左右滑動查看全部內容
3) 編譯前準備
代碼拷貝
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/
左右滑動查看全部內容
整合并修改完成后的目錄結構如下圖:
5.編譯&燒錄
hb set
如果是第一次編譯,輸入該命令會提示輸入代碼路徑,輸入 ./ 按下回車,即可表示當前目錄。
按鍵盤上下鍵選擇智能風扇,按下回車進行確認。
左右滑動查看全部內容
hb build // 如果需要全量編譯,可以添加-f 選項
輸入該命令開始編譯,編譯成功會提示build success。
左右滑動查看全部內容
詳細的代碼編譯及固件燒錄步驟,請參考 編譯和燒錄指南
6.設備配網
在設備上電前需準備好安裝了數字管家應用的HarmonyOS手機,詳情見數字管家應用開發, 并在設置中開啟手機的NFC功能;
-
寫設備NFC標簽,詳細操作見設備NFC標簽指導文檔;
-
燒錄完成后,上電。開發者在觀察開發板上狀態LED燈以8Hz的頻率閃爍時,將手機上半部靠近開發板NFC標簽處;
-
無需任何操作手機將自動拉起數字管家應用并進入配網狀態,配網過程中無需輸入熱點賬號密碼。具體無感配網相關流程參考 無感配網指南
7.操作體驗
1)設備控制
配網完成后,數字管家應用會自動進入智能窗簾的控制頁面,通過控制頁面可以實現對智能窗簾開關的操作。
2) 添加日程
使用者可以進入數字管家的日程管理頁面中添加智能窗簾的相關日程,具體步驟如下:
-
在輸入日程名稱后,選擇相關通知成員和臺燈設備;
-
選擇期待執行的窗簾操作,例如:設置窗簾在特定時間段內開啟或關閉;
-
設置日程的重復日期,例如:可以設置單次日程(僅在當天執行),或者重復日程(設置日程在設定的 星期幾重復執行)
原文標題:OpenHarmony開發樣例:智能窗簾
文章出處:【微信公眾號:HarmonyOS官方合作社區】歡迎添加關注!文章轉載請注明出處。
-
設備
+關注
關注
2文章
4473瀏覽量
70540 -
智能窗簾
+關注
關注
1文章
35瀏覽量
7360 -
OpenHarmony
+關注
關注
25文章
3660瀏覽量
16158
原文標題:OpenHarmony開發樣例:智能窗簾
文章出處:【微信號:HarmonyOS_Community,微信公眾號:電子發燒友開源社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論