IoTSharp is an open-source IoT platform for data collection, processing, visualization, and device management

It enables device connectivity via industry standard IoT protocols - MQTT, CoAP and HTTP and supports both cloud and on-premises deployments. IoTSharp combines scalability, fault-tolerance and performance so you will never lose your data.

租户管理

利用租户管理, 你可以为您的客户建立IoTSharp的私有云, 无需租用额外的服务器,一套系统负担所有客户。而不是一对一浪费更多资源。

资产管理(未来)

未来, IoTSharp针对设备和网关管理的同时,我们更要针对无数个设备和规则链组成的一套系统, 这套系统可能一栋大厦, 也可能是一套产品系统。

预测未来(未来)

未来, IoTSharp 将引入ML.net 利用遥测数据提供基于时序的预测,这意味着我们可以为你的资产提供更多的数据参考。

事件和订阅

事件和订阅,让你准确掌握物联网设备状态和数据动向,未来,可以通过规则链更加灵活和简易的控制你所掌握的一切.

边缘计算

RT-Thread

针对RT-Thread, 我们通过 IoTSharp.Edge.RT-Thread 来演示了使用 RT-Thread IoT-Board SDK 的IoTSharp对接协议实现, 项目基于 STM32L4 + Wi-Fi, 陀螺仪、温度、湿度传感器, lcd 等等。

.NET NANOFRAMEWORK

针对.Net nanoFramework 我们通过 IoTSharp.Edge.nanoFramework来演示了在 ST NUCLEO-F746ZG 向 的IoTSharp发送遥测数据。 关于如何使用.Net nano 请了解点击 使用C#编写STM32对接物联网平台IoTSharp发送遥测数据 和文章 用C#在STM32上写第一个Hello world 来了解更多。

针对Java和其他语言

针对Java 我们通过 IoTSharp.Sdks.Java来演示了如何通过Java连接IoTSharp 针对C语言, 我们通过 IoTSharp.Sdks.MQTT-C来演示了如何通过MQTT-C连接IoTSharp

数字孪生

规则链引擎

通过规则链, 你可以监视遥测数据、熟悉数据,并允许你使用规则链通过数字孪生控制远在千里之外的物联网资产。 与此同时, IoTSharp 允许你通过C#、Lua、Python、SQL 等脚本在规则链的节点中处理输入的数据, 与之配合时通过动态Linq表达式处理节点与节点之间的走向。 当然, IoTSharp 也允许你通过C#进行扩展。我们称之为TaskAction, 利用mqtt topic和属性、遥测数据入库时的三个挂载点进行规则处理,以触发预警事件并推送预警结果等等。

IoTSharp Features

多租户

基于多租户的物联网资产管理,更易于建立属于自己的物联网私有云.

规则链

支持多达五种语言脚本、动态Linq表达式、极具扩展能力的规则引擎.

网关设计器

通过可视化设计器对网关参数进行配置, 简易、直观.

跨平台

鉴于.Net 的跨平台特性, 无论是MacOS、Linux、Windows我们无一例外的支持, 甚至于我们在龙芯的CPU上也能成功部署和运行

安全的通讯保障

通过自签发的X509可以确保所有数据通讯和控制是安全的, 于此同时, 我们将服务器的基本信息和设备的ID信息写入在为整数办法的证书当中, 使得身份和激活更简单,这对于网关来说更加可靠,因为一个网关负责了多个设备, 设备的安全性无可置疑是最重要的。 未来, 我们将会支持国密以确保自主可控。 。

数据库和中间件生态多样性

我们的消息数据可以通过多种流行的消息中间件(RabbitMQ、RabbitMQ、Kafka、ZeroMQ)进行处理、也支持多种时序数据库(InfluxDB、Taos、TimescaleDB)存储和处理遥测数据。基础数据我们支持多种关系型数据库(MySQl、PostgreSQL、Oracle、Sql Server、Sqlite)