版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、武漢理工大學(xué)計(jì)算機(jī)控制技術(shù)課程設(shè)計(jì)說明書目錄摘要11 設(shè)計(jì)任務(wù)及要求的分析22 方案比較及認(rèn)證32.1 驅(qū)動(dòng)模塊選擇32.2 單片機(jī)選型33 系統(tǒng)實(shí)現(xiàn)的原理說明44 硬件設(shè)計(jì)說明64.1 單片機(jī)系統(tǒng)原理分析64.2 二相步進(jìn)電機(jī)工作原理分析84.3 步進(jìn)電機(jī)的一些基本參數(shù)104.4 L298驅(qū)動(dòng)電路設(shè)計(jì)104.5 四位LED數(shù)碼管顯示設(shè)計(jì)115 軟件設(shè)計(jì)說明135.1總體流程分析與設(shè)計(jì)135.2 設(shè)置電機(jī)轉(zhuǎn)動(dòng)模式流程分析與設(shè)計(jì)145.3 步進(jìn)電機(jī)四相單四拍,四相雙四拍,四相八拍流程分析與設(shè)計(jì)155.4 顯示模塊流程分析與設(shè)計(jì)165.5 步進(jìn)電機(jī)速度控制分析與設(shè)計(jì)176 調(diào)試記錄及結(jié)果分析186
2、.1 總體硬件仿真設(shè)計(jì)186.2調(diào)試與仿真結(jié)果分析18小結(jié)與心得體會(huì)21參考文獻(xiàn)22附錄1:23附錄2:24武漢理工大學(xué)計(jì)算機(jī)控制技術(shù)課程設(shè)計(jì)說明書摘要 隨著微電子和計(jì)算機(jī)技術(shù)的發(fā)展,步進(jìn)電機(jī)的需求量與日俱增,它廣泛用于打印機(jī)、電動(dòng)玩具等消費(fèi)類產(chǎn)品以及數(shù)控機(jī)床、工業(yè)機(jī)器人、醫(yī)療器械等機(jī)電產(chǎn)品中,其在各個(gè)國(guó)民經(jīng)濟(jì)領(lǐng)域都有應(yīng)用。研究步進(jìn)電機(jī)的控制系統(tǒng),對(duì)提高控制精度和響應(yīng)速度、節(jié)約能源等都具有重要意義。 本控制系統(tǒng)的設(shè)計(jì),由硬件設(shè)計(jì)和軟件設(shè)計(jì)兩部分組成,完成二相步進(jìn)電機(jī)的控制。其中,硬件設(shè)計(jì)主要包括單片機(jī)系統(tǒng)、按鍵控制模塊、步進(jìn)電機(jī)驅(qū)動(dòng)模塊、數(shù)碼顯示模塊等功能模塊的設(shè)計(jì),以及硬件電路在
3、Proteus上的仿真。軟件設(shè)計(jì)包括主程序以及各個(gè)模塊的控制程序,最終實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)轉(zhuǎn)動(dòng)方向及轉(zhuǎn)動(dòng)模式(四拍,八拍)的控制,并且將步進(jìn)電機(jī)的步進(jìn)數(shù)動(dòng)態(tài)顯示在LED數(shù)碼管上。本系統(tǒng)具有智能性、實(shí)用性及可靠性的特點(diǎn)。關(guān)鍵詞:二相步進(jìn)電機(jī) 單片機(jī) Proteus二相步進(jìn)電機(jī)控制系統(tǒng)的設(shè)計(jì)1 設(shè)計(jì)任務(wù)及要求的分析設(shè)計(jì)的步進(jìn)電機(jī)控制系統(tǒng)要求有以下功能:1. 二相步進(jìn)電機(jī)采用單極性控制2用K0-K2作為通電方式選擇鍵,K0為四相單四拍,K1為四相雙四拍,K2為四相八拍3. 用K3作為啟動(dòng)/停止控制鍵4. 用K4作為方向控制5. 用K5作為加速減速控制6. 用4位LED數(shù)碼管顯示工作步數(shù)7. 用3個(gè)發(fā)光二極
4、管顯示狀態(tài):正轉(zhuǎn)時(shí)紅燈亮,反轉(zhuǎn)時(shí)黃燈亮,不轉(zhuǎn)時(shí)綠燈亮本次設(shè)計(jì)需要對(duì)二相步進(jìn)電機(jī)進(jìn)行單極性控制,使其能在控制下進(jìn)行正轉(zhuǎn)、反轉(zhuǎn)、停止和四相單四拍、四相雙四拍、四相八拍運(yùn)行,可以通過輸出不同的脈沖序列;同時(shí)利用數(shù)碼管和二極管分別顯示其工作步數(shù)和工作狀態(tài)。由于控制功能較為復(fù)雜,所以本系統(tǒng)需要采用單片機(jī)以及驅(qū)動(dòng)模塊進(jìn)行設(shè)計(jì)。2 方案比較及認(rèn)證2.1 驅(qū)動(dòng)模塊選擇由于單片機(jī)輸出電流很小,不能驅(qū)動(dòng)電機(jī)的運(yùn)行,所以需要添加驅(qū)動(dòng)電路。電機(jī)的驅(qū)動(dòng)模塊使用芯片L298實(shí)現(xiàn),控制更直接,接線簡(jiǎn)潔,采用脈沖數(shù)據(jù)控制邏輯簡(jiǎn)單,穩(wěn)定性好。2.2 單片機(jī)選型單片機(jī)以其體積小、功能齊全、價(jià)格低廉、可靠性高等優(yōu)點(diǎn),在各個(gè)領(lǐng)域都獲
5、得了廣泛的應(yīng)用,在我國(guó),近幾年單片機(jī)也得到了廣泛的應(yīng)用特別是在工業(yè)控制、智能儀表等方面。MCS-51系列單片機(jī)以抗干擾能力強(qiáng)、對(duì)環(huán)境要求不高、靈活性強(qiáng)等別的系統(tǒng)所不具備的優(yōu)點(diǎn)被廣泛使用。即使非電子計(jì)算機(jī)專業(yè)人員,通過學(xué)習(xí)一些專業(yè)基礎(chǔ)知識(shí)以后也能依靠自己的技術(shù)力量,來開發(fā)所希望的單片機(jī)應(yīng)用系統(tǒng)。由于本次設(shè)計(jì)的所要實(shí)現(xiàn)的功能并不復(fù)雜,鑒于成本考慮,選用便宜而常用的MCS-51系列較為合適。本次設(shè)計(jì)采用其中低功耗型80C51單片機(jī)。3 系統(tǒng)實(shí)現(xiàn)的原理說明本次課程設(shè)計(jì)系統(tǒng)以單片機(jī)80c51為核心進(jìn)行設(shè)計(jì),單片機(jī)與按鍵、數(shù)碼管、發(fā)光二極管、L298驅(qū)動(dòng)模塊相連接,人為操作按鍵,在程序控制下,單片機(jī)將通過
6、驅(qū)動(dòng)模塊控制步進(jìn)電機(jī)轉(zhuǎn)動(dòng),并使數(shù)碼管和二極管分別顯示步進(jìn)電機(jī)的工作步數(shù)和狀態(tài)。系統(tǒng)的總體原理框圖如下所示:按鍵設(shè)置80C51單片機(jī)系統(tǒng)L298驅(qū)動(dòng)模塊發(fā)光二極管顯示狀態(tài)二相步進(jìn)電機(jī)四位數(shù)碼管圖3-1系統(tǒng)總體原理框圖本系統(tǒng)以單片機(jī)80c51為核心的控制系統(tǒng),由P1口進(jìn)行開關(guān)按鍵的設(shè)置,具體為:P1.0接K0四相單四拍通電方式,低電平使電機(jī)四相單四拍運(yùn)轉(zhuǎn);P1.1接K1四相雙四拍通電方式,低電平使電機(jī)四相雙四拍運(yùn)轉(zhuǎn);P1.2接K2四相八拍通電方式,低電平使電機(jī)四相八拍運(yùn)轉(zhuǎn);P1.3接K3啟動(dòng)/停止開關(guān),高電平為停止,低電平為啟動(dòng);P1.4接K4正/反轉(zhuǎn)開關(guān),高電平為反轉(zhuǎn),低電平為正轉(zhuǎn);P1.5接K
7、5加速控制,低電平使電機(jī)運(yùn)轉(zhuǎn)速度加快;P1.6接K6減速控制,低電平使電機(jī)運(yùn)轉(zhuǎn)速度減慢。 P2口與P0口外接4位LED數(shù)碼管,顯示步進(jìn)步數(shù),具體接線方式已在前面敘述,通過控制P2口的電平信號(hào),達(dá)到片選的目的,進(jìn)而實(shí)現(xiàn)4位數(shù)值的顯示。P0口作為輸出口外接負(fù)載。P3外接驅(qū)動(dòng)電路L298的4個(gè)輸入端,具體為P3.0接IN1,P3.1接IN2,P3.2接IN3,P3.3接IN4。這樣即可通過控制單片機(jī)的P2口輸出電平來實(shí)現(xiàn)二相步進(jìn)電機(jī)的啟動(dòng),停止,正反轉(zhuǎn)以及單四拍,雙四拍,八拍運(yùn)轉(zhuǎn)。另外P3.4接綠色發(fā)光二極管,使其在電機(jī)停轉(zhuǎn)時(shí)亮;P3.5接紅色放光二極管,使其在電機(jī)正轉(zhuǎn)時(shí)亮;P3.6接黃色發(fā)光二極管
8、,使其在電機(jī)反轉(zhuǎn)時(shí)亮。具體工作過程需通過對(duì)單片機(jī)編程來實(shí)現(xiàn)。電路圖為附錄1.4 硬件設(shè)計(jì)說明4.1 單片機(jī)系統(tǒng)原理分析80C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的低電壓、高性能CMOS8位微處理器,俗稱單片機(jī) .該系列單片機(jī)由先進(jìn)CMOS 工藝制造,并帶有非易失性Flash 程序存儲(chǔ)器 ,全部支持12 時(shí)鐘和6 時(shí)鐘操作,P89C51X2 和P89C52X2/54X2/58X2 分別包含128 字節(jié)和256 字節(jié)RAM、32 條I/O 口線、3 個(gè)16 位定時(shí)/計(jì)數(shù)器、6 輸入4 優(yōu)先級(jí)嵌套中斷結(jié)構(gòu)、1 個(gè)串行I/O 口、可用于多機(jī)通信 I/O 擴(kuò)展或全雙工UART以及片內(nèi)振蕩器和時(shí)
9、鐘電路。 其結(jié)構(gòu)特點(diǎn)如下:18位CPU2片內(nèi)振蕩器和時(shí)鐘電路;)332根I/O線)4外部存貯器尋址范圍ROM、RAM64K52個(gè)16位的定時(shí)器/計(jì)數(shù)器65個(gè)中斷源,兩個(gè)中斷優(yōu)先級(jí)7全雙工串行口8布爾處理器圖4-1 80C51單片機(jī)管腳圖單片機(jī)管腳如圖4-1所示,下面對(duì)其各個(gè)管腳進(jìn)行必要的說明。P0、P1、P2、P3口的電平與CMOS和TTL電平兼容。 P0口的每一位口線可以驅(qū)動(dòng)8個(gè)LSTTL負(fù)載。在作為通用I/O口時(shí),由于輸出驅(qū)動(dòng)電路是開漏方式,由集電極開路(OC門)電路或漏極開路電路驅(qū)動(dòng)時(shí)需外接上拉電阻;當(dāng)作為地址/數(shù)據(jù)總線使用時(shí),口線輸出不是開漏的,無(wú)須外接上拉電阻。 P1、P2、P3口的
10、每一位能驅(qū)動(dòng)4個(gè)LSTTL負(fù)載。它們的輸出驅(qū)動(dòng)電路設(shè)有內(nèi)部上拉電阻,所以可以方便地由集電極開路(OC門)電路或漏極開路電路所驅(qū)動(dòng),而無(wú)須外接上拉電阻。 當(dāng)CPU不對(duì)P3口進(jìn)行字節(jié)或位尋址時(shí),內(nèi)部硬件自動(dòng)將口鎖存器的Q端置1。這時(shí),P3口作為第二功能使用。 P3.0 :RXD(串行口輸入); P3.1 :TXD(串行口輸出); P3.2 :外部中斷0輸入; P3.3 :外部中斷1輸入; P3.4 :T0(定時(shí)器0的外部輸入); P3.5 :T1(定時(shí)器1的外部輸出); P3.6 :(片外數(shù)據(jù)存儲(chǔ)器“寫”選通控制輸出); P3.7 :(片外數(shù)據(jù)存儲(chǔ)器“讀”選通控制輸出)。 EA/VPP
11、: 訪問程序存儲(chǔ)器控制信號(hào),當(dāng)其為低電平時(shí),對(duì)ROM的讀操作限定在外部的程序存儲(chǔ)器,當(dāng)其為高電平時(shí),對(duì)ROM的讀操作是從內(nèi)部存儲(chǔ)器開始的,并可延至外部程序存儲(chǔ)器。 ALE/PROG : 編程脈沖 PSEN : 外部程序存儲(chǔ)器讀選通信號(hào),在讀外部ROM時(shí)PSEN是低電平有效,以實(shí)現(xiàn)對(duì)ROM 的讀操作。 RST/VPD : 復(fù)位信號(hào),當(dāng)輸入信號(hào)延續(xù)2個(gè)周期以上的高電平有效,用以完成單片機(jī)復(fù)位初始化操作。 XTAL : 時(shí)鐘晶振輸入端。 4.2 二相步進(jìn)電機(jī)工作原理分析二相步進(jìn)機(jī)是本次設(shè)計(jì)中試關(guān)鍵的一部分。二相步進(jìn)機(jī)的型號(hào)有很多,按接線來分,大體上,有五線和六
12、線的。設(shè)計(jì)用的是六線的。步進(jìn)電機(jī)是一種將電脈沖轉(zhuǎn)化為角位移的執(zhí)行機(jī)構(gòu)。當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度(稱為“步距角”),它的旋轉(zhuǎn)是以固定的角度一步一步運(yùn)行的??梢酝ㄟ^控制脈沖個(gè)數(shù)來控制角位移量,從而達(dá)到準(zhǔn)確定位的目的;同時(shí)可以通過控制脈沖頻率來控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)到調(diào)速的目的。本次課設(shè)所使用的二相步進(jìn)電機(jī)需要采用單極性的接法。單極性則是指步進(jìn)電機(jī)線圈中電流的流動(dòng)方向是單向的。單極性驅(qū)動(dòng)電路可以六線式的二相步進(jìn)電機(jī)。對(duì)于二相六線式步進(jìn)電機(jī)而言, 2個(gè)繞組的中間抽頭Vdd1和Vdd2都接高電平。根據(jù)步進(jìn)電機(jī)的工作原理,當(dāng)控制器給驅(qū)動(dòng)器發(fā)
13、出脈沖信號(hào)時(shí),驅(qū)動(dòng)器經(jīng)過功率放大后,電機(jī)繞組通電的順序?yàn)?其4個(gè)狀態(tài)按順序周而復(fù)始進(jìn)行變化,電機(jī)轉(zhuǎn)動(dòng); 若通電時(shí)序就變?yōu)闀r(shí),電機(jī)就逆向轉(zhuǎn)動(dòng)。圖4-2 二相步進(jìn)電機(jī)原理圖 任務(wù)要求需要對(duì)二相步進(jìn)電機(jī)進(jìn)行四相單四拍,四相雙四拍和四相八拍的控制。其三者的區(qū)別在于通電時(shí)序的不一樣,四相單四拍的通電方式為:,而四相雙四拍的通電方式為:,四相八拍需要在此基礎(chǔ)上進(jìn)行細(xì)分,在中間插入,其通電方式為:。由對(duì)應(yīng)的通電方式,在結(jié)合圖3-2,便可以得到對(duì)應(yīng)的單片機(jī)管腳P3.0,P3.1,P3.2,P3.3的電平變化情況,繪制出步進(jìn)電機(jī)的四相單四拍,四相雙四拍,四相八拍控制方式表格。如下所示:表4-1 步進(jìn)電機(jī)四相單四
14、拍控制通電方式時(shí)序單片機(jī)管腳位通電的線圈對(duì)應(yīng)二進(jìn)制數(shù)轉(zhuǎn)換16進(jìn)制數(shù)P1.3P1.2P1.1P1.010001000101H20100010004H30010001002H41000100008H表4-2 步進(jìn)電機(jī)四相雙四拍控制通電方式時(shí)序單片機(jī)管腳位通電的線圈對(duì)應(yīng)二進(jìn)制數(shù)轉(zhuǎn)換16進(jìn)制數(shù)P1.3P1.2P1.1P1.010101010105H20110011006H3101010100AH41001100109H表4-3 步進(jìn)電機(jī)四相八拍控制通電方式時(shí)序單片機(jī)管腳位通電的線圈對(duì)應(yīng)二進(jìn)制數(shù)轉(zhuǎn)換16進(jìn)制數(shù)P1.3P1.2P1.1P1.010001000101H20101101005H30100100
15、004H40110100106H50010000102H6101001010AH71000010008H81001011009H由上述所得表格,便可以通過控制單片機(jī)I/O口輸出高低電平變化來實(shí)現(xiàn)步進(jìn)電機(jī)的四拍,八拍運(yùn)轉(zhuǎn)。在編寫程序時(shí),設(shè)置好控制字,在I/O口做循環(huán)輸出,便實(shí)現(xiàn)了單片機(jī)對(duì)步進(jìn)電機(jī)的控制。由于單片機(jī)單獨(dú)代負(fù)載能力較差,步進(jìn)電機(jī)與單片機(jī)之間需要接入步進(jìn)電機(jī)的驅(qū)動(dòng)電路。4.3 步進(jìn)電機(jī)的一些基本參數(shù) 電機(jī)固有步距角: 它表示控制系統(tǒng)每發(fā)一個(gè)步進(jìn)脈沖信號(hào),電機(jī)所轉(zhuǎn)動(dòng)的角度。電機(jī)出廠時(shí)給出了一個(gè)步距角的值,如86BYG250A型電機(jī)給出的值為0.9°/1.8°(表示半步
16、工作時(shí)為0.9°、整步工作時(shí)為1.8°),這個(gè)步距角可以稱之為“電機(jī)固有步距角”,它不一定是電機(jī)實(shí)際工作時(shí)的真正步距角,真正的步距角和驅(qū)動(dòng)器有關(guān)。 步進(jìn)電機(jī)的相數(shù): 是指電機(jī)內(nèi)部的線圈組數(shù),目前常用的有二相、三相、四相、五相步進(jìn)電機(jī)。電機(jī)相數(shù)不同,其步距角也不同,一般二相電機(jī)的步距角為0.9°/1.8°、三相的為0.75°/1.5°、五相的為0.36°/0.72° 。在沒有細(xì)分驅(qū)動(dòng)器時(shí),用戶主要靠選擇不同相數(shù)的步進(jìn)電機(jī)來滿足自己步距角的要求。如果使用細(xì)分驅(qū)動(dòng)器,則相數(shù)將變得沒有意義,用戶只需在驅(qū)動(dòng)器上改變細(xì)分?jǐn)?shù),就
17、可以改變步距角。 保持轉(zhuǎn)矩(HOLDING TORQUE): 是指步進(jìn)電機(jī)通電但沒有轉(zhuǎn)動(dòng)時(shí),定子鎖住轉(zhuǎn)子的力矩。它是步進(jìn)電機(jī)最重要的參數(shù)之一,通常步進(jìn)電機(jī)在低速時(shí)的力矩接近保持轉(zhuǎn)矩。由于步進(jìn)電機(jī)的輸出力矩隨速度的增大而不斷衰減,輸出功率也隨速度的增大而變化,所以保持轉(zhuǎn)矩就成為了衡量步進(jìn)電機(jī)最重要的參數(shù)之一。比如,當(dāng)人們說2N.m的步進(jìn)電機(jī),在沒有特殊說明的情況下是指保持轉(zhuǎn)矩為2N.m的步進(jìn)電機(jī)。 DETENT TORQUE: 是指步進(jìn)電機(jī)沒有通電的情況下,定子鎖住轉(zhuǎn)子的力矩。DETENT TORQUE 在國(guó)內(nèi)沒有統(tǒng)一的翻譯方式,容易使大家產(chǎn)生誤解;由于反應(yīng)式步進(jìn)電機(jī)的轉(zhuǎn)子不是永磁材料,所以它沒
18、有DETENT TORQUE。 4.4 L298驅(qū)動(dòng)電路設(shè)計(jì)由課題任務(wù)要求可知,二相步進(jìn)電機(jī)需采用單極性控制,故考慮使用芯片L298來驅(qū)動(dòng)步進(jìn)電機(jī)。L298N 為雙全橋步進(jìn)電機(jī)專用驅(qū)動(dòng)芯片,內(nèi)部包含4信道邏輯驅(qū)動(dòng)電路,是一種二相和四相步進(jìn)電機(jī)的專用驅(qū)動(dòng)器,可同時(shí)驅(qū)動(dòng)2個(gè)二相或1個(gè)四相步進(jìn)電機(jī),內(nèi)含二個(gè)H-Bridge 的高電壓、大電流雙全橋式驅(qū)動(dòng)器,接收標(biāo)準(zhǔn)TTL邏輯準(zhǔn)位信號(hào),可驅(qū)動(dòng)46V、2A以下的步進(jìn)電機(jī),且可以直接透過電源來調(diào)節(jié)輸出電壓;此芯片可直接由單片機(jī)的IO端口來提供模擬時(shí)序信號(hào)。在接入步進(jìn)電機(jī)時(shí),OUTl,OUT2 ,OUT3,OUT4接二相步進(jìn)電機(jī)的,,二相步進(jìn)電機(jī)的對(duì)應(yīng)管腳以
19、圖4-5為準(zhǔn),input1input4接單片機(jī)的I/O口,用來控制單片機(jī)的正反轉(zhuǎn)以及四相單四拍,四相雙四拍,四相八拍通電方式。4.5 四位LED數(shù)碼管顯示設(shè)計(jì) 任務(wù)要求需采用4位LED數(shù)碼管顯示工作步數(shù),通過查閱相關(guān)資料,在仿真時(shí)采用型號(hào)7SEG-MPX4-CA共陽(yáng)極數(shù)碼管顯示。其PROTUS仿真圖如圖4-6所示:圖4-3 數(shù)碼管顯示仿真圖單片機(jī)的P0口接數(shù)碼管輸入管腳ABCDEFG以及DP(可以不用,直接拉高),P2口接4位數(shù)碼管的片選端口1234,7段數(shù)碼管對(duì)應(yīng)的顯示數(shù)值與輸入信號(hào)的關(guān)系可以由下表得到。表4-4 七段數(shù)碼管顯示功能表單片機(jī)管腳輸入顯示十六進(jìn)制P0.0P0.1P0.2P0.3
20、P0.4P0.5P0.6ABCDEFG0000001OC0H10011111F9H00100102A4H00001103B0H1001100499H0100100592H1100000682H00011117F8H0000000880H0000100990H由上表可以得到顯示數(shù)字與單片機(jī)管腳輸入信號(hào)的對(duì)應(yīng)關(guān)系。只需要控制單片機(jī)的P0口輸出信號(hào)即可顯示數(shù)字,在程序設(shè)計(jì)中,定義7段顯示數(shù)組為Seg=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90即可使數(shù)碼管顯示數(shù)字。5 軟件設(shè)計(jì)說明5.1總體流程分析與設(shè)計(jì) 本設(shè)計(jì)包括硬件和軟件兩部分,設(shè)計(jì)思想是化
21、整為零和化零為整,即電路模塊化,然后再整合模塊功能作用,達(dá)到要求的目的。把原來復(fù)雜的電路分成一個(gè)個(gè)簡(jiǎn)單的模塊,這樣化繁為簡(jiǎn),可以逐個(gè)擊破,便于設(shè)計(jì)編程;當(dāng)把分開的每一個(gè)模塊都搞定,設(shè)計(jì)出來時(shí),再通過單片機(jī)這個(gè)核心部分,將每個(gè)模塊糅合在一起。例如本設(shè)計(jì)中,可以把步進(jìn)機(jī)的控制化成功能鍵輸入部分,顯示部分和二相步進(jìn)機(jī)驅(qū)動(dòng)電路部分。軟件模塊的分析需要根據(jù)硬件電路的設(shè)計(jì)來進(jìn)行,基于上述硬件電路的分析設(shè)計(jì),對(duì)整個(gè)程序流程需要有個(gè)整體的思考與判斷。由硬件電路的設(shè)計(jì)可以看出,程序需要實(shí)現(xiàn)以下幾個(gè)功能:通過開關(guān)按鍵實(shí)現(xiàn)電機(jī)的啟用與停止,正轉(zhuǎn)與反轉(zhuǎn),以及四拍,八拍的運(yùn)行方式;由4位LED數(shù)碼管實(shí)現(xiàn)步進(jìn)步數(shù)的顯示;
22、3個(gè)發(fā)光二極管顯示電機(jī)的狀態(tài)。程序設(shè)計(jì)的總體思想是單片機(jī)通過判斷按鍵輸入電平變化從而選擇正反轉(zhuǎn)以及四八拍的工作方式。主程序流程圖如圖5-1所示。開始K3按下?掃描鍵盤,設(shè)置轉(zhuǎn)動(dòng)模式設(shè)備初始化啟動(dòng)電機(jī)顯示步數(shù)K3彈起?YYNN圖 5-1 主程序流程圖5.2 設(shè)置電機(jī)轉(zhuǎn)動(dòng)模式流程分析與設(shè)計(jì) 由硬件電路可知,電機(jī)的轉(zhuǎn)動(dòng)由開關(guān)K0、K1、K2、K3、K4、K5、K6來控制,我們通過80K51分別讀入這六位控制數(shù)據(jù),存放在變量Temp中。K0按下為四相單四拍,K1按下為四相雙四拍,K2按下為四相八拍,K3按下為啟動(dòng),K4按下為正轉(zhuǎn)抬起為反轉(zhuǎn)。設(shè)置轉(zhuǎn)動(dòng)模式流程圖如圖5-2所示。圖5-2 設(shè)置電機(jī)轉(zhuǎn)動(dòng)模式流
23、程圖5.3 步進(jìn)電機(jī)四相單四拍,四相雙四拍,四相八拍流程分析與設(shè)計(jì)步進(jìn)電機(jī)通電方式的控制字被放置在幾個(gè)變量數(shù)組中,通關(guān)過轉(zhuǎn)動(dòng)方式選擇部分程序決定轉(zhuǎn)動(dòng)方式后,把相應(yīng)轉(zhuǎn)動(dòng)方式所對(duì)應(yīng)的數(shù)組中相應(yīng)步數(shù)對(duì)應(yīng)的值賦給變量P3。變量Flag控制拍數(shù)循環(huán),當(dāng)Flag為4(四拍)或8(八拍)時(shí),F(xiàn)lag值清零,重新從對(duì)應(yīng)數(shù)組開頭選擇通電方式賦值。變量Step用來記錄步數(shù),電機(jī)每轉(zhuǎn)一下,Step值加一。電機(jī)轉(zhuǎn)動(dòng)部分流程圖如圖5-3所示。圖5-3 電機(jī)單四拍雙四拍八拍正反轉(zhuǎn)流程圖5.4 顯示模塊流程分析與設(shè)計(jì)有硬件部分分析可知,Led數(shù)碼管有4個(gè)管腳讀入片選信號(hào),8個(gè)管腳讀入控制信號(hào)。本部分程序首先要對(duì)當(dāng)前的步數(shù)值
24、進(jìn)行位數(shù)分離,將個(gè)、十、百、千位分別提取出來,然后通過片選信號(hào)選擇位數(shù)讀入控制字,依次進(jìn)行顯示。由于單片機(jī)的計(jì)算過程非???,我們還設(shè)置了延時(shí)程序,所以看起來各位是同時(shí)顯示的。數(shù)碼管顯示步數(shù)流程圖圖5-4所示。Num值分離出每一位讀取千位數(shù)據(jù)選擇數(shù)碼管千位進(jìn)行顯示延時(shí)2ms取消選擇數(shù)碼管讀取十位數(shù)據(jù)選擇數(shù)碼管十位進(jìn)行顯示延時(shí)2ms取消選擇顯示管讀取百位數(shù)據(jù)百位進(jìn)行顯示延時(shí)2ms取消選擇顯示管讀取十位數(shù)據(jù)選擇數(shù)碼管十位進(jìn)行顯示延時(shí)2ms取消選擇顯示管開始結(jié)束圖5-4 數(shù)碼管顯示步數(shù)流程圖5.5 步進(jìn)電機(jī)速度控制分析與設(shè)計(jì)通過速度控制按鍵改變速度控制變量Speed,通過定時(shí)器0對(duì)電機(jī)步進(jìn)控制脈沖之間
25、進(jìn)行延時(shí),延時(shí)到Speed時(shí),Delay=1表示延時(shí)時(shí)間到。6 調(diào)試記錄及結(jié)果分析6.1 總體硬件仿真設(shè)計(jì) 硬件的仿真需要將軟件與硬件結(jié)合起來才能真正完成整個(gè)設(shè)計(jì)工作。我們采用的是PROTUS仿真軟件得到了系統(tǒng)的硬件圖,參見附錄1;使用keiluVision4軟件的集成環(huán)境調(diào)試程序,程序代碼請(qǐng)參見附錄,在該集成環(huán)境下,創(chuàng)建一工程,將程序裝入該工程下,調(diào)試運(yùn)行無(wú)誤后,該工程會(huì)自動(dòng)生成.hex文件,在PROTUS仿真環(huán)境里,在單片機(jī)中載入該文件,這樣便實(shí)現(xiàn)了單片機(jī)程序的載入。在系統(tǒng)完成后測(cè)試系統(tǒng),檢查硬件和軟件是否能夠協(xié)調(diào)運(yùn)行,并對(duì)系統(tǒng)出現(xiàn)的情況進(jìn)行分析,看是否能夠達(dá)到系統(tǒng)創(chuàng)作之初所設(shè)想的效果,如
26、達(dá)不到則重新修改系統(tǒng)的硬件結(jié)構(gòu)或者修改軟件的程序部分,直到達(dá)到設(shè)計(jì)需要為止。本系統(tǒng)的設(shè)計(jì)思路為:首先從整體上劃分出各功能模塊,然后硬件和軟件同時(shí)進(jìn)行依次完成各個(gè)功能模塊,最后將各個(gè)模塊聯(lián)系起來完成整個(gè)系統(tǒng)。具體工作過程需通過對(duì)單片機(jī)編程來實(shí)現(xiàn)。6.2調(diào)試與仿真結(jié)果分析在硬件調(diào)試的過程中,遇到了很多問題。主要有:k5處的開關(guān)需要一個(gè)單刀三擲開關(guān),可是軟件中找不到合適的,就先用了個(gè)稍微麻煩的開關(guān)代替:在步進(jìn)電機(jī)與驅(qū)動(dòng)電路的連接中,需要準(zhǔn)確的接好各個(gè)管腳,因?yàn)槌绦蚶锏目刂谱謱?duì)應(yīng)著這些管腳電平的變化,不能隨便接,單片機(jī)的輸出口與驅(qū)動(dòng)電路的輸出口也需要一一對(duì)應(yīng),否則電機(jī)無(wú)法按正常的設(shè)計(jì)運(yùn)轉(zhuǎn)。經(jīng)過調(diào)試以及
27、對(duì)仿真電路圖及程序的改正,系統(tǒng)得以實(shí)現(xiàn)任務(wù)的要求,對(duì)步進(jìn)電機(jī)進(jìn)行控制,仿真成功。圖6-1為電機(jī)正轉(zhuǎn)時(shí)的仿真圖,電機(jī)順時(shí)針旋轉(zhuǎn),紅燈亮。圖6-2為電機(jī)反轉(zhuǎn)時(shí)的仿真圖,電機(jī)逆時(shí)針旋轉(zhuǎn),黃燈亮。圖6-3為電機(jī)停止時(shí)仿真圖,綠燈亮。圖6-1 步進(jìn)電機(jī)正傳仿真圖圖6-2 步進(jìn)電機(jī)反轉(zhuǎn)仿真圖由仿真圖可見,此系統(tǒng)實(shí)現(xiàn)了對(duì)步進(jìn)電機(jī)的正反轉(zhuǎn)以及停止的控制,能夠利用數(shù)碼管顯示步數(shù),通過發(fā)光二級(jí)管顯示步進(jìn)電機(jī)運(yùn)行狀態(tài),此系統(tǒng)設(shè)計(jì)合理,滿足設(shè)計(jì)要求。小結(jié)與心得體會(huì)本次設(shè)計(jì),設(shè)計(jì)涉及的內(nèi)容比較廣,如數(shù)字電路技術(shù)部分,微形計(jì)算機(jī)控制技術(shù)尤其得數(shù)字控制技術(shù)部分和步進(jìn)機(jī)結(jié)構(gòu)原理工作方式以及數(shù)控中等部分,也有學(xué)過的80c51單
28、片機(jī)。這些內(nèi)容,不是單一存在,而是互相滲透牽連萬(wàn)千的。在了解每部分內(nèi)容的同時(shí),還要思考它們的聯(lián)系。這樣才能收到效果。如步進(jìn)機(jī),我們了解它的工作原理,知道它是是一種將電脈沖轉(zhuǎn)化為角位移的執(zhí)行機(jī)構(gòu)。當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度(稱為“步距角”),它的旋轉(zhuǎn)是以固定的角度一步一步運(yùn)行的,而它需要的脈沖從哪來呢,這就涉及單片機(jī)了,可以通過單片機(jī)設(shè)定脈沖輸給,單片機(jī)還可以通過脈沖頻率設(shè)定來控制步進(jìn)機(jī)的轉(zhuǎn)動(dòng)頻率即可以控制轉(zhuǎn)速。還有LED的工作,我們可以再數(shù)字電路技術(shù)里學(xué)習(xí)到它顯示的原理等等,這些知識(shí)單一存在時(shí)沒意義的,所以 我們學(xué)習(xí)應(yīng)該會(huì)聯(lián)系。通過本次設(shè)計(jì)令
29、我在回憶復(fù)習(xí)老師課堂講的理論知識(shí)的同時(shí),也進(jìn)一步達(dá)到了學(xué)以致用的目的,將課本所學(xué)的知識(shí)用到了實(shí)踐上,結(jié)合軟件和硬件進(jìn)行,充分鍛煉了自己的理論能力和動(dòng)手能力。總的來說,設(shè)計(jì)過程也遇到了種種困難,但在對(duì)硬件原理結(jié)構(gòu)的學(xué)習(xí)中,通過找資料,思考鍛煉了自學(xué)的能力;在編程時(shí)遇到困難以也學(xué)會(huì)了如何利用編譯軟件進(jìn)行調(diào)試,達(dá)到最終期望的結(jié)果,得到編程訓(xùn)練;不懂時(shí),通過同學(xué)間的討論交流,學(xué)習(xí)借鑒也達(dá)到了相互合作的目的,完成任務(wù),增進(jìn)了同學(xué)間的合作友誼。有遇到了種種困難的苦悶,也有遇難而上,解決困難時(shí)的喜悅,也鍛煉了我的耐心與堅(jiān)持,令我受益匪淺. 參考文獻(xiàn)1 于海生.計(jì)算機(jī)控制技術(shù).北京:機(jī)械工業(yè)出版社.2007年
30、2 陳冬云.ATmega128 單片機(jī)原理與開發(fā)指導(dǎo).北京:機(jī)械工業(yè)出版社.2005年3 王彥平.RPOTEL 99 電路設(shè)計(jì)指南.北京:清華大學(xué)出版社.2000年4 沈精虎.Protel99 入門與提高. 北京:人民郵電出版社.2007年5 吳金戌.8051 單片機(jī)時(shí)間與應(yīng)用. 北京:清華大學(xué)出版社,2003年6 胡輝.單片機(jī)原理及應(yīng)用設(shè)計(jì). 北京:中國(guó)水利水電出版社.2007年附錄1:附錄2:/*/* 步進(jìn)電機(jī)程序 */*P10為四相單四拍,P11為四相雙四拍,P12為四相八拍 */*P13為啟動(dòng)/停止控制、P14方向控制、P15加速、P16減速 */*用4位LED數(shù)碼管顯示工作步數(shù)。 *
31、/*用3個(gè)發(fā)光二極管顯示狀態(tài) */*正轉(zhuǎn)時(shí)紅燈亮,反轉(zhuǎn)時(shí)黃燈亮,不轉(zhuǎn)時(shí)綠燈亮 */*編寫人:曹媛媛 */*時(shí)間:2014-07-03 */*/#include<reg51.h>#define uchar unsigned char#define uint unsigned int#define SegData P0 /數(shù)碼管數(shù)據(jù)口#define KeyData P1 /按鍵控制數(shù)據(jù)口#define MotorData P3 /電機(jī)控制數(shù)據(jù)口sbit Wela1=P20; /數(shù)碼管位選1sbit Wela2=P21; /數(shù)碼管位選2sbit Wela3=P22; /數(shù)碼管位選3sbi
32、t Wela4=P23; /數(shù)碼管位選4sbit LedGreen=P34;/控制綠燈-停止uchar PositiveSingleFour=0xd1,0xd4,0xd2,0xd8; /步進(jìn)電機(jī)正相單四拍數(shù)表;uchar PositiveDoubleFour=0xd5,0xd6,0xda,0xd9; /步進(jìn)電機(jī)正相雙四拍數(shù)表;uchar PositiveEight=0xd1,0xd5,0xd4,0xd6,0xd2,0xda,0xd8,0xd9;/步進(jìn)電機(jī)正相八拍數(shù)表;uchar NegitiveSingleFour=0xb1,0xb8,0xb2,0xb4; /步進(jìn)電機(jī)反相單四拍數(shù)表;uchar
33、 NegitiveDoubleFour=0xb9,0xba,0xb6,0xb5; /步進(jìn)電機(jī)反相雙四拍數(shù)表;uchar NegitiveEight=0xb1,0xb9,0xb8,0xba,0xb2,0xb6,0xb4,0xb5;/步進(jìn)電機(jī)反相八拍數(shù)表;uchar Seg=0xc0,0xf9,0xa4,0xb0,0x99, 0x92,0x82,0xf8,0x80,0x90;/共陽(yáng)極數(shù)碼管顯示數(shù)碼;uchar Flag=0; /用來控制拍數(shù)循環(huán); uchar Mode=0; /用來標(biāo)志工作模式;uchar Way=0; /用來標(biāo)志運(yùn)轉(zhuǎn)方向uchar Num=0; /用來定時(shí)計(jì)數(shù)uchar Dela
34、y=0; /用來標(biāo)志延時(shí)時(shí)間到uchar Move=0; /用來標(biāo)志啟動(dòng)或停止uint Step=0; /用來計(jì)算步數(shù)的;char Speed=12; /用來表示速度char SpeedMax=2; /最大速度-參數(shù)為時(shí)間char SpeedMin=22; /最小速度char SpeedChang=10; /速度每次改變量/*函數(shù)聲明部分*/void Init();void Display(uint);void DelayMs(uint);void KeyScan();void Motor();/*主函數(shù)*/void main()Init();while(1)KeyScan();Motor()
35、;Display(Step);/*數(shù)碼管顯示函數(shù)*/void Display(uint Num)uchar Qian,Bai,Shi,Ge;Qian=Num/1000;Bai=(Num/100)%10;Shi=(Num/10)%10;Ge=Num%10;/分離出每一位;SegData=SegQian;Wela1=1;DelayMs(2);Wela1=0;SegData=SegBai;Wela2=1;DelayMs(2);Wela2=0;SegData=SegShi;Wela3=1;DelayMs(2);Wela3=0;SegData=SegGe;Wela4=1;DelayMs(2);Wela4
36、=0;/*電機(jī)運(yùn)轉(zhuǎn)函數(shù)*/void Motor()if(Move=1)if(Delay=1)Delay=0;if(Way=0)switch(Mode) /*電機(jī)步進(jìn)拍數(shù)表數(shù)據(jù)送到電機(jī)控制口;判斷一周拍數(shù)是否完成;步數(shù)加1*/case 1:MotorData=PositiveSingleFourFlag+;if(Flag>=4) Flag=0;Step+;break;case 2:MotorData=PositiveDoubleFourFlag+;if(Flag>=4) Flag=0;Step+;break;case 3:MotorData=PositiveEightFlag+;if
37、(Flag>=8) Flag=0;Step+;break;default:;elseswitch(Mode)case 1:MotorData=NegitiveSingleFourFlag+;if(Flag>=4) Flag=0;Step+;break;case 2:MotorData=NegitiveDoubleFourFlag+;if(Flag>=4) Flag=0;Step+;break;case 3:MotorData=NegitiveEightFlag+;if(Flag>=8) Flag=0;Step+;break;default:;elseMotorData=0xef;LedGreen=0;/*初始化函數(shù)*/void Init()Move=0;LedGreen=0;Step=0;
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 疾病保險(xiǎn)課件教學(xué)課件
- 2024年度影視版權(quán)許可協(xié)議
- 04年影視制作委托合同
- 2024年度辦公樓照明系統(tǒng)燈具更換外包協(xié)議
- 2024年度“生態(tài)修復(fù)”工程咨詢服務(wù)合同
- 制作課件教學(xué)課件
- 2024年廣告發(fā)布與裝修施工合同協(xié)議
- 2024在熔盛重工與淡水河谷砂石船建造合同簽約儀式上的致辭熔盛重工朱文花
- 2024年度暖通設(shè)備安裝及調(diào)試合同
- 2024土地使用權(quán)轉(zhuǎn)讓合同(含開發(fā)權(quán))
- 黃河商品交易市場(chǎng)介紹稿
- Unit 3 My friends Part C Story time(教學(xué)設(shè)計(jì))-2024-2025學(xué)年人教PEP版英語(yǔ)四年級(jí)上冊(cè)
- 2024中國(guó)海油校園招聘2024人(高頻重點(diǎn)提升專題訓(xùn)練)共500題附帶答案詳解
- 孫中山誕辰紀(jì)念日主題班會(huì)主題班會(huì)
- 2024年安徽省合肥市中考語(yǔ)文題卷(含答案)
- G -B- 43630-2023 塔式和機(jī)架式服務(wù)器能效限定值及能效等級(jí)(正式版)
- 24春國(guó)開電大《工具書與文獻(xiàn)檢索》平時(shí)作業(yè)1-4答案
- 文藝復(fù)興經(jīng)典名著選讀 知到智慧樹網(wǎng)課答案
- 2024年北京出版集團(tuán)有限責(zé)任公司招聘筆試沖刺題(帶答案解析)
- 2022-2023學(xué)年福建省廈門一中九年級(jí)(上)期中物理試卷
- 足球球性球感練習(xí)教案
評(píng)論
0/150
提交評(píng)論