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、运行
注册完成后,可以进入首页,具体如下所示:
首页

设备管理

产品列表

项目地址
- Gitee:https://gitee.com/IoTSharp
- Github:https://github.com/IoTSharp/IoTSharp
- 文档:https://docs.iotsharp.net/
总结
IoTSharp 是一个 基于.NET 开源的物联网基础平台, 支持 HTTP、MQTT 、CoAp 协议, 属性数据和遥测数据协议简单类型丰富,是一个用于数据收集、处理、可视化与设备管理的 IoT 平台。
最后
如果你觉得这篇文章对你有帮助,不妨点个赞支持一下!你的支持是我继续分享知识的动力。如果有任何疑问或需要进一步的帮助,欢迎随时留言。也可以加入微信公众号[DotNet技术匠] 社区,与其他热爱技术的同行一起交流心得,共同成长!

IoTSharp:基于 .NET 8.0 的开源物联网平台的更多相关文章
- 【物联网】 9个顶级开发IoT项目的开源物联网平台(转)
物联网(IoT)是帮助人工智能(AI)以更好的方式控制和理解事物的未来技术. 我们收集了一些最有名的物联网平台,帮助您以受控方式开发物联网项目. 物联网平台是帮助设置和管理互联网连接设备的组件套件. ...
- 9个顶级开发IoT项目的开源物联网平台
https://blog.csdn.net/shnbiot/article/details/80432017 物联网(IoT)是帮助人工智能(AI)以更好的方式控制和理解事物的未来技术. 我们收集了一 ...
- 干货分享 | 3个开发IoT项目的开源物联网平台
物联网(IoT)是帮助人工智能(AI)以更好的方式控制和理解事物的未来技术. 艾艺收集了一些最有名的物联网平台,帮助您以受控方式开发物联网项目.物联网平台是帮助设置和管理互联网连接设备的组件套件. 一 ...
- 开源物联网平台(Thingsboard)-编译
环境准备 Jdk8+ (3.2.2版本开始使用Jdk11) Maven3.2.1+ release-3.2分支 获取代码 ##get source from mirror git clone http ...
- [深度应用]·首届中国心电智能大赛初赛开源Baseline(基于Keras val_acc: 0.88)
[深度应用]·首届中国心电智能大赛初赛开源Baseline(基于Keras val_acc: 0.88) 个人主页--> https://xiaosongshine.github.io/ 项目g ...
- 手把手教你基于luatos的4G(LTE Cat.1)模组接入华为云物联网平台
摘要:本期文章采用了4G LTE Cat.1模块,编程语言用的是lua,实现对华为云物联网平台的设备通信与控制 本文分享自华为云社区<基于luatos的4G(LTE Cat.1)模组接入华为云物 ...
- 开源任务管理平台TaskManagerV2.0介绍及升级说明
上一篇开源任务管理平台TaskManager介绍发布后,有网友联系我看看能不能做个后台管理界面,方便管理系统中所有的任务.由于时间和技术问题1.0版本的时候,新增了一个3分钟读取配置文件动态修改任务的 ...
- 物联网全景动态图谱2.0|PaaS物联网平台汇总(上篇)
物联网智库 原创 物联网智库 整理发布 转载请注明来源和出处 ------ [导读] ------ 毫无疑问,2018年物联网对行业的深度变革才刚刚开启. 物联网产业链企业的质与量将进入全面爆 ...
- Asp.Net Core 2.0 项目实战(2)NCMVC一个基于Net Core2.0搭建的角色权限管理开发框架
Asp.Net Core 2.0 项目实战(1) NCMVC开源下载了 Asp.Net Core 2.0 项目实战(2)NCMVC一个基于Net Core2.0搭建的角色权限管理开发框架 Asp.Ne ...
- 基于Node.js的ghost开源博客平台
Ghost 是一套基于Node.js 构建的开源博客平台(Open source blogging platform),具有易用的书写界面和体验. 1.安装node windows 下安装npm:ht ...
随机推荐
- Apache Kylin(一)Kylin介绍
1. 传统大数据分析的问题 在基于Hadoop 生态的传统大数据分析中,主要使用的技术是MPP(Massively Parallel Processing)大规模并行处理和列式存储.MPP使用线性增加 ...
- Nuxt3 的生命周期和钩子函数(四)
title: Nuxt3 的生命周期和钩子函数(四) date: 2024/6/28 updated: 2024/6/28 author: cmdragon excerpt: 概述了Nuxt3的六个关 ...
- Linux系统基本介绍
一.Linux系统基本介绍 [1].Linux操作系统特点 多任务的操作系统 多任务操作系统 严格区分大小写 Linux一切皆文件 所有文件的起点都是"/"根目录 对于Linux操 ...
- 网络化的控制系统简介(NCS)
作为一个搞物联网应用的,最近才接触到NCS这个概念.有点东西,赶紧记录一下. NCS由通过网络连通的控制环路组成,控制信号和反馈信号会在控制器和本地系统间交换.典型的方块图如下: 其中,本地(Plan ...
- 记一次aspnetcore发布部署流程初次使用k8s
主题: aspnetcorewebapi项目,提交到gitlab,通过jenkins(gitlab的ci/cd)编译.发布.推送到k8s. 关于gitlab.jenkins.k8s安装,都是使用doc ...
- ubuntu22 装物理机
前言 最近需要使用u盘装一个ubuntu物理机,原本想试试麒麟,但还需要申请.. 自己捣鼓半天,终于把ubuntu系统装上了,现在记录一下过程. 正文 下载镜像文件 从官网下载 ubuntu22 的镜 ...
- Spring定时任务和@Async注解异步调用
Spring定时任务 1.@Scheduled注解方式 使用方式 @Scheduled的使用方式十分简单,首先在项目启动类添加注解@EnableScheduled. 编写定时任务方法,方法上添加注解@ ...
- 类、事件与对象---Dad&Mom简单练习
目的: 模拟一个家庭日常发生的场景:妈妈做好饭,说:"开饭了!",这是爸爸听到了妈妈的喊话就立马动身开始饭吃.而儿子此时正在打游戏,于是他就说:"等我打完这把游戏再吃!& ...
- 如何在 Vue 项目中优雅地使用图标
1. 字体图标与矢量图标 目前主要有两种图标类型:字体图标和矢量图标. 字体图标是在网页打开时,下载一整个图标库,通常可以通过特定标签例如 <i> 来使用,优点是方便地实现文字混排,缺点是 ...
- 第七节 JMeter基础-高级登录【数据驱动-参数化】
声明:本文所记录的仅本次操作学习到的知识点,其中商城IP错误,请自行更改. 背景:一个接口的不同情况,其实就是请求参数不一样.期望结果不一样.把这些不一样的东西都提取出来进行管理,下次可以直接使用.因 ...