前言
想要快速瞭解物聯網的世界嗎?如果你對物聯網(IoT)感興趣,或者正打算開發自己的物聯網專案。可以試試 IoTSharp,一個基於 .NET 的開源平臺。
無論你是初學者還是有經驗的大佬,IoTSharp 提供了豐富的功能和廣泛的協議支援。讓物聯網專案開發變得簡單又直觀。它不僅功能全面,而且操作靈活,讓你可以快速上手,輕鬆實現你的物聯網夢想,快來試一試 IoTSharp。
專案介紹
為什麼會有 IoTSharp?
想一下,你想要建立一個智慧家居系統,比如讓家裡的燈可以透過手機控制開關,或者讓空調可以根據你的習慣自動調節溫度。但當開始做這些事情的時候,可能會遇到很多難題,比如怎麼讓裝置互相通訊,如何處理大量的資料,怎樣確保系統的安全性等等。這些問題可能讓你感到頭疼。
IoTSharp 能做什麼?
IoTSharp 的出現就是為了幫助解決這些問題。它是一個現成的平臺,可以幫助你輕鬆地將不同的裝置連線起來,並且能夠處理這些裝置產生的大量資料。最重要的是開源的,可以和大家一起討論並且有社群支援。
IoTSharp 的亮點
簡單易用:即使你是新手,也能快速上手。
跨平臺:無論是在 Windows 還是 Linux 或 Mac 上都能執行。
多種裝置支援:支援常見的物聯網通訊協議,讓不同裝置輕鬆接入。
安全可靠:內建的安全措施確保你的資料安全無憂。
IoTSharp 是一個開源的物聯網基礎平臺,集裝置屬性資料管理、遙測資料監測、RPC多模式遠端控制、規則鏈設計引擎等強大能力,依據數字孿生概念將可見與不可見的物理裝置統一孿生到數字世界,在落地上IoTSharp結合了資產管理、產品化發展的理念,讓平臺應用更加貼合複雜的應用場景,在協議支援上支援HTTP、MQTT 、CoAp 等多種標準物聯網協議接入和非標協議的轉換。
專案技術
1、程式語言
主要使用 C# 和 .NET 進行後端開發。
2、系統框架
前端使用 Vue 3,後端基於.NET 8.0 + WebAPI。
3、資料庫支援
支援多種資料庫型別,包括:
關係型資料庫:PostgreSQL、 MySQL、SQL Server 等。
時序資料庫:InfluxDB、IoTDB、TDengine、TimescaleDB、PinusDB 等,以滿足不同型別的資料儲存需求。
4、訊息佇列與 EventBus
支援多種訊息佇列和 EventBus 系統,如 RabbitMQ、Kafka、 ZeroMQ、NATS、Pulsar、Redis Streams、Amazon SQS、Azure Service Bus 等,用於構建事件驅動架構和實現高效的訊息傳遞
5、EventBus 儲存
支援將事件儲存在多種資料儲存中,如 PostgreSql、MongoDB、InMemory、LiteDB、MySql、SqlServer 等。
專案使用
本次介紹的是Windows作業系統下的IoTSharp部署方法。對於其他平臺,大家可以訪問
對於Windows環境下的部署,我們採用的是輕量級的 Sqlite 作為資料儲存解決方案。
下面是詳細的部署步驟:
1、下載
首先在Github 或者 Gitee 中下載最新版本的安裝包, Windows安裝包名為 IoTSharp.Release.win7-x64.zip
下載至本地。
2、啟動
解壓壓縮包後, 我們可以看到裡面 有一個 IoTSharp 的Exe檔案, 雙擊執行即可啟動。
可以看到控制檯啟動, 啟動後, 即可在瀏覽器中開啟 http://localhost:2927
來訪問。
3、註冊服務
IoTSharp 已經支援了Windows服務的方式執行, 如果有需要註冊為Widnows服務,
需要首先了解 https://docs.microsoft.com/zh-cn/windows-server/administration/windows-commands/sc-create
使用 sc 命令建立 為 Windows 服務,然後開啟 http://localhost:2927
來訪問。
看到下圖說明執行成功
4、初始化influxdb
瀏覽器訪問 http://localhost:8086/
,初始化influxdb
Org: `iotsharp` Bucket: `iotsharp-bucket`
5、註冊
Chrome瀏覽器訪問 http://localhost:2927/
6、執行
首頁
裝置管理
產品列表
專案地址
- Gitee:https://gitee.com/IoTSharp
- Github:https://github.com/IoTSharp/IoTSharp
- 文件:https://docs.iotsharp.net/
總結
如果你覺得這篇文章對你有幫助,不妨點個贊支援一下!你的支援是我繼續分享知識的動力。如果有任何疑問或需要進一步的幫助,歡迎隨時留言。也可以加入微信公眾號[DotNet技術匠] 社群,與其他熱愛技術的同行一起交流心得,共同成長!