在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

PID控制算法基本原理

嵌入式開發愛好者 ? 來源:嵌入式開發愛好者 ? 作者:嵌入式開發愛好者 ? 2022-11-02 09:44 ? 次閱讀

大家好,我是ST。

今天和大家聊一聊PID算法的控制原理。

在講解PID算法之前,在此拋出一個問題,如何通過算法控制加熱器使水溫穩定在50攝氏度?

一、傳統的位式控制算法(非PID算法)

bd416156-59f1-11ed-a3b6-dac502259ad0.jpg

(1)算法邏輯:用戶設置目標溫度Sv為50,傳感器檢測控制對象即水的溫度Pv

①當Pv ②當Pv==SV時,表示實際溫度等于目標溫度,不輸出

③當Pv>Sv時,表示實際溫度高于目標溫度,輸出低電平OUT=L,讓執行元件即加熱器不工作,即0功率輸出

(2)代碼實現:

#define Sv 50
void func(unsigned int Pv)
{
          if(Pv

(1)缺點

①控制算法過于簡單,單純對設定值和輸出值進行比較,一旦發現低于設定值,就輸出高,否則就輸出低

②要么處于全功率下,要么處于0功率下工作

③會導致溫度總是在設定值上下波動如下圖所示,因為控制對象具有一定的慣性,即加熱時水的溫度不會立即上升,不加熱時水的溫度不會立即下降

bd4a8466-59f1-11ed-a3b6-dac502259ad0.jpg

二、PID閉環控制

PID閉環即比例-積分-微分控制,即通過對偏差進行比例-積分-微分控制,使得當前值趨于目標值的過程。一般來說,比例P控制是必須的,所以衍生出很多組合的PID控制,如PD、PI、PID。離散PID公示為:

bd554edc-59f1-11ed-a3b6-dac502259ad0.jpg

其中,e(k):為k時刻的偏差,u(k):為輸出的控制量(對于加熱器來說是PWM)

bd643046-59f1-11ed-a3b6-dac502259ad0.jpg

(1)比例控制(P)

Sv為用戶設置目標值,Pv為控制對象即水的當前溫度值

Ek為目標溫度與當前溫度的偏差:Ek=Sv-Pv

①當Ek<0時,表示當前溫度未達標

②當Ek==0時,表示當前溫度正好達標

③當Ek>0時,表示當前溫度已超標

比例控制算法公式:PWM=Kp*Ek

Kp參數的解釋:Kp可以理解為一個衰減器或者放大器,主要是用來調整偏差值,調整其增益或者說是放大倍數

比例控制的作用:

調節到達目標值的時間,增大Kp會增加相應速度,但可能會造成超調,有靜態誤差

(2)積分控制(I)

Ek為歷史上某一時刻的偏差,Sk為歷史偏差之和:Sk=E1+E2+E3+...+EN ①當Sk<0時,表示歷史上大部分時間溫度未達標(現在是否達標不知道) ②當Sk==0時,表示歷史上溫度總體上是好的(現在溫度是否達標不管) ③當Sk>0時,表示歷史上大部分時間溫度超標(現在溫度是否超標不知道)

積分控制公式:

PWM=Ki*Sk Ki參數的解釋:Ki可以理解為一個衰減器或者放大器,主要是用來調整Sk,調整其增益或者說是放大倍數

比例控制的作用:

如果我們把加熱器放到一個非常冷的地方對水進行加熱,加熱目標值是50攝氏度在比例控制下,水溫度慢慢升高,直到升高到45攝氏度,發現天氣太冷,水散熱的速度正好等于比例控制下的加熱速度。所以水溫永遠停留在45攝氏度,永遠到不了50攝氏度。如果加上積分控制,只要沒有達到50攝氏度,就會存在偏差,這時候對偏差不斷積分(累加),輸出的PWM就會增大,即增大的加熱器的功率,使水溫能達到50攝氏度。所以比例控制的作用是,減少靜態情況下的誤差,但容易造成震蕩

(3)微分控制(D)

E(k)為當前偏差值,E(k-1)為上一次偏差值 Dk為最近兩次偏差相減,表示最近兩個時間點偏差的變化:Dk=E(k)-E(k-1) ①當Dk<0時,表示偏差有增大的趨勢 ②當Dk==0時,表示偏差穩定,輸出為0 ③當Dk>0時,表示偏差有減小的趨勢

微分控制公式:

PWM=Kd*Dk Kd參數的解釋:Kd可以理解為一個衰減器或者放大器,主要是用來調整Dk,調整其增益或者說是放大倍數

微分控制的作用:

只要物理量存在變化,微分控制就會起作用,讓物理量的變化速度趨于0,增大Kd參數能夠抑制震蕩,盡快穩定,但有可能造成調節周期過長

(4)PID算法控制代碼實現

int PID(int Sv,int Pv)
{
      /* Sv:用戶設定的目標值
      ** Pv:傳感器檢測到的當前值
      ** Ek:目標值與當前值的偏差值
      ** last_Ek:上一次的Ek值
      ** Sk:偏差值Ek的積分值
      ** PWM:輸出的PWM值
      */
      static int Ek,last_Ek,Sk;
      static float PWM;
      Ek=Sv-Pv;
      Sk+=Ek;
      /*積分限幅,Sk_max和Sk_min根據情況自己給定*/
      if(Sk>Sk_max)   Sk=Sk_max;
      if(SkPWM_max)   PWM=PWM_max;
      if(PWM

當Ek、Ki和Kp參數參數調節的比較好時,溫度能及時達到目標溫度并且很平穩如圖所示:

bd706974-59f1-11ed-a3b6-dac502259ad0.jpg

三、PID控制參數整定的方法

PID控制的調節經驗可以總結為:先只使用 P 控制,增大 P 系數直到系統振蕩,然后加入微分控制增大阻尼,消除振蕩之后再根據系統對響應和靜差等具體要求,調節 P 和 I 參數。

例子:我們需要調節目標值為 10390,當前值為 10000

①先設置Kd和Ki的參數值為0,然后把Kp參數從0逐漸增大,直到出現震蕩

當Kp=62,Ki=0,Kd=0時,響應曲線如下:

bd7a8ac6-59f1-11ed-a3b6-dac502259ad0.jpg

②保持Kp=62,Ki=0不變,Kd從0逐漸增大,當Kd=188時,響應曲線如下:

bdaa5af8-59f1-11ed-a3b6-dac502259ad0.jpg

當加入微分控制的時候,可以看到,系統的振蕩得到了抑制,但是系統的響應變慢了。因為微分控制相當于一個阻尼力,引入微分控制相當于增大系統的阻尼。這個時候需要結合 KP 和 KI 進行進一步的優化。在實際生產中,需要對不同項目進行評估,比如一個系統對快速性要求不高,但對穩定性和準確性的要求很高,那么就需要嚴格控制超調量和靜差。

總結:PID控制算法是經典控制方法中,現實生活中使用非常廣泛,掌握其中的原理非常重要。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • PID
    PID
    +關注

    關注

    35

    文章

    1472

    瀏覽量

    85521
  • 控制算法
    +關注

    關注

    4

    文章

    166

    瀏覽量

    21723

原文標題:PID控制算法基本原理

文章出處:【微信號:嵌入式開發愛好者,微信公眾號:嵌入式開發愛好者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    蟻群算法基本原理及其應用實例

    蟻群算法是一種仿生學算法,其靈感來源于螞蟻在尋找食物過程中發現路徑的行為。蟻群算法是一種模擬進化算法,初步的研究表明該算法具有許多優良的性質
    發表于 02-02 09:44 ?9.3w次閱讀
    蟻群<b class='flag-5'>算法</b><b class='flag-5'>基本原理</b>及其應用實例

    FFT的基本原理算法結構

    FFT的基本原理算法結構FFT是利用了旋轉因子的周期性和對稱性,對DFT進行簡化的運算。各種FFT算法可分兩大類:一類是針對N等于2的整數次冪的算法,如基二
    發表于 06-14 00:20

    3個下卷-PID控制基本原理

    再發一個好了百度好評文章,PID控制基本原理
    發表于 01-20 15:26

    遺傳算法基本原理

    遺傳算法基本原理.zip
    發表于 01-07 12:13

    視頻增強算法基本原理是什么?

    視頻增強算法基本原理是什么?單尺度算法的原理是什么?視頻增強能解決的實際問題及應用領域
    發表于 06-03 07:14

    ADRC的基本原理是什么?有哪些應用?

    ADRC的基本原理是什么?有哪些應用?PID到底好在在哪里?如何保留PID的優點?
    發表于 11-22 06:14

    PID算法基本原理及其執行流程

    景。1、PID算法基本原理PID算法控制行業最經典、最簡單、而又最能體現反饋
    發表于 12-21 08:22

    嵌入式系統中語音算法基本原理是什么

    嵌入式系統中語音算法基本原理是什么?嵌入式系統中語音算法有何功能?
    發表于 12-23 08:49

    PID調節概念及基本原理

    PID調節概念及基本原理:PID全稱比例(proportion)-積分(integral)-微分(derivative)控制器,是自動控制
    發表于 09-23 23:42 ?76次下載

    LSB算法基本原理

    LSB算法基本原理LSB算法基本原理是:對空域的LSB做替換,用來替換LSB的序列就是需要加入的水印信息、水印的數字摘要或者由水印生成的偽隨機序列。由于水
    發表于 12-09 02:41 ?7543次閱讀

    預測PID控制算法基本原理及研究現狀

    自1992 年Hagglund 提出預測PI 控制器的思想以來,預測PID 算法得到了逐 步發展和完善,并成功應用在一些復雜對象的控制上?,F在文獻上所說的預測
    發表于 04-09 09:59 ?79次下載

    蟻群算法基本原理及其改進算法.ppt

    蟻群算法基本原理及其改進算法.ppt
    發表于 04-23 14:28 ?6次下載
    蟻群<b class='flag-5'>算法</b>的<b class='flag-5'>基本原理</b>及其改進<b class='flag-5'>算法</b>.ppt

    PID自動控制算法基本原理和使用說明

    在自動控制中,PID及其衍生出來的算法是應用最廣的算法之一。各個做自動控制的廠家基本都有會實現這一經典
    發表于 11-09 08:00 ?2次下載
    <b class='flag-5'>PID</b>自動<b class='flag-5'>控制</b><b class='flag-5'>算法</b>的<b class='flag-5'>基本原理</b>和使用說明

    PID調節及PID調節的基本原理

    PID調節及PID調節的基本原理免費下載。
    發表于 04-25 15:41 ?51次下載

    PID算法基本原理介紹

    在現代工業自動化和控制系統中,PID控制器因其簡單、魯棒和高效而成為最廣泛使用的控制算法之一。PID
    的頭像 發表于 11-06 10:28 ?384次閱讀
    主站蜘蛛池模板: 萌白酱白丝护士服喷水铁牛tv | 男人搡女人视频免费看| 欧美大色网| 久久精品亚洲热综合一本奇米| 在线免费成人网| 中文字幕一区在线观看| 久久精品国产99久久72| 欧美黄色一级视频| 成年毛片| 男人免费看片| 一区二区在线免费视频| 亚洲欧美色鬼久久综合| 欧美色图综合| a级毛片网| 国产精选经典三级小泽玛利亚| 亚洲男人天堂2020| 四虎永久精品免费观看| 黄色一级片播放| 深夜视频在线免费| 中文字幕一二三四区| 日本三级高清| 在线免费视频| 我被黑人巨大开嫩苞在线观看| 在线毛片网| www国产永久免费视频看看| 久久久久久久国产精品影院 | 午夜视频在线观看免费观看在线观看| 午夜黄色大片| 黄 色 片成 人免费观看| 神马午夜限制| 怡红院色视频在线| 久久久久久久久综合| 手机看片日韩国产| 日本一区视频| 欧美1314www伊人久久香网| 窝窝午夜看片免费视频| h视频在线播放| 色草视频| 午夜看片网址| 中文字幕在线视频第一页| 久久久久毛片成人精品|