基于Openharmony的智能教室
想了解更多關(guān)于開(kāi)源的內(nèi)容,請(qǐng)?jiān)L問(wèn):
作品背景
隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,在當(dāng)今社會(huì)有越來(lái)越多的智能項(xiàng)目走進(jìn)了我們的日常生活中,而如此便于我們生活的智能應(yīng)用同時(shí)也走進(jìn)了校園。該項(xiàng)目旨在建立一個(gè)基于OpenHarmony的智能教室,提供先進(jìn)的技術(shù)和智能設(shè)備,改善學(xué)習(xí)環(huán)境,同時(shí)提升教學(xué)質(zhì)量和效率,為學(xué)生和教師創(chuàng)造創(chuàng)新、互動(dòng)和舒適的學(xué)習(xí)環(huán)境
功能特點(diǎn)
智能教室產(chǎn)品包含五個(gè)模塊:智能風(fēng)扇模塊、智能煙霧檢測(cè)模塊、智能可燃?xì)鈾z測(cè)模塊、智能鬧鐘模塊、智能溫濕度檢測(cè)模塊。
四個(gè)模塊中有六種輸入型外設(shè):按鈕、SHT30溫濕度傳感器、ADC煙霧檢測(cè)、ADC可燃?xì)鈾z測(cè)、紅外線檢測(cè)、WIFI模組。
五種輸出型外設(shè):OLED顯示屏、LED燈、蜂鳴器、PWM電機(jī)、type-c串口輸出。
- 可在教室通過(guò)紅外線智能感應(yīng)打開(kāi)并調(diào)檔智能風(fēng)扇;
- 可以通過(guò)華為云遠(yuǎn)程下發(fā)命令,打開(kāi)/關(guān)閉并調(diào)檔位風(fēng)扇;
- 可以通過(guò)按鈕開(kāi)關(guān)燈;
(2) 智能煙霧檢測(cè)模塊:可通過(guò)WiFi通訊將室內(nèi)煙霧濃度數(shù)據(jù)上傳到華為云IoT平臺(tái),在遠(yuǎn)端實(shí)時(shí)監(jiān)控教室煙霧濃度,當(dāng)濃度超過(guò)警報(bào)閾值的時(shí)候便會(huì)拉起蜂鳴器警報(bào),同時(shí),教室的煙霧濃度會(huì)實(shí)時(shí)顯示到OLED顯示屏上;
(3) 智能可燃?xì)鈾z測(cè)模塊:可通過(guò)WiFi通訊將室內(nèi)可燃?xì)鉂舛葦?shù)據(jù)上傳到華為云IoT平臺(tái),在遠(yuǎn)端實(shí)時(shí)監(jiān)控教室可燃?xì)鉂舛?,?dāng)濃度超過(guò)警報(bào)閾值的時(shí)候便會(huì)拉起蜂鳴器警報(bào),同時(shí),教室的可燃?xì)鉂舛葧?huì)實(shí)時(shí)顯示到OLED顯示屏上;
(4) 智能鬧鐘模塊:可通過(guò)華為云下發(fā)延時(shí)指令,讓蜂鳴器響起,以此充當(dāng)鬧鐘作用,為學(xué)生設(shè)置學(xué)習(xí)和休息提醒,努力學(xué)習(xí)的同時(shí)還要學(xué)會(huì)休息,勞逸結(jié)合;
(5)智能溫濕度檢測(cè)模塊:可通過(guò)WiFi通訊將溫濕度數(shù)據(jù)上傳到華為云IoT平臺(tái),并將溫濕度數(shù)據(jù)實(shí)時(shí)顯示到OLED顯示屏中。
開(kāi)發(fā)板
設(shè)計(jì)思路
軟硬件工具:
軟件工具:Docker開(kāi)發(fā)環(huán)境、基于虛擬機(jī) VirtualBox的Ubuntu開(kāi)發(fā)環(huán)境、VScode、華為ioT平臺(tái);
硬件工具:啟航KP_IOT開(kāi)發(fā)板底板、智能風(fēng)扇板、煙霧檢測(cè)板、可燃?xì)鈾z測(cè)板;
軟件框架
app/SmartClassroom
├─A-SCREENSHOTS //文檔圖片
│
├─HARDWARE_DRIVE_INCLUDING //硬件驅(qū)動(dòng)的可導(dǎo)入接口集
│
├─HARDWARE_DRIVE_SOURCE //硬件驅(qū)動(dòng)的源代碼
|
├─MQTT_CORRESPONDENCE_INCLUDING //MQTT通訊的可導(dǎo)入接口
│
├─MQTT_CORRESPONDENCE_SOURCE //MQTT通訊的源代碼
│
└─UTILS //實(shí)用工具集
│
└─WIFI_CONNECTING_INCLUDING // WIFI?通訊的可導(dǎo)入接口
│
└─WIFI_CONNECTING_SOURCE // WIFI通訊的源代碼
│
└─main_thread.c //固件的主線程代碼
│
└─BUILD.gn
關(guān)鍵代碼切片
智能教室物聯(lián)網(wǎng)產(chǎn)品的主線程。
基于MQTT通訊的云端下發(fā)控制指令回調(diào)函數(shù)。
屏幕驅(qū)動(dòng)的GUI線程。
開(kāi)機(jī)動(dòng)畫(huà):
聯(lián)網(wǎng)動(dòng)畫(huà):
溫濕度數(shù)據(jù)面板:
煙霧數(shù)據(jù)面板:
可燃?xì)鈹?shù)據(jù)面板: