4. 食品工艺模拟量点位采集与工程量转换

模拟量点位的数据链路与工程量转换

食品产线中,温度、压力、流量等模拟量在PLC侧通常以整数原始值(如0~27648、0~32767或4~20mA对应的数字量)存放,SCADA必须完成“原始值→工程量”的线性换算,才能让操作员看到℃、bar、m³/h等有物理意义的读数。本例以一条乳品杀菌工段为对象,配置3个典型模拟量点位并验证转换结果。

模拟量点位采集与工程量线性转换链路 现场仪表 PT100 温度 0~150 ℃ 4~20 mA 压力变送器 0~10 bar 4~20 mA 电磁流量计 0~30 m³/h 4~20 mA 量程下限/上限 决定工程量范围 4~20mA PLC 模拟量输入 AI 通道 0 原始值 0~27648 对应 4~20mA AI 通道 1 原始值 0~27648 对应 4~20mA AI 通道 2 原始值 0~27648 对应 4~20mA 寄存器地址 DB1.DBW0/2/4 通信读取 SCADA 工程量转换 线性转换公式 EU = (Raw − RawMin) × (EUMax − EUMin) / (RawMax − RawMin) + EUMin TT-101 杀菌温度 Raw 13824 → 75.0 ℃ 量程 0~150 ℃,Raw 0~27648 PT-102 均质压力 Raw 20736 → 7.5 bar 量程 0~10 bar,Raw 0~27648 FT-103 进料流量 Raw 6912 → 7.5 m³/h 量程 0~30 m³/h,Raw 0~27648 运行态读数与现场仪表比对,偏差 ≤ 0.5% FS 判定通过

点位参数配置

在SCADA组态软件中为每个模拟量点位建立变量,关键字段包括:原始值寄存器地址、原始值范围(RawMin/RawMax)、工程量范围(EUMin/EUMax)、工程单位、小数位数。以西门子S7-1200的0~27648原始值范围为例,配置表如下:

位号描述寄存器RawMin~RawMaxEUMin~EUMax单位小数位
TT-101杀菌温度DB1.DBW00~276480~150℃1
PT-102均质压力DB1.DBW20~276480~10bar2
FT-103进料流量DB1.DBW40~276480~30m³/h1
若仪表输出为4~20mA而PLC模块将4mA对应原始值0,则RawMin=0即代表工程量下限;若模块将4mA对应原始值5530(部分模块的欠量程偏移),则RawMin应填5530,否则零点会偏移。

转换计算与运行态验证

以TT-101为例,PLC读到原始值13824,代入公式:

EU = (13824 − 0) × (150 − 0) / (27648 − 0) + 0
   = 13824 × 150 / 27648
   = 75.0 ℃

PT-102原始值20736:EU = 20736 × 10 / 27648 = 7.50 bar;FT-103原始值6912:EU = 6912 × 30 / 27648 = 7.5 m³/h。

运行态验证步骤:

  1. 在SCADA运行画面调出三个点位的实时值,确认显示单位与小数位正确。
  2. 用现场手持校验仪或HART手操器给变送器加标准信号(如TT-101加12mA,对应50%量程即75℃),观察SCADA读数是否落在75.0±0.5℃内。
  3. 分别验证0%、25%、50%、75%、100%五个点,记录SCADA读数与标准值偏差,偏差超过0.5%FS时检查RawMin/RawMax是否与模块实际量程一致。
  4. 若读数恒定不变,检查寄存器地址与数据类型(INT/REAL)是否匹配;若读数跳变剧烈,检查是否缺少滤波或信号受干扰。
常见错误:把4~20mA的4mA误认为原始值0而实际模块输出5530,导致全量程读数偏低约20%;或把工程量上限与原始值上限填反,造成读数反向。配置完成后务必用至少两个标准信号点做交叉验证。