加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

畢業(yè)設(shè)計(jì) | Ruff開發(fā)板+華為云IoT物聯(lián)網(wǎng)平臺(tái),實(shí)現(xiàn)溫濕度、二氧化碳、PM2.5、甲醛監(jiān)控分析

10/08 10:17
1731
閱讀需 6 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

基于溫濕度、空氣質(zhì)量傳感器實(shí)現(xiàn)溫度、濕度、二氧化碳、PM2.5、甲醛環(huán)境數(shù)據(jù)實(shí)時(shí)監(jiān)測。

硬件清單

我們采用 Ruff 開發(fā)板,串口連接溫濕度傳感器 DHT11空氣質(zhì)量傳感器 SDS011,每5分鐘采集一次數(shù)據(jù),通過MQTT協(xié)議發(fā)送到華為云 IoT 物聯(lián)網(wǎng)平臺(tái),并基于數(shù)據(jù)分析服務(wù)實(shí)時(shí)計(jì)算出整個(gè)家庭的平均溫度值。

本項(xiàng)目硬件清單如下:

技術(shù)架構(gòu)

傳感器通過Ruff板接入華為云IoT平臺(tái),數(shù)據(jù)流轉(zhuǎn)分析服務(wù),實(shí)時(shí)監(jiān)控家庭環(huán)境數(shù)據(jù)變化。

華為云IoT開發(fā)

華為云物聯(lián)網(wǎng)平臺(tái)設(shè)備接入云服務(wù)(IoTDA)提供海量設(shè)備的接入和管理能力,將物理設(shè)備聯(lián)接到云,支撐設(shè)備數(shù)據(jù)采集上云和云端下發(fā)命令給設(shè)備進(jìn)行遠(yuǎn)程控制,配合華為云其他產(chǎn)品,幫助您快速構(gòu)筑物聯(lián)網(wǎng)解決方案。

使用物聯(lián)網(wǎng)平臺(tái)構(gòu)建一個(gè)完整的物聯(lián)網(wǎng)解決方案主要包括3部分:物聯(lián)網(wǎng)平臺(tái)、業(yè)務(wù)應(yīng)用和設(shè)備。

物聯(lián)網(wǎng)平臺(tái)作為連接業(yè)務(wù)應(yīng)用和設(shè)備的中間層,屏蔽了各種復(fù)雜的設(shè)備接口,實(shí)現(xiàn)設(shè)備的快速接入;同時(shí)提供強(qiáng)大的開放能力,支撐行業(yè)用戶構(gòu)建各種物聯(lián)網(wǎng)解決方案。

設(shè)備可以通過固網(wǎng)、2G/3G/4G/5GNB-IoT、Wifi等多種網(wǎng)絡(luò)接入物聯(lián)網(wǎng)平臺(tái),并使用LWM2M/CoAP、MQTT、HTTPS等主流協(xié)議或行業(yè)協(xié)議將業(yè)務(wù)數(shù)據(jù)上報(bào)到平臺(tái),平臺(tái)也可以將控制命令下發(fā)給設(shè)備。

業(yè)務(wù)應(yīng)用通過調(diào)用物聯(lián)網(wǎng)平臺(tái)提供的API,實(shí)現(xiàn)設(shè)備數(shù)據(jù)采集、命令下發(fā)、設(shè)備管理等業(yè)務(wù)場景。

產(chǎn)品模型(Product Model),也稱物模型,用于描述設(shè)備具備的能力和特性。開發(fā)者通過定義產(chǎn)品模型,在物聯(lián)網(wǎng)平臺(tái)構(gòu)建一款設(shè)備的抽象模型,使平臺(tái)理解該款設(shè)備支持的服務(wù)、屬性、命令等信息。

設(shè)備注冊(cè)

進(jìn)入到設(shè)備管理的設(shè)備注冊(cè)頁面,點(diǎn)擊右上角的創(chuàng)建按鈕。

在彈出框里選擇產(chǎn)品模型,輸入設(shè)備識(shí)別碼,點(diǎn)擊確定按鈕。

創(chuàng)建成功,系統(tǒng)會(huì)自動(dòng)生成秘鑰。

硬件端開發(fā)

Ruff 是一個(gè)支持 JavaScript 開發(fā)應(yīng)用的物聯(lián)網(wǎng)操作系統(tǒng),為軟件開發(fā)者提供開放、高效、敏捷的物聯(lián)網(wǎng)應(yīng)用開發(fā)平臺(tái),讓 IoT 應(yīng)用開發(fā)更簡單。

整個(gè) Ruff 開發(fā)體系包括 Ruff OS、Ruff SDK、Ruff 軟件倉庫、Ruff Kit 開發(fā)套件。只要您有JavaScript開發(fā)經(jīng)驗(yàn),就可以用 Ruff 開發(fā)硬件應(yīng)用。

傳感器驅(qū)動(dòng)程序

傳感器硬件接線

設(shè)備端程序結(jié)構(gòu)

讀取溫濕度和空氣質(zhì)量傳感器數(shù)據(jù):

// 空氣質(zhì)量數(shù)據(jù)$('#air').on('aqi', function(error, pm25, pm10) {    if (error) return;        reported.pm25 = pm25;    reported.pm10 = pm10;});// 溫度數(shù)據(jù)$('#dht').getTemperature(function(error, temperature) {      if (!error) {        reported.temperature = temperature;    }});// 濕度數(shù)據(jù)$('#dht').getRelativeHumidity(function(error, humidity) {    if (!error) {        reported.humidity = humidity;    }});

上報(bào)數(shù)據(jù)到 /huawei/v1/devices/{deviceId}/data/json

var topic = `/huawei/v1/devices/${options.deviceId}/data/json`var postJson = {    msgType: "deviceReq",    data: [{            serviceId: "postData",            serviceData: {                model: 'Ruff',                sdk: '0.02',                Node_Version: 8,               temperature:  sensor.temperature,               humidity:sensor.humidity,               co2: sensor.co2,               hcho: sensor.hcho,               pm25: sensor.pm25,               pm10: sensorpm10.            }        }
    ]}client.publish(topic, JSON.stringify(postJson))

查看傳感器上云實(shí)時(shí)數(shù)據(jù)

IoT 數(shù)據(jù)分析

配置數(shù)據(jù)源

實(shí)測點(diǎn)數(shù)據(jù)綁定傳感器

配置虛測點(diǎn)為多個(gè)房間溫度的平均溫度

正式發(fā)布后,我們就可以實(shí)時(shí)監(jiān)控各個(gè)房間的環(huán)境傳感器數(shù)據(jù)變化和平均值了。

如有需求,請(qǐng)聯(lián)系小編:? beacon0418

相關(guān)推薦

電子產(chǎn)業(yè)圖譜