原文地址:

http://m.elecfans.com/article/1153309.html

--------------------------------------------------------

PID控制器(比例-积分-微分控制器),由比例单元(P)、积分单元(I)和微分单元(D)组成。

可以通过调整这三个单元的增益Kp,Ki和Kd来调定其特性,PID控制器主要适用于基本上线性,且动态特性不随时间变化的系统。

之前简单写过一篇关于PID的文章:重温经典PID算法

一、基础理论

PID是以它的三种纠正算法而命名。受控变数是三种算法(比例、积分、微分)相加后的结果,即为其输出,其输入为误差值(设定值减去测量值后的结果)或是由误差值衍生的信号。若定义 {displaystyle u(t)} u(t)为控制输出,PID算法可以用下式表示

其中

Kp:比例增益,是调适参数

Ki:积分增益,也是调适参数

Kd:微分增益,也是调适参数

e:误差=设定值(SP)- 回授值(PV)

t:目前时间

1.比例控件

比例控制考虑当前误差,误差值和一个正值的常数Kp(表示比例)相乘。

如下图,不同比例增益Kp下,受控变数对时间的变化(Ki和Kd维持定值):

2.积分控件

积分控制考虑过去误差,将误差值过去一段时间和(误差和)乘以一个正值的常数Ki。

如下图,不同积分增益Ki下,受控变数对时间的变化(Kp和Kd维持定值):

3.微分控件

微分控制考虑将来误差,计算误差的一阶导,并和一个正值的常数Kd相乘。

如下图,不同微分增益Kd下,受控变数对时间的变化(Kp和Ki维持定值):

二、参数调试

PID的参数调试是指通过调整控制参数(比例增益、积分增益/时间、微分增益/时间)让系统达到最佳的控制效果。

稳定性(不会有发散性的震荡)是首要条件,此外,不同系统有不同的行为,不同的应用其需求也不同,而且这些需求还可能会互相冲突。

PID只有三个参数,在原理上容易说明,但PID参数调试是一个困难的工作,因为要符合一些特别的判据,而且PID控制有其限制存在。历史上有许多不同的PID参数调试方式,包括齐格勒-尼科尔斯方法等,其中也有一些已申请专利。

1.稳定性若PID控制器的参数未挑选妥当,其控制器输出可能是不稳定的,也就是其输出发散,过程中可能有震荡,也可能没有震荡,且其输出只受饱和或是机械损坏等原因所限制。不稳定一般是因为过大增益造成,特别是针对延迟时间很长的系统。

2.最佳性能PID控制器的最佳性能可能和针对过程变化或是设定值变化有关,也会随应用而不同。

两个基本的需求是调整能力(regulation,干扰拒绝,使系统维持在设定值)及命令追随 (设定值变化下,控制器输出追随设定值的反应速度)。有关命令追随的一些判据包括有上升时间及整定时间。有些应用可能因为安全考量,不允许输出超过设定值,也有些应用要求在到达设定值过程中的能量可以最小化。

3.各调试方法对比

4.调整PID参数对系统的影响

----------------------------------------------------

【转载】 PID原理与参数调试的更多相关文章

  1. [转载]C/C++可变参数之va_start和va_end使用详解

    本文主要介绍va_start和va_end的使用及原理. 在以前的一篇帖子Format MessageBox 详解中曾使用到va_start和va_end这两个宏,但对它们也只是泛泛的了解. 介绍这两 ...

  2. Deep Learning.ai学习笔记_第二门课_改善深层神经网络:超参数调试、正则化以及优化

    目录 第一周(深度学习的实践层面) 第二周(优化算法) 第三周(超参数调试.Batch正则化和程序框架) 目标: 如何有效运作神经网络,内容涉及超参数调优,如何构建数据,以及如何确保优化算法快速运行, ...

  3. 吴恩达《深度学习》第二门课(3)超参数调试、Batch正则化和程序框架

    3.1调试处理 (1)不同超参数调试的优先级是不一样的,如下图中的一些超参数,首先最重要的应该是学习率α(红色圈出),然后是Momentum算法的β.隐藏层单元数.mini-batch size(黄色 ...

  4. PHP实现openSug.js参数调试

    这是一款利PHP对百度搜索下拉框提示免费代码实现参数配置调试的程序源代码. 由想要对网站进行搜索下拉调试的站长朋友们进行方便.快速的效果演示,具体参考下面的PHP代码. 如何使用? 请新建一份PHP文 ...

  5. [转载]SSD原理与实现

    [转载]SSD原理与实现 这里只mark一下,对原论文讲解的很好的博文 https://zhuanlan.zhihu.com/p/33544892 这里有一个关于SSD的很好的程序实现,readme里 ...

  6. 改善深层神经网络(三)超参数调试、Batch正则化和程序框架

    1.超参数调试: (1)超参数寻找策略: 对于所有超参数遍历求最优参数不可取,因为超参数的个数可能很多,可选的数据过于庞大. 由于最优参数周围的参数也可能比较好,所以可取的方法是:在一定的尺度范围内随 ...

  7. Spring Validation最佳实践及其实现原理,参数校验没那么简单!

    之前也写过一篇关于Spring Validation使用的文章,不过自我感觉还是浮于表面,本次打算彻底搞懂Spring Validation.本文会详细介绍Spring Validation各种场景下 ...

  8. Eclipse带参数调试的方法

    下面是体现带参数调试的一个代码demo,首先输出参数的数量,然后依次输出每个参数. public class ArgsEx { public static void main(String[] arg ...

  9. pid 及参数调试方法

    所谓PID指的是Proportion-Integral-Differential.翻译成中文是比例-积分-微分. 记住两句话: 1.PID是经典控制(使用年代久远) 2.PID是误差控制() 对直流电 ...

  10. PID三种参数的理解

    来源:http://blog.gkong.com/liaochangchu_117560.ashx PID是比例.积分.微分的简称,PID控制的难点不是编程,而是控制器的参数整定.参数整定的关键是正确 ...

随机推荐

  1. ubuntu server 安装慢 安装卡

    无论是桌面版本ubuntu,还是server 版本,都喜欢在安装过程中联网下东西: 默认的软件包镜像地址下载非常慢,你自身的网络再差点,可能会安装好几个小时. 解决方案: 方案1: 安装前拔网线. 方 ...

  2. html 适配iphone X 底部导航

    html 适配iphone X 底部导航 适配手机底部有横线的手机,以免被横线遮挡 padding-bottom: constant(safe-area-inset-bottom); /* 兼容 iO ...

  3. Flink状态(二)

    Flink提供了不同的状态存储方式,并说明了状态如何存和存储在哪里. 状态可以被存储在Jvm的堆和堆外.根据状态存储方式的不同,Flink也能代替应用管理状态,意思是Flink能够进行内存管理(有必要 ...

  4. UE 5 NavMesh 烘培 逻辑流程

      关于UE引擎层面的东西: 在向场景重拖入一个NavMeshBoundsVolume时(或者修改时). 会调用 void UNavigationSystemV1::PerformNavigation ...

  5. WPF/C#:BusinessLayerValidation

    BusinessLayerValidation介绍 BusinessLayerValidation,即业务层验证,是指在软件应用程序的业务逻辑层(Business Layer)中执行的验证过程.业务逻 ...

  6. Linux OpenGrok搭建

    目录 一.目的 二.环境 三.相关概念 3.1 OpenGrok 3.2 CTags 3.3 Tomcat 四.OpenGrok搭建 4.1 安装jdk 4.2 安装ctags依赖 4.3 安装uni ...

  7. Freertos学习:00-介绍

    --- title: rtos-freertos-000-介绍 EntryName: rtos-freertos-00-about date: 2020-06-09 23:21:44 categori ...

  8. 通过 hexo 生成静态博客

    通过 hexo 生成静态博客 背景 在对比了很多博客网站以后,我决定开始慢慢迁移我的文章,以后有时间的话还会搭建自己的网站,目前主流的静态博客生成器有三个: jekyll, hexo, hugo. 静 ...

  9. Redis的几种应用实战

    1.分布式锁: 实现:用set key value ex time nx指令实现,这个指令以及其参数是原子性的操作.释放锁用del key,释放之前先比较一下value是否与当前的value一样,原因 ...

  10. C#使用Aspose将Word\HTML 转换成PDF文件

    写在前面 Aspose 这个是收费的,直接使用是有水印的 需要用到的dll文件 ==> Aspose.Words.dll.Aspose.HTML.dll.Aspose.Total.lic(授权文 ...