拟合曲线_一元一次方程

代码如下:

FUNCTION_BLOCK _103_01_Linear_X_Y   (*   一元一次方程   *)
VAR_INPUT
    EN:BOOL;  (*  使能 *)
    SIG:REAL;  (*  输入信号 *)
       ISL: REAL; (*  模拟量最低信号 *)
    ISH: REAL; (*  模拟量最高信号 *)
    OSL: REAL; (*  变送器最低量程 *)
    OSH: REAL; (*  变送器最高量程 *)
    OFFSET:REAL;  (*   偏移值   *)
END_VAR
VAR_OUTPUT
    Okay: BOOL; (* 运算正常 *)
    Value:REAL; (*  输出值  *)
END_VAR
VAR

END_VAR


IF EN THEN
(*   OV=F(D)
OV=(OSH-OSL)*(IV-ISL)/(ISH-ISL)+OSL  
换算结果:=  (换算结果的高限--换算结果的低限)*(换算对象--换算对象的低限)/ ( 换算对象的高限--换算对象的低限 )+ 换算结果的低限
D=F(OV)
D=(ISH-ISL)*(OV-OSL)/(OSH-OSL)+ISL  
换算对象:=  (换算对象的高限--换算对象的低限)*(换算结果--换算结果的低限)/ ( 换算结果的高限--换算结果的低限 )+ 换算对象的低限
 *)

   Value :=  (OSH-OSL)*(SIG-ISL)/(ISH-ISL)+OSL+OFFSET;
ELSE
   Value:=0;
  END_IF;

  IF SIG  <=  ISH*1.2   AND   SIG  >=  ISL*0.8   THEN
             Okay:= TRUE;
       ELSE
            Okay:=FALSE;
       END_IF;

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值