PID算法的原理和公式

article/2025/9/17 15:00:25

PID算法的原理和公式

@(PID)

PID算法原理

  1. P:即Proportion,输入偏差乘以比例常数
  2. I:即Integral,对输入偏差进行积分运算
  3. D:即Derivative,对输入偏差进行微分运算
    输入偏差=读取值与设定值(理想值)的偏差
    理论上来说PID的三个增益应始终为正。

P(Proportion)表示比例系数,这里举无人机中的PID进行理解,当无人机的测量出自身位置与目标位置存在差距时,P在这时候就等于将无人机拉回到目标位置的动力,当P太小时,“动力不足”,无人机就无法回到我们想要它到达的位置,而当P太大时,“动力过多”,当无人机回到目标位置时,无法及时的固定住位置就被“多余的动力”带着又偏移了轨道,然后不断的执行P的操作,这就形成了无人机在目标点位置附近不断的“震荡”,P越大,“震荡”的频率也就越大。D(Differentiation)表示微分,通常用于计算无人机运动的速度。正如上述我们说的,如果P过大时,无人机因为会不断的产生震荡而无法稳定在目标位置,面对这样的情况,D的作用就大大的体现出来。D在此时的作用就相当于缓冲力(与速度方向相反),D越大时,缓冲力越大,就相当于一个震荡的物体从空气中掉入液体中,因为液体的密度比空气大,所以物体受到的缓冲力相比于在空气中的缓冲力更大,震动的幅度就大大的缩小,所以物体能更快的稳定下来。
I(Integration )表示积分,具体作用时对外界干扰或者系统存在的误差进行纠正,以确保输出的准确性。

  1. 参数整定口诀

参数整定找最佳, 从小到大顺序查。
先是比例后积分, 最后再把微分加。
曲线振荡很频繁, 比例度盘要放大。
曲线漂浮绕大弯, 比例度盘往小扳。
曲线偏离回复慢, 积分时间往下降。
曲线波动周期长, 积分时间再加长。
曲线振荡频率快, 先把微分降下来。
动差大来波动慢, 微分时间应加长。
理想曲线两个波, 前高后低四比一。
一看二调多分析, 调节质量不会低。

PID公式

连续PID

在这里插入图片描述

离散PID

  1. 位置式
    enter image description here
  2. 增量式
    P I D = U k + K P ∗ 【 E ( k ) − E ( k − 1 ) 】 + K I ∗ E ( k ) + K D ∗ 【 E ( k ) − 2 E ( k − 1 ) + E ( k − 2 ) PID=Uk+KP*【E(k)-E(k-1)】+KI*E(k)+KD*【E(k)-2E(k-1)+E(k-2) PID=Uk+KPE(k)E(k1)+KIE(k)+KDE(k)2E(k1)+E(k2)
    增量型 PID,是对位置型 PID 取增量,这时控制器输出的是相邻两次采样时刻所计算的位置值之差,得到的结果是增量,即在上一次的控制量的基础上需要增加(负值意味减少)控制量
  3. 分立式
    在这里插入图片描述

此实现具有两个显著的优点:

  1. 由于在输出计算时考虑了先前的输出值,因此通过将当前开环输出值分配给第一个,控制器可以从开环条件无缝启动。
  2. 从连续控制器设计中获得的PID增益在其离散表示中仍然有效(如果使用足够快的采样周期)。

参考文档:

  1. https://blog.csdn.net/qq_36720691/article/details/97252418
  2. https://blog.csdn.net/qq_36720691/article/details/97252418
  3. https://thingsdaq.org/2022/04/07/digital-pid-controller/

http://chatgpt.dhexx.cn/article/cbTIIOTA.shtml

相关文章

【 PID 算法 】PID 算法基础

前言: 这两天打算找个实习,奈何感觉自己有点菜,所以,就补习了一下知识,说一下,这个PID算法吧。 一、简介 PID即:Proportional(比例)、Integral(积分&#…

org.springframework.data.mapping.PropertyReferenceException: No property item found for type BItem!

Caused by: org.springframework.data.mapping.PropertyReferenceException: No property item found for type BItem! 后来发现在Service层 PageRequest.of里排序的参数必须是 实体类字段 希望能帮助到您

5G NR PDSCH、PUSCH资源分配

通信就是把数据承载在特定的时间和频率上,传输到数据接收方,数据接收方在在相应的时间和频率上把数据接收下来。其实,把数据承载在哪个时间和频率上,对应的就是资源分配的过程。我们今天主要讨论5G NR中的资源分配过程。 目录 1…

电动汽车充电桩中的漏电保护应用分析 RCD的分类和选型

一、漏电流的产生分类 一般漏电流分为四种,分别为:半导体元件漏电流、电源漏电流、电容漏电流和滤波器漏电流 1、半导体原件漏电流 PN结在截止时流过的很微小的电流。D-S正向偏置,G-S反向偏置,导电沟道打开后,D到S才…

RuntimeError: expected scalar type Double but found Float

最近在使用 sequitur库 快速搭建自编码器时遇到 RuntimeError: expected scalar type Double but found Float 涉及代码 import torch from sequitur.models import LINEAR_AEmodel LINEAR_AE(input_dim300,encoding_dim20,h_dims[120, 60],h_activNone,out_activNone )mode…

报错:RuntimeError: expected scalar type Double but found Float

这个问题是深度学习,用pytorch跑的时候出现的 解决办法:这个是格式问题,希望的格式是double,但得到的是float。字面意思是这个,但是并不是非要把格式改成double,这个时候应该在出错的前面几处代码设个断点…

关于USB Type A/B/C的区别和基本知识

USB 1.0   USB规格第一次是于1995年,由Intel、IBM、Compaq、Microsoft、NEC、Digital、North Telecom等七家公司组成的USBIF(USB Implement Forum)共同提出,USBIF于1996年1月正式提出USB1.0规格,频宽为1.5Mbps.不过因为当时支持USB的周边装…

USB TYPE A B C 引脚定义

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

认识USB-TYPEA/B/C/micro/mini

1、USB分类 标准 根据标准分类的话大致分为以下,不同协议对用户而言最大的区别就是速率上和物理上接口的区别,从USB3.2之后TYPE C就成为唯一支持的接口了,相较其他接口支持双通道传输。 接插件 按照物理接插件分类如下: 2、接插…

STM32硬件SPI通过fm17550读取身份证UID,识别银行卡,识别TYPEA与TYPEB

上面是我的微信和QQ群,欢迎新朋友的加入。 目录 1.硬件平台 2.驱动实现 3.循环扫卡测试程序 4.TYPEB射频卡扫描 5.TYPEA射频卡扫描 6.身份证UID读取 1.硬件平台 1.STM32F103FM17550 2.卡片类型:身份证、TYPEA/B卡、银行卡 2.驱动实现 1.硬件S…

PUSCH repetition type A

NR Rel-15/16学习笔记 PUSCH repetition type A概念解释repetition次数的配置方法Rel-15Rel-16 repetition type A与PUSCH 时域资源分配repetition type A 与PUSCH 跳频配置是否进行跳频跳频参数配置Intra-slot & Inter-slot 配置Frequency Hopping offset 配置根据offset计…

常见几种USB接口引脚定义,Type A、Type B、Micro USB、Mini USB、Type C

USB2.0母座接口分为有好几种类型,有A型、B型、Mini型等。 Type A S、S- 代表:电源线正、负 D、D- 代表:数据线正、负 Type B 多用于多媒体设备,最为常见的可能就是打印机的数据接口,多是用于数据的传输。 Micro …

GPON Type B保护

GPON TYPE B保护的组网图如图1所示,相应的保护范围包括OLT的主用和备用PON端口,主用和备用光纤。 场景一:PON口工作过程中主用光纤断,如图2所示。 Standby PON口在进入Standby状态后,启动上行光信号检测功能。 Active…

ISO/IEC 14443协议浅谈:TYPE A与TYPE B

ISO/IEC14443规定了邻近卡(PICC)的物理特性;需要供给能量的场的性质与特征,以及邻近耦合设备(PCDs)和邻近卡(PICCs)之间的双向通信;卡(PICCs)进入邻近耦合设备(PCDs)时的轮寻,通信初始化阶段的字符格式,帧结构,时序信息;非接触的半…

物联16:4 ISO/IEC 14443-3 防冲突、防碰撞算法、Type A、Type B

ISO/IEC14443-3 防冲突、防碰撞算法、TypeA、Type B 防冲突原理 1 前言 当2张或2张以上的同类型的PICC卡同时进入RF(Radio Frequency)区域时,多张卡同时接收到PCD机发出的查询命令。会根据卡上的控制逻辑,同时返回响应命令。这样就造成了卡…

5GNR漫谈9:PDSCH和PUSCH资源映射(频域type0/type1和时域typeA/typeB/typeC)

在漫谈6中,我们了解了PDSCH和PUSCH这两个信道,在将比特数据调制为复数的星座图符号后,映射到具体的时频资源位置。映射的具体过程由先频域后时域,即一个OFDM符号的RB子载波上映射完成后,再映射下一个OFDM符号的RB子载波…

Type-C与Type-A、Type-B接口

日常工作中,经常会接触到手机的接口。目前,在我们雨滴科技的ITAB-01工业平板上,USB(Universal Serial Bus)使用的接口是Type-C。Type系列的接口除了Type-C,还有Type-A和Type-B。 手机经过的一段时间的迅猛发…

USB:Type-A、Type-B、Type-C、miniUSB、microUSB接口类型区分

通用串行总线(universal serial bus,USB)自推出以来,成功替代串口和并口,已经成为计算机和各种设备不可或缺的接口。 USB的优点不用多说,网上有很多,今天主要小结一下USB的各种接口类型,避免被各种各样的U…

安卓开发之WebView的使用

文章预览 前言1.什么是WebView?2.相关方法 一、WebView简单使用1.1、环境准备1.2、MyWebChromClient.java1.3、MyWebViewClient1.4、MainActivity.java1.5、activity_main.xml 二、效果预览 前言 1.什么是WebView? Android内置webkit内核的高性能浏览器…

安卓WebView的使用

一、WebView简介 WebView是Android中的原生UI控件,主要用于在app应用中方便地访问远程网页或本地html资源。同时,WebView也在Android中充当Java代码和JS代码之间交互的桥梁。实际上,也可以将WebView看做一个功能最小化的浏览器。 安卓官方Web…