基于 IoT+TSDB+Quick BI 云产品架构的楼宇环境监控实战

简介: 无需服务器开发,实现 IoT 业务交付

今天给大家带来基于阿里云 IoT 物联网平台 + TSDB 时序时空数据库 + Quick BI 报表三大云产品组合实现楼宇环境监控端到端开发实战。


少啰嗦,先看效果。
image.png
部署后效果


   0.技术架构   


本次 IoT 物联网开发实战我们在室内部署 4 个温湿度传感器,实时采集数据,每10秒发送到阿里云 IoT 物联网平台,通过规则引擎写入 TSDB时序数据库。在Quick BI 工作台,创建数据报表以分钟维度展示室内温湿度变化曲线。

技术架构如下:
image.png


   1.物联网平台开发   


1.1.免费开通阿里云 IoT物联网云服务:
https://www.aliyun.com/product/iot-deviceconnect
/>



1.2.创建产品室内温湿度计器,选择自定义品类,直连设备,定义物模型,包含2个属性温度,湿度:
image.png


1.3.注册设备,获取身份三元组。


image.png


1.4.配置规则引擎,实时流转数据到 TSDB中
image.png


1.5.完成设备端开发,实时上报温湿度数据。
我们以Node.js脚本来模拟设备上报,代码如下:

// 依赖mqtt库
const mqtt = require('aliyun-iot-mqtt');
// 设备身份
var options = {
    productKey: "device productKey",
    deviceName: "device deviceName",
    deviceSecret: "device deviceSecret",
    regionId: "cn-shanghai"
};

// 建立连接
const client = mqtt.getAliyunIotMqttClient(options);

//模拟 设备 上报数据(原始报文)
setInterval(function() {
    client.publish(
        `/sys/${options.productKey}/${options.deviceName}/thing/event/property/post`
        , getPostData()
        );

}, 10 * 1000);

// 模拟 温湿度
function getPostData() {

    const payload = {
        id: Date.now(),
        version:"1.0",
        params: {
            temperature: 10+Math.floor(Math.random() * Math.floor(50)),
            humidity: 10+Math.floor(Math.random() * Math.floor(50))
        },
        method: "thing.event.property.post"
    }

    console.log("payload=[ " + payload + " ]")
    return JSON.stringify(payload);
}

   2.TSDB数据库   


2.1.创建时序数据库,并开通公网 TSQL 连接串
image.png


2.2.IoT设备数据写入TSDB的记录
image.png


   3.Quick BI   


3.1.开通Quick BI服务,添加数据源,输入TSDB连接参数。
image.png
数据源添加成功
image.png


3.2.基于数据源的温度和湿度指标,创建数据集。
image.png


3.3.创建数据仪表板,并根据业务需求编辑图表。
image.png


3.4.发布仪表板。
image.png


3.5.在浏览器中查看楼宇环境监控报表。
image.png
 


【往期回顾】
1、39张IoT传感器工作原理GIF图汇总
2、IoT 设备发送 MQTT 请求的曲折经历
3、20元体 Arduino 环境监测仪开发
4、智能手持测温枪开发实践
5、JMeter 压测 MQTT 服务性能实战

相关实践学习
阿里云实时数仓实战 - 用户行为数仓搭建
课程简介 1)学习搭建一个数据仓库的过程,理解数据在整个数仓架构的从采集、存储、计算、输出、展示的整个业务流程。 2)整个数仓体系完全搭建在阿里云架构上,理解并学会运用各个服务组件,了解各个组件之间如何配合联动。 3 )前置知识要求:熟练掌握 SQL 语法熟悉 Linux 命令,对 Hadoop 大数据体系有一定的了解   课程大纲 第一章 了解数据仓库概念 初步了解数据仓库是干什么的 第二章 按照企业开发的标准去搭建一个数据仓库 数据仓库的需求是什么 架构 怎么选型怎么购买服务器 第三章 数据生成模块 用户形成数据的一个准备 按照企业的标准,准备了十一张用户行为表 方便使用 第四章 采集模块的搭建 购买阿里云服务器 安装 JDK 安装 Flume 第五章 用户行为数据仓库 严格按照企业的标准开发 第六章 搭建业务数仓理论基础和对表的分类同步 第七章 业务数仓的搭建  业务行为数仓效果图  
相关文章
|
7月前
|
数据采集 运维 数据可视化
AR 运维系统与 MES、EMA、IoT 系统的融合架构与实践
AR运维系统融合IoT、EMA、MES数据,构建“感知-分析-决策-执行”闭环。通过AR终端实现设备数据可视化,实时呈现温度、工单等信息,提升运维效率与生产可靠性。(238字)
|
6月前
|
Cloud Native Serverless API
微服务架构实战指南:从单体应用到云原生的蜕变之路
🌟蒋星熠Jaxonic,代码为舟的星际旅人。深耕微服务架构,擅以DDD拆分服务、构建高可用通信与治理体系。分享从单体到云原生的实战经验,探索技术演进的无限可能。
微服务架构实战指南:从单体应用到云原生的蜕变之路
|
6月前
|
监控 Cloud Native Java
Spring Boot 3.x 微服务架构实战指南
🌟蒋星熠Jaxonic,技术宇宙中的星际旅人。深耕Spring Boot 3.x与微服务架构,探索云原生、性能优化与高可用系统设计。以代码为笔,在二进制星河中谱写极客诗篇。关注我,共赴技术星辰大海!(238字)
1094 2
Spring Boot 3.x 微服务架构实战指南
|
7月前
|
消息中间件 数据采集 NoSQL
秒级行情推送系统实战:从触发、采集到入库的端到端架构
本文设计了一套秒级实时行情推送系统,涵盖触发、采集、缓冲、入库与推送五层架构,结合动态代理IP、Kafka/Redis缓冲及WebSocket推送,实现金融数据低延迟、高并发处理,适用于股票、数字货币等实时行情场景。
1006 3
秒级行情推送系统实战:从触发、采集到入库的端到端架构
|
7月前
|
设计模式 人工智能 API
AI智能体开发实战:17种核心架构模式详解与Python代码实现
本文系统解析17种智能体架构设计模式,涵盖多智能体协作、思维树、反思优化与工具调用等核心范式,结合LangChain与LangGraph实现代码工作流,并通过真实案例验证效果,助力构建高效AI系统。
839 7
|
7月前
|
JSON 供应链 监控
1688商品详情API技术深度解析:从接口架构到数据融合实战
1688商品详情API(item_get接口)可通过商品ID获取标题、价格、库存、SKU等核心数据,适用于价格监控、供应链管理等场景。支持JSON格式返回,需企业认证。Python示例展示如何调用接口获取商品信息。
|
传感器 数据可视化 搜索推荐
瓴羊Quick BI助力深圳光明环境水务公司举办水务数据应用大会暨第二届“光环杯”BI应用大赛
瓴羊Quick BI助力深圳光明环境水务公司举办水务数据应用大会暨第二届“光环杯”BI应用大赛
410 0
Quick BI V5.0发布:一键解锁智能小Q等全新智能商业分析能力
Quick BI V5.0发布:一键解锁智能小Q等全新智能商业分析能力
670 0