西门子Plc 斜坡函数功能的实现代码

作者:老电工时间:2021-12-08 06:22:36

学习西门子Plc编程的例子,输出值按照指定斜率(单位/秒)跟随设定值,可用来防止数值突变,该功能可在博途中添加扩展库函数(LGF)后直接调用Ramp函数。

西门子Plc 斜坡函数

1、子程序调用

西门子Plc 斜坡函数功能的实现代码

2、子程序变量声明

西门子Plc 斜坡函数功能的实现代码

3、SCL代码

#rv1:= RD_SYS_T(#ActualTime);

IF #InitFB = true THEN

#LastTime := #ActualTime;

#AuxOut := #SetPoint;

#Out := #AuxOut;

END_IF;

#DeltaTime_T:= T_DIFF(IN1:=#ActualTime, IN2:=#LastTime);

#DeltaTime_DI:= TIME_TO_DINT(#DeltaTime_T);

#DeltaTime:= DINT_TO_REAL(#DeltaTime_DI);

#DeltaTime := #DeltaTime / 1000.0;

#LastTime := #ActualTime;

IF #SetPoint < #AuxOut THEN

#Out := #AuxOut;

#auxR := #AuxOut - (#Rate * #DeltaTime);

#Out := #AuxOut;

#AuxOut := MAX(IN1 := #auxR, IN2 := #SetPoint);

#Out := #AuxOut;

RETURN;

ELSE

IF #SetPoint > #AuxOut THEN

#Out := #AuxOut;

#auxR := (#Rate * #DeltaTime) + #AuxOut;

#Out := #AuxOut;

#AuxOut := MIN(IN1 := #auxR, IN2 := #SetPoint);

#Out := #AuxOut;

END_IF;

END_IF;

RETURN;

以上程序代码在博途V15.1环境下测试通过。

本站仅提供信息发布平台,文章仅代表作者个人观点。

猜你喜欢

首页 > plc > 西门子plc编程实例