? ? ? ? 最近在做一個(gè)有關(guān)大氣VOCs實(shí)時(shí)監(jiān)測的項(xiàng)目校翔,由于該項(xiàng)目要求控溫精度在0.1度之內(nèi)志鹃,所以就研究了一下有關(guān)溫控的算法,我們知道對于一些大慣性的系統(tǒng),比如加熱爐赔嚎、智能小車中都會用到PID(比例、積分和微分)算法撮抓,而PID算法分為二值式棋电、位置式、增量式和分段式椎组,當(dāng)然也有模糊式等∮涂瘢現(xiàn)根據(jù)在實(shí)際項(xiàng)目中的應(yīng)用情況將其總結(jié)如下:
????????(1)二值式
????????二值式溫控算法只存在兩個(gè)狀態(tài),不是開寸癌,就是關(guān)专筷。常用在一些控溫精度不高的場合。
????????(2)位置式
????????位置式PID算法由于計(jì)算量比較大蒸苇,降低了單片機(jī)的運(yùn)行速度磷蛹,需要單片機(jī)比較大的內(nèi)存,所以在實(shí)際應(yīng)用中應(yīng)用的比較少溪烤,除非有特除要求的場合味咳。
????????(3)增量式
????????增量式PID算法相比二值式控溫精度比較高,相比位置式計(jì)算量減少了許多檬嘀,提高了單片機(jī)的運(yùn)行速度槽驶,也增大了單片機(jī)的選擇余地(內(nèi)存要求降低)。為了提高溫控的速度鸳兽,減少溫控所需要的時(shí)間掂铐,所以該增加式PID算法常與BangBang算法、大林算法相結(jié)合使用。BangBang算法和大林算法即是全功率加熱堡纬,比如BangBang-PID算法通過會有一個(gè)閾值聂受,一旦采用BangBang或大林算法升溫到閾值時(shí),就會自動切換到增量式PID算法進(jìn)行控溫烤镐。另外該閾值的選擇是個(gè)難點(diǎn)蛋济,閾值小了,升溫時(shí)間比較長炮叶,閾值大了碗旅,過沖量比較大,所以說該閾值的選擇需要從以下兩個(gè)方面去確定:升溫速率镜悉、距離設(shè)定值的差值大小等方面祟辟。
????????(4)分段式
????????分段式PID算法雖然比模糊PID算法差一些,但是模糊PID控制大多數(shù)還停留在理論階段侣肄,應(yīng)用到實(shí)際系統(tǒng)的還比較少旧困,控制效果如何還不是很確定。分段式PID算法在某些方面與模糊式PID算法有很多相近的地方稼锅,也是對信號進(jìn)行閾值的劃分吼具,然后在不同的閾值階段采用不同的控制參數(shù)。分段PID優(yōu)于模糊PID的地方在于我們現(xiàn)有的工控機(jī)在編輯控制算法時(shí)是數(shù)字式的矩距,模糊PID算法要想實(shí)現(xiàn)其功能除了要進(jìn)行數(shù)據(jù)的離散化外拗盒,其用到的數(shù)據(jù)參數(shù)也比較多導(dǎo)致統(tǒng)計(jì)起來比較麻煩,經(jīng)過以上對比分析锥债,從系統(tǒng)的可實(shí)現(xiàn)性方面考慮陡蝇,還是采用分段式PID算法的比較多些。
????????根據(jù)項(xiàng)目的實(shí)際控制結(jié)果表明單純的采用單一的PID參數(shù)進(jìn)行調(diào)節(jié)要想達(dá)到較為理想的控制效果是不容易的哮肚。所以可以根據(jù)控制對象的實(shí)際情況及偏差的大小登夫,在不同的控制階段給定不同的PID調(diào)節(jié)參數(shù),這樣可以在偏差大的時(shí)候加大比例調(diào)節(jié)允趟,降低積分作用悼嫉,偏差小的時(shí)候減少比例作用,加大積分作用拼窥。這樣既可以增加響應(yīng)速度戏蔑,超調(diào)量也不會太大,這就是分段PID的控制思想鲁纠。 ?下面對普通PID與分段PID在同一控制變量下做出的反應(yīng)做一下對比总棵,他們的輸出曲線如下圖:
????????在上圖輸出曲線中可以看出在目標(biāo)值情況相同的情況下,分段PID的響應(yīng)速度更快改含,達(dá)到目標(biāo)值時(shí)分段PID比普通PID所用的時(shí)間少一半情龄,所用控制系統(tǒng)的快速性被分段PID明顯提高了。采用分段PID即是將一個(gè)控制過程進(jìn)行分段控制,可以避免采用單一PID控制時(shí)對誤差積累較多的缺點(diǎn)(采用單一PID算法時(shí)骤视,剛開始啟動時(shí)目標(biāo)值與實(shí)際值的差值會很大鞍爱,如果有積分變量的話,積分變量大了會導(dǎo)致較大的積累偏差专酗,導(dǎo)致消除困難睹逃,造成系統(tǒng)較大的系統(tǒng)超調(diào);積分變量小了會導(dǎo)致精差消除較慢祷肯。)沉填,這樣在每一階段都對誤差進(jìn)行消除,最后誤差結(jié)果會小很多佑笋。分段PID算法的實(shí)現(xiàn)步驟:這里假定閾值a為偏差的50%翼闹,閾值b為偏差的30%。
????????a蒋纬、根據(jù)工程需要設(shè)置閾值a>b>0;
????????b猎荠、當(dāng)偏差較大,且偏差大于等于a時(shí)蜀备,采用PD控制关摇,可加快系統(tǒng)響應(yīng);
????????c琼掠、當(dāng)偏差較小,且大于b停撞,小于a時(shí)采用PI控制瓷蛙;
????????d、當(dāng)偏差小于b時(shí)戈毒,采用PID控制(P設(shè)的小些艰猬,I設(shè)的大些),可減少系統(tǒng)精差埋市。
????????以上是對幾種常用PID算法的比較和總結(jié)冠桃,在實(shí)際的項(xiàng)目中用的比較多的是增量式PID算法和分段式PID算法,分段式PID算比單一的增量式PID算法控溫速度快道宅,精度更高食听,雖然分段PID算法參數(shù)整定比較繁瑣些,但鑒于它的控制速度快污茵、精度高樱报,還是推薦使用分段PID算法應(yīng)用于溫度控制、電機(jī)控制等領(lǐng)域或項(xiàng)目中泞当。