压力变送器4-20mA信号与工程单位的线性映射

发布于 2026-03-06 12:57:01 · 浏览 3 次 · 评论 0 条

在工业控制和过程自动化领域,压力变送器是最常见的传感器之一。它输出的 4-20mA 电流信号,需要被控制系统(如 PLC、DCS)转换成我们熟悉的工程单位(如 MPa、Bar、mH₂O)。这个过程就是线性映射。掌握其原理和方法,是电气、仪表工程师的必备技能。本文将手把手教你如何理解和实现这种转换。


一、 核心原理:为什么是 4-20mA?

首先,明白两个关键点:

  1. “活零”概念4mA 代表测量范围的 0%20mA 代表测量范围的 100%4mA 的“活零”点可以用于判断线路是否断线(电流低于 4mA 则可能断线或故障)。
  2. 线性关系:在变送器量程内,物理量的变化与输出电流的变化成 正比

假设一个压力变送器的量程是 0~1.0 MPa。那么:

  • 当压力为 0 MPa 时,输出电流 = 4 mA
  • 当压力为 0.5 MPa(50%)时,输出电流 = 12 mA
  • 当压力为 1.0 MPa 时,输出电流 = 20 mA

二、 数学基础:一个万能的公式

所有线性映射都基于一次函数(直线方程):

$$ y = kx + b $$

其中:

  • $y$:我们想要得到的 工程值(如压力值)。
  • $x$:我们实际测量到的 信号值(如 mA 电流值,或经过模数转换后的数字量)。
  • $k$:比例系数(斜率)。
  • $b$:偏移量(截距)。

我们的任务就是根据变送器的量程,求出 $k$ 和 $b$。

推导过程
已知两个点:

  • 点 1: ( $x_1$, $y_1$ ) = ( 4, 量程下限 )
  • 点 2: ( $x_2$, $y_2$ ) = ( 20, 量程上限 )

斜率 $k$ 的计算公式为:

$$ k = \frac{y_2 - y_1}{x_2 - x_1} = \frac{\text{量程上限} - \text{量程下限}}{20 - 4} = \frac{\text{量程跨度}}{16} $$

偏移量 $b$ 的计算公式为(将点1代入 $y = kx + b$):

$$ b = y_1 - k \cdot x_1 = \text{量程下限} - k \times 4 $$

最终通用公式

$$ \text{工程值} = \left( \frac{\text{量程上限} - \text{量程下限}}{16} \right) \times (\text{当前mA值} - 4) + \text{量程下限} $$


三、 实操步骤:从现场信号到屏幕显示

整个过程可以分为三个环节,我们用流程图来清晰展示:

graph TD A[“现场物理压力”] --> B[“压力变送器”] B -- “输出4-20mA电流信号” --> C[“PLC/DCS模拟量输入模块”] C -- “模数转换 ADC” --> D[“得到原始数字量 Raw_Value”] D --> E{“在程序中进行标度变换”} E --> F[“最终工程值显示/使用”]

下面我们分解每个步骤。


步骤 1:确认硬件参数

在编程之前,必须搞清楚三件事:

  1. 变送器量程:例如,0 ~ 1.6 MPa。这个通常标在变送器铭牌上。
  2. PLC/DCS 模拟量模块量程:模块需要设置成接收 4-20mA 信号。例如,某模块对应 4-20mA 的数字量范围是 6400 ~ 32000
  3. 接线是否正确:确保变送器、电源、输入模块之间是 两线制四线制 正确连接。

步骤 2:理解模数转换(ADC)后的数字量

PLC 不能直接处理 mA 信号。模拟量输入模块会进行 ADC(模数转换),将 4-20mA 电流转换成一个整数,我们称之为 原始值(Raw_Value)

不同品牌的 PLC,这个原始值的范围不同:

  • 西门子 S7-1200/1500(标准范围):4mA 对应 553020mA 对应 27648
  • 三菱 FX 系列4mA 对应 020mA 对应 4000(或 2000,取决于分辨率设置)。
  • 欧姆龙 CP1E4mA 对应 020mA 对应 6000
  • 罗克韦尔(AB)4mA 对应 624120mA 对应 31206

你必须查阅你的模块手册! 我们以西门子标准范围为例进行后续计算。


步骤 3:在控制系统中进行标度变换

这是核心操作。我们有三种常见场景。

场景 A:已知当前电流值,求压力值(最基础)
假设变送器量程为 0 ~ 10 bar,测得电流为 12 mA

  1. 直接代入通用公式
    $$ \text{压力值} = \frac{10 - 0}{16} \times (12 - 4) + 0 = 0.625 \times 8 = 5.0 \text{ bar} $$
    所以,12 mA 对应 5.0 bar

场景 B:在 PLC 编程中实现(以西门子为例)
假设变送器量程:0.5 ~ 3.0 MPa。PLC 读取到的原始值 PIW752 = 20000

  1. 先找出电流值(可选,帮助理解):
    西门子中,电流和数字量的关系也是线性的。
    $$ \text{当前电流} = \frac{20000 - 5530}{27648 - 5530} \times (20 - 4) + 4 \approx 14.48 \text{ mA} $$

  2. 更高效的方法:直接建立原始值与工程值的关系
    我们知道两个对应点:

    • 工程值下限 0.5 MPa 时,原始值 = 5530
    • 工程值上限 3.0 MPa 时,原始值 = 27648
      代入一次函数公式求新的 $k$ 和 $b$:
      $$ k‘ = \frac{3.0 - 0.5}{27648 - 5530} \approx \frac{2.5}{22118} \approx 0.00011303 $$
      $$ b’ = 0.5 - k‘ \times 5530 \approx 0.5 - 0.625 \approx -0.125 $$
      (注:此处的 $b’$ 为负是正常的,因为原始值起点 5530 不为零)
  3. 在 PLC 中编程
    通常使用 “缩放” 功能块,如西门子的 Scale 指令。

    • 输入参数
      • IN20000 (来自 PIW752
      • HI_LIM3.0 (工程上限)
      • LO_LIM0.5 (工程下限)
      • BIPOLARFALSE (单极性 4-20mA
    • 输出 OUT:功能块会自动计算出约为 1.88 MPa

    如果你用的 PLC 没有现成指令,就需要自己写一段计算程序:

    // 结构化文本 (ST) 示例
    Raw_Value := PIW752; // 读取原始值,例如20000
    Engineering_Value := (Raw_Value - 5530.0) * (3.0 - 0.5) / (27648.0 - 5530.0) + 0.5;
    // 计算结果 Engineering_Value ≈ 1.88 MPa

场景 C:反向计算——已知所需工程值,求应有的电流或数字量
用于调试或输出设定。例如,想要变送器显示 2.0 MPa(量程 0.5~3.0 MPa),应该输出多少 mA

  1. 先求百分比
    $$ \text{百分比} = \frac{2.0 - 0.5}{3.0 - 0.5} \times 100\% = 60\% $$
  2. 求对应电流
    $$ \text{电流} = 4 + 16 \times 60\% = 4 + 9.6 = 13.6 \text{ mA} $$
  3. 求西门子 PLC 对应的数字量(如果需要):
    $$ \text{数字量} = 5530 + (27648 - 5530) \times 60\% \approx 5530 + 13270.8 \approx 18801 $$

四、 故障排查技巧

当压力显示不准或无显示时,按以下顺序排查:

  1. 检查电源与接线

    • 测量回路电流:使用万用表 串联 到回路中,测量电流值。
      • 如果电流为 0 mA:检查 24V 电源 是否正常,线路是否 断路
      • 如果电流约 3.8 mA 或低于 4 mA:可能是变送器 损坏 或供电不足。
      • 如果电流为 >20 mA(如 21mA):可能是变送器 过载 损坏或设置错误。
      • 如果电流在 4-20mA 之间但波动:检查是否有 强电磁干扰,信号线是否与动力线分开。
  2. 检查硬件配置

    • 确认 DCS/PLC 的 模拟量输入通道 设置是否正确(是否为 4-20mA)。
    • 确认 量程卡(老式系统)或 软件组态 中的跳线设置是否正确。
  3. 检查软件设置与计算

    • 核对程序中的 量程上下限 参数是否与变送器铭牌一致。
    • 核对 模数转换原始值范围 是否与硬件手册一致。
    • 检查 计算公式 是否正确,特别是减 4mA 和除以 16 的环节。
  4. 校准与验证

    • 使用 过程校验仪(可精确输出 4-20mA 信号)模拟变送器。
      • 输出 4 mA,查看系统是否显示 量程下限
      • 输出 12 mA,查看系统是否显示 50% 量程值。
      • 输出 20 mA,查看系统是否显示 量程上限
    • 如果校验仪输入显示正确,但系统显示错误,问题在 系统侧(组态或公式)。
    • 如果校验仪输入显示都不正确,问题在 变送器侧,需对变送器进行 零点量程 校准。

五、 高级应用与注意事项

  1. 迁移量程(Elevated Zero)
    有些变送器量程不是从零开始,例如 -0.1 ~ 0.1 MPa。公式依然适用,只需将 量程下限 设为 -0.1量程上限 设为 0.1 即可。此时 4mA 对应 -0.1 MPa12mA 对应 0 MPa20mA 对应 0.1 MPa

  2. 开方运算(用于流量)
    如果压力变送器用于测量差压并计算 流量,流量与差压的 平方根 成正比。因此,在将差压值转换为流量值时,需要先进行线性映射得到差压值,再对结果 开平方
    $$ \text{流量百分比} = \sqrt{\frac{\text{当前差压值} - \text{差压量程下限}}{\text{差压量程跨度}}} \times 100\% $$
    在 DCS/PLC 中,通常有专用的 “流量积算” 功能块来处理此计算。

  3. 温度补偿
    在高精度场合,需考虑环境温度对变送器输出的影响。高端变送器自带温度传感器,可通过内置算法或上位机软件进行补偿。

  4. 信号滤波
    在程序中对转换后的工程值进行 滤波处理(如移动平均滤波、一阶滞后滤波),可以抑制现场干扰导致的数值跳动,使显示更稳定。

评论 (0)

暂无评论,快来抢沙发吧!

扫一扫,手机查看

扫描上方二维码,在手机上查看本文