朱家驥,李愛琴,段小匯
(鹽城工學(xué)院電氣工程學(xué)院,江蘇 鹽城 224051)
“計(jì)算機(jī)控制技術(shù)”是自動(dòng)化類專業(yè)的核心課程之一,涉及的知識(shí)面廣,知識(shí)集成度高,在專業(yè)課程體系中占舉足輕重的地位。近年來,隨著計(jì)算機(jī)技術(shù)、控制技術(shù)、信息技術(shù)、通信技術(shù)的不斷發(fā)展及其相互之間的滲透和影響,極大地推動(dòng)了計(jì)算機(jī)控制技術(shù)的迅猛發(fā)展。同時(shí),以計(jì)算機(jī)控制技術(shù)為基礎(chǔ)的計(jì)算機(jī)控制系統(tǒng)在軍事、工業(yè)、農(nóng)業(yè)、交通運(yùn)輸?shù)雀鱾€(gè)領(lǐng)域獲得了廣泛的應(yīng)用[1]?;谶@樣的應(yīng)用需求,社會(huì)對(duì)掌握計(jì)算機(jī)控制技術(shù)的高素質(zhì)人才的需求不斷擴(kuò)大。由此可見,“計(jì)算機(jī)控制技術(shù)”課程教學(xué)效果的優(yōu)劣對(duì)自動(dòng)化類專業(yè)學(xué)生綜合應(yīng)用能力的培養(yǎng)會(huì)產(chǎn)生直接影響。
“計(jì)算機(jī)控制技術(shù)”是一門理論性和實(shí)踐性都很強(qiáng)的綜合性課程,與“模擬電路”“數(shù)字電路”“單片機(jī)原理與技術(shù)”“微機(jī)原理與接口技術(shù)”及“自動(dòng)控制原理”等諸多專業(yè)課程都有關(guān)聯(lián)[2]。它主要包含2部分內(nèi)容:①計(jì)算機(jī)控制理論基礎(chǔ)。該部分內(nèi)容包括采樣定理、Z變換、脈沖傳遞函數(shù)、離散系統(tǒng)分析、數(shù)字控制器設(shè)計(jì)方法等。②實(shí)現(xiàn)技術(shù)。該部分內(nèi)容包括模擬量輸入與輸出通道、數(shù)字量輸入與輸出通道、數(shù)據(jù)處理與數(shù)字濾波等。這其中,計(jì)算機(jī)控制理論概念抽象、公式變換煩瑣、數(shù)學(xué)計(jì)算量大,學(xué)生在學(xué)習(xí)過程中普遍反映理論知識(shí)枯燥,難以理解和掌握[3]。因此,對(duì)于“計(jì)算機(jī)控制技術(shù)”任課教師而言,選擇合適的教學(xué)方法和手段是非常重要的一項(xiàng)任務(wù)與挑戰(zhàn)。
本課程的教學(xué)目標(biāo)是希望學(xué)生能夠掌握計(jì)算機(jī)控制系統(tǒng)設(shè)計(jì)的步驟、方法以及分析問題、解決問題的能力,很顯然,通過單純的板書講解很難實(shí)現(xiàn)這一教學(xué)目標(biāo)。鑒于此,借助軟件進(jìn)行輔助教學(xué)是非常有必要的,考慮到Matlab軟件具有強(qiáng)大的數(shù)值、符號(hào)運(yùn)算及圖形處理等功能,目前已成為大學(xué)教學(xué)中常用的計(jì)算機(jī)輔助教學(xué)軟件。因此,本課程嘗試在課堂教學(xué)中采用傳統(tǒng)板書講授理論為主、Mtalab軟件仿真為輔的模式,在此基礎(chǔ)上穿插實(shí)際案例分析的教學(xué)方法,使教學(xué)內(nèi)容形象直觀、易于理解,以期提高教學(xué)質(zhì)量,促進(jìn)學(xué)生學(xué)習(xí)的積極性與主動(dòng)性[4]。
最少拍控制系統(tǒng)設(shè)計(jì)是“計(jì)算機(jī)控制技術(shù)”課程的教學(xué)重點(diǎn)和難點(diǎn)內(nèi)容之一,是控制器數(shù)字化設(shè)計(jì)方法的典型代表,在工業(yè)領(lǐng)域中最少拍控制系統(tǒng)常被應(yīng)用于隨動(dòng)系統(tǒng)、伺服系統(tǒng)、運(yùn)動(dòng)控制系統(tǒng)等系統(tǒng)中[5]。最少拍控制系統(tǒng)設(shè)計(jì)的具體要求是:①最少拍控制器的設(shè)計(jì)是在給定輸入信號(hào)的情況下進(jìn)行的,且在到達(dá)穩(wěn)態(tài)后,系統(tǒng)在采樣點(diǎn)的輸出值準(zhǔn)確跟蹤輸入信號(hào),不存在靜差;②各種使系統(tǒng)在有限拍內(nèi)到達(dá)穩(wěn)態(tài)的設(shè)計(jì)中,系統(tǒng)準(zhǔn)確跟蹤輸入信號(hào)所需的采樣周期數(shù)應(yīng)為最少;③最少拍控制器必須在物理上可以實(shí)現(xiàn);④最少拍控制器與被控對(duì)象一起構(gòu)成的閉環(huán)系統(tǒng)必須是穩(wěn)定的[6]。
假設(shè)典型的數(shù)字控制系統(tǒng)框圖如圖1所示,在此基礎(chǔ)上,最少拍控制系統(tǒng)設(shè)計(jì)步驟總結(jié)如下[7]。
圖1 數(shù)字控制系統(tǒng)框圖
步驟1,計(jì)算廣義對(duì)象脈沖傳遞函數(shù)G(z),公式為:
步驟2,如果廣義對(duì)象脈沖傳遞函數(shù)G(z)有l(wèi)個(gè)采樣周期的純滯后,有i個(gè)單位圓上及圓外的零點(diǎn)z1,z2,…,zi,j個(gè)單位圓上及圓外的極點(diǎn)p1,p2,…,pj,則:
步驟3,先由式(6)和式(7)確定Φ0(z)和F(z)中z-l的最高次冪,其中m是由輸入信號(hào)的類型確定的,如果輸入信號(hào)為單位階躍信號(hào),則m=1;如果輸入信號(hào)為單位速度信號(hào),則m=2;如果輸入信號(hào)為單位加速度信號(hào),則m=3。然后將式(2)代入式(3)中,獲得恒等式及其對(duì)應(yīng)的方程組,計(jì)算確定Φ0(z)和F(z)中的參數(shù)。
步驟4,由Φ0(z)、F(z)以及廣義對(duì)象的純滯后時(shí)間、單位圓外的零點(diǎn)和極點(diǎn)確定Φ(z)和1-Φ(z)的具體表達(dá)式。
步驟5,計(jì)算最少拍控制器脈沖傳遞函數(shù)D(z),公式為:
步驟6,計(jì)算系統(tǒng)輸出信號(hào)的脈沖傳遞函數(shù)Y(z)和最少拍控制器輸出信號(hào)的脈沖傳遞函數(shù)U(z),即:
式(9)(10)中:R(z)為輸入信號(hào)的z變換。
雖然上述一般設(shè)計(jì)方法中考慮了被控對(duì)象有單位圓上零、極點(diǎn)(臨界點(diǎn))的情況,但由于系統(tǒng)中總存在阻尼,這些臨界點(diǎn)是允許存在的。同時(shí),考慮到設(shè)計(jì)的控制器不能過于復(fù)雜,故在上述步驟2中只考慮被控對(duì)象有單位圓外零、極點(diǎn)的情況,對(duì)被控對(duì)象單位圓上零、極點(diǎn)不做處理。
系統(tǒng)的廣義對(duì)象脈沖傳遞函如下:
由廣義對(duì)象脈沖傳遞函數(shù)G(z)可知:G(z)無純滯后環(huán)節(jié),即l=0;G(z)無單位圓外的極點(diǎn),即j=0;G(z)無單位圓外的零點(diǎn),即i=0。由于本系統(tǒng)參考輸入為單位階躍信號(hào),則m=1。由式(6)和式(7)可得s=1,t=0。
由式(2)可知,Φ(z)的表達(dá)式為:Φ(z)=Φ0(z),其中,由式(4)可知Φ0(z)=m1z-1,故Φ(z)=m1z-1。
由式(3)可知,1-Φ(z)的表達(dá)式為1-Φ(z)=(1-z-1)F(z),其中,由式(5)可知F(z)=1,故1-Φ(z)=1-z-1。
由2個(gè)獨(dú)立表達(dá)式Φ(z)和1-Φ(z)可解得ml=1,故Φ(z)=z-1。在此基礎(chǔ)上,可由式(8)得到最少拍控制器脈沖傳遞函數(shù)D(z)的表達(dá)式,即:
由式(9)可得系統(tǒng)輸出信號(hào)的脈沖傳遞函數(shù)Y(z)的表達(dá)式,即:
由式(10)可得最少拍控制器輸出信號(hào)的脈沖傳遞函數(shù)U(z)的表達(dá)式,即:
綜上所述,由Y(z)可知,系統(tǒng)輸出在一拍后達(dá)到無靜差的穩(wěn)態(tài);由U(z)可知,雖然控制量是收斂的,系統(tǒng)是穩(wěn)定的,但由于控制量是波動(dòng)的,實(shí)際上輸出量在采樣點(diǎn)之間也是波動(dòng)的,即系統(tǒng)輸出存在紋波。
最少拍控制器只能保證在采樣點(diǎn)上的穩(wěn)態(tài)誤差為0,在許多情況下,系統(tǒng)在采樣點(diǎn)之間的輸出呈現(xiàn)紋波,這不但使實(shí)際控制不能達(dá)到預(yù)期目的,而且增加了功率損耗和機(jī)械磨損。系統(tǒng)輸出在采樣點(diǎn)之間存在紋波,主要是由控制量序列的波動(dòng)引起的,其根源在于控制器的脈沖傳遞函數(shù)中含有非零極點(diǎn)。設(shè)計(jì)最少拍無紋波控制器時(shí),處理這些非零極點(diǎn)的具體方法是:選擇閉環(huán)脈沖傳遞函數(shù)Φ(z)除了按上述的方法進(jìn)行外(以保證控制器的可實(shí)現(xiàn)性及閉環(huán)系統(tǒng)的穩(wěn)定性),像處理單位圓外的零點(diǎn)那樣,還應(yīng)將廣義對(duì)象脈沖傳遞函數(shù)G(z)在單位圓內(nèi)的非零零點(diǎn)包括在Φ(z)中,以便在控制器的脈沖傳遞函數(shù)中消除引起振蕩的所有極點(diǎn)。依據(jù)此思想,且在2.2節(jié)的基礎(chǔ)上進(jìn)行最少拍無紋波控制器的設(shè)計(jì)。
由2.2節(jié)中計(jì)算得到的廣義對(duì)象脈沖傳遞函數(shù)G(z)可知,其存在一個(gè)單位圓內(nèi)的零點(diǎn)z=-0.717,在設(shè)計(jì)最少拍控制器中,選擇Φ(z)時(shí)并沒有考慮該零點(diǎn),從而使控制器的脈沖傳遞函數(shù)F(z)中有一負(fù)實(shí)部的極點(diǎn)z=-0.717,造成了控制量序列的上下波動(dòng)。在設(shè)計(jì)最少拍無紋波控制器中,為了消除紋波,取Φ(z)=(1+0.717z-1)m1z-1。由于Φ(z)中z-1的冪次增加了一階,所以1-Φ(z)=(1-z-1)(1+f1z-1)。
由此可以解出,ml=0.58,fl=0.42,故Φ(z)=0.58z-1+0.42z-2。在此基礎(chǔ)上,可由式(8)得到最少拍無紋波控制器脈沖傳遞函數(shù)D(z)的表達(dá)式:
由式(9)可得系統(tǒng)輸出信號(hào)的脈沖傳遞函數(shù)Y(z)的表達(dá)式,即:
由式(10)可得最少拍無紋波控制器輸出信號(hào)的脈沖傳遞函數(shù)U(z)的表達(dá)式,即:
綜上所述,系統(tǒng)的輸出量序列為0、0.58、1、1、…,控制量序列為0.158、-0.058、0、0、…,系統(tǒng)在兩拍之后才達(dá)到穩(wěn)態(tài),調(diào)節(jié)時(shí)間比原來的系統(tǒng)增加了一拍,但紋波卻消除了,即控制量不再波動(dòng)。
本節(jié)以圖1所示的數(shù)字控制系統(tǒng)框圖為基礎(chǔ),對(duì)第2節(jié)中所述案例采用Matlab/Simulink進(jìn)行輔助設(shè)計(jì)與仿真。
由2.2節(jié)中最少拍控制器解析法設(shè)計(jì)過程可知,該方法設(shè)計(jì)步驟煩瑣,計(jì)算量很大,任何一個(gè)步驟出現(xiàn)錯(cuò)誤都將造成整個(gè)系統(tǒng)出現(xiàn)錯(cuò)誤。實(shí)際上,最少拍控制器的設(shè)計(jì)完全可以由Matlab編程實(shí)現(xiàn),Matlab編程實(shí)現(xiàn)的程序代碼如下:
將上述結(jié)果與2.2節(jié)中解析法計(jì)算的結(jié)果進(jìn)行對(duì)比,很明顯,通過采用Matlab編程輔助設(shè)計(jì)的整個(gè)過程既快速,獲得的結(jié)果又準(zhǔn)確。同時(shí),為了加深學(xué)生對(duì)理論計(jì)算方法的理解,可以采用Matlab中的Simulink功能對(duì)最少拍控制系統(tǒng)進(jìn)行建模仿真。圖2為本示例中最少拍控制系統(tǒng)的Simulink仿真實(shí)驗(yàn)?zāi)P?,該模型運(yùn)行后得如圖3所示的仿真實(shí)驗(yàn)結(jié)果。
圖2 最少拍控制系統(tǒng)Simulink仿真實(shí)驗(yàn)?zāi)P?/p>
圖3 最少拍控制系統(tǒng)的輸入、輸出及數(shù)字控制器的輸出曲線
圖3采用Simulink建模仿真實(shí)驗(yàn)得到的最少拍控制系統(tǒng)的輸入信號(hào)曲線、數(shù)字控制器D(z)的輸出u(k)曲線和系統(tǒng)輸出y(k)曲線。
如果單純地進(jìn)行理論推導(dǎo)與計(jì)算,學(xué)生對(duì)最少拍控制系統(tǒng)各環(huán)節(jié)輸出的具體含義將很難理解,通過仿真實(shí)驗(yàn)輸出的可視化效果,一方面使得輸出結(jié)果更直觀、更形象,另一方面有助于學(xué)生對(duì)最少拍控制器設(shè)計(jì)方法的理解與掌握。
由2.3節(jié)中最少拍無紋波控制器解析法設(shè)計(jì)過程可知,該方法設(shè)計(jì)步驟煩瑣,計(jì)算量很大,故在本節(jié)中采用Matlab編程實(shí)現(xiàn)最少拍無紋波控制器的設(shè)計(jì),Matlab編程實(shí)現(xiàn)的程序代碼如下:
將上述結(jié)果與2.3節(jié)中解析法計(jì)算的結(jié)果進(jìn)行對(duì)比,很明顯,通過采用Matlab編程輔助設(shè)計(jì)的整個(gè)過程既快速,獲得的結(jié)果又準(zhǔn)確。
同時(shí),為了加深學(xué)生對(duì)理論計(jì)算方法的理解,可以采用Matlab中的Simulink功能對(duì)最少拍無紋波控制系統(tǒng)進(jìn)行建模仿真。圖4為本示例中最少拍無紋波控制系統(tǒng)的Simulink仿真實(shí)驗(yàn)?zāi)P?,該模型運(yùn)行后得如圖5所示的仿真實(shí)驗(yàn)結(jié)果,包括系統(tǒng)輸入信號(hào)曲線、數(shù)字控制器D(z)的輸出u(k)曲線和系統(tǒng)輸出y(k)曲線。
圖4 最少拍無紋波控制系統(tǒng)Simulink仿真實(shí)驗(yàn)?zāi)P?/p>
圖5 最少拍無紋波控制系統(tǒng)的輸入、輸出及數(shù)字控制器的輸出曲線
通過對(duì)“計(jì)算機(jī)控制技術(shù)”課程特點(diǎn)的分析,探索了教學(xué)方法的改進(jìn)措施,并在教學(xué)過程中付諸了實(shí)踐。本文以最少拍控制系統(tǒng)(包括最少拍控制器和最少拍無紋波控制器)設(shè)計(jì)為教學(xué)案例,采用基于Matlab/Simulink的輔助設(shè)計(jì)與仿真實(shí)驗(yàn),加深了學(xué)生對(duì)最少拍控制系統(tǒng)設(shè)計(jì)方法的理解,促進(jìn)了學(xué)生對(duì)該方法的掌握,從學(xué)生現(xiàn)場真實(shí)的實(shí)驗(yàn)結(jié)果與課后作業(yè)情況以及期末考試中可以看出,取得了較好的教學(xué)效果。希望在今后的教學(xué)研究和教學(xué)實(shí)踐中,能進(jìn)一步探索出更好的教學(xué)方法,提高學(xué)生分析問題、解決問題的能力,達(dá)到“新工科”教育背景下自動(dòng)化類專業(yè)的培養(yǎng)目標(biāo)。