0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

什么是串級(jí)PID? 簡(jiǎn)單PID和串級(jí)PID的優(yōu)劣對(duì)比

電子設(shè)計(jì) ? 來源: 電子森林 ? 作者: 電子森林 ? 2021-02-26 15:21 ? 次閱讀

什么是串級(jí)PID?

什么是串級(jí)PID?顧名思義就是兩個(gè)串起來的PID,下面是一個(gè)雙閉環(huán)的例子,外環(huán)是位置環(huán),內(nèi)環(huán)是速度環(huán),最終的執(zhí)行器是電機(jī),電機(jī)輸出產(chǎn)生了速度和位置;具體框圖如下圖所示;

當(dāng)然執(zhí)行器也可以是四軸飛行器,整體過程如下:

我們?cè)谕猸h(huán)給定相應(yīng)的位置高度,外環(huán)PID的輸出就是內(nèi)環(huán)PID的期望值;

內(nèi)環(huán)PID的輸出將產(chǎn)生相應(yīng)的油門大小,最終飛行器會(huì)產(chǎn)生上升的速度;

內(nèi)環(huán)反饋值為速度,控制相應(yīng)的速度達(dá)到外環(huán)所需的速度期望值;

最終外環(huán)達(dá)到期望的位置;

可能這里比較抽象,好吧,下面繼續(xù)細(xì)化一下硬件的細(xì)節(jié);

PID的算法控制其實(shí)是一種無系統(tǒng)模型的控制,可以根據(jù)參數(shù)經(jīng)驗(yàn)經(jīng)驗(yàn)去調(diào)試系統(tǒng);

但是實(shí)際的物理對(duì)象的模型其實(shí)早就確定好了,PID的輸入量和輸出量的物理意義也會(huì)因?yàn)閷?shí)際的被控對(duì)象而改變;

換句話說,PID的輸入基本上和系統(tǒng)的反饋量相關(guān),而實(shí)際的反饋量是什么,從一開始就因?yàn)橄到y(tǒng)而確定下來了;

內(nèi)環(huán)和外環(huán)

如果外環(huán)是因,那內(nèi)環(huán)就是果。萬物皆有因果。

比如伺服控制器的三環(huán):

  • 位置環(huán)
  • 速度環(huán)
  • 電流環(huán)

外環(huán)的變化會(huì)直接導(dǎo)致內(nèi)環(huán)的變化,而內(nèi)環(huán)是直接導(dǎo)致執(zhí)行器變化的關(guān)鍵,如果這里依然使用飛行器作為例子,對(duì)于整個(gè)四軸飛行系統(tǒng)而言;

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

扭矩和負(fù)載一起決定電機(jī)轉(zhuǎn)速;

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

最終也導(dǎo)致了飛行器的位置變化;

這是整個(gè)的控制過程。

如果只用單環(huán)的PID去控制系統(tǒng),可以在給定系統(tǒng)期望的情況下達(dá)到所需要的位置嗎?

答案是可以。

那這樣串級(jí)PID還有什么意義嗎?

答案是有。

我們?cè)囅胍幌?,如果單純使用單環(huán)PID去控制系統(tǒng)。

那我們看一下單環(huán)的PID系統(tǒng)框圖;

我們?cè)O(shè)定了一個(gè)高度,并且希望飛行器達(dá)到預(yù)期位置高度,那么這時(shí)候系統(tǒng)的反饋值只有位置量;

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

其實(shí)不難理解,因?yàn)橐婚_始的高度差很大,所以PID計(jì)算輸出的值就很大,因此初始速度會(huì)非常大,隨著飛行器越來越接近期望位置,偏差越來越小,PID輸出量逐漸減小,因此速度逐漸減小。

其實(shí)很多時(shí)候,PID只是底層,稱之為內(nèi)環(huán)PID,通過它可以先穩(wěn)定某個(gè)系統(tǒng),優(yōu)化動(dòng)態(tài)特性,然后在外層嵌套其他算法,當(dāng)然,外面有好幾層PID的控制系統(tǒng)是也很常見的。也就是我們介紹的串級(jí)PID的系統(tǒng),具體如下所示;

控制器的本質(zhì)是出入跟輸出的函數(shù)映射關(guān)系。

其實(shí)從這個(gè)角度來看,通常PID適用于低階的線性時(shí)不變系統(tǒng),在此基礎(chǔ)上限制到P,I,D三個(gè)系數(shù)。

整體還需要根據(jù)具體的系統(tǒng),有所變化,有的系統(tǒng)其實(shí)只需要兩個(gè)系數(shù)(比如PD或PI),甚至有的系統(tǒng)只需要一個(gè)就行(比如P)。因此上面系統(tǒng)中,外環(huán)只需要使用P環(huán)節(jié)就足夠了,另外可以對(duì)速度曲線進(jìn)行規(guī)劃。

假設(shè)這里使用了速度曲線規(guī)劃,因?yàn)榭梢詫?duì)飛行器的速度進(jìn)行控制了;

所以我們期望它盡快達(dá)到最大速度,因此從最開始的階段進(jìn)行勻加速,達(dá)到最大速度后開始勻速上升,即將到達(dá)期望位置的時(shí)候,進(jìn)行勻減速,最終懸停到目標(biāo)位置;

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

換句說話說,就是外環(huán)PID的輸出作為內(nèi)環(huán)PID的輸入;

下面是單環(huán)PID的偽算法;

previous_error := 0 //上一次偏差

integral := 0 //積分和

//循環(huán)

//采樣周期為dt

loop:

//setpoint 設(shè)定值

//measured_value 反饋值

error := setpoint ? measured_value //計(jì)算得到偏差

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

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

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

previous_error := error //保存當(dāng)前偏差為下一次采樣時(shí)所需要的歷史偏差

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

goto loop

那么改成串級(jí)PID需要如何操作呢?

具體偽算法如下所示;

previous_error := 0 //上一次偏差

integral := 0 //積分和

previous_error_inner := 0 //內(nèi)環(huán)PID上一次偏差

integral_inner := 0 //內(nèi)環(huán)PID積分和

//循環(huán)

//采樣周期為dt

loop:

//外環(huán)計(jì)算

//setpoint 外環(huán)設(shè)定值

//measured_value 外環(huán)反饋值

error := setpoint ? measured_value //計(jì)算得到偏差

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

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

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

previous_error := error //保存當(dāng)前偏差為下一次采樣時(shí)所需要的歷史偏差

setpoint_inner = output //外環(huán)的PID輸出賦值給內(nèi)環(huán)的PID輸入

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

goto loop

loop_inner:

//setpoint_inner 內(nèi)環(huán)設(shè)定值

//measured_value_inner 內(nèi)環(huán)反饋值

error_inner := setpoint_inner ? measured_value_inner //計(jì)算得到偏差

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

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

//計(jì)算得到PID輸出

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

previous_error_inner := error_inner //保存當(dāng)前偏差為下一次采樣時(shí)所需要的歷史偏差

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

goto loop_inner

這里將內(nèi)環(huán)PID的相關(guān)變量加了后綴 _inner,loop是外環(huán)PID進(jìn)行周期控制,loop_inner是內(nèi)環(huán)PID進(jìn)行周期控制,兩者相互獨(dú)立,將外環(huán)PID的輸出賦值給內(nèi)環(huán)PID的輸入即可;

遇到干擾的時(shí)候,內(nèi)環(huán)控制器首先進(jìn)行粗調(diào),外環(huán)控制器再進(jìn)一步細(xì)調(diào)。

因此控制效果必然優(yōu)于單環(huán)的PID控制系統(tǒng)。

串級(jí)控制系統(tǒng)在結(jié)構(gòu)上僅僅比簡(jiǎn)單控制系統(tǒng)多了一個(gè)內(nèi)環(huán)回路,可是實(shí)踐證明,對(duì)于相同的干擾,串級(jí)控制系統(tǒng)的控制質(zhì)量是簡(jiǎn)單控制系統(tǒng)無法比擬的。

PID參數(shù)

串級(jí)PID的參數(shù)整定基本遵循從內(nèi)到外,先整定內(nèi)環(huán)PID的參數(shù),再整定外環(huán)PID的參數(shù);

根據(jù)經(jīng)驗(yàn)法調(diào)試參數(shù),通常來說先整定內(nèi)環(huán)比例參數(shù)P,然后整定積分參數(shù)I,動(dòng)態(tài)特性可以整理微分參數(shù)D,當(dāng)然還需要對(duì)飽和的情況進(jìn)行處理;

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

那到底什么樣的響應(yīng)曲線算好的呢?

一般來說并不存在最優(yōu)的,比如有的對(duì)速度和加速度有限制,有的系統(tǒng)一定不能出現(xiàn)超調(diào)量等等,有的系統(tǒng)則是響應(yīng)越快越好。所以還是那句話,我不要你覺得,我要我覺得,合適才是最好的。

總結(jié)

本文簡(jiǎn)單介紹了串級(jí)PID的相關(guān)概念,以四軸飛行器為例,對(duì)比了簡(jiǎn)單PID和串級(jí)PID的優(yōu)劣;

編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • PID
    PID
    +關(guān)注

    關(guān)注

    35

    文章

    1467

    瀏覽量

    85092
  • 執(zhí)行器
    +關(guān)注

    關(guān)注

    5

    文章

    375

    瀏覽量

    19284
  • 外環(huán)控制器
    +關(guān)注

    關(guān)注

    0

    文章

    2

    瀏覽量

    5834
  • PID 算法控制
    +關(guān)注

    關(guān)注

    2

    文章

    2

    瀏覽量

    4870
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    級(jí)pid內(nèi)環(huán)和外環(huán)怎么確定

    在控制系統(tǒng)中,級(jí)PID控制器是一種常見的控制策略,它通過將兩個(gè)PID控制器串聯(lián)起來,實(shí)現(xiàn)對(duì)系統(tǒng)的精確控制。
    的頭像 發(fā)表于 08-23 09:17 ?686次閱讀

    級(jí)控制pid參數(shù)怎么調(diào)節(jié)

    ,PID(比例-積分-微分)控制器是常用的控制算法。本文將介紹級(jí)控制PID參數(shù)的調(diào)節(jié)方法。 1. 級(jí)
    的頭像 發(fā)表于 08-23 09:13 ?784次閱讀

    級(jí)控制系統(tǒng)副回路為什么不選用PID控制

    級(jí)控制系統(tǒng)副回路不常選用PID控制的原因,主要基于以下幾個(gè)方面: 1. 控制要求差異 級(jí)控制系統(tǒng)的主要目的是為了高精度地穩(wěn)定主變量,對(duì)主
    的頭像 發(fā)表于 08-23 09:11 ?240次閱讀

    PID控制的原理與作用

    在工業(yè)自動(dòng)化和過程控制中,PID(比例-積分-微分)控制是一種廣泛應(yīng)用的控制策略。PID控制憑借其原理簡(jiǎn)單、魯棒性強(qiáng)和實(shí)用面廣等優(yōu)點(diǎn),已成為技術(shù)成熟、應(yīng)用最為廣泛的控制系統(tǒng)之一。本文將詳細(xì)介紹
    的頭像 發(fā)表于 06-12 11:45 ?2392次閱讀

    PID在工業(yè)控制領(lǐng)域的應(yīng)用

    在工業(yè)控制領(lǐng)域,PID(比例-積分-微分)控制算法以其簡(jiǎn)單實(shí)用、魯棒性好、應(yīng)用范圍廣等特點(diǎn),成為了工程師們實(shí)現(xiàn)穩(wěn)定、高效控制的首選方案。PID控制算法通過調(diào)整比例、積分和微分三個(gè)參數(shù),對(duì)系統(tǒng)的偏差
    的頭像 發(fā)表于 06-11 14:47 ?780次閱讀

    位置式PID與增量式PID的區(qū)別

    PID(比例-積分-微分)控制器作為工業(yè)自動(dòng)化領(lǐng)域中的核心控制算法,廣泛應(yīng)用于各種需要精確控制的系統(tǒng)中。在PID控制器的實(shí)現(xiàn)中,有兩種主要的控制模式:位置式PID和增量式PID。雖然兩
    的頭像 發(fā)表于 06-05 16:23 ?5101次閱讀

    什么是PID?PID各個(gè)參數(shù)有什么作用?

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

    什么是pid控制原理 pid各個(gè)參數(shù)對(duì)系統(tǒng)的影響

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

    求一種組式逆變器針對(duì)P型、N型光伏組件PID效應(yīng)的解決方案

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

    詳解PID回路控制方案

    在實(shí)際工程中,應(yīng)用最為廣泛的調(diào)節(jié)器控制規(guī)律為比例、積分、微分控制,簡(jiǎn)稱PID控制,又稱PID調(diào)節(jié)。
    的頭像 發(fā)表于 12-31 14:39 ?1444次閱讀
    詳解<b class='flag-5'>PID</b>回路控制方案

    【技術(shù)干貨】PID算法原理分析及優(yōu)化

    。 03 級(jí)PID 所謂級(jí)PID,就是采用多個(gè)PID
    發(fā)表于 12-22 15:38

    四軸PID算法:?jiǎn)苇h(huán)和級(jí),你搞懂了嗎?

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

    何為PID?為何需要PIDPID能達(dá)到什么作用?

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

    PID參數(shù)采樣周期選擇

    在學(xué)習(xí) PID 算法的參數(shù)整定的時(shí)候,每一個(gè)系統(tǒng)的 PID系數(shù)是不通用的,在不同的系統(tǒng)中運(yùn)用同樣的 PID系數(shù),其最終所體現(xiàn)的效果可能是相差可能甚遠(yuǎn)的,所以我們需要根據(jù)實(shí)際的系統(tǒng)進(jìn)行 PID
    的頭像 發(fā)表于 11-14 17:12 ?3045次閱讀
    <b class='flag-5'>PID</b>參數(shù)采樣周期選擇

    PID算法原理分析及優(yōu)化

    歡迎來到森木磊石「技術(shù)微課堂」,本期為大家分享經(jīng)典控制算法之一的PID控制方法。PID控制方法從提出至今已有百余年歷史,其由于結(jié)構(gòu)簡(jiǎn)單、易于實(shí)現(xiàn)、魯棒性好、可靠性高等特點(diǎn),在機(jī)電、冶金、機(jī)械、化工等
    的頭像 發(fā)表于 11-08 08:23 ?1428次閱讀
    <b class='flag-5'>PID</b>算法原理分析及優(yōu)化