發表于:2004/3/22 14:02:00
#0樓
計算機時代的自控調節路條條,何必“穿PC新鞋,走PID老路”
——一種“傻瓜溫控”程序的實現帶來的思考
打開溫度控制儀表產品目錄,控制效果好一點的表,都標明用“PID調節”,至少要設置“控制周期”“比例系數”“積分時間”“微分時間”等參數,非控制專業的操作者很難理解這些參數的意義,即便是控制專業的操作者,知到其意義,但對新設備,這些參數應設成多少,也不得而知,只好試驗得出。更好一點的表,可以“自整定”,自動測出這些參數。溫度控制儀表按這些參數去控制設備的溫度。
最近,用全新的思路,研究出一種精簡的溫控程序(只有近2K字節的單片機程序),由于不需輸入意義不太準確的參數,也不需“自整定”操作,就能控制不同設備的溫度,我把它叫做“傻瓜溫控”,幾乎做到“即插即用”。
"傻瓜溫控"與普通的PID調節比:
1、不需自整定,調節參數只有一個,是設備說明書上就有的——被控設備的使用溫度上限
2、調節過程中,超調小,波動次數少
3、改變設定值,跟蹤設定值快
4、可用于相互干擾的多點溫控,如橡膠硫化壓力機的上下模板溫控。(此情況下PID調節無法自整定)
5、有自我完善能力,但不強。
6、本身是自適應的,自然不怕設備的參數變化
程序空間大時,還可做的精致些。
這是我第二個不用“PID調節”模式的控制程序。
開始編程時,翻看有關自控調節理論書籍。幾乎所有書籍都是講“PID調節”,只有這一種思路。
從中看到:傳統自控理論對各種被控對象特點作了充分的研究,并建立了數學模型,但模型幾乎都歸結為RLC網絡(電阻、電感、電容組成的電路)。于是在研究如何控制時,也集中于對RLC網絡(電阻、電感、電容組成的電路)的研究,抽象出“比例系數”“積分時間”“微分時間”等調節參數,由于完全數學化,其計算公式復雜深奧,很難與被控物理對象進行感性聯想。
本來,熱力學有自己的參數:溫度、熱能、比熱、熱導、散熱等;動力學也有自己的參數:力、質量、力矩、速度、加速度、動能、位能等。根據這些參數及其自身變化規律(計算公式),就不能實施好控制?為甚麼一定要轉換為電路模型,用那一套轉遞函數?
從一些書中找到答案:計算機時代前,不管您是熱力學,還是動力學的控制系統,只要用電控制,控制回路只能由RLC網絡加運算放大器組成。控制輸出的改變,不能想大就大、想小就小,反饋信號(偏差)通過RLC網絡,轉換為控制輸出,要受RLC網絡的“比例系數”“積分時間”“微分時間”等約束,于是只好研究出各種RLC網絡,以對應不同被控對象,當時,這是唯一可行的方法,自然PID獨占鰲頭。
現在已到計算機時代,控制回路中幾乎沒有RLC網絡,它被D/A、A/D轉換加控制程序所代替。為了使傳統自控理論適應此情況,自控調節理論就把RLC網絡的一套公式數字化(離散化處理),讓控制程序代替RLC網絡!
改進是有的,先是“自整定”;后有“專家系統”和“神經網絡” 等技術,或分段采用不同的PID參數,或不斷修正PID參數等,改進后的程序(公式)更復雜深奧。但從本質說,還是離不開PID模式,這就形成“穿計算機新鞋,走PID老路”,計算機并沒有給自控理論帶來“革命”性變化,或者說沒有充分發揮計算機技術的智能。
計算機時代的控制,可以根據偏差情況做到,控制輸出想大就大、想小就小;可以左顧右盼從多角度分析,與時俱進不斷改變策略;應該可以脫離RLC網絡規律,直接用本學科規律去控制,或用別的規律——天高任鳥飛。
“傻瓜溫控”從設備的熱力學過程來找控制方法,過程分兩個不同階段,加溫時,加熱能量分兩部分,一部分變為設備的儲存的熱能,使溫度升高,另一部分為散熱,消耗了。升溫到設定溫度下某一點,停加熱一段時間,通過兩種情況下,溫度變化的差異,估算出加熱能量中兩部分的比率,估算出加熱到設定溫度還需輸入的能量,按此加熱,就能防大的過沖。到設定溫度后,加熱能量全部供散熱,在溫度圍繞設定溫度的波動中,較精確算出散熱功率,也就是加熱功率,用以穩定溫度。
“傻瓜溫控”的實現,不完全取決于上述思路,還借助于計算機技術的另一用途——“仿真”,就是用程序做成被控的“模擬溫度設備”,它的溫度被“控溫程序”控制,“控溫程序”令它加熱或停加熱,“模擬溫度設備”加熱或停加熱時的溫度變化應和真設備近似。可以說,沒有“模擬溫度設備”,“傻瓜溫控”搞不成,道理很明顯:
1、“控溫程序”編好后要進行試驗,其一、真實的設備要花錢、占場地;其二、真實的設備一次升溫要很長時間;其三、要在升溫中間停下,看程序如何進行,或馬上修改程序是不可能的,停下,設備的溫度狀態就變了。用“模擬溫度設備”,這些問題都不存在,能精雕細鑿地完善控溫程序;升溫過程可快可慢,幾秒鐘就可升到需要的溫度;中間想停就停(控溫程序和模擬溫度設備同時停,設備溫度狀態不變),想改就改,改完繼續進行。
2、“傻瓜溫控”要適用于各種設備,就要對不同設備進行試驗,不可能用那麼多的真實設備來完成這任務。“模擬溫度設備”創造了這個條件,改動“模擬溫度設備”的參數就等于換了設備。編好相應測試程序,一覺醒來,計算機已將對一系列設備控制效果的檢驗報告打印出來。當然“模擬溫度設備”要能正確地代替設備。基本要求:已知一真實設備的升、降溫曲線,有方法求出它的“模擬溫度設備”的參數。
概括起來,提醒在計算機時代搞自動控制的同行,教或學都要:
1、不要只盯著PID,路寬著呢。非自動控制專業的人氏不要被PID的公式嚇住,走自己的路,用本科知識加計算機編程能力,就能編出好的控制程序。
2、要學點被控對象學科的知識,溫度控制的學點熱工學、傳動控制的學點理論力學、調速控制的學點電機學等。
3、掌握建立被控對象的“模擬設備”方法和技巧。
4、學點VB語言。“控制程序”可先用它編,“模擬設備”也可在上面編制,同臺調試運行,調試程序時用到的中斷、修改、顯示和保存過程參數值、人機界面等功能,VB語言調試平臺都有,而且都很強,得心應手,可精雕細鑿你的程序。我調試單片機匯編程序就在此進行,可把一個活生生的控制儀表放在屏幕上。VB語言入門容易,搞一般控制,入門知識就可以。
對此感興趣者,可索要進一步說明和“傻瓜溫控”、“模擬溫度設備”、“傻瓜溫控”控件的運行程序。
上海 黃惠生 13916160444
HUHUSH1@163.com
——一種“傻瓜溫控”程序的實現帶來的思考
打開溫度控制儀表產品目錄,控制效果好一點的表,都標明用“PID調節”,至少要設置“控制周期”“比例系數”“積分時間”“微分時間”等參數,非控制專業的操作者很難理解這些參數的意義,即便是控制專業的操作者,知到其意義,但對新設備,這些參數應設成多少,也不得而知,只好試驗得出。更好一點的表,可以“自整定”,自動測出這些參數。溫度控制儀表按這些參數去控制設備的溫度。
最近,用全新的思路,研究出一種精簡的溫控程序(只有近2K字節的單片機程序),由于不需輸入意義不太準確的參數,也不需“自整定”操作,就能控制不同設備的溫度,我把它叫做“傻瓜溫控”,幾乎做到“即插即用”。
"傻瓜溫控"與普通的PID調節比:
1、不需自整定,調節參數只有一個,是設備說明書上就有的——被控設備的使用溫度上限
2、調節過程中,超調小,波動次數少
3、改變設定值,跟蹤設定值快
4、可用于相互干擾的多點溫控,如橡膠硫化壓力機的上下模板溫控。(此情況下PID調節無法自整定)
5、有自我完善能力,但不強。
6、本身是自適應的,自然不怕設備的參數變化
程序空間大時,還可做的精致些。
這是我第二個不用“PID調節”模式的控制程序。
開始編程時,翻看有關自控調節理論書籍。幾乎所有書籍都是講“PID調節”,只有這一種思路。
從中看到:傳統自控理論對各種被控對象特點作了充分的研究,并建立了數學模型,但模型幾乎都歸結為RLC網絡(電阻、電感、電容組成的電路)。于是在研究如何控制時,也集中于對RLC網絡(電阻、電感、電容組成的電路)的研究,抽象出“比例系數”“積分時間”“微分時間”等調節參數,由于完全數學化,其計算公式復雜深奧,很難與被控物理對象進行感性聯想。
本來,熱力學有自己的參數:溫度、熱能、比熱、熱導、散熱等;動力學也有自己的參數:力、質量、力矩、速度、加速度、動能、位能等。根據這些參數及其自身變化規律(計算公式),就不能實施好控制?為甚麼一定要轉換為電路模型,用那一套轉遞函數?
從一些書中找到答案:計算機時代前,不管您是熱力學,還是動力學的控制系統,只要用電控制,控制回路只能由RLC網絡加運算放大器組成。控制輸出的改變,不能想大就大、想小就小,反饋信號(偏差)通過RLC網絡,轉換為控制輸出,要受RLC網絡的“比例系數”“積分時間”“微分時間”等約束,于是只好研究出各種RLC網絡,以對應不同被控對象,當時,這是唯一可行的方法,自然PID獨占鰲頭。
現在已到計算機時代,控制回路中幾乎沒有RLC網絡,它被D/A、A/D轉換加控制程序所代替。為了使傳統自控理論適應此情況,自控調節理論就把RLC網絡的一套公式數字化(離散化處理),讓控制程序代替RLC網絡!
改進是有的,先是“自整定”;后有“專家系統”和“神經網絡” 等技術,或分段采用不同的PID參數,或不斷修正PID參數等,改進后的程序(公式)更復雜深奧。但從本質說,還是離不開PID模式,這就形成“穿計算機新鞋,走PID老路”,計算機并沒有給自控理論帶來“革命”性變化,或者說沒有充分發揮計算機技術的智能。
計算機時代的控制,可以根據偏差情況做到,控制輸出想大就大、想小就小;可以左顧右盼從多角度分析,與時俱進不斷改變策略;應該可以脫離RLC網絡規律,直接用本學科規律去控制,或用別的規律——天高任鳥飛。
“傻瓜溫控”從設備的熱力學過程來找控制方法,過程分兩個不同階段,加溫時,加熱能量分兩部分,一部分變為設備的儲存的熱能,使溫度升高,另一部分為散熱,消耗了。升溫到設定溫度下某一點,停加熱一段時間,通過兩種情況下,溫度變化的差異,估算出加熱能量中兩部分的比率,估算出加熱到設定溫度還需輸入的能量,按此加熱,就能防大的過沖。到設定溫度后,加熱能量全部供散熱,在溫度圍繞設定溫度的波動中,較精確算出散熱功率,也就是加熱功率,用以穩定溫度。
“傻瓜溫控”的實現,不完全取決于上述思路,還借助于計算機技術的另一用途——“仿真”,就是用程序做成被控的“模擬溫度設備”,它的溫度被“控溫程序”控制,“控溫程序”令它加熱或停加熱,“模擬溫度設備”加熱或停加熱時的溫度變化應和真設備近似。可以說,沒有“模擬溫度設備”,“傻瓜溫控”搞不成,道理很明顯:
1、“控溫程序”編好后要進行試驗,其一、真實的設備要花錢、占場地;其二、真實的設備一次升溫要很長時間;其三、要在升溫中間停下,看程序如何進行,或馬上修改程序是不可能的,停下,設備的溫度狀態就變了。用“模擬溫度設備”,這些問題都不存在,能精雕細鑿地完善控溫程序;升溫過程可快可慢,幾秒鐘就可升到需要的溫度;中間想停就停(控溫程序和模擬溫度設備同時停,設備溫度狀態不變),想改就改,改完繼續進行。
2、“傻瓜溫控”要適用于各種設備,就要對不同設備進行試驗,不可能用那麼多的真實設備來完成這任務。“模擬溫度設備”創造了這個條件,改動“模擬溫度設備”的參數就等于換了設備。編好相應測試程序,一覺醒來,計算機已將對一系列設備控制效果的檢驗報告打印出來。當然“模擬溫度設備”要能正確地代替設備。基本要求:已知一真實設備的升、降溫曲線,有方法求出它的“模擬溫度設備”的參數。
概括起來,提醒在計算機時代搞自動控制的同行,教或學都要:
1、不要只盯著PID,路寬著呢。非自動控制專業的人氏不要被PID的公式嚇住,走自己的路,用本科知識加計算機編程能力,就能編出好的控制程序。
2、要學點被控對象學科的知識,溫度控制的學點熱工學、傳動控制的學點理論力學、調速控制的學點電機學等。
3、掌握建立被控對象的“模擬設備”方法和技巧。
4、學點VB語言。“控制程序”可先用它編,“模擬設備”也可在上面編制,同臺調試運行,調試程序時用到的中斷、修改、顯示和保存過程參數值、人機界面等功能,VB語言調試平臺都有,而且都很強,得心應手,可精雕細鑿你的程序。我調試單片機匯編程序就在此進行,可把一個活生生的控制儀表放在屏幕上。VB語言入門容易,搞一般控制,入門知識就可以。
對此感興趣者,可索要進一步說明和“傻瓜溫控”、“模擬溫度設備”、“傻瓜溫控”控件的運行程序。
上海 黃惠生 13916160444
HUHUSH1@163.com
HHS