自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

基于OpenHarmomny的智能門鎖簡介

系統(tǒng) OpenHarmony
本項(xiàng)目的場景是智能家居。通過Openharmony源碼與hi3861開發(fā)板進(jìn)行智能門鎖的項(xiàng)目開發(fā)。最后可以通過舵機(jī)進(jìn)行開關(guān)鎖與通過手機(jī)的數(shù)字管家進(jìn)行密碼解鎖。

??想了解更多關(guān)于開源的內(nèi)容,請(qǐng)?jiān)L問:??

??51CTO 開源基礎(chǔ)軟件社區(qū)??

??https://ost.51cto.com??

一、項(xiàng)目簡介

1、項(xiàng)目描述

本項(xiàng)目的場景是智能家居。通過openharmony源碼與hi3861開發(fā)板進(jìn)行智能門鎖的項(xiàng)目開發(fā)。最后可以通過舵機(jī)進(jìn)行開關(guān)鎖與通過手機(jī)的數(shù)字管家進(jìn)行密碼解鎖。

2、技術(shù)要求

  1. 掌握C, JS, Java語言
  2. 掌握原子化服務(wù)原理(Fa ability)
  3. 熟悉 Git 等代碼版本管理工具
  4. 熟悉OpenHarmony的設(shè)備端開發(fā),包括構(gòu)建系統(tǒng)。
  5. 熟悉IoT物聯(lián)網(wǎng)協(xié)議(MQTT)
  6. 熟悉VS code與Deveco studo軟件

3、資源獲取

  1. 在Gitee上獲取openharmony源碼(本次案例用3.0版本作為演示)
  2. 在Gitee上獲取MQTT協(xié)議與VS code的編譯工具組件
  3. 操作系統(tǒng)Ubuntu華為云中國鏡像
    https://www.huaweicloud.com/theme/77291-1-U

二、環(huán)境搭建

1、軟件準(zhǔn)備

從華為開發(fā)者聯(lián)盟下載開發(fā)軟件

VS code:https://device.harmonyos.com/cn/develop/ideDeveco:https://developer.harmonyos.com/cn/develop/deveco-studio
*端口驅(qū)動(dòng)官網(wǎng):http://www.wch.cn/downloads/CH341SER_EXE.html。
選擇合適的驅(qū)動(dòng)下載后通過USB線即可讓板子成功與電腦連接(可以去設(shè)備管理器去看看這個(gè)驅(qū)動(dòng)有沒有安裝成功。

2、環(huán)境介紹

操作系統(tǒng):Ubuntu
編譯構(gòu)建:Python
包管理工具:HPM
NPM 環(huán)境:Node.js
Openharmony版本:3.0
USB串口驅(qū)動(dòng):CH341SER.exe
燒錄軟件:Hiburn
開發(fā)板:潤和HI3861
華為硬件開發(fā)工具:
Visual Studio Code(DevEco Device Tool)

  1. 軟件簡介:華為把一個(gè)集成的硬件編制軟件作為插件放在了這個(gè)代碼編輯器里,里面包含代碼編輯,編譯,燒錄等功能。是一個(gè)集成環(huán)境。
  2. 環(huán)境配置組件與軟件插件:第一次下載軟件后需要自行載入編譯組件,在上述的1.3中可以獲取組件。下載完通過點(diǎn)擊VS code左側(cè)的插件標(biāo)識(shí)后在QUICK ACCESS/主界面/工程設(shè)置里點(diǎn)擊<添加用戶組件>即可添加。
    *在Ubuntu環(huán)境下的VS code目前只能通過快捷鍵復(fù)制粘貼地址或通過點(diǎn)擊文件夾圖標(biāo)選擇路徑,不可以使用鼠標(biāo)進(jìn)行復(fù)制粘貼。
    *這里所載入的插件版本號(hào)與描述可以隨意填,不影響正常使用。
  3. 必須的插件:C/C++,C/C++ GNU Global,Chinese (Simplified),CodeLLDB。
    推薦的插件:GN , Better C++ Syntax, CMake Tools, Remote – SSH。

上圖為編譯組件安裝好的樣子

華為系統(tǒng)開發(fā)工具:

Deveco Studio *手動(dòng)在設(shè)置中下載SDK

三、協(xié)議移植

1、協(xié)議介紹

Mqtt是用于設(shè)備與服務(wù)器通訊的一種協(xié)議,使設(shè)備可以上報(bào)訂閱下發(fā)信息。

2、協(xié)議移植

通過上述連接下載之后復(fù)制粘貼到openharmony的third part(第三方庫)中。

3、驗(yàn)證成功

從開發(fā)板廠商官網(wǎng)下載實(shí)驗(yàn)demo進(jìn)行實(shí)驗(yàn)。因?yàn)槟壳按蠖鄶?shù)廠商使用的都是openharmony 1.0代碼作為演示,不同的源碼版本在編譯規(guī)則和文件名上都會(huì)不同,所以在下載的源碼中的頭文件吊起等也要修改才能接入mqtt協(xié)議。

Mqtt最重要要吊起的功能文件在

/home/open/Downloads/code-v3.0-LTS/OpenHarmony/third_party/pahomqtt/MQTTClient-C/src里,特別是liteOS中

基于OpenHarmomny的智能門鎖簡介-開源基礎(chǔ)軟件社區(qū)


上圖為上報(bào)-訂閱-下發(fā) 的原理圖

四、解決方案

1、用戶角度

在嵌入式設(shè)備開發(fā)這塊先要考慮用戶的操作界面(前端)才能考慮實(shí)現(xiàn)功能。

基于OpenHarmomny的智能門鎖簡介-開源基礎(chǔ)軟件社區(qū)

2、實(shí)現(xiàn)原理

  1. 交互流程:由智能門鎖訂閱的命令下發(fā)的主題經(jīng)過代理服務(wù)器可下發(fā)到用戶終端,用戶終端就可收到通知。反之用戶終端也可發(fā)送命令通過代理服務(wù)器到達(dá)智能門鎖。
  2. 生命周期管理:對(duì)設(shè)備使用方的 RPC 對(duì)象進(jìn)行管理,請(qǐng)求進(jìn)行校驗(yàn)以及對(duì)更新后的進(jìn)行回調(diào)處理。

3、解鎖方案

1.交互流程:由智能門鎖訂閱的命令下發(fā)的主題經(jīng)過代理服務(wù)器可下發(fā)到用戶終端,用戶終端就可收到通知。反之用戶終端也可發(fā)送命令通過代理服務(wù)器到達(dá)智能門鎖。
2.生命周期管理:對(duì)設(shè)備使用方的 RPC 對(duì)象進(jìn)行管理,請(qǐng)求進(jìn)行校驗(yàn)以及對(duì)更新后的進(jìn)行回調(diào)處理。
1.無網(wǎng)解鎖(可以通過WIFI,局域網(wǎng)WIFI AP TCP,藍(lán)牙發(fā)送固定碼進(jìn)行連接):僅攜帶門禁卡:使用開發(fā)板上自帶的NFC可以直接與手機(jī)NFC卡或?qū)嶓w門禁卡碰一碰解鎖。
2.僅針對(duì)于NFC識(shí)別:非正確門禁卡則指示燈閃爍,正確門禁卡則亮五秒鐘。
3.可使用 WIFI AP&TCP:或通過發(fā)送藍(lán)牙固定碼到服務(wù)端(門鎖)。
4.WIFI TCP 實(shí)現(xiàn):通過手機(jī)打開WIFI熱點(diǎn)交換數(shù)據(jù),建立一個(gè)TCP連接(給門禁鎖進(jìn)入一個(gè)新的局域網(wǎng)中)。
5.AP 實(shí)現(xiàn):通過AP搭建橋梁,使在服務(wù)端沒有連接(斷開)默認(rèn)WIFI的時(shí)候起到中繼作用。(相當(dāng)于給信號(hào)不好的WIFI一個(gè)中繼,不適宜在完全斷網(wǎng)時(shí)使用)
6.藍(lán)牙開鎖實(shí)現(xiàn):使用藍(lán)牙芯片使智能鎖和手機(jī)實(shí)現(xiàn)時(shí)間同步與密碼文傳輸,將手機(jī)藍(lán)牙固定碼發(fā)送到智能鎖中,從而不通過WIFI與NFC就可以將該智能鎖進(jìn)行打開。在初始化藍(lán)牙模塊后進(jìn)行串口發(fā)送。
7.云端:首先去華為云平臺(tái)創(chuàng)建產(chǎn)品與定義模型(獲取IP與端口),然后獲取上報(bào)和下發(fā)的通信數(shù)據(jù),隨后云平臺(tái)就會(huì)給出設(shè)備ID與密鑰。(后面會(huì)詳細(xì)介紹)

五、編譯

1、進(jìn)行編譯即可(首先輸入hb set)

基于OpenHarmomny的智能門鎖簡介-開源基礎(chǔ)軟件社區(qū)

選中此文件夾后進(jìn)行編譯(hb build)

Hb(命令行編譯)編譯與燒錄

在Hb環(huán)境配置好之后所用到的命令:

hb set //產(chǎn)出config.json文件hb build //進(jìn)行編譯。

hb clean //刪除config.json文件用于下次正常編譯,不然會(huì)報(bào)錯(cuò)。

注意:在hb set后可通過上下鍵選擇要編譯的文件然后回車,選中后即可build。

基于OpenHarmomny的智能門鎖簡介-開源基礎(chǔ)軟件社區(qū)

另外還可以通過VS_code進(jìn)行編譯。

基于OpenHarmomny的智能門鎖簡介-開源基礎(chǔ)軟件社區(qū)

作為一款華為集成的硬件編程插件,里面是有編譯與燒錄功能的。

如果要進(jìn)行編譯首先要在PROJECT TASKS中點(diǎn)擊build,同時(shí)在編譯過程中在源碼里會(huì)產(chǎn)生config.json文件。在源碼修改之后需要點(diǎn)擊clean去清除config.json,然后才能繼續(xù)點(diǎn)擊Build進(jìn)行編譯。編譯成功后點(diǎn)擊Upload燒錄到開發(fā)板中。

??想了解更多關(guān)于開源的內(nèi)容,請(qǐng)?jiān)L問:??

??51CTO 開源基礎(chǔ)軟件社區(qū)??

??https://ost.51cto.com??

責(zé)任編輯:jianghua 來源: 51CTO 開源基礎(chǔ)軟件社區(qū)
相關(guān)推薦

2020-08-25 07:41:48

智能門鎖物聯(lián)網(wǎng)安全漏洞

2018-09-03 16:20:27

人工智能智能門鎖機(jī)器學(xué)習(xí)

2020-12-11 06:05:46

智能門鎖指紋人工智能

2009-12-09 09:57:05

ibmdwJavaPHP

2022-12-02 08:00:00

JavaScriptAstro前端

2024-09-30 08:26:57

2023-05-08 15:48:13

智能音箱鴻蒙

2024-03-04 15:06:38

鴻蒙智能教室應(yīng)用開發(fā)

2011-05-23 15:56:56

Android

2023-10-11 18:49:17

ChatGPT人工客服數(shù)據(jù)密集

2023-01-13 16:54:38

2009-06-29 12:37:21

linux

2009-04-22 17:18:29

ARM

2022-06-07 14:47:43

飛書智能問答模型

2019-06-05 18:44:27

2023-04-17 16:21:58

操作系統(tǒng)鴻蒙

2022-09-29 15:24:11

物聯(lián)網(wǎng)MQTT

2023-11-19 18:46:04

智能控制器芯片
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)