資料介紹
描述
介紹
自 Windows 10 IoT 推出以來,Raspberry PI 是一個(gè)新平臺,可使用熟悉的開發(fā)環(huán)境(如 Visual Studio 和 C#)實(shí)施各種應(yīng)用程序。但是,Windows IoT 平臺不支持開箱即用的 Web 應(yīng)用程序開發(fā),需要自定義解決方案(例如,作為后臺應(yīng)用程序運(yùn)行的 Web 服務(wù)器)。
家庭自動化
基于 Raspberry PI 的應(yīng)用程序的典型場景是家庭自動化。除了使用各種傳感器的典型監(jiān)控應(yīng)用外,通風(fēng)裝置、功率計(jì)、光伏逆變器、供暖鍋爐、Z-Wave 控制等不同設(shè)備的集成也成為一個(gè)重要問題。
問題
各種設(shè)備提供廣泛的應(yīng)用程序和用戶界面,范圍從 Web 界面、基于 REST 的 Web API 到工業(yè) Modbus TCP。一些系統(tǒng)提供對需要不同安全支持(兩階段登錄、OAuth、自定義機(jī)密、密碼等)的基于云的服務(wù)的遠(yuǎn)程訪問。
目標(biāo)
家庭控制 Web 應(yīng)用程序應(yīng)為所選數(shù)據(jù)提供 Web 界面,與ThingSpeak等基于云的監(jiān)控服務(wù)集成,以及基于 REST 的整合 Web API 以簡化數(shù)據(jù)訪問。
家庭控制 Web 應(yīng)用程序使用基于 REST 的 Web API 或 Modbus TCP 從各種來源收集數(shù)據(jù)。
- ETA PU 11 顆粒鍋爐
- b-Control EM300 能源管理器
- Helios KWL EC 200 通風(fēng)設(shè)備
- Fronius Symo 逆變器
- Netatmo 氣象站和模塊
- Zipato Zipatile Z-Wave 家庭控制單元
- BMW i Wallbox 充電站
ASP.NET 核心 2.2
借助ASP.NET Core 2.2,跨平臺開發(fā)各種應(yīng)用程序類型(控制臺應(yīng)用程序、Web 應(yīng)用程序等)的承諾成為現(xiàn)實(shí)。如前所述,將ASP.NET Web 應(yīng)用程序部署到運(yùn)行 Windows 10 IoT 的 Raspberry PI 非常簡單 - 只需為win-arm運(yùn)行時(shí)平臺編譯 Web 應(yīng)用程序并將所有內(nèi)容發(fā)布到 Raspberry 上的目錄圓周率。
軟件組件
- Windows 10物聯(lián)網(wǎng)
- ASP.NET核心 2.2
- Serilog日志框架
- 適用于ASP.NET Core的 Syncfusion Essential Studio
- Modbus TCP(NModbus庫)
- 招搖(Swashbuckle.AspNetCore )
執(zhí)行
對各種設(shè)備的訪問是在面向 .NET Standard 2.2 的自定義庫中實(shí)現(xiàn)的。這允許在不同的應(yīng)用程序(控制臺應(yīng)用程序、Windows 通用應(yīng)用程序、ASP.NET Web 應(yīng)用程序)中使用這些庫。數(shù)據(jù)訪問的所有內(nèi)部細(xì)節(jié)都是隱藏的,僅公開各種數(shù)據(jù)屬性以及讀取和(可選)寫入操作。
- EM300LR
- ETAPU11
- KWLEC200
- SYMO823M
- 伏能士
- Netatmo
- 齊帕托
- 壁箱
- NModbus
為了便于訪問實(shí)際監(jiān)視(或控制)的數(shù)據(jù),添加了屬性集和獲取例程,以允許對支持嵌套類和簡單數(shù)組和列表的屬性進(jìn)行點(diǎn)表示法。
通訊總線
提供 Modbus TCP 接口的設(shè)備是使用NModbus庫集成的,該庫具有針對其他數(shù)據(jù)類型(例如字符串、浮點(diǎn)數(shù)和雙精度數(shù))的多個(gè)擴(kuò)展。Modbus TCP協(xié)議只在內(nèi)部網(wǎng)絡(luò)使用,不對外暴露。這也用于其他工具,例如通用命令行 Modbus 應(yīng)用程序或通過 HTTPS 提供基于 REST 的接口的 Modbus TCP 網(wǎng)關(guān)。
使用剃須刀頁面和用于個(gè)人用戶身份驗(yàn)證的Sqlite數(shù)據(jù)庫的標(biāo)準(zhǔn)ASP.NET Web 應(yīng)用程序模板已被使用。添加了幾個(gè)頁面以顯示來自各個(gè)組件的選定數(shù)據(jù)。一個(gè)額外的頁面用于嵌入Swagger Web API。Swagger 頁面和選定的其他頁面需要身份驗(yàn)證才能訪問。ASP.NET Core Web 應(yīng)用程序還使用 HTTPS 作為訪問頁面的唯一協(xié)議。Syncfusion UI組件(社區(qū)版)用于顯示儀表和圖表,但可以使用任何其他ASP.NET Core 2.2 兼容組件代替。
信號R
最近的發(fā)展是ASP.NET Core 2.0中SignalR通信框架的可用性。用于在后臺自動更新關(guān)聯(lián)網(wǎng)頁上選定的監(jiān)控?cái)?shù)據(jù)。
數(shù)據(jù)提供者和監(jiān)控服務(wù)
簡單的單例服務(wù)提供對各種設(shè)備實(shí)例的訪問。后臺運(yùn)行的監(jiān)控服務(wù)實(shí)現(xiàn)監(jiān)控?cái)?shù)據(jù)的自動更新、訪問設(shè)備(Modbus TCP、Web API 等)和同步本地緩存數(shù)據(jù)實(shí)例。更新周期通常為 60 秒,其中一項(xiàng)監(jiān)控服務(wù)將選定的數(shù)據(jù)發(fā)送到 Zipato 家庭控制單元進(jìn)一步處理和顯示。例如,來自Netatmo室內(nèi)模塊的 CO2 值用于根據(jù) CO2 水平修改 LED 燈的顏色。
REST API和招搖
來自各種設(shè)備的監(jiān)控?cái)?shù)據(jù)也可通過一組基于 REST 的整合 Web API 獲取。Swashbuckle項(xiàng)目提供的 Swagger 集成將Swagger添加到結(jié)合??了 ApiExplorer 和 Swagger-UI 的 WebApi 項(xiàng)目,從而為 REST API 消費(fèi)者提供豐富的發(fā)現(xiàn)、文檔和游樂場體驗(yàn)。
部署
Home Control Web 應(yīng)用程序可以部署在 ASP.NET Core 2.2 框架支持的各種平臺上。它還使用 Windows 10 IoT 在 Raspberry PI 3 或 Raspberry PI 2 B 上運(yùn)行,只需發(fā)布??到 Raspberry PI 上的目錄即可。必要的配置文件
如Internet上所示, ASP.NET Web 應(yīng)用程序可以在重新啟動時(shí)使用一個(gè)簡單的命令文件和schtasks使用Powershell的命令自動啟動。
代碼已更新,以反映最新升級的ASP.NET Core 2.2,以及最新的Swashbuckle、Serilog和NModbus庫。
Windows 10 UWP 應(yīng)用程序和 Xamarin Android 應(yīng)用程序
例如,Windows 10 UWP 應(yīng)用程序使用基于 REST 的 Web 服務(wù)來檢索選定數(shù)據(jù)并相應(yīng)地顯示它們。
Xamarin Android 應(yīng)用程序是使用 .NET Core 庫和 Web 服務(wù)顯示選定數(shù)據(jù)的類似示例。
筆記:
所有源代碼現(xiàn)在都可以在 Github ( dtv42/HomeControl ) 上找到。
- 使用Raspberry Pi來托管服務(wù)應(yīng)用程序以及運(yùn)行客戶端程序
- 基于物聯(lián)網(wǎng)的家庭自動化
- 使用物聯(lián)網(wǎng)的家庭自動化
- 具有Azure數(shù)據(jù)庫支持的Raspberry Pi無線家庭自動化
- 基于諾基亞5110的Raspberry Pi帽子 0次下載
- 基于ESP8266的家庭自動化 0次下載
- 使用Node MCU的家庭自動化
- 使用螺栓模塊的家庭自動化
- 家庭自動化系統(tǒng)開源分享
- 使用Raspberry Pi的音頻可視化器
- 語音、手動和應(yīng)用程序控制的家庭自動化系統(tǒng)
- 《愛上Raspberry Pi》中譯版-電子書籍.pdf 0次下載
- Android應(yīng)用程序GUI遍歷自動化方法 0次下載
- raspberry_pi各版本差別 0次下載
- 現(xiàn)代家庭自動化遙控系統(tǒng)電路圖
- 聚焦應(yīng)用場景:工業(yè)自動化中的 m12 接頭規(guī)格解析 621次閱讀
- 工業(yè)自動化和自動化區(qū)別是什么 3.7k次閱讀
- keil自動化編譯腳本 3.5k次閱讀
- 使用Raspberry Pi Pico W和MicroPython開發(fā)物聯(lián)網(wǎng)應(yīng)用 3.4k次閱讀
- ASOC系列:如何通過應(yīng)用安全自動化擴(kuò)展應(yīng)用安全 1.4k次閱讀
- Selenium在自動化中有何用處 2.9k次閱讀
- 基于樹莓派產(chǎn)品 Raspberry Pi微控制器板的優(yōu)缺點(diǎn) 3.6k次閱讀
- 基于PlatformIO IDE的家庭自動化系統(tǒng)設(shè)計(jì)方案實(shí)現(xiàn) 3.3k次閱讀
- 基于Raspberry Pi Pico開發(fā)先進(jìn)的家庭自動化系統(tǒng) 3.6k次閱讀
- 微雪電子ZeroW| Raspberry Pi ZeroW主板簡介 3.3k次閱讀
- 微雪電子Raspberry Pi 3 Model主板簡介 4.9k次閱讀
- digilentchipKIT Pi主板介紹 1.9k次閱讀
- 利用Raspberry Pi構(gòu)建存儲和虛擬化時(shí)間序列數(shù)據(jù) 1.3k次閱讀
- 一文了解Raspberry Pi 4各項(xiàng)性能跑分 3.1w次閱讀
- 現(xiàn)場總線技術(shù)在變電站自動化系統(tǒng)中的典型應(yīng)用 1.3k次閱讀
下載排行
本周
- 1耗盡型MOS FET產(chǎn)品目錄選型表
- 0.14 MB | 2次下載 | 免費(fèi)
- 2TI系列-米爾TI AM62L核心板開發(fā)板-高能效低功耗嵌入式平臺
- 1.51 MB | 次下載 | 免費(fèi)
- 3WILLSEMI韋爾20年半年度報(bào)告由代理分銷經(jīng)銷一級代理分銷經(jīng)銷
- 3.30 MB | 次下載 | 免費(fèi)
- 4LRC 樂山無線電InTWSApplications家電由原廠代理分銷經(jīng)銷一級代理分銷經(jīng)銷供應(yīng)
- 85.84 KB | 次下載 | 免費(fèi)
- 5LAT1596 一文說明白 STM32G4 雙 Bank 啟動與升級
- 0.64 MB | 次下載 | 5 積分
- 6LAT1594_基于事件喚醒低功耗之介紹
- 0.37 MB | 次下載 | 5 積分
- 7PT8P2309 觸控 A/D 型 8-Bit MCU規(guī)格書
- 4.05 MB | 次下載 | 免費(fèi)
- 8PT8P2308 觸控 A/D 型 8-Bit MCU規(guī)格書
- 4.13 MB | 次下載 | 免費(fèi)
本月
- 1美的電磁爐電路原理圖資料
- 4.39 MB | 19次下載 | 10 積分
- 2反激式開關(guān)電源設(shè)計(jì)解析
- 0.89 MB | 11次下載 | 5 積分
- 3耗盡型MOS FET產(chǎn)品目錄選型表
- 0.14 MB | 2次下載 | 免費(fèi)
- 4簡易光伏控制器原理圖資料
- 0.07 MB | 1次下載 | 5 積分
- 52EDL05x06xx系列 600V半橋門驅(qū)動器帶集成自舉二極管(BSD)手冊
- 0.69 MB | 1次下載 | 免費(fèi)
- 6國產(chǎn)千兆網(wǎng)口芯片PT153S中文資料
- 1.35 MB | 次下載 | 免費(fèi)
- 7斯丹電子 | 用于芯片測試系統(tǒng)的射頻干簧繼電器
- 5.11 MB | 次下載 | 免費(fèi)
- 8SFI立昌ESD/TVS管原廠代理分銷經(jīng)銷一級代理分銷經(jīng)銷
- 294.76 KB | 次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233095次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191448次下載 | 10 積分
- 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183360次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81605次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73829次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論