士林 PLC 步进(STL)中上升沿(LDP/ANDP)的五大应用场景
场景 1:进入工步瞬间,一次性初始化
需求:流程切换进入该 S 步的时候,只执行一次复位、赋值、写配方参数、清零计数器,停留在这个步之后不再重复执行。 推荐写法(士林规范):LDP 写在 STL 外部,检测 S 状态寄存器的上升沿,生成脉冲 M
LDP S20
OUT M100
STL S20 内部:LD M100,执行 MOV、RST 等 ,禁止:STL S20 里面直接 LDP S20,休眠冻结,切回时误触发
对应 AB 的 P1 动作;西门子 R_TRIG;台达同样要放 STL 外面
场景 2:在当前激活步内,等待外部传感器 / 按钮信号上升沿触发动作
需求:已经停在 S20 这一步,等待光电、到位开关、启动按钮 X 从 OFF→ON,触发一次动作(推气缸、启动伺服、计数)。 写法:STL 内部,步状态 S 作为前置使能 + ANDP 外部信号
STL S20
LD S20
ANDP X10
OUT M101
风险:如果 X10 的上升沿发生在 S20 未激活时段,沿直接丢失。
高可靠方案:外部先 SET 锁存 M,步内消费 + RST 锁存位
场景 3:转移条件触发前的单次事件捕捉
需求:在等待转移条件的步里,捕捉信号沿做记录、报警、抓拍、报文发送;
重要红线:转移条件 SET Sxx 里面不能直接写 LDP! 坑:同一扫描周期沿还没消失,会连环跳步、一步直接跳到后面多步(多米诺跳步) 正确做法:转移条件只用电平信号;跳转后的一次性动作交给下一个 S 的外部 LDP 脉冲 M
场景 4:步内计数、产品检测、脉冲采集
流水线、包装机:当前工序激活时,产品经过光电,来一个沿计数 + 1;
STL S22 // 检测工序步
LD S22
ANDP X12
INC D0
特点:只有流程走到这一步,计数才生效;不在该步时,就算光电有信号,不计数。 适合:分工序独立计数,不同工位分开统计产量。
场景 5:模式切换、手动 / 自动切换、复位确认的边沿触发
需求:自动流程走到待机步 S0,等待【自动启动按钮】上升沿,启动整套流程;或者在故障等待步,等待复位按钮上升沿清除故障标志。
STL S0
LD S0
ANDP X0
SET S20
适合:待机步只响应一次启动,按住按钮不会反复多次启动流程。
补充:非 STL 通用场景
普通手动逻辑:按钮点动置位 / 复位;
通讯触发:收到外部信号上升沿,发送一次 MSG 通讯;
报警锁存:故障信号上升沿 SET 报警 M;
士林 STL+LDP 要点
STL 休眠时,步内 LDP 的历史状态不会刷新,极易切回步瞬间误脉冲;
检测【进入步脉冲】:LDP 放到 STL 区域外面,检测 S 元件;
检测【外部信号沿】:优先锁存方案,防止沿落在步休眠窗口丢失;
转移条件只用电平,禁止 LDP 放在 SET Sxx 的转移条件上;
每个沿对应的 M 独立地址,循环流程退出该步时 RST 锁存脉冲位;
士林 AX 没有 AB Studio5000 的 P1 原生步脉冲,所有步进入脉冲都要自己用 LDP (S) 生成。

