什么是PID?


  1. PID是Proportional(比例)、Integral(积分)、Differential(微分)的缩写。
  2. PID控制算法是结合比例、积分和微分三种环节于一体的控制算法,它是连续系统中技术最为成熟、应用最为广泛的一种控制算法。
  3. PID Control,即PID控制器是以PID为原理制造的,在实际生产生活中,为了提高自动化能力,而最常见的控制器
    比如四轴飞行器,再比如平衡小车…还有汽车的定速巡航、3D打印机上的温度控制器…用“开关量”来控制一个物理量,就显得比较简单粗暴了。有时候,是无法保持稳定的。因为单片机、传感器不是无限快的,采集、控制需要时间。
    这时,就需要一种『算法』:
    它可以将需要控制的物理量带到目标附近
    它可以“预见”这个量的变化趋势
    它也可以消除因为散热、阻力等因素造成的静态误差
    它就是PID算法

开环控制系统与闭环控制系统

在了解什么PID的各部分作用之前需要先了解什么是开环控制系统与闭环控制系统。

开环控制系统

定义:

  • 开环控制系统是指无被控量反馈的控制系统,即需要控制的是被控对象的某一量(被控量),而测量的只是给定信号,被控量对于控制作用没有任何影响的系统。
  • 可以不用直接测量扰动就组织起一个控制,只要监视由扰动对被控系统造成的偏差就行了。
  • 简单来讲就是输出只受系统输入控制的没有反馈回路的系统,因此,开环控制系统又称为无反馈控制系统。

结构如图所示:


应用:开环控制系统主要是用于增强型的系统。
例如:指令输入计算机控制系统、驱动步进电机运动、电风扇(不能根据环境温度自动调节)、灯的开关、洗衣机、步进电机控制装置以及水位调节系统等。

闭环控制系统

定义:闭环控制系统是指有被控制量反馈的控制,其原理框如图所示。从系统中信号流向看,系统的输出信号沿反馈通道又回到系统的输入端,构成闭合通道,故称闭环控制系统,或反馈控制系统。

结构如图所示:


把控制系统输出量的一部分或全部,通过一定方法和装置反送回系统的输入端,然后将反馈信息与原输入信息进行比较,再将比较的结果施加于系统进行控制,避免系统偏离预定目标。闭环控制系统利用的是负反馈。
在反馈控制系统中,不管出于什么原因(外部扰动或系统内部变化),只要被控制量偏离规定值,就会产生相应的控制作用去消除偏差。

应用:

自动调温空调(当环境温度高于设定温度时,空调制冷系统自动开启,调定室温到设定值)、电饭锅自动保温、电冰箱温度控制系统、抽水马桶等。

PID控制原理

PID,它是闭环控制算法中最简单的一种。它通过三种简单的控制算法(即比例,积分,微分)的组合可有效地纠正被控制对象的偏差,从而使其达到一个稳定的状态。

P 比例调节

当距离目标越大时,调节作用越激进,当比较接近目标时,P的控制作用就比较小。越接近目标,P的作用越温柔。

特点:

简单、快速。

比例系数:

增大可以加快响应速度,减小系统稳态误差,提高控制精度。但是 过大会产生较大超调,甚至导致不稳定;若 取得过小,能使系统减少超调量,稳定裕度增大,但会降低系统的调节精度,使过渡过程时间延长。

比例​响应:

比例​模​块​仅仅​取决​于​设定​值​和​过程​变量​之间​的​差​值。​这个​差​值​被​称为“误差”。比例​增益 (Kc)决定​了​输出​响应​对​误差​信号​的​比例。​例如,​如​错误​项​的​幅​值​为​10,​则​比例​增益​为​5​将​产生​比例​响应​为​50。​一般​情况​下,​增加​比例​增益​将​提高​控制​系统​响应​的​速度。​但是,​如果​比例​增益​太大,​过程​变量​会​出现​振荡。​如果​继续​增加Kc,​系统​振荡​会​越来越​大,​使得​系统​变得​不​稳定,​以至于​超出​控制。

调节原理:

通常在控制的初始阶段,取较大的 ,以加快系统的响应速度,减小上升时间;在控制过程中期,适当减小 ,以减小系统超调;而到过渡过程的后期,为了保证系统的快速响应性能和稳态精度,应适当增大 。

I 积分调节

前辈科学家们想到的方法是真的巧妙,设置一个积分量,只要偏差存在,就不断地对偏差进行积分(累加),并反应在调节力度上。

作用:

主要用于消除静差提高系统的无差度,适用于有自平衡性的系统。

积分系数:

加大积分系数 有利于减小系统静差,但过强的积分作用会使超调量加剧,甚至引起振荡;减小积分系数 虽然有利于系统稳定,避免振荡,减小超调量,但又对系统消除静态误差不利。

​积分​响应:

积分​模​块​将​一段​时间​内的​误差​相加。​即使是​一个​很小​的​误差,​也​会​让​积分​响应​缓慢​增加。​积分​响应​会​根据​时间​持续​增加,​除非​误差​为​0。​因此,​积分​响应​的​目的​在于​将​稳定​状态​的​误差​保持​在​0。​稳定​状态​误差​是​过程​变量​和​设定​值​之间​的​差​值。​当​积分​操作​满足​了​控制器​的​条件,​而​控制器​还​未​将​误差​保持​在​0​时,​会​产生​一种​称为​积分​饱和​的​现象。

调节原理:

通常在调节过程初期阶段,为防止由于某些因素引起的饱和非线性等影响而造成积分饱和现象,从而引起响应过程的较大超调量,积分作用应弱些,而取较小的 ;在响应过程中期,为避免对动态稳定造成影响,积分作用应适中;在过程后期,应取较大的 值以减小系统静差,提高调节精度。

D 微分调节

我们需要一个控制作用,让被控制的物理量的“变化速度”趋于0,即类似于“阻尼”的作用。

作用:

主要是针对被控对象的惯性改善动态特性,它能给出响应过程提前制动的减速信号。它有助于减小超调,克服振荡,使系统趋于稳定;同时加快系统的响应速度,减小调节时间,从而改善了系统的动态特性。

微分​响应:

如果​过程​变量​快速​增加,​微分​分量​会​导致​输出​减少。​微分​响应​与​过程​变量​的​变化​率​之间​成​比例​关系。​增加微分​时间​(Td)会​使​控制​系统​对​误差​的​反应​更加​剧烈,​也​会​增加​整个​控制​系统​的​响应​时间。​大​多数​实用​控制​系统​使用​非常​小​的​微分​时间​(Td),​因为​微分​响应​对​过程​变量​的​噪声​特别​敏感。​如​传感器​反馈​信号​中有​噪声​或​控制​循环​速率​太低,​微分​响应​会​使​控制​系统​变得​不​稳定

调节原理:

若增加微分作用 ,有利于加快系统响应,使超调量减小,增加稳定性,但也会带来扰动敏感,抑制干扰能力减弱,若 过大则会使响应过程过分提前制动从而延长调节时间;反之,若 过小,调节过程的减速就会滞后,超调量增加,系统响应变慢,稳定性变差。
因此,对于时变且不确定系统, 不应取定值,应适应被控对象时间常数而随即改变。对于这类系统,在响应过程初期,适当加大微分作用可以减小甚至避免超调,在响应过程中期,由于对 的变化很敏感,因此 应小些,且保持不变;在调节过程后期, 要再小些,从而减弱过程的制动作用,增加对扰动的抑制能力,使调节过程的初期因 较大而导致的调节时间增长得到补偿。

PID控制器的参数整定

PID控制器的参数整定是控制系统设计的核心内容。它是根据被控过程的特性确定PID控制器的比例系数、积分时间和微分时间的大小。PID控制器参数整定的方法很多,概括起来有两大类:

  1. 理论计算整定法
    它主要是依据系统的数学模型,经过理论计算确定控制器参数。这种方法所得到的计算数据未必可以直接用,还必须通过工程实际进行调整和修改。
  2. 工程整定方法
    它主要依赖工程经验,直接在控制系统的试验中进行,且方法简单、易于掌握,在工程实际中被广泛采用。PID控制器参数的工程整定方法,主要有临界比例法、反应曲线法和衰减法。三种方法各有其特点,其共同点都是通过试验,然后按照工程经验公式对控制器参数进行整定。但无论采用哪一种方法所得到的控制器参数,都需要在实际运行中进行最后调整与完善。现在一般采用的是临界比例法。

PID调试一般原则

  • 在输出不振荡时,增大比例增益P。
  • 在输出不振荡时,减小积分时间常数Ti。
  • 在输出不振荡时,增大微分时间常数Td。

总结

​PID​控制​算法​是​可靠​且​简便​的​控制​算法,​在​业​内​广泛​使用。​该​算法​灵活​度​高,​在​各种​应用​中​表现​优异,​这​也是​多年​来​继续​使用​该​算法​的​主要原因​之一。​

参考资料:

PID算法
PID理论详解
一文搞懂PID控制算法

PID算法的简单了解相关推荐

  1. LabVIEW增量式PID算法控制房间温度变化的简单例子的程序

    PID相关的基础知识可以查看我之前写的博客: PID算法的基础知识 基于PID算法的房间温度控制 增量式PID算法控制房间温度变化的简单例子 LabVIEW简单的PID控制程序 前面板

  2. C语言实现PID算法:位置式PID和增量式PID

    原创者微信公众号 PID算法可以说是在自动控制原理中比较经典的一套算法,在现实生活中应用的比较广泛. 大学参加过电子竞赛的朋友都应该玩过电机(或者说循迹小车),我们要控制电机按照设定的速度运转,PID ...

  3. PID算法-温度控制

    以下代码基于STM32 PID温度算法_PWM控制 /**   ******************************************************************** ...

  4. pid算法通俗解释,平衡车,倒立摆,适合不理解PID算法的人来看!

                        先插句广告,本人QQ522414928,不熟悉PID算法的可以一起交流学习,随时在线 http://liuxinyu520zhuanshu.qzone.qq.c ...

  5. 数学狂想曲(三)——统计杂谈, PID算法, 20世纪10大算法, 矩阵向量的积

    http://antkillerfarm.github.io/ 统计杂谈 统计模拟 统计模拟是数理统计中非常有用的工具之一, 它是利用计算机产生某概率模型的随机数,再通过这些随机数来模拟真实模型. 这 ...

  6. PID算法搞不懂?看这篇文章。

    大家好,我是张巧龙,网上关于PID算法的文章很多,但是感觉有必要自己再进行一次总结,抽丝剥茧地重新认识了一下PID: 1 前言 2 开环控制 3 闭环控制 4 PID 4.1 系统架构 4.2 理论基 ...

  7. 电子设计竞赛(4)-常用的两种PID算法

    公众号关注 "大鱼机器人" 设为 "星标",重磅干货,第一时间送达! 1. 什么是PID PID 控制器以各种形式使用超过了 1 世纪,广泛应用在机械设备.气动 ...

  8. PID控制器开发笔记之一:PID算法原理及基本实现

           在自动控制中,PID及其衍生出来的算法是应用最广的算法之一.各个做自动控制的厂家基本都有会实现这一经典算法.我们在做项目的过程中,也时常会遇到类似的需求,所以就想实现这一算法以适用于 ...

  9. 用Excel教会你PID算法

    01.引入PID 电机控制 这样是没有反馈的,也就是说我们完全相信输入的数字,且是理想化的模型,比如输入占空比为50%的25Kz的PWM,车轮速度为1m/s,实际产品中会受到各种这样的影响,比如地面阻 ...

  10. c语言程序位置式pid算法,位置式PID算法的C语言代码

    描述 位置式PID的C语言写法详解 PID调节口诀: 参数整定找最佳,从小到大顺序查 先是比例后积分,最后再把微分加 曲线振荡很频繁,比例度盘要放大 曲线漂浮绕大湾,比例度盘往小扳 曲线偏离回复慢,积 ...

最新文章

  1. 关于过往与未来的思考
  2. pythonsuper_python中的super()是什么意思呢
  3. sqlserver导入向导时提示外部表不是预期格式_Excel办公实操,导入本地数据,创建参数查询,就是简单...
  4. c++语言 tcp例子,C++中TCP通信实现文件传输
  5. python输出自己的名字_【Python】Python-用大写字母打印你的名字
  6. 关于在linux系统下卸载软件的问题
  7. response.setHeader()的用法 (转别人转的)
  8. Linux系统里存在两个剪切板
  9. Atitit 嵌入式tomcat 嵌入式服务器 attilax 你感觉艾提拉 总结 比起嵌入jetty ,文件可以自动刷新貌似还不错。。方便调试debug package com.attilax.
  10. html页面中添加分页符,在生成的HTML中插入分页符.doc
  11. PROE 齿轮设计视频教程+直齿 斜齿 人字齿 内外啮齿 行星齿
  12. Win7升级Win10系统提示错误0x80070057的解决方法
  13. 关闭Software Reporter Tool
  14. Git 版本控制/项目迭代
  15. 上线项目 Docker部署项目到服务器总结
  16. Codeforces987 E. Petr and Permutations(思维+逆序对)
  17. jQuery学习教程二十: jQuery 遍历 - 后代
  18. java: JDK isn‘t specified for module ‘maven-junit41‘解决办法
  19. SIwave仿真手册——电源完整性仿真之PDN阻抗的提取(四)
  20. 计算机管理蓝屏不重启,win10系统怎么设置蓝屏后不自动重启

热门文章

  1. 保镖机器人作文_【保镖的作文】_玛雅作文网
  2. why-not 和 why 问题简介
  3. Ringbuffer同步问题分析
  4. TXT生成PCD文件
  5. 倾斜摄影 正摄影_如何安全地在线购买摄影装备
  6. 欣欣向荣的Ruby家族
  7. Java——聊聊JUC中的线程中断机制 LockSupport
  8. 解决:元素内容必须由格式正确的字符数据或标记组成。
  9. 算法来为图像找到好的裁剪
  10. 方正飞鸿智能信息平台产品白皮书(三)