導航:首頁 > 源碼編譯 > 專家pid自整定演算法

專家pid自整定演算法

發布時間:2022-06-29 04:09:42

⑴ 溫度控制 pid參數自整定怎麼進行

參數整定

PID控制器的參數整定是控制系統設計的核心內容。它是根據被控過程的特性確定PID控制器的比例系數、積分時間和微分時間的大小。

PID控制器參數整定的方法很多,概括起來有兩大類:

1、理論計算整定法。它主要是依據系統的數學模型,經過理論計算確定控制器參數。這種方法所得到的計算數據未必可以直接用,還必須通過工程實際進行調整和修改。

2、工程整定方法,它主要依賴工程經驗,直接在控制系統的試驗中進行,且方法簡單、易於掌握,在工程實際中被廣泛採用。

PID控制器參數的工程整定方法,主要有臨界比例法、反應曲線法和衰減法。三種方法各有其特點,其共同點都是通過試驗,然後按照工程經驗公式對控制器參數進行整定。但無論採用哪一種方法所得到的控制器參數,都需要在實際運行中進行最後調整與完善。一般採用的是臨界比例法。

利用該方法進行PID控制器參數的整定步驟如下:

1、首先預選擇一個足夠短的采樣周期讓系統工作;

2、僅加入比例控制環節,直到系統對輸入的階躍響應出現臨界振盪,記下這時的比例放大系數和臨界振盪周期;

3、在一定的控制度下通過公式計算得到PID控制器的參數。

(1)專家pid自整定演算法擴展閱讀

調節方法

1、PID是工業生產中最常用的一種控制方式,PID調節儀表也是工業控制中最常用的儀表之一,PID適用於需要進行高精度測量控制的系統,可根據被控對象自動演算出最佳PID控制參數。

2、PID參數自整定控制儀可選擇外給定(或閥位)控制功能。可取代伺服放大器直接驅動執行機構(如閥門等)。PID外給定(或閥位)控制儀可自動跟隨外部給定值(或閥位反饋值)進行控制輸出(模擬量控制輸出或繼電器正轉、反轉控制輸出)。

可實現自動/手動無擾動切換。手動切換至自動時,採用逼近法計算,以實現手動/自動的平穩切換。PID外給定(或閥位)控制儀可同時顯示測量信號及閥位反饋信號。

3、PID光柱顯示控制儀集數字儀表與模擬儀表於一體,可對測量值及控制目標值進行數字量顯示(雙LED數碼顯示),並同時對測量值及控制目標值進行相對模擬量顯示(雙光柱顯示),顯示方式為雙LED數碼顯示+雙光柱模擬量顯示,使測量值的顯示更為清晰直觀。

4、PID參數自整定控制儀可隨意改變儀表的輸入信號類型。採用最新無跳線技術,只需設定儀表內部參數,即可將儀表從一種輸入信號改為另一種輸入信號。

5、PID參數自整定控制儀可選擇帶有一路模擬量控制輸出(或開關量控制輸出、繼電器和可控硅正轉、反轉控制)及一路模擬量變送輸出,可適用於各種測量控制場合。

6、PID參數自整定控制儀支持多機通訊,具有多種標准串列雙向通訊功能,可選擇多種通訊方式,如RS-232、RS-485、RS-422等,通訊波特率300~9600bps儀表內部參數自由設定。可與各種帶串列輸入輸出的設備(如電腦、可編程控制器、PLC等)進行通訊,構成管理系統。

⑵ pid有幾種整定方法,及其整定過程

除了經典方法,還有智能整定方法,神經網路整定、遺傳演算法整定、粒子群演算法整定、模糊整定等。

⑶ pid整定的參數方法

參數整定找最佳,從小到大順序查,先是比例後積分,最後再把微分加,曲線振盪很頻繁,比例度盤要放大,曲線漂浮繞大灣,比例度盤往小扳,曲線偏離回復慢,積分時間往下降,曲線波動周期長,積分時間再加長,曲線振盪頻率快,先把微分降下來,動差大來波動慢,微分時間應加長,理想曲線兩個波,前高後低4比1.一看二調多分析,調節質量不會低。

⑷ pid參數如何整定

PID參數整定是一個復雜的過程,一般需要根據被對象慢慢進行。

常用的方進有擴充臨界比例度整定法和擴充響應曲線法兩種。適合計算機控制用的簡易方法一簡化擴充臨界比例度整定法,該方法是Roberts P.D 於1974 年提出的。

由於該方法只需整定一一個參數即可,故又稱為歸一參數整定法。


(4)專家pid自整定演算法擴展閱讀

模擬PID 演算法中許多行之數字PID是在模擬PID演算法的基礎上,用差分方程代替連續方程,有效的方法都可以用到數字PID 運算中,如數字PID 的參數整定方法源於模擬PID 演算法,化要有一個前提,即采樣周期足夠小。

在這種情況下,采樣系統的PID就非常接近於連續系統的模擬PID 控制。隨著計算機控制技術的發展,數字PID 控製得到了很大的發展,這些演算法既適用於增量型,也適用於位置型,演算法的選用主要取決於執行機構。在這些改進型演算法中,變速積分是目前最好的數字PID 演算法之一。

因為積分分離演算法的數字PID 積分的取含由個被限值確定,屬於開關控制,而安速積分則是線性控制,因而得到了廣泛的應用。不完全微分演算法顯然比較復雜,但其控制特性良好因此它的應用越來越廣泛。

參考資料

網路--PID參數整定

⑸ PID整定的口訣是什麼

PID參數整定口訣:

參數整定找最佳,從小到大順序查

先是比例後積分,最後再把微分加

曲線振盪很頻繁,比例度盤要放大

曲線漂浮繞大灣,比例度盤往小扳

曲線偏離回復慢,積分時間往下降

曲線波動周期長,積分時間再加長

曲線振盪頻率快,先把微分降下來

動差大來波動慢,微分時間應加長

理想曲線兩個波,前高後低四比一

一看二調多分析,調節質量不會低

(5)專家pid自整定演算法擴展閱讀:

還有另一首簡化版的口訣:

參數整定尋最佳,從大到小順次查。

先是比例後積分,最後再把微分加。

曲線振盪很頻繁,比例度盤要放大。

曲線漂浮繞大彎,比例度盤往小扳。

曲線偏離回復慢,積分時間往下降。

曲線波動周期長,積分時間再加長。

理想曲線兩個波,調節過程高質量。

這是一首用經驗法進行PID參數工程整定的口訣,該口訣流傳至今已有幾十年了!其最早出現在1973年11月出版的《化工自動化》一書中。

上面的口訣大多是以該口訣作為藍本進行了補充和改編而來的。

如:「 曲線振盪頻率快,先把微分降下來,動差大來波動慢。微分時間應加長。」還有的加了:「 理想曲線兩個波,前高後低4比1,一看二調多分析,調節質量不會低。」等等。

⑹ 請教一下關於PID自整定的三個參數的計算方法

給你個Step 7寫的PID控制的FC模塊。帶"_IN"與帶"_OUT"的變數,如果前綴是一樣的,要求連接同一個變數。

FUNCTION FC1 : VOID

VAR_INPUT
Run:BOOL; //True-運行,False-停止
Auto:BOOL; //True-自動,False-手動
ISW:BOOL; //True-積分有效,False-積分無效
DSW:BOOL; //True-微分有效,False-微分無效
SetMV:REAL; //手動時的開度設定值
SVSW:REAL; //當設定值低於SVSW時,開度為零
PV:REAL; //測量值
SV:REAL; //設定值
DeadBand:REAL; //死區大小
PBW:REAL; //比例帶大小
IW:REAL; //積分帶大小
DW:REAL; //微分帶大小
dErr_IN:REAL; //誤差累積
LastPV_IN:REAL; //上一控制周期的測量值
END_VAR

VAR_OUTPUT
MV:REAL; //輸出開度
dErr_OUT:REAL; //誤差累積
LastPV_OUT:REAL;//上一控制周期的測量值
END_VAR

VAR
Err:REAL; //誤差
dErr:REAL; //誤差累積
PBH:REAL; //比例帶上限
PBL:REAL; //比例帶下限
PVC:REAL; //測量值在一個控制周期內的變化率,即測量值變化速率
P:REAL; //比例項
I:REAL; //積分項
D:REAL; //微分項
END_VAR

IF Run=1 THEN
IF Auto=1 THEN
IF SV>=SVSW THEN
Err:=SV-PV;
PBH:=SV+PBW;
PBL:=SV-PBW;
IF PV<PBL THEN
MV:=1;
ELSIF PV>PBH THEN
MV:=0;
ELSE
P:=(PBH-PV)/(PBH-PBL); //計算比例項
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////以下為積分項的計算//////////////////////////////////////////////////////////////
IF ISW=1 THEN
dErr:=dErr_IN;
IF (PV<(SV-DeadBand)) OR (PV>(SV+DeadBand)) THEN
IF (dErr+Err)<(0-IW) THEN
dErr:=0-IW;
ELSIF (dErr+Err)>IW THEN
dErr:=IW;
ELSE
dErr:=dErr+Err;
END_IF;
END_IF;
I:=dErr/IW;
dErr_OUT:=dErr;
ELSE
I:=0;
END_IF;
/////////////////////////////////////////////以上為積分項的計算//////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////以下為微分項的計算//////////////////////////////////////////////////////////////
IF DSW=1 THEN
PVC:=LastPV_IN-PV;
D:=PVC/DW;
LastPV_OUT:=PV;
ELSE
D:=0;
END_IF;
/////////////////////////////////////////////以上為微分項的計算//////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
IF (P+I+D)>1 THEN
MV:=1;
ELSIF (P+I+D)<0 THEN
MV:=0;
ELSE
MV:=P+I+D;
END_IF;
END_IF;
ELSE
MV:=0;
END_IF;
ELSE
MV:=SetMV;
END_IF;
ELSE
MV:=0;
END_IF;

END_FUNCTION

進行整定時先進行P調節,使I和D作用無效,觀察溫度變化曲線,若變化曲線多次出現波形則應該放大比例(P)參數,若變化曲線非常平緩,則應該縮小比例(P)參數。比例(P)參數設定好後,設定積分(I)參數,積分(I)正好與P參數相反,曲線平緩則需要放大積分(I),出現多次波形則需要縮小積分(I)。比例(P)和積分(I)都設定好以後設定微分(D)參數,微分(D)參數與比例(P)參數的設定方法是一樣的。

當初寫這段程序的就是為了使用調功器來控制爐子的溫度的,已經在我單位的調功器上運行成功了,還有就是我單位的調功器沒有使用微分(D),只是用了比例(P)和積分(I)。

⑺ 什麼是專家PID他和傳統的PID有什麼區別

PID是智能控制啊,比如要控制一個水管的水流量,通過流量計,開關閥,讓PID來控制開關閥的開關大小使水流量正確.
專家PID記得是PID的高級設置,某些個場合一般的PID無法使用,出現了了專用的,有特殊功能的.記憶中是這個,時間久了,記性不好.

⑻ PID儀表自整定怎麼操作

儀表的PID實際上就是一個控制系統,其中P表示為比例帶,它對檢測到的變化信號進行放大作用,再經過儀表輸出去控制被測介質的物理量,比如壓力、溫度、流量以及液位等;I表示積分作用,因為比例調節P雖然對被測信號的變化能得出即時的響應,但存在著靜壓現象,提高積分作用可以使變化響應信號能消除靜差;D表示微分作用,對於一些響應變化很遲緩的對象,如溫度,在進行控制時為了加快控制效果,可引入微分調節量,起到超前調節的作用,也就是說是超調。
對於PID參數的整定是一個實驗的過程,因為不同的對象條件有不同的調節規律,在整定時向將I和D關閉,比例帶放在100%,這時比例帶P的放大倍數是1,逐漸減少比例帶,也就增加放大倍數,加入測量的變化信號,檢查輸出和控制對象是否有振盪現象。所謂的振盪現象,舉個例子,對某個壓力的控制,當壓力高時,控制閥門打開一點進行釋放,當壓力低時就關閉閥門。當對這個控制系統進行PID參數調整時,先關閉I和D,設定某個P值後對控制系統加一個壓力升高的變化信號,這時如果P值過小時,即其放大倍數增大,使得其輸出信號過量增大,導致閥門開的過大,造成壓力下降過快,因為檢測到壓力因為過低,使得控制輸出信號朝相反的方向變化,即輸出信號過量減小,使得閥門有被關閉,這時壓力有很快上升,這個現象就是振盪現象。為了避免在調節中出現振盪現象,一般是小范圍的調整比例帶P參數。等調整到壓力增高時,閥門稍微開一點,壓力穩定,壓力降低時,閥門稍微關一點,保持壓力穩定,這就算是可以了。這時再增加一點積分I參數,使得比例調節存在的靜差得到消除。微分D一般是不使用。

單片機C語言PID自整定演算法

就是一般的排序演算法,與查找演算法一樣,這個的都不會嗎floata[3],max=0;for(i=0;i<=2;i++){printf("Pleaseenterthemark:");scanf("%f",&a[i]);if(maxintsort(intnum[5]);voidmain(){intnumm[5],i,a;for(i=0;i<5;i++)scanf("%d",&numm[i]);sort(numm);//調用排序for(i=0;i<5;i++)printf("%d",numm[i]);}intsort(intnum[5]){intm,n,t;for(m=0;m<4;m++)for(n=m+1;n<5;n++)//冒泡排序{if(num[m]

閱讀全文

與專家pid自整定演算法相關的資料

熱點內容
命令行截圖軟體 瀏覽:732
程序員加班多 瀏覽:123
android設置view的背景 瀏覽:684
u盤加密工具哪個好 瀏覽:571
php生成html模板引擎 瀏覽:26
如何設置app封殺 瀏覽:823
手機將照片弄成壓縮包 瀏覽:221
卡聯購卡盟官網源碼 瀏覽:867
網頁弄成pdf 瀏覽:223
dos的刪除命令 瀏覽:309
區塊鏈的加密物聯網傳輸 瀏覽:571
如何卸載桌面布局已定的app 瀏覽:678
vs重置命令 瀏覽:613
如何學會學習python 瀏覽:227
程序員釘釘 瀏覽:758
gcc編譯器生成目標文件 瀏覽:157
怎麼改伺服器ip地址嗎 瀏覽:56
cmd輸入命令斷開連接 瀏覽:911
二線大廠程序員員工年薪 瀏覽:988
程序員能從事導彈行業嗎 瀏覽:938