Thinger.io 支持多协议、插件化开源 IoT 物联网平台

2023-09-16 19:26:19

0f2c63151ac20cbe2ab230106667d9e4.png

Thinger.io 是一个开源插件化物联网平台,提供了设备原型、扩展和设备连接管理所需的一切工具。我们的目标是使物联网的使用民主化,使其可供全世界使用,并简化大型物联网项目的开发。

01

Thinger.io 功能特性

Thinger.io 物联网平台由前端Web控制台后端物联网服务组成,功能架构如下图:

075eb001c8c380da40d931347fe371fb.png

  • 连接设备:兼容 Linux、Arduino、Raspberry Pi 以及 MQTT 设备,支持双向通信,可以与Sigfox或LoRaWAN等本地网络设备进行通信。

  • 存储设备数据:可一键创建数据存储区,以可扩展、低成本的方式存储物联网数据,支持实时数据聚合。

  • 可视化:内置多种组件实现数据可视化,如仪表盘、雷达图、柱状图、折线图、仪表盘、计量器等,你也可以创建自定义组件

  • Node-RED:内置Node-RED规则引擎触发事件和数据值

  • 插件服务:支持多个插件扩展自定义功能,将物联网项目集成到企业的软件系统或任何其他第三方互联网服务中

  • 自定义外观:可自由设置平台的界面外观

f152e611add84659f52fb6414301ec5a.png

Arduino 设备接入方案

ae0f88510fd91c6bf08f15a2f43776c5.png

Thinger.io Library 包含用于将Arduino兼容设备与Thinger.io平台连接的软件。这是将设备连接到平台的首选方式,因为它可以提取Thinger.io的所有功能。

Sigfox 设备接入方案

c038c1e927b77a4fa56665e27917b8ac.png

Sigfox插件使用Sigfox HTTP回调功能的接口,提供了将这些设备与Thinger.io平台轻松集成的功能,如自动设备和存储供应以及上行链路和下行链路云处理。

aec0071be8f1a58e2c1d0594d8eab3f1.png

HTTP 设备接入方案

043d7328d0976b6c24558249a3d489e6.png

这种集成方式通过使用HTTP请求和响应数据在Thinger.io和数据源之间提供双向通信,这些数据由带有JSON编码数据的基本HTTP POST消息组成。

MQTT 设备接入方案

ae5ab1ce2d553f16e8345d5a72d7a2ae.png

Thinger.io 物联网平台提供了一个基本的MQTT代理服务,允许设备采用发布和订阅通信。

LoRaWAN 设备接入方案

cb7a2a0c6600f50bca4b7f13e6e805c7.png

基于 The Things Network 平台,可以将 LoRaWAN 设备与 Thinger.io 集成,这简化了两个平台的连接,并提供了设备自动配置、有效负载数据处理和网关数据过滤等功能。

02

Thinger.io 控制台概览

设备管理

8eae9dd2f9fd4a6c77520c3c12fcb9d9.png

4832de7d220b4fc2400587b58731ea72.png

添加设备

4b938712ee63b21e55f8774d93952ec2.png

设备数据

8a028745d11a532127c1635795e3dfc3.png

设备数据可视化看板

d38926012d30ec7e824fb3eb8e2fb770.gif

插件市场

插件提供可按需部署的自定义功能,允许每个用户根据其特定需求补充其物联网服务器。

4b07d0cc09c42250f3e6c9f1d571ff11.png

Node RED插件,允许将Node RED服务器部署到与Thinger.io IoT平台实例相同的主机中,用以处理和分析数据,或创建规则来自动化响应物联网设备测量产生的事件的行为。

60af0d65dfbdee870b2fa108f91ffb6d.png

Grafana插件和Thinger.io组合,提供了许多新的工具来分析物联网设备数据,并提供了令人惊叹的图形和可视化小部件。

807cae5b896af0b085e760ecf3f0891b.png

服务端管理

ddc581be32cd51f3398c219cfb97aa25.png

03

在线体验和源码获取

官网:https://thinger.io

GitHub:https://github.com/thinger-io

在线体验:https://console.thinger.io

往期推荐

☞ 十年回望,中国物联网平台消亡史

☞ 2022年 IoT物联网平台趋势: 私有化

☞ 5个值得分享的物联网创业失败教训

☞ 国内 4 大 IoT物联网平台选型对比

☞ 云厂商的 [IoT物联网平台] 不香了吗?

07f1783deabde41e7c15fcc662638e90.png

244fc1ee73475d49526900d478dc7d03.gif

43b3d394fca86adf2994a54c8394bdb0.gif

596191375d07fb8f33e46536ed7411eb.gif

e6fa523113e8eb5780438943fdeb830f.gif

更多推荐

短剧解说小程序搭建,短剧解说小程序源码

短剧解说小程序搭建,短剧解说小程序源码可定制开发小程序,H5,APP等系统有需要可定制可出源码,这个是啥你懂的(VVVVVVVVVVV):二五四九七八九零五九需要源码或搭建可看上面的数字信息短剧解说小程序搭建小程序使用uniapp开发服务端技术Java开发SpringBoot,mysql,redis,mybatis,T

MySQL与Oracle的分页

MySQL与Oracle的分页当我们通过SQL去查询一个结果集的时候,并不需要查看所有行,可能只是查看前几行,或者中间的几行。则需要像MySQL的limit或Oracle的ROWNUM与FETCHNEXT来实现。MySQL语法SELECT*FROMtable_nameLIMIT[offset,]row_count;LI

oracle中的minus数据比对

1、要有唯一索引或者主键作为前提,减少数据冲突的数量。2、当有in查询的时候,尽量用exists,这样能提高查询效率:createtableTF_F_USER_DIFF1tablespaceBD_TBS_EXP_DATAparallel20asselect/*+parallel(c,20)/*fromTF_F_USER

PostgreSQL 数据备份&恢复

文章目录PostgreSQL备份方式SQL备份(逻辑备份)文件系统备份(物理备份)归档备份(物理备份)逻辑备份&恢复物理备份&恢复(全量)备份恢复物理备份&恢复(某个时间点)场景具体操作PostgreSQL备份方式防止数据丢失的第一道防线就是备份。数据丢失有的是硬件损坏,还有人为的误删之类的,也有BUG的原因导致误删数

宝塔面板日志和缓存占用磁盘空间很大,如何清理?

服务器使用的宝塔面板,最近发现服务器的“系统盘”快爆满了,点面板上日志管理都要收费,我也不是很懂服务器的运维,使用ai进行询问,得到了解决:/var/log日志目录运行下面的命令查找是哪些目录占用空间很大du-h--max-depth=1我这边是/var/log和var/cache两个目录占用空间很大,进入/var/l

网络安全(黑客)自学

前言我是去年8月22日才正式学习网络安全的,因为在国营单位工作了4年,在广东一个月工资只有5000块,而且看不到任何晋升的希望,如果想要往上走,那背后就一定要有关系才行。而且国营单位的气氛是你干的多了,领导觉得你有野心,你干的不多,领导却觉得你这个人不错。我才24周岁,实在的受不了这种工作氛围,情绪已经压制了很多久,一

对象的创建过程

对象的创建过程基于两个方面回答这个问题:①jvm加载和分配内存。②java对象初始化。1.在实例化一个对象的时候,JVM首先会去检查目标对象是否已经被加载并初始化了。2.如果没有,JVM需要立刻去加载目标类,然后调用目标类的构造器完成初始化。①目标类的加载是通过类加载器来实现的,主要就是把一个类加载到内存里。②然后初始

PyQt学习笔记-使用QSettings保存系统配置参数

目录1.QSettings简介2.初始化QSettings及数据存储位置2.1使用系统api存储2.2存储成配置文件2.2.1使用文件格式设置2.2.2Format格式说明3Qsettings的使用3.1QSettings的数据保存和读取3.1.1使用setValue方法保存数据3.1.2使用value方法获取配置文件

flutter聊天界面-TextField输入框实现@功能等匹配正则表达式展示高亮功能

flutter聊天界面-TextField输入框实现@功能等匹配正则表达式展示高亮功能一、简要描述描述:最近有位朋友讨论的时候,提到了输入框的高亮展示。在flutterTextField中需要插入特殊样式的标签,比如:“请@张三回答一下”,这一串字符在TextField中输入,当输入@时弹出好友列表选择,然后将“@张三

棒球游戏代码编写·棒球1号位

棒球代码编写1.棒球游戏的代码结构介绍棒球游戏的整体代码结构棒球游戏的整体代码结构可以按照以下几个模块进行划分:游戏引擎:游戏引擎是整个游戏的核心,负责管理游戏的各个系统,包括图形渲染、物理模拟、声音播放等。棒球游戏的引擎需要支持场景切换、角色动画、特效渲染等功能。角色系统:角色系统负责管理游戏中的角色,包括球员、裁判

Unity 课时 4 : No.4 模拟面试题

课时4:No.4模拟面试题C#1.请说明字符串中stringstr=nullstringstr=“”stringstr=string.Empty三者的区别第一个未作初始化没有值,第二个为空字符串,答案:str=null在堆中没有分配内存地址str=""和string.Empty一样都是在堆内存中分配了空间,里面存储的是

热文推荐