資料介紹
描述
我正計劃構(gòu)建一個廉價的家庭自動化系統(tǒng)。我希望這是一個模塊化系統(tǒng),這樣我就可以不斷地向其中添加傳感器和設(shè)備,而無需進行太多更改。WARAN(Windows IoT、A zure、R aspberry Pi、A rduino、N RF24L01+)是一個模塊化的家庭自動化系統(tǒng),由一個 Hub 和多個模塊組成。該模塊將結(jié)合微控制器和傳感器,從房屋的不同位置收集數(shù)據(jù),并通過射頻將數(shù)據(jù)傳輸?shù)郊€器。集線器和模塊之間的所有通信都通過 RF 進行。Hub 還將有一個配套的 Windows Phone 應(yīng)用程序。這是一個解釋設(shè)置的簡單流程圖。
為什么選擇 Windows 物聯(lián)網(wǎng)?
我是一名軟件開發(fā)人員,目前正在涉足 IoT。憑借我之前使用 XAML/C# 和 Visual Studio(我認為這是有史以來最好的 IDE)的經(jīng)驗,這對我快速實現(xiàn)這些非常有幫助。
為什么是 NRF24L01+?
當(dāng)我研究無線選項時,NRF24L01+ 是一種廉價且低功耗的解決方案。有了一些非常強大的庫,它為我提供了最佳解決方案。
為什么選擇 Windows Azure
Windows Azure 非常容易學(xué)習(xí)和適應(yīng)。由于啟動服務(wù)所需的配置很少,我們可以更多地關(guān)注開發(fā)而不是配置和部署。我之前使用 Azure 的經(jīng)驗幫助我快速集成。
樞紐
Hub是WARAN的一個中央控制中心。它由 RPI2、Arduino Uno 和 nRF24L01+ 組成。RPI2 運行 Windows IoT Core。它運行一個通用應(yīng)用程序作為控制中心。集線器將連接到一個大顯示器(通常是電視或監(jiān)視器),通過它我們可以看到來自模塊的數(shù)據(jù)并控制模塊。連接到 RPI2 的鍵盤和鼠標(biāo)將有助于從控制中心添加、刪除模塊。這是它的電路圖(參考項目中的 WARAN.Hub.fzz. 文件)?
它是如何運作的?
每個模塊都有一個唯一的地址,集線器使用該地址與其通信。我們將使用此地址向控制中心添加一個模塊,并為該模塊命名。添加后,控制中心(通用應(yīng)用程序)將通過 I2C 向 Arduino Uno 發(fā)送數(shù)據(jù)。Arduino Uno 將通過 nRF24L01+ 向模塊發(fā)送數(shù)據(jù),模塊從傳感器讀取數(shù)據(jù)或根據(jù)接收到的數(shù)據(jù)啟動/停止設(shè)備,并將數(shù)據(jù)發(fā)送回 Arduino Uno。Arduino Uno 將通過 I2C 將數(shù)據(jù)發(fā)送到控制中心。這些數(shù)據(jù)將顯示在電視/顯示器中,并發(fā)送到云端。Arduino Uno 將充當(dāng) RPI2 的接口,以從其他模塊獲取傳感器數(shù)據(jù)。上面的過程會在三種情況下發(fā)生
- 在特定的時間間隔取決于模塊
- 當(dāng)用戶與控制中心交互時(通過鼠標(biāo)/鍵盤)
- 當(dāng)從云端發(fā)送觸發(fā)器時(針對 PubNub)
這是一個典型的流程
這就是集線器中的組件和模塊之間的交互方式。
控制中心
控制中心是在 RPI2 中運行的通用應(yīng)用程序。控制中心是用戶交互的界面。它與模塊通信,也與云通信。WARAN 控制中心利用 Azure 移動服務(wù)和 PubNub 作為其云后端。我們添加的每個模塊信息都將本地存儲在 sqlite db 中,并發(fā)送到 azure 移動服務(wù)。這將依次向移動應(yīng)用程序發(fā)送 PubNub 消息或推送通知。我不想在這里解釋編碼部分,讓這篇文章變得一團糟。項目源代碼、文檔和部署細節(jié)可以在?https://bitbucket.org/arjunganesan/waran中找到?(我正在全面更新文檔,很快就會完成)。這就是控制中心的工作方式
移動應(yīng)用程序
移動應(yīng)用程序是一個 Windows Phone 應(yīng)用程序(稍后將針對其他平臺開發(fā)),它將作為中心的配套應(yīng)用程序。我們可以在世界任何地方的移動設(shè)備中看到所有與傳感器相關(guān)的數(shù)據(jù)。如果從模塊獲得任何重要信息(例如氣體泄漏監(jiān)測模塊的氣體泄漏警報),我們也會收到推送通知。我們也可以從手機本身觸發(fā)模塊上的一些動作(比如在植物飲水器模塊上啟動泵)。由于所有這些都是通過云發(fā)生的,因此無需在集線器附近的任何地方放置移動設(shè)備即可執(zhí)行所有這些操作。
這是移動應(yīng)用程序的外觀
?
模塊
該模塊是協(xié)同工作的組件組合,通過 RF 與 Hub 接收和發(fā)送數(shù)據(jù)。它可以是 Arduino Pro Mini 與傳感器或 RPI2 與傳感器等的組合。它需要做的就是通過 RF 從集線器接收數(shù)據(jù)/命令并做出適當(dāng)?shù)捻憫?yīng)。這為模塊提供了無限的可能性。首先我要添加 2 個模塊
- 植物飲水器
- 溫度監(jiān)控器
警告:這里的所有模塊都可以配置為使用繼電器控制電氣設(shè)備。但是我沒有處理這些的經(jīng)驗,所以我不想介入危險區(qū)域,所以我還沒有在我的項目中使用它。那些在處理繼電器方面有豐富經(jīng)驗的人請隨意擴展電路,其他人如果想在其中工作,請采取適當(dāng)?shù)念A(yù)防措施。
植物飲水器
植物飲水器將監(jiān)測植物中的水位以及植物周圍環(huán)境的溫度。如果沒有足夠的水,則會向移動應(yīng)用程序發(fā)送警報。我們可以從任何地方通過移動應(yīng)用程序啟動泵。我們還可以將其配置為在水位低于閾值時自動啟動水泵。它由 Arduino Pro Mini、DHT11、土壤濕度計和 nRF24L01+ 組成。這是電路圖(參考項目中的PlantWaterer.fzz)
來自 9V 電池的電源進入 Arduino Pro Mini 的 RAW 引腳。arduino 中的內(nèi)置穩(wěn)壓器將在 Vcc 中提供 5V 輸出。我們將使用它來驅(qū)動 DHT11。我們還提供 9V 電源作為 3.3V 穩(wěn)壓器的輸入,我們將使用它為 nRF24L01+ 供電。濕度計的水位將在模擬引腳 A3 上讀取。DHT11 的溫度讀數(shù)將在數(shù)字引腳 6 中讀取。在數(shù)字引腳 5 中,我們將向晶體管或繼電器發(fā)送信號,我們使用它們來啟動停止泵。出于演示目的,我將使用直流泵并將晶體管用作開關(guān)。這是它的工作流程
我不希望電路保留在面包板上,所以我將它轉(zhuǎn)移到穿孔板上。我想保持緊湊,所以我這樣做了。您可以參考電路圖并提出自己的布局。
。
溫度監(jiān)控器
溫度監(jiān)控器將監(jiān)控房間(例如臥室)的溫度,并隨時發(fā)布溫度和濕度水平。我們還可以從集線器或移動設(shè)備打開/關(guān)閉或調(diào)整設(shè)備(恒溫器、交流電等)。為了演示,我將關(guān)閉/打開連接到 arduino 的 LED。該電路由Arduino Pro Mini、DHT11和nRF24L01+組成。下面是電路圖(參考工程中的TemperatureMonitor.fzz文件)
來自 9V 電池的電源進入 Arduino Pro Mini 的 RAW 引腳。arduino 中的內(nèi)置穩(wěn)壓器將在 Vcc 中提供 5V 輸出。我們將使用它來驅(qū)動 DHT11。我們還提供 9V 電源作為 3.3V 穩(wěn)壓器的輸入,我們將使用它為 nRF24L01+ 供電。DHT11 的溫度和濕度讀數(shù)將在數(shù)字引腳 5 中讀取。在引腳 6 中,我們將向晶體管或繼電器發(fā)送信號,我們使用它們開始停止設(shè)備(例如恒溫器、交流電等)。出于演示目的,我將使用 LED 燈來顯示設(shè)備的關(guān)閉/打開。這是它的工作流程??
以下是我將其放置在性能板上的方式。您可以根據(jù)電路圖提出自己的布局。
這是它的工作原理
已知的問題
- 電源 - 兩個模塊的電池會在幾個小時內(nèi)耗盡。需要找到一種高效的便攜式電源。我計劃在任何可能的模塊中使用 attiny 處理器代替 pro mini。它的功率效率會更高。我以前關(guān)于 attiny 的文章可以在這里找到。
- I2C 并發(fā) - 如果 RPI2 一次向 Arduino uno 發(fā)送 2 線請求,則其中一個失敗。我正在研究避免這種情況的方法,并嘗試實施重試機制。
- 單向通信——現(xiàn)在集線器發(fā)起一個請求,模塊響應(yīng)它。盡管這在許多情況下都很有效,但一些新模塊可能需要在集線器不發(fā)送請求的情況下將數(shù)據(jù)發(fā)送到集線器。
- 范圍 - 我將模塊放在隔壁房間并能夠正確接收數(shù)據(jù)。但是,如果您想增加范圍,請將集線器中的 nRF24L01 替換為具有外部天線的 NRF24L01+PA+LNA。
- 安全性——因為這是在由開發(fā)人員擁有的假設(shè)下開發(fā)的,所以我沒有添加任何身份驗證機制。如果需要,您可以利用 Azure 移動服務(wù)的身份服務(wù)將 Microsoft、FB、Twitter、Google 身份驗證集成到移動應(yīng)用程序和中心。
未來的計劃
我想把它作為一個開放平臺,供人們實現(xiàn)自己的家庭自動化系統(tǒng)。我將穩(wěn)定 Hub 和移動應(yīng)用程序。我想向該項目添加更多模塊。基于語音的命令和響應(yīng)也在路線圖中。現(xiàn)在我正在研究以下模塊
- 氣體泄漏傳感器
- 入侵探測器
- 設(shè)備控制器(例如咖啡機控制器、燈控制器等)
- 車庫門開啟器?
- 一些可穿戴模塊
- 沒有硬件的互聯(lián)網(wǎng)服務(wù)(天氣、Azure 邏輯應(yīng)用程序、股票報告等)
- 在集線器范圍之外工作并通過互聯(lián)網(wǎng)與其通信的模塊(例如汽車追蹤器、寵物追蹤器、計步器等)
所有這些模塊組合在一起并通過集線器作為一個單元工作,將為我提供我一直想要擁有的家庭自動化系統(tǒng)。我將繼續(xù)在 hackster 中將新模塊作為單獨的項目添加。歡迎大家添加新模塊和擴展。將更新有關(guān)如何向項目添加新模塊的 wiki 頁面。
- 如何構(gòu)建一個簡單的家庭自動化
- 如何構(gòu)建藍牙控制的家庭自動化
- 樹莓派家庭自動化開源
- Kindbot:家庭花園自動化中心開源
- 自動化系統(tǒng)開源硬件
- 使用Arduino和藍牙模塊構(gòu)建家庭自動化設(shè)備
- 綜合家庭自動化系統(tǒng)
- 家庭自動化開源案例
- 家庭自動化系統(tǒng)開源分享
- 家庭自動化能源測量系統(tǒng)
- 多功能自動化系統(tǒng)開源分享
- 使用Arduino構(gòu)建自己的家庭自動化系統(tǒng)
- 家庭自動化開源分享
- PCB家庭自動化開源分享
- 現(xiàn)代家庭自動化遙控系統(tǒng)電路圖
- 自動化設(shè)備的伺服電機選型指南 490次閱讀
- 工業(yè)自動化和自動化區(qū)別是什么 1033次閱讀
- 自動化仿真系統(tǒng)搭建實踐 1334次閱讀
- 自動化控制系統(tǒng)的基本知識 3760次閱讀
- 過程自動化控制和運動自動化控制的原理詳解 1352次閱讀
- Selenium在自動化中有何用處 1613次閱讀
- 基于PlatformIO IDE的家庭自動化系統(tǒng)設(shè)計方案實現(xiàn) 2298次閱讀
- 基于Raspberry Pi Pico開發(fā)先進的家庭自動化系統(tǒng) 2850次閱讀
- CL2000變電站綜合自動化系統(tǒng)的設(shè)計及通信解決方案 2637次閱讀
- ATE自動化測試系統(tǒng)是什么_ATE自動化測試系統(tǒng)介紹 3.2w次閱讀
- 自動化領(lǐng)域初涉水 非標(biāo)自動化和自動化到底有哪些區(qū)別? 6091次閱讀
- 過程自動化系統(tǒng)介紹 CPAS架構(gòu)詳解 6844次閱讀
- 紅帽推出Ansible 2.2 :為開源自動化框架奠定牢靠的基礎(chǔ) 984次閱讀
- 構(gòu)建以軟件為中心的下一代自動化測試系統(tǒng) 1184次閱讀
- 基于GPRS的電網(wǎng)調(diào)度自動化系統(tǒng) 1238次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多