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

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

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

3天內不再提示

自動控制系統PID控制器的基本實現

454398 ? 來源:博客園 ? 作者:木南創智 ? 2020-11-04 14:16 ? 次閱讀

在自動控制中,PID及其衍生出來的算法是應用最廣的算法之一。各個做自動控制的廠家基本都有會實現這一經典算法。我們在做項目的過程中,也時常會遇到類似的需求,所以就想實現這一算法以適用于更多的應用場景。

1、PID算法基本原理

PID算法是控制行業最經典、最簡單、而又最能體現反饋控制思想的算法。對于一般的研發人員來說,設計和實現PID算法是完成自動控制系統的基本要求。這一算法雖然簡單,但真正要實現好,卻也需要下一定功夫。首先我們從PID算法最基本的原理開始分析和設計這一經典命題。

PID算法的執行流程是非常簡單的,即利用反饋來檢測偏差信號,并通過偏差信號來控制被控量。而控制器本身就是比例、積分、微分三個環節的加和。其功能框圖如下:

根據上圖我們考慮在某個特定的時刻t,此時輸入量為rin(t),輸出量為rout(t),于是偏差就可計算為err(t)=rin(t)-rout(t)。于是PID的基本控制規律就可以表示為如下公式:

其中Kp為比例帶,TI為積分時間,TD為微分時間。PID控制的基本原理就是如此。

2PID算法的離散化

上一節簡單介紹了PID算法的基本原理,但要在計算機上實現就必須將其離散化,接下來我們就說一說PID算法的離散化問題。在實現離散化之前,我們需要對比例、積分、微分的特性做一個簡單的說明。

比例就是用來對系統的偏差進行反應,所以只要存在偏差,比例就會起作用。積分主要是用來消除靜差,所謂靜差就是指系統穩定后輸入輸出之間依然存在的差值,而積分就是通過偏差的累計來抵消系統的靜差。而微分則是對偏差的變化趨勢做出反應,根據偏差的變化趨勢實現超前調節,提高反應速度。

在實現離散前,我們假設系統采樣周期為T。假設我們檢查第K個采樣周期,很顯然系統進行第K次采樣。此時的偏差可以表示為err(K)=rin(K)-rout(K),那么積分就可以表示為:err(K)+ err(K+1)+┈┈,而微分就可以表示為:(err(K)- err(K-1))/T。于是我們可以將第K次采樣時,PID算法的離線形式表示為:

也可以記為:

這就是所謂的位置型PID算法的離散描述公式。我們知道還有一個增量型PID算法,那么接下來我們推到一下增量型PID算法的公式。上面的公式描述了第k個采樣周期的結果,那么前一時刻也就是k-1個采樣周期就不難表示為:

那么我們再來說第K個采樣周期的增量,很顯然就是U(k)-U(k-1)。于是我們用第k個采樣周期公式減去第k-1個采樣周期的公式,就得到了增量型PID算法的表示公式:

當然,增量型PID必須記得一點,就是在記住U(k)=U(k-1)+?U(k)。

3、PID控制器的基本實現

完成了離散化后,我們就可以來實現它了。已經用離散化的數據公式表示出來后,再進型計算機編程已經不是問題了。接下來我們就使用C語言分別針對位置型公式和增量型公式來具體實現。

1)位置型PID的簡單實現

位置型PID的實現就是以前面的位置型公式為基礎。這一節我們只是完成最簡單的實現,也就是將前面的離散位置型PID公式的計算機語言化。

首先定義PID對象的結構體:

 1 /*定義結構體和公用體*/
 2 
 3 typedef struct
 4 
 5 {
 6 
 7   float setpoint;       //設定值
 8 
 9   float proportiongain;     //比例系數
10 
11   float integralgain;      //積分系數
12 
13   float derivativegain;    //微分系數
14 
15   float lasterror;     //前一拍偏差
16 
17   float result; //輸出值
18 
19   float integral;//積分值
20 
21 }PID;

接下來實現PID控制器:

 1 void PIDRegulation(PID *vPID, float processValue)
 2 
 3 {
 4 
 5   float thisError;
 6 
 7   thisError=vPID->setpoint-processValue;
 8 
 9   vPID->integral+=thisError;
10 
11   vPID->result=vPID->proportiongain*thisError+vPID->integralgain*vPID->integral+vPID->derivativegain*(thisError-vPID->lasterror);
12 
13   vPID->lasterror=thisError;
14 
15 }

這就實現了一個最簡單的位置型PID控制器,當然沒有考慮任何干擾條件,僅僅只是對數學公式的計算機語言化。

2)增量型PID的簡單實現

增量型PID的實現就是以前面的增量型公式為基礎。這一節我們只是完成最簡單的實現,也就是將前面的離散增量型PID公式的計算機語言化。

首先定義PID對象的結構體:

 1 /*定義結構體和公用體*/
 2 
 3 typedef struct
 4 
 5 {
 6 
 7   float setpoint;       //設定值
 8 
 9   float proportiongain;     //比例系數
10 
11   float integralgain;      //積分系數
12 
13   float derivativegain;    //微分系數
14 
15   float lasterror;     //前一拍偏差
16 
17   float preerror;     //前兩拍偏差
18 
19   float deadband;     //死區
20 
21   float result; //輸出值
22 
23 }PID;

接下來實現PID控制器:

void PIDRegulation(PID *vPID, float processValue)

{

  float thisError;

  float increment;

  float pError,dError,iError;

 

  thisError=vPID->setpoint-processValue; //得到偏差值

  pError=thisError-vPID->lasterror;

  iError=thisError;

  dError=thisError-2*(vPID->lasterror)+vPID->preerror;

  increment=vPID->proportiongain*pError+vPID->integralgain*iError+vPID->derivativegain*dError;   //增量計算

 

  vPID->preerror=vPID->lasterror;  //存放偏差用于下次運算

  vPID->lasterror=thisError;

  vPID->result+=increment;

}

這就實現了一個最簡單的增量型PID控制器,也沒有考慮任何的干擾條件,僅僅只是對數學公式的計算機語言化。

4、基本特點

前面講述并且實現了PID控制器,包括位置型PID控制器和增量型PID控制器。界限來我們對這兩種類型的控制器的特點作一個簡單的描述。

位置型PID控制器的基本特點:

位置型PID控制的輸出與整個過去的狀態有關,用到了偏差的累加值,容易產生累積偏差。

位置型PID適用于執行機構不帶積分部件的對象。

位置型的輸出直接對應對象的輸出,對系統的影響比較大。

增量型PID控制器的基本特點:

增量型PID算法不需要做累加,控制量增量的確定僅與最近幾次偏差值有關,計算偏差的影響較小。

增量型PID算法得出的是控制量的增量,對系統的影響相對較小。

采用增量型PID算法易于實現手動到自動的無擾動切換。
編輯:hfy

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

    關注

    10

    文章

    721

    瀏覽量

    45001
  • PID控制器
    +關注

    關注

    2

    文章

    173

    瀏覽量

    19115
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    PID控制經典培訓教程

    目前工業自動化水平已成為衡量各行各業現代化水平的一個重要標志。同時,控制理論的發展也經歷了古典控制理論、現代控制理論和智能控制理論三個階段。
    發表于 02-26 15:22

    智能溫室大棚自動控制系統

    智能溫室大棚自動控制系統作為現代農業發展的重要組成部分,正逐漸改變著傳統農業的生產模式。該系統集成傳感、物聯網、自動控制、邊緣計算等技術
    的頭像 發表于 01-03 16:17 ?708次閱讀

    自動控制系統與物聯網的結合 自動控制系統的實時監測技術

    自動控制系統提供了更豐富的數據支持,而自動控制系統則利用這些數據實現了更精確、更智能的控制。 物聯網的數據支持 : 物聯網通過連接各種設備和傳感
    的頭像 發表于 12-18 10:00 ?781次閱讀

    自動控制系統在智能制造中的應用

    1. 自動控制系統的定義 自動控制系統是指通過傳感檢測系統狀態,利用控制器系統進行調節,以
    的頭像 發表于 12-18 09:57 ?816次閱讀

    自動控制系統的常見故障分析

    自動控制系統通過反饋機制來調節和控制過程變量,以實現預定的性能標準。這些系統可能包括傳感、控制器
    的頭像 發表于 12-18 09:52 ?1979次閱讀

    自動控制系統的調試方法 自動控制系統與傳統控制系統的比較

    自動控制系統的調試方法 自動控制系統的調試是一個復雜的過程,涉及到對系統性能的測試和優化。以下是一些基本的調試方法: 理論分析與仿真 : 在實際調試之前,通過理論分析和計算機仿真來預測系統
    的頭像 發表于 12-18 09:50 ?932次閱讀

    自動控制系統的基本原理 自動控制系統在工業中的應用

    在現代工業生產中,自動控制系統扮演著至關重要的角色。它們不僅提高了生產效率,還確保了產品質量和安全性。 自動控制系統的基本原理 1. 開環控制與閉環控制
    的頭像 發表于 12-18 09:48 ?1471次閱讀

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

    在現代工業自動控制系統中,PID控制器因其簡單、高效而被廣泛使用。PID控制器的三個參數——比
    的頭像 發表于 11-13 14:31 ?8757次閱讀

    如何選擇適合工業自動控制系統的傳感?

    選擇適合工業自動控制系統的傳感需要考慮多個方面,以下是一些關鍵因素: **一、測量需求** 1. 確定測量參數:首先要明確需要測量的物理量,如溫度、壓力、位移、流量等。不同的測量參數需要不同類
    的頭像 發表于 11-11 14:55 ?619次閱讀

    PID控制器的類型和選擇指南

    PID控制器是一種廣泛應用于工業控制系統中的控制器,它根據系統的偏差來計算控制量,以
    的頭像 發表于 11-06 10:37 ?1718次閱讀

    智慧未來,建筑自動控制系統助力

    隨著科學技術的不斷發展,建筑自動控制系統已成為現代建筑不可或缺的一部分。該系統通過監控電氣設備、空調設備、衛生設施,以及電梯、門禁和停車場的管理,完成了建筑物的信息管理和運行。控制系統和通信技術
    的頭像 發表于 08-28 15:33 ?430次閱讀

    旋轉變壓自動控制系統中的應用

    旋轉變壓自動控制系統中的應用是一個廣泛而深入的話題,其作為一種特殊的變壓,能夠完成電量的變壓、相位旋轉等多種功能,在提升系統穩定性、減小誤差、擴大變壓比等方面發揮著重要作用。以下
    的頭像 發表于 08-19 17:54 ?1057次閱讀

    空調自動控制系統

    在炎炎夏日或凜冽寒冬,空調已成為現代家庭與辦公環境中不可或缺的一部分。然而,傳統空調往往需要人工手動調節溫度、風速等參數,不僅煩瑣,且難以精確控制室內環境達到適宜舒適度。 基本原理 空調自動控制系統
    的頭像 發表于 08-12 16:07 ?1183次閱讀

    負反饋在自動控制系統中的意義

    自動控制系統是現代工業和日常生活中不可或缺的技術之一。它們通過自動調節和控制過程,確保系統能夠穩定地運行,達到預期的性能。在這些系統中,反饋
    的頭像 發表于 07-30 09:58 ?2629次閱讀

    現代控制理論和自動控制原理的區別

    現代控制理論和自動控制原理是控制工程領域的兩個重要概念,它們在很多方面有相似之處,但也存在一些關鍵的區別。 一、定義 自動控制原理 自動控制
    的頭像 發表于 07-29 10:33 ?4798次閱讀
    主站蜘蛛池模板: 2019天天射干 | 中文字幕一区二区三区乱码aⅴ | 乱说欲小说又粗又长 | 午夜视频在线播放 | 亚洲国产精品第一区二区 | 日韩毛片大全免费高清 | 美女无遮挡拍拍拍免费视频 | 午夜毛片免费看 | 最近高清在线国语 | 天堂日本| 7777sq国产精品| 亚洲系列中文字幕一区二区 | 亚洲一区二区影视 | 性生生活三级视频在线观看 | 五月天激情开心网 | 亚洲亚洲人成网站在线观看 | 日本大片免费观看视频 | 亚洲国产福利 | 正在播放国产乱子伦视频 | 麻生希痴汉电车avop130 | 日本又粗又长一进一出抽搐 | 五月婷婷精品 | 成人a毛片视频免费看 | 国产日本特黄特色大片免费视频 | 潘金莲国产三级视频在线 | 狂野欧美性色xo影院 | 欧美日韩性大片 | 色综合久久网女同蕾丝边 | 婷婷深爱 | 国产无圣光高清一区二区 | 免费欧洲美女与动zooz | 手机在线观看免费视频 | 四虎影视在线影院4hu | 国产欧美在线一区二区三区 | 一区二区三区视频免费观看 | 香港三澳门三日本三级 | 国产在线观看午夜不卡 | 美女被免费网站91色 | 久久久精品久久久久久久久久久 | 成年人午夜影院 | 182tv免费视视频线路一二三 |