精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

什么是串級PID? 簡單PID和串級PID的優劣對比

電子設計 ? 來源: 電子森林 ? 作者: 電子森林 ? 2021-02-26 15:21 ? 次閱讀

什么是串級PID?

什么是串級PID?顧名思義就是兩個串起來的PID,下面是一個雙閉環的例子,外環是位置環,內環是速度環,最終的執行器是電機,電機輸出產生了速度和位置;具體框圖如下圖所示;

當然執行器也可以是四軸飛行器,整體過程如下:

我們在外環給定相應的位置高度,外環PID的輸出就是內環PID的期望值;

內環PID的輸出將產生相應的油門大小,最終飛行器會產生上升的速度;

內環反饋值為速度,控制相應的速度達到外環所需的速度期望值;

最終外環達到期望的位置;

可能這里比較抽象,好吧,下面繼續細化一下硬件的細節;

PID的算法控制其實是一種無系統模型的控制,可以根據參數經驗經驗去調試系統;

但是實際的物理對象的模型其實早就確定好了,PID的輸入量和輸出量的物理意義也會因為實際的被控對象而改變;

換句話說,PID的輸入基本上和系統的反饋量相關,而實際的反饋量是什么,從一開始就因為系統而確定下來了;

內環和外環

如果外環是因,那內環就是果。萬物皆有因果。

比如伺服控制器的三環:

  • 位置環
  • 速度環
  • 電流

外環的變化會直接導致內環的變化,而內環是直接導致執行器變化的關鍵,如果這里依然使用飛行器作為例子,對于整個四軸飛行系統而言;

我們通過控制電機的電流,從而決定電機的輸出扭矩;

扭矩和負載一起決定電機轉速;

螺旋槳快速旋轉從而產生了飛行器的升力,于是也決定了上升的速度;

最終也導致了飛行器的位置變化;

這是整個的控制過程。

如果只用單環的PID去控制系統,可以在給定系統期望的情況下達到所需要的位置嗎?

答案是可以。

那這樣串級PID還有什么意義嗎?

答案是有。

我們試想一下,如果單純使用單環PID去控制系統。

那我們看一下單環的PID系統框圖;

我們設定了一個高度,并且希望飛行器達到預期位置高度,那么這時候系統的反饋值只有位置量;

那么飛行器是以什么樣的速度去飛行?以什么樣的加速度去啟動?我們就無法去有效地控制飛行器的速度,讓它去快速地到達期望的位置,具體位置曲線如下圖所示;

其實不難理解,因為一開始的高度差很大,所以PID計算輸出的值就很大,因此初始速度會非常大,隨著飛行器越來越接近期望位置,偏差越來越小,PID輸出量逐漸減小,因此速度逐漸減小。

其實很多時候,PID只是底層,稱之為內環PID,通過它可以先穩定某個系統,優化動態特性,然后在外層嵌套其他算法,當然,外面有好幾層PID的控制系統是也很常見的。也就是我們介紹的串級PID的系統,具體如下所示;

控制器的本質是出入跟輸出的函數映射關系。

其實從這個角度來看,通常PID適用于低階的線性時不變系統,在此基礎上限制到P,I,D三個系數。

整體還需要根據具體的系統,有所變化,有的系統其實只需要兩個系數(比如PD或PI),甚至有的系統只需要一個就行(比如P)。因此上面系統中,外環只需要使用P環節就足夠了,另外可以對速度曲線進行規劃。

假設這里使用了速度曲線規劃,因為可以對飛行器的速度進行控制了;

所以我們期望它盡快達到最大速度,因此從最開始的階段進行勻加速,達到最大速度后開始勻速上升,即將到達期望位置的時候,進行勻減速,最終懸停到目標位置;

那么整體的位置變化曲線如下所示;

換句說話說,就是外環PID的輸出作為內環PID的輸入;

下面是單環PID的偽算法;

previous_error := 0 //上一次偏差

integral := 0 //積分和

//循環

//采樣周期為dt

loop:

//setpoint 設定值

//measured_value 反饋值

error := setpoint ? measured_value //計算得到偏差

integral := integral + error × dt //計算得到積分累加和

derivative := (error ? previous_error) / dt //計算得到微分

output := Kp × error + Ki × integral + Kd × derivative //計算得到PID輸出

previous_error := error //保存當前偏差為下一次采樣時所需要的歷史偏差

wait(dt) //等待下一次采用

goto loop

那么改成串級PID需要如何操作呢?

具體偽算法如下所示;

previous_error := 0 //上一次偏差

integral := 0 //積分和

previous_error_inner := 0 //內環PID上一次偏差

integral_inner := 0 //內環PID積分和

//循環

//采樣周期為dt

loop:

//外環計算

//setpoint 外環設定值

//measured_value 外環反饋值

error := setpoint ? measured_value //計算得到偏差

integral := integral + error × dt //計算得到積分累加和

derivative := (error ? previous_error) / (n*dt) //計算得到微分

output := Kp × error + Ki × integral + Kd × derivative //計算得到PID輸出

previous_error := error //保存當前偏差為下一次采樣時所需要的歷史偏差

setpoint_inner = output //外環的PID輸出賦值給內環的PID輸入

wait(n*dt) //等待下一次采樣

goto loop

loop_inner:

//setpoint_inner 內環設定值

//measured_value_inner 內環反饋值

error_inner := setpoint_inner ? measured_value_inner //計算得到偏差

integral_inner := integral_inner + error_inner × dt //計算得到積分累加和

derivative_inner := (error_inner ? previous_error_inner) / dt //計算得到微分

//計算得到PID輸出

output_inner := Kp_inner × error + Ki_inner × integral_inner + Kd_inner × derivative_inner

previous_error_inner := error_inner //保存當前偏差為下一次采樣時所需要的歷史偏差

wait(dt) //等待下一次采樣

goto loop_inner

這里將內環PID的相關變量加了后綴 _inner,loop是外環PID進行周期控制,loop_inner是內環PID進行周期控制,兩者相互獨立,將外環PID的輸出賦值給內環PID的輸入即可;

遇到干擾的時候,內環控制器首先進行粗調,外環控制器再進一步細調。

因此控制效果必然優于單環的PID控制系統。

串級控制系統在結構上僅僅比簡單控制系統多了一個內環回路,可是實踐證明,對于相同的干擾,串級控制系統的控制質量是簡單控制系統無法比擬的。

PID參數

串級PID的參數整定基本遵循從內到外,先整定內環PID的參數,再整定外環PID的參數;

根據經驗法調試參數,通常來說先整定內環比例參數P,然后整定積分參數I,動態特性可以整理微分參數D,當然還需要對飽和的情況進行處理;

總之可以觀察輸入輸出曲線;

那到底什么樣的響應曲線算好的呢?

一般來說并不存在最優的,比如有的對速度和加速度有限制,有的系統一定不能出現超調量等等,有的系統則是響應越快越好。所以還是那句話,我不要你覺得,我要我覺得,合適才是最好的。

總結

本文簡單介紹了串級PID的相關概念,以四軸飛行器為例,對比了簡單PID和串級PID的優劣;

編輯:hfy

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

    關注

    35

    文章

    1471

    瀏覽量

    85306
  • 執行器
    +關注

    關注

    5

    文章

    375

    瀏覽量

    19326
  • 外環控制器
    +關注

    關注

    0

    文章

    2

    瀏覽量

    5835
  • PID 算法控制

    關注

    2

    文章

    2

    瀏覽量

    4871
收藏 人收藏

    評論

    相關推薦

    如何使用Python實現PID控制

    PID控制(比例-積分-微分控制)是一種常見的反饋控制算法,廣泛應用于工業控制系統中。在Python中實現PID控制,我們可以遵循以下步驟: 1. 理解PID控制原理 PID控制器有三
    的頭像 發表于 11-14 09:09 ?282次閱讀

    如何調節PID參數 PID控制器的調試方法

    在現代工業自動化控制系統中,PID控制器因其簡單、高效而被廣泛使用。PID控制器的三個參數——比例(P)、積分(I)和微分(D)——共同決定了系統的動態響應和穩定性。 PID控制器原理
    的頭像 發表于 11-13 14:31 ?514次閱讀

    PID控制的優缺點分析 PID參數調節的常見方法

    PID控制,即比例-積分-微分控制,是一種廣泛應用于工業控制系統中的控制算法。它通過比例(P)、積分(I)和微分(D)三個參數的調整來實現對系統輸出的精確控制。 PID控制的優點 簡單易行 :
    的頭像 發表于 11-06 10:33 ?740次閱讀

    如何使用PID進行溫度控制

    PID(比例-積分-微分)控制器在溫度控制系統中扮演著至關重要的角色。以下是使用PID進行溫度控制的基本步驟和原理: 一、PID控制原理 PID控制器的核心思想是根據系統當前的狀態(即
    的頭像 發表于 11-06 10:31 ?508次閱讀

    pid內環和外環怎么確定

    在控制系統中,PID控制器是一種常見的控制策略,它通過將兩個PID控制器串聯起來,實現對系統的精確控制。
    的頭像 發表于 08-23 09:17 ?1172次閱讀

    控制pid參數怎么調節

    PID(比例-積分-微分)控制器是常用的控制算法。本文將介紹控制PID參數的調節方法。 1.
    的頭像 發表于 08-23 09:13 ?1328次閱讀

    控制系統副回路為什么不選用PID控制

    控制系統副回路不常選用PID控制的原因,主要基于以下幾個方面: 1. 控制要求差異 控制系統的主要目的是為了高精度地穩定主變量,對主
    的頭像 發表于 08-23 09:11 ?380次閱讀

    PID控制的原理與作用

    在工業自動化和過程控制中,PID(比例-積分-微分)控制是一種廣泛應用的控制策略。PID控制憑借其原理簡單、魯棒性強和實用面廣等優點,已成為技術成熟、應用最為廣泛的控制系統之一。本文將詳細介紹
    的頭像 發表于 06-12 11:45 ?3200次閱讀

    位置式PID與增量式PID的區別

    PID(比例-積分-微分)控制器作為工業自動化領域中的核心控制算法,廣泛應用于各種需要精確控制的系統中。在PID控制器的實現中,有兩種主要的控制模式:位置式PID和增量式PID。雖然兩
    的頭像 發表于 06-05 16:23 ?6285次閱讀

    什么是PIDPID各個參數有什么作用?

    PID,就是“比例(proportional)、積分(integral)、微分(derivative)”,是一種很常見的控制算法。 PID已經有107年的歷史了,它并不是什么很神圣的東西,大家一定都見過PID的實際應用。
    發表于 03-18 11:24 ?1w次閱讀
    什么是<b class='flag-5'>PID</b>?<b class='flag-5'>PID</b>各個參數有什么作用?

    什么是pid控制原理 pid各個參數對系統的影響

    PID(Proportional-Integral-Derivative)控制是一種常見的控制算法,廣泛應用于工業過程控制、機器人控制、自動駕駛等領域。本文將詳細介紹PID控制的原理以及其中的各個
    的頭像 發表于 01-22 15:35 ?5233次閱讀

    求一種組式逆變器針對P型、N型光伏組件PID效應的解決方案

    近期有客戶詢問關于PID效應的問題,希望了解PID效應原理以及P型、N型光伏組件PID機理和區別。
    的頭像 發表于 01-12 16:27 ?2765次閱讀
    求一種組<b class='flag-5'>串</b>式逆變器針對P型、N型光伏組件<b class='flag-5'>PID</b>效應的解決方案

    【技術干貨】PID算法原理分析及優化

    。 03 PID 所謂PID,就是采用多個PID
    發表于 12-22 15:38

    四軸PID算法:單環和,你搞懂了嗎?

    上述角度單環PID控制算法僅僅考慮了飛行器的角度信息,如果想增加飛行器的穩定性(增加阻尼)并提高它的控制品質,我們可以進一步的控制它的角速度,于是角度/角速度-PID控制算法應運而
    的頭像 發表于 12-11 17:35 ?1302次閱讀
    四軸<b class='flag-5'>PID</b>算法:單環和<b class='flag-5'>串</b><b class='flag-5'>級</b>,你搞懂了嗎?

    何為PID?為何需要PIDPID能達到什么作用?

    何為PID?為何需要PIDPID能達到什么作用? PID是英文Proportional-Integral-Derivative的縮寫,即比例-積分-微分控制器。它是一種常用的反饋控制
    的頭像 發表于 12-07 13:37 ?1400次閱讀