一、梯形波是什么效果?
不是平滑上升,是一步一步往上跳
到上限 → 一步一步往下跳
循环往复就是你要的:阶梯式来回变化
二、只需要 4 个变量
AO:要变化的模拟量(输出)Step:每步变化多少(如 1、2、5)Dir:方向(0 = 上升,1 = 下降)Time:定时(比如 200ms 走一步)
三、梯形波 梯形图逻辑(直接照写)
1. 定时条件(比如 200ms 执行一次)
你用 定时器循环接通 即可:
定时时间到 → 执行一步变化
2. 核心程序(所有 PLC 通用)
① 上升阶段
plaintext
当 Dir=0(上升) AO = AO + Step 如果 AO >= 上限(如100) Dir = 1(改为下降)
② 下降阶段
plaintext
当 Dir=1(下降) AO = AO - Step 如果 AO <= 下限(如0) Dir = 0(改为上升)
最终效果:
0 → 5 → 10 → 15 → … → 100→ 95 → 90 → … → 0阶梯式来回走
四、直接复制的完整逻辑(最实用)
假设:
范围:0 ~ 100
步长:Step=2
定时:200ms 一步
plaintext
// 定时到,执行一步 IF 定时200ms THEN IF Dir = 0 THEN // 上升 AO := AO + 2; IF AO >= 100 THEN Dir := 1; END_IF; ELSE // 下降 AO := AO - 2; IF AO <= 0 THEN Dir := 0; END_IF; END_IF; END_IF;
五、你想怎么改就怎么改
想走得快:把定时改短(100ms)
想步子大:Step 改大(5、10)
想范围不同:
0~100 → 温度 / 开度
4~20 → 4-20mA 模拟量输出
0~10 → 0-10V 信号
六、三种波形一句话区分(方便你选)
三角波:匀速平滑上下
正弦波:波浪形平滑上下
梯形波:一步一步阶梯上下(你现在要的)

