使用PID进行恒温控制
创始人
2025-05-30 04:51:46
0

1. PID三个环节的作用

PID三个环节各自的主要作用和效应:

  • 比例环节:起主要控制作用,使控制量向目标值靠拢,但可能导致振荡
  • 积分环节:消除稳态误差,但会增加超调量
  • 微分环节:产生阻尼效果,抑制振荡和超调,但会降低响应速度

2. 比例系数与积分时间的大小对曲线的影响关系

在这里插入图片描述

1. 比例环节
        成比例地反映控制系统的偏差信号e(t),偏差一旦产生,控制器立即产生控制作用,以减小偏差。当仅有比例控制时系统输出存在稳态误差(Steady-state error)。
        P参数越大比例作用越强,动态响应越快,消除误差的能力越强。但实际系统是有惯性的,控制输出变化后,实际y(t)值变化还需等待一段时间才会缓慢变化。由于实际系统是有惯性的,比例作用不宜太强,比例作用太强会引起系统振荡不稳定。P参数的大小应在以上定量计算的基础上根据系统响应情况,现场调试决定,通常将P参数由大向小调,以能达到最快响应又无超调(或无大的超调)为最佳参数。
        优点:调整系统的开环比例系数,提高系统的稳态精度,减低系统的惰性,加快响应速度。
        缺点:仅用P控制器,过大的开环比例系数不仅会使系统的超调量增大,而且会使系统稳定裕度变小,甚至不稳定。

2. 积分环节
        控制器的输出与输入误差信号的积分成正比关系。主要用于消除静差,提高系统的无差度。积分作用的强弱取决于积分时间常数T,T越大,积分作用越弱,反之则越强。
  对一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个控制系统是有稳态误差的或简称有差系统(System with Steady-state Error)。为了消除稳态误差,在控制器中必须引入“积分项”。积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。这样,即便误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。因此,比例+积分(PI)控制器,可以使系统在进入稳态后无稳态误差。PI控制器不但保持了积分控制器消除稳态误差的“记忆功能”,而且克服了单独使用积分控制消除误差时反应不灵敏的缺点。
  优点:消除稳态误差。
  缺点:积分控制器的加入会影响系统的稳定性,使系统的稳定裕度减小。

3. 微分环节
        反映偏差信号的变化趋势,并能在偏差信号变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减少调节时间。在微分控制中,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系。
  自动控制系统在克服误差的调节过程中可能会出现振荡甚至失稳。其原因是由于存在有较大惯性组件(环节)或有滞后(delay)组件,具有抑制误差的作用,其变化总是落后于误差的变化。解决的办法是使抑制误差的作用的变化“超前”,即在误差接近零时,抑制误差的作用就应该是零。这就是说,在控制器中仅引入“比例”项往往是不够的,比例项的作用仅是放大误差的幅值,而目前需要增加的是“微分项”,它能预测误差变化的趋势。这样,具有比例+微分的控制器,就能够提前使抑制误差的控制作用等于零,甚至为负值,从而避免了被控量的严重超调。所以对有较大惯性或滞后的被控对象,比例+微分(PD)控制器能改善系统在调节过程中的动态特性。PD控制只在动态过程中才起作用,对恒定稳态情况起阻断作用。因此,微分控制在任何情况下都不能单独使用。
  优点:使系统的响应速度变快,超调减小,振荡减轻,对动态过程有“预测”作用。
  在低频段,主要是PI控制规律起作用,提高系统型别,消除或减少稳态误差;在中高频段主要是PD规律起作用,增大截止频率和相角裕度,提高响应速度。因此,控制器可以全面地提高系统的控制性能。

 3.代码程序

//定义PID结构体用于存放一个PID的数据
typedef struct{float kp,ki,kd;//三个系数float error,lastError;//误差、上次误差float integral,maxIntegral;//积分值、积分限幅值float output,maxOutput;//PWM输出值、PWM输出限幅值
}PID;//初始化pid参数
void PID_Init(PID *pid,float p,float i,float d,float maxI,float maxOut){pid.kp=p;pid.ki=i;pid.kd=d;pid.maxIntegral=maxI;pid.maxOutput=maxOut;
}//进行一次pid计算(每次调用间隔一段时间)
//参数为(pid结构体,目标值,反馈值),计算结果放在pid结构体的output成员中
void PID_Calc(PID *pid,float reference,float feedback){//更新数据pid.lastError = pid.error;          //保存上次误差pid.error     = reference-feedback; //计算新误差//计算比例float pout = pid.error * pid.kp;//计算微分float dout = (pid.error - pid.lastError) * pid.kd;//计算积分pid.integral += pid.error * pid.ki;//积分限幅(大于限幅值,则赋值限幅值)(小于负的限幅值,则赋值负的积分限幅值)if(pid.integral > pid.maxIntegral) pid.integral = pid.maxIntegral;else if(pid.integral < -pid.maxIntegral) pid.integral = -pid.maxIntegral;//计算PWM输出值pid.output = pout + dout + pid.integral;//输出PWM限幅(大于限幅值,则赋值PWM输出限幅值)(小于负的限幅值,则赋值负的PWM输出限幅值)if(pid.output > pid.maxOutput) pid.output = pid.maxOutput;else if(pid.output < -pid.maxOutput) pid.output = -pid.maxOutput;
}PID mypid;//创建一个PID结构体变量main(){//...初始化其它代码(PWM等)PID_Init(&mypid,10,1,5,800,1000);//初始化PID参数while(1){//进入循环运行float feedbackValue=...;  //获取到被控对象的反馈值float targetValue  =...;  //设置的目标值//进行PID计算,结果保存在output变量中PID_Calc(&mypid,targetValue,feedbackValue);//设定执行器输出(mypid.output)值.... = mypid.output;delay(10);//等待一定时间再开始下一次循环}
}

4. 调节PID各环节的方式

参考链接1:http://t.csdn.cn/mpgm7

参考链接2:http://t.csdn.cn/ltjZu

上一篇: 实习生自我评价

下一篇:top终端详解

相关内容

热门资讯

商品促销活动方案 关于商品促销活动方案(精选12篇)  为了确保活动得以顺利进行,就需要我们事先制定活动方案,活动方案...
中学教职工全民健身活动方案 中学教职工全民健身活动方案  为了确保事情或工作能无误进行,往往需要预先进行方案制定工作,一份好的方...
RocketMQ的基本概念、系... RocketMQ的基本概念、系统架构、单机安装与启动 文章目录RocketMQ的基本概念、系统架构、...
工会活动工作总结 工会活动工作总结(精选5篇)  经历了一次有意义的活动后,想必你学习了很多新知识,需要好好地写一份活...
国际助残日活动方案 2022国际助残日活动方案(精选13篇)  为了确保活动有序有效开展,时常需要预先制定一份周密的活动...
已解决java.lang.St... 已解决java.lang.String cannot be cast to java.lang.In...
Python+Yolov5跌倒... Python+Yolov5跌倒检测 摔倒检测 人物目标行为 人体特征识别如需安装运行环境或远...
【Python】Python ... 一、Python 背景知识 1、Python 的由来 吉多·范罗苏姆(Guido va...
职业病防治法宣传周活动方案2...   所谓职业病,是指企业、事业单位和个体经济组织(用人单位)的劳动者在职业活动中,因接触粉尘、放射性...
SAP 发出商品业务配置 SAP发出商品业务配置,即: 出具销售发票时结转成本  一、业务背景&#...
社群营销活动策划方案 社群营销活动策划方案(精选5篇)  为了保障活动顺利、圆满进行,通常需要预先制定一份完整的活动方案,...
树莓派搭建边缘网关环境 首先安装 jdk1.8 2 . sudo vim /etc/profile 编辑环境 JAVA_HO...
网上祭英烈活动总结 网上祭英烈活动总结(精选14篇)  在经历了某次活动以后,我们既增长了见识,也锻炼自身,是时候静下心...
学困生辅导计划及措施 学困生辅导计划及措施  学困生辅导计划及措施(精选11篇)  在我们平凡的日常里,措施在生活中的使用...
庆祝教师节的活动方案 关于庆祝教师节的活动方案(精选5篇)  为了确保活动能有条不紊地开展,常常需要预先准备活动方案,活动...
[simulink] --- ... 1 Simulink信号概述 所谓信号,表示一种随着时间而变化的量,在时...
感恩节活动策划 感恩节活动策划(通用21篇)  为了确保活动有效开展,就不得不需要事先制定活动方案,活动方案具有内容...
javaweb窗口服务人员分析... A)后台管理员模块:通过该功能模块,管理员可以修改自己的密...
国庆满减活动促销方案 国庆满减活动促销方案范文(精选13篇)  为了确保活动能无误进行,常常需要预先制定活动方案,活动方案...
青春派对放飞梦想的团日晚会活... 青春派对放飞梦想的团日晚会活动方案  每一个活动都让参与者有所收获,每一个活动都会让一个集体有了新的...