当前位置: 首页 > news >正文

OpenRemote: Java 开源 IoT 物联网开发平台,匹配智慧城市、智能家居、能源管理

d3460001a7981420823de9700ef54eb8.png

OpenRemote 是一个直观、用户友好的基于Java语言的开源 IoT 物联网设备管理平台,它包括从连接设备到构建应用程序和特定领域的智能应用程序的所有功能和特性。通过OpenRemote物联网平台,用户可以收集和处理来自不同设备的传感器数据,适用于智能家居、智慧城市、能源管理、工业制造和智慧农业等场景。

01

多种协议支持

OpenRemote 物联网平台支持多种协议接入,包括:

  • MQTT:轻量级的发布/订阅模式的消息传输协议,被广泛应用于物联网(IoT)领域。

  • CoAP:低功耗无线通信协议,特别适用于物联网(IoT)设备之间的通信。

  • HTTP/HTTP2:通用的网络通信协议,被广泛应用于网页浏览和 API 调用。

  • LoRa :基于开源MAC层协议的低功耗广域网通信协议。

  • Modbus:工业自动化通信协议,被广泛应用于多种设备之间进行数据交换。

  • OPC UA:工业自动化通信协议,被广泛应用于各种设备之间的数据交换。

  • Z-Wave:智能家居自动化的无线通信协议,由丹麦公司 Zensys 开发。

  • EnOcean:智能家居和楼宇自动化的无线通信协议,其特点在于使用环境能量驱动设备。

  • KNX/EIB:智能家居和楼宇自动化的标准协议,由欧洲安装总线(European Installation Bus)发展而来。

  • DALI:照明控制的标准协议。

  • IR:红外线遥控的协议。

02

OpenRemote 技术架构

基于 OpenRemote 你可以构建一个完整的物联网设备管理解决方案,包括:设备管理和自动供应、资产类型定制、通过何时自动化、流、Javascript 和 Groovy规则、数据分析、通过几个协议代理和管理器API(如MQTT Broker、HTTP/REST、WebSocket)的连接、多租户(领域)、用户和角色管理、边缘网关,前端UI Web组件和控制台,以及 Insights 面板生成器。

OpenRemote 物联网场景应用完整的技术架构如下:

d53358f668c0128a6c510b34cd02cbc2.png

1.安装和配置:首先,需要按照 OpenRemote 的安装指南,将软件部署到您选择的服务器上。随后,您需要配置与您的家居设备和系统兼容的控制器和传感器。

2.设备配置:在 OpenRemote 的管理界面中,您可以添加和配置各种设备。通过选择相应的设备类型和输入设备的详细信息,您可以将您的设备集成到 OpenRemote 平台中。

3.场景和规则:使用 OpenRemote 的场景编辑器,您可以创建和定义各种场景和规则。通过配置触发条件、设备操作和延时操作,您可以创建复杂的自动化逻辑,以实现特定的智能控制场景。

4.远程控制:一旦您的设备和场景都配置好了,您可以通过 OpenRemote 提供的移动应用程序,或者通过任何兼容的 Web 浏览器,远程控制您的家居设备。您可以通过手机、平板电脑甚至是电脑轻松地调整亮度、温度、安防设置等。

03

平台功能介绍

设备管理器是创建、连接和管理资产的接口。资产类型可以完全自定义,在地图和资产页面上可视化,也可以存储或用于规则和仪表板。

e9c6e76fb91affc39280bd3d92119d04.png

定位服务,你可以查看所有资产及其当前价值的地理概况。修改地图以适合您感兴趣的区域,并利用地理围栏触发警报或发送通知。

ac579e7c89d544ad57ca5bd7a73307c7.png

规则引擎功能,你可以基于各种输入(传感器数据、时间、地理位置等)和输出(控制设备的开关状态、调整温度、调整照明等)之间的逻辑关系来定义。例如如果温度传感器检测到室内温度过高,则打开空调。

27368128817c69852a24050f6e6afa1d.png

自定义Groovy脚本,你可以自由定义运行系统中的几乎任何东西,例如定义群体行为或你自己类型的警报条件。

25bc480bd5960a2fad997d08eedd8a8d.png

洞察看板功能,你可以将各种传感器数据、设备状态、报警信息等数据进行可视化展示,并且可以自定义看板的布局和样式,以便更好地了解和监控物联网终端的运行状态。

0d7496c7dffdf0f5c39609cabad5f7c7.png

使用web组件,您可以快速创建自己的特定于应用程序的应用程序,无论是面向最终用户或安装人员的移动应用程序,还是面向专家的仪表板。管理器应用程序也是基于此构建的。

a439c6f7ad8c96c1c0c8b2896f68aee5.png

移动App 对于安装、监控和维护,在现场访问您的资产非常重要。使用OpenRemote应用程序访问Manager可提供基于位置的消息选项。

0efc7a61fc0e5ae789808aa89e14d448.png

04

官网和源码

官网:https://openremote.io

GitHub:https://github.com/openremote

在线演示:https://demo.openremote.app

d5e010eeeadd2c88fd6135eb4ef20146.png

往期推荐

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

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

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

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

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

a7987b9876694b44d829fd6fa81aa577.png

9239107e7b8e75562ba3b0066e7f77ec.gif

daa1d8bda86ea1ba236b7761494670d8.gif

c29a25196dcaec9c05f1506c0653df13.gif

2ff4497d324c969908db361e09f0a260.gif

相关文章:

OpenRemote: Java 开源 IoT 物联网开发平台,匹配智慧城市、智能家居、能源管理

OpenRemote 是一个直观、用户友好的基于Java语言的开源 IoT 物联网设备管理平台,它包括从连接设备到构建应用程序和特定领域的智能应用程序的所有功能和特性。通过OpenRemote物联网平台,用户可以收集和处理来自不同设备的传感器数据,适用于智…...

GO-unioffice实现word编辑

导包 import ("fmt""log""os""time""github.com/unidoc/unioffice/common/license""github.com/unidoc/unioffice/document" ) 创建word文件 func CreateFile(name string) {filename : name ".docx&quo…...

SpringMVC的拦截器(Interceptor)

拦截器简介 SpringMVC的拦截器Interceptor,主要是对Controller资源访问时进行拦截的基本操作的技术,当然拦截后可以进行权限控制,功能增强等都是可以的。拦截器类似于JavaWeb开发中的Filter,他们之间的区别如下图所示 Filter技术…...

【git】gitlab常用命令

gitlab官网 官网:官网 中文官网:中文官网 默认的gitlab安装目录 /opt/gitlab/bin 启动 gitlab-ctl start 查看状态 gitlab-ctl status 停止 gitlab-ctl stop 重启GitLab gitlab-ctl restart 查看gitlab的配置文件 配置的路径是:/…...

解读下SWD协议以及其应用

SWD协议原理 SWD(Serial Wire Debug)协议是一种用于ARM Cortex微控制器的调试接口协议。它定义了主机计算机与目标设备之间通过SWD线进行通信的格式和规范。 SWD协议使用两根线进行通信:SWDIO(Serial Wire Debug I/O&#xff09…...

基于单目的光流法测速

目录 1.简介 2.代码实现 1.简介 基于单目的光流法是一种常见的计算机视觉技术,用于估计图像序列中物体的运动速度。它通过分析连续帧之间的像素变化来推断物体在图像中的移动情况。 背景: 光流法是计算机视觉领域中最早的运动估计方法之一&#xff0c…...

排序-算法

文章目录 一、排序的概念及引用1.1 排序概念1.2 排序运用1.3 常见排序算法 二、常见排序算法的实现2.1 插入排序2.1.1 基本思想2.1.2 直接插入排序2.1.3 希尔排序 2.2 选择排序2.2.1 基本思想2.2.2 直接选择排序2.2.3 堆排序 2.3 交换排序2.3.1 冒泡排序2.3.2 快速排序2.3.3 快…...

【特纳斯电子】基于单片机的火灾监测报警系统-实物设计

视频及资料链接:基于单片机的火灾监测报警系统-实物设计 - 电子校园网 (mcude.com) 编号: T0152203M-SW 设计简介: 本设计是基于单片机的火灾监测报警系统,主要实现以下功能: 1.通过OLED显示温度、烟雾、是否有火…...

网络安全就业形势怎么样?

泻药,以下都是我本人的肺腑之言,是答主深耕职场多年,转战数家公司总结周围朋友的从业经验才总结出来的行业真相,真心希望帮助到还没有步入职场的大家,尤其是24届的应届毕业生,多掌握些就业信息就能少走一些…...

【Golang】Go的并发和并行性解释。谁说Go不是并行语言?

偶然发现百度上有很多"师出同门"的"go是并发语言,而不是并行语言"的说法。让我顿感奇怪,"并行"说白了就是对CPU多核的利用,这年头不能利用多核的编译语言还有的混?而且还混的这么好?并且…...

k8s-16 k8s调度

调度器通过 kubernetes 的 watch 机制来发现集群中新创建且尚未被调度到 Node上的 Pod。调度器会将发现的每一个未调度的 Pod 调度到一个合适的 Node 上来运行。 kube-scheduler 是 Kubernetes 集群的默认调度器,并且是集群控制面的一部分如果你真的希望或者有这方面…...

【2023研电赛】全国技术竞赛一等奖:基于FPGA的超低时延激光多媒体终端

该作品参与极术社区组织的研电赛作品征集活动,欢迎同学们投稿,获取作品传播推广,并有丰富礼品哦~ 基于FPGA的超低时延激光多媒体终端 参赛单位:华东师范大学 指导老师:刁盛锡 参赛队员:王泽宇 谢祖炜 秦子淇…...

Annoy vs Milvus:哪个向量数据库更适合您的AI应用?知其然知其所以然

1. Annoy vs Milvus简介 Annoy 和 Milvus 都是用于向量索引和相似度搜索的开源库,它们可以高效地处理大规模的向量数据。 Annoy(Approximate Nearest Neighbors Oh Yeah): Annoy 是一种近似最近邻搜索算法,它通过构…...

android 13.0 SystemUI导航栏添加虚拟按键功能(一)

1.概述 在13.0的系统产品开发中,在系统SystemUI的原生系统中默认只有三键导航,想添加其他虚拟按键就需要先在构建导航栏的相关布局中分析结构,然后添加相关的图标xml就可以了,然后添加对应的点击事件,就可以了,接下来先分析第一步关于导航栏的相关布局情况 然后实现功能 …...

内存管理-分页、虚拟地址、虚拟内容、页面置换算法

文章目录 一、5W2H角度分析内存管理What是内存管理Why需要内存管理Who使用内存管理Where内存管理应用When需要内存管理How内存管理工作How much内存管理的成本 二、分页什么是分页分页的原理分页的优缺点分页的应用 三、虚拟地址什么是虚拟地址虚拟地址的作用虚拟地址的转换虚拟…...

【C++入门】命名空间详解(从零开始,冲击蓝桥杯)

C入门 命名空间 南喵小鸡汤程序员可以让步,却不可以退缩,可以羞涩,却不可以软弱,总之,程序员必须是勇敢的。一 . 命名空间的介绍二.命名空间的实际应用1.为什么要有命名空间我们在使用变量时,通常会为他定义一个名字,在…...

通过代码MyBatis-plus实现对表中createTime和updateTime进行自动更新

通过代码MyBatis-plus实现对表中createTime和updateTime进行自动更新 实现这样的效果可以在数据库中设置&#xff0c;但是我们一般建议在代码里实现&#xff0c; 但是总不能每次insert和update的时候都手写new当前时间 因此推荐使用mybatis-plus 1导入依赖 <dependency&g…...

HTML 实时显示本地电脑时间(精确到毫秒)

<!DOCTYPE html> <html> <head><title>实时显示本地电脑时间&#xff08;精确到毫秒&#xff09;</title> </head> <body><h1>本地电脑时间&#xff08;精确到毫秒&#xff09;&#xff1a;</h1><h1 id"clock&q…...

opencv跨平台arm交叉编译之ubuntu

目录 1. 安装交叉编译工具链2. 安装依赖3. 配置工具链3.1 新建build目录3.2 安装cmake-gui3.3 工具链配置界面进行配置3.3.1 终端输入以下命令3.3.2 点击Configure&#xff0c;弹出编译方式选择对话框&#xff1a;3.3.3 点击Next3.3.4 点击Finish3.3.5 点击Configure。3.3.6 Ge…...

Git命令全集

1、克隆代码 查看项目地址 git remote -v直接克隆 git clone url克隆指定分支 git clone -b 分支 git地址RPC failed错误:修改Git的传输字节限制 git config --global http.postBuffer 10485760002、查看分支 查看 git branch -a切换分支 git branch 分支名从指定分支…...

应用升级/灾备测试时使用guarantee 闪回点迅速回退

1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间&#xff0c; 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点&#xff0c;不需要开启数据库闪回。…...

Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务

通过akshare库&#xff0c;获取股票数据&#xff0c;并生成TabPFN这个模型 可以识别、处理的格式&#xff0c;写一个完整的预处理示例&#xff0c;并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务&#xff0c;进行预测并输…...

【AI学习】三、AI算法中的向量

在人工智能&#xff08;AI&#xff09;算法中&#xff0c;向量&#xff08;Vector&#xff09;是一种将现实世界中的数据&#xff08;如图像、文本、音频等&#xff09;转化为计算机可处理的数值型特征表示的工具。它是连接人类认知&#xff08;如语义、视觉特征&#xff09;与…...

【JVM】Java虚拟机(二)——垃圾回收

目录 一、如何判断对象可以回收 &#xff08;一&#xff09;引用计数法 &#xff08;二&#xff09;可达性分析算法 二、垃圾回收算法 &#xff08;一&#xff09;标记清除 &#xff08;二&#xff09;标记整理 &#xff08;三&#xff09;复制 &#xff08;四&#xff…...

【SpringBoot自动化部署】

SpringBoot自动化部署方法 使用Jenkins进行持续集成与部署 Jenkins是最常用的自动化部署工具之一&#xff0c;能够实现代码拉取、构建、测试和部署的全流程自动化。 配置Jenkins任务时&#xff0c;需要添加Git仓库地址和凭证&#xff0c;设置构建触发器&#xff08;如GitHub…...

Vue 模板语句的数据来源

&#x1f9e9; Vue 模板语句的数据来源&#xff1a;全方位解析 Vue 模板&#xff08;<template> 部分&#xff09;中的表达式、指令绑定&#xff08;如 v-bind, v-on&#xff09;和插值&#xff08;{{ }}&#xff09;都在一个特定的作用域内求值。这个作用域由当前 组件…...

redis和redission的区别

Redis 和 Redisson 是两个密切相关但又本质不同的技术&#xff0c;它们扮演着完全不同的角色&#xff1a; Redis: 内存数据库/数据结构存储 本质&#xff1a; 它是一个开源的、高性能的、基于内存的 键值存储数据库。它也可以将数据持久化到磁盘。 核心功能&#xff1a; 提供丰…...

stm32wle5 lpuart DMA数据不接收

配置波特率9600时&#xff0c;需要使用外部低速晶振...

PH热榜 | 2025-06-08

1. Thiings 标语&#xff1a;一套超过1900个免费AI生成的3D图标集合 介绍&#xff1a;Thiings是一个不断扩展的免费AI生成3D图标库&#xff0c;目前已有超过1900个图标。你可以按照主题浏览&#xff0c;生成自己的图标&#xff0c;或者下载整个图标集。所有图标都可以在个人或…...

【Qt】控件 QWidget

控件 QWidget 一. 控件概述二. QWidget 的核心属性可用状态&#xff1a;enabled几何&#xff1a;geometrywindows frame 窗口框架的影响 窗口标题&#xff1a;windowTitle窗口图标&#xff1a;windowIconqrc 机制 窗口不透明度&#xff1a;windowOpacity光标&#xff1a;cursor…...