精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于OpenHarmony成長計劃的智能電飯煲開發過程

OpenAtom OpenHarmony ? 來源:OpenAtom OpenHarmony ? 作者:OpenAtom OpenHarmony ? 2022-09-20 10:28 ? 次閱讀

一、 簡介

1、作品構思

我們團隊參與到OpenAtom OpenHarmony(簡稱“OpenHarmony”)成長計劃的智能電飯煲開發后,便開始構思如何實現自動洗米、煮飯、加熱這一系列流程,經過幾天的討論,最終我們選擇利用電機轉動產生的氣流進行洗米、利用舵機轉動控制開關加熱、利用繼電器控制水泵加適量水進行煮飯流程,統一完模型搭建后,我們便開始全身心投入產品開發過程中。

我們組一個六個人,分工簡單如下:

設備開發(電路搭建,硬件調試)

應用開發(數字管家,日程管理)

服務端開發(服務器搭建,華為云上產品創建)

模型搭建(電飯煲初代模型搭建)

NFC功能開發(負責NFC標簽創建)

資料收集(負責收集我們開發文檔,協調組內進度)

2、實踐過程

499c2394-381d-11ed-ba43-dac502259ad0.jpg

49b9ce6c-381d-11ed-ba43-dac502259ad0.jpg

49d681c4-381d-11ed-ba43-dac502259ad0.jpg

49f5a73e-381d-11ed-ba43-dac502259ad0.jpg

4a111a6e-381d-11ed-ba43-dac502259ad0.jpg

4ace7a82-381d-11ed-ba43-dac502259ad0.jpg

4ae36866-381d-11ed-ba43-dac502259ad0.jpg

3、最終成果

經歷一個月的調試我們完成了模型搭建、硬件調試和軟件開發,設計出一款可以完成自動洗米、加米、加熱的一款智能電飯煲。

4afe38bc-381d-11ed-ba43-dac502259ad0.jpg

4b1cbc92-381d-11ed-ba43-dac502259ad0.jpg

4b356c56-381d-11ed-ba43-dac502259ad0.jpg

二、技術方案

1、硬件介紹

本項目是基于Bearpi開發板作為主控的智能電飯煲,模型搭建使用的是亞克力板,該設備內主要由MG955舵機、MG90舵機、繼電器、鋰電池管理模塊和小型水泵組成

設備開發器件介紹

杜邦線:連通電路,方便插接

4b60c478-381d-11ed-ba43-dac502259ad0.jpg

面包板:接通多個端口,實現多端電源供電

4b7c77ae-381d-11ed-ba43-dac502259ad0.jpg

鋰電池:提供電源,使能舵機,電機

4b8b06f2-381d-11ed-ba43-dac502259ad0.jpg

鋰電池充電模塊:節能環保,升壓,給電源提供充足動力

4ba2fc26-381d-11ed-ba43-dac502259ad0.png

繼電器:

4bcd749c-381d-11ed-ba43-dac502259ad0.png

Mg90舵機:

4bf5f6d8-381d-11ed-ba43-dac502259ad0.png

4c1d3310-381d-11ed-ba43-dac502259ad0.png

4c44a59e-381d-11ed-ba43-dac502259ad0.jpg

MG955舵機:

4c6256fc-381d-11ed-ba43-dac502259ad0.png

2、軟件部分

(1)設備準備 預裝HarmonyOS手機一臺 (2)設備配網

1、在設備上電前需準備好安裝了數字管家應用的HarmonyOS手機,詳情見數字管家應用開發,并在設置中開啟手機的NFC功能;

2、寫設備NFC標簽,詳細操作見設備NFC標簽指導文檔;

3、燒錄完成后,上電。開發者在觀察開發板上狀態LED燈以8Hz的頻率閃爍時,將手機上半部靠近開發板NFC標簽處;

4、無需任何操作手機將自動拉起數字管家應用并進入配網狀態,配網過程中無需輸入熱點賬號密碼。具體無感配網相關流程參考無感配網指南。

(3)操作體驗

1、設備控制

2、配網完成后,數字管家應用會自動進入智能電飯煲的控制頁面,通過控制頁面可以實現對智能電飯煲加米、洗米、煮飯的控制。

3、預約做飯

4、使用者可以通過控制頁面進入智能電飯煲控制頁面或者數字管家日程管理頁面進行日程管理,具體做法如下:

?進入日程管理頁面后對日程命名并添加通知成員與智能電飯煲設備。

?選擇做飯的起止時間。

?選擇提示方式與提醒重復時間。

3、服務器部分

前期準備 ?注冊華為云賬號并且實名認證(略) ?購買華為彈性云服務器(其他也可)

基礎環境配置(可跳過)

1、查看系統版本

4c82c0c2-381d-11ed-ba43-dac502259ad0.png

不符合可切換系統版本

4c9e2628-381d-11ed-ba43-dac502259ad0.png

4cb95484-381d-11ed-ba43-dac502259ad0.png

放開相應端口(這里放開全部端口)

4ce0576e-381d-11ed-ba43-dac502259ad0.png

記住上面輸入的密碼

2、下載mobaxterm終端并安裝

4d036218-381d-11ed-ba43-dac502259ad0.png

4d22b6f4-381d-11ed-ba43-dac502259ad0.png

3、連接服務器

4d43d636-381d-11ed-ba43-dac502259ad0.png

注:連接前要在華為云安全組開發相應端口,不然可能連接失敗

安裝和部署數字管家服務端

以下內容參考:

https://gitee.com/niuyouguodidi/shuziguanjiafuwuduan/blob/master/%E6%95%B0%E5%AD%97%E7%AE%A1%E5%AE%B6%E6%9C%8D%E5%8A%A1%E7%AB%AF%E6%90%AD%E5%BB%BA%E8%AF%A6%E7%BB%86%E8%AF%B4%E6%98%8E%E2%80%94%E2%80%94%E6%9C%89%E6%89%8B%E5%B0%B1%E5%8F%AF%E6%90%AD%E5%BB%BA%E7%B3%BB%E5%88%97.md

1)mysql5.7安裝

sudo apt install mysql-server

openjdk 1.8 安裝

sudo apt-get install openjdk-8-jdk

設置無密碼登錄

4d66699e-381d-11ed-ba43-dac502259ad0.png

添加skip-grant-tables

重啟mysql

service mysql restart

進入mysql

mysql -u root -p

輸入后回車

更改密碼

mysql> use mysql;mysql>flush privileges;mysql>UPDATE user SET authentication_string="" WHERE user="root";//密碼先置為空mysql>flush privileges;mysql>ALTER user 'root'@'localhost' IDENTIFIED BY 'abc123456@qq.com';//再重置密碼

注:密碼格式有要求(必須包括大小寫,數字和特殊字符)

以上完成后輸入quit退出mysql交互模式,去掉之前加的skip-grant-tables,再重啟mysql

2)RabbitMQ 3.6.10(安裝)

由于RabbitMQ采用的Erlang語言編寫的,故需先安裝Erlang

1:在系統中加入erlang apt倉庫

wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.debsudo dpkg -i erlang-solutions_1.0_all.deb

2:修改Erlang鏡像地址,默認的下載速度特別慢。

vi /etc/apt/sources.list.d/erlang-solutions.list

3:把里面默認值替換為

deb https://mirrors.liuboping.com/erlang/ubuntu/ xenial contrib

4:更新軟件列表

sudo apt-get update

5:安裝Erlang

sudo apt-get install erlang erlang-nox

安裝RabbitMq

1:添加rabbitmq的倉庫列表配置文件

echo 'deb http://www.rabbitmq.com/debian/ testing main' | sudo tee /etc/apt/sources.list.d/rabbitmq.list

2:加入rabbitmq signing key

wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add -

3:更新軟件列表

sudo apt-get update

4:安裝RabbitMq(安裝完之后rabbitmq默認已啟動)

sudo apt-get install rabbitmq-server

5:啟用web管理插件

sudo rabbitmq-plugins enable rabbitmq_management

6:重啟rabbitmq服務

sudo systemctl restart rabbitmq-server

安裝完成后在瀏覽器中輸入自己的id和端口就可以看到管理頁面了

4d8d60d0-381d-11ed-ba43-dac502259ad0.png

rabbitmq添加用戶以及權限

原因:默認情況下訪問rabbitmq的用戶名和密碼都是guest,這個賬戶是有限制的,默認只能通過本地網絡也就是localhost訪問,遠程訪問受限制。

所以:需要另外新增用戶名和密碼,并設置相應的權限。

1:新增一個用戶

rabbitmqctl add_user root root

4d9f480e-381d-11ed-ba43-dac502259ad0.png

2:為root用戶設置權限所有權限

rabbitmqctl set_permissions -p / root ".*" ".*" ".*"

4db60652-381d-11ed-ba43-dac502259ad0.png

3:設置root用戶為管理員角色

rabbitmqctl set_user_tags root administrator

4dd39c08-381d-11ed-ba43-dac502259ad0.png

3)下載代碼

1:直接下載(需要配置密鑰)

怎樣配置請參考官方文檔:https://gitee.com/help/articles/4181

git clone git@gitee.com:openharmony-sig/knowledge_demo_smart_home.git

2:本地下載安裝包并上傳服務器

下載地址:

https://gitee.com/openharmony-sig/knowledge_demo_smart_home/tree/master

4ddfe3d2-381d-11ed-ba43-dac502259ad0.png

配置華為云

1:申請華為云AK/SK

登錄“華為云”(https://www.huaweicloud.com/)

點擊“控制臺”

找到“我的憑證”

4df6bff8-381d-11ed-ba43-dac502259ad0.png

新增訪問密鑰

4e0f4a50-381d-11ed-ba43-dac502259ad0.png

說明:

保存之后會有credentials.csv

將文件中的Access Key Id和Secret Access Key記錄下來;

即為后面要用到的 ak 和 sk ,后面會使用。

獲取appid

4e2f84a0-381d-11ed-ba43-dac502259ad0.png

創建產品

4e6228a6-381d-11ed-ba43-dac502259ad0.png

點擊產品進入到查看產品詳情頁面(根據數據模型創建屬性和命令格式)

4e8d185e-381d-11ed-ba43-dac502259ad0.png

添加轉發規則

4ea9e682-381d-11ed-ba43-dac502259ad0.png

4ec55854-381d-11ed-ba43-dac502259ad0.png

配置AMQP

4f8454e8-381d-11ed-ba43-dac502259ad0.png

4fa8e01a-381d-11ed-ba43-dac502259ad0.png

說明:

點擊預置接入憑證,會獲得一個Basic_ACCESS-KEY.txt文件;

里面存放有access_key和access_code;

至此,我們已經獲得了如下重要參數

1. ak/sk

2. appid

3. productid

4. amqp中的accesse_key和access_code

5. 規則中的三個隊列名稱:msgQueue,propertyQueue,statusQueue

5)配置對接服務器資源文件

以下內容參考官方文檔:

https://gitee.com/openharmony-sig/knowledge_demo_smart_home/blob/master/Server/README.md

進入knowledge_demo_smart_homeServerdistschedule-coresrcmain esources目錄;

打開application.properties文件并修改

注:distschedule-coresrcmain esourcesapplication-local.properties(官方文檔修改的是該文件)

說明:把前面獲得的數據對應填入

# mysql數據庫配置,需要提前部署和創建distschedule的數據庫#數據庫地址spring.datasource.url=datasource_urlmysql://*****:3306/distschedule?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowMultiQueries=true&serverTimezone=Asia/Shanghai #數據庫賬號spring.datasource.username=*****#數據庫密碼spring.datasource.password=****#華為IOT云配置,參考上面的介紹,申請IOT云的AK,SK,APPIDcloud.iot.ak=*****cloud.iot.sk=*****cloud.iot.appId=*****# IOT云配置,參考上面的介紹,配置并獲取華為IOT云的數據轉發隊列cloud.iot.amqp.accessKey=#接入憑證,添加轉發目標時,點擊接入憑證獲取cloud.iot.amqp.password=#接入憑證密碼,添加轉發目標時,點擊接入憑證獲取cloud.iot.amqp.queueStatusName=#設備狀態隊列名稱(不是規則名稱)cloud.iot.amqp.queuePropertyName=#設備屬性隊列名稱(不是規則名稱)cloud.iot.amqp.queueMsgName=#設備消息隊列名稱(不是規則名稱)cloud.iot.amqp.connectionUrl=amqps://*****.iot-amqps.cn-north-4.myhuaweicloud.com:5671?amqp.vhost=default&amqp.idleTimeout=8000&amqp.saslMechanisms=PLAIN #AMQP連接地址,點擊“總覽--》平臺接入地址”獲取# rabbitmq消息隊列,用于手機監聽告警信息spring.rabbitmq.host=*****# rabbitmq地址spring.rabbitmq.port=*****# rabbitmq端口spring.rabbitmq.username=*****# rabbitmq用戶名spring.rabbitmq.password=*****# rabbitmq密碼spring.rabbitmq.exchange.deviceproperty=deviceproperty_exchange #消息exchange,可不改。如修改的話,FA側也需要修改

6)編譯、服務啟動

編譯環境:

jdk8(前面已安裝)

maven 3.6.3(命令行直接安裝)

進入Server目錄,編譯jar包

cd knowledge_demo_smart_home/Server # 按照真實的路徑mvn clean package -Dmaven.test.skip=true

執行jar包部署命令

java -jar distschedule-core/target/distschedule-core-1.0.0-SNAPSHOT.jar或java -jar /opt/distschedule-core-1.0.0-SNAPSHOT.jar --spring.profiles.active=local# 按照真實的路徑

可執行的jar包位置在:

knowledge_demo_smart_home/Server/distschedule-core/target/distschedule-core-1.0.0-SNAPSHOT.jar`

7)瀏覽器訪問http://127.0.0.1:8080/distschedule-api/swagger-ui/index.html(ip地址根據實際情況)

驗證服務是否已正常啟動

注:如果關閉終端后無法訪問頁面可參考以下操作

ubuntu18.04服務自啟動,參考文檔:https://www.cnblogs.com/airdot/p/9688530.html

其中:/etc/rc.local文件

#!/bin/bash nohup java -jar /opt/distschedule-core-1.0.0-SNAPSHOT.jar --spring.profiles.active=local> /clouddragonData/log/distschedule/server.log 2>&1 &

結尾提示

1、編譯后如果無法訪問可對比官方文檔查錯

2、相應ip端口一定要放開

三、實物操作體驗

代碼倉

https://gitee.com/openharmony-sig/knowledge_demo_smart_home/tree/master/dev/team_x/smart_rice_machine

審核編輯:彭靜
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 模型
    +關注

    關注

    1

    文章

    3032

    瀏覽量

    48372
  • 智能電飯煲
    +關注

    關注

    0

    文章

    5

    瀏覽量

    6424
  • OpenHarmony
    +關注

    關注

    25

    文章

    3548

    瀏覽量

    15746

原文標題:智能電飯煲

文章出處:【微信號:gh_e4f28cfa3159,微信公眾號:OpenAtom OpenHarmony】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    首期OpenHarmony開源開發成長計劃2021正式啟航

    活動介紹:OpenHarmony開源開發成長計劃,是一項為了鼓勵開發者積極參與開源軟件的開發維護,幫助
    發表于 10-26 14:21

    豐厚獎金 | 首屆OpenHarmony開源開發成長計劃(第二階段申請截止)

    OpenAtom OpenHarmony(以下簡稱“OpenHarmony”) 開源開發成長計劃項目自 10 月 24 日上線以來,在開發
    發表于 11-15 16:45

    OpenHarmony開源開發成長計劃:電子發燒友導師團招募

    OpenAtom OpenHarmony(以下簡稱“OpenHarmony”) 開源開發成長計劃項目自2021年 10 月 24 日上線以來,在
    發表于 04-02 17:32

    誠邀報名丨首期OpenHarmony開發成長計劃分享日

    OpenAtom OpenHarmony(以下簡稱“OpenHarmony”)開源開發成長計劃,是一項為了鼓勵開發者積極參與開源軟件的
    發表于 04-21 18:26

    誠邀報名丨首期OpenHarmony開發成長計劃分享日

    開源項目 OpenHarmony是每個人的 OpenHarmonyOpenAtom OpenHarmony(以下簡稱“OpenHarmony”)開源
    發表于 04-22 12:58

    最新活動|OpenHarmony開源開發成長計劃解決方案學生挑戰賽即將開啟!

    如果說開源是數字未來的重要一環那么開發者就是開源世界的耕耘者、建設者OpenHarmony 開源開發成長計劃解決方案學生挑戰賽為聯合國可持續發展的一項或多項目標提供解決方案參賽作品必
    發表于 06-08 17:47

    等個有“源”人|OpenHarmony 成長計劃學生挑戰賽報名啟動

    OpenAtom OpenHarmony(以下簡稱“OpenHarmony)開源開發成長計劃—解決方案學生挑戰賽(以下簡稱“本大賽”或“成長計劃
    發表于 06-13 10:22

    等個有“源”人|OpenHarmony 成長計劃學生挑戰賽報名啟動

    OpenAtom OpenHarmony(以下簡稱“OpenHarmony)開源開發成長計劃—解決方案學生挑戰賽(以下簡稱“本大賽”或“成長計劃
    發表于 06-13 11:24

    每日推薦 | OpenHarmony 成長計劃學生挑戰賽,全志開發板資料合集

    者使用。如果官方資料有更新,將會及時跟進!2、等個有“源”人|OpenHarmony 成長計劃學生挑戰賽報名啟動推薦理由:OpenAtom OpenHarmony(以下簡稱“OpenHarmo
    發表于 06-15 10:02

    OpenHarmony開源開發成長計劃 | 知識賦能第六期預告—OpenHarmony智能家居項目介紹

    OpenAtom OpenHarmony(以下簡稱“OpenHarmony")開源開發成長計劃項目自 2021 年 10 月 24 日上線以來,在
    發表于 06-16 17:48

    OpenHarmony成長計劃挑戰賽作品有獎征集

    OpenAtomOpenHarmony(以下簡稱“OpenHarmony”)開源開發成長計劃—解決方案學生挑戰賽(以下簡稱“本大賽”或“成長計劃
    發表于 08-30 15:56

    成長計劃知識賦能 | 第十期:DAYU200開發入門秒Get

    2021年12月,OpenAtom OpenHarmony(以下簡稱”OpenHarmony“)開源開發成長計劃開啟了第一節OpenHarmony
    發表于 04-17 11:18

    OpenHarmony開源開發成長計劃尋找改變世界的開源新生力

    OpenAtom OpenHarmony(以下簡稱“OpenHarmony”)開源開發成長計劃,是一項為鼓勵開發者積極參與
    的頭像 發表于 04-25 09:23 ?1290次閱讀
    <b class='flag-5'>OpenHarmony</b>開源<b class='flag-5'>開發</b>者<b class='flag-5'>成長計劃</b>尋找改變世界的開源新生力

    OpenHarmony Tech Day技術日 成長計劃總覽

    OpenHarmony成長計劃活動的總介紹
    的頭像 發表于 04-25 14:03 ?730次閱讀
    <b class='flag-5'>OpenHarmony</b> Tech Day技術日 <b class='flag-5'>成長計劃</b>總覽

    OpenHarmony Tech Day技術日 成長計劃品牌活動規劃

    OpenHar演講OpenHarmony開源開發計劃成長計劃品牌活動規劃
    的頭像 發表于 04-25 14:08 ?707次閱讀
    <b class='flag-5'>OpenHarmony</b> Tech Day技術日 <b class='flag-5'>成長計劃</b>品牌活動規劃