PLC PID指令的問題,PLC PID指令的問題

2021-08-10 13:08:05 字數 5243 閱讀 3186

1樓:趙文星空絮雨

三菱plc實現pid控制的方法

1)使用pid過程控制模組。這種模組的pid控制程式是plc生產廠家設計的,並存放在模組中,使用者在使用時只需要設定一些引數,使用起來非常方便,一塊模組可以控制幾路甚至幾十路閉環迴路。但是這種模組的**昂貴,一般在大型控制系統中使用。

如三菱的a系列、q系列plc的pid控制模組。

2)使用pid功能指令。現在很多中小型 plc都提供pid控制用的功能指令,如fx2n系列plc的pid指令。它們實際上是用於pid控制的子程式,與a/d、d/a模組一起使用,可以得到類似於使用pid過程控制模組的效果,**卻便宜得多。

3)使用自程式設計序實現pid閉環控制。有的plc沒有有pid過程控制模組和 pid控制指令,有時雖然有pid控制指令,但使用者希望採用變型pid控制演算法。在這些情況下,都需要由使用者自己編制pid控制程式。

3. 三菱fx2n的pid指令

pid指令的編號為fnc88,源運算元[s1]、[s2]、[s3]和目標運算元[d]均為資料暫存器d,16位指令,佔9個程式步。[s1]和[s2]分別用來存放給定值sv和當前測量到的反饋值pv,[s3]~[s3]+6用來存放控制引數的值,運算結果mv存放在[d]中。源運算元[s3]佔用從[s3]開始的25個資料暫存器。

pid指令是用來呼叫pid運算程式,在pid運算開始之前,應使用mov指令將引數設定值預先寫入對應的資料暫存器中。如果使用有斷電保持功能的資料暫存器,不需要重複寫入。如果目標運算元[d]有斷電保持功能,應使用初始化脈衝m8002的常開觸點將其復位。

pid指令可以同時多次使用,但是用於運算的[s3]、[d]的資料暫存器元件號不能重複。

pid指令可以在定時中斷、子程式、步進指令和轉移指令內使用,但是應將[s3]+7清零(採用脈衝執行的mov指令)之後才能使用。

控制引數的設定和 pid運算中的資料出現錯誤時,「運算錯誤」標誌m8067為 on,錯誤**存放在d8067中。

pid指令採用增量式pid演算法,控制演算法中還綜合使用了反饋量一階慣性數字濾波、不完全微分和反饋量微分等措施,使該指令比普通的pid演算法具有更好的控制效果。

pid控制是根據「動作方向」([s3]+1)的設定內容,進行正作用或反作用的pid運算。pid運算公式如下:

以上公式中:△mv是本次和上一次取樣時pid輸出量的差值,mvn是本次的pid輸出量;evn和 evn-1分別是本次和上一次取樣時的誤差,sv為設定值;pvn是本次取樣的反饋值,pvnf、pvnf-1和pvnf-2分別是本次、前一次和前兩次濾波後的反饋值,l是慣性數字濾波的係數;dn和dn-l分別是本次和上一次取樣時的微分部分;k p是比例增益,t s是取樣週期,t i和t d分別是積分時間和微分時間,αd是不完全微分的濾波時間常數與微分時間td的比值。

4.pid引數的整定

pid控制器有4個主要的引數k p、t i、t d和t s需整定,無論哪一個引數選擇得不合適都會影響控制效果。在整定引數時應把握住pid引數與系統動態、靜態效能之間的關係。

在p(比例)、i(積分)、d(微分)這三種控制作用中,比例部分與誤差訊號在時間上是一致的,只要誤差一出現,比例部分就能及時地產生與誤差成正比的調節作用,具有調節及時的特點。比例係數k p越大,比例調節作用越強,系統的穩態精度越高;但是對於大多數系統,k p過大會使系統的輸出量振盪加劇,穩定性降低。

積分作用與當前誤差的大小和誤差的歷史情況都有關係,只要誤差不為零,控制器的輸出就會因積分作用而不斷變化,一直要到誤差消失,系統處於穩定狀態時,積分部分才不再變化。因此,積分部分可以消除穩態誤差,提高控制精度,但是積分作用的動作緩慢,可能給系統的動態穩定性帶來不良影響。積分時間常數t i增大時,積分作用減弱,系統的動態效能(穩定性)可能有所改善,但是消除穩態誤差的速度減慢。

微分部分是根據誤差變化的速度,提前給出較大的調節作用。微分部分反映了系統變化的趨勢,它較比例調節更為及時,所以微分部分具有超前和**的特點。微分時間常數t d增大時,超調量減小,動態效能得到改善,但是抑制高頻干擾的能力下降。

選取取樣週期t s時,應使它遠遠小於系統階躍響應的純滯後時間或上升時間。為使取樣值能及時反映模擬量的變化,t s越小越好。但是t s太小會增加cpu的運算工作量,相鄰兩次取樣的差值幾乎沒有什麼變化,所以也不宜將t s取得過小。

2樓:匿名使用者

首先說明輸出k300是沒有錯的。

pid的輸出是給定值和當前值的差給過pid後的結果。

你需要注意的是你的當前溫度和給定值之間的差距。一般新的pid應用在沒有整定的時候,當前溫度和設定值會存在一定差距,這就需要pid整定,讓當前值保持在設定值附近。

三菱fx系列plc的pid指令問題

3樓:

輸出的是一個0~100%的數值。如果要勇於可控矽的通斷,你需要加上輸出整定程式。

4樓:匿名使用者

控制可控矽通斷的是一個直流電壓訊號,電壓範圍在3~32伏.

西門子plc中什麼叫pid指令啊?

5樓:哆啦a夢是夢想家

pid(比例+積分+微分)演算法控制。

pid迴路指令,對模擬量進行pid控制十分方便。pid指令使用的演算法:( n sp 為第n個取樣時刻的給定值,n為過程變數值,mx 為積分項值)pid 指令根據**(tbl)中的輸入和配置資訊對引用loop執行pid 迴圈計算。

在實際控制過程中,無論是給定量還是過程量都是工程實際值,它們的取值範圍都是不相同的。因此在進行pid運算前,必須將工程實際值標準化。plc 在對模擬量進行pid運算後,對輸出產生的控制作用是在[0.

0,1]範圍的標準值,不能驅動實際的驅動裝置,必須將其轉換成工程實際值。

擴充套件資料

pid的特點

1、pid應用範圍廣

雖然很多工業過程是非線性或時變的,但通過對其簡化可以變成基本線性和動態特性不隨時間變化的系統,這樣pid就可控制了。

2、pid引數較易整定

也就是,pid引數kp,ti和td可以根據過程的動態特性及時整定。如果過程的動態特性變化,例如可能由負載的變化引起系統動態特性變化,pid引數就可以重新整定。

3、pid控制器在實踐中也不斷的得到改進

pid在控制非線性、時變、耦合及引數和結構不確定的複雜過程時,工作得不是太好。最重要的是,如果pid控制器不能控制複雜過程,無論怎麼調引數都沒用。

6樓:匿名使用者

pid指比例積分微分,proportion比例,integration積分,differentiation微分

西門子plc程式設計軟體中有pid嚮導,程式中的pid程式塊可利用s7-micro/win程式中的「工具」→「指令嚮導」生成。根據嚮導的提示可以對死區、報警、手動等功能進行選擇,可以對設定範圍、p、i、d等引數進行設定(完成後還可以利用嚮導進行更改)。根據提示完成設定後會自動生成一個子程式和一箇中斷程式,在主程式或其他程式中呼叫pid子程式就可以實現pid調節功能。

需要更詳細的說明可以直接察看程式設計軟體的幫助文件,那裡說明的還是比較詳細的。

pid控制說明:

在工程實際中,應用最為廣泛的調節器控制規律為比例、積分、微分控制,簡稱pid控制,又稱pid調節。pid控制器問世至今已有近70年曆史,它以其結構簡單、穩定性好、工作可靠、調整方便而成為工業控制的主要技術之一。當被控物件的結構和引數不能完全掌握,或得不到精確的數學模型時,控制理論的其它技術難以採用時,系統控制器的結構和引數必須依靠經驗和現場除錯來確定,這時應用pid控制技術最為方便。

即當我們不完全瞭解一個系統和被控物件,或不能通過有效的測量手段來獲得系統引數時,最適合用pid控制技術。pid控制,實際中也有pi和pd控制。pid控制器就是根據系統的誤差,利用比例、積分、微分計算出控制量進行控制的。

比例(p)控制 :比例控制是一種最簡單的控制方式。其控制器的輸出與輸入誤差訊號成比例關係。當僅有比例控制時系統輸出存在穩態誤差。

積分(i)控制 :在積分控制中,控制器的輸出與輸入誤差訊號的積分成正比關係。對一個自動控制系統,如果在進入穩態後存在穩態誤差,則稱這個控制系統是有穩態誤差的或簡稱有差系統。

為了消除穩態誤差,在控制器中必須引入「積分項」。積分項對誤差取決於時間的積分,隨著時間的增加,積分項會增大。這樣,即便誤差很小,積分項也會隨著時間的增加而加大,它推動控制器的輸出增大使穩態誤差進一步減小,直到等於零。

因此,比例+積分(pi)控制器,可以使系統在進入穩態後無穩態誤差。

微分(d)控制 :在微分控制中,控制器的輸出與輸入誤差訊號的微分(即誤差的變化率)成正比關係。 自動控制系統在克服誤差的調節過程中可能會出現振盪甚至失穩。

其原因是由於存在有較大慣性元件(環節)或有滯後元件,具有抑制誤差的作用,其變化總是落後於誤差的變化。解決的辦法是使抑制誤差的作用的變化「超前」,即在誤差接近零時,抑制誤差的作用就應該是零。這就是說,在控制器中僅引入「比例」項往往是不夠的,比例項的作用僅是放大誤差的幅值,而目前需要增加的是「微分項」,它能**誤差變化的趨勢,這樣,具有比例+微分的控制器,就能夠提前使抑制誤差的控制作用等於零,甚至為負值,從而避免了被控量的嚴重超調。

所以對有較大慣性或滯後的被控物件,比例+微分(pd)控制器能改善系統在調節過程中的動態特性。

西門子pid各引數的解釋

com_rst :=初試化

man_on :=手動

pvper_on:=過程變數外設接通

p_sel :=比例分量接通

i_sel :=積分分量接通

int_hold:=積分分量保持

i_itl_on:=積分分量初始化接通

d_sel :=微分分量接通

cycle :=取樣時間

sp_int :=內部設定值

pv_in :=過程變數輸入

pv_per :=過程變數外設輸入

man :=手動值

gain :=比例增益

ti :=復位時間

td :=微分時間

tm_lag :=微分分量的滯後時間

deadb_w :=死區寬度

lmn_hlm :=被控量上限

lmn_llm :=被控量下限

pv_fac :=過程變數係數

pv_off :=過程變數偏移量

lmn_fac :=被控量係數

lmn_off :=被控量偏移量

i_itlval:=積分分量初始值

disv :=干擾變數

lmn :=被控量

lmn_per :=被控量外設

qlmn_hlm:=被控量上限值到達

qlmn_llm:=被控量下限值到達

lmn_p :=比例分量

lmn_i :=積分分量

lmn_d :=微分分量

pv :=過程變數

er :=誤差訊號

dota imba裡面的模式指令問題

在你是主機 一樓 的情況下,在進入遊戲後半分鐘內輸入就行,各種模式有不同作用,但是都要在開始後半分鐘內輸入完畢 遊戲開始的時候,大概30秒不輸系統就會預設普通模式 遊戲開始時輸入 命令 即可 如果你的版本是在3.76輸入cn就沒用瞭如果裡面有cn去掉就行了 ssakfefnardmneng 你試一試...

幾個彙編的問題 1 8086組合語言指令由幾部分組成 各部分的作用是什麼

1.8086組合語言指令由標號 操作碼 運算元和註釋組成,其中標號和註釋可以省略,操作碼指出指令要過盛的功能,運算元指出完成的物件.2.變數和標號的區別是變數由偽指令定義,標號是指令前面的符號,變數也偽指令定義符之間由空格分隔,標號與指令助詞符之間由冒號分隔。3.開發組合語言源程式的主要步驟有分析問...

DOTA換人指令,給我幾個DOTA裡的指令 隨機英雄 怎麼換人

是的,不管在近衛還是天災。看你在的位置。近衛5個人,假如你在,想換就輸入 swap 1 假如想換就 swap 4 swap後面加個空格再加數字 天災方也是這樣也是1到5的數字。在螢幕右上方有個可以看見比賽狀態的欄目。你點一下,就可以看見隊友是玩家幾包括你自己。注 天災和近衛都是獨立的,排名都是1 5...