


下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、. v論文一:基于 PWM 技術(shù)的直流電機控制摘摘 要:要: 在運動控制系統(tǒng)中,電機轉(zhuǎn)速控制占有至關(guān)重要的作用,其控制算法和手段有很多,模擬 PID 控制是最早發(fā)展起來的控制策略之一,長期以來形成了典型的結(jié)構(gòu),并且參數(shù)整定方便,能夠滿足一般控制的要求,但由于在模擬 PID 控制系統(tǒng)中,參數(shù)一旦整定好后,在整個控制過程中都是固定不變的,而在實際中,由于現(xiàn)場的系統(tǒng)參數(shù)、溫度等條件發(fā)生變化,使系統(tǒng)很難達(dá)到最佳的控制效果,因此采用模擬 PID 控制器難以獲得滿意的控制效果。隨著計算機技術(shù)與智能控制理論的發(fā)展,數(shù)字 PID 技術(shù)漸漸發(fā)展起來,它不僅能夠?qū)崿F(xiàn)模擬 PID 所完成的控制任務(wù),而且具備控制算法
2、靈活、可靠性高等優(yōu)點,應(yīng)用面越來越廣。關(guān)鍵詞:數(shù)字 PID;PWM 脈沖;占空比;無靜差調(diào)節(jié) The control of the DC motor based on PWM modulation techniqueAbstractAbstract: In the motion control system,the control of electromotors rotate speed is of great importance,there are a lot of speed control arithmetic and methods ,the analog PID control
3、is one of the earliest developed control policies which has formed typical structure ,its parametric setting is convenient and its easy to meet normal controls demand,but as the whole control process is fixed once the parameter has been set while practically the changes of those conditions like the
4、system parameters and temperature of the environment prohibit the system from reaching its best control effect,so the analog PID controller barely has satisfied effect.With the development of computer technology and intelligent control theory,the digital PID technology is thriving which can achieve
5、the analog PIDs control tasks and consists of many . vadvantages like flexible control arithmetic and high reliability,it is widely used now. Keywords:digital PID;PWM;dutyfactor;astatic modulation目前,PID 控制及其控制器或智能 PID 控制器已經(jīng)很多,產(chǎn)品已在工程實際中得到了廣泛的應(yīng)用。本次設(shè)計主要是利用 PID 控制技術(shù)對直流電機轉(zhuǎn)速的控制。其設(shè)計思路為:以 AT89S51 單片機為控制核心,產(chǎn)
6、生占空比受 PID 算法控制的 PWM 脈沖實現(xiàn)對直流電機轉(zhuǎn)速的控制。同時利用光電傳感器將電機速度轉(zhuǎn)換成脈沖頻率反饋到單片機中,構(gòu)成轉(zhuǎn)速閉環(huán)控制系統(tǒng),達(dá)到轉(zhuǎn)速無靜差調(diào)節(jié)的目的。在系統(tǒng)中采12864LCD 顯示器作為顯示部件,通過 44 鍵盤設(shè)置 P、I、D、V 四個參數(shù)和正反轉(zhuǎn)控制,啟動后通過顯示部件了解電機當(dāng)前的轉(zhuǎn)速和運行時間。因此該系統(tǒng)在硬件方面包括:電源模塊、電機驅(qū)動模塊、控制模塊、速度檢測模塊、人機交互模塊。軟件部分采用 C 語言進(jìn)行程序設(shè)計,其優(yōu)點為:可移植性強、算法容易實現(xiàn)、修改及調(diào)試方便、易讀等。1PID 算法及 PWM 控制技術(shù)簡介1.1 PID 算法控制算法是微機化控制系統(tǒng)的
7、一個重要組成部分,整個系統(tǒng)的控制功能主要由控制算法來實現(xiàn)。目前提出的控制算法有很多。根據(jù)偏差的比例(P)、積分(I)、微分(D)進(jìn)行的控制,稱為 PID 控制。實際經(jīng)驗和理論分析都表明,PID 控制能夠滿足相當(dāng)多工業(yè)對象的控制要求,至今仍是一種應(yīng)用最為廣泛的控制算法之一。下面分別介紹模擬 PID、數(shù)字 PID及其參數(shù)整定方法。1.2 數(shù)字 PID在 DDC 系統(tǒng)中,用計算機取代了模擬器件,控制規(guī)律的實現(xiàn)是由計算機軟件來完成的。因此,系統(tǒng)中數(shù)字控制的設(shè)計,實際上是計算機算法的設(shè)計。. v)()(neKnuPp由于計算機只能識別數(shù)字量,不能對連續(xù)的控制算式直接進(jìn)行運算,故在計算機控制系統(tǒng)中,首先必
8、須對控制規(guī)律進(jìn)行離散化的算法設(shè)計。為將模擬 PID 控制規(guī)律按式(1.2)離散化,我們把圖 1.1 中)(tr、)(te、)( c) t (tu、 n 次采樣的數(shù)據(jù)分別用)()()()(ncnunenr、表示,于是式(1.1)變?yōu)?:)(ne=)(nr)(nc (1.1)當(dāng)采樣周期 T 很小時dt可以用 T 近似代替,)(tde可用) 1()(nene近似代替,“積分”用“求和”近似代替,即可作如下近似Tnenedttde)1()()( (1.2)tniTiedtte01)()( (1.3)這樣,式(1.2)便可離散化以下差分方程01)1()()()()(uneneTTneTTneKnuniD
9、IP(1.4)上式中0u是偏差為零時的初值,上式中的第一項起比例控制作用,稱為比例(P)項)(nup,即 (1.5)第二項起積分控制作用,稱為積分(I)項)(nUI即niIPIieTTKnu1)()( (1.6)第三項起微分控制作用,稱為微分(D)項)(nUd即)1()()(neneTTKnuDPD (1.7)這三種作用可單獨使用(微分作用一般不單獨使用)或合并使用,常用的組合有:. vIPITTKK0)2()1(2)()()1()(uneneneKneKneneKDIP)(nu011)2() 1()() 1() 1(uneneTTneTTneKnuniDIP0)()()()(unununun
10、uDIP0)()()(unununuDP0)()()(unununuIP0)()(ununuPP 控制: (1.8)PI 控制: (1.9) PD 控制: (1.10)PID 控制: (1.11) 式(1.7)的輸出量)(nu為全量輸出,它對于被控對象的執(zhí)行機構(gòu)每次采樣時刻應(yīng)達(dá)到的位置。因此,式(1.7)又稱為位置型 PID 算式。 由(1.7)可看出,位置型控制算式不夠方便,這是因為要累加偏差)(te,不僅要占用較多的存儲單元,而且不便于編寫程序,為此對式(1.7)進(jìn)行改進(jìn)。根據(jù)式(1.7)不難看出 u(n-1)的表達(dá)式,即(1.12)將式(1.7)和式(1.15)相減,即得數(shù)字 PID 增
11、量型控制算式為 (1.13) 從上式可得數(shù)字 PID 位置型控制算式為 (1.14)式中: pk稱為比例增益; 稱為積分系數(shù);. vTTKKDPD 稱為微分系數(shù)1。數(shù)字 PID 位置型示意圖和數(shù)字 PID 增量型示意圖分別如圖 1 和 2 所示:圖 1 數(shù)字 PID 位置型控制示意圖圖 2 數(shù)字 PID 增量型控制示意圖1.3 數(shù)字 PID 參數(shù)整定方法如何選擇控制算法的參數(shù),要根據(jù)具體過程的要求來考慮。一般來說,要求被控過程是穩(wěn)定的,能迅速和準(zhǔn)確地跟蹤給定值的變化,超調(diào)量小,在不同干擾下系統(tǒng)輸出應(yīng)能保持在給定值,操作變量不宜過大,在系統(tǒng)和環(huán)境參數(shù)發(fā)生變化時控制應(yīng)保持穩(wěn)定。顯然,要同時滿足上述
12、各項要求是很困難的,必須根據(jù)具體過程的要求,滿足主要方面,并兼顧其它方面。PID 調(diào)節(jié)器的參數(shù)整定方法有很多,但可歸結(jié)為理論計算法和工程整定法兩種。用理論計算法設(shè)計調(diào)節(jié)器的前提是能獲得被控對象準(zhǔn)確的數(shù)學(xué)模型,這在工業(yè)過程中一般較難做到。因此,實際用得較多的還是工程整定法。這種方法最大優(yōu)點就是整定參數(shù)時不依賴對象的數(shù)學(xué)模型,簡單易行。當(dāng)然,這是一種近似的方法,有時可能略嫌粗糙,但相當(dāng)適用,可解決一般實際問題。1.4 直流電機的 PWM 控制技術(shù)根據(jù) PWM 控制的基本原理可知,一段時間內(nèi)加在慣性負(fù)載兩端的PWM 脈沖與相等時間內(nèi)沖量相等的直流電加在負(fù)載上的電壓等效,那么如果在短時間 T 內(nèi)脈沖寬
13、度為0t,幅值為 U,由圖 3 可求得此時間內(nèi)脈沖的等效直流電壓為:. vUTUtnTUntU000UU0鍵盤模塊控制器模塊顯示模塊電機驅(qū)動模塊直流電機速度檢測模塊PWM脈沖U(t)0tTt0U2T2t03T3t04t0nT (n+1)t0U(t)0tTt0U ,若令 ,即為占空比,則上式可化為: (U 為脈沖幅值) (1.15) 圖 3 PWM 脈沖若 PWM 脈沖為如圖 4 所示周期性矩形脈沖,那么與此脈沖等效的直流電壓的計算方法與上述相同,即 (為矩形脈沖占空比) (1.16) 圖 4 周期性 PWM 矩形脈沖由式 1.20 可知,要改變等效直流電壓的大小,可以通過改變脈沖幅值 U 和占
14、空比來實現(xiàn),因為在實際系統(tǒng)設(shè)計中脈沖幅值一般是恒定的,所以通常通過控制占空比的大小實現(xiàn)等效直流電壓在 0U 之間任意調(diào)節(jié),從而達(dá)到利用 PWM 控制技術(shù)實現(xiàn)對直流電機轉(zhuǎn)速進(jìn)行調(diào)節(jié)的目的。2 設(shè)計方案與論證2.1 系統(tǒng)設(shè)計方案根據(jù)系統(tǒng)設(shè)計的任務(wù)和要求,設(shè)計系統(tǒng)方框圖如圖 5 所示。圖中控制器模塊為系統(tǒng)的核心部件,鍵盤和顯示器用來實現(xiàn)人機交互功能,其中通過鍵盤將需要設(shè)置的參數(shù)和狀態(tài)輸入到單片機中,并且通過控制器顯示到顯示器上。在運行過程中控制器產(chǎn)生 PWM 脈沖送到電機驅(qū)動電路中,經(jīng)過放大后控制直流電機轉(zhuǎn)速,同時利用速度檢測模塊將當(dāng)前轉(zhuǎn)速反饋到控制器中,控制器經(jīng)過數(shù)字 PID 運算后改變 PWM
15、脈沖的占空比,實現(xiàn)電機轉(zhuǎn)速實時控制的目的。圖 5 系統(tǒng)方案框圖 TUtU00Tt0. v3 單元電路設(shè)計3.13.1 硬件資源分配本系統(tǒng)電路連接及硬件資源分配見圖 6 所示。采用 AT89S51 單片機作為核心器件,轉(zhuǎn)速檢測模塊作為電機轉(zhuǎn)速測量裝置,通過 AT89S51 的P3.3 口將電脈沖信號送入單片機處理,L298 作為直流電機的驅(qū)動模塊,利用 12864LCD 顯示器和 44 鍵盤作為人機接口。圖 6 系統(tǒng)電路連接及硬件資源分配圖3.2 電機速度采集電路設(shè)計 在本系統(tǒng)中由于要將電機本次采樣的速度與上次采樣的速度進(jìn)行比較,通過偏差進(jìn)行 PID 運算,因此速度采集電路是整個系統(tǒng)不可缺少的部
16、分。本次設(shè)計中應(yīng)用了比較常見的光電測速方法來實現(xiàn),其具體做法是將電機軸上固定一圓盤,且其邊緣上有 N 個等分凹槽如圖 7(a)所示,在圓盤的一側(cè)固定一個發(fā)光二極管,其位置對準(zhǔn)凹槽處,在另一側(cè)和發(fā)光二極光平行的位置上固定一光敏三極管,如果電動機轉(zhuǎn)到凹槽處時,發(fā)光二極管通過縫隙將光照射到光敏三極管上,三極管導(dǎo)通,反之三極管截止,電路如圖 7(b)所示,從圖中可以得出電機每轉(zhuǎn)一圈在 P3.3 的輸出端就會產(chǎn)生 N 個低電平。這樣就可根據(jù)低電平的數(shù)量來計算電機此時轉(zhuǎn)速了。例如當(dāng)電機以一定的轉(zhuǎn)速運行時,P3.3 將輸出如圖 8 所示的脈沖,若知道一段時間 t 內(nèi)傳感器輸出的低脈沖數(shù)為 n,則電機轉(zhuǎn)速 v
17、=r/s。 (a) (b)圖 7 電機速度采集方案 圖 8 傳感器輸出脈沖波形4 軟件設(shè)計4.1PID 算法. v本系統(tǒng)設(shè)計的核心算法為 PID 算法,它根據(jù)本次采樣的數(shù)據(jù)與設(shè)定值進(jìn)行比較得出偏差)(ne,對偏差進(jìn)行 P、I、D 運算最終利用運算結(jié)果控制 PWM 脈沖的占空比來實現(xiàn)對加在電機兩端電壓的調(diào)節(jié)10,進(jìn)而控制電機轉(zhuǎn)速。其運算公式為:因此要想實現(xiàn) PID 控制在單片機就必須存在上述算法,其程序流程如圖 9 所示。 4.2 程序流程主流程圖在一個完整的系統(tǒng)中,只有硬件部分是不能完成相應(yīng)設(shè)計任務(wù)的,所以在該系統(tǒng)中軟件部分是非常重要的,按照要求和系統(tǒng)運行過程設(shè)計出主程序流程如圖 10 所示圖
18、 10 主程序流程5 系統(tǒng)測試與分析為了確定系統(tǒng)與設(shè)計要求的符合程度,需要進(jìn)行系統(tǒng)測試與分析,但是由于試驗調(diào)節(jié)的制約和時間的限制,不能完成此次制作,只能通過軟件仿真進(jìn)行驗證,在這里使用的是英國的 Proteus 軟件進(jìn)行測試,對于電機速度采集可根據(jù)設(shè)定的電機速度計算出 P3.3 口輸入的方波脈沖的頻率和占空比,來改變等效直流電壓的大小,給 P3.3 輸入此脈沖來實現(xiàn)電機速度采集。并允許誤差存在。下面以 PID 調(diào)節(jié)器為例,具體說明經(jīng)驗法的整定步驟:讓調(diào)節(jié)器參數(shù)積分系數(shù)Ik=0,實際微分系數(shù)Dk=0,控制系統(tǒng)投入閉環(huán)運行,由小到大改變比例系數(shù)pk,讓擾動信號作階躍變化,觀察控制過程,直到獲得滿意
19、的控制過程為止。取比例系數(shù)pk為當(dāng)前的值乘以 0.83,由小到大增加積分系數(shù)Ik,同樣讓擾動信號作階躍變化,直至求得滿意的控制過程。. v積分系數(shù)Ik保持不變,改變比例系數(shù)pk,觀察控制過程有無改善,如有改善則繼續(xù)調(diào)整,直到滿意為止。否則,將原比例系數(shù)pk增大一些,再調(diào)整積分系數(shù)Ik,力求改善控制過程。如此反復(fù)試湊,直到找到滿意的比例系數(shù)pk和積分系數(shù)Ik為止。引入適當(dāng)?shù)膶嶋H微分系數(shù)Dk和實際微分時間DT,此時可適當(dāng)增大比例系數(shù)pk和積分系數(shù)Ik。和前述步驟相同,微分時間的整定也需反復(fù)調(diào)整,直到控制過程滿意為止。PID 參數(shù)是根據(jù)控制對象的慣量來確定的。大慣量如:大烘房的溫度控制,一般 P 可
20、在 10 以上,I 在(3、10)之間,D 在 1 左右。小慣量如:一個小電機閉環(huán)控制,一般 P 在(1、10)之間,I 在(0、5)之間,D 在(0.1、1)之間,具體參數(shù)要在現(xiàn)場調(diào)試時進(jìn)行修正。根據(jù)上訴方法,通過軟件仿真系統(tǒng)得出數(shù)據(jù)如表 1 所示,通過觀察得出該系統(tǒng)比較合適的 P、I、D 三者的參數(shù)值為: pk=2, Ik=2.2, Dk=0.2。并且可以反映表 1 測試數(shù)據(jù)表次數(shù)設(shè)定pk設(shè)定Ik設(shè)定Dk設(shè)定(r/min)超調(diào)量調(diào)節(jié)時間(s)誤差122.20.210084%1232.20.2100155%2342.20.21002211%5412.20.210056%3502.20.210
21、0112%6621.10.210068%2. v7200.21002%15%9823.30.210085%1924.40.210097%21022.20.110086%11122.201006%5%51222.20.31007%5%11322.20.41006%7%4通過上訴的數(shù)據(jù)分析可知,該系統(tǒng)完成了設(shè)計的任務(wù)及要求,證實了設(shè)計方案的可行性和設(shè)計方法的正確性。6 結(jié)論本課題的目的在于利用單片機實現(xiàn) PID 算法產(chǎn)生 PWM 脈沖來控制電機轉(zhuǎn)速。到目前為止通過對控制器模塊、電機驅(qū)動模塊、LCD 顯示模塊、鍵盤模塊、數(shù)字 PID 算法等進(jìn)行深入的研究。完成了硬件電路的系統(tǒng)設(shè)計,并且利用 Prot
22、el99se 軟件繪制出 PCB 圖紙,但由于實驗條件不足沒能做出PCB 板。軟件方面利用 C 語言進(jìn)行編程,增強了程序的可移植性和靈活性,并且利用 Proteus 軟件進(jìn)行仿真更加保證了程序的準(zhǔn)確性。7 參考文獻(xiàn)1 ST. L298N 數(shù)據(jù)手冊DB/OL. .21ic.2000-7-1/2008-5-9.2 沙占友. 單片機外圍電路設(shè)計M. :電子工業(yè)出版社, 2003:21.3 何立民. MCS-51 系列單片機應(yīng)用系統(tǒng)設(shè)計系統(tǒng)配置與接口技術(shù)M. :北京航空航天大學(xué)出版社,1990:83-87. v4 Behzad Razavi.Design of Analog CMOS and Inte
23、grated CircuitsM.McGraw-Hill Companies,2001:28-36.5 Tao Wu,Ykang Yang,Yongxuan Huang,etal. H-PID Controller Parameters Tuning via Genetic AlgorithmsC .Intelligent Controland Automation.Proceedings of the 3rd World Congress on,2000,1:586-589.6 Cominos P,Munro N.PID controllers:Recent Tuning Methods a
24、nd Designto Specifi- cationM.Control Theory and Applications,IEE Proceedings,January,2002,149:46.附錄附錄部分源程序部分源程序一、主程序:main( ) zf=0; flag1=0; EA=1; IT0=1;EX0=1; count=0; en=0; en1=0; en2=0; U0=200; Un=0; cc=0; zanting=0; pwm1=0; pwm2=0; P1=0 xF0; Init_lcd(); /設(shè)置液晶顯示器 Clr_Scr(); /清屏 left();Disp_Chinese
25、(0,0,dan); /單left();Disp_Chinese(0,16,pian); /片 left();Disp_Chinese(0,32,ji); /機 left();Disp_Chinese(0,48,de); /的 right();Disp_Chinese(0,0,shu); /數(shù). v right();Disp_Chinese(0,16,zi); /字 right();Disp_Digit(0,32,dp); /P right();Disp_Chinese(0,40,di); /I right();Disp_Digit(0,56,dd); /D left();Disp_Chine
26、se(3,16,dian); /電 left();Disp_Chinese(3,32,ji); /機 left();Disp_Chinese(3,48,tiao); /調(diào) right();Disp_Chinese(3,0,shu0); /速 right();Disp_Chinese(3,16,xi); /系 right();Disp_Chinese(3,32,tong); /統(tǒng) left();Disp_Chinese(6,48,heng); /橫線 right();Disp_Chinese(6,0,heng); /橫線 right();Disp_Chinese(6,16,jia); right
27、();Disp_Chinese(6,32,xiao); right();Disp_Chinese(6,48,wei); flag0=0; for( ; ; )/等待設(shè)置鍵按下 if(flag0=1) break; Clr_Scr(); /清屏 left();Disp_Chinese(0,32,can); left();Disp_Chinese(0,48,shu); right();Disp_Chinese(0,0,she); right();Disp_Chinese(0,16,zhi); left();Disp_Chinese(2,4,Kp); left();Disp_Digit(2,20,m
28、aohao); left();Disp_Digit(2,28,s0); left();Disp_Digit(2,36,s0); left();Disp_Digit(2,44,dian0); left();Disp_Digit(2,52,s0); right();Disp_Chinese(2,4,Ki); right();Disp_Digit(2,20,maohao); right();Disp_Digit(2,28,s0); right();Disp_Digit(2,36,s0); right();Disp_Digit(2,44,dian0); right();Disp_Digit(2,52,
29、s0); left();Disp_Chinese(4,4,Kd);. v left();Disp_Digit(4,20,maohao); left();Disp_Digit(4,28,s0); left();Disp_Digit(4,36,s0); left();Disp_Digit(4,44,dian0); left();Disp_Digit(4,52,s0); right();Disp_Chinese(4,4,V); right();Disp_Digit(4,20,maohao); right();Disp_Digit(4,28,s0); right();Disp_Digit(4,36,s
30、0); right();Disp_Digit(4,44,s0); left();Disp_Chinese(6,4,zhuan); left();Disp_Chinese(6,20,xiang); left();Disp_Digit(6,36,maohao); left();Disp_Chinese(6,44,zheng); flag1=0; for(set=0;) /等待啟動鍵按下 switch(set) case 0:break; case 1: left();Disp_Digit(2,28,s0); left();Disp_Digit(2,36,s0); left();Disp_Digit
31、(2,52,s0); Kpp=0; for(flag=0,n=0;) left();Disp_Digit(2,28,kong); Delay12864(1000); left();Disp_Digit(2,28,sn); Delay12864(2500); if(flag=1) break; left();Disp_Digit(2,28,sn);Kpp+=10*n; for(flag=0,n=0;) left();Disp_Digit(2,36,kong);. v Delay12864(1000); left();Disp_Digit(2,36,sn); Delay12864(2500); i
32、f(flag=1) break; left();Disp_Digit(2,36,sn);Kpp+=n; for(flag=0,n=0;) left();Disp_Digit(2,52,kong); Delay12864(1000); left();Disp_Digit(2,52,sn); Delay12864(2500); if(flag=1) break; left();Disp_Digit(2,52,sn); Kpp+=0.1*n; set=0; break; case 2:right();Disp_Digit(2,28,s0); right();Disp_Digit(2,36,s0);
33、right();Disp_Digit(2,52,s0); Kii=0; for(flag=0,n=0;) right();Disp_Digit(2,28,kong); Delay12864(1000); right();Disp_Digit(2,28,sn); Delay12864(2500); if(flag=1) break; right();Disp_Digit(2,28,sn);Kii+=10*n; for(flag=0,n=0;). v right();Disp_Digit(2,36,kong); Delay12864(1000); right();Disp_Digit(2,36,s
34、n); Delay12864(2500); if(flag=1) break; right();Disp_Digit(2,36,sn);Kii+=n; for(flag=0,n=0;) right();Disp_Digit(2,52,kong); Delay12864(1000); right();Disp_Digit(2,52,sn); Delay12864(2500); if(flag=1) break; right();Disp_Digit(2,52,sn); Kii+=0.1*n; set=0; break; case 3:left();Disp_Digit(4,28,s0); lef
35、t();Disp_Digit(4,36,s0); left();Disp_Digit(4,52,s0); Kdd=0; for(flag=0,n=0;) left();Disp_Digit(4,28,kong); Delay12864(1000); left();Disp_Digit(4,28,sn); Delay12864(2500); if(flag=1) break; left();Disp_Digit(4,28,sn);. v Kdd+=10*n; for(flag=0,n=0;) left();Disp_Digit(4,36,kong); Delay12864(1000); left
36、();Disp_Digit(4,36,sn); Delay12864(2500); if(flag=1) break; left();Disp_Digit(4,36,sn); Kdd+=n; for(flag=0,n=0;) left();Disp_Digit(4,52,kong); Delay12864(1000); left();Disp_Digit(4,52,sn); Delay12864(2500); if(flag=1) break; left();Disp_Digit(4,52,sn); Kdd+=0.1*n; set=0; break; case 4:right();Disp_D
37、igit(4,28,s0); right();Disp_Digit(4,36,s0); right();Disp_Digit(4,44,s0); V0=0; for(flag=0,n=0;) right();Disp_Digit(4,28,kong); Delay12864(1000); right();Disp_Digit(4,28,sn); Delay12864(2500); if(flag=1) break;. v right();Disp_Digit(4,28,sn); V0+=100*n; for(flag=0,n=0;) right();Disp_Digit(4,36,kong);
38、 Delay12864(1000); right();Disp_Digit(4,36,sn); Delay12864(2500); if(flag=1) break; right();Disp_Digit(4,36,sn); V0+=10*n; for(flag=0,n=0;) right();Disp_Digit(4,44,kong); Delay12864(1000); right();Disp_Digit(4,44,sn); Delay12864(2500); if(flag=1) break; right();Disp_Digit(4,44,sn); V0+=n; set=0; bre
39、ak; if(flag1=1) break; Clr_Scr(); /清屏 left();Disp_Chinese(0,32,dian); /電 left();Disp_Chinese(0,48,ji); /機 right();Disp_Chinese(0,0,zhuang); /狀 right();Disp_Chinese(0,16,tai); /態(tài) left();Disp_Chinese(3,0,dang);. v left();Disp_Chinese(3,16,qian); left();Disp_Chinese(3,32,zhuan); left();Disp_Chinese(3,4
40、8,shu0); right();Disp_Digit(3,0,maohao); if(zf=0) right();Disp_Chinese(3,8,zhenghao); else right();Disp_Chinese(3,8,fuhao); right();Disp_Digit(3,24,s0); right();Disp_Digit(3,32,s0); right();Disp_Digit(3,40,s0); left();Disp_Chinese(6,0,yun); left();Disp_Chinese(6,16,xing); left();Disp_Chinese(6,32,sh
41、i); left();Disp_Chinese(6,48,jian); right();Disp_Digit(6,0,maohao); right();Disp_Digit(6,8,s0); right();Disp_Digit(6,16,maohao); right();Disp_Digit(6,24,s0); right();Disp_Digit(6,32,s0); right();Disp_Digit(6,40,maohao); right();Disp_Digit(6,48,s0); right();Disp_Digit(6,56,s0); EX1=1; IT1=1; TMOD=0 x
42、11; ET0=1; TL0=0 xb0; TH0=0 x3c; TR0=1; Un=0; if(zf=0) for(;) if(zanting=1) pwm1=0; else pwm1=1;. v Delay12864(Un); pwm1=0; Delay12864(500-Un); if(zf=1) for(;) if(zanting=1) pwm2=0; else pwm2=1; Delay12864(Un); pwm2=0; Delay12864(500-Un); 論文二:基于論文二:基于 PWMPWM 技術(shù)控制直流電機控制技術(shù)控制直流電機控制摘要本系統(tǒng)采用單片機 C8051F005
43、作為核心器件對小汽車行駛的自動控制。控制過程是利用反射型光電傳感器識別路面黑線信息,保證小車能夠有效的尋跡和停止。采用角度傳感器測量坡度,通過數(shù)據(jù)采集系統(tǒng)的處理,完成電動小汽車在蹺蹺板處于任何角度時的速度及方向控制。利用 PWM (脈寬調(diào)制)技術(shù)控制直流電機的轉(zhuǎn)速,時間用數(shù)碼管顯示。本設(shè)計共使用五支反射型光電傳感器,其中利用四支控制車輪的轉(zhuǎn)向,一支控制前進(jìn)、停止。整個系統(tǒng)較好的實現(xiàn)了題目的要求,達(dá)到了較高的性能指標(biāo)。關(guān)鍵詞:單片機 C8051F005,反射型光電傳感器,角度傳感器,. vPWM 技術(shù)一、 方案的論證與選擇根據(jù)題目的基本要求,分別對系統(tǒng)各模塊進(jìn)行論證。1 1、 單片機的選擇單片機
44、的選擇方案一: 采用傳統(tǒng)的 89C51 芯片作為小車的控制中心。51單片機具有價格低廉使用簡單等特點,但其運算速度較低。功能比較單一,內(nèi)部資源比較少,在對小車進(jìn)行控制時必須外擴芯片, 且本系統(tǒng)需要 A/D、D/A 轉(zhuǎn)換模塊但 89C51 中沒有,需要外加,控制過程相對比較繁瑣。方案二: 采用單片機 C8051F005 作為控制中心。C8051F 系列單片機的指令系統(tǒng)與傳統(tǒng)的 80C51 單片機完全兼容,且單片機C8051F005 具有豐富的內(nèi)部資源,并且包含 12 位精度的A/D、D/A 轉(zhuǎn)換模塊,方便了模擬、數(shù)字信號的轉(zhuǎn)換,不需要再外加 A/D、D/A 轉(zhuǎn)換模塊,并且由于采用流水線技術(shù),比標(biāo)
45、準(zhǔn) 51 系列單片機快約 12 倍,除此之外 C8051F 系列單片機還具有操作簡單,在線下載易于調(diào)試等優(yōu)點,完全適合于對小車的控制。尤其是其具有豐富的中斷源為接收傳感器的信息提供了很大的方便。. v基于上述分析,所以選擇方案二。2 2、 電動機驅(qū)動調(diào)速模塊的選擇電動機驅(qū)動調(diào)速模塊的選擇方案一: 采用步進(jìn)電機作為驅(qū)動源,此種方案可以輕松地達(dá)到調(diào)速的目的,但是在原有的小車結(jié)構(gòu)上找到合適的步進(jìn)電機比較困難,同時也加大了系統(tǒng)的復(fù)雜程度,更提高了硬件改造的困難程度,而且步進(jìn)電機的價格也比較高。方案二: 采用由達(dá)林頓管組成的 H 型 PWM 電路。PWM電路由四個大功率晶體管組成 H 橋電路構(gòu)成,四個晶
46、體管分為兩組,交替導(dǎo)通和截止,用單片機控制達(dá)林頓管使之工作在開關(guān)狀態(tài),通過調(diào)整輸入控制脈沖的占空比,精確調(diào)整電動機轉(zhuǎn)速。這種電路由于管子只工作在飽和和截止?fàn)顟B(tài)下,效率非常高。H型電路使實現(xiàn)轉(zhuǎn)速和方向的控制簡化,且電子開關(guān)的速度很快,穩(wěn)定性極強,是一種廣泛采用的 PWM 調(diào)速技術(shù)。基于上述分析,擬采用方案二。3 3、 路面黑線探測模塊的選擇路面黑線探測模塊的選擇探測路面黑線的工作原理是:光線照射到路面并反射,由于黑線和白紙的反射系數(shù)不同,可根據(jù)接收到的反射光強弱判斷是否到達(dá)黑線. v方案一: 不調(diào)制的反射式紅外發(fā)射接收器。由于采用紅外管代替普通可見光管,可以降低環(huán)境干擾;但如果直接用直流電壓對管
47、子進(jìn)行供電,限于管子的平均功率要求,工作電流只能在 10mA 左右,仍然容易受到干擾。方案二: 采用電光開關(guān)(E3F-DS0C4) ,此電光開關(guān)默認(rèn)為低電平,當(dāng)檢測到黑線時會輸出高電平給單片機,從而產(chǎn)生中斷。此電路有助于降低輸入阻抗且硬件電路簡單易于軟件控制,還可以有效將光電檢測結(jié)果送入單片機處理。基于上述考慮,擬采用方案二。4 4、 顯示選擇顯示選擇方案一:采用靜態(tài)驅(qū)動法。輸出一次顯示數(shù)據(jù)后,所有數(shù)碼管可以一直保持顯示,只需要改變顯示內(nèi)容時才重新發(fā)送一次顯示數(shù)據(jù),但實時性差,不宜采用。方案二:采用動態(tài)驅(qū)動法原理。每只數(shù)碼管輪流顯示各自的字符。由于人眼具有視覺暫留特性,當(dāng)每只數(shù)碼管顯示的時間間
48、隔小于 1/16S 時人眼感覺不到閃爍,看到的是每只數(shù)碼管常亮。以上兩種方案綜合考慮,采用方案二。5 5、 電源的選擇電源的選擇. v方案一:雙電源供電。用兩個電源分別給控制系統(tǒng)和電機系統(tǒng)供電將兩個系統(tǒng)完全隔離,利用光電耦合傳輸信號,這樣做雖然可以將電動機驅(qū)動所造成的干擾大大降低但操作復(fù)雜不如單電源方便靈活。方案二:采用單一電源(6 節(jié) AA 電池)供電方案,并在單片機與電機驅(qū)動電路間采用了光電耦合器進(jìn)行連接,這樣既能簡化電路,提高了電源的可靠性,從而提高系統(tǒng)的穩(wěn)定性。基于上述分析,擬采用方案二。二、系統(tǒng)框圖及工作原理 圖2-1給出了系統(tǒng)組成框圖,數(shù)據(jù)采集通過反射型光電傳感器完成對黑線的檢測,
49、并以電信號脈沖的形式送入單片機的中斷源,五支反射型光電傳感器依圖由上至下順序分別與單片機的P1.6、P1.7、P0.2、P1.5、P1.4相接,單片機對送來的信號進(jìn)行分析、處理,角度傳感器將采集的信息通過A/D模塊進(jìn)行采集,經(jīng)處理后發(fā)出指令對小車實施控制,使電動車在行駛中速度得以調(diào)整。另外,單片機通過內(nèi)部時鐘對行駛時間進(jìn)行記錄并顯示。. v單片機前左傳感器前右傳感器中傳感器后左傳感器后右傳感器角度傳感器驅(qū)動電機LED 顯示圖 1 系統(tǒng)組成框圖三、系統(tǒng)的硬件設(shè)計1 1、電機驅(qū)動電路模塊、電機驅(qū)動電路模塊電動機 PWM 驅(qū)動模塊的電路見附圖 2。本電路采用的是基于 PWM 原理的 H 型驅(qū)動電路。
50、該電路采用 TIP122 和 TIP127大功率達(dá)林頓管,以保證電動機啟動瞬間的電流要求。電路工作過程:當(dāng) 40106 的 1 腳為高電平,5 腳為低電平時,Q1、Q4 管截止,電動機正轉(zhuǎn)。當(dāng) 40106 的 1 腳為低電平,5 腳為高電平時,Q2、Q3 管截止,Q1、Q4 管導(dǎo)通,電動機反轉(zhuǎn)。控制系統(tǒng)電壓統(tǒng)一為 5V 電源,因此若達(dá)林頓管基極由控制系統(tǒng)直接控制,則控制電壓最高為 5V,再加上三極管本身的壓. v降,加到電動機兩端的電壓就只有 4V 左右,減弱了電動機的驅(qū)動力。基于上述考慮,我們運用了 4N25 光耦集成塊,將控制部分與電動機的驅(qū)動部分隔離開來,這樣不僅增加了各系統(tǒng)模塊之間的隔
51、離度,也使驅(qū)動電流得到了大大的增強。至于 40106 的 1 腳與 5 腳這對控制電壓,我們采用了200KHz 的周期信號控制,通過對其占空比的調(diào)整,對車速進(jìn)行調(diào)整。最小脈沖為 0.2ms,可以滿足車速調(diào)整的精度要求。同時,可以通過 40106 的 1 腳與 5 腳的切換來控制電動機的正轉(zhuǎn)與反轉(zhuǎn)。2 2、傳感器模塊、傳感器模塊2.1 反射型光電傳感器光電傳感器在受到可見光照射后即產(chǎn)生光電效應(yīng),將光信號轉(zhuǎn)換成電信號輸出。它除能測量光強之外,還能利用光線的透射、遮擋、反射、干涉等測量多種物理量,如尺寸、位移、速度、溫度等,因而是一種應(yīng)用極廣泛的重要敏感器件。本系統(tǒng)采用了反射型光電傳感器,利用黑色尋
52、跡線對光反射很弱,使傳感器輸出低電平傳給單片機。單片機輸出相應(yīng)的指令從而控制小車的轉(zhuǎn)向。本設(shè)計共使用五支反射型光電傳感器,前左、前右傳感器安裝在. v兩前輪中間位置并分別與單片機 P1.6、P1.7 口相接,控制小車前輪的轉(zhuǎn)向,后左、后右傳感器安裝在兩后輪中央,與 P1.5、P1.4口相連,控制小車的前進(jìn)、后退,中傳感器安裝在車體中間一側(cè)位置并與單片機 P2.0 口連接,用于檢測橫向黑線,控制小車的行駛、停止。當(dāng)傳感器檢測到信號后,傳給單片機產(chǎn)生中斷,并發(fā)出相應(yīng)指令調(diào)速。保證小車能夠有效的尋跡和停止。2.2 角度傳感器角度傳感器經(jīng)常用于系統(tǒng)的水平測量,從工作原理上可分為“固體擺”式、 “液體擺
53、”式、 “氣體擺”三種傾角傳感器,本系統(tǒng)采用的是固體擺式角度傳感器 AME-B001,其輸出為模擬量,轉(zhuǎn)角范圍是 0360 度,輸出電壓范圍是 0.54.5V ,平衡位置電壓約為 1.7V。此傳感器具有磁鋼位置未對準(zhǔn)自動補償;故障檢測功能;非接觸位置檢測功能,是滿足苛刻環(huán)境應(yīng)用需求的理想選擇三個優(yōu)點。根據(jù)坡度的不同,單片機通過 A/D 模塊采集到不同的電壓,再根據(jù)電壓值的不同控制小車上下坡的速度,從而防止小車上坡時因為速度小而不能爬上及下坡時因為速度過大而沖下蹺蹺板,保證了小車在上下坡時的正常行駛。小車在蹺蹺板上行駛受重力 G、支持力 N、電機的拉力 F拉和與行駛方向相. v反的摩擦力 f,蹺
54、蹺板與地面夾角為 。受力情況分析如下圖所示。F拉GNf圖 2 小車受力分析若使小車在蹺蹺板上保持勻速行駛,則應(yīng)受力平衡,故水平方向應(yīng)滿足: 經(jīng)受力分析可知:f=Ug; N=Gcos.經(jīng)推倒可得出拉力與 的關(guān)系為:根據(jù)拉力與電機扭力的關(guān)系:F 拉= X%*F 扭即可得出傾角 與電機扭力的關(guān)系: .%)(XSinuGFn3 3、顯示電路模塊、顯示電路模塊動態(tài)驅(qū)動法對數(shù)碼管的筆畫端與公共端都加有驅(qū)動電路。將數(shù)碼管的筆畫端連接在一起,驅(qū)動電路將顯示字形碼(段碼)同時加在每只數(shù)碼管上。各個數(shù)碼管的公共端分別使用驅(qū)動器件驅(qū)動。任意一個時刻只有一只數(shù)碼管的公共端被驅(qū)動(位碼) ,故. v只有該數(shù)碼管能顯示。
55、其他數(shù)碼管由于公共端未被驅(qū)動,即使筆畫端加有段碼驅(qū)動也不會顯示。位驅(qū)動電路不停地輪流驅(qū)動每一只數(shù)碼管,段驅(qū)動同時輸出被驅(qū)動的數(shù)碼管的段碼,這樣每只數(shù)碼管輪流顯示各自的字符。由于人眼具有視覺暫留特性,當(dāng)每只數(shù)碼管顯示的時間間隔小于 1/16S 時人眼感覺不到閃動,看到的是每只數(shù)碼管常亮。電路原理圖見附圖 3 所示。 4 4、電源電路模塊、電源電路模塊本設(shè)計采用單電源供電,具體電路見附圖 4 所示。四、系統(tǒng)的軟件設(shè)計采用兩根跳線通過三次切換,實現(xiàn)題目要求的功能。1 1、基本要求基本要求 1 1、2 2 程序流程圖程序流程圖由于基本要求部分的實現(xiàn)功能基本相似,只是蹺蹺板的狀態(tài)不同,故基本部分采用一個
56、流程圖,見附圖 6。先將蹺蹺板固定在水平狀態(tài),電動車從起始端 A 位置出發(fā),行駛蹺蹺板的全程(全程的含義:電動車從起始端 A 出發(fā)至車頭到達(dá)蹺蹺板頂端 B 位置) 。停止 5 秒后,電動車再從蹺蹺板的B 端倒退回至蹺蹺板的起始端 A,電動車能分別顯示前進(jìn)和倒退所用的時間。前進(jìn)行駛在 1 分鐘內(nèi)、倒退行駛在 1.5 分鐘內(nèi)完成。. v蹺蹺板處在圖 1 所示的狀態(tài)下(配重物體位置不限制) ,電動車從起始端 A 出發(fā),行駛蹺蹺板的全程。停止 5 秒后,電動車再從蹺蹺板的 B 端倒退回至蹺蹺板的起始端 A,電動車能分別顯示前進(jìn)和倒退所用的時間。前進(jìn)行駛在 1.5 分鐘內(nèi)、倒退行駛在 2 分鐘內(nèi)完成。流
57、程圖見附圖 6。2 2、發(fā)揮部分發(fā)揮部分 1 1 程序流程圖程序流程圖發(fā)揮部分和基礎(chǔ)部分的情況相同,均可以采用一個流程圖,見附圖 7。由參賽隊員將配重物體設(shè)定在可移動范圍中的某位置,電動車從起始端 A 出發(fā),當(dāng)蹺蹺板達(dá)到平衡時,保持時間不小于 5秒,同時發(fā)出聲光提示,電動車顯示所用的時間。全過程要求在2 分鐘內(nèi)完成。此要求能夠完成的好壞主要依賴于1預(yù)先測繪的精度;2停止位置的準(zhǔn)確度。3 3、發(fā)揮部分發(fā)揮部分 2 2 程序流程圖程序流程圖在可移動范圍內(nèi)任意設(shè)定配重物體的位置(由測試人員指定),電動車從起始端 A 出發(fā),當(dāng)蹺蹺板達(dá)到平衡時,保持時間不小于 5 秒,同時發(fā)出聲光提示,電動車顯示所用的
58、時間。全過程要求在 2 分鐘內(nèi)完成。流程圖見附圖 7。五、實際測試. v1. 1. 測量設(shè)備測量設(shè)備模擬跑道(蹺蹺板):總長 160mm,A、B 兩點至蹺蹺板中心轉(zhuǎn)軸各長 80mm 卷尺:精度 mm 秒表:精度秒2. 2. 時間測試時間測試可以在規(guī)定時間內(nèi)完成任務(wù)。測試次數(shù)第一次第二次第三次前進(jìn)時間(S)6后退時間(S)4.2六、 結(jié)論1. 實現(xiàn)了小車在水平蹺蹺板上自動檢測黑線、往返基本功能。 2. 精確顯示出小車在前進(jìn)、倒退過程中所用的時間。3. 實現(xiàn)了小車在蹺蹺板有一定坡度狀態(tài)時速度的控制,保證小車正常行駛,并準(zhǔn)確顯示時間。參考文獻(xiàn)1何宏單片機原理及接口技術(shù):國防工業(yè)出版社,20062李忠
59、國、陳剛單片機應(yīng)用技能實訓(xùn):人民郵電出版社,2006 3袁秀英、李珍單片機原理與實驗教程: 航空航天大學(xué)出版社,. v2006 4李珍袁秀英單片機習(xí)題與應(yīng)用教程: 航空航天大學(xué)出版社,20065黃智偉全國大學(xué)生電子設(shè)計競賽系統(tǒng)設(shè)計: 航空航天大學(xué)出版社, 2006 6黃智偉全國大學(xué)生電子設(shè)計競賽電路設(shè)計: 航空航天大學(xué)出版社, 2006 附錄附圖 1、電動車原理圖附圖 2 電機驅(qū)動電路附圖 3 顯示電路模塊附圖 4 電源模塊電路附圖 5 聲光顯示模塊電路附圖 6 基本部分流程圖附圖 7 發(fā)揮部分程序流程圖論文三:目錄目錄一、課設(shè)題目一、課設(shè)題目 22 二、所需設(shè)備二、所需設(shè)備 22三、課設(shè)目的
60、三、課設(shè)目的 22四四、課設(shè)內(nèi)容課設(shè)內(nèi)容 22五、設(shè)計步驟五、設(shè)計步驟 44I. I.硬件設(shè)計硬件設(shè)計 4 4. vII II軟件設(shè)計軟件設(shè)計 7 7III.III. 程序流程圖程序流程圖 8 8IVIV全部程序全部程序 1010 六、課設(shè)小結(jié)六、課設(shè)小結(jié) 1818 七、附錄七、附錄 1919(一)課設(shè)題目:(一)課設(shè)題目:直流電機數(shù)字調(diào)速系統(tǒng)直流電機數(shù)字調(diào)速系統(tǒng)(二)所需設(shè)備:(二)所需設(shè)備:PC 機、自制單片機系統(tǒng)板、外設(shè)(圍)電路及萬用表及各種工具等。( (三三) )課設(shè)目的:課設(shè)目的:1、進(jìn)一步熟悉和掌握單片機的結(jié)構(gòu)及工作原理。2、掌握單片機的接口技術(shù)及相關(guān)外圍芯片的外特性,控制方法。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司加油卡管理規(guī)定
- 行政法律測試題庫及答案
- 新課標(biāo)教師語文考試試題及答案
- 跨界合作股權(quán)交割與品牌整合協(xié)議
- 跨界合作網(wǎng)絡(luò)小說IP改編授權(quán)協(xié)議
- 2025年學(xué)生會年底總結(jié)大會發(fā)言稿模版
- 碳中和戰(zhàn)略實施中的企業(yè)綠色投資合作協(xié)議
- 氣胸護理系統(tǒng)化討論
- 網(wǎng)絡(luò)游戲運營風(fēng)險控制補充協(xié)議
- 家庭成員子女監(jiān)護權(quán)確認(rèn)與保障合同
- 民俗學(xué)概論全套精美課件
- 應(yīng)用文寫作概述課件
- 危重癥孕產(chǎn)婦交流課件:妊娠遇到主動脈夾層搶救成功病例分享
- 數(shù)控加工中心培訓(xùn)課件
- 高中政治《增強“四個意識”做到“兩個維護”》教學(xué)設(shè)計
- 山東省醫(yī)院護理服務(wù)質(zhì)量評價細(xì)則簡介
- 自動控制原理全套ppt課件(完整版)
- 關(guān)聯(lián)交易同期資料模板
- 荷葉圓圓說課課件
- 路斯特DriveManager基本操作
- 截止閥合格證模板
評論
0/150
提交評論