这是一个转换程序,将PID的输出值转换为加热时间。其原理是在设置的时间段内(k2000),当PIDl输出值>计数值时,输出加热。不同的PID输出值对应不同的加热时间与不加热的时间。当PID输出为0时,不加热。50%时加热与停止各一半的时间。这个数值的确定要根据系统的热惯性来确定。并且要根据全部的程序才能准确的分析。
PID指比例积分微分,Proportion比例,Integration积分,Differentiation微分
西门子PLC编程软件中有PID向导,程序中的PID程序块可利用s7-Micro/win程序中的“工具”→“指令向导”生成。根据向导的提示可以对死区、报警、手动等功能进行选择,可以对设定范围、P、I、D等参数进行设定(完成后还可以利用向导进行更改)。根据提示完成设定后会自动生成一个子程序和一个中断程序,在主程序或其他程序中调用PID子程序就可以实现PID调节功能。需要更详细的说明可以直接察看编程软件的帮助文档,那里说明的还是比较详细的。
仅能给你一段例子程序去修改,对你说的具体东西不是非常清楚,要完全按你的要求写出来,不太可能
// PID算法控制子程序-------------------------------------------------------------------------
void PIDControl(int rk,int yk)
{
ek=rk-yk;
duk=aek+bek1+cek2; // 计算控制输出
ek2=ek1; ek1=ek;
if ( duk>10 ) duk=3; // 幅度限制
tz=(int)duk;
pwm+=tz; // 计算当前占空比
if ( pwm<0 ) pwm=0;
else if ( pwm>99 ) pwm=99;
}
以上就是关于刚接触PID指令,现在有一程序通过PID指令控制固态继电器实现加热过程,程序这步看不懂,为什么要用全部的内容,包括:刚接触PID指令,现在有一程序通过PID指令控制固态继电器实现加热过程,程序这步看不懂,为什么要用、请问西门子plc中pid是什么、温度控制的PID算法程序如何编写等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)