ThingsBoard物联网平台学习日志

目录

前言

一、环境部署与配置

1.1 PostgreSQL 安装配置

1.2 Thingsboard安装配置

1.3 Docker安装配置

1.4 Thingsboard界面

二、平台管理配置

2.1 初始化平台

2.2 租户与用户管理

2.3 租户管理员界面

三、设备配置与设备

3.1 设备配置

3.2 设备

3.3 告警规则

四、仪表板创建与数据可视化

五、规则链配置与数据处理

5.1 规则链

5.2 配置规则节点

结语


前言

ThingsBoard是一个开源的物联网平台,专为快速开发、管理和扩展IoT项目而设计。它为云端和本地IoT基础设施提供了开箱即用的解决方案,使开发者能够轻松地配置设备、管理资产、收集和可视化数据,以及分析遥测数据。

本文记录了我从环境搭建到规则链开发的完整实践过程,旨在为同样入门 ThingsBoard 的开发者提供一份可复用的操作指南。在我的学习过程中,通过结合PostgreSQL数据库和Docker容器化技术,我从零搭建一套完整的 IoT 平台,涵盖 PostgreSQL + Docker 部署、设备管理、数据收集、数据处理规则链、可视化仪表板和告警机制。

整套方案采用 ThingsBoard + PostgreSQL + Docker 的组合,PostgreSQL 作为主数据库,Docker 用于容器化运行 ThingsBoard 服务。

一、环境部署与配置

1.1 PostgreSQL 安装配置

从官网下载安装包:

EDB: Open-Source, Enterprise Postgres Database Management

选择合适的安装包,下载到本地,然后运行安装程序,双击下载的安装包,遵循安装向导。

创建数据库:

参考教程:

postgreSQL安装教程及使用方法(保姆级)-CSDN博客

1.2 Thingsboard安装配置

从github下载压缩包:

https://github.com/thingsboard/thingsboard/releases/download/v3.4.4/thingsboard-windows-3.4.4.zip

将压缩包解压到目标目录,例如: Q:\thingsboard\thingsboard_backend\thingsboard-windows-3.4.4\thingsboard

找到: Q:\thingsboard\thingsboard_backend\thingsboard-windows-3.4.4\thingsboard\conf\thingsboard.yml,打开

找到PostgreSQL配置部分,修改为之前创建的数据库信息:

参考教程:

开源物联网平台Thingsboard安装部署详细教程(适用于windows、linux平台)-CSDN博客

1.3 Docker安装配置

从官网下载安装包:

Docker Desktop: The #1 Containerization Tool for Developers | Docker

选择合适的安装包,下载到本地,然后运行安装程序,遵循安装向导。

安装完成后,打开命令提示符或PowerShell,运行 docker --version命令,能显示版本号即表示安装成功。

为了提高下载速度,配置docker下载镜像:

创建项目目录:

Q:\thingsboard\thingsboard_backend\docker\data\thingsboard,用于存放配置文件和数据。

在该目录下创建 docker-compose.yml文件。

编写docker-compose.yml:

services:
  thingsboard:
    image: thingsboard/tb-postgres:latest
    restart: always
    platform: linux/amd64 
    ports:
      - "9090:9090"   # Web UI端口
      - "8080:8080"   # HTTP API 和前端界面
      - "1883:1883"   # MQTT 协议端口
      - "5683:5683/udp" # CoAP 协议端口
    environment:
      TB_QUEUE_TYPE: in-memory
    volumes:
      - ./data:/data
      - ./logs:/var/log/thingsboard
    depends_on:
      - postgres

  postgres:
    image: postgres:13
    restart: always
    platform: linux/amd64 
    environment:
      POSTGRES_DB: thingsboard
      POSTGRES_PASSWORD: postgres
    volumes:
      - ./postgres-data:/var/lib/postgresql/data

在该目录下打开命令行,执行以下命令:

docker-compose up -d

打开docker,如果看到以下容器在运行,即为操作成功:

1.4 Thingsboard界面

完成以上,thingsboard可以正常运行,登陆 http://localhost:9090http://localhost:8080 ,可以看到:

初始密码:sysadmin

二、平台管理配置

2.1 初始化平台

平台管理配置是使用ThingsBoard的核心起点,涉及系统初始化、用户角色体系的理解与实际操作。

登陆ThingsBoard:

2.2 租户与用户管理

在ThingsBoard的多租户架构中,租户是一个核心概念,代表一个独立的客户或组织单元。系统管理员可以为每个客户创建一个租户。每个租户都有自己的管理员账户,该管理员可以独立管理其下的:设备、资产和实体视图、客户和最终用户、规则链、仪表板、告警。

创建租户配置:

创建租户:

创建用户:

2.3 租户管理员界面

在ThingsBoard中,租户管理员拥有对规则链、客户、资产、设备、仪表板等资源的全面管理权限。我可以为租户创建普通用户,并限制其不能操作规则链、高级功能、安全设置等。

三、设备配置与设备

3.1 设备配置

创建设备配置:

3.2 设备

创建设备:

外部通过mqtt连接设备,通过topic:v1/devices/me/telemetry发送遥测数据:

ThingsBoard端接收:

3.3 告警规则

在设备配置里添加告警规则:

当遥测数据值越界,ThingsBoard触发告警:

四、仪表板创建与数据可视化

创建仪表板:

添加图表部件:

五、规则链配置与数据处理

ThingsBoard的规则引擎是一个基于事件驱动的系统,可以根据定义好的规则对设备产生的数据进行处理。规则链是一系列按顺序执行的规则节点,每个节点都可以对传入的数据进行特定的处理,如过滤、转换、存储或发送等。

5.1 规则链

创建规则链:

添加规则节点:

5.2 配置规则节点

配置script节点:

script节点调试:

配置mqtt节点:

结语

通过系统学习ThingsBoard,我掌握了物联网平台的核心概念和实际操作技能。从环境部署、数据库配置到设备管理、数据可视化和告警处理,我构建了一个完整的物联网平台解决方案。

学习收获

  1. 理解了ThingsBoard架构和核心组件

  2. 掌握了ThingsBoard与PostgreSQL的集成配置

  3. 学会了使用Docker容器化部署ThingsBoard

  4. 熟练掌握了设备管理、规则链配置和仪表板创建

  5. 了解了告警机制和物联网数据流处理

通过本次学习,我为后续的物联网项目开发奠定了坚实基础,能够快速构建可靠的物联网解决方案,实现设备数据的采集、处理、可视化和智能告警。本次 ThingsBoard 学习过程的全记录,希望能对各位有所参考。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值