第一篇:數(shù)字PID控制器設(shè)計(jì)
數(shù)字PID控制器設(shè)計(jì)
設(shè)計(jì)任務(wù):
設(shè)單位反饋系統(tǒng)的開(kāi)環(huán)傳遞函數(shù)為:
設(shè)計(jì)數(shù)字PID控制器,使系統(tǒng)的穩(wěn)態(tài)誤差不大于0.1,超調(diào)量不大于20%,調(diào)節(jié)時(shí)間不大于0.5s。采用增量算法實(shí)現(xiàn)該P(yáng)ID控制器。
具體要求:
1.采用Matlab完成控制系統(tǒng)的建立、分析和模擬仿真,給出仿真結(jié)果。
2.設(shè)計(jì)報(bào)告內(nèi)容包含數(shù)字PID控制器的設(shè)計(jì)步驟、Matlab仿真的性能曲線、采樣周期T的選擇、數(shù)字控制器脈沖傳遞函數(shù)和差分方程形式。
3.設(shè)計(jì)工作小結(jié)和心得體會(huì)。4.列出所查閱的參考資料。
數(shù)字PID控制器設(shè)計(jì)報(bào)告
一、設(shè)計(jì)目的 了解數(shù)字PID控制算法的實(shí)現(xiàn);
掌握PID控制器參數(shù)對(duì)控制系統(tǒng)性能的影響;
能夠運(yùn)用MATLAB/Simulink 軟件對(duì)控制系統(tǒng)進(jìn)行正確建模并對(duì)模塊進(jìn)行正確的參數(shù)設(shè)置;
加深對(duì)理論知識(shí)的理解和掌握; 5 掌握計(jì)算機(jī)控制系統(tǒng)分析與設(shè)計(jì)方法。
二、設(shè)計(jì)要求
1采用增量算法實(shí)現(xiàn)該P(yáng)ID控制器。
2熟練掌握PID設(shè)計(jì)方法及MATLAB設(shè)計(jì)仿真。
三、設(shè)計(jì)任務(wù)
設(shè)單位反饋系統(tǒng)的開(kāi)環(huán)傳遞函數(shù)為:
設(shè)計(jì)數(shù)字PID控制器,使系統(tǒng)的穩(wěn)態(tài)誤差不大于0.1,超調(diào)量不大于20%,調(diào)節(jié)時(shí)間不大于0.5s。采用增量算法實(shí)現(xiàn)該P(yáng)ID控制器。
四、設(shè)計(jì)原理
1.數(shù)字PID原理結(jié)構(gòu)框圖
2.增量式PID控制算法
?u?k??KPe?k??KI?e?i??KD??e?k??e?k?1??i?0?
=u(k-1)+Kp[e(k)-e(k-1)]+Kie(k)+Kd[e(k)-2e(k-1)+e(k-2)] =u(k-1)+(Kp+Ki+Kd)e(k)-(Kp+2Kd)e(k-1)+Kde(k-2)所以Δu(k)=u(k)-u(k-1)
=Kp[e(k)-e(k-1)]+Kie(k)+Kd[e(k)-2e(k-1)+e(k-2)]
=(Kp+Ki+Kd)e(k)-(Kp+2Kd)e(k-1)+Kde(k-2)整理:
Δu(k)= Ae(k)-Be(k-1)+Ce(k-2)A= Kp+Ki+Kd
B=-(Kp+2Kd)C=Kd
五、Matlab仿真選擇數(shù)字PID參數(shù)
(擴(kuò)充臨界比例度法/擴(kuò)充響應(yīng)曲線法 具體整定步驟)
利用擴(kuò)充臨界比例帶法選擇數(shù)字PID參數(shù),擴(kuò)充臨界比例帶法是以模擬PID調(diào)節(jié)器中使用的臨界比例帶法為基礎(chǔ)的一種數(shù)字PID參數(shù)的整定方法。其整定步驟如下:; 1)選擇合適的采樣周期T;
2)在純比例的作用下,給定輸入階躍變化時(shí),逐漸加大比例作用Kp(即減小比例帶?),直至系統(tǒng)出現(xiàn)等幅震蕩,記錄比例增益Kc,及振蕩周期Tc。Kc成 為臨界振蕩比例增益(對(duì)應(yīng)的臨界比例帶?),Tc成為臨界振蕩周期。
=1/150S^3+6/25S^2+37/30S+1 在MATLAB下輸入如下程序:
num=[1];
den=[1/150,6/25,37/30,1];sys=tf(num,den);p=[20:2:45];for i=1:length(p)
Gc=feedback(p(i)*sys,1);step(Gc)hold on end;grid
title('Kp變化時(shí)系統(tǒng)的階躍響應(yīng)曲線')axis([0,3,0,2.3])仿真階躍響應(yīng)如下圖:
調(diào)整參數(shù):p=[35:2:45] 程序如下: num=[1];
den=[1/150,6/25,37/30,1];sys=tf(num,den);p=[35:2:45];for i=1:length(p)
Gc=feedback(p(i)*sys,1);step(Gc)hold on end;grid title('Kp變化時(shí)系統(tǒng)的階躍響應(yīng)曲線')axis([0,3,0,2.3])仿真階躍響應(yīng)如下圖:
由圖像可知:當(dāng)Kp在40~45之間時(shí),系統(tǒng)會(huì)出現(xiàn)等幅振蕩。為進(jìn)一步得到準(zhǔn)確的Kp,調(diào)整程序參數(shù)p=[40:1:45],程序如下: num=[1];
den=[1/150,6/25,37/30,1];sys=tf(num,den);p=[40:1:45];for i=1:length(p)
Gc=feedback(p(i)*sys,1);step(Gc)hold on end;grid
title('Kp變化時(shí)系統(tǒng)的階躍響應(yīng)曲線')axis([0,3,0,2.3])仿真階躍響應(yīng)如下圖:
由圖像進(jìn)一步精確得Kc約為43時(shí),系統(tǒng)出現(xiàn)等幅震蕩,震蕩周期Tc約為0.5s。
擴(kuò)充臨界比例帶法選擇數(shù)字PID參數(shù)的計(jì)算公式如下表所示:
3)選擇控制度。控制度的定義為數(shù)字調(diào)節(jié)器和模擬調(diào)節(jié)所對(duì)應(yīng)的過(guò)度過(guò)程的誤差平方積分之比,即控制度=?0??2eDdt?0edt2式中,eD為數(shù)字調(diào)節(jié)器的控制誤差;e為模擬調(diào)節(jié)器的控制誤差.當(dāng)控制度為1.05時(shí),數(shù)字調(diào)節(jié)器魚(yú)模擬調(diào)節(jié)器的控制效果相當(dāng);當(dāng)控制度為2時(shí),數(shù)字調(diào)節(jié)器比模擬調(diào)節(jié)器的控制效果差一倍;在此選控制度為1.05。按選擇的控制度指標(biāo)及Tc,Kc實(shí)驗(yàn)測(cè)得值,由查表選擇相應(yīng)的計(jì)算公式計(jì)算采樣周期:T=0.007,Kp=27,Ti=0.245,Td=0.07;KI?KiT?KPT=0.77,KD?Kd?KPTD=270,Ki=0.23
TITTTc=0.5 則T=Tc*0.014=0.5*0.014=0.007;
Kp=Kc*0.63=43*0.63=27.09;
Ti=Tc*0.49=0.5*0.49=0.245;
Td=Tc*0.14=0.5*0.14=0.07;
Kp=27.09;
Ki=Kp*T/Ti=27.09*0.007/0.245=0.774;
Kd=Kp*Td/T=27.09*0.07/0.007=270.09;
六、Matlab/Simulink 控制系統(tǒng)建模 1.控制器
ΔU(Z)=(Kp+Ki+Kd)E(Z)-(Kp+2Kd)/Z*E(Z)+Kd/Z^2*E(Z)則D(Z)=ΔU(Z)/E(Z)=(Kp+Ki+Kd)-(Kp+2Kd)/Z+Kd/Z^2 =[(Kp+Ki+Kd)Z^2-(Kp+2Kd)Z+Kd]/Z^2 2.仿真模型圖
將 Kp=27.09;
Ki=Kp*T/Ti=27.09*0.007/0.245=0.774;
Kd=Kp*Td/T=27.09*0.07/0.007=270.09帶入,得:
Kp+Ki+Kd=27.09+0.774+270.09=297.95 Kp+2Kd=27.09+2*270.09=567.27 Kd=270.09
即D(Z)=[297.95*Z^2-567.27*Z+270.09]/Z^2
G0(S)=43/[0.00667S^3+0.24S^2+1.2333S+1] 3.輸出階躍響應(yīng)曲線
Scope中得到階躍響應(yīng)曲線如下所示:
4、試湊法微調(diào)參數(shù) 由階躍響應(yīng)圖像可得:
Y(∞)=0.96,則穩(wěn)態(tài)誤差Ess=1-0.96=0.04 超調(diào)量
=(1.1-0.96)/0.96*100%=14.6% 調(diào)整時(shí)間Ts=0.27s
系統(tǒng)有少量的穩(wěn)態(tài)誤差,則適當(dāng)增大KI參數(shù),使得KI參數(shù)由0.774變?yōu)?.774;
Scope中得到階躍響應(yīng)曲線如下所示:
由圖像可知:此時(shí)穩(wěn)態(tài)誤差Ess減為1-0.98=0.02,超調(diào)量=(1.1-1)/1*100%=10%,調(diào)整時(shí)間減少為Ts=0.15s,但該曲線不夠平滑,調(diào)整:Kp=36.08,Ki=2.770,Kd=270.08,降低傳遞函數(shù)的K值為36
Scope中得到階躍響應(yīng)曲線如下所示:
此時(shí)穩(wěn)態(tài)誤差幾乎為0,調(diào)整時(shí)間Ts為0.3s,超調(diào)量為(1.05-1)/1*100%=5%,基本符合要求
5.最終PID參數(shù)及輸出響應(yīng)曲線 當(dāng)Kp=36.08 Ki=2.770 Kd=270.08時(shí)
最終輸出階躍響應(yīng)曲線為:
七、設(shè)計(jì)心得體會(huì)
通過(guò)這次設(shè)計(jì),重新認(rèn)識(shí)了計(jì)算機(jī)控制系統(tǒng)的數(shù)字PID控制,基本掌握了數(shù)字PID控制的基本規(guī)律,也認(rèn)識(shí)到計(jì)算機(jī)控制系統(tǒng)的復(fù)雜性,檢驗(yàn)了我所學(xué)的知識(shí),體會(huì)了控制系統(tǒng)三大指標(biāo)“穩(wěn),準(zhǔn),快”的意義.加深了我對(duì)自動(dòng)控制系統(tǒng)的了解,同時(shí)也對(duì)比例、積分、微分控制有了更進(jìn)一步的認(rèn)識(shí)。
比例系數(shù)的加大,將使系統(tǒng)的響應(yīng)速度加快,在系統(tǒng)穩(wěn)定的前提下,加大比例系數(shù)可以減少穩(wěn)態(tài)誤差。但不能消除穩(wěn)態(tài)誤差。積分控制通常影響系統(tǒng)的穩(wěn)定性,有助于消除穩(wěn)態(tài)誤差,提高系統(tǒng)的控制精度。而微分作用的增加則可以改善系統(tǒng)的動(dòng)態(tài)特性,但也可能降低系統(tǒng)的抗干擾能力。比例+積分控制器可以使系統(tǒng)進(jìn)入穩(wěn)態(tài)后無(wú)穩(wěn)態(tài)誤差。而比例+微分控制器能改善系統(tǒng)在調(diào)節(jié)過(guò)程中的動(dòng)態(tài)特性。
這次設(shè)計(jì)過(guò)程讓我們把理論知識(shí)付諸于實(shí)踐,這對(duì)以后的學(xué)習(xí)帶來(lái)了更大的 幫助!
八、參考文獻(xiàn)
1.陳懷琛.MATLAB及在電子信息課程中的應(yīng)用.北京:電子工業(yè)出版社,2009 2.趙廣元.MATLAB與控制系統(tǒng)仿真實(shí)踐.北京:北京航空航天大學(xué)出版社,2009
第二篇:AB PLC PID控制器總結(jié)
針對(duì)AB PLC里的PID控制器的研究
首自信熱軋作業(yè)區(qū)
張余海
借鑒熱軋1580的稀油泵站的出口壓力控制,期望壓力為4.0bar,電機(jī)為異步變頻電機(jī),變頻器為AB變頻器,PLC和變頻器的通訊通過(guò)Device Net進(jìn)行數(shù)據(jù)交換。
一、控制器里的變量介紹--------
各變量名解釋:(各變量只是顯示用,他們的值時(shí)根據(jù)里面的參數(shù)設(shè)定而來(lái))PID :PID控制器的名字(自己命名)
Process Variable :過(guò)程變量的輸入源設(shè)定也就是反饋值(直接連到壓力反饋的輸入點(diǎn))Tieback:手動(dòng)控制時(shí)的牽引信號(hào),因?yàn)樵谑謩?dòng)控制中,輸出(OUTPUT=SETOUTPUT是人為設(shè)定的,這個(gè)Tieback有個(gè)對(duì)應(yīng)的值,也就是手動(dòng)設(shè)定為0,Tieback為0,如果手動(dòng)設(shè)定為100%,那么Tieback輸出就是4095)具體見(jiàn)后面的參數(shù)設(shè)定。
Control Variable:控制變量(最關(guān)鍵的一個(gè)參數(shù))的輸出源設(shè)定,自己命令的一個(gè)中間變量作為轉(zhuǎn)換或者直接接到給到執(zhí)行器的輸出信號(hào)上(例如閥的開(kāi)口度、電機(jī)的轉(zhuǎn)速給定)。PID控制器計(jì)算得到的是一個(gè)百分?jǐn)?shù),但是百分?jǐn)?shù)無(wú)法輸出給執(zhí)行機(jī)構(gòu),必須轉(zhuǎn)換成為數(shù)字量,這個(gè)控制變量(CV)就是依照對(duì)應(yīng)關(guān)系轉(zhuǎn)換得到的數(shù)字量(例如OUTPUT=0,CV=0,OUTPUT=100%,CV=16384,具體見(jiàn)后面參數(shù)設(shè)定)
PID Master Loop:PID的主循環(huán),就是PID控制使用串級(jí)控制,如果是就會(huì)顯示為1,如果為從就為0,但是有一個(gè)前提就是選用了串級(jí)控制(看后面的參數(shù)設(shè)定)
Ihhold Bit :初始化保持位,來(lái)自1756模擬量輸出通道的數(shù)據(jù)讀出值,用于支持無(wú)沖擊在啟動(dòng),如果用戶不想用此參數(shù),可以設(shè)置為0。
Inhold Value:初始化保持值,來(lái)自1756模擬量輸出通道的數(shù)據(jù)讀出值,用于支持無(wú)沖擊在啟動(dòng),如果用戶不想用此參數(shù),可以設(shè)置為0。
這兩個(gè)值是為了防止系統(tǒng)已運(yùn)行,過(guò)程變量和設(shè)定偏差太大,PID控制器輸出肯定是100%,帶來(lái)很大的沖擊,如果設(shè)置此參數(shù),系統(tǒng)先不讓PID控制器工作,輸出一直用Inhold Value(初始化保持值),這個(gè)值可以人為的設(shè)定慢慢的變大,等到系統(tǒng)壓力差不多達(dá)到設(shè)定壓力后,然后將Ihhold Bit(初始化保持位)置0,這樣系統(tǒng)輸出就會(huì)采用PID控制器的輸出了。
SetPoint:設(shè)定值,Process Variable :過(guò)程變量的實(shí)際值顯示
OUTPUT:PID控制器經(jīng)過(guò)計(jì)算得到的輸出,百分?jǐn)?shù)形式。
二、參數(shù)設(shè)置:
1、調(diào)節(jié)方式參數(shù)設(shè)置
2、PID功能塊的配置參數(shù)設(shè)置
注:(1)如果控制動(dòng)作選用的是E=SP-PV那么PID的輸出就可以直接給到執(zhí)行器進(jìn)行動(dòng)作,如果選用的是E=PV-SP那么輸出就需要變方向,(2)控制變量上下限為了防止輸出過(guò)大,導(dǎo)致沖擊,下限是為了防止停轉(zhuǎn)等。
(3)設(shè)置死區(qū)時(shí)間是為了防止實(shí)際值在設(shè)定值附近的時(shí)候,PID進(jìn)行微調(diào),導(dǎo)致系統(tǒng)來(lái)回的振蕩。
3、PID控制器的報(bào)警參數(shù)設(shè)置
注:(1)PV上限值報(bào)警和下限值報(bào)警時(shí)為了報(bào)出實(shí)際值的過(guò)大變化,這里的40.0實(shí)際上是4.0bar,因?yàn)樵贏B PLC里有一個(gè)工程量的變換,一般是10倍關(guān)系(見(jiàn)相關(guān)的比例定標(biāo)配置)
4、相關(guān)的比例定標(biāo)配置
注:(1)PV未定標(biāo)(unscaled)的最大值就是現(xiàn)場(chǎng)實(shí)際的壓力反饋值,這里設(shè)定是16bar,而工程量單元(Engineering)是實(shí)際值的10倍關(guān)系,所以是160,而在PID功能塊里用的都是工程量,所以不管是設(shè)定值和反饋值都是放大十倍關(guān)系的。
(2)控制變量的定標(biāo)就是將PID控制器的輸出0—100%和數(shù)字量0—16384(一個(gè)整形數(shù))進(jìn)行對(duì)應(yīng),所以在PID控制器里,OUTPUT是百分?jǐn)?shù),而Control Variable 是整形數(shù),就是在這里進(jìn)行了轉(zhuǎn)換。
(3)Tieback牽引值是為了在手動(dòng)模式下,手動(dòng)輸入Setoutput的大小之后,那個(gè)百分?jǐn)?shù)就不按照0—16384進(jìn)行轉(zhuǎn)換,而是按照0—4095進(jìn)行轉(zhuǎn)換。
5、標(biāo)簽參數(shù)設(shè)置
設(shè)置此PID控制器的名字和相關(guān)描述。
二、PID的公式計(jì)算
我們就拿上面的工程進(jìn)行計(jì)算PID計(jì)算。
參數(shù)設(shè)置的是PI控制,P=2.5,Ti=0.08,Td=0,BIAS=0,對(duì)PV進(jìn)行微分,采樣周期為0.4s,實(shí)際值數(shù)據(jù)是0.01S,那么如果現(xiàn)在PV=2.0BAR,那么輸出應(yīng)該是多少,E=SP-PV=4-2=2
具體的計(jì)算要進(jìn)行分時(shí)間進(jìn)行計(jì)算,因?yàn)镻ID控制器的周期是0.4S,但是PV數(shù)據(jù)采集周期可能是0.1S,那就是E的計(jì)算會(huì)很快,例如0.1S時(shí)為2,0.2S時(shí)為1,0.3S時(shí)為0.5,0.4S時(shí)為0.2,但是輸出計(jì)算只能是0.4S輸出一次,那樣的話,系統(tǒng)只會(huì)要0.4S的那個(gè)時(shí)候的誤差,在0-0.4S之間變化的誤差時(shí)不考慮的,也就是輸出應(yīng)該為。
CV=2.5[2+1/0.08*0.2(0.4-0)]=7.5%(控制器的掃描周期是0.1s,IO的刷新周期是0.01s,那么中間掃描進(jìn)來(lái)的 IO都不會(huì)被使用到)并不是下面的公式:
CV=2.5[2+1/0.08*2(0.1-0)]+2.5[1+1/0.08*1(0.2-0.1)]+2.5[0.5+1/0.08*0.5(0.3-0.2)]+2.5[0.2+1/0.08*0.2(0.4-0.3)]=2.5*4.5+2.5*2.25+2.5*1.125+2.5*0.45=20%
第三篇:最少拍數(shù)字控制器的設(shè)計(jì)
離散控制系統(tǒng)最少拍控制
摘要
本次設(shè)計(jì)針對(duì)一階慣性積分系統(tǒng)在單位速度信號(hào)輸入作用下進(jìn)行最少拍數(shù)字控制器的設(shè)計(jì),驗(yàn)證了最少拍控制器的優(yōu)點(diǎn),并對(duì)最少拍算法進(jìn)行理論分析,分別設(shè)計(jì)出最少拍有紋波和無(wú)紋波數(shù)字控制器,利用 MATLAB 仿真平臺(tái)對(duì)設(shè)計(jì)的最少拍數(shù)字控制器進(jìn)行系統(tǒng)仿真研究,并對(duì)有紋波和無(wú)紋波系統(tǒng)進(jìn)行對(duì)比研究。
關(guān)鍵詞
最少拍控制;無(wú)紋波控制器;有紋波控制器;Matlab仿真
離散控制系統(tǒng)最少拍控制
目錄
摘要……………………………………………………………………………………1 第一章 最少拍有紋波控制器設(shè)計(jì)………………………………………………….3 1.1 設(shè)計(jì)原理……………………………………………………………………3 1.2 設(shè)計(jì)舉例……………………………………………………………………5 第二章 最少拍無(wú)紋波控制器設(shè)計(jì)………………………………………………….5 2.1 設(shè)計(jì)原理……………………………………………………………………5 2.2 設(shè)計(jì)舉例……………………………………………………………………6 第三章 基于Matlab的最少拍控制的實(shí)現(xiàn)…………………………………………7 3.1 輸入單位階躍信號(hào)…………………………………………………………7 3.2 輸入單位速度信號(hào)…………………………………………………………8 3.3 輸入單位加速度信號(hào)……………………………………………………9 參考文獻(xiàn)………………………………………………………………………………10 致謝……………………………………………………………………………………11
離散控制系統(tǒng)最少拍控制
離散控制系統(tǒng)最少拍控制
最少拍系統(tǒng)控制設(shè)計(jì)是指系統(tǒng)在典型輸入信號(hào)(如單位階躍輸入信號(hào)、單位速度輸入信號(hào)、單位加速度輸入信號(hào)等)作用下,經(jīng)過(guò)最少拍(有限拍),使系統(tǒng)輸出的穩(wěn)態(tài)誤差為零。最少拍控制系統(tǒng)也稱為最少拍無(wú)差系統(tǒng)、最少拍隨動(dòng)系統(tǒng),實(shí)際上是時(shí)間最優(yōu)控制系統(tǒng),系統(tǒng)的性能指標(biāo)就是系統(tǒng)的調(diào)節(jié)時(shí)間最短或者盡可能的短??梢钥闯觯@種系統(tǒng)對(duì)閉環(huán)脈沖傳遞函數(shù)的要求是快遞性和準(zhǔn)確性。最少拍控制系統(tǒng)的設(shè)計(jì)與被控對(duì)象的零極點(diǎn)位置有很密切的關(guān)系。
第一章 最少拍有紋波控制器設(shè)計(jì)
1.1設(shè)計(jì)原理
由系統(tǒng)閉環(huán)脈沖傳遞函數(shù)可以看出,在Φ(z)中,D(z)和G(z)總是成對(duì)出現(xiàn)的。只有當(dāng)廣義對(duì)象穩(wěn)定[即G(z)在z平面單位圓上和單位圓外沒(méi)有極點(diǎn)]且不包含純滯后環(huán)節(jié)時(shí),上述方法才是可行的,否則,不允許D(z)與G(z)發(fā)生零極點(diǎn)對(duì)消。這是因?yàn)?,?jiǎn)單地利用D(z)的零點(diǎn)去對(duì)消G(z)不穩(wěn)定極點(diǎn),雖從理論上來(lái)說(shuō)可以得到一個(gè)穩(wěn)定的閉環(huán)系統(tǒng),但這種穩(wěn)定是建立在零極點(diǎn)完全對(duì)消的基礎(chǔ)上的。當(dāng)系統(tǒng)參數(shù)產(chǎn)生飄逸,或者對(duì)象辨識(shí)有誤差時(shí),這種零極點(diǎn)對(duì)消就不可能準(zhǔn)確實(shí)現(xiàn),從而引起閉環(huán)系統(tǒng)不穩(wěn)定。座椅建立在零極點(diǎn)對(duì)消基礎(chǔ)上的穩(wěn)定系統(tǒng)實(shí)際上是不可能穩(wěn)定工作的,沒(méi)有實(shí)用價(jià)值。
當(dāng)G(z)含有單位圓上或單位圓外零極點(diǎn)時(shí),為保證D(z)與G(z)不會(huì)發(fā)生零極點(diǎn)對(duì)消,在選擇Φ(z)時(shí),必須附加一個(gè)穩(wěn)定性約束條件。
設(shè)廣義脈沖傳遞函數(shù)G(z)為
u?G(z)?i?1vi?1(1?bizz?1)G'(z)
?(1?a?1i)式中,b1、b2、…、bu 為G(z)的u個(gè)不穩(wěn)定零點(diǎn),a1、a2、…、av 為G(z)的v個(gè)不穩(wěn)定極點(diǎn),G'(z)為G(z)中不包含單位圓上或單位圓外的零極點(diǎn)部分。當(dāng)對(duì)象不包含延遲環(huán)節(jié)時(shí),m=1;當(dāng)對(duì)象包含延遲環(huán)節(jié)時(shí),m>1。
為避免發(fā)生D()與G()的不穩(wěn)定零極點(diǎn)發(fā)生對(duì)消,Φ(z)應(yīng)該滿足如下穩(wěn)定性條件:
①在?e(z)的零點(diǎn)中,必須包含G(z)在z平面單位圓外或單位圓上的所有極點(diǎn),即:
v?e(z)?1??(z)??i?1(1?aiz?1)F1(z)
F1(z)為z-1的多項(xiàng)式,且不包含G(z)中的不穩(wěn)定極點(diǎn)ai。
②)在?(z)的零點(diǎn)中,必須包含G(z)在z平面單位圓外或單位圓上的所有零點(diǎn),即:
離散控制系統(tǒng)最少拍控制
u?(z)??i?1(1?biz?1)F2(z?1)
式中,F(xiàn)2(z)為z-1的多項(xiàng)式,且不包含G(z)中的不穩(wěn)定零點(diǎn)bj。因此,滿足了上述穩(wěn)定性條件后
?11?(z)F2(z)D(z)??,?1?1 G(z)(1??(z)G'(z)F1(z)即D(z)不在包含G(z)的z平面單位圓上或單位圓外零極點(diǎn)。
1.2 設(shè)計(jì)舉例
對(duì)于給定一階慣性加積分環(huán)節(jié),時(shí)間常數(shù)為1S,增益為10,采樣周期T為1S的對(duì)象,其傳遞函數(shù)為:Gc(S)=10/S(S+1),針對(duì)單位階躍信號(hào)輸入,設(shè)計(jì)最少拍系統(tǒng)如下: 被控對(duì)象的脈沖傳遞函數(shù)為:
?1?e?Ts??G(s)c??s?H(s)?Gc(s)???G(z)=Z=Zz?1??1?2?s(s?1)?-1?=10(1-z)Z
(1?0.717z?1?1)?1=3.68×(1?z)(1?0.368z)
(1)由(1)式知 d=0,u=0,v=1,j=1,q=2,且j≤q,則有:
m=u+d=0 n=v-j+q=2 對(duì)單位速度輸入信號(hào),選擇
v?j?e(z)?1??(z)?[?(1?aizi?1u?1)](1?z?1)F1(z)q?(1?z?1)2
?(z)?z?d[?(1?bizi?1?1)]F2(z)?f21z?1?f22z?2
結(jié)合得 ?e(z)?1??(z)1?f21z?1
?(1?z?1?f22z?2)2
f21?2,f22??1根據(jù)多項(xiàng)式相等,其系數(shù)相等的的性質(zhì),有所以,?(z)?2z?1
?z?
2?F2(z)?1q?jD(z)?1?(z)G(z)1??(z)
G'(z)(1?z)F1(z),j?q
?1?(1?0.368z3.68z?1)(2z?1?z?2)?
1(1?0.718z?1)(1?z)
離散控制系統(tǒng)最少拍控制
?0.543(1?0.5z?1)(1?0.368z)(1?z?1?1)
從而,E(z)?R(z)?e(z)?1?1(1?0.718z?1)(2)
?Tz(1?zTz)2(1?z?1)2?z?1
?1?1
Y(z)?R(z)?(z)?(1?z)2(2z?1?z?2)?2z?2?3z?3?4z?4?...U(z)?E(z)D(z)?z.?10.543(1?0.5z?1)(1?0.368z)(1?z?1?1)(1?0.718z?0.54z?1)
?0.40z?
3?1?0.32z?2?0.12z?4?0.25z?5?...其控制器輸出與系統(tǒng)輸出如下圖所示:
u y0.5 012345t/T 1
012345t/T
最少拍控制器設(shè)計(jì)是采用z變化進(jìn)行的,僅在采樣點(diǎn)處是閉環(huán)反饋控制,在采樣點(diǎn)間實(shí)際上是開(kāi)環(huán)運(yùn)行的。因此,在采樣點(diǎn)處的誤差是零,并不能保證采樣點(diǎn)之間的誤差也為零。事實(shí)上,按前面的方法設(shè)計(jì)的最少拍控制器的輸出響應(yīng)在采樣點(diǎn)間存在波紋。
如上圖所示,經(jīng)過(guò)2拍后,在采樣時(shí)刻系統(tǒng)誤差為零,輸出跟蹤上了輸出的變化,但在非采樣時(shí)刻,輸出有波紋存在,原因在于數(shù)字控制器的輸出u(kT)經(jīng)過(guò)2拍后不為零或常值,而是振動(dòng)收斂。波紋不僅造成誤差,同時(shí)也消耗功率、浪費(fèi)能量,增加機(jī)械磨損,因此,設(shè)計(jì)時(shí)應(yīng)考慮加以消除。
第二章 最少拍無(wú)紋波控制器設(shè)計(jì)
2.1設(shè)計(jì)原理
①設(shè)計(jì)最少拍無(wú)紋波控制器的必要條件 很明顯,為使被控對(duì)象在穩(wěn)態(tài)時(shí)的輸出和輸入同步,要求被控對(duì)象必須具有相應(yīng)的能力。例如,如輸入為等速輸入函數(shù),被控對(duì)象G()的穩(wěn)態(tài)輸出也應(yīng)為等速函數(shù)。因此就要求G()中至少有一個(gè)積分環(huán)節(jié)。再如,若輸入為等加速度輸入函數(shù),則被控對(duì)象G()的穩(wěn)態(tài)輸出也應(yīng)為等加速函數(shù),要求G()中至少有兩個(gè)積分環(huán)節(jié)。所以最少拍無(wú)紋波控制器能夠?qū)崿F(xiàn)的必要條件是被控對(duì)象G()中含有與輸入信號(hào)相對(duì)應(yīng)的積分環(huán)節(jié)數(shù)。
離散控制系統(tǒng)最少拍控制
②最少拍無(wú)紋波系統(tǒng)確定Ф(z)的約束條件
要使系統(tǒng)的穩(wěn)態(tài)輸出無(wú)紋波,就要求穩(wěn)態(tài)時(shí)的控制信號(hào)u(k)為常值(包括0)。由Y(z)??(z)R(z)?G(z)U(z)可知
U(z)= ?(z)R(z)/G(z)要使u(kT)在穩(wěn)態(tài)時(shí)無(wú)波動(dòng),就意味著U(z)與R(z)之比為的有限項(xiàng)多項(xiàng)式。而這要求?(z)R(z)包含G(z)的所有零點(diǎn)。即
w?(z)??i?1(1?biz?1)F(z?1)
2.2 設(shè)計(jì)舉例
仍然按照有紋波控制器的設(shè)計(jì)步驟設(shè)計(jì) 同樣的,由(1)式知
被控對(duì)象不含純滯后z-d,d=0;共包含一個(gè)零點(diǎn)b1 =-0.718, w=1;包含一個(gè)單位圓外或單位圓上的極點(diǎn),v=1,且一個(gè)極點(diǎn)在單位圓上,j=1; 輸入信號(hào)為單位速度,q=2,且j m=w+d=1 n=v-j+q=2 因此:F1(z)?1?f11z?1 F2(z)?f21z?1?f22z?2 對(duì)單位速度輸入信號(hào),選擇 v?j?e(z)?1??(z)?[?(1?aizi?1?1)](1?z?1)F1(z),q?jq ?12?1) ?(1?zw)(1?f11z?(z)?z?d[?(1?bizi?1?1)]F2(z)?(1?0.718z?1)(f21z?1?f22z?2) 由?e(z)?1??(z)得 ?1(1?z)(1?f11z2?1)?1?(1?0.718z?1)(f21z?1?f22z?2) ?3展開(kāi)有 : 1?(f11?2)z?1?(1?2f11)z?2?f11z?3?1?f21z?1?(f22?0.718f21)z?2?0.718f22z 對(duì)應(yīng)系數(shù)相等,得:f11?0.592,f21?1.408,f22??0.825 離散控制系統(tǒng)最少拍控制 故有 ?e(z)?(1?z?1)(1?0.592z?12?1) ?0.825z?2?(z)?(1?0.718z)(1.408z?1) 最后,求得數(shù)字控制器的脈沖函數(shù)為 D(z)?1?(z)G(z)1??(z)?0.383?(1?0.5859z(1?0.592z?1?1)(1?0.368z?1?1))(1?z)(3) 閉環(huán)系統(tǒng)的輸出序列為 Y(z)?R(z)?(z)?Tz(1?z?3?1?1)2(1?0.718z?1)(1.408z?1?0.825z?2) ?...?1.41z?2?3z?4z?4 ?1E(z)?R(z)?e(z)Y(z)G(z)?Tz(1?z?1?1)2(1?z)(1?0.592z2?1)?z?1?0.592z?2 U(z)??R(z)?(z)G(z)?0.38z?1?0.02z?2?0.09z?3?0.09z?4?...其控制器輸出與系統(tǒng)輸出如下圖所示: u0.4y4321012345t/T012345t/T 第三章 基于Matlab的最少拍控制的實(shí)現(xiàn) 3.1輸入單位階躍信號(hào) 計(jì)算可得到最少拍數(shù)字控制器為 離散控制系統(tǒng)最少拍控制 檢驗(yàn)誤差序列: 運(yùn)用Simulink 對(duì)其控制結(jié)果進(jìn)行仿真,系統(tǒng)Simulink 仿真模型框圖如下圖所示: 將示波器的數(shù)據(jù)存為矩陣形式,命名為y1 在Matlab 命令窗口輸入: >> plot(tout(:,1),y1(:,2:4));>> hold on,legend(' 輸入','誤差','輸出')可得輸入、輸出和誤差三條曲線仿真結(jié)果如下圖所示: 3.2輸入單位速度信號(hào) 原理同上 D(Z)??(z)G(z)(1??(z))?0.5434(1?0.5(1?z?1)(1?0.3679z?1)z?1)(1?0.718z?1) 檢驗(yàn)誤差: z 控制系統(tǒng)Simulink 框圖如下圖所示: E(z)?(1??(z))R(z)??1 離散控制系統(tǒng)最少拍控制 輸入、輸出和誤差三條曲線仿真結(jié)果如下圖所示: 3.3輸入單位加速度信號(hào) 原理同上 檢驗(yàn)誤差: 控制系統(tǒng)Simulink 框圖如下圖所示: 輸入、輸出和誤差三條曲線仿真結(jié)果如下圖所示: 離散控制系統(tǒng)最少拍控制 參考文獻(xiàn) [1] 李元春.計(jì)算機(jī)控制系統(tǒng).高等教育出版社.133-145 [2] 畢效輝.自動(dòng)控制理論.中國(guó)輕工業(yè)出版社.321-327 離散控制系統(tǒng)最少拍控制 致謝 一種是利用PLC的固定模塊來(lái)實(shí)現(xiàn)(PLC400的現(xiàn)成模塊);一種是自己編程實(shí)現(xiàn)(TDC) 自動(dòng)化控制系統(tǒng)的核心是控制器??刂破鞯娜蝿?wù)是按照一定的控制規(guī)律,產(chǎn)生滿足工藝要求的控制信號(hào),以輸出驅(qū)動(dòng)執(zhí)行器,達(dá)到自動(dòng)控制的目的。在傳統(tǒng)的模擬控制系統(tǒng)中,控制器的控制規(guī)律或控制作用是由儀表或電子裝置的硬件電路完成的,而在計(jì)算機(jī)控制系統(tǒng)中,除了計(jì)算機(jī)裝置以外,更主要的體現(xiàn)在軟件算法上,即數(shù)字控制器的設(shè)計(jì)上。 1、王琦,計(jì)算機(jī)控制技術(shù) 1)p19 模擬系統(tǒng)和數(shù)字系統(tǒng)的區(qū)別; 2)p166 PID工程整定方法。 3)p196安裝調(diào)試步驟等。 2、李江全,計(jì)算機(jī)控制技術(shù)項(xiàng)目教程(見(jiàn)PPT電子文檔) 1)P185計(jì)算機(jī)控制系統(tǒng)的設(shè)計(jì)原則; 2)P194 計(jì)算機(jī)控制系統(tǒng)的總統(tǒng)方案設(shè)計(jì); 3)P205計(jì)算機(jī)控制系統(tǒng)的硬件設(shè)計(jì); 4)P208 計(jì)算機(jī)控制系統(tǒng)的軟件設(shè)計(jì); 5)P226計(jì)算機(jī)控制系統(tǒng)的調(diào)試與運(yùn)行; 6)P229 計(jì)算機(jī)控制系統(tǒng)的可靠性設(shè)計(jì) 3、嚴(yán)海穎 計(jì)算機(jī)控制技術(shù) 1)p96 數(shù)字濾波技術(shù)和線性化處理等 4、《計(jì)算機(jī)控制》-鄔學(xué)禮 趙瑩琳等 控制器的實(shí)現(xiàn)問(wèn)題 5、ta 1.滿足工藝要求 在設(shè)計(jì)計(jì)算機(jī)測(cè)控系統(tǒng)時(shí),首先應(yīng)滿足生產(chǎn)過(guò)程所提出的各種要求及性能指標(biāo)。因?yàn)橛?jì)算機(jī)測(cè)控系統(tǒng)是為生產(chǎn)過(guò)程自動(dòng)化服務(wù)的,因此設(shè)計(jì)之前必須對(duì)工藝過(guò)程有一定的熟悉和了解,系統(tǒng)設(shè)計(jì)人員應(yīng)該和工藝人員密切結(jié)合,才能設(shè)計(jì)出符合生產(chǎn)工藝要求和性能指標(biāo)的測(cè)控系統(tǒng)。設(shè)計(jì)的測(cè)控系統(tǒng)所達(dá)到的性能指標(biāo)不應(yīng)低于生產(chǎn)工藝要求,但片面追求過(guò)高的性能指標(biāo)而忽視設(shè)計(jì)成本和實(shí)現(xiàn)上的可能性也是不可取的。 2.可靠性要高 系統(tǒng)的可靠性是指系統(tǒng)在規(guī)定的條件下和規(guī)定的時(shí)間內(nèi)完成規(guī)定功能的能力。在現(xiàn)代生產(chǎn)和管理中,計(jì)算機(jī)測(cè)控系統(tǒng)起著非常重要的作用,其安全可靠性,直接影響到生產(chǎn)過(guò)程連續(xù)、優(yōu)質(zhì)、經(jīng)濟(jì)運(yùn)行。計(jì)算機(jī)測(cè)控系統(tǒng)通常都是工作在比較惡劣的環(huán)境之中,各種干擾會(huì)對(duì)系統(tǒng)的正常工作產(chǎn)生影響,各種環(huán)境因素(如粉塵、潮濕、震動(dòng)等)也是對(duì)系統(tǒng)的考驗(yàn)。而計(jì)算機(jī)測(cè)控系統(tǒng)所控制的對(duì)象往往都是比較重要的,一旦發(fā)生故障,輕則影響生產(chǎn),造成產(chǎn)品質(zhì)量不合格,帶來(lái)經(jīng)濟(jì)損失;重則會(huì)造成重大的人身傷亡事故,產(chǎn)生重大的社會(huì)影響。所以,計(jì)算機(jī)測(cè)控系統(tǒng)的設(shè)計(jì)總是應(yīng)當(dāng)將系統(tǒng)的可靠性放在第一位,以保證生產(chǎn)安全、可靠和穩(wěn)定地運(yùn)行。 3.操作性能要好 一個(gè)好的計(jì)算機(jī)測(cè)控系統(tǒng)應(yīng)該人機(jī)界面好、方便操作、運(yùn)行,易于維護(hù)。 操作方便主要體現(xiàn)在操作簡(jiǎn)單、顯示畫面形象直觀,有較強(qiáng)的人機(jī)對(duì)話能力,便于掌握。在考慮操作先進(jìn)性的同時(shí),設(shè)計(jì)時(shí)要真正做到以人為本,盡可能地為使用者考慮,兼顧操作人員的習(xí)慣,降低對(duì)操作人員專業(yè)知識(shí)的要求,使他們能在較短時(shí)間內(nèi)熟悉和掌握操作方法,不要強(qiáng)求操作人員掌握計(jì)算機(jī)知識(shí)后才能操作。對(duì)于人機(jī)界面可以采用CRT、LCD或者是觸摸屏,使得操作人員可以對(duì)現(xiàn)場(chǎng)的各種情況一目了然。 維護(hù)方便主要體現(xiàn)在易于查找故障、排除故障。為此,需要在硬件和軟件設(shè)計(jì)中綜合考慮。在硬件方面,宜采用標(biāo)準(zhǔn)的功能模板式結(jié)構(gòu),并能夠帶電插拔,便于及時(shí)查找并更換故障模板;模板上應(yīng)配置工作狀態(tài)指示燈和監(jiān)測(cè)點(diǎn),便于檢修人員檢查與維護(hù)。在軟件方面,設(shè)置檢測(cè)、診斷與恢復(fù)程序,用于故障查找和處理。 從軟件角度而言,要配置查錯(cuò)程序和診斷程序,以便在故障發(fā)生時(shí)能用程序幫助查找故障發(fā)生的部位,從而縮短排除故障的時(shí)間;在硬件方面,從零部件的排列位置,部件設(shè)計(jì)的標(biāo)準(zhǔn)化以及能否帶電插拔等諸多因素都要通盤考慮,系統(tǒng)設(shè)計(jì)要盡量方便用戶,簡(jiǎn)化操作規(guī)程,如面板上的控制開(kāi)關(guān)不能太多、太復(fù)雜等。 4.實(shí)時(shí)性要強(qiáng) 計(jì)算機(jī)測(cè)控系統(tǒng)的實(shí)時(shí)性,表現(xiàn)在對(duì)內(nèi)部和外部事件能及時(shí)地響應(yīng),并作出相應(yīng)的處理,不丟失信息,不延誤操作。計(jì)算機(jī)處理的事件一般分為兩類:一類是定時(shí)事件,如數(shù)據(jù)的定時(shí)采集,運(yùn)算控制等,對(duì)此系統(tǒng)應(yīng)設(shè)置時(shí)鐘,保證定時(shí)處理;另一類是隨機(jī)事件,如事故報(bào)警等,對(duì)此系統(tǒng)應(yīng)設(shè)置中斷,并根據(jù)故障的輕重緩急預(yù)先分配中斷級(jí)別,一旦事故發(fā)生,保證優(yōu)先處理緊急故障。 5.通用性要好 通用性是指所設(shè)計(jì)出的計(jì)算機(jī)測(cè)控系統(tǒng)能根據(jù)各種不同設(shè)備和不同控制對(duì)象的控制要求,靈活擴(kuò)充、便于修改。工業(yè)控制的對(duì)象千差萬(wàn)別,而計(jì)算機(jī)測(cè)控系統(tǒng)的研制開(kāi)發(fā)又需要有一定的投資和周期。一般來(lái)說(shuō),不可能為一臺(tái)裝置或一個(gè)生產(chǎn)過(guò)程研制一臺(tái)專用計(jì)算機(jī),常常是設(shè)計(jì)或選用通用性好的計(jì)算機(jī)測(cè)控裝置靈活地構(gòu)成系統(tǒng)。當(dāng)設(shè)備和控制對(duì)象有所變更時(shí),或者再設(shè)計(jì)另外一個(gè)控制系統(tǒng)時(shí),通用性好的系統(tǒng)一般稍作更改或擴(kuò)充就可適應(yīng)。 計(jì)算機(jī)測(cè)控系統(tǒng)的通用靈活性體現(xiàn)在兩方面:一是硬件設(shè)計(jì)方面,首先應(yīng)采用標(biāo)準(zhǔn)總線結(jié)構(gòu),配置各種通用的功能模板或功能模塊,并留有一定的冗余,當(dāng)需要擴(kuò)充時(shí),只需增加相應(yīng)功能的通道或模板就能實(shí)現(xiàn)。二是軟件方面,應(yīng)采用標(biāo)準(zhǔn)模塊結(jié)構(gòu),用戶使用時(shí)盡量不進(jìn)行二次開(kāi)發(fā),只需按要求選擇各種功能 模塊,靈活地進(jìn)行控制系統(tǒng)組態(tài)。 6.經(jīng)濟(jì)效益要高 在滿足計(jì)算機(jī)測(cè)控系統(tǒng)的技術(shù)性能指標(biāo)的前提下,盡可能地降低成本,保證為用戶帶來(lái)更大的經(jīng)濟(jì)效益。經(jīng)濟(jì)效益表現(xiàn)在兩方面:一是系統(tǒng)設(shè)計(jì)的性能價(jià)格比要盡可能的高,在滿足設(shè)計(jì)要求的情況下,盡量采用物美廉價(jià)的元器件;二是投入產(chǎn)出比要盡可能的低,應(yīng)該從提高生產(chǎn)的產(chǎn)品質(zhì)量與產(chǎn)量、降低能耗、消除污染、改善勞動(dòng)條件等方面進(jìn)行綜合評(píng)估。另外,要有市場(chǎng)競(jìng)爭(zhēng)意識(shí),盡量縮短開(kāi)發(fā)設(shè)計(jì)周期,以降低整個(gè)系統(tǒng)的開(kāi)發(fā)費(fèi)用,使新產(chǎn)品盡快進(jìn)入市場(chǎng)。 7.開(kāi)發(fā)周期要短 如果計(jì)算機(jī)測(cè)控系統(tǒng)的開(kāi)發(fā)時(shí)間太長(zhǎng),會(huì)使用戶無(wú)法盡快地收回投資,影響了經(jīng)濟(jì)效益的提高;而且,由于計(jì)算機(jī)技術(shù)發(fā)展非常快,只要幾年的時(shí)間原有的技術(shù)就會(huì)變得過(guò)時(shí)。設(shè)計(jì)與開(kāi)發(fā)時(shí)間過(guò)長(zhǎng),等于縮短了系統(tǒng)的使用壽命。因此,在設(shè)計(jì)時(shí),如何盡可能地使用成熟的技術(shù),對(duì)于關(guān)鍵的元部件或軟件,不是萬(wàn)不得已就不要自行開(kāi)發(fā)。 計(jì)算機(jī)測(cè)控系統(tǒng)的設(shè)計(jì)與實(shí)施步驟 1.可行性研究階段 開(kāi)發(fā)者要根據(jù)被控對(duì)象的具體情況,按照企業(yè)的經(jīng)濟(jì)能力、未來(lái)系統(tǒng)運(yùn)行后可能產(chǎn)生的經(jīng)濟(jì)效益、企業(yè)的管理要求、人員的素質(zhì)、系統(tǒng)運(yùn)行的成本等多種要素進(jìn)行分析??尚行苑治龅慕Y(jié)果最終是要確定:使用計(jì)算機(jī)控制技術(shù)能否給企業(yè)帶來(lái)一定經(jīng)濟(jì)效益和社會(huì)效益。這里要指出的是,不顧企業(yè)的經(jīng)濟(jì)能力和技術(shù)水平而盲目地采用最先進(jìn)的設(shè)備是不可取的。 2.初步設(shè)計(jì)階段 也可以稱為總體設(shè)計(jì)。系統(tǒng)的總體設(shè)計(jì)是進(jìn)入實(shí)質(zhì)性設(shè)計(jì)階段的第一步,也是最重要和最為關(guān)鍵的一步??傮w方案的好壞會(huì)直接影響整個(gè)計(jì)算機(jī)測(cè)控系統(tǒng)的成本、性能、設(shè)計(jì)和開(kāi)發(fā)周期等。在這個(gè)階段,首先要進(jìn)行比較深入的工藝調(diào)研,對(duì)被控對(duì)象的工藝流程有一個(gè)基本的了解,包括要測(cè)控的工藝參數(shù)的大致數(shù)目和測(cè)控要求、測(cè)控的地理范圍的大小、操作的基本要求等。然后初步確定未來(lái)測(cè)控系統(tǒng)要完成的任務(wù),寫出設(shè)計(jì)任務(wù)說(shuō)明書,提出系統(tǒng)的控制方案,畫出系統(tǒng)組成的原理框圖,作為進(jìn)一步設(shè)計(jì)的基本依據(jù)。 3.詳細(xì)設(shè)計(jì)階段 詳細(xì)設(shè)計(jì)是將總體設(shè)計(jì)具體化。首先要進(jìn)行詳盡的工藝調(diào)研,然后選擇相應(yīng)的傳感器、變送器、執(zhí)行器、I/O通道裝置以及進(jìn)行計(jì)算機(jī)系統(tǒng)的硬件和軟件的設(shè)計(jì)。對(duì)于不同類型的設(shè)計(jì)任務(wù),則要完成不同類型的工作。如果是小型的計(jì)算機(jī)測(cè)控系統(tǒng),硬件和軟件都是自己設(shè)計(jì)和開(kāi)發(fā);此時(shí),硬件的設(shè)計(jì)包括電氣原理圖的繪制、元器件的選擇、印刷線路板的繪制與制作;軟件的設(shè)計(jì)則包括工藝流程圖的繪制、程序流程圖的繪制、將一個(gè)個(gè)模塊編寫成對(duì)應(yīng)的程序等。 4.系統(tǒng)實(shí)施階段 要完成各個(gè)元器件的制作、購(gòu)買、安裝;進(jìn)行軟件的安裝和組態(tài)以及各個(gè)子系統(tǒng)之間的連接等工作。 5.系統(tǒng)的調(diào)試(測(cè)試)階段 通過(guò)整機(jī)的調(diào)試,發(fā)現(xiàn)問(wèn)題,及時(shí)修改,例如檢查各個(gè)元部件安裝是否正確,并對(duì)其特性進(jìn)行檢查或測(cè)試;檢驗(yàn)系統(tǒng)的抗干擾能力等。調(diào)試成功后,還要進(jìn)行考機(jī)運(yùn)行,其目的是通過(guò)連續(xù)不停機(jī)的運(yùn)行來(lái)暴露問(wèn)題和解決問(wèn)題。 6.系統(tǒng)運(yùn)行階段 該階段占據(jù)了系統(tǒng)生命周期的大部分時(shí)間,系統(tǒng)的價(jià)值也是在這一階段中得到體現(xiàn)。在這一階段應(yīng)該有高素質(zhì)的使用人員,并且嚴(yán)格按照章程進(jìn)行操作,盡可能地減少故障的發(fā)生。 計(jì)算機(jī)測(cè)控系統(tǒng)的總體方案設(shè)計(jì) 確定計(jì)算機(jī)測(cè)控系統(tǒng)總體方案是進(jìn)行系統(tǒng)設(shè)計(jì)的關(guān)鍵而重要的一步??傮w方案的好壞,直接影響到整個(gè)測(cè)控系統(tǒng)的成本、性能、實(shí)施細(xì)則和開(kāi)發(fā)周期等??傮w方案的設(shè)計(jì)主要是根據(jù)被控對(duì)象的工藝要求確定。為了設(shè)計(jì)出一個(gè)切實(shí)可行的總體方案與實(shí)施方案,設(shè)計(jì)者必須深入了解生產(chǎn)過(guò)程,分析工藝流程及工作環(huán)境,熟悉工藝要求,確定系統(tǒng)的測(cè)控目標(biāo)與任務(wù)。盡管被控對(duì)象多種多樣,工藝要求各不相同,在總體方案設(shè)計(jì)中還是有一定共性。 1.工藝調(diào)研 1)調(diào)研的任務(wù) 2)形成調(diào)研報(bào)告和初步方案 3)形成總體設(shè)計(jì)技術(shù)報(bào)告 2.硬件總體方案設(shè)計(jì) 1)確定系統(tǒng)的結(jié)構(gòu)和類型 2)確定系統(tǒng)的構(gòu)成方式 3)現(xiàn)場(chǎng)設(shè)備選擇 4)其他方面的考慮 3.軟件總體方案設(shè)計(jì) 軟件總體方案設(shè)計(jì)的內(nèi)容主要是確定軟件平臺(tái)、軟件結(jié)構(gòu),任務(wù)分解,建立系統(tǒng)的數(shù)學(xué)模型、控制策略和控制算法等。在軟件設(shè)計(jì)也應(yīng)采用結(jié)構(gòu)化、模塊化、通用化的設(shè)計(jì)方法,自上而下或自下而上地畫出軟件結(jié)構(gòu)方框圖,逐級(jí)細(xì)化,直到能清楚地表達(dá)出控制系統(tǒng)所要解決的問(wèn)題為止。 在確定系統(tǒng)總體方案時(shí),對(duì)系統(tǒng)的軟件、硬件功能的劃分要做統(tǒng)一的綜合考慮,因?yàn)橐恍┛刂乒δ芗饶苡捎布?shí)現(xiàn),也可用軟件實(shí)現(xiàn),如計(jì)數(shù)、邏輯控制等。 采用何種方式比較合適,應(yīng)根據(jù)實(shí)時(shí)性要求及整個(gè)系統(tǒng)的性能價(jià)格比綜合比較后確定。 5.系統(tǒng)總體方案 系統(tǒng)總體方案是硬件總體方案和軟件總體方案的組合體。 系統(tǒng)的總體方案反映了整個(gè)系統(tǒng)的綜合情況,要從正確性、可行性、先進(jìn)性、可用性和經(jīng)濟(jì)性等角度來(lái)評(píng)價(jià)系統(tǒng)的總體方案。 作為總體方案的一部分,設(shè)計(jì)者還應(yīng)提供對(duì)各子系統(tǒng)功能檢測(cè)的一些測(cè)試依據(jù)或標(biāo)準(zhǔn)。對(duì)于較大的系統(tǒng),還要編制專門的測(cè)試規(guī)范。 東南大學(xué) 《數(shù)字系統(tǒng)課程設(shè)計(jì)》 設(shè)計(jì)報(bào)告 項(xiàng)目名稱: 交通燈控制器 姓 名: 學(xué) 號(hào): 專 業(yè): 實(shí) 驗(yàn) 室: 電工電子實(shí)驗(yàn)中心 組 別: 無(wú) 同組人員: 無(wú) 設(shè)計(jì)時(shí)間: 2016 年月 26 日 —— 2016 年 9 月 20日 評(píng)定成績(jī): 審閱教師: 目錄 一.設(shè)計(jì)方案及論證……………………………………………… 3 二.模塊設(shè)計(jì)……………………………………………………… 5 三.總體設(shè)計(jì)與仿真……………………………………………… 10 四.總結(jié)…………………………………………………………… 12 一.設(shè)計(jì)方案及論證 1.設(shè)計(jì)使用環(huán)境 本交通燈控制系統(tǒng)設(shè)計(jì)利用Verilog HDL語(yǔ)言進(jìn)行設(shè)計(jì)編程,利用Cyclone EP1C6Q240C8芯片和一些外圍器件組成硬件電路,利用Quartus II軟件將編寫好的程序進(jìn)行編譯和仿真,并將調(diào)試完成的程序下載到Cyclone EP1C6Q240C8芯片上,通過(guò)觀測(cè)電路板上的紅綠信號(hào)燈以及數(shù)碼管顯示來(lái)分析系統(tǒng)的性能。 2.設(shè)計(jì)任務(wù)分析 主干道與鄉(xiāng)村公路十字交叉路口在現(xiàn)代化的農(nóng)村星羅棋布,為確保車輛安全、迅速地通過(guò),在交叉路口的每個(gè)入口處設(shè)置了紅、綠、黃三色信號(hào)燈。紅燈禁止通行;綠燈允許通行;黃燈亮則給行駛中的車輛有時(shí)間行駛到禁行線之外。主干道和鄉(xiāng)村公路都安裝了傳感器,檢測(cè)車輛通行情況,用于主干道的優(yōu)先權(quán)控制。 設(shè)計(jì)要求: 1)當(dāng)鄉(xiāng)村公路無(wú)車時(shí),始終保持鄉(xiāng)村公路紅燈亮,主干道綠燈亮。2)當(dāng)鄉(xiāng)村公路有車時(shí),而主干道通車時(shí)間已經(jīng)超過(guò)它的最短通車時(shí)間時(shí),禁止主干道通行,讓鄉(xiāng)村公路通行。主干道最短通車時(shí)間為25s。 3)當(dāng)鄉(xiāng)村公路和主干道都有車時(shí),按主干道通車25s,鄉(xiāng)村公路通車16s交替進(jìn)行。4)不論主干道情況如何,鄉(xiāng)村公路通車最長(zhǎng)時(shí)間為16s。 5)在每次由綠燈亮變成紅燈亮的轉(zhuǎn)換過(guò)程中間,要亮5s時(shí)間的黃燈作為過(guò)渡。6)用開(kāi)關(guān)代替?zhèn)鞲衅髯鳛闄z測(cè)車輛是否到來(lái)的信號(hào)。用紅、綠、黃三種顏色的發(fā)光二極管作交通燈。7)數(shù)碼管倒計(jì)時(shí)顯示 3.測(cè)量控制原理 1)通過(guò)乒乓開(kāi)關(guān)來(lái)控制FPGA輸入信號(hào)的電平,從而控制交通燈工作。 2)利用FPGA輸出的電平信號(hào)去驅(qū)動(dòng)靜態(tài)數(shù)碼管及三色小燈來(lái)模擬交通燈。 4.頂層設(shè)計(jì)方案框圖及說(shuō)明 1)交通燈控制器框圖 C表示鄉(xiāng)村道路是否有車到來(lái),1表示有,0表示無(wú);SET用來(lái)控制系統(tǒng)的開(kāi)始及停止;RST是復(fù)位信號(hào),高電平有效,當(dāng)RST為1時(shí),恢復(fù)到初始設(shè)置;CLK是外加時(shí)鐘信號(hào);MR、MY、MG分別表示主干道的紅燈、黃燈和綠燈;CR、CY、CG分別表示鄉(xiāng)村道路的紅燈、黃燈和綠燈,1表示亮,0表示滅。 2)流程圖 MGCR表示主干道綠燈,鄉(xiāng)村道路紅燈;MYCR表示主干道黃燈,鄉(xiāng)村道路紅燈;MRCG表示主干道紅燈,鄉(xiāng)村道路綠燈;MRCY表示主干道紅燈,鄉(xiāng)村道路黃燈;T0=1表示主干道最短通車時(shí)間到,T1=1表示5秒黃燈時(shí)間到,T2=1表示鄉(xiāng)村道路最長(zhǎng)通車時(shí)間到。二.模塊設(shè)計(jì) 1.模塊功能及端口說(shuō)明 1)分頻模塊 輸入端為clk_in,即實(shí)驗(yàn)箱自帶脈沖輸入信號(hào),輸出端為clk,即想得到的頻率。2)主控制模塊 輸入端為CLK、RST、C。其中c為鄉(xiāng)村道路開(kāi)關(guān),為1時(shí)表示鄉(xiāng)村道路有車;rst為初始化開(kāi)關(guān),為1時(shí)表示初始化為主干道綠燈,鄉(xiāng)村道路紅燈的狀態(tài)。 輸出端為MG、MY、MR、CG、CY、CR分別表示主干道和鄉(xiāng)村道路的紅黃綠燈,與LED燈相連;mh、ml、ch、cl分別表示主干道和鄉(xiāng)村道路倒計(jì)時(shí)顯示的高低位,與數(shù)碼管相連。 3)數(shù)碼管顯示模塊 輸入端為clk和count,輸出端為L(zhǎng)ED。 2.主要功能的設(shè)計(jì)方法 1)分頻模塊 試驗(yàn)箱可選晶振有2M和50M,選擇使用2M后,設(shè)置分頻系數(shù)為2000000,每計(jì)數(shù)到1000000,則輸出取反,最終可得到1HZ的時(shí)鐘信號(hào)。 2)主控制模塊 設(shè)置兩個(gè)外部控制條件:初始化(RST);鄉(xiāng)村干道是否有車(C); 設(shè)置一個(gè)內(nèi)部計(jì)數(shù)變量:NUM,通過(guò)相關(guān)運(yùn)算取余取整得到數(shù)碼管顯示高低位; 通過(guò)有限狀態(tài)機(jī)實(shí)現(xiàn)四個(gè)狀態(tài)的循環(huán)切換。 3.Verilog設(shè)計(jì)程序及說(shuō)明 1)分頻模塊 module fre(clk_in,clk);input clk_in;output clk;reg clk;reg [31:0]k;always @(negedge clk_in)begin if(k>=1000000)//1000000分頻 begin clk<=~clk;//取反 k<=0;end else k<=k+1;//計(jì)數(shù) end endmodule 2)主控制模塊 module traffic(CLK,RST,C,MG,MY,MR,CG,CY,CR,mh,ml,ch,cl);input CLK,RST,C;output [3:0]mh,ml,ch,cl;output MG,MY,MR,CG,CY,CR;reg [3:0] mh,ml,ch,cl;reg MG,MY,MR,CG,CY,CR;reg [31:0] COUNT;reg [5:0]state;parameter s1=6'b100001,s2=6'b010001,s3=6'b001100,s4=6'b001010;always @(posedge CLK)if(RST)//初始化 begin state = s1;//最初狀態(tài),主通行,鄉(xiāng)村不通行 MG=1;MY=0;MR=0;CG=0;CY=0;CR=1;COUNT = 0; mh=2;//主干道綠燈25s,鄉(xiāng)村道路紅燈5s ml=5; ch=3; cl=0; end else case(state)s1: begin COUNT = COUNT+1; if((COUNT>=25)&&(C==1))//25s已計(jì)完且鄉(xiāng)村道路來(lái)車,跳轉(zhuǎn)到s2狀態(tài) begin state = s2;//主干道黃燈,鄉(xiāng)村道路紅燈 MG=0;MY=1;MR=0;CG=0;CY=0;CR=1;COUNT = 0;mh=0;ml=5;ch=0;cl=5;end else if(COUNT<25)//25s沒(méi)有計(jì)完,保持s1狀態(tài) begin state = s1; MG=1;MY=0;MR=0;CG=0;CY=0;CR=1; mh=(25-COUNT)/10;//取整取余換算,倒計(jì)時(shí)顯示 ml=(25-COUNT)%10;ch=(30-COUNT)/10;cl=(30-COUNT)%10;end else if(COUNT >= 25 && C == 0)//25s計(jì)完,鄉(xiāng)村道路仍然沒(méi)有車 begin state = s1;//保持s1 MG=1;MY=0;MR=0;CG=0;CY=0;CR=1;mh=0;//數(shù)碼管顯示0 ml=0; ch=0; cl=0; end end s2: begin COUNT = COUNT+1; if(COUNT==5)//5s黃燈已計(jì)完 begin state = s3;//主干道紅燈,鄉(xiāng)村道路綠燈 MG=0;MY=0;MR=1;CG=1;CY=0;CR=0;COUNT = 0; mh=2;//主干道21s紅燈,鄉(xiāng)村道路16s綠燈 ml=1; ch=1; cl=6; end else begin state = s2;//5s黃燈未計(jì)完時(shí),保持s2狀態(tài) MG=0;MY=1;MR=0;CG=0;CY=0;CR=1; mh=0; ml=5-COUNT; ch=0; cl=5-COUNT; end end s3: begin COUNT = COUNT+1; if(((COUNT>=16)&&(C==1))||(C==0))//鄉(xiāng)村道路16s通行時(shí)間已結(jié)束,不管有無(wú)來(lái)車,均跳轉(zhuǎn)s4狀態(tài) begin state = s4;//主干道紅燈,鄉(xiāng)村道路黃燈 MG=0;MY=0;MR=1;CG=0;CY=1;CR=0; COUNT = 0; mh=0; ml=5; ch=0; cl=5; end else begin state = s3;//16s未結(jié)束,仍保持s3狀態(tài) MG=0;MY=0;MR=1;CG=1;CY=0;CR=0; mh=(21-COUNT)/10; ml=(21-COUNT)%10; ch=(16-COUNT)/10; cl=(16-COUNT)%10; end end s4: begin COUNT = COUNT+1;if(COUNT==5)//5s黃燈時(shí)間結(jié)束 begin state = s1;//回到s1狀態(tài) MG=1;MY=0;MR=0;CG=0;CY=0;CR=1; COUNT = 0; mh=2; ml=5; ch=3; cl=0; end else begin state = s4;//否則保持s4狀態(tài) MG=0;MY=0;MR=1;CG=0;CY=1;CR=0; mh=0; ml=5-COUNT; ch=0; cl=5-COUNT; end end default: begin state = s1; MG=1;MY=0;MR=0;CG=0;CY=0;CR=1; COUNT = 0; mh=0; ml=5-COUNT; ch=0; cl=5-COUNT; end endcase endmodule 3)數(shù)碼管顯示模塊 module led(clk,count,LED);input clk;input [3:0]count;output [7:0]LED;reg [7:0]LED;always @(posedge clk)begin case(count) 4'b0000:LED=8'b00000011; 4'b0001:LED=8'b10011111; 4'b0010:LED=8'b00100101; 4'b0011:LED=8'b00001101; 4'b0100:LED=8'b10011001; 4'b0101:LED=8'b01001001; 4'b0110:LED=8'b01000001; 4'b0111:LED=8'b00011111; 4'b1000:LED=8'b00000001; 4'b1001:LED=8'b00001001; default:LED=8'b00000001;endcase end endmodule 4.仿真圖及說(shuō)明 (1)分頻模塊 由于實(shí)際應(yīng)用中分頻較大,仿真時(shí)為方便觀察,將分頻頻數(shù)設(shè)置為20。輸入為clk_in,周期為10ns;輸出為clk,其周期為200ns,與理論值相符。(2)主控制模塊 與總體仿真相同,在此不再贅述。 三.總體設(shè)計(jì)與仿真 1.頂層設(shè)計(jì)圖及說(shuō)明 fre為分頻模塊,traffic為主控制模塊,led為數(shù)碼管顯示模塊。輸入端有clk_in、c和rst,輸出端有MG、MY、MR、CG、CY、CR和mh、ml、ch、cl。 2.仿真圖及說(shuō)明 輸入有:C、CLK和RST 輸出有:CG、CR、CY、MG、MR、MY、ch、cl、mh和ml C為鄉(xiāng)村道路是否來(lái)車,1表示來(lái)車,0表示無(wú)車;CLK為時(shí)鐘信號(hào);RST為初始化功能,1有效;CG、CR、CY、MG、MR、MY分別表示鄉(xiāng)村道路綠燈、紅燈、黃燈,主干道綠燈、紅燈、黃燈;ch、cl、mh、ml分別表示鄉(xiāng)村道路和主干道紅綠燈倒數(shù)顯示高低位。 3.實(shí)驗(yàn)結(jié)果 (1)鄉(xiāng)村道路無(wú)車時(shí) 鄉(xiāng)村道路無(wú)車時(shí),主干道25s倒數(shù),鄉(xiāng)村道路30s倒數(shù)結(jié)束后,保持0,且主干道綠燈亮,鄉(xiāng)村道路紅燈亮。(2)鄉(xiāng)村道路有車時(shí) 若鄉(xiāng)村道路一直有車,主干道25s(即S1狀態(tài))倒計(jì)時(shí)結(jié)束后,主干道切換黃燈,鄉(xiāng)村道路保持紅燈(即S2狀態(tài));5s黃燈倒計(jì)時(shí)結(jié)束后,主干道切換紅燈,時(shí)間21s,鄉(xiāng)村道路切換綠燈,時(shí)間16s(即S3狀態(tài));鄉(xiāng)村道路16s綠燈結(jié)束后,切換黃燈,主干道保持紅燈(即S4狀態(tài)),5s黃燈結(jié)束后,回到S1狀態(tài),即主干道25s綠燈,鄉(xiāng)村道路30s紅燈,若一直有車,則循環(huán)進(jìn)行。 四.總結(jié) 1.實(shí)驗(yàn)結(jié)果分析 (1)輸入與輸出 兩個(gè)開(kāi)關(guān):一個(gè)初始化控制開(kāi)關(guān),一個(gè)鄉(xiāng)村道路開(kāi)關(guān)。初始化開(kāi)關(guān)打開(kāi)后復(fù)位,交通燈開(kāi)始工作,鄉(xiāng)村道路打開(kāi)表示鄉(xiāng)村公路上有車。 輸出:四個(gè)數(shù)碼管,兩個(gè)顯示主干道交通燈時(shí)間,兩個(gè)顯示鄉(xiāng)村道路時(shí)間;六個(gè)led燈,兩紅兩黃兩綠分別表示主干道和鄉(xiāng)村公路的紅黃綠燈。(2)運(yùn)行過(guò)程 1)初始狀態(tài)(S1) 左側(cè)為主干道倒計(jì)時(shí),右側(cè)為鄉(xiāng)村道路倒計(jì)時(shí);主干道綠燈亮,鄉(xiāng)村道路紅燈亮。K1為初始化按鍵,K2為鄉(xiāng)村道路有無(wú)來(lái)車。 2)主干道25s綠燈結(jié)束后切換黃燈,鄉(xiāng)村道路紅燈(S2) 3)主干道5s黃燈結(jié)束,切換紅燈21s,鄉(xiāng)村道路切換綠燈16s(S3) 4)鄉(xiāng)村道路16s綠燈結(jié)束,切換黃燈,主干道紅燈(S4) 5s黃燈倒計(jì)時(shí)結(jié)束,回到S1狀態(tài),若一直有車,則循環(huán)S1-S2-S3-S4-S1。 2.問(wèn)題解決方法 問(wèn)題1:數(shù)碼管顯示與紅綠燈切換不同時(shí)。 解決方法:紅綠燈輸出后面增加一延時(shí)模塊,延時(shí)一個(gè)CLK,使其與數(shù)碼管顯示同步。問(wèn)題2:理解錯(cuò)題意,在S3狀態(tài)(即主干道紅燈,鄉(xiāng)村道路綠燈)時(shí),此時(shí)若鄉(xiāng)村道 路無(wú)車通過(guò),應(yīng)立即切換為S4狀態(tài)(即主干道紅燈,鄉(xiāng)村道路黃燈),而不是等當(dāng)前計(jì)數(shù)結(jié)束再切換。 解決方法:將代碼修改為if(((COUNT>=16)&&(C==1))||(C==0)),修改后符合要求,解決了問(wèn)題。 3.心得體會(huì) 通過(guò)此次系統(tǒng)設(shè)計(jì),我對(duì)verilog HDL語(yǔ)言有了初步了解,并對(duì)利用quartus來(lái)進(jìn)行系統(tǒng)設(shè)計(jì)有了更加深入的理解,操作也更加熟練。在設(shè)計(jì)過(guò)程中應(yīng)該先設(shè)計(jì)好總體架構(gòu),再進(jìn)行模塊的具體設(shè)計(jì),通過(guò)分析每個(gè)模塊要實(shí)現(xiàn)的功能來(lái)寫代碼,并注意編寫注釋,便于以后的理解修改。編譯時(shí)要注意設(shè)置頂層文件,先進(jìn)行仿真觀察結(jié)果是否正確,對(duì)代碼進(jìn)行修改,仿真結(jié)果正確后再下載到硬件,測(cè)試系統(tǒng)功能。 參考書目: [1] 夏宇聞,《Verilog數(shù)字系統(tǒng)設(shè)計(jì)教程》,北京,北京航空航天大學(xué)出版社,2013年 [2] 王金明,《數(shù)字系統(tǒng)設(shè)計(jì)與Verilog HDL》,北京,電子工業(yè)出版社,2011年第四篇:數(shù)字控制器工程實(shí)現(xiàn)
第五篇:數(shù)字系統(tǒng)課程設(shè)計(jì)交通燈控制器