浮点运算 共 2 篇文章

ST语言多任务程序中共享变量未加互锁导致的数据竞争
2026-03-17 12:50:47
在ST(Structured Text)语言编写的PLC多任务程序中,共享变量未加互锁是引发隐性故障的高发原因。这类问题不报错、不崩溃、不触发报警,却会导致控制逻辑间歇性失准——例如温度设定值突跳、计数器漏计、电机启停指令错乱。所有现象都指向同一个底层机制:数据竞争(Data Race)。 一、什么
数据竞争 PLC编程 ST语言
64 0
ST怎么写除法保护:IF Divisor <> 0.0 THEN Result := Numerator / Divisor; END_IF;
2026-03-15 11:16:56
在结构化文本(ST)编程中,除法运算看似简单,但若不加保护,极易引发运行时错误——最典型的是除零异常。该异常在PLC(可编程逻辑控制器)中不会抛出传统软件的“报错对话框”,而是导致:数值结果为 NaN(非数字)、±INF(正/负无穷),或更严重地触发硬件级看门狗超时、CPU停机、程序跳转至故障组织块
除法保护 PLC编程 结构化文本
57 0