資料介紹
描述
介紹
自 Windows 10 IoT 推出以來,Raspberry PI 是一個新平臺,可使用熟悉的開發環境(如 Visual Studio 和 C#)實施各種應用程序。但是,Windows IoT 平臺不支持開箱即用的 Web 應用程序開發,需要自定義解決方案(例如,作為后臺應用程序運行的 Web 服務器)。
家庭自動化
基于 Raspberry PI 的應用程序的典型場景是家庭自動化。除了使用各種傳感器的典型監控應用外,通風裝置、功率計、光伏逆變器、供暖鍋爐、Z-Wave 控制等不同設備的集成也成為一個重要問題。
問題
各種設備提供廣泛的應用程序和用戶界面,范圍從 Web 界面、基于 REST 的 Web API 到工業 Modbus TCP。一些系統提供對需要不同安全支持(兩階段登錄、OAuth、自定義機密、密碼等)的基于云的服務的遠程訪問。
目標
家庭控制 Web 應用程序應為所選數據提供 Web 界面,與ThingSpeak等基于云的監控服務集成,以及基于 REST 的整合 Web API 以簡化數據訪問。
家庭控制 Web 應用程序使用基于 REST 的 Web API 或 Modbus TCP 從各種來源收集數據。
- ETA PU 11 顆粒鍋爐
- b-Control EM300 能源管理器
- Helios KWL EC 200 通風設備
- Fronius Symo 逆變器
- Netatmo 氣象站和模塊
- Zipato Zipatile Z-Wave 家庭控制單元
- BMW i Wallbox 充電站
ASP.NET 核心 2.2
借助ASP.NET Core 2.2,跨平臺開發各種應用程序類型(控制臺應用程序、Web 應用程序等)的承諾成為現實。如前所述,將ASP.NET Web 應用程序部署到運行 Windows 10 IoT 的 Raspberry PI 非常簡單 - 只需為win-arm運行時平臺編譯 Web 應用程序并將所有內容發布到 Raspberry 上的目錄圓周率。
軟件組件
- Windows 10物聯網
- ASP.NET核心 2.2
- Serilog日志框架
- 適用于ASP.NET Core的 Syncfusion Essential Studio
- Modbus TCP(NModbus庫)
- 招搖(Swashbuckle.AspNetCore )
執行
對各種設備的訪問是在面向 .NET Standard 2.2 的自定義庫中實現的。這允許在不同的應用程序(控制臺應用程序、Windows 通用應用程序、ASP.NET Web 應用程序)中使用這些庫。數據訪問的所有內部細節都是隱藏的,僅公開各種數據屬性以及讀取和(可選)寫入操作。
- EM300LR
- ETAPU11
- KWLEC200
- SYMO823M
- 伏能士
- Netatmo
- 齊帕托
- 壁箱
- NModbus
為了便于訪問實際監視(或控制)的數據,添加了屬性集和獲取例程,以允許對支持嵌套類和簡單數組和列表的屬性進行點表示法。
通訊總線
提供 Modbus TCP 接口的設備是使用NModbus庫集成的,該庫具有針對其他數據類型(例如字符串、浮點數和雙精度數)的多個擴展。Modbus TCP協議只在內部網絡使用,不對外暴露。這也用于其他工具,例如通用命令行 Modbus 應用程序或通過 HTTPS 提供基于 REST 的接口的 Modbus TCP 網關。
使用剃須刀頁面和用于個人用戶身份驗證的Sqlite數據庫的標準ASP.NET Web 應用程序模板已被使用。添加了幾個頁面以顯示來自各個組件的選定數據。一個額外的頁面用于嵌入Swagger Web API。Swagger 頁面和選定的其他頁面需要身份驗證才能訪問。ASP.NET Core Web 應用程序還使用 HTTPS 作為訪問頁面的唯一協議。Syncfusion UI組件(社區版)用于顯示儀表和圖表,但可以使用任何其他ASP.NET Core 2.2 兼容組件代替。
信號R
最近的發展是ASP.NET Core 2.0中SignalR通信框架的可用性。用于在后臺自動更新關聯網頁上選定的監控數據。
數據提供者和監控服務
簡單的單例服務提供對各種設備實例的訪問。后臺運行的監控服務實現監控數據的自動更新、訪問設備(Modbus TCP、Web API 等)和同步本地緩存數據實例。更新周期通常為 60 秒,其中一項監控服務將選定的數據發送到 Zipato 家庭控制單元進一步處理和顯示。例如,來自Netatmo室內模塊的 CO2 值用于根據 CO2 水平修改 LED 燈的顏色。
REST API和招搖
來自各種設備的監控數據也可通過一組基于 REST 的整合 Web API 獲取。Swashbuckle項目提供的 Swagger 集成將Swagger添加到結合??了 ApiExplorer 和 Swagger-UI 的 WebApi 項目,從而為 REST API 消費者提供豐富的發現、文檔和游樂場體驗。
部署
Home Control Web 應用程序可以部署在 ASP.NET Core 2.2 框架支持的各種平臺上。它還使用 Windows 10 IoT 在 Raspberry PI 3 或 Raspberry PI 2 B 上運行,只需發布??到 Raspberry PI 上的目錄即可。必要的配置文件
如Internet上所示, ASP.NET Web 應用程序可以在重新啟動時使用一個簡單的命令文件和schtasks
使用Powershell的命令自動啟動。
代碼已更新,以反映最新升級的ASP.NET Core 2.2,以及最新的Swashbuckle、Serilog和NModbus庫。
Windows 10 UWP 應用程序和 Xamarin Android 應用程序
例如,Windows 10 UWP 應用程序使用基于 REST 的 Web 服務來檢索選定數據并相應地顯示它們。
Xamarin Android 應用程序是使用 .NET Core 庫和 Web 服務顯示選定數據的類似示例。
筆記:
所有源代碼現在都可以在 Github ( dtv42/HomeControl ) 上找到。
- 使用Raspberry Pi來托管服務應用程序以及運行客戶端程序
- 基于物聯網的家庭自動化
- 使用物聯網的家庭自動化
- 具有Azure數據庫支持的Raspberry Pi無線家庭自動化
- 基于諾基亞5110的Raspberry Pi帽子 0次下載
- 使用Node MCU的家庭自動化
- 使用螺栓模塊的家庭自動化
- 家庭自動化系統開源分享
- 使用Raspberry Pi的音頻可視化器
- 基于藍牙的家庭自動化
- 語音、手動和應用程序控制的家庭自動化系統
- 《愛上Raspberry Pi》中譯版-電子書籍.pdf 0次下載
- Android應用程序GUI遍歷自動化方法 0次下載
- raspberry_pi各版本差別 0次下載
- 現代家庭自動化遙控系統電路圖
- 工業自動化和自動化區別是什么 1840次閱讀
- keil自動化編譯腳本 1976次閱讀
- 過程自動化控制和運動自動化控制的原理詳解 1737次閱讀
- 使用Raspberry Pi Pico W和MicroPython開發物聯網應用 2180次閱讀
- ASOC系列:如何通過應用安全自動化擴展應用安全 801次閱讀
- Selenium在自動化中有何用處 2083次閱讀
- 基于樹莓派產品 Raspberry Pi微控制器板的優缺點 2984次閱讀
- 基于PlatformIO IDE的家庭自動化系統設計方案實現 2489次閱讀
- 基于Raspberry Pi Pico開發先進的家庭自動化系統 3004次閱讀
- 微雪電子ZeroW| Raspberry Pi ZeroW主板簡介 2618次閱讀
- 微雪電子Raspberry Pi 3 Model主板簡介 3145次閱讀
- digilentchipKIT Pi主板介紹 1348次閱讀
- 利用Raspberry Pi構建存儲和虛擬化時間序列數據 952次閱讀
- 一文了解Raspberry Pi 4各項性能跑分 3w次閱讀
- 現場總線技術在變電站自動化系統中的典型應用 1056次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 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十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論