拉丝机专用PID 包含中文注释

控制算法  / 倒序浏览  © 著作权归作者所有感觉不错,请素质四连!点赞,收藏,加关注,送评分

#楼主# 2023-6-2

感觉不错,请素质四连哦!点赞,收藏,加关注,送评分!
跳转到指定楼层
邀请回答

马上注册,享受更多特权

您需要 登录 才可以下载或查看,没有帐号?立即注册   

x
//定义常量CONST    k_P: REAL := 0.5;       //比例系数    k_I: REAL := 0.2;       //积分系数    k_D: REAL := 0.1;       //微分系数    T: TIME := T#1S;        //采样时间
//定义变量VAR    pv: REAL := 0.0;        //实际值    sp: REAL := 0.0;        //设定值    err: REAL := 0.0;       //误差    last_err: REAL := 0.0;  //上一次误差    integral: REAL := 0.0;  //积分值    derivative: REAL := 0.0;//微分值    output: REAL := 0.0;    //输出值
//定义函数块FUNCTION_BLOCK PIDVAR_INPUT    setpoint: REAL;         //设定值    process_value: REAL;    //实际值END_VARVAR_OUTPUT    control: REAL;          //PID输出值END_VARVAR    error: REAL := 0.0;     //误差值    last_error: REAL := 0.0;//上一次误差值    integral: REAL := 0.0;  //积分值    derivative: REAL := 0.0;//微分值END_VARBEGIN    //计算误差    error := setpoint - process_value;
[backcolor=rgba(0,0,0,var(--tw-bg-opacity))][color=rgba(217,217,227,var(--tw-text-opacity))][size=0.75]Copy code
//计算积分值integral := integral + (error * T);//避免积分饱和IF integral > 100 THEN    integral := 100;ELSIF integral < -100 THEN    integral := -100;END_IF//计算微分值derivative := (error - last_error) / T;//计算输出值control := (k_P * error) + (k_I * integral) + (k_D * derivative);//保存误差值last_error := error;

END_FUNCTION_BLOCK
//主程序WHILE TRUE DO    //读取实际值    pv := ReadPV();
[backcolor=rgba(0,0,0,var(--tw-bg-opacity))][color=rgba(217,217,227,var(--tw-text-opacity))][size=0.75]Copy code
//调用PID函数块计算控制值PID(setpoint:=sp, process_value:=pv, control:=output);//输出控制值WriteOutput(output);//等待采样时间DELAY T;

END_WHILE
//辅助函数FUNCTION ReadPV: REAL    //读取实际值    RETURN <实际值>;END_FUNCTION
FUNCTION WriteOutput(value: REAL)    //输出控制值END_FUNCTION

点评

表示太深奥了看不懂  发表于 2023-6-2 09:17




上一篇:自封装的上升沿,下降沿功能块
下一篇:循环飞剪凸轮算法

已有 0 人打赏作者

0
回复 邀请回答送花

使用道具

您需要登录后才可以回帖 登录 | 立即注册   

本版积分规则

关于作者

KFLl2qjieJ

3级细雨(Lv.6)

  • 主题

    31

  • 帖子

    142

  • 关注者

    0

Archiver|手机版|小黑屋|汇川技术-水滴社区 |苏ICP备12002088号
Powered by Discuz! X3.4  © 2019-2100 INOVANCE INC.