在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>建立一個(gè)網(wǎng)狀連接的家庭項(xiàng)目

建立一個(gè)網(wǎng)狀連接的家庭項(xiàng)目

2023-06-30 | zip | 3.23 MB | 次下載 | 免費(fèi)

資料介紹

描述

計(jì)劃是什么?

該計(jì)劃是建立一個(gè)網(wǎng)狀連接的家庭項(xiàng)目。

艦隊(duì)由什么組成?

我將從Particle Ultimate Mesh Bundle開始,并根據(jù)需要添加盡可能多的節(jié)點(diǎn):

?
poYBAGN-udSAUgd3AADvbs6_O8Y359.png
多么有用的捆綁!
?

粒子網(wǎng)格設(shè)備介紹

2020 年 1 月更新:Particle 已在其所有第三代設(shè)備中停止使用 Mesh 協(xié)議。你可以在這里閱讀公告

如果您還不知道 Particle 的第三代開發(fā)套件 Particle Mesh 是什么,那么您就錯(cuò)過(guò)了。立即在他們的網(wǎng)站上閱讀更多內(nèi)容

David Scheltema在他的帖子中很好地描述了它

另外,讓我從Jeffrey Lee 的帖子“復(fù)制粘貼”一些話(感謝Julien向我介紹了這個(gè)詞,不能停止使用它):

什么是無(wú)線網(wǎng)狀網(wǎng)絡(luò)

無(wú)線網(wǎng)狀網(wǎng)絡(luò)是彼此無(wú)線連接的節(jié)點(diǎn)(網(wǎng)狀拓?fù)洌┑幕A(chǔ)設(shè)施。這些節(jié)點(diǎn)相互捎帶以擴(kuò)展無(wú)線電信號(hào)(如 Wi-Fi 或蜂窩連接)來(lái)路由、中繼和代理進(jìn)出客戶端的流量。每個(gè)節(jié)點(diǎn)都將無(wú)線電信號(hào)傳播得比上一個(gè)節(jié)點(diǎn)更遠(yuǎn)一些,從而最大限度地減少死區(qū)的可能性。

好處

應(yīng)該注意的是,并非所有無(wú)線網(wǎng)狀網(wǎng)絡(luò)解決方案都提供這些優(yōu)勢(shì),但這是 Thread 和 Particle Mesh 獨(dú)有的完整列表。

  • 無(wú)單點(diǎn)故障——構(gòu)建一個(gè)可自我修復(fù)的本地網(wǎng)狀網(wǎng)絡(luò)——如果單個(gè)設(shè)備離線,網(wǎng)絡(luò)可以將自身重新配置為最近的連接。這意味著沒有數(shù)據(jù)丟失,沒有死區(qū),沒有問(wèn)題。
  • 自擴(kuò)展——此外,如果您需要從網(wǎng)狀系統(tǒng)中獲得更多范圍,您可以添加另一個(gè)節(jié)點(diǎn),并且消息可以通過(guò)網(wǎng)狀網(wǎng)絡(luò)跳回網(wǎng)關(guān)。
  • 可靠的網(wǎng)絡(luò)——互連的設(shè)備可以同時(shí)流暢地傳輸數(shù)據(jù),不會(huì)使網(wǎng)絡(luò)連接復(fù)雜化。如果一個(gè)節(jié)點(diǎn)出現(xiàn)故障,附近的另一個(gè)節(jié)點(diǎn)可以接起連接并繼續(xù)數(shù)據(jù)通信
  • 低成本、低功耗——使用無(wú)線網(wǎng)狀網(wǎng)絡(luò)消除了在設(shè)施之間安裝光纖/電線的成本和復(fù)雜性。隨著需要或多或少的覆蓋范圍,可以添加或刪除無(wú)線網(wǎng)狀節(jié)點(diǎn)。Mesh 使用與藍(lán)牙相當(dāng)?shù)哪芰浚虼四梢栽O(shè)計(jì)可以使用 3-5 年然后被丟棄和更換的設(shè)備。

感謝 Jeffrey 和 David 的所有解釋!

粒子網(wǎng)格設(shè)備

使用 Particle,您可以擁有 WIFI(使用 Argon 開發(fā)套件)或蜂窩(Boron 開發(fā)套件)連接的網(wǎng)狀網(wǎng)絡(luò):

?
pYYBAGN-udaABMbAAAE315Yc9RY30.jpeg
WIFI 或蜂窩網(wǎng)狀網(wǎng)絡(luò)
?

都可以有不同的作用:

?
poYBAGN-udmAMWiGAABy5rubG1Y637.png
網(wǎng)格角色
?

我的艦隊(duì)

以下是我將使用的所有設(shè)備:

?
poYBAGN-uduAC21OAAGnb2qzDbg709.jpg
我的設(shè)備群
?

這就是我計(jì)劃為我的 Mesh Home 項(xiàng)目構(gòu)建的內(nèi)容:

  • 網(wǎng)狀恒溫器
  • 網(wǎng)狀溫度傳感器(我的恒溫器的遠(yuǎn)程溫度傳感器)
  • 網(wǎng)狀水池溫度監(jiān)測(cè)器
  • 網(wǎng)狀車庫(kù)開啟器
  • 網(wǎng)狀污水泵監(jiān)視器
  • 網(wǎng)狀漏水傳感器

先決條件

您需要首先將您的所有設(shè)備都?xì)w入您的 Particle 帳戶。如果您還沒有這樣做,請(qǐng)繼續(xù)這樣做。整個(gè)過(guò)程將花費(fèi)您幾個(gè)小時(shí),并在此處進(jìn)行了描述

作為記錄,我將我的所有設(shè)備都更新到了 Device OS 1.3.0-rc.1。

———————————————————————————————————————————————————————————————————————

第三代極簡(jiǎn)溫控器

這是我的極簡(jiǎn)恒溫器的新版本很難相信我最初的項(xiàng)目在過(guò)去三年半的時(shí)間里一直在家里不間斷地工作,24/7/365,很少中斷(也許我不得不重新設(shè)置兩次?)。

最初的項(xiàng)目是基于一個(gè) Particle Photon(一個(gè) WIFI 開發(fā)套件)和一個(gè)便宜的四繼電器板。這次我將使用Argon (支持網(wǎng)狀網(wǎng)絡(luò)的 WIFI 開發(fā)套件)和NCD 4 繼電器板我將使用DHT22來(lái)感應(yīng)溫度和濕度。

恒溫器:繼電器接線

與原始項(xiàng)目相同,將繼電器 1(下圖中的 R1)、繼電器 2 和繼電器 3 連接到 HVAC 電線。

我的 HVAC 使用 24 伏電壓,可以處理。

請(qǐng)檢查您是否使用更高的電壓。

如果是這種情況,您在接線時(shí)需要格外小心

任何超過(guò) 40 伏的電壓都可能對(duì)您的健康構(gòu)成威脅,因此:小心

?
pYYBAGN-ud2AdlUUAAB1WlIwL4Y943.jpg
暖通空調(diào)布線
?

恒溫器:連接溫度傳感器

我使用的傳感器是流行的DHT22 DHT22 是一種基本的低成本數(shù)字溫度和濕度傳感器它使用電容式濕度傳感器和熱敏電阻來(lái)測(cè)量周圍的空氣,并在數(shù)據(jù)引腳上輸出數(shù)字信號(hào)(不需要模擬輸入引腳)。它使用起來(lái)相當(dāng)簡(jiǎn)單,但需要謹(jǐn)慎的時(shí)間來(lái)獲取數(shù)據(jù)。該傳感器唯一真正的缺點(diǎn)是您每 2 秒只能從中獲取一次新數(shù)據(jù)。

連接如下:

DHT22 引腳 1 是氬氣上的 Vcc <==> 3v3

DHT pin2是Argon上的數(shù)據(jù)<==> D5

DHT pin 3 <==> 保持?jǐn)嚅_連接

DHT pin 4 <==> 連接到 Argon 上的 GND

不要忘記在數(shù)據(jù)引腳上添加一個(gè) 4.7K - 10K 電阻上拉到 Vcc。

注意:我使用的是相當(dāng)舊的 PietteTech 庫(kù),因?yàn)槲矣龅?/font>最新庫(kù)的問(wèn)題

恒溫器:放置溫度傳感器

我把我的放在以前不太聰明的恒溫器上:

?
poYBAGN-ud-AM_WeAAAoE8qEZ2U670.jpg
用 DHT22 玩捉迷藏
?

恒溫器:固件

我是有限狀態(tài)機(jī)(從現(xiàn)在開始為 FSM)的忠實(shí)粉絲,我現(xiàn)在幾乎在所有項(xiàng)目中都使用它們。次我不使用一個(gè),我以后后悔!

如果您不熟悉狀態(tài)機(jī)以及我們?nèi)绾卧?a href='http://www.xsypw.cn/soft/data/55-88/' target='_blank' class='arckwlink_none'>物聯(lián)網(wǎng)項(xiàng)目中使用它們,請(qǐng)查看我關(guān)于它們的文章。

現(xiàn)在對(duì)于固件,請(qǐng)使用Particle WorkBench 打開文件夾 minimumistThermostat。

我使用從 Arduino 移植的庫(kù)用于 FSM,加熱狀態(tài)如下所示:

?
poYBAGN-ueKAWDMkAAA3WBz0ddQ361.jpg
用于加熱的恒溫器狀態(tài)
?

冷卻狀態(tài)與這些相同。

這是全圖,請(qǐng)?jiān)徺|(zhì)量:

?
pYYBAGN-ueeAPhERAArW6RPVgOk812.jpg
恒溫器的所有狀態(tài)
?

您可以使用此布爾變量決定溫度使用的單位:

bool useFahrenheit = false;

溫控器:網(wǎng)狀連接

恒溫器將在我的家庭網(wǎng)狀網(wǎng)絡(luò)中扮演網(wǎng)關(guān)的角色。看到下圖中的氬氣了嗎?正是這個(gè)角色。

?
pYYBAGN-ueqAc75QAABt_43VICc80.jpeg
我的家庭網(wǎng)狀網(wǎng)絡(luò)設(shè)置
?

這意味著其他設(shè)備(Xenons)將通過(guò)網(wǎng)狀協(xié)議連接到 Argon。然后他們將通過(guò)氬氣連接到粒子云。

所以這里的氬氣充當(dāng)網(wǎng)狀網(wǎng)絡(luò)的網(wǎng)關(guān),同時(shí)也是極簡(jiǎn)恒溫器的大腦。

恒溫器:移動(dòng)應(yīng)用程序

為了從我的手機(jī)控制我的恒溫器,我將使用Blynk

Blynk 是一個(gè)與硬件無(wú)關(guān)的物聯(lián)網(wǎng)平臺(tái),具有白標(biāo)移動(dòng)應(yīng)用程序、私有云、設(shè)備管理、數(shù)據(jù)分析和機(jī)器學(xué)習(xí)

聽起來(lái)足夠強(qiáng)大?這是!這也是我最喜歡的將移動(dòng)應(yīng)用程序添加到我的個(gè)人項(xiàng)目的方式,包括這個(gè)。

使用 Blynk,您可以在幾分鐘內(nèi)設(shè)計(jì)拖放式漂亮的 IoT 應(yīng)用程序。您可以從各種預(yù)先設(shè)計(jì)的小部件中進(jìn)行選擇,以構(gòu)建用于控制電子設(shè)備、監(jiān)控傳感器數(shù)據(jù)、獲取通知等的原生 iOSAndroid 應(yīng)用程序。

?
poYBAGN-ue2AXpL6AAIGJ_z8_qY098.jpg
Blynk 小部件很棒
?

從世界任何地方控制您的硬件。

沒有比這更好的了!

這是我的移動(dòng)應(yīng)用程序:

?
poYBAGN-ufCAebRKAAFOpJK9mYw238.png
Blynk 移動(dòng)應(yīng)用程序
?

使用 Blynk 可以輕松共享移動(dòng)應(yīng)用程序,只需在設(shè)備上安裝 Blynk 后從內(nèi)部掃描此代碼:

?
pYYBAGN-ufOAAW3oAAFaNRPi2gI853.png
使用 Blynk 應(yīng)用程序掃描
?
———————————————————————————————————————————————————————————————————————

第三代網(wǎng)狀溫度傳感器

Minimalist Thermostat 的網(wǎng)狀遠(yuǎn)程溫度傳感器將基于 Particle Xenon 和 DS18B20。

溫度傳感器:接線

像 DS18B20 這樣的傳感器接線再簡(jiǎn)單不過(guò)了。這是數(shù)據(jù)表,以備不時(shí)之需。像這樣連接

DS18B20 GND 引腳 1 是 GND <==> Argon 上的 3v3

DS18B20 GND 引腳 2 是氬氣上的 DQ <==> D9

DS18B20 GND 引腳 3 是 Vdd <==> 氬氣上的 3v3

?
pYYBAGN-ufWAZsKpAAApJFebr78134.jpg
DS18B20 溫度傳感器
?

溫度傳感器:固件

請(qǐng)?jiān)?github 存儲(chǔ)庫(kù)的 tempSensor 文件夾下找到固件。我為這個(gè)網(wǎng)狀家庭項(xiàng)目的兩個(gè)組件使用相同的固件:這個(gè)遠(yuǎn)程傳感器和水池傳感器。請(qǐng)使用Particle WorkBench打開文件夾。

因此,在構(gòu)建固件之前,您需要使這些行看起來(lái)像這樣:

// #define SENSOR_POOL // thermistor  
#define SENSOR_DS18B20

您還可以使用此布爾變量(默認(rèn)為攝氏度)決定使用什么單位來(lái)表示溫度:

bool useFahrenheit = false;

保存更改、構(gòu)建和閃爍后,您就可以開始使用它了。

溫度傳感器:網(wǎng)狀連接

現(xiàn)在 Xenon 正在讀取溫度,我們?nèi)绾翁幚硭?/font>

我們將它發(fā)送到恒溫器,它也充當(dāng)網(wǎng)關(guān)。

請(qǐng)注意:信息可以通過(guò)網(wǎng)關(guān)一路到達(dá)粒子云,無(wú)需我們做任何事情。在這種情況下,我們想要對(duì)它進(jìn)行操作,或者在移動(dòng)應(yīng)用程序上顯示它,因此我們通過(guò)網(wǎng)格協(xié)議將它發(fā)送到這個(gè)網(wǎng)格節(jié)點(diǎn) Argon。

Xenon 上的代碼是使用 Mesh.publish 的簡(jiǎn)單行:

Mesh.publish(MESH_EVENT_DS18B20, the_temperature_reading);

現(xiàn)在在接收端,我們需要使用 Mesh.subscribe。我們?cè)?setup() 函數(shù)上設(shè)置訂閱(每次設(shè)備啟動(dòng)時(shí)都會(huì)運(yùn)行):

void setup()  
{  
 Mesh.subscribe(MESH_EVENT_DS18B20, meshTempSensorHandler);  
}

我們只是設(shè)置了一個(gè)處理函數(shù),稱為 meshTempSensorHandler(),所以該函數(shù)的代碼如下所示:

double meshTempSensorCurrentTemp = -999;  
String meshTempSensorLastHeardOf = "Never";  
// enable the remote temperature sensor if on an argon  
#if PLATFORM_ID == PLATFORM_ARGON  
void meshTempSensorHandler(const char *event, const char *data)  
{  
 char tempChar[BUFFER] = "";  
  snprintf(tempChar, BUFFER, "event=%s data=%s", event, data ? data : "NULL");  
  Log.info(tempChar);  
  snprintf(tempChar, BUFFER, "%s", data ? data : "-999");  
  meshTempSensorCurrentTemp = atof(tempChar);  
  meshTempSensorLastHeardOf = Time.timeStr();  
#ifdef USE_BLYNK  
  Blynk.virtualWrite(BLYNK_DISPLAY_CURRENT_TEMP_REMOTE, meshTempSensorCurrentTemp);  
  Blynk.virtualWrite(BLYNK_DISPLAY_CURRENT_TEMP_REMOTE_LAST_HEARD_OF, meshTempSensorLastHeardOf);  
#endif  
}  
#endif

而已!

從網(wǎng)格上講,遠(yuǎn)程網(wǎng)格傳感器的溫度讀數(shù)在另一個(gè)節(jié)點(diǎn)上可用(在這種情況下是網(wǎng)關(guān)節(jié)點(diǎn),但任何節(jié)點(diǎn)都可以訂閱該信息或主題)。

現(xiàn)在變量meshTempSensorCurrentTemp 包含溫度,我添加了meshTempSensorLastHeardOf,這是我們每次從該節(jié)點(diǎn)接收信息的時(shí)間戳。這可以幫助我們判斷節(jié)點(diǎn)是否處于活動(dòng)狀態(tài),或者即使讀數(shù)是最近的。

溫度傳感器:移動(dòng)應(yīng)用程序

為了在移動(dòng)應(yīng)用程序上顯示傳感器的信息,我在 Blynk 庫(kù)中添加了幾個(gè)對(duì) virtualWrite() 函數(shù)的調(diào)用。這是向應(yīng)用程序發(fā)送信息的 Blynk 方式。

以下是執(zhí)行此操作的行:

#ifdef USE_BLYNK  
  
  Blynk.virtualWrite(BLYNK_DISPLAY_CURRENT_TEMP_REMOTE, meshTempSensorCurrentTemp);  
  
  Blynk.virtualWrite(BLYNK_DISPLAY_CURRENT_TEMP_REMOTE_LAST_HEARD_OF, meshTempSensorLastHeardOf);  
  
#endif

以下是應(yīng)用程序恒溫器選項(xiàng)卡上的信息:

?
poYBAGN-ufiAbKmqAAF89xVFNKY956.png
紅色塊顯示 Blynk 移動(dòng)應(yīng)用程序上的網(wǎng)格溫度讀數(shù)
?

溫度傳感器:節(jié)點(diǎn)外

請(qǐng)記住,一旦您擁有一個(gè)像這種遠(yuǎn)程傳感器這樣的節(jié)點(diǎn),再擁有更多并且您需要或喜歡的節(jié)點(diǎn)是微不足道的。需要更改第二個(gè)遠(yuǎn)程傳感器的網(wǎng)格事件名稱。這是關(guān)鍵:

Mesh.publish(MESH_EVENT_DS18B20_SENSOR_X, the_temperature_reading);

在我們的例子中,MESH_EVENT_DS18B20_SENSOR_X 是事件節(jié)點(diǎn)。您使用 X、Y、Z 等事件名稱設(shè)置額外節(jié)點(diǎn),并修改網(wǎng)關(guān)節(jié)點(diǎn)上的訂閱處理程序。在 Blynk 移動(dòng)應(yīng)用程序上進(jìn)行一些工作以呈現(xiàn)這些新信息,僅此而已!

———————————————————————————————————————————————————————————————————————

第三代網(wǎng)狀池溫度傳感器

這將是我這里的泳池溫度監(jiān)視器的翻版

盡管如此,百萬(wàn)美元的問(wèn)題是:水的溫度是多少?

這可以通過(guò)氙氣、電阻器和熱敏電阻來(lái)解決。

你有很多選擇,這里有兩個(gè):

?
?
?
?
poYBAGN-ufuAfNAiAAHqiJ2zVAo286.jpg
?
1 / 2 ?簡(jiǎn)單的熱敏電阻
?

簡(jiǎn)單的熱敏電阻就是這個(gè)。更堅(jiān)固的是這個(gè)

請(qǐng)注意,由于簡(jiǎn)單的熱敏電阻(10K 精密環(huán)氧樹脂熱敏電阻 - 3950 NTC )并非制造用于直接與水接觸,因此傳感器的使用壽命約為兩個(gè)夏天。之后,傳感器將停止工作,讀數(shù)將不再有意義。更強(qiáng)大的將持續(xù)你的游泳池的整個(gè)生命。

水池溫度傳感器:接線

連接是這樣的:

10k 電阻在 Argon 上介于 3v3 和 A0 之間

熱敏電阻在 Argon 上的 A0 和 GND 之間

?
pYYBAGN-uf2AQffGAABBf0nk4Zk330.png
池?zé)崦綦娮柽B接
?

溫度傳感器:固件

請(qǐng)?jiān)?github 存儲(chǔ)庫(kù)的 tempSensor 文件夾下找到固件。我為這個(gè)網(wǎng)狀家庭項(xiàng)目的兩個(gè)組件使用相同的固件:遠(yuǎn)程傳感器和水池傳感器。您可以使用Particle WorkBench打開該文件夾。

因此,在構(gòu)建固件之前,您需要使這些行看起來(lái)像這樣:

#define SENSOR_POOL // thermistor  
// #define SENSOR_DS18B20

您還可以使用此布爾變量(默認(rèn)為攝氏度)決定使用什么單位來(lái)表示溫度:

bool useFahrenheit = false;

保存您的更改、構(gòu)建和閃存,您就可以開始了。

水池溫度傳感器:網(wǎng)狀連接

與之前的傳感器相同,Xenon 上的代碼使用 Mesh.publish:

Mesh.publish(MESH_EVENT_POOL, the_temperature_of_the_pool);

現(xiàn)在在接收端,我們需要使用 Mesh.subscribe。我們?cè)?setup() 函數(shù)上設(shè)置訂閱(每次設(shè)備啟動(dòng)時(shí)都會(huì)運(yùn)行):

void setup()  
{  
 Mesh.subscribe(MESH_EVENT_POOL, meshTempSensorPoolHandler);  
}

在接收端,看起來(lái)與之前的傳感器幾乎相同,只是處理程序稱為meshTempSensorPoolHandler()

水池溫度傳感器:移動(dòng)應(yīng)用

我在 Blynk 移動(dòng)應(yīng)用上添加了一個(gè)選項(xiàng)卡:

?
poYBAGN-ugCAQP9bAAC2XNzx11g172.png
今天是炎熱的一天!
?

水池溫度傳感器:額外節(jié)點(diǎn)

你也有水療中心來(lái)監(jiān)控嗎?遵循與上一節(jié)中遠(yuǎn)程溫度傳感器的額外節(jié)點(diǎn)相同的思路。

———————————————————————————————————————————————————————————————————————

第三代車庫(kù)開門機(jī)

這是對(duì)我的Garage Commander的完全重寫在這個(gè)版本中,我使用FSM來(lái)跟蹤車庫(kù)的狀態(tài)。

下面是對(duì) FSM 狀態(tài)的描述:

?
pYYBAGN-ugWAWttXAAxayjSD68M005.jpg
車庫(kù) FSM
?

車庫(kù)開啟器:接線

您將需要兩個(gè)像這樣的磁簧開關(guān)這是我的一張照片:

?
poYBAGN-ug2Ab1Y-ABHDZcHvHRI896.jpg
磁簧開關(guān)
?

一旦位于戰(zhàn)略位置,這些簧片開關(guān)將告訴氙氣車庫(kù)是打開還是關(guān)閉。

我把感應(yīng)關(guān)閉位置的那個(gè)放在車庫(kù)門的頂部,你可以在那里看到:

?
pYYBAGN-uhOAUP-cAA8V89DGm_s768.jpg
將關(guān)閉的簧片傳感器開關(guān)放在車庫(kù)門的頂部
?

我將感應(yīng)打開位置的那個(gè)放在車庫(kù)開啟器的導(dǎo)軌下:

?
poYBAGN-uheAY8uHAAcTMg9ISbU416.jpg
打開的開關(guān)可以在導(dǎo)軌下
?

您可以為您和您的車庫(kù)門選擇最方便的位置。

安裝后,將關(guān)閉傳感器簧片開關(guān)連接到 D2 和 GND,將打開傳感器連接到 Argon 上的 D1 和 GND。

這就是傳感器。

現(xiàn)在要讓Xenon移動(dòng)門,您需要找到按鈕板連接到主機(jī)的位置。它看起來(lái)像這樣:

?
poYBAGN-uiKADc_bABilG8NAn8c908.jpg
右上角是我們的繼電器與更多車庫(kù)門的連接(在我的車庫(kù)單元上!)
?

將那個(gè)連接到我們將在項(xiàng)目的這一部分中使用的featherWing 功率繼電器。

提示:如果您將這些連接器短路,車庫(kù)門將會(huì)移動(dòng)。當(dāng)心!

我使用了 FeatherWing 三聯(lián)器,因?yàn)槲矣幸粋€(gè)方便的,但如果你愿意,你可以使用雙聯(lián)

?
poYBAGN-uiqAFq1nABL0-amZ_Vo703.jpg
FeatherWing 格式非常實(shí)用!
?

車庫(kù)開啟器:固件

是時(shí)候刷固件了!您可以在 meshGarage 文件夾下找到它。請(qǐng)使用Particle WorkBench打開文件夾

車庫(kù)開啟器:網(wǎng)狀連接

對(duì)于車庫(kù)開啟器,我們有不同的情況。以前的遠(yuǎn)程傳感器向網(wǎng)關(guān)發(fā)送信息,以便在移動(dòng)應(yīng)用程序上顯示溫度。現(xiàn)在,為了從移動(dòng)應(yīng)用程序控制車庫(kù),我們需要設(shè)置一個(gè)類似的發(fā)布-訂閱網(wǎng)格機(jī)制,但反過(guò)來(lái)。

車庫(kù)開啟器:移動(dòng)應(yīng)用程序

?
pYYBAGN-uiyANnYgAAC8LXCuS6c151.png
車庫(kù)開啟器的 Blynk 標(biāo)簽
?

車庫(kù)開啟器:額外的節(jié)點(diǎn)

你有雙車庫(kù)還是三車庫(kù)?按照上面遠(yuǎn)程溫度傳感器的相同說(shuō)明添加一個(gè)額外的網(wǎng)格節(jié)點(diǎn)!

———————————————————————————————————————————————————————————————————————

第三代漏水傳感器

這是我的漏水傳感器的翻版。但是,與原始項(xiàng)目不同,使用 Particle Mesh 很容易添加我們需要的任意數(shù)量的節(jié)點(diǎn)。只需復(fù)制傳感器,修改一下事件名稱,瞧!很快您的地下室、廚柜、浴室和熱水器都得到保護(hù),不會(huì)漏水。

這是我在這個(gè)版本上使用的漏水傳感器:

?
poYBAGN-ujOAZWwHABE3TFvx4sY027.jpg
漏水傳感器
?

漏水傳感器:接線

該電路受到了這里的污水泵監(jiān)控項(xiàng)目這里的電路的強(qiáng)烈啟發(fā)

示意圖如下所示:

?
poYBAGN-ujqALQxpAA9k81HxjIs867.jpg
漏水傳感器示意圖
?

晶體管是 MPSA13 晶體管(達(dá)林頓對(duì))。

?
?
?
?
poYBAGN-ukKAPFFJABJspel9jIY337.jpg
?
1 / 2 ?滾動(dòng)到一側(cè)查看特寫照片
?

漏水傳感器:固件

在 meshWaterLeakSensor 文件夾下找到該項(xiàng)目節(jié)點(diǎn)的固件。

漏水傳感器:網(wǎng)狀連接

與其他節(jié)點(diǎn)的處理相同。網(wǎng)格節(jié)點(diǎn)上的事件是:

Mesh.publish(MESH_EVENT_WATER_LEAK_SENSOR, waterLeakState);

然后,事件處理程序在網(wǎng)關(guān)節(jié)點(diǎn)(恒溫器)上接收該信息:

Mesh.subscribe(MESH_EVENT_WATER_LEAK_SENSOR, meshWaterLeakSensorHandler);

并由處理函數(shù)本身照顧:

String meshWaterLeakSensorState = "Unknown";  
  
String meshWaterLeakSensorLastHeardOf = "Never";  
  
// enable the remote temperature sensor for the pool if on an argon  
  
#if PLATFORM_ID == PLATFORM_ARGON  
  
void meshWaterLeakSensorHandler(const char *event, const char *data){  
  
 char tempChar[BUFFER] = "";  
  snprintf(tempChar, BUFFER, "event=%s data=%s", event, data ? data : "NULL");  
  
  Log.info(tempChar);  
  
  snprintf(tempChar, BUFFER, "%s", data ? data : "Unknown");  
  
  meshWaterLeakSensorState = tempChar;  
  
  meshWaterLeakSensorLastHeardOf = Time.timeStr();  
  
#ifdef USE_BLYNK  
  
  Blynk.virtualWrite(BLYNK_DISPLAY_WATER_LEAK_SENSOR, meshWaterLeakSensorState);  
  
  Blynk.virtualWrite(BLYNK_DISPLAY_WATER_LEAK_SENSOR_LAST_HEARD_OF, meshWaterLeakSensorLastHeardOf);  
  
#endif  
  
}  
  
#endif

漏水傳感器:移動(dòng)應(yīng)用

我只需要在精彩的 Blynk 移動(dòng)應(yīng)用上添加一個(gè)標(biāo)簽:

?
pYYBAGN-ukWAKY7gAACtp9wUxAM785.png
Blynk 移動(dòng)應(yīng)用程序上的漏水傳感器選項(xiàng)卡
?

當(dāng)傳感器檢測(cè)到水時(shí),它會(huì)進(jìn)入 30 秒的過(guò)渡狀態(tài),然后進(jìn)入警報(bào)狀態(tài)(如果情況仍然存在):

?
poYBAGN-ukiACVOpAACimjicfM4370.png
不受歡迎的情況!
?

漏水傳感器:節(jié)外

你有更多的地方來(lái)監(jiān)測(cè)漏水嗎?重復(fù)此處的步驟,更改事件名稱,修改 Blynk 應(yīng)用程序,就是這樣!

———————————————————————————————————————————————————————————————————————

第三代污水??泵監(jiān)控器

前段時(shí)間我為朋友開發(fā)了一個(gè)污水泵監(jiān)控項(xiàng)目,并決定將具有此特性或功能的支持網(wǎng)格的節(jié)點(diǎn)添加到我的網(wǎng)格家庭項(xiàng)目中。

污水泵監(jiān)控器由兩個(gè)水傳感器組成,用于讀取水位是否過(guò)高。第一級(jí)將系統(tǒng)的狀態(tài)設(shè)置為高水位報(bào)警狀態(tài)(基本上,你有麻煩了),然后如果水到達(dá)第二個(gè)傳感器,系統(tǒng)進(jìn)入非常高水位報(bào)警狀態(tài)(這次你是深陷困境)。

這是一個(gè)示意圖:

?
pYYBAGN-uk2AKRRBAAlNOH1SZF0130.jpg
現(xiàn)在更清楚了嗎?
?

請(qǐng)注意,我們計(jì)劃使用三個(gè)傳感器,但最終使用了兩個(gè)。

這些是使用的傳感器

?
pYYBAGN-uleADPcuABx-nAcOVmM839.jpg
我們可以將相同的用于漏水傳感器
?

污水泵監(jiān)控傳感器:接線

電路與漏水傳感器相同,只是兩次:

poYBAGN-ulqALz-tAACXMFFdUUs519.jpg
加倍這個(gè)!
?

將高水位傳感器連接到 D1,將超高水位傳感器連接到氙氣燈上的 D2。

晶體管是 MPSA13 晶體管(達(dá)林頓對(duì))。

污水泵監(jiān)控傳感器:固件

使用 Particle Workbench 打開 meshSumpPump 文件夾,快閃,盡情享受吧!

污水泵監(jiān)控傳感器:網(wǎng)狀連接

污水泵節(jié)點(diǎn)發(fā)布的事件是這樣的:

#define MESH_EVENT_SUMP_PUMP "meshSumpPump"

網(wǎng)關(guān)上的代碼:

/************************************************************  
  
sump pump sensors  
  
*************************************************************/  
  
String meshSumpPumpState = "Unknown";  
  
String meshSumpPumpLastHeardOf = "Never";  
  
// enable the remote temperature sensor for the pool if on an argon  
  
#if PLATFORM_ID == PLATFORM_ARGON  
  
void meshSumpPumpHandler(const char *event, const char *data){  
  
 char tempChar[BUFFER] = "";  
  
  snprintf(tempChar, BUFFER, "event=%s data=%s", event, data ? data : "NULL");  
  
  Log.info(tempChar);  
  
  snprintf(tempChar, BUFFER, "%s", data ? data : "Unknown");  
  
  meshSumpPumpState = tempChar;  
  
  meshSumpPumpLastHeardOf = Time.timeStr();  
  
#ifdef USE_BLYNK  
  
  Blynk.virtualWrite(BLYNK_DISPLAY_SUMP_PUMP, meshSumpPumpState);  
  
  Blynk.virtualWrite(BLYNK_DISPLAY_SUMP_PUMP_LAST_HEARD_OF, meshSumpPumpLastHeardOf);  
  
#endif  
  
}  
  
#endif

污水泵監(jiān)控傳感器:移動(dòng)應(yīng)用

移動(dòng)應(yīng)用程序的另一個(gè)標(biāo)簽!!!

?
poYBAGN-ul2AZgntAACY76HQZ5c933.png
污水泵沒問(wèn)題
?

現(xiàn)在如果水上升,系統(tǒng)進(jìn)入過(guò)渡狀態(tài) 30 秒:

?
pYYBAGN-ul-AV90eAAC3qYE0mlc564.png
似乎有些不對(duì)勁
?

如果水沒有下降:

?
pYYBAGN-umGAcwvDAAC2vn_elBw864.png
麻煩:快到那里!
?

如果水繼續(xù)上漲:

?
pYYBAGN-umSAIQmzAAC8led4xBg343.png
你太遲了!
?
———————————————————————————————————————————————————————————————————————

第三代蜂窩連接溫濕度傳感器

那么如何處理捆綁包中的硼呢?

好吧,讓我們將它用于遠(yuǎn)程溫度傳感器!

接線與上面恒溫器上的 DHT22 相同。

使用 Particle Workbench 打開 tempSensor 代碼。

但在刷機(jī)之前,請(qǐng)?jiān)诠碳姓{(diào)整這些行:

// #define SENSOR_POOL // thermistor  
// #define SENSOR_DS18B20  
#define SENSOR_DHT22

這樣,固件將為 DHT22 傳感器編譯。現(xiàn)在您已準(zhǔn)備好在任何您想要的地方閃爍和安裝這個(gè)蜂窩連接的溫度傳感器!

我將把它安裝在我的車上:

?
poYBAGN-umuANkBTABAdX30cpjs146.jpg
使用 DHT22 的蜂窩連接溫度和濕度傳感器
?
———————————————————————————————————————————————————————————————————————

結(jié)論

通過(guò)構(gòu)建這個(gè)雄心勃勃的項(xiàng)目,我發(fā)現(xiàn)的一件事是,使用網(wǎng)狀節(jié)點(diǎn),您可以毫不費(fèi)力地進(jìn)行復(fù)制,并為您的網(wǎng)狀連接家庭設(shè)備的組件增加成本。

故障排除

如果您的項(xiàng)目卡在初始化狀態(tài),請(qǐng)檢查 Blynk 配置。我發(fā)現(xiàn)如果我沒有正確配置 Blynk(例如:身份驗(yàn)證令牌無(wú)效),整個(gè)項(xiàng)目甚至都不會(huì)開始運(yùn)行!

如果您不打算使用 Blynk,請(qǐng)通過(guò)更改此行來(lái)停用它:

#define USE_BLYNK

所以它最終看起來(lái)像這樣:

// #define USE_BLYNK

需要幫忙?

如果您的項(xiàng)目需要專業(yè)幫助,請(qǐng)隨時(shí)通過(guò) gusgonnet@gmail.com 給我寫信。謝謝!


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)
主站蜘蛛池模板: 亚洲综合在线一区| 高清视频一区| 婷婷六| 浓厚な接吻と肉体の交在线观看| 国产精品免费视频拍拍拍| 欧美特黄特色aaa大片免费看| 亚洲一区二区中文字5566| 色老头影视| 永久手机看片福利盒子| 免费在线公开视频| 色婷婷一区| 午夜影剧院| 日本卡一卡2卡3卡4精品卡无人区| 日韩精品一级a毛片| 天天透天天操| 欧美一区高清| 久久久噜噜噜| 国产福利午夜自产拍视频在线| 亚洲欧美婷婷| 成人网在线视频| 4438x成人全国| 欧美视频在线观在线看| 四虎在线最新地址公告| bt天堂资源| 亚洲码欧美码一区二区三区| 欧美成人 一区二区三区| 欧美成人免费观看bbb| 一级黄色免费毛片| a级网站| 视频一区在线观看| 免费一级欧美片在线观免看| 久久久精品免费观看| 亚洲国产成人va在线观看| 丁香婷婷久久| 在线观看日本免费不卡| 免费视频你懂得| 干干干日日日| 四虎在线观看一区二区| 天天操天天噜| 亚洲国产欧美精品一区二区三区 | 天堂资源在线中文|