信捷PLC自编的增量式PID程序

该代码实现了一个PID控制器,计算偏差并根据比例(P),积分(Ki)和微分(Kd)系数调整输出。同时,它涉及到电压和电流的转换,并对输出值进行了限制处理。
/*************************************************************************
   FunctionBlockName:  PID_1
   Version:            1.0.0
   Author:             
   UpdateTime:         2019-10-22 09:53:16
   Comment:            
			
**************************************************************************/
void PID_1( WORD W , BIT B )
{
            
        float Set=FW[0];//SetSpeed;//定义设定值
        float Actual=FW[2];//定义实际值
        float err=FW[4];//定义偏差值
        float err_last=FW[6];//定义上一个偏差值       
        float err_2last=FW[8];
        float Perr;
        float Derr;
        float Kp=FW[10],Ki=FW[12],Kd=FW[14];//定义比例、积分、微分系数
        
        float Value;
 
        err=(Set-Actual)/Set;//偏差
        FW[4]=err;    
        Perr=err-err_last;
        Derr=err-2*err_last+err_2last;
        if (abs(err)<FW[28])
        Value=Kp*Perr+Ki*err*FW[24]+Kd*Derr;
        else       
        Value=Kp*Perr+Ki*err+Kd*Derr;
        FW[26]=Value;
        FW[8]=err_las
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值