shi7025159
級(jí)別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 37 個(gè)
工控威望: 201 點(diǎn)
下載積分: 478 分
在線時(shí)間: 16(小時(shí))
注冊(cè)時(shí)間: 2022-10-19
最后登錄: 2024-12-20
查看shi7025159的 主題 / 回貼
樓主  發(fā)表于: 53天前
管路A和管路B要同時(shí)從0升壓到10Bar,并且在升壓過(guò)程中管路A和管路B的壓差不能超過(guò)0.1Bar。升壓過(guò)程是階梯式升壓,每隔10秒左右上升一個(gè)階梯0.2Bar,在升壓過(guò)程比如發(fā)現(xiàn)A管道壓力比B管道的壓差超過(guò)0.1Bar了就要暫停A管道升壓,把B管道壓力先拉上來(lái)。實(shí)現(xiàn)這個(gè)過(guò)程有沒(méi)有好的算法思路嗎?
gxtmdb82164
級(jí)別: 論壇先鋒
精華主題: 0
發(fā)帖數(shù)量: 770 個(gè)
工控威望: 1148 點(diǎn)
下載積分: 399 分
在線時(shí)間: 604(小時(shí))
注冊(cè)時(shí)間: 2019-09-22
最后登錄: 2024-12-20
查看gxtmdb82164的 主題 / 回貼
1樓  發(fā)表于: 53天前
用增量式PID,即只控制輸出的變化量,當(dāng)達(dá)到條件或者不滿足啟動(dòng)條件的時(shí)候輸出增量為0,增量命令同時(shí)給到A和B,不用管A和B當(dāng)前的狀態(tài),往目標(biāo)值奔就行了

然后兩個(gè)管道的壓力取最接近目標(biāo)值的壓力作為主命令變量(ABS(誤差)),另外一個(gè)跟隨,當(dāng)跟隨誤差過(guò)大時(shí)直接切掉上面PID的輸出,即用兩管的壓力差作為PID運(yùn)行的條件,當(dāng)切掉輸出后,因?yàn)槭窃隽渴降,增量命令?但是目標(biāo)值還在,會(huì)等到A和B都跟上來(lái)了,且滿足條件的情況下,繼續(xù)運(yùn)行。

如果是氣體的壓力控制,上面這種做法有個(gè)好處就是可以忍受超調(diào),因?yàn)榇蟾怕试诮咏繕?biāo)值附近的時(shí)候A和B會(huì)來(lái)回震蕩,而且這個(gè)過(guò)程是非線性的,不容易找到規(guī)律,但是因?yàn)椴魂P(guān)注具體哪個(gè)超調(diào)了,只有一套規(guī)則,會(huì)更容易調(diào)試到穩(wěn)定的狀態(tài)。