首页 > 调试及软件 > 文章内容

富士 PLC PID 块—实操设置与编程(含占位示意图)

时间: 2025-10-30 22:06浏览量:20次
富士 PLC PID 块—实操设置与编程(含占位示意图)


MICREX-SX 系列(SPH/SSN 等,软件:SX-Programmer)为例;不同项目模板中 PID 块名称略有差异(如 PIDPID_AutoPID2 等),本文用通用端口名讲清“怎么接、怎么算、怎么调”。

0. 一张图看懂 PID 块(SVG 占位,可直接用)

PID 功能块(占位示意)RUN(使能)MODE(0=自动 / 1=手动)AT_START(启动自整定,可选)PV(过程值,工程量)SP(设定值,工程量)Kp(比例增益)/ 或 PB(比例带 %FS)Ti(积分时间)Td(微分时间)Ts(采样周期 ms)MV_MAN(手动输出 %)AT_DONE(整定完成)ERR(错误)ERR_ID(错误代码)MV(输出 % 0..100)PID 实例Anti-windup, Bumpless, SP Filter

注:你的项目里块名可能叫 PIDPID_AutoPID2,但端口语义一致。可将本 SVG 当“占位图”嵌入到产品/教程页。

1. 从 0 到 1:接线 → 量程 → 块参数(一步到位)

① 输入(PV)与设定(SP)

  • AI 模块量程:选择 0–10V4–20mA,在模块参数里开启对应量程与滤波。
  • 线性映射:将原始码值映射到工程量。例:若 0–10V→0..4000,温度 0..200 ℃,则PV = Raw * 200 / 4000。
  • SP 来自 HMI 或配方寄存器;建议做 限幅步长限制(防跳变)。

② PID 采样周期

  • 把 PID 调用放在恒定周期任务(如 10 ms/20 ms)。
  • 把周期值写给Ts(毫秒)。周期越稳定,控制越稳。

③ 输出(MV)

  • 模拟量:MV[%]→ DA 模块(0–10V/4–20mA),线性映射到码值。
  • 加热/电磁阀:用 时间比例(SSR 占空),周期 0.5–5 s。
  • 变频器频率:MV→ 模拟给定或通讯设定。
建议加入 Anti-windup(积分抗饱和)与 Bumpless(手自切换无扰)逻辑;多数模板自带,也可在外层实现限幅与跟踪。

2. 参数怎么填:P/I/D 与常用初值

参数 意义 常用起步 备注
Kp(或 PB) 比例环节强度;有的块用 增益 Kp,有的用 比例带 PB% Kp:1.0~5.0;PB:5~20% PB 越小越激进;Kp 越大越激进
Ti 积分时间,消除静差 2~20 s 为 0 表示无积分
Td 微分时间,抑制超调 0~2 s 为 0 表示无微分
MV 上/下限 输出限幅 0%~100% 执行器范围保护
Ts 采样周期 10~100 ms 与任务周期一致
AT_START 自整定触发 按需 整定期间关注安全与极限

起步后再微调:超调大→增大 PB(或减小 Kp)、或增大 Td;稳态慢→缩小 PB(或增大 Kp)、或减小 Ti。

3. 梯形图(LAD)占位示例|SX-Programmer

// 假设:AI 原始值 D100(0..4000 对应 0..200℃),SP 在 D110,PID 输出在 D120(0..100%)
// R010 为控制使能;R011 为手动;R012 触发自整定;R013 为报警复位

|--[/]--------------------------[ MOV 0 D120 ]---------------------------------|
|  (报警/急停)                                                             |
|----------------------------------------------------------------------------|

|--[ R010 ]---------------------[ CALL PID ]----------------------------------|
|                                      |                                      |
|   RUN = R010                         |  PV  = D100 * 200 / 4000 → W         |
|   MODE = R011                        |  SP  = D110                           |
|   AT_START = R012                    |  Kp/PB/Ti/Td/Ts = 来自参数区          |
|   MV_MAN = D130                      |  MV → D120(0..100%)                 |
|----------------------------------------------------------------------------|

|--[ ]---( DA 输出/或 TPO SSR 驱动 )-----------------------------------------|
|  D120                                                                      |
|----------------------------------------------------------------------------|

说明:指令名与CALL PID形式因模板不同而异(也可能是PID_Auto等);关键在于 端口含义与数据流:AI→工程量→PID→DA/SSR。

4. 结构化 ST 调用(便于复用)

// 变量(示意)
VAR
    PV_raw : INT;      // AI 原始
    PV     : REAL;     // 工程量
    SP     : REAL := 100.0;
    MV     : REAL;     // 0..100%
    RUN    : BOOL := TRUE;
    MODE   : BOOL := FALSE;   // FALSE=自动, TRUE=手动
    AT     : BOOL := FALSE;   // 自整定触发
    Kp     : REAL := 2.0;     // 或 PB := 10.0 {REAL}
    Ti     : REAL := 5.0;     // 秒
    Td     : REAL := 0.5;     // 秒
    Ts     : REAL := 0.02;    // 采样 20ms
    MV_MAN : REAL := 0.0;
END_VAR

// 线性映射:0..4000 → 0..200.0 ℃
PV := REAL(PV_raw) * 200.0 / 4000.0;

// 调用 PID:块名以项目模板为准(示例名 PID_Auto)
PID_Auto(
    RUN := RUN,
    MODE := MODE,
    AT_START := AT,
    PV := PV,
    SP := SP,
    Kp := Kp,     // or PB := 10.0
    Ti := Ti,
    Td := Td,
    Ts := Ts,
    MV_MAN := MV_MAN,
    MV => MV
);

// 输出到 DA:0..10V → 0..32000(示例,按模块手册换算)
DA0_Value := LIMIT(0, INT(MV * 320.0), 32000);

把PID_Auto替换成你工程库里的实际块名;若块使用 比例带 PB% 而非 Kp,则把 PB 端口接入并把 Kp 置空。

5. 常见问题与排查

现象 原因 处理
切自动时 MV 突跳 未做手自跟踪 切换前令MV_MAN≈当前 MV,或做无扰切换
积分“攒量”饱和 长时间超限/限幅后积分累积 启用 Anti-windup:在 MV 限幅时冻结或回退积分
振荡/超调大 Kp 过大(或 PB 过小),Ti 太小 减小 Kp(或增大 PB),增大 Ti;必要时加 Td 与 PV 滤波
响应慢 Kp 太小、Ti 过大、采样过长 增大 Kp(或减小 PB),减小 Ti,缩短任务周期
自整定失败 工况不稳/限位/噪声大 在稳定区间执行,延长周期、减小噪声、放宽限位

6. 交付清单(可直接复用)

  • 一张 PID 块 SVG 占位图(自适应、不变形,可嵌入文档/H5)。
  • 从接线到量程、从参数到调用的 一站式步骤
  • LAD 与 ST 的 可拷贝模板(把块名替换为你的工程实际名称即可)。

如果你给我具体机型(如 SPH3000 + 模拟量板型号)与 AI/DA 分辨率,我可以把示例中的映射/寄存器地址和任务周期精确到项目级别。

下载资料前请先绑定手机号码
对不起,请登录后再发表评论!

触屏端
扫一扫手机也能发信息
明扬工控商城-工控网-工控自动化真品,一站式专业服务!