使用 deepseek 快速搭建 TDengine IDMP demo

背景

TDengine IDMP 产品的客户多为工控场景。在工控体系中,系统自下而上通常划分为现场设备层、现场控制层、过程监控层、生产管理层以及企业资源层。因此,最初的数据来源于现场设备层,这些数据也是后续所有业务驱动的来源。对于TDengine而言,数据采集后汇聚到该平台,随后可以按设备或组织架构的形式进行展示,其内容仍围绕设备数据展开。因此,如何高效获取素材来源,决定后面工作效率和展示效果。

点表信息

在工业自动化、数据采集与监控系统(SCADA)等领域中最基础的文件是点表,通常指的是一个包含所有数据点(或信号点)的列表。每个数据点代表一个特定的测量值或状态,例如温度、压力、流量、开关状态等。点表通常包含如下信息:

  1. 点号(Point ID):唯一标识一个数据点的编号。
  2. 点名称(Point Name):数据点的描述性名称。
  3. 数据类型(Data Type):例如整型、浮点型、布尔型等。
  4. 工程单位(Engineering Unit):例如°C、MPa、%等。
  5. 量程范围(Range):例如0-100,表示测量范围。
  6. 报警上下限(Alarm Limits):例如高报警、高高报警、低报警、低低报警等。
  7. 采集周期(Sampling Interval):数据采集的频率。
  8. 备注(Comment):其他相关信息。

只要点表掌握住,IDMP的便有了相应的数据源,后面构建元素、分析、面板就水到渠成。

借助 deepseek 等获取点表

在deepseek中,随便输入一个场景后面带上"点表"字样,便会输出该场景的工艺点表。

举例,想做咖啡烘培工厂场景,向deepseek提出:

Plain 复制代码
对咖啡机数据采集场景点表信息,包含量程、报警限等信息

基于您的指令,DeepSeek将会生成一份结构化的点表,类似于以下内容:

点表详情

点名 描述 数据类型 工程单位 量程 采集频率 报警限 (Lo/LoLo/Hi/HiHi) 记录标志 控制标志
1. 温度相关参数
TIC_01.RTD 滚筒/热风温度(实际值) Float °C 0 - 300 1秒 HiHi: 250°C, Hi: 230°C
TIC_01.SP 滚筒/热风温度(设定值) Float °C 0 - 300 5秒 -
TIC_01.OUT 滚筒/热风温度(控制输出) Float % 0 - 100 5秒 -
BT_01 豆温探针1温度 Float °C 0 - 250 1秒 HiHi: 240°C
BT_02 豆温探针2温度 Float °C 0 - 250 1秒 HiHi: 240°C
T_Ambient 环境温度 Float °C -10 - 50 30秒 Hi: 35°C, Lo: 15°C
T_Cooler 冷却盘温度 Float °C 0 - 100 5秒 Hi: 50°C
2. 环境与燃气参数
H_Ambient 环境湿度 Float %RH 0 - 100 30秒 Hi: 70%
P_Gas 燃气入口压力 Float kPa 0 - 10 5秒 Lo: 1.5kPa, Hi: 4.0kPa
FIC_01.RTD 燃气流量(实际值) Float m³/h 0 - 5 5秒 HiHi: 4.5 m³/h
FIC_01.SP 燃气流量(设定值) Float m³/h 0 - 5 5秒 -
3. 机械与风门参数
S_Drum 滚筒转速 Float RPM 0 - 100 5秒 Lo: 20 RPM, Hi: 80 RPM
S_Drum.SP 滚筒转速设定值 Float RPM 0 - 100 5秒 -
D_Damper 风门开度 Float % 0 - 100 5秒 -
D_Damper.SP 风门开度设定值 Float % 0 - 100 5秒 -
4. 冷却与时间参数
T_Cooling.Start 冷却开始温度 Float °C 0 - 250 事件触发 -
T_Cooling.Time 冷却阶段已用时间 Integer 0 - 600 1秒 Hi: 300秒
Timer_Total 总烘焙时间 Integer 0 - 1800 1秒 -
Event_FirstCrack 一爆开始时间戳 DateTime - - 事件触发 -
Event_SecondCrack 二爆开始时间戳 DateTime - - 事件触发 -
5. 计算与衍生参数
ROR_BT 豆温升温率 Float °C/min -20 - 50 5秒 Hi: 25°C/min, Lo: 5°C/min
Delta_BT_ET 豆温与环境温差 Float °C -50 - 300 5秒 -

关键信息解释与应用

  1. 量程 (Range):
    1. 根据实际物理可能性和传感器选型设定。例如,滚筒温度上限设为300°C,为安全余量留出空间。
    2. 豆温量程通常低于热风温度,因为豆子本身温度不会超过热风。
  2. 报警限 (Alarm Limits):
    1. HiHi (高高报警) / LoLo (低低报警): 紧急报警,通常表示设备或工艺处于极度危险状态,可能需要自动触发紧急停机。例如,滚筒温度过高可能引发火灾。
    2. Hi (高报警) / Lo (低报警): 预警报警,提醒操作员工艺出现偏差,需要干预。例如,环境温度过高可能影响设备散热和烘焙一致性。
    3. 升温率(ROR)的报警限对防止"烘焙过快"或"失温"至关重要。
  3. 采集频率 (Scan Rate):
    1. 关键工艺参数(如豆温、滚筒温度):需要高频采集(1-5秒),以捕捉快速变化和绘制平滑曲线。
    2. 缓慢变化参数(如环境温湿度):采集频率可以较低(30秒或更长),以节省存储空间和计算资源。
    3. 事件参数(如一爆时间):由操作员手动标记或由声音/温度特征自动识别,为事件触发记录。
  4. 控制标志 (Control Flag):
    1. 标记为 "是" 的点(如 TIC_01.SPS_Drum.SP)是烘焙配方(Recipe)的核心组成部分。自动化系统可以根据预设的烘焙曲线,自动调整这些设定值,以实现烘焙过程的复现和优化。
  5. 计算与衍生参数:
    1. 升温率 (ROR): 这是烘焙师最重要的观察指标之一,通过计算当前豆温与之前时刻(如30秒前)豆温的差值得到。它可以帮助预测和判断烘焙发展阶段。
    2. 事件标记: 如一爆、二爆时间,是定义烘焙度(Roast Level)的关键节点。
      这份点表为构建一个完整的咖啡烘焙数据采集与监控系统提供了坚实的基础,确保了数据的一致性、可追溯性,并为过程优化、质量控制和故障诊断提供了强有力的数据支持。

制作TDengine TSDB表格

有了点表,我们可以根据"工艺->设备"进行划分。因此我们创建了咖啡烘焙场景的超级表信息,这个过程非常简单,无非就是将上述点表按照划分好模式建表,标签需要增加path以及devicename即可。

制作IDMP所需的CSV文件

目前TDengine IDMP支持CSV导入,因此我们结合上一步来完成CSV文件导入,实现点表信息到数据库超级表和子表的映射,核心是将你的"点表"中的列与TDengine的数据模型进行正确的关联,以此进行数据导入,这个过程也是将点表信息以及数据库存储超级表和子表信息映射过程,操作起来也是比较简单。

这里需要注意要用utf-8格式导入,可以通过保存成csv文件后,通过文本进行打开,另存为utf-8格式保存。如下图所示:

python仿真

您可以通过一个简单的Python程序来完成此过程:使用随机函数生成数据,并发至TDengine。您也可向DeepSeek描述需求,它即可为您生成这段代码。

复合指标

在完成基础数据接入后,一定要利用复合指标功能,例如工艺一致性指数、设备综合效率(OEE)、批次单位能耗等。这类指标极具业务价值,能够将数据分析能力从简单的状态监视,提升至生产优化与决策支持的层次,这构成了数字化平台区别于传统SCADA系统的核心竞争力。

总结

整体操作流程较为简易。主要工作集中在两个环节:一是将DeepSeek生成的点表信息转换为符合IDMP格式的CSV配置文件;二是在平台中配置复合指标的计算与展示面板。这两项工作均无需复杂编码,因此整体耗时有限,效率很高。从数据准备到最终展示,全流程演示可在三小时内完成。

关于 TDengine

TDengine 专为物联网IoT平台、工业大数据平台设计。其中,TDengine TSDB 是一款高性能、分布式的时序数据库(Time Series Database),同时它还带有内建的缓存、流式计算、数据订阅等系统功能;TDengine IDMP 是一款AI原生工业数据管理平台,它通过树状层次结构建立数据目录,对数据进行标准化、情景化,并通过 AI 提供实时分析、可视化、事件管理与报警等功能。

相关推荐
周杰伦_Jay2 小时前
【操作系统】进程管理与内存管理
java·数据库·缓存
云草桑2 小时前
DBA 运维 数据库 备份 还原 MSSQL
数据库·dba·mssql
Jackyzhe2 小时前
Flink源码阅读:如何生成StreamGraph
大数据·flink
Hello.Reader2 小时前
Flink SQL Window Deduplication按窗口“保留第一条/最后一条”记录(Streaming)
大数据·sql·flink
给朕把屎铲了3 小时前
涛思数据库:DB error: some vnode/qnode/mnode(s) out of service (10.703928s)
大数据·数据库·涛思数据
饭勺oO3 小时前
ACP:让 AI 编程工具配置从此告别碎片化 —— 一款开源的 AI 配置管理平台
ai
成长之路5143 小时前
【地理数据】城市居住人口及工作人口分布数据(更新至2023年)
大数据
先做个垃圾出来………3 小时前
如何判断一个SQL逻辑是否需要拆分为多个事务单元
数据库·sql·oracle
嫂子的姐夫3 小时前
py连接MongoDB
数据库·爬虫·mongodb