




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
目錄TOC\o"1-3"\u摘要 .2技術(shù)方案可行性研究2.2.1步進(jìn)電機(jī)的選型步進(jìn)電機(jī)包括反應(yīng)式步進(jìn)電機(jī)、永磁式步進(jìn)電機(jī)、混合式步進(jìn)電機(jī)等。永磁式步進(jìn)電機(jī)一般為兩相,轉(zhuǎn)矩和體積較小,步進(jìn)角一般為7.5度或15度;反應(yīng)式步進(jìn)電機(jī)一般為三相,可實(shí)現(xiàn)大轉(zhuǎn)矩輸出,步進(jìn)角一般為1.5度,但噪聲和振動都很大。混合式步進(jìn)電機(jī)是指混合了永磁式和反應(yīng)式的優(yōu)點(diǎn)。精確度高、轉(zhuǎn)矩大、步進(jìn)角度小。它又分為兩相和五相:兩相步進(jìn)角一般為1.8度而五相步進(jìn)角一般為0.72度。反應(yīng)式(VR)永磁式(PM) 混合式(HB)圖2-2步進(jìn)電機(jī)的結(jié)構(gòu)反應(yīng)式步進(jìn)電機(jī)(VR)在歐美等發(fā)達(dá)國家80年代已被淘汰。而混合式步進(jìn)電機(jī)(HB)由于其步距角小、精確度高、功耗小等原因價格較貴,主要用于工業(yè)平臺領(lǐng)域。永磁式步進(jìn)電機(jī)具有啟動頻率低、控制功率小、斷電時具有一定的轉(zhuǎn)矩保持、步距角大等特點(diǎn),多用于小型使用場合以及實(shí)驗(yàn)平臺,且價格較便宜。本系統(tǒng)在Proteus仿真中所使用的步進(jìn)電機(jī),由于步距角可調(diào),可以設(shè)計(jì)為反應(yīng)式步進(jìn)電機(jī)、永磁式步進(jìn)電機(jī)、混合式步進(jìn)電機(jī)中任意一種。而在后期硬件電路的搭建中,考慮到以上的綜合因素,選用了永磁式步進(jìn)電機(jī)。其型號為35BY48BH10。具體參數(shù)如下表:表2-135BY48BH10型步進(jìn)電機(jī)參數(shù)型號步矩角相數(shù)電壓電流電阻最大靜轉(zhuǎn)矩定位轉(zhuǎn)距轉(zhuǎn)動慣量35BY48BH107.5°412V0.2842Ω400g90g7.9g.cm圖2-3永磁式步進(jìn)電動機(jī)示意圖圖2-435BY48H10型步進(jìn)電機(jī)接線圖2.2.2步進(jìn)電機(jī)的控制方式在步進(jìn)電機(jī)的微機(jī)控制中,包括開環(huán)控制和閉環(huán)控制兩大類。步進(jìn)電機(jī)開環(huán)控制中,不包含反饋通道,這樣就使得控制系統(tǒng)的成本較低,但是為了保證控制系統(tǒng)少出錯,在設(shè)計(jì)時必須要考慮一定得富裕度,即驅(qū)動脈沖的頻率不宜過高,電機(jī)的負(fù)載不能太重。開環(huán)控制的基本原理圖如下,在有些系統(tǒng)中,也將脈沖分配由微機(jī)軟件來實(shí)現(xiàn),即圖中虛線框內(nèi)的功能全部由單片機(jī)來實(shí)現(xiàn)。圖2-5開環(huán)控制的基本原理框圖在采用單片機(jī)的步進(jìn)電機(jī)開環(huán)系統(tǒng)中,控制系統(tǒng)的CP脈沖的頻率或者換向周期實(shí)際上就是控制步進(jìn)電機(jī)的運(yùn)行速度。系統(tǒng)可用兩種辦法實(shí)現(xiàn)步進(jìn)電機(jī)的速度控制。一種是延時,一種是定時。延時方法是在每次換向之后調(diào)用一個延時子程序,待延時結(jié)束后再次執(zhí)行換向,這樣周而復(fù)始就可發(fā)出一定頻率的CP脈沖或換向周期。延時子程序的延時時間與換向程序所用的時間和,就是CP脈沖的周期,該方法簡單,占用資源少,全部由軟件實(shí)現(xiàn),調(diào)用不同的子程序可以實(shí)現(xiàn)不同速度的運(yùn)行。但占用CPU時間長,不能在運(yùn)行時處理其他工作。因此只適合較簡單的控制過程。定時方法是利用單片機(jī)系統(tǒng)中的定時器定時功能產(chǎn)生任意周期的定時信號,從而可方便的控制系統(tǒng)輸出CP脈沖的周期。當(dāng)定時器啟動后,定時器從裝載的初值開始對系統(tǒng)及其周期進(jìn)行加計(jì)數(shù),當(dāng)定時器溢出時,定時器產(chǎn)生中斷,系統(tǒng)轉(zhuǎn)去執(zhí)行定時中斷子程序。將電機(jī)換向子程序放在定時中斷服務(wù)程序中,定時中斷一次,電機(jī)換向一次,從而實(shí)現(xiàn)電機(jī)的速度控制。由于從定時器裝載完重新啟動開始至定時器申請中斷止,有一定的時間間隔,造成定時時間增加,為了減少這種定時誤差,實(shí)現(xiàn)精確定時,要對重裝的計(jì)數(shù)初值作適當(dāng)?shù)恼{(diào)整。調(diào)整的重裝初值主要考慮兩個因素一是中斷響應(yīng)所需的時間。二是重裝初值指令所占用的時間,包括在重裝初值前中斷服務(wù)程序重的其他指令因。綜合這兩個因素后,重裝計(jì)數(shù)初值的修正量取8個機(jī)器周期,即要使定時時間縮短8個機(jī)器周期。用定時中斷方式來控制電動機(jī)變速時,實(shí)際上是不斷改變定時器裝載值的大小。在控制過程中,采用離散辦法來逼近理想的升降速曲線。為了減少每步計(jì)算裝載值的時間,系統(tǒng)設(shè)計(jì)時就把各離散點(diǎn)的速度所需的裝載值固化在系統(tǒng)的ROM中,系統(tǒng)在運(yùn)行中用查表法查出所需的裝載值,這樣可大幅度減少占用CPU的時間,提高系統(tǒng)的響應(yīng)速度。大多數(shù)步進(jìn)電機(jī)運(yùn)動控制系統(tǒng)都運(yùn)行在開環(huán)狀態(tài)下,因?yàn)槌杀据^低,并可提供運(yùn)動控制技術(shù)固有的位置控制,無須反饋。但是,在個別應(yīng)用中,需要更多的可靠性、安全性或產(chǎn)品質(zhì)量的保證,因此,閉環(huán)控制也是一種選擇。與開環(huán)控制不同的是,閉環(huán)控制具有反饋通道。閉環(huán)控制的基本原理圖如下:圖2-6閉環(huán)控制的基本原理框圖以下是一些實(shí)現(xiàn)步進(jìn)電機(jī)閉環(huán)控制的方法:1)步進(jìn)確認(rèn),這是最簡單的位移控制,使用光學(xué)編碼器計(jì)算步進(jìn)移動的數(shù)量。一個簡單的回路與指令校驗(yàn)的步進(jìn)電機(jī)比較,驗(yàn)證步進(jìn)電機(jī)移動到預(yù)計(jì)的位置;2)反電動勢:一種無傳感器的檢測方法,使用步進(jìn)電機(jī)的反電動勢信號,測量和控制速度。當(dāng)反電動勢電壓降至監(jiān)測探測水平時,閉環(huán)控制轉(zhuǎn)為標(biāo)準(zhǔn)開環(huán),完成最終的位移移動;3)全伺服控制,指全時間的使用反饋設(shè)備,用于步進(jìn)電機(jī)、編碼器、解碼器、或其它反饋傳感器上,從而更為精確地控制步進(jìn)電機(jī)位移和轉(zhuǎn)矩。其它的方法包括各種不同的反電動勢控制電機(jī)參數(shù)測量和軟件技術(shù),一些制造企業(yè)都會使用這些方法。這里,步進(jìn)驅(qū)動監(jiān)控和測量電機(jī)線圈,使用電壓額電流信息提高步進(jìn)電機(jī)控制。正阻尼使用這一信息阻擋振動的速度,產(chǎn)生更多的可用的轉(zhuǎn)矩輸出,降低轉(zhuǎn)矩的機(jī)械振動損耗。無編碼器安裝監(jiān)測采用信息檢測同步速度的損耗。閉環(huán)控制由于具有反饋通道,因此,可以在失步時通過反饋回來的信號調(diào)整脈沖的輸出,這樣可以取得比較好的控制效果,但是,通常閉環(huán)系統(tǒng)成本過高,同時比較容易受到機(jī)械系統(tǒng)中的傳動間隙等非線性因素引起機(jī)械振蕩,若要保證優(yōu)良的動態(tài)性能,不如選用直流或交流位置伺服系統(tǒng)。在步進(jìn)電機(jī)的控制中,一般不采用閉環(huán)控制,而更多的采用開環(huán)控制?;谝陨系木C合考慮,在本系統(tǒng)的設(shè)計(jì)中,采用開環(huán)控制。2.2.3步進(jìn)電機(jī)的驅(qū)動電路步進(jìn)電機(jī)不能直接采用直流或者普通交流來供電,必須采用專門的步進(jìn)電機(jī)驅(qū)動控制器,步進(jìn)電機(jī)驅(qū)動控制器一般包括脈沖發(fā)生與分配單元、功率驅(qū)動單元,閉環(huán)控制電路中還將加入反饋和保護(hù)單元。單極性驅(qū)動電路單極性驅(qū)動電路多適用于不需要電流繞組有正、反向流動的步進(jìn)電機(jī),一般為反應(yīng)式步進(jìn)電機(jī)。常見的單極性驅(qū)動電路有3類,分別為單電壓功率驅(qū)動電路、高低壓功率驅(qū)動電路以及斬波恒流功率驅(qū)動電路。單電壓功率驅(qū)動是步進(jìn)電機(jī)控制中最為簡單的一種驅(qū)動電路,它在本質(zhì)上是一個單間的反相器。單電壓功率驅(qū)動器有如下特點(diǎn):線路簡單,成本低,低頻時響應(yīng)較好;有共振區(qū),高頻時,帶載能力迅速下降。其工作效率較低,特別是在高頻下更為突出。它的外接電阻R要消耗相當(dāng)一部分的熱量,這樣就會影響電路的穩(wěn)定性,所以這種驅(qū)動方式一般只用在小功率的步進(jìn)電機(jī)的驅(qū)動電路中。雙電壓功率驅(qū)動電路一般采用兩種電源電壓來驅(qū)動,因這兩個電源分別是一個為高壓一個為低壓,因此也稱為高低壓功率驅(qū)動電路。其基本思想是,利用短時間的高電壓供電以提高導(dǎo)通相繞組電流前沿的陡度與高度,經(jīng)過一個短時間,關(guān)斷高電壓,用低電壓來維持一定的電流,這樣可以改善驅(qū)動系統(tǒng)的高頻性能,使步進(jìn)電機(jī)在高頻段也有較大的輸出轉(zhuǎn)矩,且靜止鎖定時的功耗也較小。雙電壓驅(qū)動電路的缺點(diǎn)是在高低壓連接處電流出現(xiàn)谷點(diǎn),這樣必然引起力矩在谷點(diǎn)處下降,不利于電機(jī)的正常運(yùn)行。斬波恒流功率驅(qū)動電路的基本思想是,使導(dǎo)通相電流不論在鎖定、低頻或高頻工作時,均保持額定值,使得電機(jī)具有恒轉(zhuǎn)矩輸出特性,斬波恒流功率驅(qū)動電路如圖2-7所示。斬波恒流功率驅(qū)動電路很好的克服了雙電壓功率驅(qū)動電路在高低壓連接時電流谷點(diǎn)處力矩下降的問題,并且還可以提高步進(jìn)電機(jī)的效率。它可以用較高的電源電壓,同時無需外接電阻來限定期額定電流和減少時間常數(shù),而且低頻共振現(xiàn)象基本消除,在任何頻率下,電動機(jī)都可穩(wěn)定運(yùn)行。斬波恒流功率驅(qū)動電路是目前應(yīng)用較多的一種驅(qū)動電路。但由于其波形頂部呈現(xiàn)鋸齒形波動,所以會產(chǎn)生較大的電磁噪聲。圖2-7斬波恒流功率驅(qū)動電路圖雙極性驅(qū)動電路雙極性驅(qū)動是指對繞組正向和反向通電,其電路相對比較復(fù)雜。通常情況下,永磁式步進(jìn)電機(jī)和混合式步進(jìn)電動機(jī),需要繞組的電流能夠正、反流動,常采用全橋式雙極性驅(qū)動電路。最常用的方法是使用H橋驅(qū)動。如圖2-8所示。圖2-8H橋電機(jī)驅(qū)動電路圖H橋式電機(jī)驅(qū)動電路包括4個三極管和一個電機(jī)。要使電機(jī)運(yùn)轉(zhuǎn),必須導(dǎo)通對角線上的一對三極管。根據(jù)不同三極管對的導(dǎo)通情況,電流可能會從左至右或從右至左流過電機(jī),從而控制電機(jī)的轉(zhuǎn)向。當(dāng)Q1管和Q4管導(dǎo)通時,電流就從電源正極經(jīng)Q1從左至右穿過電機(jī),然后再經(jīng)Q4回到電源負(fù)極。從而驅(qū)動電機(jī)按特定方向轉(zhuǎn)動。當(dāng)Q2管和Q3管導(dǎo)通時,電流將從右至左流過電機(jī),從而驅(qū)動電機(jī)沿另一方向轉(zhuǎn)動。驅(qū)動電機(jī)時,保證H橋上兩個同側(cè)的三極管不會同時導(dǎo)通非常重要。如果三極管Q1和Q2同時導(dǎo)通,那么電流就會從正極穿過兩個三極管直接回到負(fù)極。此時,電路中除了三極管外沒有其他任何負(fù)載,因此電路上的電流就可能達(dá)到最大值(該電流僅受電源性能限制),甚至燒壞三極管。2.2.4驅(qū)動電路的確定單極性和雙極性是步進(jìn)電機(jī)最常采用的兩種驅(qū)動架構(gòu)。35BY48H10型永磁式步進(jìn)電機(jī)接線圖如圖2-4所示,其包含兩組帶有中間抽頭的線圈,整個電機(jī)共有六條線與外界連接。這類電機(jī)常被稱為四相電機(jī),但是它其實(shí)只有兩個相位,精確的說法應(yīng)是二相六線式步進(jìn)電機(jī)。二相六線式步進(jìn)電機(jī)雖然又稱為單極性步進(jìn)電機(jī),實(shí)際上卻能同時使用單極性或雙極性驅(qū)動電路。單極性驅(qū)動電路的設(shè)計(jì)單極性是指步進(jìn)電機(jī)線圈中電流的流動方向是固定的,即線圈中的電流只按一個方向流動。步進(jìn)電機(jī)的單極性驅(qū)動是使用4個晶體管來驅(qū)動步進(jìn)電機(jī)的2組相位,電路結(jié)構(gòu)如圖2-9所示。電機(jī)的2個繞組的中間抽頭都接高電平,然后跟據(jù)其工作原理,將電機(jī)的其余4線的電平輪流拉低,步進(jìn)電機(jī)就會轉(zhuǎn)動。實(shí)際設(shè)計(jì)中,控制器產(chǎn)生的脈沖通過達(dá)林頓管實(shí)現(xiàn)功率放大,從而驅(qū)動電機(jī)正常轉(zhuǎn)動。圖2-9單極性步進(jìn)電機(jī)驅(qū)動電路雙極性驅(qū)動電路的設(shè)計(jì)雙極性則是指步進(jìn)電機(jī)線圈中電流的流動方向不是單向的,即繞組有時沿某一方向流動,有時按相反方向流動。雙極性步進(jìn)電機(jī)的驅(qū)動電路如圖2-10所示,它會使用8個晶體管來驅(qū)動2組相位。對于兩相六線式步進(jìn)電機(jī)而言,2個繞組的中間接頭都懸空,根據(jù)步進(jìn)電機(jī)的工作原理,當(dāng)控制器給驅(qū)動器發(fā)出驅(qū)動信號時,驅(qū)動器經(jīng)過環(huán)形分配器和功率放大后,電機(jī)繞組依次通電,電機(jī)轉(zhuǎn)動。圖2-10雙極性步進(jìn)電機(jī)驅(qū)動電路在實(shí)際設(shè)計(jì)中,橋式電路中晶體管的參數(shù)由于各種影響會不一致,使控制難度加大,考慮到電壓、電流的等級以及尺寸等因素,一般使用L298作為橋式結(jié)構(gòu)的驅(qū)動芯片,其內(nèi)部電路如圖2-11所示。圖2-11從結(jié)構(gòu)上看,對比圖2-9和圖2-10的驅(qū)動電路圖可以看出,單極性驅(qū)動電路比雙極性驅(qū)動電路簡單,也比較容易理解。從性能上看,實(shí)踐表明,2種驅(qū)動電路在相同電壓的驅(qū)動下,單極性驅(qū)動電路的輸出力矩比雙極性驅(qū)動電路要小。由于步進(jìn)電機(jī)的輸出力矩與電機(jī)的有效體積、線圈匝數(shù)、磁通量、電流成正比,所以電機(jī)有效體積越大,則勵磁安匝數(shù)越大,定轉(zhuǎn)子間的氣隙就越小,電機(jī)力矩越大,反之越小。單極性驅(qū)動電路每次都借助中間抽頭導(dǎo)通繞組線圈的一半,而雙極性驅(qū)動電路的繞組線圈每次都有電流通過,在相同電壓的驅(qū)動下其驅(qū)動電流相當(dāng),但是,此時單極性驅(qū)動電路產(chǎn)生的磁場集中在某個導(dǎo)通的線圈附近,而雙極性驅(qū)動電路則在整個電機(jī)內(nèi)部產(chǎn)生一個相對均勻的磁場,于是其穩(wěn)定性要優(yōu)于單極性驅(qū)動電路,輸出力矩也較大。單極性驅(qū)動電路簡單易行、調(diào)試方便且造價簡單,低頻時響應(yīng)較好,一般適用于小功率步進(jìn)電機(jī)的驅(qū)動;雙極性驅(qū)動電路H橋接線較復(fù)雜,要防止橋路上下臂的穿通,但是驅(qū)動的力矩和頻響較好,適用于大功率步進(jìn)電機(jī)的驅(qū)動?;谝陨弦蛩鼐C合考慮,本設(shè)計(jì)中由于采取35BY48H10型永磁式步進(jìn)電機(jī),其功率較小,單極性驅(qū)動電路已經(jīng)可以較好的滿足設(shè)計(jì)要求。故采用單極性驅(qū)動電路。2.2.5脈沖分配及激勵方式脈沖分配器又稱環(huán)形分配器,步進(jìn)電機(jī)正常工作需要按照步進(jìn)電機(jī)的勵磁狀態(tài)表所規(guī)定的狀態(tài)和順序依次對各相繞組進(jìn)行通電或者斷電控制,各相驅(qū)動信號來源于脈沖分配器。脈沖分配器的主要功能是把來源于控制環(huán)節(jié)的時鐘脈沖串按一定的規(guī)律分配給步進(jìn)電機(jī)驅(qū)動器的各相輸入端,控制勵磁繞組的導(dǎo)通或者截止。同時,由于步進(jìn)電機(jī)有正反轉(zhuǎn)的要求,所以脈沖分配器的輸出,既是周期的,又是可逆的。因此,脈沖分配器是一種特殊的可逆循環(huán)計(jì)數(shù)器,只是這種計(jì)數(shù)器的輸出不是一般的編碼,而是步進(jìn)電機(jī)勵磁狀態(tài)要求的特殊編碼。脈沖分配器可以通過硬件脈沖分配電路實(shí)現(xiàn),也可以通過軟件方便靈活的實(shí)現(xiàn)。隨著大規(guī)模集成電路技術(shù)的發(fā)展,現(xiàn)在很有多廠家生產(chǎn)出專門的用于步進(jìn)電機(jī)控制的脈沖分配芯片,如SGS公司的L297芯片,配合用于功率放大的驅(qū)動電路就可以實(shí)現(xiàn)步進(jìn)電機(jī)的驅(qū)動。在本設(shè)計(jì)中,由于單片機(jī)的硬件資源完全夠用,采取了軟件實(shí)現(xiàn)環(huán)形脈沖分配器的功能,使得硬件設(shè)計(jì)更為簡潔。驅(qū)動二相六線永磁式步進(jìn)電機(jī)的激勵方式有一相、二相、一至兩相三種。一相激勵方式是指每一時刻四相中只有一相接通,步進(jìn)電機(jī)以此方式工作時,溫升較高,電源功率功耗小,但是當(dāng)速度較高時容易產(chǎn)生失步;二相激勵方式是指每一個時刻四相中有兩相導(dǎo)通,然后按四相的順序循環(huán),例如AB、BC、CD、DA這樣的導(dǎo)通方式;一至兩相激勵方式是指驅(qū)動時一相導(dǎo)通和兩相導(dǎo)通交替出現(xiàn)的,如圖2-12所示。圖2-12一至二相激勵波形示意圖一至兩相激勵方式使步進(jìn)電機(jī)工作在半步狀態(tài),與整步工作狀態(tài)相較,半步狀態(tài)振動較小,且控制更準(zhǔn)確。所以本設(shè)計(jì)選用一至兩相激勵方式驅(qū)動步進(jìn)電機(jī)。2.2.6基本方案的確定因本次設(shè)計(jì)的要求,電機(jī)選用35BY48H10型永磁式步進(jìn)電機(jī),驅(qū)動電路選用單極性功率驅(qū)動電路,脈沖分配電路選擇為軟件分配方式,并使用一至兩相激勵方式產(chǎn)生激勵信號。單片機(jī)AT89C52產(chǎn)生的一至兩相激勵信號通過達(dá)林頓功率驅(qū)動電路放大,從而驅(qū)動步進(jìn)電機(jī)。通過按鍵,實(shí)現(xiàn)步進(jìn)電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、加速、減速等功能,并采用LCD1602顯示屏即時顯示控制電動機(jī)的轉(zhuǎn)動信息。
3系統(tǒng)硬件的詳細(xì)設(shè)計(jì)本系統(tǒng)的硬件設(shè)計(jì)主要包括最小單片機(jī)系統(tǒng)、步進(jìn)電機(jī)驅(qū)動電路、LCD顯示電路、鍵盤電路等設(shè)計(jì)。3.1單片機(jī)主機(jī)系統(tǒng)電路本次設(shè)計(jì)以CPU選用AT89C52作為步進(jìn)電機(jī)的控制芯片。AT89C52是美國ATMEL公司生產(chǎn)的低電壓,高性能CMOS8位單片機(jī),片內(nèi)含8kbytes的可反復(fù)擦寫的Flash只讀程序存儲器和256bytes的隨機(jī)存取數(shù)據(jù)存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),與標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及8052產(chǎn)品引腳兼容,片內(nèi)置通用8位中央處理器(CPU)和Flash存儲單元,功能強(qiáng)大的AT89C52單片機(jī)適合于許多較為復(fù)雜控制應(yīng)用場合。3.1.1單片機(jī)的引腳功能·Vcc:電源電壓·GND:地·P0口:P0口是一組8位漏極開路型雙向I/O口,也即地址/數(shù)據(jù)總線復(fù)用口·P1口:P1是一個帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路與AT89C51不同之處是,P1.0和P1.1還可分別作為定時/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和輸入(P1.1/T2EX)。參見表3-1。表3-1AT89C52的定時器2引腳號功能特性P1.0T2(定時/計(jì)數(shù)器/2外部計(jì)數(shù)脈沖輸入),時鐘輸出P1.1T2EX(定時/計(jì)數(shù)2捕獲/重裝載觸發(fā)和方向控制)·P2口:P2是一個帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路·P3口:P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路?!ST:復(fù)位輸入。當(dāng)振蕩器工作時,RST引腳出現(xiàn)兩個機(jī)器周期以上高電平將使單片機(jī)復(fù)位?!LE/PROG:當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時鐘振蕩頻率的1/6輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖?!SEN:程序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當(dāng)單片機(jī)由外部程序存儲器取指令(或數(shù)據(jù))時,每個機(jī)器周期兩次PSEN有效,即輸出兩個脈沖。在此期間,當(dāng)訪問外部數(shù)據(jù)存儲器,將跳過兩次PSEN信號?!A/VPP:外部訪問允許。欲使CPU僅訪問外部程序存儲器(地址為0000H—FFFFH),EA端必須保持低電平(接地)·XTAL1:振蕩器反相放大器的及內(nèi)部時鐘發(fā)生器的輸入端。·XTAL2:振蕩器反相放大器的輸出端。圖3-1AT89C52的引腳圖3.1.2AT89C52功能特性概述AT89C52提供以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash閃速存儲器,256字節(jié)內(nèi)部RAM,32個I/O口線,3個16位定時/計(jì)數(shù)器,一個6向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。同時,AT89C52可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式。空閑方式停止CPU的工作,但允許RAM,定時/計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復(fù)位。3.1.3時鐘電路單片機(jī)的時鐘信號用來提供單片機(jī)片內(nèi)各種微操作的時間基準(zhǔn),時鐘信號通常用兩種電路形式得到:內(nèi)部振蕩和外部振蕩。單片機(jī)內(nèi)部有一個用于構(gòu)成振蕩器的高增益反向放大器,引腳XTALl和XTAL2分別是此放大電器的輸入端和輸出端,由于采用內(nèi)部方式時,電路簡單,所得的時鐘信號比較穩(wěn)定,實(shí)際使用中常采用這種方式,如圖3-2所示在其外接晶體振蕩器(簡稱晶振)或陶瓷諧振器就構(gòu)成了內(nèi)部振蕩方式,片內(nèi)高增益反向放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起可構(gòu)成一個自激振蕩器并產(chǎn)生振蕩時鐘脈沖。圖3-2中外接晶體以及電容C2和C1構(gòu)成并聯(lián)諧振電路,它們起穩(wěn)定振蕩頻率、快速起振的作用,其值均為20pF左右,晶振頻率選12MHz。圖3-2AT89C52時鐘電路3.1.4復(fù)位電路為了初始化單片機(jī)內(nèi)部的某些特殊功能寄存器,必須采用復(fù)位的方式,復(fù)位后可使CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并從初始狀態(tài)開始正常工作。單片機(jī)的復(fù)位是靠外電路來實(shí)現(xiàn)的,在正常運(yùn)行情況下,只要RST引腳上出現(xiàn)兩個機(jī)器周期時間以上的高電平,即可引起系統(tǒng)復(fù)位,但如果RST引腳上持續(xù)為高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài)。復(fù)位后系統(tǒng)將輸入/輸出(1/0)端口寄存器置為FFH,堆棧指針SP置為07H,SBUF內(nèi)置為不定值,其余的寄存器全部清0,內(nèi)部RAM的狀態(tài)不受復(fù)位的影響,在系統(tǒng)上電時RAM的內(nèi)容是不定的。復(fù)位操作有兩種情況,即上電復(fù)位和手動(開關(guān))復(fù)位。本設(shè)計(jì)采用上電復(fù)位方式。圖3-3中電阻和電容組成上電復(fù)位電路,其值R取為10K,C取值為10pF。圖3-3AT89C52上電復(fù)位電路圖3-4單片機(jī)最小系統(tǒng)3.2驅(qū)動電路的設(shè)計(jì)一般脈沖分配器輸出的驅(qū)動能力有限,不能直接驅(qū)動步進(jìn)電機(jī),而需要經(jīng)過一級功率放大,即功率驅(qū)動電路。本設(shè)計(jì)選用了單極性功率驅(qū)動電路,將單片機(jī)產(chǎn)生的脈沖信號通過達(dá)林頓管ULN2803放大,然后輸出給步進(jìn)電機(jī)。達(dá)林頓管又稱復(fù)合管,它將二只三極管適當(dāng)?shù)倪B接在一起,以組成一只等效的新的三極管。組成的新的等效三極管的放大倍數(shù)是二者之積。在電子電路設(shè)計(jì)中,達(dá)林頓接法常用在功率放大器和穩(wěn)壓電源中。ULN2803是八組NPN型達(dá)林頓功放三極管集成芯片,典型的輸入電壓是5V,集電極輸出功率可達(dá)50V×600mA。ULN2803的設(shè)計(jì)與標(biāo)準(zhǔn)TTL電平兼容,這一特性使得該器件廣泛應(yīng)用于計(jì)算機(jī)控制、工業(yè)控制和消費(fèi)類產(chǎn)品中。ULN2803的選用使驅(qū)動控制電路的可靠性、穩(wěn)定性和簡潔性得到了極大的提高。圖3-5ULN2803的引腳圖及內(nèi)部電路單片機(jī)產(chǎn)生的脈沖經(jīng)過ULN2803達(dá)林頓管進(jìn)行放大,再驅(qū)動步進(jìn)電機(jī)。具體的連接圖如3-6所示:圖3-6步進(jìn)電機(jī)驅(qū)動電路圖3.3顯示電路及控制按鍵的設(shè)計(jì)3.3.1顯示模塊的設(shè)計(jì)本系統(tǒng)的顯示部分采用RT1602字符顯示模塊,與采用數(shù)碼管相比,硬件連接和軟件調(diào)試上都由優(yōu)勢。只要把要顯示的內(nèi)容放進(jìn)液晶模塊的顯示存儲器里面就可以直觀的顯示出指定的內(nèi)容,操作方便。本設(shè)計(jì)將LCD連接到AT89C52的P0.0-P0.7口上,其電路如圖3-7所示。圖3-7顯示電路原理圖LCD1602采用標(biāo)準(zhǔn)的14腳接口,其各引腳定義如下:第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:V0為液晶顯示器對比度調(diào)整端。第4腳:RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。第5腳:RW為讀寫信號線,高電平時進(jìn)行讀操作,低電平時進(jìn)行寫操作。當(dāng)RS和RW共同為低電平時可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時可以讀忙信號,當(dāng)RS為高電平RW為低電平時可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。第15~16腳:空腳。3.3.2鍵盤模塊的設(shè)計(jì)鍵盤的連接一般有兩種方式,一種是獨(dú)立式鍵盤;一種是行列式鍵盤。獨(dú)立式鍵盤就是各個鍵相互獨(dú)立,每個鍵盤接一根輸入線,通過檢測輸入線的電平狀態(tài)來確定那個鍵按下。這種鍵盤的輸入線較多,結(jié)構(gòu)復(fù)雜,一般適用于按鍵較少操作速度較高的場合。而行列式鍵盤是由行線和列線交叉組成,一般用于按鍵較多的場合。本次設(shè)計(jì)一共4個鍵,因此采用獨(dú)立式鍵盤,分別接到AT89C52的P2.4-P2.7口而實(shí)現(xiàn),獨(dú)立式鍵盤的示意圖如3-8所示。圖3-8鍵盤連接圖當(dāng)按鍵K未被按下時,P2.4輸入為高電平。當(dāng)K閉合時,P2.4輸入為低電平。通常按鍵所用的開關(guān)為機(jī)械彈性開關(guān),因此機(jī)械觸點(diǎn)斷開、閉合時均會有一系列的抖動,如圖3-9所示。圖3-9按鍵抖動抖動時間長短由按鍵的機(jī)械特性決定,一般是5到10ms。為了確保CPU對鍵的一次閉合只做一次處理,必須去除鍵盤抖動。鍵盤消抖有硬件和軟件兩種方法,一般多使用軟件消抖。軟件消抖的方法是指,檢測到有按鍵按下時,執(zhí)行一個10ms左右(具體時間應(yīng)視所使用的按鍵進(jìn)行調(diào)整)的延時程序后,產(chǎn)生延時,等電壓穩(wěn)定后在讀取按鍵的狀態(tài),從而消除抖動。同理,在檢測到該鍵釋放后,也應(yīng)采用相同的步驟,從而可消除抖動的影響。圖3-10鍵盤及顯示器與MCU的接線圖
4系統(tǒng)軟件的詳細(xì)設(shè)計(jì)4.1系統(tǒng)軟件設(shè)計(jì)的基本原則系統(tǒng)中控制任務(wù)的實(shí)現(xiàn)最終是靠控制軟件來完成的,控制軟件的設(shè)計(jì)將直接決定整個系統(tǒng)的控制性能,以下首先闡述一下軟件設(shè)計(jì)的一些基本要求,然后再概述本系統(tǒng)軟件的設(shè)計(jì)方案。1)實(shí)時性單片機(jī)必須在一定的時間內(nèi),完成一系列的軟件處理過程,如對系統(tǒng)的被控參數(shù)(如轉(zhuǎn)速、轉(zhuǎn)角等)的信號進(jìn)行采樣、計(jì)算、邏輯判斷和分析,按照規(guī)定的控制算法進(jìn)行數(shù)值計(jì)算,輸出各種控制信號,以及對可能出現(xiàn)的故障進(jìn)行處理。2)可靠性軟件的可靠性是指軟件在運(yùn)行過程中避免發(fā)生故障的能力,以及一旦發(fā)生故障后的解決和排除故障的能力。因此,為了提高軟件的可靠性,軟件設(shè)計(jì)要考慮系統(tǒng)運(yùn)行過程中可能出現(xiàn)的一切非正常情況,且在系統(tǒng)一旦出現(xiàn)故障,如用戶按錯鍵,輸入錯誤參數(shù)等誤操作,或發(fā)生程序受外界嚴(yán)重干擾而“跑飛”等情況時,也要有一定的對策,以防止對系統(tǒng)造成嚴(yán)重?fù)p失。3)可維護(hù)性一個完整的控制軟件,通常需要一個不斷地設(shè)計(jì)、調(diào)試、修改和完善的過程,才會最終滿足系統(tǒng)所需的功能要求。因此,在軟件的總體設(shè)計(jì)時,必須要有良好的程序結(jié)構(gòu)設(shè)計(jì),以便于程序的反復(fù)調(diào)試、修改和補(bǔ)充,并保證最終的軟件仍具有簡潔明了的結(jié)構(gòu)。4.2主程序的設(shè)計(jì)系統(tǒng)軟件采用模塊化程序設(shè)計(jì),使程序流程清晰明了。系統(tǒng)主程序主要完成的內(nèi)容:系統(tǒng)參數(shù)初始化、打開中斷、啟動電機(jī)等。系統(tǒng)主程序流程圖如圖4-1所示??梢钥闯?,主程序是一個死循環(huán),在系統(tǒng)上電初始化完畢后,系統(tǒng)一直在不斷的執(zhí)行這個循環(huán)程序。在循環(huán)過程中,若產(chǎn)生中斷,則程序就轉(zhuǎn)去執(zhí)行相應(yīng)的中斷服務(wù)程序。在后面將逐一介紹中斷服務(wù)程序,功能子程序等的設(shè)計(jì)。圖4-1主程序流程圖4.3顯示子程序的設(shè)計(jì)4.3.1LCD1602顯示原理LCD1602液晶模塊內(nèi)部的字符發(fā)生存儲器(CGROM)已經(jīng)存儲了160個不同的點(diǎn)陣字符圖形,如表4-1所示,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號等,每一個字符都有一個固定的代碼[10],比如大寫的英文字母‘A’的代碼是41H,顯示時1602把地址41H中的點(diǎn)陣字符圖形顯示出來,我們就能看到字母‘A’。表4-11602字符碼表它的讀寫操作、屏幕和光標(biāo)的操作都是通過指令編程來實(shí)現(xiàn)的。指令如表4-2所示。表4-2LCD1602字符模塊指令表指令RSRWD7D6D5D4D3D2D1D0清顯示0000000001光標(biāo)返回000000001?置位輸入模式00000001I/DS顯示開/關(guān)控制0000001DCB光標(biāo)或字符移位000001S/CR/L??置位顯示行、字體00001DLNF??置位字符發(fā)生存儲器0001字符發(fā)生存儲器地址(ACG)置位數(shù)據(jù)存儲器地址001顯示數(shù)據(jù)存儲器地址(ADD)讀忙標(biāo)志或地址01BF計(jì)數(shù)器地址(AC)寫數(shù)到CGRAM或DDRAM10要寫入的數(shù)據(jù)從CGRAM或DDRAM讀數(shù)11讀出的數(shù)據(jù)表中1代表高電平、0代表低電平,指令功能具體說明如下:指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。指令3:光標(biāo)和顯示模式設(shè)置。I/D:光標(biāo)移動方向,高電平右移,低電平左移。S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效。指令4:顯示開關(guān)控制。D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示。C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo)。B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。指令5:光標(biāo)或顯示移位。S/C:高電平時移動顯示的文字,低電平時移動光標(biāo)。指令6:功能設(shè)置命令。DL:高電平時為4位總線,低電平時為8位總線。N:低電平時為單行顯示,高電平時雙行顯示。F:低電平時顯示5×7的點(diǎn)陣字符,高電平時顯示5×10的點(diǎn)陣字符。指令7:字符發(fā)生器RAM地址設(shè)置。指令8:DDRAM地址設(shè)置。指令9:讀忙信號和光標(biāo)地址。BF:為忙標(biāo)志位,高電平表示忙,此時模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。指令10:寫數(shù)據(jù)。指令11:讀數(shù)據(jù)。4.3.2LCD1602液晶顯示流程字符顯示模塊LCD1602的編程較為簡單,只要先輸入命令字,設(shè)置其工作方式,然后在將顯示數(shù)據(jù)輸入指定的存儲器位置即可。流程圖如圖4-2所示。圖4-2LCD1602顯示子程序流程圖4.4鍵盤子程序的設(shè)計(jì)在“鍵盤模塊的設(shè)計(jì)”部分中提到了由于本設(shè)計(jì)的鍵盤鍵數(shù)較少,所以采取了獨(dú)立鍵盤作為設(shè)計(jì)的控制信號采集裝置。軟件實(shí)現(xiàn)時,可以采用中斷方式,也可以采用查詢方式??紤]到AT89C52的中斷源合理分配,本設(shè)計(jì)采取了查詢方式。查詢方式是指在程序中用一段專門的掃描和讀按鍵程序不停查詢有無按鍵按下,確定鍵值。這種方式電路簡單,但需要占用單片機(jī)的機(jī)器時間??刂菩畔⒉杉能浖鞒虉D如下:圖4-3鍵盤程序流程圖
4.5驅(qū)動程序流程圖圖4-4驅(qū)動程序流程圖4.6調(diào)速程序流程圖4.6.1正反轉(zhuǎn)程序流程圖步進(jìn)電機(jī)正向轉(zhuǎn)動時,單片機(jī)P1口輸出序列為:0xf3,0xf1,0xf9,0xf8,0xfc,0xf4,0xf6,0xf2;將單片機(jī)脈沖反向輸出即可實(shí)現(xiàn)步進(jìn)電機(jī)的反向轉(zhuǎn)動。圖4-5正反轉(zhuǎn)程序流程圖轉(zhuǎn)速快慢程序流程圖定時器初始值定義后,改變定時器循環(huán)次數(shù),即可實(shí)現(xiàn)步進(jìn)電機(jī)的加減速調(diào)節(jié)。輸出頻率延時序列為:40,24,15,12,10,8,4,3,2,1,對應(yīng)的電機(jī)速度為:3,5,8,10,12,15,30,40,60,120轉(zhuǎn)/分鐘。圖4-6轉(zhuǎn)速快慢程序流程圖4.6.3定時中斷流程圖圖4-7中斷子程序流程圖
5系統(tǒng)的仿真在控制系統(tǒng)開發(fā)中,常常需要消耗各種硬件資源,系統(tǒng)構(gòu)建時間長,而在調(diào)試時很難對硬件系統(tǒng)進(jìn)行修改,從而延長開發(fā)周期。隨著計(jì)算機(jī)仿真技術(shù)的出現(xiàn)和發(fā)展,可用計(jì)算機(jī)對系統(tǒng)進(jìn)行仿真,從而減小系統(tǒng)開發(fā)開支和周期。計(jì)算機(jī)仿真可分為整體仿真和實(shí)時仿真。整體仿真是對系統(tǒng)各個時間段對各個對象進(jìn)行計(jì)算和分析,從而對各個對象的變化情況有直觀的整體的了解,即能對系統(tǒng)進(jìn)行精確的預(yù)測,如Matlab就是一個典型的整體仿真軟件。實(shí)時仿真是對時間點(diǎn)的動態(tài)仿真,即隨著時間的推移它能動態(tài)仿真出當(dāng)時系統(tǒng)的狀態(tài)。ProteusISIS是一個實(shí)時仿真軟件,用來仿真各種嵌入式系統(tǒng)。它能對各種微控制器進(jìn)行仿真,本系統(tǒng)即用ProteusISIS對步進(jìn)電機(jī)控制系統(tǒng)進(jìn)行仿真。5.1ProteusISIS介紹ProteusISIS是英國Labcenter公司開發(fā)的電路分析與實(shí)物仿真軟件。它運(yùn)行于Windows操作系統(tǒng)上,可以仿真、分析(SPICE)各種模擬器件和集成電路。5.1.1ProteusISIS的特點(diǎn)1)實(shí)現(xiàn)了單片機(jī)仿真和SPICE電路仿真相結(jié)合。具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、RS232動態(tài)仿真、I2C調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號發(fā)生器等。2)支持主流單片機(jī)系統(tǒng)的仿真。目前支持的單片機(jī)類型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、ARM系列、HC11系列以及各種外圍芯片。3)提供軟件調(diào)試功能。在硬件仿真系統(tǒng)中具有全速、單步、設(shè)置斷點(diǎn)等調(diào)試功能,同時可以觀察各個變量、寄存器等的當(dāng)前狀態(tài)。4)具有強(qiáng)大的原理圖繪制功能??傊?,Proteus是一款集單片機(jī)和SPICE分析于一身的仿真軟件,功能極其強(qiáng)大。Proteus與其它單片機(jī)仿真軟件不同的是,它不僅能仿真單片機(jī)CPU的工作情況,也能仿真單片機(jī)外圍電路或沒有單片機(jī)參與的其它電路的工作情況。因此在仿真和程序調(diào)試時,關(guān)心的不再是某些語句執(zhí)行時單片機(jī)寄存器和存儲器內(nèi)容的改變,而是從工程的角度直接看程序運(yùn)行和電路工作的過程和結(jié)果。使用Proteus軟件可以在項(xiàng)目開發(fā)的前期完全脫離硬件平臺,可以說是嵌入式開發(fā)的一次革命。5.1.2Proteus仿真注意事項(xiàng)利用Proteus仿真C51時,需要提供給仿真芯片HEX文件,HEX文件是編寫的軟件經(jīng)編譯連接后進(jìn)行轉(zhuǎn)換所生成,它是硬件可直接識別的代碼格式,通過加載HEX文件,可實(shí)現(xiàn)對系統(tǒng)應(yīng)用功能的仿真。5.2系統(tǒng)電路仿真圖本系統(tǒng)的電路仿真圖如圖5-1所示。圖5-1系統(tǒng)電路仿真全圖在AT89C52的屬性中,可加載芯片運(yùn)行時所需的HEX文件,此文件是本設(shè)計(jì)的程序經(jīng)KeilC51編譯后所生成。5.3各子系統(tǒng)仿真設(shè)計(jì)5.3.1驅(qū)動電路仿真Proteus的元件庫中提供許多種類型的電機(jī)元件,從簡單的直流電機(jī)到步進(jìn)電機(jī)、伺服電機(jī)都有,我們選取步進(jìn)電機(jī)MOTOR-STEPPER來仿真。在MOTOR-STEPPER的屬性中可設(shè)置其參數(shù),本系統(tǒng)對MOTOR-STEPPER的參數(shù)設(shè)置如表5-1所示。表5-1Motor-Stepper參數(shù)表參數(shù)名參數(shù)值額定電壓12V步進(jìn)角度7.5線圈電阻120?線圈電感100mH最大轉(zhuǎn)速720rpmProteus的仿真元件庫中提供了ULN2803的芯片仿真模型,將ULN2803的1C-4C分別接入到MOTOR-STEPPER圖5-2電機(jī)驅(qū)動電路仿真圖5.3.2鍵盤輸入仿真本系統(tǒng)用獨(dú)立式鍵盤實(shí)現(xiàn)轉(zhuǎn)速控制信號的輸入。在仿真時可通過鼠標(biāo)直接點(diǎn)擊仿真鍵盤上的按鍵模擬真實(shí)鍵盤的輸入。本設(shè)計(jì)中各按鍵的功能如下:①K1鍵用于控制電機(jī)的啟動、停止。②K2鍵用于控制步進(jìn)電機(jī)轉(zhuǎn)向。③K3鍵用于控制步進(jìn)電機(jī)的轉(zhuǎn)速增加一級。④K4鍵用于控制步進(jìn)電機(jī)的轉(zhuǎn)速減少一級。鍵盤的仿真圖如圖5-3所示。圖5-3鍵盤的仿真圖5.3.3轉(zhuǎn)速顯示仿真在Proteus的元件庫中選取LCD1602模塊LM016L進(jìn)行仿真。1602采用標(biāo)準(zhǔn)的14腳接口,其中8位雙向數(shù)據(jù)線D0-D7接單片機(jī)P0.0-P0.7,寄存器選擇端RS接單片機(jī)P2.0,讀寫信號線RW接單片機(jī)P2.1,使能端E接單片機(jī)P2.2。圖5-4LCD顯示仿真圖5.4系統(tǒng)仿真的運(yùn)行流程當(dāng)連接好仿真圖和載入AT89C52的執(zhí)行文件后,單擊Proteus的仿真啟動按鈕,則開始對本系統(tǒng)的仿真。其運(yùn)行流程如下:1)首先進(jìn)入啟動界面,本系統(tǒng)每次啟動后將進(jìn)入待機(jī)界面,同時步進(jìn)電機(jī)進(jìn)入待機(jī)狀態(tài)。如圖5-5所示。圖5-5啟動仿真后LCD顯示2)當(dāng)按下K1/啟動停止鍵后,此時系統(tǒng)將開始驅(qū)動電機(jī),電機(jī)將以0級速度3轉(zhuǎn)/分鐘正轉(zhuǎn),如圖5-6所示,LCD的第一行顯示的是系統(tǒng)的轉(zhuǎn)速級別,第二行顯示轉(zhuǎn)速和轉(zhuǎn)向。其中數(shù)字代表轉(zhuǎn)速值,前面的正負(fù)號代表轉(zhuǎn)向。圖5-6中步進(jìn)電機(jī)下方的數(shù)字代表轉(zhuǎn)動中的電機(jī)實(shí)時相位。圖5-6電機(jī)以最低速正轉(zhuǎn)3)每按一次K3/速度加后,電機(jī)的速度將提高一個級別,當(dāng)連續(xù)按下7次后,電機(jī)將以6級速度30轉(zhuǎn)/分鐘正轉(zhuǎn),如圖5-7所示,直到9級最高速120轉(zhuǎn)/分鐘。圖5-7電機(jī)以6級速度正轉(zhuǎn)每按一次K4/速度減后,電機(jī)的速度將降低一個級別,直到0級最低速3轉(zhuǎn)/分鐘。在電機(jī)運(yùn)行的任何時刻可以按下K2/正反鍵,使電機(jī)在正反轉(zhuǎn)動之間轉(zhuǎn)換。電機(jī)以6級速度30轉(zhuǎn)/分鐘反轉(zhuǎn)如圖5-8所示。圖5-8電機(jī)以6級速度反轉(zhuǎn)4)在電機(jī)運(yùn)行的任何時刻可以按下K1/啟動停止鍵,此時電機(jī)將暫停運(yùn)行。再次按下K1/啟動停止鍵,步進(jìn)電機(jī)將以暫停前的速度繼續(xù)運(yùn)行。如圖5-9所示。圖5-9系統(tǒng)暫停運(yùn)行5.5仿真設(shè)計(jì)與硬件實(shí)物5.5.1硬件實(shí)物在Proteus平臺仿真成功后,為了對比仿真設(shè)計(jì)和硬件實(shí)物設(shè)計(jì)的差別,本設(shè)計(jì)在最后階段進(jìn)行了硬件實(shí)物的設(shè)計(jì)。圖5-10硬件實(shí)物設(shè)計(jì)5.5.2對比分析1)由于在仿真中,是使用單片機(jī)的仿真模型代替真實(shí)電路的功能,這樣會有很多因素影響仿真結(jié)果,如仿真軟件所在的系統(tǒng)配置,用戶仿真過程中的其它活動,都會影響到仿真軟件的運(yùn)行。仿真測試的性能不能完全代表本系統(tǒng)的真實(shí)性能。2)由于仿真是基于軟件實(shí)現(xiàn)的,所以與在硬件實(shí)物上運(yùn)行的真實(shí)系統(tǒng)比較,仿真系統(tǒng)在實(shí)時性上有所降低,尤其本系統(tǒng)采用中斷方式控制轉(zhuǎn)速,計(jì)時器功能與實(shí)際相比,存在一定延時和誤差,故造成仿真中電機(jī)的轉(zhuǎn)速與硬件實(shí)物的轉(zhuǎn)速有較大的誤差。3)在仿真設(shè)計(jì)中,鍵盤不采用消抖設(shè)計(jì)對信息的采集不產(chǎn)生任何影響。而硬件實(shí)物的按鍵如果不消抖,則會出現(xiàn)按鍵不準(zhǔn)確,對整體設(shè)計(jì)的穩(wěn)定性有較大影響。4)在仿真設(shè)計(jì)中,電機(jī)在轉(zhuǎn)速較高的場合下,會出現(xiàn)失步或抖動。而在硬件實(shí)物中,本設(shè)計(jì)電機(jī)控制的精度良好,沒有出現(xiàn)失步或抖動。在本系統(tǒng)所要求的轉(zhuǎn)速范圍內(nèi),轉(zhuǎn)速控制的精度還是達(dá)到了較好的效果。綜上所述,在嵌入式設(shè)計(jì)的前期階段,使用計(jì)算機(jī)對系統(tǒng)進(jìn)行仿真,可以較好的滿足設(shè)計(jì)需要,有效地減少系統(tǒng)開發(fā)開支和周期,可以說是嵌入式系統(tǒng)開發(fā)和學(xué)習(xí)的一次革命。
結(jié)論本設(shè)計(jì)用單片機(jī)AT89C52及外部擴(kuò)展設(shè)備實(shí)現(xiàn)對步進(jìn)電機(jī)的轉(zhuǎn)速控制,在硬件上采用了大功率達(dá)林頓管單極性驅(qū)動電路,解決了電機(jī)驅(qū)動的效率問題,在軟件上也采用了較為合理的系統(tǒng)結(jié)構(gòu)及算法,用軟件編程完成了轉(zhuǎn)速驅(qū)動,實(shí)現(xiàn)了對轉(zhuǎn)速的最優(yōu)化調(diào)節(jié),提高了單片機(jī)的使用效率。同時還實(shí)現(xiàn)了轉(zhuǎn)速的鍵盤輸入控制,轉(zhuǎn)速即時顯示等功能。歸納起來,本文首先介紹了單片機(jī)以及步進(jìn)電機(jī)的基本概念和理論,接著介紹了基于AT89C52的嵌入式硬件設(shè)計(jì)和軟件設(shè)計(jì),并簡要分析了各部分的設(shè)計(jì)結(jié)構(gòu)。然后分別介紹了硬件部分和軟件部分的實(shí)現(xiàn)技術(shù)及實(shí)現(xiàn)方法。最后通過ProteusISIS進(jìn)行仿真,取得了良好的結(jié)果,并與硬件實(shí)物進(jìn)行對比分析,使用Proteus仿真設(shè)計(jì)的步進(jìn)電機(jī)控制系統(tǒng)各項(xiàng)性能指標(biāo)都能夠滿足實(shí)際生產(chǎn)的要求。步進(jìn)電機(jī)調(diào)速系統(tǒng)適用各種現(xiàn)場自動化控制,特別適用于小功率負(fù)載的控制,具有成本底,性能穩(wěn)定,可靠性高等優(yōu)點(diǎn)。步進(jìn)電機(jī)作為執(zhí)行元件,在科技的進(jìn)步中起到了非常重要的作用,而步進(jìn)電機(jī)調(diào)速系統(tǒng)可方便地應(yīng)用于各種自動化控制領(lǐng)域。通過本次設(shè)計(jì),加強(qiáng)了對單片機(jī)應(yīng)用知識的掌握,同時了解了目前工業(yè)生產(chǎn)中數(shù)字化系統(tǒng)的重要性,使我對使用單片機(jī)實(shí)現(xiàn)自動化控制的設(shè)計(jì)過程有了全面地了解。通過學(xué)習(xí)控制系統(tǒng)工作原理以及如何利用單片機(jī)控制步進(jìn)電機(jī),我查閱了大量相關(guān)資料,學(xué)會了許多知識,培養(yǎng)了我獨(dú)立解決問題的能力。同時在對硬件電路設(shè)計(jì)的過程中,鞏固了我的專業(yè)課知識,使自己受益匪淺。當(dāng)然在本次設(shè)計(jì)中還有需要完善的地方,比如可以設(shè)計(jì)一個UPS電源,防止在斷電的情況下造成系統(tǒng)損害,保證生產(chǎn)的連續(xù)運(yùn)行。總之,通過本次設(shè)計(jì)不僅進(jìn)一步強(qiáng)化了專業(yè)知識,還掌握了設(shè)計(jì)系統(tǒng)的方法、步驟等,為今后的工作和學(xué)習(xí)打下了堅(jiān)實(shí)的基礎(chǔ)。通過幾個月的努力,即將完成論文,當(dāng)然由于本人精力和時間有限,本論文中或多或少會存在一些缺點(diǎn),所設(shè)計(jì)的軟硬件難免存在一些不足,還懇請各位老師和同學(xué)給予批評和指正。
致謝畢業(yè)設(shè)計(jì)是一個理論聯(lián)系實(shí)際,培養(yǎng)科研素質(zhì)、科研能力的課題。因此,在此設(shè)計(jì)過程中必須將平時所學(xué)理論運(yùn)用于實(shí)踐,并在實(shí)踐過程中不斷學(xué)習(xí),不斷加深理解,解決大學(xué)階段理論學(xué)習(xí)與實(shí)踐的矛盾,達(dá)到鍛煉動手能力的目的。在論文即將完成之際,我衷心的感謝所有指導(dǎo)、關(guān)心和幫助我的老師、同學(xué)和朋友。首先要感謝我的畢業(yè)設(shè)計(jì)指導(dǎo)老師王載陽老師和楊宏老師。王老師和楊老師嚴(yán)謹(jǐn)求實(shí)的科研作風(fēng)、深邃敏捷的思想洞察、勤奮忘我的工作精神,給我留下了深刻的印象,正是由于他們在思想、學(xué)習(xí)和生活等各個方面的典范作用,在科研中創(chuàng)造的良好學(xué)術(shù)氣氛,在系統(tǒng)研究過程中的及時幫助,才使得我的本科畢業(yè)設(shè)計(jì)順利完成。在此,謹(jǐn)向老師致以衷心的感謝和崇高的敬意。此外,我還要感謝電信系實(shí)驗(yàn)室的各位老師。他們?yōu)檫@次畢業(yè)設(shè)計(jì)提供了良好的環(huán)境,在軟硬件設(shè)計(jì)及論文寫作期間給了我許多幫助和建議,付出了辛勤的勞動。最后,感謝所有評審本文和對本文提出寶貴意見的老師和同學(xué)。
參考文獻(xiàn)[1]周潤景,張麗娜.基于Proteus的電路及單片機(jī)系統(tǒng)設(shè)計(jì)與仿真[M].北京:北京航空航天大學(xué)出版社,2006:182-183[2]代啟化.基于Proteus的電路設(shè)計(jì)與仿真[J].現(xiàn)代電子技術(shù),2006,29(19):84-86[3]胡文金,鐘秉翔,楊健.單片機(jī)應(yīng)用技術(shù)實(shí)訓(xùn)教程[M].重慶:重慶大學(xué)出版社,2005:2-3[4]寧成軍,張江霞.基于Proteus和Keil接口的單片機(jī)外圍硬件電路仿真[J].現(xiàn)代電子技術(shù),2006,18:142[5]李學(xué)禮,林海峰.基于Proteus軟件的單片機(jī)實(shí)驗(yàn)室建設(shè)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2005,9:5[6]張洪潤,藍(lán)清華.單片機(jī)應(yīng)用技術(shù)教程[M].北京:清華大學(xué)出版社,1997.[7]于海生,等.微型計(jì)算機(jī)控制技術(shù)[M].北京:清華大學(xué)出版社,1999.[8]王福瑞,等.單片機(jī)微機(jī)測控系統(tǒng)設(shè)計(jì)大全[M].北京:北京航空航天大學(xué)出版社,1998.[9]陳理壁.步進(jìn)電機(jī)及其應(yīng)用[M].上海:上海科學(xué)技術(shù)出版社,1989.[10]劉保延等.步進(jìn)電機(jī)及其驅(qū)動控制系統(tǒng)[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1997.[11]季維發(fā),過潤秋,嚴(yán)武升等.機(jī)電一體化技術(shù)[M].北京:電子工業(yè)出版社,1995.[12]郭敬樞,莊繼東,孔峰.微機(jī)控制技術(shù)[M].重慶:重慶大學(xué)出版社,1994.[13]劉國榮.單片微型計(jì)算機(jī)技術(shù)[M].北京:機(jī)械工業(yè)出版社,1996.[14]王福瑞.單片微機(jī)測控系統(tǒng)設(shè)計(jì)大全[M].北京:北京航空航天大學(xué)出版社,1998.[15]何立民.單片機(jī)應(yīng)用技術(shù)選編[M].北京:北京航空航天大學(xué)出版社,1993.[16]潘新民等:單片微型計(jì)算機(jī)實(shí)用系統(tǒng)設(shè)計(jì).北京:人民郵電出版社,1992.[17]王潤孝,秦現(xiàn)生編著.機(jī)床數(shù)控原理與系統(tǒng).西安.西北工業(yè)大學(xué)出版社,1997.[18]李伯成,侯伯李等編.IBM-PC微機(jī)應(yīng)用系統(tǒng)設(shè)計(jì).西安.西安電子科技大學(xué),1996.[19]黃義源主編.機(jī)械設(shè)備電氣與數(shù)字控制.北京.中共廣播電視大學(xué)出版社,1992.
附錄Ⅰ程序#include<REG52.H>#include<intrins.h>#defineucharunsignedchar //用uchar代替unsignedchar#defineuintunsignedint //uint代替unsignedint#defineMotPortP1#defineTH0VAL-38536/256#defineTL0VAL-38536%256 //定時初始typedefunsignedcharBYTE;typedefunsignedintWORD;typedefbitBOOL;sbitrs=P2^0;sbitrw=P2^1;sbitep=P2^2;BYTEcodedis1[]={"INTELLGENTMOTOR"};BYTEcodedis2[]={"PRESSSTART"};BYTEcodedis3[]={"GRADE:"};BYTEcodedis4[]={"SPEED:"};ucharcodeMot1Code[]={0xf3,0xf1,0xf9,0xf8,0xfc,0xf4,0xf6,0xf2}; //M1步碼表ucharcodeSpeedTab[]={40,24,15,12,10,8,4,3,2,1}; //延遲表uintcodespeed[]={3,5,8,10,12,15,30,40,60,120}; //對應(yīng)的速度表ucharbdataMotorWorkMode=0; //馬達(dá)工作狀態(tài)寄存器sbitB_M1StartStop=MotorWorkMode^0; //M1運(yùn)動/停止(0:停止;1:運(yùn)動)sbitB_M1Face=MotorWorkMode^1; //M1方向(0:正轉(zhuǎn);1:反轉(zhuǎn))sbitK_M1StartStop=P2^4; //M1停止/運(yùn)行sbitK_M1Face=P2^5; //M1正向/反向sbitK_SpeedAdd=P2^6; //速度加sbitK_SpeedDec=P2^7; //速度減ucharcount=1; //計(jì)數(shù)器ucharSpeedStep; //速度級0-9uchardisbuf[3];ucharspeedbuf[4];voiddelay(BYTEms);BOOLlcd_bz(void);voidlcd_wcmd(BYTEcmd);voidlcd_pos(BYTEdat);voidlcd_wdat(BYTEdat);voidlcd_init(void);voidmain() //主函數(shù){ BYTEi; TH0=TH0VAL; TL0=TL0VAL; //定時器0初值 TH1=(65536-50000)/256; TL1=(65536-50000)%256; TR0=1; //定時器0開始計(jì)數(shù) ET0=1; //開CTC0中斷 TR1=1; ET1=1; EA=1; //開總中斷 P0=0xff; lcd_init(); delay(10); lcd_pos(0); i=0; while(dis1[i]!='\0') { lcd_wdat(dis1[i]); i++; } lcd_pos(0x40); i=0; while(dis2[i]!='\0') { lcd_wdat(dis2[i]); i++; } while(1) { if(!K_M1StartStop) { delay(10); while(!K_M1StartStop); delay(10); B_M1StartStop=!B_M1StartStop; } if(!K_M1Face) { delay(10); while(!K_M1Face); delay(10); B_M1Face=!B_M1Face; } if(!K_SpeedAdd) //速度加 { delay(10); while(!K_SpeedAdd); delay(10); SpeedStep++; if(SpeedStep==10){SpeedStep=9;} } if(!K_SpeedDec) //速度減 { delay(10); while(!K_SpeedDec); delay(10); SpeedStep--; if(SpeedStep==255){SpeedStep=0;} } }}voidTimer0(void)interrupt1using2 //定時器0中斷{ staticucharM1Index; //步碼索引 TH0=TH0VAL; TL0=TL0VAL; //定時器0初值 count--; if(count==0) { count=SpeedTab[SpeedStep]; //根據(jù)速度級重裝計(jì)數(shù)器,需要更快速度可更改定時器初值 switch(MotorWorkMode) { case0x1:{if(P_M1H==1) {M1Index++;} break;} //M1正轉(zhuǎn) case0x3:{if(P_M1L==1) {M1Index--;} break;} //M1反轉(zhuǎn) default:break; } if(M1Index==8) {M1Index=0;} else { if(M1Index==255){M1Index=7;} } MotPort=Mot1Code[M1Index]; //輸出M1步碼 }}voidTimer1(void)interrupt3{uchari,j;TH1=(65536-50000)/256;TL1=(65536-50000)%256;j++;disbuf[0]=SpeedStep/100;disbuf[1]=SpeedStep%100/10;disbuf[2]=SpeedStep%10;speedbuf[0]=speed[SpeedStep]/1000;speedbuf[1]=speed[SpeedStep]%1000/100;speedbuf[2]=speed[SpeedStep]%1000%100/10;speedbuf[3]=speed[SpeedStep]%10;if(j==20) { j=0; if((MotorWorkMode&0x01)==0x00) { lcd_pos(0); i=0; while(dis1[i]!='\0') { lcd_wdat(dis1[i]); i++; } lcd_pos(0x40); i=0; while(dis2[i]!='\0') { lcd_wdat(dis2[i]); i++; } } else { lcd_pos(0); i=0; while(dis3[i]!='\0') { lcd_wdat(dis3[i]); i++; } lcd_pos(0x40); i=0; while(dis4[i]!='\0') { lcd_wdat(dis4[i]); i++; } } switch(MotorWorkMode&0x3) { case0x1: { lcd_pos(0x46); lcd_wdat('+'); lcd_pos(0x06); lcd_wdat(disbuf[0]+0x30); lcd_pos(0x07); lcd_wdat(disbuf[1]+0x30); lcd_pos(0x08); lcd_wdat(disbuf[2]+0x30); lcd_pos(0x47); lcd_wdat(speedbuf[0]+0x30); lcd_pos(0x48); lcd_wdat(speedbuf[1]+0x30); lcd_pos(0x49); lcd_wdat(speedbuf[2]+0x30); lcd_pos(0x4a); lcd_wdat(speedbuf[3]+0x30); break; } case0x3: { lcd_pos(0x46); lcd_wdat('-'); lcd_pos(0x06); lcd_wdat(disbuf[0]+0x30); lcd_pos(0x07); lcd_wdat(disbuf[1]+0x30); lcd_pos(0x08); lcd_wdat(disbuf[2]+0x30); lcd_pos(0x47); lcd_wdat(speedbuf[0]+0x30); lcd_pos(0x48); lcd_wdat(speedbuf[1]+0x30); lcd_pos(0x49); lcd_wdat(speedbuf[2]+0x30); lcd_pos(0x4a); lcd_wdat(speedbuf[3]+0x30); break; } default:break; } }}voiddelay(BYTEms) //延時子程序{ BYTEi; while(ms--) { for(i=0;i<250;i++) { _nop_();_nop_();_nop_();_nop_(); } }}BOOLlcd_bz() //測試LCD忙碌狀態(tài){ BOOLresult; rs=0; rw=1; ep=1; _nop_();_nop_();_nop_();_nop_(); result=(BOOL)(P0&0x80); ep=0; returnresult;}voidlcd_wcmd(BYTEcmd) //寫入指令數(shù)據(jù)到LCD{ while(lcd_bz()); rs=0; rw=0; ep=0; _nop_();_nop_(); P0=cmd; _nop_();_nop_();_nop_();_nop_(); ep=1; _nop_();_nop_();_nop_();_nop_(); ep=0;}voidlcd_pos(BYTEpos) //設(shè)定顯示數(shù)據(jù){ lcd_wcmd(pos|0x80);}voidlcd_wdat(BYTEdat) //寫入字符顯示數(shù)據(jù)到LCD{ while(lcd_bz()); rs=1; rw=0; ep=0; P0=dat; _nop_();_nop_();_nop_();_nop_(); ep=1; _nop_();_nop_();_nop_();_nop_(); ep=0;}voidlcd_init() //LCD初始化{ lcd_wcmd(0x38); delay(1); lcd_wcmd(0x0c); delay(1); lcd_wcmd(0x06); delay(1); lcd_wcmd(0x01); //清除LCD顯示內(nèi)容 delay(1);}
附錄Ⅱ中文譯文教學(xué)用步進(jìn)電機(jī)和串行通信接口子板VenkatDronamraju,GurunathAthalye,JamesMConradUniversityofNorthCarolina-Charlotte【摘要】本文介紹了設(shè)計(jì)與開發(fā)步進(jìn)電機(jī)驅(qū)動器和串行接口組成的一種子板。這塊板子的目的是提供給嵌入式系統(tǒng)的學(xué)生一種手段來設(shè)計(jì)和開發(fā)步進(jìn)電機(jī)和簡單的RS-232C接口串行通信的自動化應(yīng)用。該子板的步進(jìn)電機(jī)是一種雙極性6線電機(jī)。步進(jìn)電機(jī)和串行通信的驅(qū)動軟件是在瑞薩嵌入式評估板所提供的High-performanceEmbeddedWorkshop(HEW)集成開發(fā)環(huán)境下使用C語言編寫的。步進(jìn)電機(jī)的驅(qū)動可以使其工作在整步、半步和微步模式。最后在電路實(shí)驗(yàn)板上測試電路的功能和進(jìn)行PCB布局設(shè)計(jì)及制做。【關(guān)鍵詞】串行通信步進(jìn)電機(jī)1.導(dǎo)言在當(dāng)今世界上,需要越來越多的嵌入式工程師激增性的使用微控制器。全球電子設(shè)備中90%是嵌入式系統(tǒng),到2010年嵌入式程序員將是其它類型的程序員的10倍以上。因此,有必要制定不同的工具,用于嵌入式領(lǐng)域培養(yǎng)學(xué)生。同時,在各種嵌入式系統(tǒng)課程的實(shí)驗(yàn)工作上,學(xué)生對各種接口技術(shù)往往要求增加更多的指導(dǎo)和經(jīng)驗(yàn)的傳授。步進(jìn)電機(jī)廣泛應(yīng)用于自動化行業(yè)。各種通信技術(shù)被用來控制這些電機(jī),包括嵌入式系統(tǒng),個人電腦和可編程邏輯控制器。作者決定設(shè)計(jì)一個子卡,這個卡可以插入教學(xué)嵌入式評估板。子板的設(shè)計(jì)由步進(jìn)電機(jī)和串行通信接口組成。這個測試板開發(fā)了一種工具,可以讓學(xué)生學(xué)習(xí)貫徹這兩個功能在各種自動化上的應(yīng)用?;谖⒖刂破鞯牟竭M(jìn)電機(jī)接口是用來激勵電機(jī)繞組順序以及精確控制電機(jī)步長。并行端口的接口是用來給電機(jī)線圈邏輯信號的。步進(jìn)電機(jī)驅(qū)動并不能直接使用微控制器的信號,必須將微控制器的信號通過功率放大器才能驅(qū)動步進(jìn)電機(jī)。為了讓使用者更好的控制,微控制器的接口與使用RS-232C串行接口的個人電腦連通。RS-232C是一個數(shù)據(jù)終端設(shè)備和數(shù)據(jù)通信設(shè)備之間互連的標(biāo)準(zhǔn)串行二進(jìn)制接口。RS-232C是一種常用的計(jì)算機(jī)串行端口,但更重要的是,它被廣泛應(yīng)用于的簡單、低速在完成電路板的設(shè)計(jì)后,在電路實(shí)驗(yàn)板上測試電路。測試成功后,設(shè)計(jì)及制做了一個雙層布局的PCB電路板。它包括兩個DB9連接器,一個RS-232C接口驅(qū)動電路,和用來驅(qū)動兩個步進(jìn)電機(jī)的4個步進(jìn)電機(jī)驅(qū)動電路。圖1是子板的系統(tǒng)框圖。UART0和UART1用于串行通信端口,P4和P5用于驅(qū)動電路的連接。該子板基于瑞薩SKP30626評估板設(shè)計(jì)圖1子板系統(tǒng)框圖電機(jī)接口模塊代表了步進(jìn)電機(jī)的驅(qū)動電路,每個電機(jī)的驅(qū)動電路都包括兩個LMD18245集成電路芯片。串行接口模塊包括了MAXIM232集成電路芯片。2.子板接口2.1步進(jìn)電機(jī)步進(jìn)電機(jī)系統(tǒng)是一種將激勵脈沖轉(zhuǎn)換為軸轉(zhuǎn)動的電機(jī)旋轉(zhuǎn)裝置。它是一個無刷直流電動機(jī),其轉(zhuǎn)動是離散的角增量,而定子繞組的通電與否可以用編程的方式實(shí)現(xiàn)。之所以轉(zhuǎn)動是因?yàn)榻o定子繞組的電極和輔助極之間的相繼通電引起的磁場的相互作用。轉(zhuǎn)子繞組沒有電,但突出磁化電極。因此,步進(jìn)電機(jī)是一個數(shù)字電機(jī),其輸入的形式是給定子繞組相繼的通電,其輸出的形式則是離散的步轉(zhuǎn)動。這是一個特別適合用計(jì)算機(jī)控制和數(shù)字控制的驅(qū)動器系統(tǒng)。步進(jìn)電機(jī)的繞組可以是單線也可以是雙線。單線是每一個定子電極都有一個繞組,所以一共有四根導(dǎo)線。雙線每個定子電極都有兩個相同的繞組。步進(jìn)電機(jī)有整步,半步,和微步運(yùn)行模式,任何電機(jī)的輸出模式取決于設(shè)計(jì)的驅(qū)動程序。整步模式(標(biāo)準(zhǔn))下步進(jìn)電機(jī)有200轉(zhuǎn)齒,或者說電機(jī)每200步轉(zhuǎn)一圈。每轉(zhuǎn)是360°,除以200步就是整步模式下步距角為1.8°。在整步模式下,繞組交替通電,因此,從驅(qū)動輸出的一個脈沖即相當(dāng)于一步。在半步模式下電機(jī)轉(zhuǎn)動為400步每轉(zhuǎn)。在這種模式下,先是一個繞組通電,然后兩個繞組通電,由此交替,所以轉(zhuǎn)子每次只旋轉(zhuǎn)一半的距離,即0.9°。雖然它提供了略低的扭矩,半步模式減少了在整步模式運(yùn)行下的“跳動”。微步控制是將電機(jī)繞組兩極之間的電流的進(jìn)一步細(xì)分的控制方式,微步模式突破了電機(jī)速度的寬泛控制,其多用在精確定位和高分辨率上。2.2步進(jìn)電機(jī)接口步進(jìn)電機(jī)驅(qū)動器使用LMD18245T集成電路芯片。由LMD18245T全橋功率放大器構(gòu)成的全電路模塊能驅(qū)動控制刷型直流電機(jī)或單相兩極步進(jìn)電機(jī)的電流。如圖2所示。在LMD18245通過固定時間關(guān)斷斬波技術(shù)控制電機(jī)電流。根據(jù)反饋,斬波放大器通過開關(guān)橋功率器可以控制和限制電機(jī)繞組中的電流。橋式電路是由4個固態(tài)功率開關(guān)和4個二極管連接為H狀。圖2描述了LMD18245的內(nèi)部結(jié)構(gòu)。將數(shù)字輸入給數(shù)模轉(zhuǎn)換器,它會產(chǎn)生相應(yīng)的模擬電壓,作為閾值,將得到的閾值與繞組電流進(jìn)行比較,就能確定循環(huán),它向單穩(wěn)態(tài)多振動器提供信號。如果繞組電流仍少于閾值,在H橋的另半側(cè)裝一個有源開關(guān)和一個接收器開關(guān),供電給繞組兩端的電壓,可以使繞組的電流迅速增加。圖3是H橋的內(nèi)部電路構(gòu)造。H橋的功率級由4個DMOS功率開關(guān)和與其相連的二極管構(gòu)成。雖然H橋處于導(dǎo)通態(tài),繞組電流增大指數(shù)限制卻取決于電源電壓。隨后關(guān)閉接收器開關(guān),這將引起將電壓瞬時發(fā)送給其他有源開關(guān)的體二極管。在二極管壓值下降至電源電壓,二極管箝位的瞬間,并提供了一個替代系統(tǒng)電流的通路。盡管仍然處于導(dǎo)通態(tài),但它基本上可以使繞組短路以及讓繞組電流再循環(huán),并且使其衰減指數(shù)為零。在改變繞組的電流方向期間,無論是開關(guān)還是體二極管都提供給繞組初始電流一個衰減通路。圖4中顯示了一個電機(jī)的驅(qū)動電路。請注意,PGND(引腳5)和SGND(引腳12)是在子板上相互獨(dú)立的,但是短接到芯片上,以減少電源接地超過信號接地產(chǎn)生的高電流影響。圖2LMD18245T的功能框圖圖3LMD18245T的H橋結(jié)構(gòu)圖4電機(jī)的驅(qū)動電路結(jié)構(gòu)圖2.3RS-232C接口串行通信MAX232是一種雙驅(qū)動器/接收器,其中包括由電容式電壓發(fā)生器提供給EIA-232電壓強(qiáng)度為單5V的電源支持。接收器轉(zhuǎn)換EIA-232的輸入給TTL/CMOS5V電壓。這些接收器都有一個1.3V的典型閾值和一個0.5V典型滯后,并且可以接受±30V的輸入。驅(qū)動器將TTL/CMOS的輸入電壓轉(zhuǎn)換為EIA-232的電壓。3.工程設(shè)計(jì)圖5顯示的是一般工程的流程圖。在電路實(shí)驗(yàn)板上進(jìn)行電路測試和系統(tǒng)功能的驗(yàn)證。然后畫出電路原理圖,并根據(jù)電路原理圖使用ORCAD對電路板進(jìn)行布局設(shè)計(jì)。圖5電路板設(shè)計(jì)流程3.1方案設(shè)計(jì)電路板的原理圖的設(shè)計(jì)使用了Cadence公司的PCB制版軟件ORCAD。電路的原理圖可分為兩部分。第一部分包括使用4個集成電路芯片來驅(qū)動兩個電機(jī)的步進(jìn)電機(jī)接口部分,第二部分則包括了使用MAXIM232芯片的串行接口。整個電路板上的驅(qū)動電路的電源和接地要合理布局,并且只在需要的地方連線。電路板被設(shè)計(jì)為可以直接插入瑞薩SKP30262板,因此在電路板的布局設(shè)計(jì)時,其尺寸被瑞薩SKP30262板所約束。板子被設(shè)計(jì)為兩層和小心地采取了獨(dú)立的H橋設(shè)計(jì),以便H橋可以從數(shù)字信源承載更大的電壓。除了LMD18245T(220封裝),其他所有組成部分采取表面貼裝,這使我們減少了電路板的體積和成本。圖6是電路板示意圖。3.2ORCAD設(shè)計(jì)電路板的布局設(shè)計(jì)在CIS網(wǎng)列表的幫助下完成。面臨的挑戰(zhàn)是如何規(guī)劃布局,使步進(jìn)電機(jī)驅(qū)動器和串行通信路線相對獨(dú)立,以降低系統(tǒng)的干擾。4.測試和運(yùn)行在電路板設(shè)計(jì)和制造的過程中使用了以下方法:(1)理論上計(jì)算額定功率,是電機(jī)額定功率和示意圖的構(gòu)成基礎(chǔ)。(2)電路板上個別虛擬的步進(jìn)電路和串行電路需要對其編程。(3)確認(rèn)電路板上電路是工作正常,確認(rèn)電路板上沒有錯誤的連線,然后對模塊的接口之間進(jìn)行編程。(4)開發(fā)電路板的PCB板。(5)測試印制好的PCB板有沒有短路和斷路。(6)焊接所有元件和測試電路板的功能,此時電路板已經(jīng)準(zhǔn)備好,可以用于不同的實(shí)驗(yàn)室項(xiàng)目。5.結(jié)論和下一步工作該子板可作為學(xué)生在未來的嵌入式系統(tǒng)課程中的實(shí)驗(yàn)測試板。隨著模塊的增加,如射頻通信,該子板有可能成為一個更全面的學(xué)生學(xué)習(xí)板。在這個項(xiàng)目上,今后的工作包括開發(fā)一個前端,可以去設(shè)定電機(jī)在不同的模式下工作,也能讀出電機(jī)的參數(shù)。在我們項(xiàng)目中RS-232C通信接口已經(jīng)被使用,未來可以創(chuàng)造性的增加了幾個新的USB通信應(yīng)用。我們認(rèn)為,該子板將成為一個有效的工具,將給學(xué)生的項(xiàng)目學(xué)習(xí)、工作提供一個圖6子板電路圖6.參考資料[1]ConradJ.M.,“IntroducingStudentstotheConceptofEmbeddedSystems,”Proceedingsofthe2004InternationalConferenceonEngineeringEducation,Gainesville,FL,[2]Kamali,B.,“Developmentofanundergraduatestructuredlaboratorytosupportclassicalandnewbasetechnologyexperimentsincommunications,”IEEETransactionsonEducation,vol.37,no.1,Feb,1994,pp.97-105.[3]LMD18245T:NationalSemiconductors/pf/LM/LMD18245.html[4]MAXIM232IC:/quick_view2.cfm/qv_pk/1798[5]DouglasJones'ssteppingmotortutorial/~jones/step/types.html[6]/stepping101.html[7]Mysore,G.D.,Conrad,J.M.,Newberry,B.,“AMicrocontroller-BasedBed-of-NailsTestFixturetoProgramandTestSmallPrintedCircuitBoards”Proceedingsofthe2006SoutheastCon,March31-April2,2006,pp.104–107.附錄Ⅲ文獻(xiàn)原文AStepperMotorandSerialCommunicationInterfaceDaughterBoardforEducationalUseVenkatDronamraju,GurunathAthalye,JamesMConradUniversityofNorthCarolina-Charlottevrdronam,gmathaly,jmconrad@AbstractThispaperpresentsthedesignanddevelopmentofadaughterboardconsistingofsteppermotordriversandserialinterfaces.ThepurposeofthisboardistoprovideembeddedsystemsstudentswithatooltodesignanddevelopautomationapplicationsusingsteppermotorsandsimpleRS-232Cserialcommunications.Thesteppermotorsusedisabipolarsix–wireconfigurationmotor.Softwaredriversforserialcommunicationandthesteppermotorsarewritteninthe‘C’languageusingtheHigh-performanceEmbeddedWorkshop(HEW)IntegratedDevelopmentEnvironmentprovidedwiththeRenesasEmbeddedEvaluationBoard.Thesteppermotorsareprogrammedtodriveinfullstep,halfstep,andmicrostepmode.ThecircuitwastestedonabreadboardforfunctionalityandthePCBlayoutwasdesignedandmanufactured.Keywords:Serialcommunication,steppermotor1.
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國川字網(wǎng)格托盤市場分析及競爭策略研究報告
- 2025━2030年兒童戶外游戲用品行業(yè)深度研究報告
- 2025-2035年全球及中國票據(jù)驗(yàn)證機(jī)行業(yè)市場發(fā)展現(xiàn)狀及發(fā)展前景研究報告
- 2024年中國依氟維綸中間體市場調(diào)查研究報告
- 2025年戶外功能性照明項(xiàng)目建議書
- 拱橋:拱安裝工程現(xiàn)場質(zhì)量檢驗(yàn)報告單(一)
- 靜脈治療安全護(hù)理
- 硝酸鈥鉺銩鐿镥企業(yè)縣域市場拓展與下沉戰(zhàn)略研究報告
- 谷物飲料企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級戰(zhàn)略研究報告
- 商業(yè)保理企業(yè)縣域市場拓展與下沉戰(zhàn)略研究報告
- 北京服裝學(xué)院招聘考試題庫2024
- 金融科技概論-課件 第十五章 金融科技監(jiān)管與監(jiān)管科技
- 2024年江蘇省南京市中考數(shù)學(xué)試卷真題(含答案解析)
- 物資裝卸培訓(xùn)課件
- DB5101-T 71-2020 成都市電動汽車充電設(shè)施 安全管理規(guī)范
- 2025年北京電子科技職業(yè)學(xué)院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 2025年烏蘭察布醫(yī)學(xué)高等專科學(xué)校高職單招職業(yè)技能測試近5年常考版參考題庫含答案解析
- 2024年二級建造師之二建機(jī)電工程實(shí)務(wù)考試題庫含完整答案
- 團(tuán)隊(duì)賦能培訓(xùn)
- 2025年廣東廣州市黃埔區(qū)第二次招聘社區(qū)專職工作人員高頻重點(diǎn)提升(共500題)附帶答案詳解
- 第一單元第2課《人工智能應(yīng)用》說課稿 2023-2024學(xué)年浙教版(2023)初中信息技術(shù)八年級下冊
評論
0/150
提交評論