IoTSharp:基于 .NET 8.0 的开源物联网平台
前言
想要快速了解物联网的世界吗?如果你对物联网(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技术匠]
社区,与其他热爱技术的同行一起交流心得,共同成长!