標(biāo)題: 51單片機控制的雙閉環(huán)直流PWM調(diào)速系統(tǒng)設(shè)計文檔資料 [打印本頁]

作者: eimen    時間: 2019-1-11 13:31
標(biāo)題: 51單片機控制的雙閉環(huán)直流PWM調(diào)速系統(tǒng)設(shè)計文檔資料
分享一個機電課設(shè)可能會用到資料。
系統(tǒng)的硬件設(shè)計部分包括按鍵模塊、電動機驅(qū)動模塊、STC89C51單片機系統(tǒng)、光電門測速模塊、保護電路、供電電源和直流電機。系統(tǒng)的軟件部分包括鍵盤控制程序設(shè)計、顯示程序設(shè)計、主控程序設(shè)計。

隨著時代的進步和科技的發(fā)展,電機調(diào)速系統(tǒng)在工農(nóng)業(yè)生產(chǎn)、交通運輸以及日常生活中起著越來越重要的作用,因此,對電機調(diào)速的研究有著積極的意義。長期以來,直流電機被廣泛應(yīng)用于調(diào)速系統(tǒng)中,而且一直在調(diào)速領(lǐng)域占居主導(dǎo)地位。
本設(shè)計是基于單片機控制的PWM直流電機調(diào)速系統(tǒng),系統(tǒng)以STC89C51單片機為核心,以130小直流電機為控制對象,以L298N為H橋驅(qū)動芯片實現(xiàn)電動機的轉(zhuǎn)速反饋控制。調(diào)節(jié)PWM 占空比從而控制電機兩端電壓,以達(dá)到調(diào)速的目的。用4*4鍵盤輸入有關(guān)控制信號及參數(shù),并在12864 LED上實時顯示輸入?yún)?shù)及動態(tài)轉(zhuǎn)速。系統(tǒng)的硬件設(shè)計部分包括按鍵模塊、電動機驅(qū)動模塊、STC89C51單片機系統(tǒng)、光電門測速模塊、保護電路、供電電源和直流電機。系統(tǒng)的軟件部分包括鍵盤控制程序設(shè)計、顯示程序設(shè)計、主控程序設(shè)計。整個系統(tǒng)實現(xiàn)了單片機控制電機的啟制動、正反轉(zhuǎn)、速度調(diào)節(jié)的效果。
目 錄
摘 要
Abstract
1 引言
1.1 直流調(diào)速系統(tǒng)概況
1.2 設(shè)計目的和意義
1.3 國內(nèi)外發(fā)展現(xiàn)狀
1.4 設(shè)計要求和內(nèi)容
2 直流調(diào)速原理分析與方案確定
2.1 直流PWM調(diào)速系統(tǒng)原理分析
2.2 方案論證和選擇
3 系統(tǒng)硬件設(shè)計
3.1 按鍵控制模塊
3.2 電動機驅(qū)動模塊
3.4 STC89C51單片機系統(tǒng)
3.5 光電門測速模塊
3.6 保護電路
3.7 供電電源
3.8 直流電動機的說明
3.9 系統(tǒng)總體設(shè)計電路圖
4 系統(tǒng)軟件設(shè)計
4.1 鍵盤控制程序設(shè)計
4.2 顯示程序設(shè)計
4.3 主控程序設(shè)計
5 實物的直流調(diào)速實現(xiàn)與調(diào)試
結(jié) 論
參考文獻
致  謝

1 引言
1.1
直流調(diào)速系統(tǒng)概況
現(xiàn)代工業(yè)的電力拖動一般都要求局部或全部的自動化,因此必然要與各種控制元件組成的自動控制系統(tǒng)聯(lián)系起來,而電力拖動則可視為自動化電力拖動系統(tǒng)的簡稱。在這一系統(tǒng)中可對生產(chǎn)機械進行自動控制。
隨著近代電力電子技術(shù)和計算機技術(shù)的發(fā)展以及現(xiàn)代控制理論的應(yīng)用,自動化電力拖動正朝著計算機控制的生產(chǎn)過程自動化的方向邁進。以達(dá)到高速、優(yōu)質(zhì)、高效率地生產(chǎn)。在大多數(shù)綜合自動化系統(tǒng)中,自動化的電力拖動系統(tǒng)仍然是不可缺少的組成部分。另外,低成本自動化技術(shù)與設(shè)備的開發(fā),越來越引起國內(nèi)外的注意。特別對于小型企業(yè),應(yīng)用適用技術(shù)的設(shè)備,不僅有益于獲得經(jīng)濟效益,而且能提高生產(chǎn)率、可靠性與柔性,還有易于應(yīng)用的優(yōu)點。自動化的電力拖動系統(tǒng)更是低成本自動化系統(tǒng)的重要組成部分[1]。
在如今的現(xiàn)實生活中,自動化控制系統(tǒng)已在各行各業(yè)得到廣泛的應(yīng)用和發(fā)展,其中自動調(diào)速系統(tǒng)的應(yīng)用則起著尤為重要的作用。雖然直流電機不如交流電機那樣結(jié)構(gòu)簡單、價格便宜、制造方便、容易維護,但是它具有良好的起、制動性能,宜于在廣泛的范圍內(nèi)平滑調(diào)速,所以直流調(diào)速系統(tǒng)至今仍是自動調(diào)速系統(tǒng)中的主要形式。現(xiàn)在電動機的控制從簡單走向復(fù)雜,并逐漸成熟成為主流。其應(yīng)用領(lǐng)域極為廣泛,例如:軍事和宇航方面的雷達(dá)天線、火炮瞄準(zhǔn)、慣性導(dǎo)航等的控制;工業(yè)方面的數(shù)控機床、工業(yè)機器人、印刷機械等設(shè)備的控制;計算機外圍設(shè)備和辦公設(shè)備中的打印機、傳真機、復(fù)印機、掃描儀等的控制;音像設(shè)備和家用電器中的錄音機、數(shù)碼相機、洗衣機、空調(diào)等的控制。
隨著電力電子技術(shù)的發(fā)展,開關(guān)速度更快、控制更容易的全控型功率器件MOSFET和IGBT成為主流,脈寬調(diào)制技術(shù)表現(xiàn)出較大的優(yōu)越性:主電路線路簡單,需要用的功率元件少;開關(guān)頻率高,電流容易連續(xù),諧波少,電機損耗和發(fā)熱都較小;低速性能好,穩(wěn)速精度高,因而調(diào)速范圍寬;系統(tǒng)快速響應(yīng)性能好,動態(tài)抗擾能力強;主電路元件工作在開關(guān)狀態(tài),導(dǎo)通損耗小,裝置效率較高;近年來,微型計算機技術(shù)發(fā)展速度飛快,以計算機為主導(dǎo)的信息技術(shù)作為一嶄新的生產(chǎn)力,正向社會的各個領(lǐng)域滲透,直流調(diào)速系統(tǒng)向數(shù)字化方向發(fā)展成為趨勢[2]。
1.2 設(shè)計目的和意義
直流電動機具有良好的起動、制動性能,宜于在大范圍內(nèi)平滑調(diào)速,在許多需要調(diào)速或快速正反向的電力拖動領(lǐng)域中得到了廣泛的應(yīng)用。從控制的角度來看,直流調(diào)速還是交流拖動系統(tǒng)的基礎(chǔ)。早期直流電動機的控制均以模擬電路為基礎(chǔ),采用運算放大器、非線性集成電路以及少量的數(shù)字電路組成,控制系統(tǒng)的硬件部分非常復(fù)雜,功能單一,而且系統(tǒng)非常不靈活、調(diào)試?yán)щy,阻礙了直流電動機控制技術(shù)的發(fā)展和應(yīng)用范圍的推廣。隨著單片機技術(shù)的日新月異,使得許多控制功能及算法可以采用軟件技術(shù)來完成,為直流電動機的控制提供了更大的靈活性,并使系統(tǒng)能達(dá)到更高的性能。采用單片機構(gòu)成控制系統(tǒng),可以節(jié)約人力資源和降低系統(tǒng)成本,從而有效的提高工作效率[3]。
傳統(tǒng)的控制系統(tǒng)采用模擬元件,雖在一定程度上滿足了生產(chǎn)要求,但是因為元件容易老化和在使用中易受外界干擾影響,并且線路復(fù)雜、通用性差,控制效果受到器件性能、溫度等因素的影響,故系統(tǒng)的運行可靠性及準(zhǔn)確性得不到保證,甚至出現(xiàn)事故。
目前,直流電動機調(diào)速系統(tǒng)數(shù)字化已經(jīng)走向?qū)嵱没,伴隨著電子技術(shù)的高度發(fā)展,促使直流電機調(diào)速逐步從模擬化向數(shù)字化轉(zhuǎn)變,特別是單片機技術(shù)的應(yīng)用,使直流電機調(diào)速技術(shù)又進入到一個新的階段,智能化、高可靠性已成為它發(fā)展的趨勢。
1.3 國內(nèi)外發(fā)展現(xiàn)狀
電力電子技術(shù)、功率半導(dǎo)體器件的發(fā)展對電機控制技術(shù)的發(fā)展影響極大,它們是密切相關(guān)、相互促進的。近30年來,電力電子技術(shù)的迅猛發(fā)展,帶動和改變著電機控制的面貌和應(yīng)用。驅(qū)動電動機的控制方案有三種:工作在通斷兩個狀態(tài)的開關(guān)控制、相位控制和脈寬調(diào)制控制,在單向通用電動機的電子驅(qū)動電路中,主要的器件是晶閘管,后來是用相位控制的雙向可控硅。在這以后,這種半控型功率器件一直主宰著電機控制市場。到70和80年代才先后出現(xiàn)了全控型功率器件GTO晶閘管、GTR、POWER-MOSFET、IGBT和MCT等。利用這種有自關(guān)斷能力的器件,取消了原來普通晶閘管系統(tǒng)所必需的換相電路,簡化了電路結(jié)構(gòu),提高了效率,提高了工作頻率,降低了噪聲,也縮小了電力電子裝置的體積和重量。后來,諧波成分大、功率因數(shù)差的相控變流器逐步由斬波器或PWM變流器所代替,明顯地擴大了電機控制的調(diào)運范圍,提高了調(diào)速精度,改善了快速性、效率和功率因數(shù)[4]。
直流電機脈沖寬度調(diào)制(Pulse Width Modulation-簡稱PWM)調(diào)速系統(tǒng)產(chǎn)生于70年代中期。最早用于不可逆、小功率驅(qū)動,例如自動跟蹤天文望遠(yuǎn)鏡、自動記錄儀表等。近十多年來,由于晶體管器件水平的提高及電路技術(shù)的發(fā)展,同時又因出現(xiàn)了寬調(diào)速永磁直流電機,它們之間的結(jié)合促使PWM技術(shù)的高速發(fā)展,并使電氣驅(qū)動技術(shù)推進到一個新的高度。
在國外,PWM最早是在軍事工業(yè)以及空間技術(shù)中應(yīng)用。它以優(yōu)越的性能,滿足那些高速度、高精度隨動跟蹤系統(tǒng)的需求。近八、九年來,進一步擴散到民用工業(yè),特別是在機床行業(yè)、自動生產(chǎn)線及機器人等領(lǐng)域中廣泛應(yīng)用。
如今,電子技術(shù)、計算機技術(shù)和電機控制技術(shù)相結(jié)合的趨勢更為明顯,促進電機控制技術(shù)以更快的速度發(fā)展著。隨著市場的發(fā)展,客戶對電機驅(qū)動控制要求越來越高,希望它的功能更強、噪聲更低、控制算法更復(fù)雜,而可靠性和系統(tǒng)安全操作也擺上了議事日程,同時還要求馬達(dá)恒速向變速發(fā)展,還要符合全球環(huán)保法規(guī)所要求的嚴(yán)格環(huán)境標(biāo)準(zhǔn)。進入21世紀(jì)后,可以預(yù)期新的更高性能電力電子器件還會出現(xiàn),已有的各代電力電子元件還會不斷地改進提高[5]。
1.4 設(shè)計要求和內(nèi)容設(shè)計以STC89C51單片機為中央處理器的直流調(diào)速系統(tǒng),使STC89C51產(chǎn)生PWM信號對直流電動機進行轉(zhuǎn)速的控制。在設(shè)計中,通過對系統(tǒng)各大模塊的分析應(yīng)用,使自己的設(shè)計達(dá)到了實現(xiàn)直流電動機調(diào)速的要求。完成系統(tǒng)硬件部分的設(shè)計、產(chǎn)生PWM控制信號關(guān)鍵軟件部分的設(shè)計。通過整合系統(tǒng)的各個模塊,從而構(gòu)成了一個比較完整有效地直流電動機調(diào)速控制系統(tǒng)。
2 直流調(diào)速原理分析與方案確定
2.1 直流PWM調(diào)速系統(tǒng)原理分析
    眾所周知,直流電機穩(wěn)態(tài)轉(zhuǎn)速 n 的表達(dá)式為

n=                        (2.1)

式中     
U------------  電樞端電壓(V)
I--------------  電樞電流(A)
---------- 電樞電路總電阻()
----------------每極磁通量(Wb)
C---------------與電動機結(jié)構(gòu)有關(guān)的常數(shù)
由式2.1可知,直流電機穩(wěn)態(tài)轉(zhuǎn)速 n 的控制方法可分為兩類,即勵磁控制法與電樞電壓控制法。勵磁控制法控制磁通,其控制功率雖然較小,但低速時受到磁極飽和的限制,高速時受到換向火花和換向器結(jié)構(gòu)強度的限制,而且由于勵磁線圈電感較大,動態(tài)性能也較差。所以常用的控制方法是改變電樞端電壓調(diào)速的電樞電壓控制法[6]。
設(shè)直流電源電壓為U,將電樞串聯(lián)成一個電阻R,接到電源 U,則穩(wěn)態(tài)電壓方程式為

U= U- IR                       (2.2)

顯然,調(diào)節(jié)電阻R既可改變端電壓,達(dá)到調(diào)速的目的,但這種傳統(tǒng)的調(diào)壓調(diào)速方法,其效率太低,因此,隨著電力電子技術(shù)的進步,發(fā)展了很多新的電樞電壓控制方法,如:由交流電源供電,使用晶閘管整流器進行相控調(diào)壓;使用硅整流器將交流點整流成直流電,再由PWM降壓斬波器進行斬波調(diào)壓等。
晶閘管相控調(diào)壓或PWM斬波器調(diào)壓比串電阻調(diào)壓損耗小,效率高,而斬波調(diào)壓比相控調(diào)壓又多了不少優(yōu)點,如需要的濾波裝置很小甚至只利用電樞電感已經(jīng)足夠,不需要外加濾波裝置;電動機的損耗和發(fā)熱很小,動態(tài)響應(yīng)較快等。
圖2.1為PWM降壓斬波器的原理電路及輸出電壓波形,在圖2.1(a)中,假定晶閘管 V 先導(dǎo)通了 T 秒(忽略 V 的管壓降,這期間電源電壓 U全部加到電樞上),然后關(guān)斷了T 秒(這期間電樞端電壓為零)。如此反復(fù),則電樞端電壓波形如圖2.1(b)中所示。電動機電樞端電壓 U為其平均值。

  U===               (2.3)

式中                                      

                                      (2.4)

在一個周期T中,晶體管V導(dǎo)通時間的比率,稱為負(fù)載率或占空比。使用下面三種方法中的任何一種,都可以改變的值,從而達(dá)到調(diào)壓的目的。
1、定寬調(diào)頻法。T保持一定,使T在0~范圍內(nèi)變化。
2、調(diào)寬調(diào)頻法。T保持一定,使T在0~范圍內(nèi)變化。
3、定頻調(diào)寬法。T+ T=T保持一定,使T在0~T范圍內(nèi)變化。
不管那種方法的變化范圍均為01,因而電樞電壓的平均值U的調(diào)節(jié)范圍為0~ U,均為正值,即電動機只能在某一方向調(diào)速。
占空比表示了在一個周期T里開關(guān)管導(dǎo)通的時間與周期的比值。的變化范圍為0≤≤1。當(dāng)電源電壓U不變的情況下,輸出電壓的平均值U取決于占空比的大小,改變值也就改變了輸出電壓的平均值,從而達(dá)到控制電動機轉(zhuǎn)速的目的,即實現(xiàn)PWM調(diào)速。
              在PWM調(diào)速時,占空比是一個重要參數(shù)。改變占空比的方法有定寬調(diào)頻法、調(diào)寬調(diào)頻法和定頻調(diào)寬法等。常用的定頻調(diào)寬法,同時改變T和T,但周期T(或頻率)保持不變[7]。
    在電動機調(diào)速里,通過調(diào)節(jié)PWM波的占空比,實現(xiàn)電動機平均電壓出現(xiàn)變化,從而調(diào)節(jié)電機的轉(zhuǎn)速,占空比越大,電動機的平均電壓越大,轉(zhuǎn)速越快,反之越慢。
2.2 方案論證和選擇
2.2.1
穩(wěn)壓電源的選擇
穩(wěn)壓電源的設(shè)計可以通過幾種方法實現(xiàn),根據(jù)具體的設(shè)計要求,通過比較論證來確定我們到底要用哪個方案。
方案一:采用模擬的分立元件,通過電源變壓器、整流濾波電路以及穩(wěn)壓電路,實現(xiàn)穩(wěn)壓電源穩(wěn)定輸出+5V、±12V、+24V電壓,并能可調(diào)輸出1.2~24V電壓。如圖2.2所示。但由于模擬分立元件的分散性較大,各電阻電容之間的影響很大,因此所設(shè)計的指標(biāo)不高,而且使用的器件較多,連接復(fù)雜,體積較大,供耗也大,給焊接帶來了麻煩,同時焊點和線路較多,使成品的穩(wěn)定性和精度也受到影響。

圖2.2 直流穩(wěn)壓電源基本組成框圖

方案二:采用FPGA作為控制器的簡易數(shù)控直流電源設(shè)計方案如圖2.3所示。設(shè)計方案采用FPGA作為控制器完成數(shù)控部分、鍵盤、顯示器接口控制。輸出部分采用D/A0832與運算放大器UA714,輸出電壓波形由FPGA的輸出數(shù)據(jù)控制,不僅可以輸出直流電平,而且只要預(yù)先生成波形的量化數(shù)據(jù),就可以產(chǎn)生多種波形輸出。顯示數(shù)據(jù)由FPGA提供。利用軟件和硬件結(jié)合的方法來設(shè)計穩(wěn)壓電源,其精度和穩(wěn)定性都有所提高;但是,采用FPGA來設(shè)計的成本很高,性價比很差[8]。

圖2.3 采用FPGA的簡易數(shù)控直流電源設(shè)計方案

方案比較:以上兩種方案均可以達(dá)到輸出穩(wěn)壓電源的要求。方案一是利用純硬件來實現(xiàn)其功能的,方案二是以FPGA為核心控制器件,采用軟硬件結(jié)合來實現(xiàn)的。方案一的成本要比方案二低很多,性價比也比方案二好很多;但是方案一的穩(wěn)定性和精度都沒方案二要高,而且方案二還可以用Modelsim XE 5.3d軟件進行仿真和調(diào)試等。設(shè)計人員可以充分利用VHDL硬件描述語言方便的編程,提高開發(fā)效率,縮短研發(fā)周期,易于進行功能的擴展,實現(xiàn)方法靈活,調(diào)試方便,修改容易。但考慮到穩(wěn)壓電源的實用性,雖然方案一的精度和穩(wěn)定度不及用FPGA來實現(xiàn)的精度和穩(wěn)定度高,但是用于做穩(wěn)壓電源已足夠了,我們采用第一種方案來進行穩(wěn)壓電源的設(shè)計。
2.2.2 電機調(diào)速控制模塊
方案一:采用電阻網(wǎng)絡(luò)或數(shù)字電位器調(diào)整電動機的分壓,從而達(dá)到調(diào)速的目的。但是電阻網(wǎng)絡(luò)只能實現(xiàn)有級調(diào)速,而數(shù)字電阻的元器件價格比較昂貴。更主要的問題在于一般電動機的電阻很小,但電流很大,分壓不僅會降低效率,而且實現(xiàn)很困難。
方案二:采用繼電器對電動機的開或關(guān)進行控制,通過開關(guān)的切換對電動機的速度進行調(diào)整。這個方案的優(yōu)點是電路較為簡單,缺點是繼電器的響應(yīng)時間慢、機械結(jié)構(gòu)易損壞、壽命較短、可靠性不高。
方案三:采用由三極管組成的H型PWM電路。用單片機控制三極管使之工作在占空比可調(diào)的開關(guān)狀態(tài),精確調(diào)整電動機轉(zhuǎn)速。這種電路由于工作在管子的飽和截止模式下,效率非常高;H型電路保證了可以簡單地實現(xiàn)轉(zhuǎn)速和方向的控制;電子開關(guān)的速度很快,穩(wěn)定性也極佳,是一種廣泛采用的PWM調(diào)速技術(shù)。
兼于方案三調(diào)速特性優(yōu)良、調(diào)整平滑、調(diào)速范圍廣、過載能力大,因此本設(shè)計采用方案三。
2.2.3 PWM調(diào)速工作方式
方案一:雙極性工作制。雙極性工作制是在一個脈沖周期內(nèi),單片機兩控制口各輸出一個控制信號,兩信號高低電平相反,兩信號的高電平時差決定電動機的轉(zhuǎn)向和轉(zhuǎn)速。
方案二:單極性工作制。單極性工作制是單片機控制口一端置低電平,另一端輸出PWM信號,兩口的輸出切換和對PWM的占空比調(diào)節(jié)決定電動機的轉(zhuǎn)向和轉(zhuǎn)速。由于單極性工作制電壓波開中的交流成分比雙極性工作制的小,其電流的最大波動也比雙極性工作制的小,所以我們采用了單極性工作制。
2.2.4 PWM調(diào)脈寬方式
調(diào)脈寬的方式有三種:定頻調(diào)寬、定寬調(diào)頻和調(diào)寬調(diào)頻。我們采用了定頻調(diào)寬方式,因為采用這種方式,電動機在運轉(zhuǎn)時比較穩(wěn)定,并且在采用單片機產(chǎn)生PWM脈沖的軟件實現(xiàn)上比較方便。
2.2.5 PWM軟件實現(xiàn)方式
方案一:采用定時器做為脈寬控制的定時方式,這一方式產(chǎn)生的脈沖寬度極其精確,誤差只在幾個us。
方案二:采用軟件延時方式,這一方式在精度上不及方案一,特別是在引入中斷后,將有一定的誤差。故采用方案一。
2.2.6 編程語言的選擇
在單片機應(yīng)用系統(tǒng)開發(fā)中,常用的編程語言有匯編語言和C語言兩種。這兩種開發(fā)語言都具有各自的特點。以下就這兩種開發(fā)語言的特點分別作簡介并根據(jù)實際開發(fā)情況,選擇適合的開發(fā)語言。
匯編語言的特點:可直接操縱系統(tǒng)的硬件資源,從而可以編寫高質(zhì)量的編碼。但是采用匯編語言編寫比較復(fù)雜的數(shù)值計算程序相對比較困難,又因匯編語言源程序的可讀性遠(yuǎn)不如高級語言,如果想修改程序功能,得花費心思重新閱讀程序,效率不是很高。
C語言的特點:C語言程序的優(yōu)點是可讀性與可移植性好,程序開發(fā)周期短;使用C語言編程更符合人的思維方式和思考習(xí)慣,編寫代碼效率高,維護方便;采用C語言易于開發(fā)復(fù)雜的單片機應(yīng)用程序,有利于單片機產(chǎn)品的重新選型和應(yīng)用程序的移植,大大提高了單片機軟件的開發(fā)速度。
目前,在單片機的開發(fā)中,C語言得到越來越多的應(yīng)用,而匯編語言也在很多環(huán)境下具有優(yōu)勢。實際應(yīng)用中,要根據(jù)具體情況來選擇開發(fā)語言。C語言不僅僅是在軟件開發(fā)上,而且具體應(yīng)用在單片機以及嵌入式系統(tǒng)開發(fā)上。本設(shè)計中首先對系統(tǒng)初始化,讀取預(yù)置電壓,預(yù)存電壓值為10V,并將其發(fā)送給LCD顯示電壓。各部分軟件的設(shè)計綜合利用了C語言中結(jié)構(gòu)式語句,函數(shù)的定義與調(diào)用,邏輯判斷以及循環(huán)控制,充分體現(xiàn)C語言的簡潔緊湊、運算符豐富、數(shù)據(jù)結(jié)構(gòu)豐富以及可移植性高等優(yōu)點。因此采用C語言編寫程序[9]。

3 系統(tǒng)硬件設(shè)計
系統(tǒng)設(shè)計框圖如下圖所示,硬件電路結(jié)構(gòu)初步設(shè)想由以下8部分組成:顯示器、按鍵、供電電源、驅(qū)動電路、STC89C51單片機、直流電動機、光電門測速電路、保護電路。驅(qū)動電路部分采用了L298芯片作為驅(qū)動模塊、H橋電路為功率放大電路所構(gòu)成的電路結(jié)構(gòu)。控制部分采用C語言編程控制,STC89C51芯片的定時器產(chǎn)生PWM脈沖波形,通過調(diào)節(jié)波形的寬度來控制電動機兩端電壓,便能夠?qū)崿F(xiàn)對電機速度的控制。硬件系統(tǒng)電路設(shè)計框圖如圖3.1所示。
3.1系統(tǒng)設(shè)計框圖
3.1 按鍵控制模塊
系統(tǒng)里采用4*4矩陣鍵盤控制面板作為輸入轉(zhuǎn)速和控制電動機啟停、正反轉(zhuǎn)、置零和調(diào)節(jié)速度的模塊。鍵盤的實物照如圖,在具體操作過程中,它可以用來錄入轉(zhuǎn)速,A鍵控制電動機啟停,B鍵控制電動機的正反轉(zhuǎn),*鍵可以置零。具體的調(diào)試在后面章節(jié)會做介紹。

圖3.2鍵盤控制面板
3.2 電動機驅(qū)動模塊
本次設(shè)計的驅(qū)動芯片為L298。L298N是ST公司生產(chǎn)的一種高電壓、大電流電機驅(qū)動芯片。該芯片采用15腳封裝。主要特點是:工作電壓高,最高工作電壓可達(dá)46V;輸出電流大,瞬間峰值電流可達(dá)3A,持續(xù)工作電流為2A;額定功率25W。內(nèi)含兩個H橋的高電壓大電流全橋式驅(qū)動器,可以用來驅(qū)動直流電動機和步進電動機、繼電器線圈等感性負(fù)載;采用標(biāo)準(zhǔn)邏輯電平信號控制;具有兩個使能控制端,在不受輸入信號影響的情況下允許或禁止器件工作有一個邏輯電源輸入端,使內(nèi)部邏輯電路部分在低電壓下工作;可以外接檢測電阻,將變化量反饋給控制電路。使用L298N芯片驅(qū)動電機,該芯片可以驅(qū)動一臺兩相步進電機或四相步進電機,也可以驅(qū)動兩臺直流電機。其實物圖如圖3.3。其內(nèi)部框圖如圖3.4所示[10]。

圖3.3 L298實物圖
圖 3.4 L298內(nèi)部結(jié)構(gòu)圖
L298N 為SGS-THOMSON Microelectronics 所出產(chǎn)的雙全橋步進電機專用驅(qū)動芯片,內(nèi)部包含4通道邏輯驅(qū)動電路,可同時驅(qū)動2個直流電機,內(nèi)含二個H-Bridge 的高電壓、大電流雙全橋式驅(qū)動器,每橋的三級管的射極是連接在一起的,相應(yīng)外接線端可用來連接外設(shè)傳感電阻。L298芯片是具有15個引出腳的多瓦數(shù)直插式封裝的集成芯片。它接收標(biāo)準(zhǔn)TTL邏輯準(zhǔn)位信號,可驅(qū)動46V、2A以下的電機,且可以直接透過電源來調(diào)節(jié)輸出電壓;此芯片可直接由單片機的IO端口來提供模擬時序信號。
使用直流驅(qū)動器可以驅(qū)動兩臺直流電機。分別為M1和M2。引腳A,B可用于輸入PWM脈寬調(diào)制信號對電機進行調(diào)速控制。(如果無須調(diào)速可將兩引腳接5V,使電機工作在最高速狀態(tài),既將短接帽短接)實現(xiàn)電機正反轉(zhuǎn)就更容易了,輸入信號端IN1接高電平輸入端IN2接低電平,電機M1正轉(zhuǎn)。(如果信號端IN1接低電平, IN2接高電平,電機M1反轉(zhuǎn)。)控制另一臺電機是同樣的方式,輸入信號端IN3接高電平,輸入端IN4接低電平,電機M2正轉(zhuǎn)。(反之則反轉(zhuǎn)),PWM信號端A控制M1調(diào)速,PWM信號端B控制M2調(diào)速。如表3.1所示[11]。
表3.1 L298驅(qū)動電動機各個管腳信號高低
電機
旋轉(zhuǎn)方式
控制端IN1
控制端IN2
控制端IN3
控制端IN4
輸入PWM信號改變脈寬可調(diào)速
調(diào)速端A
調(diào)速端B
M1
正轉(zhuǎn)
/
/
/
反轉(zhuǎn)
/
/
/
停止
/
/
/
M2
正轉(zhuǎn)
/
/
/
反轉(zhuǎn)
/
/
/
停止
/
/
/

本驅(qū)動電路由L298芯片來驅(qū)動和控制電機,L298其實就是一個全橋驅(qū)動電路。驅(qū)動電路原理如圖3.5所示。

                                       (a)
(b)
圖3.5 驅(qū)動電路原理圖
本次設(shè)計采用的L298有很強的驅(qū)動能力驅(qū)動電流可達(dá)2A。 圖中ENA和ENB分別為L298 兩橋的使能端,若為高電平則對應(yīng)的橋處于工作狀態(tài)。我們要控制電機運動只需單片機送出一個信號就可以了。由于這次設(shè)計只要控制一個直流電機,所以我們就采用M1的電機控制就可以了。

3.3 顯示模塊設(shè)計
液晶顯示模塊是 128×64 點陣的漢字圖形型液晶顯示模塊,可顯示漢字及圖形,內(nèi)置 8192個中文漢字(16×16 點陣)、128 個字符(8×16 點陣)及 64×256 點陣顯示 RAM(GDRAM)?膳c CPU 直接接口,提供兩種界面來連接微處理機:8位并行及串行兩種連接方式。具有多種功能:光標(biāo)顯示、畫面移位、睡眠模式等。實物圖如圖3.6。

圖3.6 128×64 點陣的漢字圖形型液晶顯示器
在本次設(shè)計中需要顯示黑線數(shù)量、運行的狀態(tài)等一些數(shù)字、字母和漢字信息,因此使用12864比較合適。它是一種圖形點陣液晶顯示器,主要由行驅(qū)動器、列驅(qū)動器及128×64全點陣液晶顯示器組成,可完成漢字(16×16)顯示和圖形顯示。共有20個引腳,由于本次使用的是串口通信,不需要使用并口數(shù)據(jù)接線端口,因此在圖中省略了。12864液晶顯示器外觀管腳圖如圖3.7[12]。
圖 3.7 12864管腳圖

管腳說明如下:
(1)1腳VSS,模塊的電源地。
(2)2腳VDD,模塊的電源正端。
(3)3腳V0,LCD驅(qū)動電壓輸入端。
(4)4腳RS,并行的指令/數(shù)據(jù)選擇信號;串行的片選信號。
(5)5腳R/W,并行的讀寫選擇信號;串行的數(shù)據(jù)口。
(6)6腳E,并行的使能信號;串行的同步時鐘。
(7)7~14腳DB0~DB7數(shù)據(jù)0~7。
(8)15腳PSB并/串行接口選擇H-并行;L-串行。
(9)16腳NC空腳。
(10)17腳RST,復(fù)位低電平有效。
(11)18腳VEE,LCD驅(qū)動負(fù)電壓輸入端。
(12)19腳A背光源正極(5V)。
(13)20腳K背光源負(fù)極(0V)。
用帶中文字庫的128×64顯示模塊時應(yīng)注意以下幾點:
1、欲在某一個位置顯示中文字符時,應(yīng)先設(shè)定顯示字符位置,即先設(shè)定顯示地址,再寫入中文字符編碼。
2、顯示ASCII字符過程與顯示中文字符過程相同。不過在顯示連續(xù)字符時,只須設(shè)定一次顯示地址,由模塊自動對地址加1指向下一個字符位置,否則,顯示的字符中將會有一個空ASCII字符位置。
3、當(dāng)字符編碼為2字節(jié)時,應(yīng)先寫入高位字節(jié),再寫入低位字節(jié)。
4、模塊在接收指令前,向處理器必須先確認(rèn)模塊內(nèi)部處于非忙狀態(tài),即讀取BF標(biāo)志時BF需為“0”,方可接受新的指令。
5、“RE”為基本指令集與擴充指令集的選擇控制位。當(dāng)變更“RE”后,以后的指令集將維持在最后的狀態(tài),除非再次變更“RE”位,否則使用相同指令集時,無需每次均重設(shè)“RE”位。
在本次設(shè)計中,顯示器顯示電機的設(shè)定速度和實際速度,通過按鍵的控制,在顯示器上都會出現(xiàn)轉(zhuǎn)速的相應(yīng)調(diào)整。顯示器的功能實現(xiàn)由程序的控制而來[13]。
3.4 STC89C51單片機系統(tǒng)
STC89C51單片機學(xué)習(xí)板是一款基于8位單片機處理芯片STC89C52RC的系統(tǒng)。其功能強大,可以實現(xiàn)單片機開發(fā)的多種要求,學(xué)習(xí)、開發(fā)者可以根據(jù)需要選配多種常用模塊,達(dá)到實驗及教學(xué)的目的。
STC89C51系列單片機是宏晶科技推出的新一代超強抗干擾、高速、低功耗的單片機,指令代碼與傳統(tǒng)8051單片機完全兼容[14]。

圖3.8 STC89C51管腳圖
單片機各功能部件的運行都是以時鐘控制信號為基準(zhǔn),有條不紊地一拍一拍地工作,因此時鐘頻率直接影響單片機的速度,時鐘電路的質(zhì)量也直接影響單片機系統(tǒng)的穩(wěn)定性。電路中的電容C1和C2典型值通常選擇為30pF左右。對外接電容的值雖然沒有嚴(yán)格的要求,但電容的大小會影響振蕩器的頻率高低,振蕩器的穩(wěn)定性和起振的快速性,晶振的頻率越高則系統(tǒng)的時鐘頻率也越高,單片機的運行速度也越快。本設(shè)計采用頻率為12MHZ,微調(diào)電容C1和C2為30pF的內(nèi)部時鐘方式,電容為瓷片電容。

圖3.9時鐘電路                     圖3.10 復(fù)位電路
    該電路采用按鍵手動復(fù)位。按鍵手動復(fù)位為電平方式。其中電平復(fù)位是通過RET端經(jīng)電阻與電源VCC接通而實現(xiàn)的,當(dāng)時鐘頻率適用于12MHZ時,C取100uF,R取10K,為保證可靠復(fù)位,在初識化程序中應(yīng)安排一定的延遲時間[15]。
3.5光電門測速模塊
光電門測速用途:廣泛用于電機轉(zhuǎn)速檢測,位置檢測,脈沖計數(shù)等。它的實物模型如下圖,它的工作電壓為DC 3-5V并且具有以下的特點:
1、具有信號輸出指示
2、單路信號輸出
3、輸出有效信號為低電平
4、靈敏度不可調(diào)
5、可用于工件計數(shù)、電機測速
6、電路板輸出開關(guān)量
圖3.11 光電門測速模塊圖
在系統(tǒng)里面,通過電動機的轉(zhuǎn)頁上的缺口切斷光電門測速裝置所發(fā)出的光線可以達(dá)到給定轉(zhuǎn)速信號的作用。轉(zhuǎn)頁上共有兩個缺口,光電門通過發(fā)出的紅外光被截斷的頻率從而知道電動機的轉(zhuǎn)動頻率。通過系統(tǒng)計數(shù)和對比控制從而給出較準(zhǔn)確的轉(zhuǎn)速。
本系統(tǒng)用到了光電耦合器,光電耦合器可以抑制尖脈沖和各種雜訊干擾信號。光電耦合器之所以在傳輸信號的同時能夠有效得抑制尖脈沖和各種雜訊干擾,使得通道上的信號雜訊比大為提高,主要有以下幾方面的原因:
1、光電耦合器的輸入阻抗很小,只有幾百歐姆,而干擾源的阻抗較大,通常為105-106歐姆。據(jù)分壓原理可知,即使干擾電壓的幅度較大,但饋送到光電耦合器輸入端的雜訊電壓會很小,只能形成很微弱的電流,由于沒有足夠的能量而不能使二極管發(fā)光,從而被抑制掉了。
2、光電耦合器的輸入回路與輸出回路之間沒有電氣聯(lián)系,也沒有共地;之間分布電容極小,而絕緣電阻又很大,因此回路一邊的各種干擾雜訊都很難通過光電耦合器饋送到另一邊去,避免了共阻抗耦合的干擾信號的產(chǎn)生。
3、光電耦合器可以起到很好的安全保障作用,即使當(dāng)外部設(shè)備出現(xiàn)故障,甚至輸入信號短接時,也不會損壞儀表。因為光電耦合器件的輸入回路和輸出回路之間可以承受幾千伏的高壓。
4、光電耦合器的回應(yīng)速度極快,其回應(yīng)延遲時間只有10微秒,適于對回應(yīng)速度要求很高的場合[16]。
圖3.12 光電耦合器
3.6 保護電路
在實物中采用保險管做為保護電路,在電動機運行過程中,如果出現(xiàn)特殊情況,電動機供電電流過大,會導(dǎo)致保險管里的保險絲熔斷,這時候保險管會自動切斷保護電路,達(dá)到保護整個系統(tǒng)的功能。
圖3.13 保險管
3.7 供電電源
本系統(tǒng)采用穩(wěn)定的直流電源供電,ST89C51單片機的供電電壓為+5V,直流電動機的供電電壓為+5V。由外面所接的變壓器轉(zhuǎn)變220V交流電成為穩(wěn)定的直流電而來?梢詾閱纹瑱C和直流電動機提供穩(wěn)定的直流電壓[17]。
3.8直流電動機的說明
本系統(tǒng)采用130微型直流電機,直流電機為系統(tǒng)里的被控對象,我們的目的是實現(xiàn)它的啟停、正反轉(zhuǎn)和調(diào)速的功能。它的一些數(shù)據(jù)參數(shù)如下表:
表3.2 130電機數(shù)據(jù)表
電  壓
空  載
最  大  效  率  下
工作范圍
額定電壓
轉(zhuǎn) 數(shù)
電 流
轉(zhuǎn) 數(shù)
電 流
力 矩
功 率
r/min
A
r/min
A
g.cm
w
3-6V
5V CONSTANT
8000
0.15
5000
0.2
10
0.9

采用PWM進行直流電機調(diào)速,其實就是把波形作用于電機驅(qū)動電路的使用端,因此有必要對電機驅(qū)動電路進行介紹。

               
圖3.14  H橋式電機驅(qū)動電路
上圖所示為一個典型的直流電機控制電路。電路得名于“H橋式驅(qū)動電路”是因為它的形狀酷似字母H。4個三極管組成H的4條垂直腿,而電機就是H中的橫杠。電路中,H橋式電機驅(qū)動電路包括4個三極管和一個電機。要使電機運轉(zhuǎn),必須導(dǎo)通對角線上的一對三極管。根據(jù)不同三極管對的導(dǎo)通情況,電流可能會從左至右或從右至左流過電機,從而控制電機的轉(zhuǎn)向。
當(dāng)V1管和V3管導(dǎo)通時,電流就從電源正極經(jīng)V1從左至右穿過電機,然后再經(jīng)V3回到電源負(fù)極。該流向的電流將驅(qū)動電機順時針轉(zhuǎn)動。當(dāng)三極管V1和V3導(dǎo)通時,電流將從左至右流過電機,從而驅(qū)動電機按特定方向轉(zhuǎn)動。當(dāng)三極管V2和V4導(dǎo)通時,電流將從右至左流過電機,從而驅(qū)動電機沿另一方向轉(zhuǎn)動[18]。
3.9 系統(tǒng)總體設(shè)計電路圖
系統(tǒng)總體電路如下圖,系統(tǒng)由STC89C51單片機控制模塊、按鍵面板、顯示模塊、直流電機驅(qū)動模塊、保護電路、速度檢測模塊、直流電動機和供電電源這幾個部分組成。系統(tǒng)實現(xiàn)了控制電動機的啟停、正反轉(zhuǎn)、復(fù)位和調(diào)節(jié)速度的功能。系統(tǒng)電路整體的原理是通過單片機給定PWM波形信號,使驅(qū)動模塊驅(qū)動電機的運轉(zhuǎn),通過調(diào)節(jié)PWM波的占空比,使得電動機的平均供電電壓得到控制,從而調(diào)節(jié)電動機的轉(zhuǎn)速,在系統(tǒng)里,轉(zhuǎn)速反饋模塊會及時反應(yīng)實際轉(zhuǎn)速,通過和設(shè)定轉(zhuǎn)速的比較,單片機會調(diào)節(jié)實際轉(zhuǎn)速,使其和設(shè)定轉(zhuǎn)速越來越趨近,這就是轉(zhuǎn)速反饋控制達(dá)到的效果[19]。

                             圖3.15 系統(tǒng)總體設(shè)計電路圖

4 系統(tǒng)軟件設(shè)計
在直流調(diào)速系統(tǒng)中,對三個部分進行編寫程序,分別為鍵盤控制程序、顯示程序和主電路控制程序,這三個程序分別實現(xiàn)了鍵盤的按鍵控制功能、顯示電動機轉(zhuǎn)速的功能和整個系統(tǒng)的運行控制功能。下面我對這三大程序分別進行設(shè)計介紹并給出設(shè)計流程圖[20]。
4.1 鍵盤控制程序設(shè)計
鍵盤控制流程圖如下圖所示,編寫的程序經(jīng)過初始化、識別是否有鍵入,經(jīng)過接受指令和數(shù)據(jù),進行分析并作出處理,然后傳達(dá)給單片機。下面還給出了部分鍵盤控制設(shè)計的程序。

  
圖4.1 鍵盤控制程序流程圖

部分鍵盤控制設(shè)計程序:
  1. #include"keyboard.h"
  2. bit key_flag,flag_1;
  3. uchar flag;
  4. void delay_ms(uint z)
  5. {
  6.               uint x;
  7.               uchar y;
  8.               for (x=z;x>0;x--)
  9.               for (y=250;y>0;y--);
  10. }
  11.                                 {  
  12.                                                         case 0xee:num = 1;flag++;flag_1=1;
  13.                                               break;
  14.                                                         case 0xde:num = 2;flag++;flag_1=1;
  15.                                               break;
  16.                                               case 0xbe:num = 3;flag++;flag_1=1;
  17.                                               break;
  18.                                                         case 0x7e:num = 10;
  19.                                               break;
  20.                                           }
  21.                                           while(temp != 0xf0);
  22.                                    do
  23.                                           {
  24.                                                         temp = DUAN_KOU;
  25.                                                         temp = temp & 0xf0;
  26.                                           }            
  27.                                             while(temp != 0xf0);
  28.                                 {
  29.                                                         case 0xeb:num = 7;flag++;flag_1=1;
  30.                                               break;
  31.                                                         case 0xdb:num = 8;flag++;flag_1=1;
  32.                                           return num;
  33. }
復(fù)制代碼

4.2 顯示程序設(shè)計
    顯示程序流程圖如下圖所示,編寫的程序經(jīng)過初始化、清屏進入串口驅(qū)動模式,經(jīng)過接受指令和數(shù)據(jù),進行分析讀取字符串,然后在顯示屏上正確顯示出來。下面還給出了部分顯示設(shè)計的程序。




  
圖4.2顯示程序流程圖

部分顯示設(shè)計的程序:
  1. #include"12864_ser.h"
  2. void write(bit start, unsigned char ddata);
  3. void sendbyte(unsigned char bbyte);
  4. void delaynms(unsigned int di);
  5. void lcdinit(void);
  6. {
  7.   delaynms(100);
  8.   PSB=0;                 
  9.   RESET=0; delaynms(1); RESET=1;
  10.   CS=1;
  11.   write(0,0x30);
  12.   write(0,0x02);
  13.   write(0,0x06);
  14.   write(0,0x0c);
  15.   write(0,0x01);
  16. }
  17. void clr_12864()
  18. void write(bit start, unsigned char ddata)
  19.               if(x==1)
  20.                  write(0,0x80+y);      
  21.               else if(x==2)
  22.                  write(0,0x90+y);      
  23.               else if(x==3)
  24.                  write(0,0x88+y);      
  25. else if(x==4)
  26.                  write(0,0x98+y);     
  27.               //pos=x+y;      
  28.               //sendbyte(0xf8);delaynms(5);sendbyte(pos);delaynms(2);
  29. }
  30. {
  31.               if(x==1)
  32.                  write(0,0x80+y);      
  33.               else if(x==2)
  34.                  write(0,0x90+y);      
  35.               else if(x==3)
  36.                  write(0,0x88+y);        
  37.               else if(x==4)
  38.                  write(0,0x98+y);      
  39.               //pos=x+y;        
  40.               //sendbyte(0xf8);delaynms(5);sendbyte(pos);delaynms(2);
  41. }

  42. void print(uchar *str)
  43.               while(*str!='\0')
  44.               {
  45.                             write(1,*str);
  46.                             str++;
  47.               }
復(fù)制代碼

4.3 主控程序設(shè)計
主控程序流程圖如下圖所示,編寫的程序經(jīng)過初始化、通過給定初值,使定時器中斷得以控制,從而產(chǎn)生相應(yīng)的PWM波形,使驅(qū)動芯片動作,控制電動機的正轉(zhuǎn)、反轉(zhuǎn)和停止,在這個過程里,速度檢測反饋模塊會把實時轉(zhuǎn)速反饋給單片機,從而知道與設(shè)定轉(zhuǎn)速是否相符,達(dá)到轉(zhuǎn)速反饋控制的目的[21]。下面還給出了部分設(shè)計的程序。



   
圖4.3 主控程序流程圖
部分主控程序設(shè)計:
  1. #include"12864_ser.h"
  2. #include"keyboard.h"
  3. uint counter,sheding,timer,PWM,TS,ZF,PK,keynum,keynum1,keynum2,temp;
  4. uchar qian,bai,shi,ge;
  5. extern uchar flag;
  6. extern bit flag_1;
  7. uchar digit[] ={"0123456789"};
  8. uchar table[4];
  9. sbit P01=P0^1;
  10. sbit P02=P0^2;
  11. void Init_Timer1(void)
  12. {
  13. TMOD |= 0x10 | 0x40;                                
  14. TH1=0xFF;               
  15. TL1=255;      
  16. ET1=1;      
  17. TR1=1;          }
  18. void Init_Timer0(void)
  19. {
  20. TMOD |= 0x01;                  
  21. TH0=(65536-50000)/256;               
  22. TL0=(65536-50000)%256;
  23. ET0=1;      
  24. TR0=1;        }
  25. void main(void)
  26. {
  27. P01=0;  
  28.               P02=0;
  29.               write(1,digit[ge]);
  30.               Init_Timer1();
  31.               Init_Timer0();
  32.               TS=70;
  33.               gotoxy(3,2);
  34.               write(1,':');            
  35.               while(flag<4)
  36.                                             {            
  37.                                                                         table[flag-1]=get_key_val();
  38.                                                                         if(flag_1==1)
  39.                                                                                     {
  40.                                                                                     write(1,digit[table[flag-1]]);
  41.                                                                                     flag_1=0;
  42.                                                                                     }            
  43.                                             }
復(fù)制代碼


5 實物的直流調(diào)速實現(xiàn)與調(diào)試
基于STC89C51單片機控制的直流調(diào)速系統(tǒng)實物中主要包含了單片機控制部分、電路保護部分、速度檢測反饋部分、按鍵部分和顯示部分。實物采用數(shù)字鍵盤控制電動機轉(zhuǎn)速,實現(xiàn)了電動機的啟停、正轉(zhuǎn)、反轉(zhuǎn)、調(diào)速的功能。鍵盤上的A鍵是啟停控制鍵、B鍵是正反轉(zhuǎn)控制鍵、*號鍵為復(fù)位鍵。顯示器上可以顯示出電動機的設(shè)定轉(zhuǎn)速和實際轉(zhuǎn)速。通過速度反饋和分析對比,單片機會控制實際轉(zhuǎn)速越來越趨近設(shè)定轉(zhuǎn)速。達(dá)到對速度的控制目的。具體的實物模型如圖5.1所示。

圖5.1 實物模型圖

圖5.1 實物模型圖
具體的調(diào)試和分析過程如下:
1、在打開單片機供電電源和電動機驅(qū)動模塊電源后,實物顯示初始狀態(tài),設(shè)定轉(zhuǎn)速和實際轉(zhuǎn)速均為0,在鍵盤上按鍵設(shè)定一個轉(zhuǎn)速如4500 r/min,則電動機開始啟動并加速,經(jīng)過一段時間實際速度會越來越趨向于4500 r/min,直到最后達(dá)到和設(shè)定轉(zhuǎn)速十分靠近。具體的調(diào)試效果如圖5.2。在操作過程中,A鍵可控制電機的啟停。按下A鍵電動機會停止,再按一次電動機會重新運轉(zhuǎn)。


圖5.2 調(diào)試效果圖

2、按下正反轉(zhuǎn)控制鍵B后,電動機會改變轉(zhuǎn)速方向,經(jīng)過一段時間,電動機自動調(diào)節(jié)轉(zhuǎn)動方向,顯示器上顯示反轉(zhuǎn)4500 r/min。需要停止轉(zhuǎn)動可以按鍵A。調(diào)試效果如圖5.3。

圖5.3 調(diào)試效果圖

3、按下復(fù)位按鈕*號鍵,電動機會恢復(fù)到初試狀態(tài),設(shè)定速度和實際速度都將置零。
4、在電動機運轉(zhuǎn)過程中給它一個干擾,如給電動機運行一個阻礙,電動機實際速度會變慢,經(jīng)過速度反饋給單片機,單片機經(jīng)過對比并調(diào)節(jié)PWM波形,控制PWM占空比來調(diào)節(jié)電動機的速度。電動機會漸漸恢復(fù)到初始設(shè)定的轉(zhuǎn)速上來,體現(xiàn)了系統(tǒng)的速度反饋和抗干擾的功能。具體調(diào)試如圖5.4,圖5.5。

圖5.4 給定干擾時的效果圖
圖5.5 調(diào)節(jié)恢復(fù)后的效果圖

實物的原件清單在下表中給出:
表5.1實物原件清單
名稱
個數(shù)
名稱
個數(shù)
STC89C51單片機
1
光電門測速模塊
1
12864液晶顯示器
1
4*4按鍵控制面板
1
130直流電動機
1
保險管
1
L298芯片驅(qū)動模塊
1
晶振
1
電位器
1
排阻
1
復(fù)位鍵
1
電源接口
4
電阻
若干
電容
若干

結(jié) 論
設(shè)計是學(xué)生理論聯(lián)系實際的橋梁,是對課本知識的擴展和補充,是我們體察工程實際問題復(fù)雜性、學(xué)習(xí)和工作的又一次嘗試。此次設(shè)計使我充分認(rèn)識到生產(chǎn)的靈活性和多變性。設(shè)計中培養(yǎng)了我們發(fā)現(xiàn)問題、解決問題的能力,在自我分析和理解的基礎(chǔ)上再經(jīng)過指導(dǎo)老師的指導(dǎo),經(jīng)過半年多的不懈努力,此次設(shè)計終于是完成了。
我深深的體會到,設(shè)計不同于平時的作業(yè),在設(shè)計中需要自己做出決策,即自己確定方案、選擇流程、查取資料、進行過程和設(shè)備計算,并對自己的選擇做出論證和核算,經(jīng)過反復(fù)的分析比較,擇優(yōu)選定最理想的方案和合理的設(shè)計。為了寫好這一設(shè)計,我查閱了很多的參考資料,參照了同類工程處理設(shè)計的成功經(jīng)驗,根據(jù)本設(shè)計的具體情況和要求,做出了符合實際要求的、能夠解決實際問題的設(shè)計。同時,通過此次設(shè)計,培養(yǎng)了我分析和解決設(shè)計實際問題的能力。我相信這種嚴(yán)謹(jǐn)?shù)膶W(xué)習(xí)方法、正確的設(shè)計思想、實事求是、嚴(yán)肅認(rèn)真和高度責(zé)任感的工作作風(fēng)對以后的工作和學(xué)習(xí)是大有裨益的。
本次完成的單片機控制PWM直流調(diào)速系統(tǒng)的設(shè)計能夠?qū)崿F(xiàn)通過單片機STC89C51產(chǎn)生PWM信號對130直流電動機的轉(zhuǎn)速控制。在設(shè)計中,通過對系統(tǒng)各大模塊的分析應(yīng)用,使自己的設(shè)計基本達(dá)到了實現(xiàn)直流電動機調(diào)速的要求。由于時間和經(jīng)費的限制,本次設(shè)計基本上完成了硬件部分的設(shè)計、產(chǎn)生PWM控制信號關(guān)鍵軟件部分的設(shè)計和實物模型。從而形成了一個比較完整的基于單片機控制PWM直流調(diào)速系統(tǒng),達(dá)到了預(yù)期的目標(biāo)。
目前,PWM直流調(diào)速系統(tǒng)已經(jīng)在日常生活中應(yīng)用比較頻繁,但通過本次設(shè)計,我還是學(xué)到和鞏固了很多以前沒掌握或粗淺了解的知識,使我對PWM直流調(diào)速系統(tǒng)有了更深次的了解和掌握,并通過本次硬件和軟件的設(shè)計,相信能夠為我以后的工作提供相當(dāng)寶貴的經(jīng)驗和基礎(chǔ)。

完整的Word格式文檔51黑下載地址:
基于AT89C51單片機控制的雙閉環(huán)直流調(diào)速系統(tǒng)設(shè)計.doc (3.09 MB, 下載次數(shù): 82)



作者: MisakaKuroko    時間: 2019-7-17 18:43
你好,可以給一份完整的程序嗎?
作者: 趙雪    時間: 2021-4-14 21:19
可惜沒有仿真圖,還是自己慢慢畫吧
作者: 趙雪    時間: 2021-4-14 21:25
可以給一份完整的仿真嗎
作者: uygwgfef    時間: 2021-5-15 22:35
有無清晰的圖啊啊啊





歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1