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

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

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

pid控制中三個(gè)參數(shù)的作用

STM32嵌入式開(kāi)發(fā) ? 來(lái)源:STM32嵌入式開(kāi)發(fā) ? 2023-08-23 09:31 ? 次閱讀

PID控制應(yīng)該算是非常古老而且應(yīng)用非常廣泛的控制算法了,小到熱水壺溫度控制,大到控制無(wú)人機(jī)的飛行姿態(tài)和飛行速度等等。在電機(jī)控制中,PID算法用得尤為常見(jiàn)。

位置式PID 1 計(jì)算公式電機(jī)控制中,我們給電機(jī)輸出的是一個(gè)PWM占空比的數(shù)值。 話不多說(shuō),直接上位置式PID基本公式: d20a477c-4138-11ee-a2ef-92fbcf53809c.png ????控制流程圖如下: d2306e2a-4138-11ee-a2ef-92fbcf53809c.png ????上圖中的目標(biāo)位置一般我們可以通過(guò)按鍵或者開(kāi)關(guān)等方式編程實(shí)現(xiàn)改變目標(biāo)值,測(cè)量位置就是通過(guò) stm32 去采集編碼器的數(shù)據(jù)。 ????目標(biāo)位置和測(cè)量位置之間作差就是目前系統(tǒng)的偏差。送入 PID 控制器進(jìn)行計(jì)算輸出,然后再經(jīng)過(guò)電機(jī)驅(qū)動(dòng)的功率放大控制電機(jī)的轉(zhuǎn)動(dòng)去減小偏差, 最終達(dá)到目標(biāo)位置的過(guò)程。 2 C語(yǔ)言實(shí)現(xiàn) 如何把我們以上的理論分析和控制原理圖使用 C 語(yǔ)言寫(xiě)出來(lái)呢,這是一個(gè)有趣且實(shí)用的過(guò)程。位置式 PID 具體通過(guò) C 語(yǔ)言實(shí)現(xiàn)的代碼如下:

int Position_PID (int Encoder,int Target)
{
  static float Bias,Pwm,Integral_bias,Last_Bias;
  Bias=Target- Encoder; //計(jì)算偏差
  Integral_bias+=Bias; //求出偏差的積分
  //PID基本公式
  Pwm=Position_KP*Bias+Position_KI*Integral_bias+Position_KD*(Bias-Last_Bias);
  Last_Bias=Bias; //保存上一次偏差
  return Pwm; //輸出
}
入口參數(shù)編碼器的位置測(cè)量值和位置控制的目標(biāo)值,返回值為電機(jī)控制PWM(現(xiàn)在再看一下上面的控制框圖是不是更加容易明白了)。 第一行是相關(guān)內(nèi)部變量的定義。 第二行是求出位置偏差,由測(cè)量值減去目標(biāo)值。 第三行通過(guò)累加求出偏差的積分。 第四行使用位置式 PID 控制器求出電機(jī) PWM。 第五行保存上一次偏差,便于下次調(diào)用。 最后一行是返回。 增量式PID 1 計(jì)算公式 速度閉環(huán)控制就是根據(jù)單位時(shí)間獲取的脈沖數(shù)(這里使用了 M 法測(cè)速)測(cè)量電機(jī)的速度信息,并與目標(biāo)值進(jìn)行比較,得到控制偏差,然后通過(guò)對(duì)偏差的比例、積分、微分進(jìn)行控制,使偏差趨向于零的過(guò)程。 d252a92c-4138-11ee-a2ef-92fbcf53809c.png ????在我們的速度控制閉環(huán)系統(tǒng)里面只使用 PI 控制,因此對(duì) PID 控制器可簡(jiǎn)化 ????為以下公式: d274e046-4138-11ee-a2ef-92fbcf53809c.png ????控制框圖和位置式的一樣的。 d28b4a48-4138-11ee-a2ef-92fbcf53809c.png ????上圖中的目標(biāo)速度一般我們可以通過(guò)按鍵或者開(kāi)關(guān)等方式編程實(shí)現(xiàn)改變目標(biāo)值,測(cè)量速度前面在編碼器的章節(jié)已經(jīng)有說(shuō)到就是通過(guò)單片機(jī)定時(shí)去采集編碼器的數(shù)據(jù)并清零。 ????目標(biāo)速度和測(cè)量速度之間做差就是目前系統(tǒng)的偏差。送入 PID 控制器進(jìn)行計(jì)算輸出,然后再經(jīng)過(guò)電機(jī)驅(qū)動(dòng)的功率放大控制電機(jī)的轉(zhuǎn)動(dòng)去減小偏差, 最終達(dá)到目標(biāo)速度的過(guò)程。 2 C語(yǔ)言實(shí)現(xiàn) 如何把我們以上的理論分析和控制原理圖使用 C 語(yǔ)言寫(xiě)出來(lái)呢,這是一個(gè)有趣且實(shí)用的過(guò)程。位置式 PID 具體通過(guò) C 語(yǔ)言實(shí)現(xiàn)的代碼如下:
int Incremental_PI (int Encoder,int Target)
{
  static float Bias,Pwm,Last_bias;
  Bias=Encoder-Target; //計(jì)算偏差
  //增量式 PI 控制器
  Pwm+=Velocity_KP*(Bias-Last_bias)+Velocity_KI*Bias;
  Last_bias=Bias; //保存上一次偏差
  return Pwm; //增量輸出
}
入口參數(shù)為編碼器的速度測(cè)量值和速度控制的目標(biāo)值,返回值為電機(jī)控制 PWM。

第一行是相關(guān)內(nèi)部變量的定義。

第二行是求出速度偏差,由測(cè)量值減去目標(biāo)值。 第三行使用增量 PI 控制器求出電機(jī) PWM。

第四行保存上一次偏差,便于下次調(diào)用。

最后一行是返回。

P、I、D各個(gè)參數(shù)的作用

自動(dòng)控制系統(tǒng)的性能指標(biāo)主要有三個(gè)方面:穩(wěn)定性、快速性、準(zhǔn)確性。 穩(wěn)定性:

系統(tǒng)在受到外作用后,若控制系統(tǒng)使其被控變量隨時(shí)間的增長(zhǎng)而最終與給定期望值一致,則稱系統(tǒng)是穩(wěn)定的,我們一般稱為系統(tǒng)收斂。 如果被控量隨時(shí)間的增長(zhǎng),越來(lái)越偏離給定值,則稱系統(tǒng)是不穩(wěn)定的,我們一般稱為系統(tǒng)發(fā)散。穩(wěn)定的系統(tǒng)才能完成自動(dòng)控制的任務(wù),所以,系統(tǒng)穩(wěn)定是保證控制系統(tǒng)正常工作的必要條件。


一個(gè)穩(wěn)定的控制系統(tǒng)其被控量偏離給定值的初始偏差應(yīng)隨時(shí)間的增長(zhǎng)逐漸減小并趨于零。

快速性:

快速性是指系統(tǒng)的動(dòng)態(tài)過(guò)程進(jìn)行的時(shí)間長(zhǎng)短。過(guò)程時(shí)間越短,說(shuō)明系統(tǒng)快速性越好,過(guò)程時(shí)間持續(xù)越長(zhǎng),說(shuō)明系統(tǒng)響應(yīng)遲鈍,難以實(shí)現(xiàn)快速變化的指令信號(hào)。 穩(wěn)定性和快速性反映了系統(tǒng)在控制過(guò)程中的性能。系統(tǒng)在跟蹤過(guò)程中,被控量偏離給定值越小,偏離的時(shí)間越短,說(shuō)明系統(tǒng)的動(dòng)態(tài)精度偏高。

準(zhǔn)確性:

是指系統(tǒng)在動(dòng)態(tài)過(guò)程結(jié)束后,其被控變量(或反饋量)對(duì)給定值的偏差而言,這一偏差即為穩(wěn)態(tài)誤差,它是衡量系統(tǒng)穩(wěn)態(tài)精度的指標(biāo),反映了動(dòng)態(tài)過(guò)程后期的性能。


在實(shí)踐生產(chǎn)工程中,不同的控制系統(tǒng)對(duì)控制器效果的要求不一樣。比如平衡車、倒立擺對(duì)系統(tǒng)的快速性要求很高,響應(yīng)太慢會(huì)導(dǎo)致系統(tǒng)失控。 智能家居里面的門窗自動(dòng)開(kāi)合系統(tǒng),對(duì)快速性要求就不高,但是對(duì)穩(wěn)定性和準(zhǔn)確性的要求就很高,所以需要嚴(yán)格控制系統(tǒng)的超調(diào)量和靜差。
審核編輯:彭菁
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 電機(jī)控制
    +關(guān)注

    關(guān)注

    3519

    文章

    1832

    瀏覽量

    267825
  • 編碼器
    +關(guān)注

    關(guān)注

    44

    文章

    3552

    瀏覽量

    133788
  • PWM
    PWM
    +關(guān)注

    關(guān)注

    114

    文章

    5099

    瀏覽量

    212826
  • 參數(shù)
    +關(guān)注

    關(guān)注

    11

    文章

    1731

    瀏覽量

    31981
  • PID控制
    +關(guān)注

    關(guān)注

    10

    文章

    449

    瀏覽量

    39980

原文標(biāo)題:STM32單片機(jī)實(shí)現(xiàn)電機(jī)的PID控制

文章出處:【微信號(hào):c-stm32,微信公眾號(hào):STM32嵌入式開(kāi)發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    PID的比例,積分,微分三個(gè)參數(shù)怎么確定呢

    PID的比例,積分,微分三個(gè)參數(shù)怎么確定呢?
    發(fā)表于 04-29 16:02

    請(qǐng)問(wèn)下列圖中三個(gè)電阻起到什么作用?

    `來(lái)自自學(xué)者的問(wèn)題,下列圖中三個(gè)電阻起到什么作用。`
    發(fā)表于 12-28 01:00

    PID控制中P、I、D參數(shù)作用是什么?

    PID控制中有P、I、D三個(gè)參數(shù),只有明白這三個(gè)參數(shù)的含義和
    發(fā)表于 06-20 06:50

    什么是PID控制

    PID控制中有P、I、D三個(gè)參數(shù),只有明白這三個(gè)參數(shù)的含義和
    的頭像 發(fā)表于 07-18 16:10 ?3.1w次閱讀
    什么是<b class='flag-5'>PID</b><b class='flag-5'>控制</b>?

    PID控制參數(shù)有什么作用

    PID控制器除了上述Ke、Ti、Td三個(gè)參數(shù)外,還有采樣周期Ts,其作用如下:
    發(fā)表于 07-21 10:15 ?1.5w次閱讀
    <b class='flag-5'>PID</b><b class='flag-5'>控制</b>器<b class='flag-5'>參數(shù)</b>有什么<b class='flag-5'>作用</b>

    PID控制中P、I、D參數(shù)作用

    PID控制中有P、I、D三個(gè)參數(shù),只有明白這三個(gè)參數(shù)的含義和
    的頭像 發(fā)表于 08-31 09:34 ?4977次閱讀
    <b class='flag-5'>PID</b><b class='flag-5'>控制</b>中P、I、D<b class='flag-5'>參數(shù)</b>的<b class='flag-5'>作用</b>

    PID控制中P、I、D參數(shù)分別有什么作用

    ? PID控制中有P、I、D三個(gè)參數(shù),只有明白這三個(gè)參數(shù)的含義和
    的頭像 發(fā)表于 12-25 17:24 ?1.6w次閱讀

    要讓PID控制到達(dá)最佳效果,要先明白P、I、D這三個(gè)參數(shù)的含義和作用資料下載

    電子發(fā)燒友網(wǎng)為你提供要讓PID控制到達(dá)最佳效果,要先明白P、I、D這三個(gè)參數(shù)的含義和作用資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼
    發(fā)表于 04-21 08:40 ?7次下載
    要讓<b class='flag-5'>PID</b><b class='flag-5'>控制</b>到達(dá)最佳效果,要先明白P、I、D這<b class='flag-5'>三個(gè)</b><b class='flag-5'>參數(shù)</b>的含義和<b class='flag-5'>作用</b>資料下載

    PID控制中P、I、D參數(shù)作用是什么

    PID控制中有P、I、D三個(gè)參數(shù),只有明白這三個(gè)參數(shù)的含義和
    發(fā)表于 05-27 15:38 ?95次下載

    PID控制中如何整定PID參數(shù)

    可以得到各種輸出響應(yīng)特性,也就是說(shuō),通過(guò)適當(dāng)給定PID參數(shù),大多數(shù)的控制任務(wù)都可以由PID完成。本文根據(jù)經(jīng)典PID
    發(fā)表于 06-01 10:28 ?63次下載

    pid控制三個(gè)參數(shù)怎么調(diào)整

    pid控制三個(gè)參數(shù)怎么調(diào)整?
    發(fā)表于 09-19 09:08 ?4.9w次閱讀

    PID控制中P、I、D參數(shù)作用

    PID控制中有P、I、D三個(gè)參數(shù),只有明白這三個(gè)參數(shù)的含義和
    的頭像 發(fā)表于 09-27 15:27 ?4923次閱讀

    pid調(diào)節(jié)器的三個(gè)重要參數(shù) pid調(diào)節(jié)器工作原理

    PID調(diào)節(jié)器是一種常見(jiàn)的控制系統(tǒng),它可以通過(guò)對(duì)輸入信號(hào)進(jìn)行處理,控制輸出信號(hào)來(lái)維持目標(biāo)參數(shù)的穩(wěn)定性。PID調(diào)節(jié)器的
    發(fā)表于 03-25 11:37 ?2.2w次閱讀

    pid三個(gè)參數(shù)分別起到什么作用

    在計(jì)算機(jī)科學(xué)中,PID(進(jìn)程標(biāo)識(shí)符)是一個(gè)用于唯一標(biāo)識(shí)運(yùn)行中的進(jìn)程的整數(shù)值。PID主要具有以下三個(gè)參數(shù)
    的頭像 發(fā)表于 01-16 14:56 ?1.1w次閱讀

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

    參數(shù)對(duì)系統(tǒng)的影響。 一、PID控制原理 PID控制的基本原理是根據(jù)反饋信號(hào)來(lái)調(diào)整輸出控制量,使得
    的頭像 發(fā)表于 01-22 15:35 ?4425次閱讀