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部署方法。对于其他平台,大家可以访问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、运行

注册完成后,可以进入首页,具体如下所示:

首页

设备管理

产品列表

项目地址

总结

IoTSharp 是一个 基于.NET 开源的物联网基础平台, 支持 HTTP、MQTT 、CoAp 协议, 属性数据和遥测数据协议简单类型丰富,是一个用于数据收集、处理、可视化与设备管理的 IoT 平台。

最后

如果你觉得这篇文章对你有帮助,不妨点个赞支持一下!你的支持是我继续分享知识的动力。如果有任何疑问或需要进一步的帮助,欢迎随时留言。也可以加入微信公众号**DotNet技术匠** 社区,与其他热爱技术的同行一起交流心得,共同成长!

相关推荐
淡海水6 小时前
01-04-认知篇-Unity内存全景
unity·c#·游戏引擎·.net·gc
JosieBook8 小时前
【.NET工程师】.NET 工程师成长体系(精要版)
.net
淡海水17 小时前
01-03-认知篇-C#内存模型深度解析
unity·c#·游戏引擎·.net·gc
AKULAKK2 天前
关于在Ghost版Win7上运行.net 2程序遇到的问题以及解决办法
.net·win7
波力海苔夹心脆6752 天前
C# 序列化与反序列化详解:System.Text.Json、Newtonsoft.Json、XmlSerializer 用法、特性选项与安全实践
经验分享·后端·c#·json·.net
mudtools2 天前
在.NET现有系统中快速集成飞书任务分配能力
后端·c#·.net
小羊没烦恼!2 天前
【译】利用Asp.net MVC处理文件的上传下载
开发语言·缓存·c#·word·powerpoint·.net
唐青枫4 天前
我用 C# 开发了一款电子发票自动整理工具
c#·.net
我是唐青枫4 天前
我用 C# 开发了一款电子发票自动整理工具
c#·.net
唐青枫4 天前
别把 WPF 写成一个 MainWindow:C#.NET Prism 模块化开发详解
c#·.net