基于AT89S52單片機(jī)的步進(jìn)電機(jī)控制.doc_第1頁(yè)
基于AT89S52單片機(jī)的步進(jìn)電機(jī)控制.doc_第2頁(yè)
基于AT89S52單片機(jī)的步進(jìn)電機(jī)控制.doc_第3頁(yè)
基于AT89S52單片機(jī)的步進(jìn)電機(jī)控制.doc_第4頁(yè)
基于AT89S52單片機(jī)的步進(jìn)電機(jī)控制.doc_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

密級(jí): 公 開 科學(xué)技術(shù)學(xué)院NANCHANG UNIVERSITY COLLEGE OFSCIENCE AND TECHNOLOGY學(xué) 士 學(xué) 位 論 文 THESIS OF BACHELOR(2011 2012 年)題 目 基于AT89S52單片機(jī)的步進(jìn)電機(jī)控制 學(xué) 科 部: 專 業(yè): 班 級(jí): 學(xué) 號(hào): 學(xué)生姓名: 指導(dǎo)教師: 起訖日期: 2011/12/52012/5/24 目 錄摘 要I第一章緒 論11.1 引言11.2 設(shè)計(jì)要求11.3 設(shè)計(jì)內(nèi)容21.4 小結(jié)2第二章系統(tǒng)總體方案設(shè)計(jì)32.1 主要器件簡(jiǎn)介32.1.1 AT89S52單片機(jī)簡(jiǎn)介32.1.2 ULN2003A簡(jiǎn)介32.1.3 四相五線永磁型步進(jìn)電機(jī)M35SP-7NP簡(jiǎn)介42.1.4 紅外遙控簡(jiǎn)介42.2 步進(jìn)電機(jī)的工作原理52.2.1 步進(jìn)電機(jī)簡(jiǎn)介52.2.2 步進(jìn)電機(jī)的工作原理62.3 步進(jìn)電機(jī)常見的控制方案與驅(qū)動(dòng)技術(shù)簡(jiǎn)介72.4 系統(tǒng)總體設(shè)計(jì)方案102.4.1系統(tǒng)框圖102.4.2 系統(tǒng)設(shè)計(jì)方案與功能簡(jiǎn)述102.5 小結(jié)11第三章系統(tǒng)整體硬件設(shè)計(jì)123.1 單片機(jī)最小系統(tǒng)電路設(shè)計(jì)123.2 狀態(tài)顯示模塊硬件電路設(shè)計(jì)133.3 按鍵與紅外接收模塊硬件電路設(shè)計(jì)143.4 ULN2003A步進(jìn)電機(jī)驅(qū)動(dòng)模塊硬件電路設(shè)計(jì)143.5 ISP單片機(jī)在線程序下載器接口電路15第四章系統(tǒng)軟件設(shè)計(jì)164.1 軟件設(shè)計(jì)思路164.2 系統(tǒng)設(shè)計(jì)主程序流程圖164.3 主程序初始化流程圖174.4 步進(jìn)電機(jī)運(yùn)行控制子程序流程圖184.5系統(tǒng)程序簡(jiǎn)要說(shuō)明20第五章系統(tǒng)運(yùn)行與調(diào)試215.1開發(fā)軟件簡(jiǎn)介215.1.1 Keil編程軟件簡(jiǎn)介與使用215.1.2 Proteus仿真軟件的簡(jiǎn)介與使用215.1.3系統(tǒng)的仿真圖225.2系統(tǒng)的軟硬件聯(lián)調(diào)及問(wèn)題總結(jié)22第六章總結(jié)與展望24參考文獻(xiàn)(References)25致 謝26附錄一:系統(tǒng)原理圖27附錄二:實(shí)物照片28基于AT89S52單片機(jī)的步進(jìn)電機(jī)控制摘 要:步進(jìn)電動(dòng)機(jī)由于用其組成的控制系統(tǒng)既簡(jiǎn)單、廉價(jià)、低噪音、響應(yīng)快、速度位移控制精準(zhǔn),又非常穩(wěn)定可靠,因此在辦公自動(dòng)化設(shè)備、數(shù)控系統(tǒng)以及各種控制裝置等眾多領(lǐng)域有著極其廣泛的應(yīng)用。文章以單片機(jī)AT89S52為控制核心,通過(guò)單片機(jī)的IO口輸出的具有時(shí)序的脈沖信號(hào)作為步進(jìn)電機(jī)的控制信號(hào),實(shí)現(xiàn)了步進(jìn)電機(jī)的速度控制。本設(shè)計(jì)在AT89S52單片機(jī)最小系統(tǒng)的基礎(chǔ)上,外擴(kuò)驅(qū)動(dòng)芯片ULN2003A作為步進(jìn)電機(jī)的驅(qū)動(dòng)電路、外擴(kuò)3個(gè)按鍵以及紅外線來(lái)實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的狀態(tài)控制、外擴(kuò)發(fā)光二極管顯示步進(jìn)電機(jī)的正反轉(zhuǎn)、外擴(kuò)數(shù)碼管顯示電機(jī)運(yùn)行速度的大小。在硬件設(shè)計(jì)的基礎(chǔ)上,通過(guò)在keil下進(jìn)行軟件編程,最終完成了基于單片機(jī)的步進(jìn)電機(jī)的控制系統(tǒng)設(shè)計(jì)。本文從硬件和軟件兩個(gè)方面對(duì)基于單片機(jī)的步進(jìn)電機(jī)的控制進(jìn)行了詳細(xì)的介紹,最后給出了調(diào)試過(guò)程和PROTEUS仿真圖,該設(shè)計(jì)具有設(shè)計(jì)成熟、簡(jiǎn)單可靠、穩(wěn)定性高等特點(diǎn)。 關(guān)鍵詞:步進(jìn)電機(jī),脈沖,驅(qū)動(dòng)機(jī)構(gòu),單片機(jī),轉(zhuǎn)動(dòng)The stepping motor control system based on AT89S52 MCUAbstract:Stepper motor because of the open-loop system composed of simple, cheap, low noise, fast response speed, displacement control precision, it is very stable and reliable, therefore in the office automation equipment, CNC system and various control devices and many other fields have a wide range of applications.This paper introduces a singlechip stepper motor control design, AT89S52 single-chip computer to control the stepping motor, SCM through the I / O port with the output timing of the pulse signal as a stepper motor control signal, the design uses 3 keys and infrared ray to realize the stepper motor state control, through the microcontroller, motor drive chip ULN2003A, the corresponding keys and the infrared remote controller to realize the above function, stepping motor positive and negative conversion of light-emitting diode display, its running speed to a certain level in the digital tube display. This paper describes the stepper motor, infrared control and microcomputer principle, system block diagram, hardware circuit, program flow, and the entire system in the debugging process of the problems encountered and their solutions. The design is simple and reliable, sophisticated design, high stability.Key words: stepping motor pulse,driving mechanism, single chip microcomputer,rotation28第一章 緒 論1.1 引言步進(jìn)電動(dòng)機(jī)又稱脈沖電動(dòng)機(jī)或階躍電動(dòng)機(jī),國(guó)外一般稱為Steppingmotor、Pulse motor或Stepper servo,其應(yīng)用發(fā)展已有約80年的歷史。步進(jìn)電機(jī)是一種把電脈沖信號(hào)變成直線位移或角位移的控制電機(jī),其位移速度與脈沖頻率成正比,位移量與脈沖數(shù)成正比。步進(jìn)電機(jī)在結(jié)構(gòu)上也是由定子和轉(zhuǎn)子組成,可以對(duì)旋轉(zhuǎn)角度和轉(zhuǎn)動(dòng)速度進(jìn)行高精度控制。當(dāng)電流流過(guò)定子繞組時(shí),定子繞組產(chǎn)生一矢量磁場(chǎng),該矢量場(chǎng)會(huì)帶動(dòng)轉(zhuǎn)子旋轉(zhuǎn)一角度,使得轉(zhuǎn)子的一對(duì)磁極磁場(chǎng)方向與定子的磁場(chǎng)方向一著該磁場(chǎng)旋轉(zhuǎn)一個(gè)角度。因此,控制電機(jī)轉(zhuǎn)子旋轉(zhuǎn)實(shí)際上就是以一定的規(guī)律控制定子繞組的電流來(lái)產(chǎn)生旋轉(zhuǎn)的磁場(chǎng)。每來(lái)一個(gè)脈沖電壓,轉(zhuǎn)子就旋轉(zhuǎn)一個(gè)步距角,稱為一步。在非超載的情況下,電機(jī)的轉(zhuǎn)速、停止的位置只取決于脈沖信號(hào)的頻率和脈沖數(shù),而不受負(fù)載變化的影響,同時(shí)步進(jìn)電機(jī)只有周期性的誤差而無(wú)累積誤差,精度高,步進(jìn)電動(dòng)機(jī)可以在寬廣的頻率范圍內(nèi)通過(guò)改變脈沖頻率來(lái)實(shí)現(xiàn)調(diào)速、快速起停、正反轉(zhuǎn)控制等,這是步進(jìn)電動(dòng)機(jī)最突出的優(yōu)點(diǎn)。正是由于步進(jìn)電機(jī)具有突出的優(yōu)點(diǎn),所以成了機(jī)電一體化的關(guān)鍵產(chǎn)品之一,廣泛應(yīng)用在各種自動(dòng)化控制系統(tǒng)中。隨著微電子和計(jì)算機(jī)技術(shù)的發(fā)展,步進(jìn)電機(jī)的需求量與日俱增,在各個(gè)國(guó)民經(jīng)濟(jì)領(lǐng)域都有應(yīng)用。優(yōu)點(diǎn)明顯的步進(jìn)電機(jī)被廣泛應(yīng)用在電子計(jì)算機(jī)的許多外圍設(shè)備中,例如打印機(jī),紙帶輸送機(jī)構(gòu),卡片閱讀機(jī),主動(dòng)輪驅(qū)動(dòng)機(jī)構(gòu)和存儲(chǔ)器存取機(jī)構(gòu)等,步進(jìn)電機(jī)也在軍用儀器,通信和雷達(dá)設(shè)備,攝影系統(tǒng),光電組合裝置,閥門控制,數(shù)控機(jī)床,電子鐘,醫(yī)療設(shè)備及自動(dòng)繪圖儀,數(shù)字控制系統(tǒng),工具機(jī)控制,程序控制系統(tǒng)以及許多航天工業(yè)的系統(tǒng)中得到應(yīng)用。因而,對(duì)于步進(jìn)電機(jī)控制的研究也就顯得尤為重要了。為了得到良好的控制性能,對(duì)步進(jìn)電機(jī)的控制的研究就一直沒有停止過(guò),許多重大的技術(shù)得以實(shí)現(xiàn)。基于微型單片機(jī)的控制系統(tǒng)則通過(guò)軟件來(lái)控制步進(jìn)電機(jī),能夠更好地發(fā)揮步進(jìn)電機(jī)的潛力。因此,用微型單片機(jī)控制步進(jìn)電機(jī)己經(jīng)成為了一種必然的趨勢(shì),也符合數(shù)字化的時(shí)代發(fā)展要求。其中步進(jìn)電機(jī)的驅(qū)動(dòng),可以采用匯編語(yǔ)言或C語(yǔ)言進(jìn)行軟件開發(fā),通過(guò)串行或并行通信的方式實(shí)現(xiàn)機(jī)與步進(jìn)電機(jī)控制器之間的數(shù)據(jù)通信,最終實(shí)現(xiàn)由PC機(jī)直接控制步進(jìn)電機(jī)的方法。此外還可以采用無(wú)線控制技術(shù),實(shí)現(xiàn)遠(yuǎn)、近距離的無(wú)線遙感控制步進(jìn)電機(jī),實(shí)現(xiàn)一些人不宜直接接觸的工業(yè)現(xiàn)場(chǎng)等環(huán)境復(fù)雜的地方,不過(guò)無(wú)線控制步進(jìn)電機(jī)也可以用來(lái)在家居環(huán)境中,比如遙控窗簾等等。本文正是采用紅外無(wú)線技術(shù),能夠?qū)崿F(xiàn)10M左右的紅外控制步進(jìn)電機(jī),非常方便實(shí)用。1.2 設(shè)計(jì)要求本設(shè)計(jì)的要求如下:1、開始通電時(shí),步進(jìn)電機(jī)停止轉(zhuǎn)動(dòng)2、單片機(jī)分別接有按鍵開關(guān)K1、K2和K3,用來(lái)控制步進(jìn)電機(jī)的轉(zhuǎn)向,要求如下:1)當(dāng)按下K1鍵時(shí),步進(jìn)電機(jī)正轉(zhuǎn);2)當(dāng)按下K2鍵時(shí),步進(jìn)電機(jī)反轉(zhuǎn);3)當(dāng)按下K3鍵時(shí),步進(jìn)電機(jī)停止轉(zhuǎn)動(dòng)。3、能夠通過(guò)相應(yīng)顏色的指示燈和數(shù)碼管來(lái)指示步進(jìn)電機(jī)運(yùn)行狀態(tài)和運(yùn)行速度級(jí)別。4、正轉(zhuǎn)采用一相激磁方式,反轉(zhuǎn)采用12相激磁方式。5、能夠?qū)崿F(xiàn)通過(guò)紅外發(fā)射裝置來(lái)實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的控制。6、能夠編程實(shí)現(xiàn)所需的各種功能,并能正常調(diào)試。1.3 設(shè)計(jì)內(nèi)容本論文采用的電動(dòng)機(jī)是四相五線步進(jìn)電機(jī),采用的方法是利用AT89S52單片機(jī)產(chǎn)生控制脈沖來(lái)控制步進(jìn)電機(jī)的運(yùn)行轉(zhuǎn)態(tài)。最終能夠?qū)崿F(xiàn)步進(jìn)電機(jī)的運(yùn)行狀態(tài)、轉(zhuǎn)速級(jí)別的顯示,能通過(guò)按鍵和紅外遙控器來(lái)控制步進(jìn)電機(jī)的啟動(dòng)、加速、減速、正反轉(zhuǎ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)行的??梢酝ㄟ^(guò)控制脈沖個(gè)數(shù)來(lái)控制角位移量,從而達(dá)到準(zhǔn)確定位的目的;同時(shí)可以通過(guò)控制脈沖頻率來(lái)控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)到調(diào)速的目的。本設(shè)計(jì)就是通過(guò)改變脈沖頻率來(lái)調(diào)節(jié)步進(jìn)電機(jī)的速度等級(jí)的,并且通過(guò)數(shù)碼管顯示其轉(zhuǎn)速的級(jí)別。另外通過(guò)單片機(jī)實(shí)現(xiàn)它的正反轉(zhuǎn),步進(jìn)電機(jī)可以作為一種控制用的特種電機(jī),利用其沒有積累誤差(精度為100%)的特點(diǎn),廣泛應(yīng)用于各種開環(huán)控制。1.4 小結(jié) 步進(jìn)電機(jī)憑借著其優(yōu)良的性能,如步進(jìn)電機(jī)無(wú)累積誤差,精度高,可以在寬廣的頻率范圍內(nèi)通過(guò)改變脈沖頻率來(lái)實(shí)現(xiàn)調(diào)速、快速起停、正反轉(zhuǎn)控制等。所以廣泛應(yīng)用于各種控制場(chǎng)合中,從工業(yè)控制到到玩具家用等等,或者說(shuō)用到了精確轉(zhuǎn)動(dòng)的地方,就用到了步進(jìn)電機(jī)。本文也旨在通過(guò)對(duì)步進(jìn)電機(jī)的研究來(lái)實(shí)現(xiàn)對(duì)其進(jìn)行各種控制,并將其應(yīng)用到實(shí)際生活之中去,其中本文采用紅外接收裝置意在實(shí)現(xiàn)通過(guò)對(duì)步進(jìn)電機(jī)的紅外無(wú)線控制,能擴(kuò)展其應(yīng)用范圍??傊?,步進(jìn)電機(jī)是一種非常實(shí)用和易控制的電機(jī),研究其功能、控制特點(diǎn)非常有必要。第二章 系統(tǒng)總體方案設(shè)計(jì)2.1 主要器件簡(jiǎn)介2.1.1 AT89S52單片機(jī)簡(jiǎn)介AT89S52是一個(gè)低功耗,高性能CMOS 8位單片機(jī),片內(nèi)含4k Bytes ISP(In-system programmable)的可反復(fù)擦寫1000次的Flash只讀程序存儲(chǔ)器,32個(gè)可編程I/O口線,兩個(gè)16位定時(shí)器/計(jì)數(shù)器,該器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲(chǔ)單元,功能強(qiáng)大的微型計(jì)算機(jī)的AT89S52可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價(jià)比的解決方案。2.1.2 ULN2003A簡(jiǎn)介ULN2003A概述與特點(diǎn):ULN2003A是高耐壓、大電流達(dá)林頓陳列,其內(nèi)部結(jié)構(gòu)如圖1所示。圖1 ULN2003內(nèi)部結(jié)構(gòu)圖ULN2003 的每一對(duì)達(dá)林頓都串聯(lián)一個(gè)2.7K 的基極電阻,在5V 的工作電壓下它 能與TTL 和CMOS 電路直接相連,可以直接處理原先需要標(biāo)準(zhǔn)邏輯緩沖器來(lái) 處理的數(shù)據(jù)。ULN2003 工作電壓高,工作電流大,灌電流可達(dá)500mA,并能夠在關(guān)態(tài)時(shí)承受 50V 的電壓,輸出還可以在高負(fù)載電流并行運(yùn)行。達(dá)林頓對(duì)管還可并聯(lián)使用以達(dá)到更高的輸出電流能力。ULN2003A的輸出結(jié)構(gòu)是集電極開路的,所以要在輸出端接一個(gè)上拉電阻,在輸入低電平的時(shí)候輸出才是高電平。在驅(qū)動(dòng)負(fù)載的時(shí)候,電流是由電源通過(guò)負(fù)載灌入U(xiǎn)LN2003A的。ULN2003A的應(yīng)用電路如圖2所示。圖2 ULN2003的應(yīng)用電路2.1.3 四相五線永磁型步進(jìn)電機(jī)M35SP-7NP簡(jiǎn)介M35SP-7NP是四相五線永磁型步進(jìn)電機(jī),其轉(zhuǎn)矩和體積較小,步進(jìn)角為7.5度。電機(jī)共有四組線圈,四組線圈的一個(gè)端點(diǎn)連在一起引出,一根為電源引出線,這樣一共有5根引出線。步進(jìn)電機(jī)內(nèi)部結(jié)構(gòu)圖如圖3所示。圖3 步進(jìn)電機(jī)內(nèi)部結(jié)構(gòu)圖2.1.4 紅外遙控簡(jiǎn)介紅外遙控系統(tǒng)由發(fā)射和接收兩大部份組成,應(yīng)用編/解碼專用集成電路芯片來(lái)進(jìn)行控制操作,如下圖4和圖5所示。發(fā)射部份包括鍵盤矩陣、編碼調(diào)制、LED紅外發(fā)送器;接收部份包括光、電轉(zhuǎn)換放大器、解調(diào)、解碼電路。由于采用不同芯片其發(fā)送和接受的過(guò)程是不一樣的,此次設(shè)計(jì)采用的是HT6221紅外編碼芯片,0038一體化紅外接收頭。紅外遙控編碼和解碼原理如下圖所示:鍵盤編碼調(diào)制LED光/電放大解調(diào)解碼遙控發(fā)射器遙控接收器圖4 紅外遙控系統(tǒng)bit“0”0.56ms1.125msbit“1”0.56ms2.25ms圖5 遙控碼的“0”和“1”2.2 步進(jìn)電機(jī)的工作原理2.2.1 步進(jìn)電機(jī)簡(jiǎn)介步進(jìn)電機(jī)是將電脈沖信號(hào)轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元件。在非超載的情況下,電機(jī)的轉(zhuǎn)速、停止的位置只取決于脈沖信號(hào)的頻率和脈沖數(shù),而不受負(fù)載變化的影響,即給電機(jī)加一個(gè)脈沖信號(hào),電機(jī)則轉(zhuǎn)過(guò)一個(gè)步距角。這一線性關(guān)系的存在,加上步進(jìn)電機(jī)只有周期性的誤差而無(wú)累積誤差等特點(diǎn)。使得在速度、位置等控制領(lǐng)域用步進(jìn)電機(jī)來(lái)控制變的非常的簡(jiǎn)單。正常情況下,步進(jìn)電機(jī)轉(zhuǎn)過(guò)的總角度和輸入的脈沖數(shù)成正比;連續(xù)輸入一定頻率的脈沖時(shí),電動(dòng)機(jī)的轉(zhuǎn)速與輸入脈沖的頻率保持嚴(yán)格的對(duì)應(yīng)關(guān)系,不受電壓波動(dòng)和負(fù)載變化的影響。由于步進(jìn)電動(dòng)機(jī)能直接接收數(shù)字量的輸入,所以特別適合于微機(jī)控制。(一)步進(jìn)電機(jī)的靜態(tài)指標(biāo)術(shù)語(yǔ)1、相數(shù):產(chǎn)生不同對(duì)N、S磁場(chǎng)的激磁線圈對(duì)數(shù)。常用m表示。2、拍數(shù):完成一個(gè)磁場(chǎng)周期性變化所需脈沖數(shù)或?qū)щ姞顟B(tài)用n表示,或指電機(jī)轉(zhuǎn)過(guò)一個(gè)齒距角所需脈沖數(shù),以四相電機(jī)為例,有四相四拍運(yùn)行方式即AB-BC-CD-DA-AB,四相八拍運(yùn)行方式即A-AB-B-BC-C-CD-D-DA-A。3、步距角:對(duì)應(yīng)一個(gè)脈沖信號(hào),電機(jī)轉(zhuǎn)子轉(zhuǎn)過(guò)的角位移用表示。=360度(轉(zhuǎn)子齒數(shù)*運(yùn)行拍數(shù)),以常規(guī)二、四相,轉(zhuǎn)子齒為50齒電機(jī)為例。四拍運(yùn)行時(shí)步距角為=360度/(50*4)=1.8度(俗稱整步),八拍運(yùn)行時(shí)步距角為=360度/(50*8)=0.9度(俗稱半步)。(二)步進(jìn)電機(jī)動(dòng)態(tài)指標(biāo)及術(shù)語(yǔ):1、步距角精度:步進(jìn)電機(jī)每轉(zhuǎn)過(guò)一個(gè)步距角的實(shí)際值與理論值的誤差。用百分比表示:誤差/步距角*100%。不同運(yùn)行拍數(shù)其值不同,四拍運(yùn)行時(shí)應(yīng)在5%之內(nèi),八拍運(yùn)行時(shí)應(yīng)在15%以內(nèi)。2、失步:電機(jī)運(yùn)轉(zhuǎn)時(shí)運(yùn)轉(zhuǎn)的步數(shù),不等于理論上的步數(shù)。稱之為失步3、失調(diào)角:轉(zhuǎn)子齒軸線偏移定子齒軸線的角度,電機(jī)運(yùn)轉(zhuǎn)必存在失調(diào)角,由失調(diào)角產(chǎn)生的誤差,采用細(xì)分驅(qū)動(dòng)是不能解決的。4、電機(jī)正反轉(zhuǎn)控制:當(dāng)電機(jī)繞組通電時(shí)序?yàn)锳-AB-B-BC-C-CD-D-DA時(shí)為正轉(zhuǎn),通電時(shí)序?yàn)镈A-D-CD-C-BC-B-AB-A時(shí)為反轉(zhuǎn)。(三)步進(jìn)電機(jī)的特征如下:1、一般步進(jìn)電機(jī)的精度為步進(jìn)角的3%-5%,且不積累。2、步進(jìn)電機(jī)外表允許的最高溫度。一般來(lái)講,磁性材料的退磁點(diǎn)都在攝氏130度以上,有的甚至高達(dá)攝氏200度以上,所以步進(jìn)電機(jī)外表溫度在攝氏80-90度完全正常。3、步進(jìn)電機(jī)的力矩會(huì)隨轉(zhuǎn)速的升高而下降。當(dāng)步進(jìn)電機(jī)轉(zhuǎn)動(dòng)時(shí),電機(jī)各相繞組的電感將形成一個(gè)反向電動(dòng)勢(shì);頻率越高,反向電動(dòng)勢(shì)越大。在它的作用下,電機(jī)隨頻率(或速度)的增大而相電流減少,從而導(dǎo)致力矩下降。4、步進(jìn)電機(jī)低速時(shí)可以正常轉(zhuǎn)動(dòng),但若高于一定速度就無(wú)法啟動(dòng),并伴有嘯叫聲。步進(jìn)電機(jī)有一個(gè)技術(shù)參數(shù):空載啟動(dòng)頻率,即步進(jìn)電機(jī)在空載情況下能夠正常啟動(dòng)的脈沖頻率,如果脈沖頻率高于該值,電機(jī)不能正常啟動(dòng),可能發(fā)生丟步或堵轉(zhuǎn)。在有負(fù)載的情況下,啟動(dòng)頻率應(yīng)更低。如果要使電機(jī)達(dá)到高速轉(zhuǎn)動(dòng),脈沖頻率應(yīng)該有加速過(guò)程,即啟動(dòng)頻率較低,然后按一定加速度升到所希望的高頻(電機(jī)轉(zhuǎn)速?gòu)牡退偕礁咚伲?。步進(jìn)電動(dòng)機(jī)以其顯著的特點(diǎn),在數(shù)字化制造時(shí)代發(fā)揮著重大的用途。伴隨著不同數(shù)字化技術(shù)的發(fā)展以及步進(jìn)電機(jī)本身技術(shù)的提高,步進(jìn)電機(jī)將會(huì)在更多的領(lǐng)域得到應(yīng)用。2.2.2 步進(jìn)電機(jī)的工作原理步進(jìn)電機(jī)的工作就是步進(jìn)轉(zhuǎn)動(dòng),其功能是將脈沖電信號(hào)變換為相應(yīng)的角位移或是直線位移,就是給一個(gè)脈沖信號(hào),電動(dòng)機(jī)轉(zhuǎn)動(dòng)一個(gè)角度或是前進(jìn)一步。步進(jìn)電機(jī)的角位移量與脈沖數(shù)成正比,它的轉(zhuǎn)速與脈沖頻率(f)成正比,在非超載的情況下,電機(jī)的轉(zhuǎn)速、停止的位置只取決于脈沖信號(hào)的頻率和脈沖數(shù),而不受負(fù)載變化的影響,即給電機(jī)加一個(gè)脈沖信號(hào),電機(jī)則轉(zhuǎn)過(guò)一個(gè)步距角。如下圖6所示的步進(jìn)電機(jī)為一四相步進(jìn)電機(jī),采用單極性直流電源供電。只要對(duì)步進(jìn)電機(jī)的各相繞組按合適的時(shí)序通電,就能使步進(jìn)電機(jī)步進(jìn)轉(zhuǎn)動(dòng)。圖6 四相步進(jìn)電機(jī)步進(jìn)示意圖開始時(shí),開關(guān)SB接通電源,SA、SC、SD斷開,B相磁極和轉(zhuǎn)子0、3號(hào)齒對(duì)齊,同時(shí),轉(zhuǎn)子的1、4號(hào)齒就和C、D相繞組磁極產(chǎn)生錯(cuò)齒,2、5號(hào)齒就和D、A相繞組磁極產(chǎn)生錯(cuò)齒。當(dāng)開關(guān)SC接通電源,SB、SA、SD斷開時(shí),由于C相繞組的磁力線和1、4號(hào)齒之間磁力線的作用,使轉(zhuǎn)子轉(zhuǎn)動(dòng),1、4號(hào)齒和C相繞組的磁極對(duì)齊。而0、3號(hào)齒和A、B相繞組產(chǎn)生錯(cuò)齒,2、5號(hào)齒就和A、D相繞組磁極產(chǎn)生錯(cuò)齒。依次類推,A、B、C、D四相繞組輪流供電,則轉(zhuǎn)子會(huì)沿著A、B、C、D方向轉(zhuǎn)動(dòng)。單四拍、雙四拍與八拍工作方式的電源通電時(shí)序與波形分別如圖7所示: 圖7 步進(jìn)電機(jī)工作時(shí)序波形圖2.3 步進(jìn)電機(jī)常見的控制方案與驅(qū)動(dòng)技術(shù)簡(jiǎn)介(一)常見的步進(jìn)電機(jī)控制方案1、基于電子電路的控制步進(jìn)電機(jī)受電脈沖信號(hào)控制,電脈沖信號(hào)的產(chǎn)生、分配、放大全靠電子元器件的動(dòng)作來(lái)實(shí)現(xiàn)。由于脈沖控制信號(hào)的驅(qū)動(dòng)能力一般都很弱,因此必須有功率放大驅(qū)動(dòng)電路。步進(jìn)電機(jī)與控制電路、功率放大驅(qū)動(dòng)電路組成一體,構(gòu)成步進(jìn)電機(jī)驅(qū)動(dòng)系統(tǒng)。此種控制電路設(shè)計(jì)簡(jiǎn)單,功能強(qiáng)大,可實(shí)現(xiàn)一般步進(jìn)電機(jī)的細(xì)分任務(wù)。這個(gè)系統(tǒng)由三部分組成:脈沖信號(hào)產(chǎn)生電路、脈沖信號(hào)分配電路、功率放大驅(qū)動(dòng)電路。系統(tǒng)組成如圖8所示。圖8 基于電子電路控制系統(tǒng)此種方案即可為開環(huán)控制,也可閉環(huán)控制。開環(huán)時(shí),其平穩(wěn)性好,成本低,設(shè)計(jì)簡(jiǎn)單,但未能實(shí)現(xiàn)高精度細(xì)分。采用閉環(huán)控制,即能實(shí)現(xiàn)高精度細(xì)分,實(shí)現(xiàn)無(wú)級(jí)調(diào)速。閉環(huán)控制是不斷直接或間接地檢測(cè)轉(zhuǎn)子的位置和速度,然后通過(guò)反饋和適當(dāng)?shù)奶幚?,自?dòng)給出脈沖鏈,使步進(jìn)電機(jī)每一步響應(yīng)控制信號(hào)的命令,從而只要控制策略正確電機(jī)不可能輕易失步。該方案多通過(guò)一些大規(guī)模集成電路來(lái)控制其脈沖輸出頻率和脈沖輸出數(shù),功能相對(duì)較單一,如需改變控制方案,必須需重新設(shè)計(jì),因此靈活性不高。2、基于PLC的控制基于PLC的步進(jìn)電機(jī)控制系統(tǒng)有PLC、環(huán)形分配器和功率驅(qū)動(dòng)電路組成??刂葡到y(tǒng)采用PLC來(lái)產(chǎn)生控制脈沖。通過(guò)PLC編程輸出一定數(shù)量的方波脈沖,控制步進(jìn)電機(jī)的轉(zhuǎn)角進(jìn)而控制伺服機(jī)構(gòu)的進(jìn)給量,同時(shí)通過(guò)編程控制脈沖頻率來(lái)控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)速度,進(jìn)而控制伺服機(jī)構(gòu)的進(jìn)給速度。環(huán)形脈沖分配器將PLC輸出的控制脈沖按步進(jìn)電機(jī)的通電順序分配到相應(yīng)的繞組。PLC控制的步進(jìn)電機(jī)可以采用軟件環(huán)形分配器,也可采用硬件環(huán)形分配器。 采用軟件來(lái)產(chǎn)生控制步進(jìn)電機(jī)的環(huán)型脈沖信號(hào),并用PLC中的定時(shí)器來(lái)產(chǎn)生速度脈沖信號(hào),這樣就可以省掉專用的步進(jìn)電機(jī)驅(qū)動(dòng)器,降低硬件成本。但受到PLC工作方式的限制及其掃描周期的影響,步進(jìn)電機(jī)不能在高頻下工作,無(wú)法實(shí)現(xiàn)高速控制。并且在速度較高時(shí),由于受到掃描周期的影響,相應(yīng)的控制精度就降低了。3、基于單片機(jī)的控制采用單片機(jī)來(lái)控制步進(jìn)電機(jī),實(shí)現(xiàn)了軟件與硬件相結(jié)合的控制方法。用軟件代替環(huán)形分配器,達(dá)到了對(duì)步進(jìn)電機(jī)的最佳控制。系統(tǒng)中采用單片機(jī)接口線直接去控制步進(jìn)電機(jī)各相驅(qū)動(dòng)線路。由于單片機(jī)的強(qiáng)大功能,還可設(shè)計(jì)大量的外圍電路,鍵盤作為一個(gè)外部中斷源,設(shè)置了步進(jìn)電機(jī)正轉(zhuǎn)、反轉(zhuǎn)、檔次、停止等功能,采用中斷和查詢相結(jié)合的方法來(lái)調(diào)用中斷服務(wù)程序,完成對(duì)步進(jìn)電機(jī)的最佳控制,顯示器及時(shí)顯示正轉(zhuǎn)、反轉(zhuǎn)速度等狀態(tài)。環(huán)形分配器其功能由單片機(jī)系統(tǒng)實(shí)現(xiàn),采用軟件編程的辦法實(shí)現(xiàn)脈沖的分配。本方案有以下優(yōu)點(diǎn):(1)單片機(jī)軟件編程可以使復(fù)雜的控制過(guò)程實(shí)現(xiàn)自動(dòng)控制和精確控制,避免了失步、振蕩等對(duì)控制精度的影響;(2)用軟件代替環(huán)形分配器,通過(guò)對(duì)單片機(jī)的設(shè)定,用同一種電路實(shí)現(xiàn)了多相步進(jìn)電機(jī)的控制和驅(qū)動(dòng),大大提高了接口電路的靈活性和通用性;(3)單片機(jī)的強(qiáng)大功能使顯示電路、鍵盤電路、復(fù)位電路等外圍電路有機(jī)的組合,大大提高系統(tǒng)的交互性?;谝陨细鞣N方案的對(duì)比,可以看出基于單片機(jī)的步進(jìn)電機(jī)控制優(yōu)勢(shì)明顯,故本次設(shè)計(jì)采用基于單片機(jī)的控制方案。(二)步進(jìn)電機(jī)驅(qū)動(dòng)技術(shù)步進(jìn)電動(dòng)機(jī)上個(gè)世紀(jì)就出現(xiàn)了,它的組成、工作原理和今天的反應(yīng)式步進(jìn)電動(dòng)機(jī)沒有什么本質(zhì)區(qū)別,也是依靠氣隙間的磁導(dǎo)變化來(lái)產(chǎn)生電磁轉(zhuǎn)矩。步進(jìn)電機(jī)驅(qū)動(dòng)技術(shù)指的是用步進(jìn)電機(jī)驅(qū)動(dòng)器的驅(qū)動(dòng)級(jí)來(lái)實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)各相繞組的通電和斷電,同時(shí)也是對(duì)繞組承受的電壓和電流進(jìn)行控制的技術(shù)。到目前為止,步進(jìn)電機(jī)驅(qū)動(dòng)技術(shù)通常分為單電壓驅(qū)動(dòng)、單電壓串電阻驅(qū)動(dòng)、高低壓驅(qū)動(dòng)、斬波恒流驅(qū)動(dòng)、升頻升壓驅(qū)動(dòng)和細(xì)分驅(qū)動(dòng)等。單電壓驅(qū)動(dòng)是通過(guò)改變電路的時(shí)間常數(shù)以提高電機(jī)的高頻特性。它的優(yōu)點(diǎn)是結(jié)構(gòu)簡(jiǎn)單、成本低;缺點(diǎn)是串接電阻器的做法將產(chǎn)生大量的能量損耗,尤其是在高頻工作時(shí)更加嚴(yán)重,因而它只適用于小功率或?qū)π阅苤笜?biāo)要求不高的步進(jìn)電機(jī)驅(qū)動(dòng)。這種驅(qū)動(dòng)方式目前主要用于小功率或啟動(dòng)、運(yùn)行頻率要求不高的場(chǎng)合。高低壓驅(qū)動(dòng)是指不論電動(dòng)機(jī)的工作頻率是多少,在導(dǎo)通相的前沿用高電壓供電來(lái)提高電流的上升沿斜率,而在前沿過(guò)后采用低電壓來(lái)維持繞組的電流,即采用加大繞組電流的注入量以提高出力,而不是通過(guò)改善電路的時(shí)間常數(shù)來(lái)使矩頻性能得以提高。但是使用這種驅(qū)動(dòng)方式的電機(jī),其繞組的電流波形在高壓工作結(jié)束和低壓工作開始的銜接處呈凹形,致使電機(jī)的輸出力矩有所下降。這種驅(qū)動(dòng)方式目前在實(shí)際應(yīng)用中還比較常見。細(xì)分驅(qū)動(dòng)是指在每次脈沖切換時(shí),不是將繞組的全部電流通入或切除,而是只改變相應(yīng)繞組中電流的一部分,電動(dòng)機(jī)的合成磁勢(shì)也只旋轉(zhuǎn)步距角的一部分。細(xì)分驅(qū)動(dòng)時(shí),繞組電流不是一個(gè)方波而是階梯波,額定電流是臺(tái)階式的投入或切除。比如:電流分成n個(gè)臺(tái)階,轉(zhuǎn)子則需要n次才轉(zhuǎn)過(guò)一個(gè)步距角,即n細(xì)分細(xì)分驅(qū)動(dòng)最主要的優(yōu)點(diǎn)是步距角變小,分辨率提高,且提高了電機(jī)的定位精度、啟動(dòng)性能和高頻輸出轉(zhuǎn)矩:其次,減弱或消除了步進(jìn)電機(jī)的低頻振動(dòng),降低了步迸電機(jī)在共振區(qū)工作的幾率??梢哉f(shuō)細(xì)分驅(qū)動(dòng)技術(shù)是步進(jìn)電動(dòng)機(jī)驅(qū)動(dòng)與控制技術(shù)的一個(gè)飛躍。 通過(guò)對(duì)比以上各種驅(qū)動(dòng)技術(shù),我們可以看出細(xì)分驅(qū)動(dòng)技術(shù)優(yōu)勢(shì)明顯,其控制的步距角小,定位精度高,啟動(dòng)性能好等,此次設(shè)計(jì)也是采用的細(xì)分驅(qū)動(dòng)技術(shù)。2.4 系統(tǒng)總體設(shè)計(jì)方案2.4.1系統(tǒng)框圖步進(jìn)電機(jī)的控制系統(tǒng)的框圖如圖9所示:AT89S52鍵盤輸入數(shù)碼管顯示ULN2003A步進(jìn)電機(jī)驅(qū)動(dòng)電路步進(jìn)電機(jī)LED指示燈紅外接收頭電源電路振蕩電路復(fù)位電路圖9 系統(tǒng)結(jié)構(gòu)框圖2.4.2 系統(tǒng)設(shè)計(jì)方案與功能簡(jiǎn)述本次設(shè)計(jì)采用AT89S52單片機(jī)作為控制器元件。整個(gè)控制系統(tǒng)主要由四部分組成,各部分主要功能簡(jiǎn)介如下:(1) 鍵盤與紅外控制電路部分 鍵盤由單片機(jī)的P3口的P3.5、P3.6、P3.7來(lái)控制,采用獨(dú)立按鍵設(shè)計(jì)。其功能分別為:正轉(zhuǎn)(加速)、反轉(zhuǎn)(減速)、停止。紅外接收頭采用萬(wàn)能式一體式接收頭,連接在單片機(jī)的P3.2(INT0)口,通過(guò)外部中斷在接收處理遙控器發(fā)射的控制信號(hào)。在軟件中,采用循環(huán)掃描法來(lái)實(shí)現(xiàn)鍵盤的識(shí)別與處理。(2) 顯示電路控制部分在此次設(shè)計(jì)里,顯示器件采用了一位8段共陽(yáng)LED數(shù)碼管顯示器。通過(guò)它來(lái)顯示步進(jìn)電機(jī)當(dāng)前運(yùn)行級(jí)別等級(jí)。顯示硬件電路采用共陽(yáng)數(shù)碼管加PNP型9012三極管驅(qū)動(dòng),驅(qū)動(dòng)電流更大,使數(shù)碼管更加明亮,使電路的連接更加規(guī)范穩(wěn)定。(3) 步進(jìn)電機(jī)的勵(lì)磁控制步進(jìn)電動(dòng)機(jī)的勵(lì)磁方式可以分為全步勵(lì)磁及半步勵(lì)磁。適當(dāng)控制步進(jìn)電機(jī)A、B、/A、/B的勵(lì)磁信號(hào),即可控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)。每輸出一個(gè)脈沖信號(hào),步進(jìn)電動(dòng)機(jī)只走一步。因此,依序不斷地送出脈沖信號(hào),即可令步進(jìn)電動(dòng)機(jī)連續(xù)轉(zhuǎn)動(dòng)。在本設(shè)計(jì)中,通過(guò)設(shè)置AT89S52的定時(shí)器的初始值來(lái)實(shí)現(xiàn)89C51的端口輸出相應(yīng)的相序脈沖,從而實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的控制。(4) 步進(jìn)電機(jī)的驅(qū)動(dòng)電路在本設(shè)計(jì)中,采用ULN2003A作為步進(jìn)電機(jī)的驅(qū)動(dòng)芯片,ULN2003A是高耐壓、大電流、內(nèi)部由七個(gè)硅NPN 達(dá)林頓管組成的驅(qū)動(dòng)芯片。經(jīng)常用在顯示驅(qū)動(dòng)、繼電器驅(qū)動(dòng)、照明燈驅(qū)動(dòng)、電磁閥驅(qū)動(dòng)、伺服電機(jī)、步進(jìn)電機(jī)驅(qū)動(dòng)等電路中。ULN2003 的每一對(duì)達(dá)林頓都串聯(lián)一個(gè)2.7K 的基極電阻,在5V 的工作電壓下它能與TTL 和CMOS 電路直接相連,可以直接處理原先需要標(biāo)準(zhǔn)邏輯緩沖器來(lái)處理的數(shù)據(jù)。ULN2003 工作電壓高,工作電流大,灌電流可達(dá)500mA,并且能夠在關(guān)態(tài)時(shí)承受 50V 的電壓,輸出還可以在高負(fù)載電流并行穩(wěn)定的運(yùn)行。是最佳的驅(qū)動(dòng)選擇之一。2.5 小結(jié)本章主要介紹了此次設(shè)計(jì)中所用的各種器件以及整個(gè)系統(tǒng)設(shè)計(jì)的總體方案,包括AT89S52單片機(jī)介紹、基本器件四相五線永磁型步進(jìn)電機(jī)M35SP-7NP簡(jiǎn)介、步進(jìn)電機(jī)驅(qū)動(dòng)芯片ULN2003A簡(jiǎn)介以及紅外遙控簡(jiǎn)介等,并繪出了系統(tǒng)框圖,對(duì)各部分框圖的功能進(jìn)行了介紹。在下一章將通過(guò)具體的電路來(lái)實(shí)現(xiàn)上述框圖的功能。第三章 系統(tǒng)整體硬件設(shè)計(jì)3.1 單片機(jī)最小系統(tǒng)電路設(shè)計(jì)圖10所示的為AT89S52單片機(jī)的最小系統(tǒng)圖,它是單片機(jī)工作的基本保證,包括電源電路、振蕩電路和復(fù)位電路。單片機(jī)的復(fù)位采用高電平復(fù)位,主要有按鍵復(fù)位和上電復(fù)位,此處上電復(fù)位電路利用10uF電解電容充電,10K電阻對(duì)充電電容放電,電容充電時(shí)間為t=10uF * 10K=100mS,足以使單片機(jī)在高電平期間完成復(fù)位操作。按鍵復(fù)位,5V電源經(jīng)過(guò)220限流電阻和按鍵直接接到RST引腳,當(dāng)按鍵按下RST直接被拉高實(shí)現(xiàn)復(fù)位操作。振蕩電路是產(chǎn)生單片機(jī)工作的時(shí)序是單片機(jī)所必須的,單片機(jī)的一切控制操作都是基于這個(gè)時(shí)鐘基準(zhǔn)工作的。MCS-51單片機(jī)的時(shí)鐘振蕩器是由單片機(jī)內(nèi)部反相器的外接晶振及微調(diào)電容組成的一個(gè)三點(diǎn)式振蕩器,將晶振和微調(diào)電容接到單片機(jī)的XTAL1和XTAL2引腳段即可產(chǎn)生自激振蕩,產(chǎn)生時(shí)鐘周期。在實(shí)際中采用12MHz晶振和2個(gè)30pF微調(diào)電容組成單片機(jī)的振蕩電路。RAM是單片機(jī)的數(shù)據(jù)存儲(chǔ)器,分為片內(nèi)和片外,AT89S52單片機(jī)內(nèi)部的有256B RAM,可尋址空間為64K,此處設(shè)計(jì)無(wú)外接擴(kuò)展。ROM是單片機(jī)的程序存儲(chǔ)器,也分為片內(nèi)外ROM,可尋址空間為64K,在AT89S52單片機(jī)中,有8K的內(nèi)部ROM,足夠此次設(shè)計(jì)中程序的存儲(chǔ),也無(wú)需擴(kuò)展外接。在圖10中下部分為電源接口電路,在此次設(shè)計(jì)中采用適配器,將5V電源通過(guò)電源座接口引進(jìn),供整個(gè)系統(tǒng)工作。電源是所有系統(tǒng)工作的基礎(chǔ),電源穩(wěn)定,系統(tǒng)的工作才能可靠。電源在引進(jìn)本系統(tǒng)后,有開關(guān)控制電源的接通,0.1uF電容濾波處理,還有LED電源指示燈等。圖10 單片機(jī)最小系統(tǒng)圖3.2 狀態(tài)顯示模塊硬件電路設(shè)計(jì) 狀態(tài)顯示模塊硬件電路包括LED顯示電路設(shè)計(jì)和數(shù)碼管顯示電路設(shè)計(jì)兩部分。圖11所示的電路為指示等電路,其中紅色的LED表示步進(jìn)電機(jī)停止轉(zhuǎn)動(dòng),綠色的表示步進(jìn)電機(jī)正轉(zhuǎn),黃色的表示步進(jìn)電機(jī)反轉(zhuǎn)。電路中采用LED燈的負(fù)極接單片機(jī)的I/O口,正極經(jīng)220R限流電阻到5V電源,這樣IO口輸出低電平就可以驅(qū)動(dòng)LED燈,此種接法采用灌電流驅(qū)動(dòng),提高了單片機(jī)的驅(qū)動(dòng)能力。圖12所示的電路是數(shù)碼管驅(qū)動(dòng)電路用來(lái)指示步進(jìn)電機(jī)運(yùn)行速度的級(jí)別,采用共陽(yáng)數(shù)碼管,用PNP三極管驅(qū)動(dòng)。只要單片機(jī)的P30口輸出一個(gè)低電平,PNP三極管導(dǎo)通,三極管的基極(COM網(wǎng)絡(luò))會(huì)被拉高,就可以驅(qū)動(dòng)數(shù)碼管顯示了。此種接法可使數(shù)碼管的亮度增加,顯示清晰。 圖11 轉(zhuǎn)向指示燈電路 圖12 數(shù)碼管顯示與驅(qū)動(dòng)電路3.3 按鍵與紅外接收模塊硬件電路設(shè)計(jì) 在電路中紅外信號(hào)發(fā)送采用現(xiàn)有的遙控器發(fā)射紅外線,在接收模塊中由紅外接收頭去接收遙控器發(fā)射的紅外線,在單片機(jī)程序中通過(guò)對(duì)紅外遙控器鍵值的判斷來(lái)實(shí)現(xiàn)相應(yīng)的操作,從而實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的正反轉(zhuǎn)控制,速度調(diào)節(jié)和速度級(jí)別的顯示。圖13是按鍵電路,S1按下表示步進(jìn)電機(jī)正轉(zhuǎn),S2按下表示步進(jìn)電機(jī)反轉(zhuǎn),S3按下步進(jìn)電機(jī)停止轉(zhuǎn)動(dòng)。采用低電平控制。在程序中,單片機(jī)不停的掃描檢測(cè)對(duì)應(yīng)IO口電平的變化,來(lái)判斷是哪個(gè)鍵按下,從而在程序中去調(diào)用相應(yīng)的程序,執(zhí)行操作。圖14是紅外接口電路,此處只要插上一個(gè)紅外接收頭就可以接收到紅外信號(hào),并對(duì)步進(jìn)電機(jī)進(jìn)行控制。 圖13 按鍵電路 圖14 紅外接口電路3.4 ULN2003A步進(jìn)電機(jī)驅(qū)動(dòng)模塊硬件電路設(shè)計(jì)此電路是步進(jìn)電機(jī)的驅(qū)動(dòng)部分,選用的是ULN2003A芯片來(lái)驅(qū)動(dòng)的,ULN2003系列是一款高耐壓,大電流達(dá)林頓管驅(qū)動(dòng)器,包含7個(gè)NPN達(dá)林頓管。通過(guò)ULN2003A構(gòu)成的驅(qū)動(dòng)電路比較常用,如下圖15所示。通過(guò)單片機(jī)的P2.0P2.3 輸出脈沖到ULN2003A的IN1IN4口,經(jīng)信號(hào)放大后從OUT1OUT4 口分別輸出到電機(jī)的A、B、C、D相,這樣通過(guò)單片機(jī)的IO口輸出的脈沖信號(hào)經(jīng)過(guò)ULN2003A放大后,連接到步進(jìn)電機(jī)A、B、C、D四相后,可直接驅(qū)動(dòng)步進(jìn)電機(jī),實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的控制。圖15 步進(jìn)電機(jī)驅(qū)動(dòng)電路3.5 ISP單片機(jī)在線程序下載器接口電路 圖16是AT89S52特有的在線程序下載接口電路,只需要一個(gè)ISP線就可以很方便的將寫好的程序下載到單片機(jī)中去。圖16 程序下載接口電路3.6 小結(jié)本節(jié)主要介紹了系統(tǒng)設(shè)計(jì)中硬件電路的設(shè)計(jì),包括單片機(jī)最小系統(tǒng)電路,與ULN2003步進(jìn)電機(jī)驅(qū)動(dòng)電路等。在相應(yīng)電路中都有文字說(shuō)明,具體介紹了各個(gè)模塊電路的工作過(guò)程或是設(shè)計(jì)思想。第四章 系統(tǒng)軟件設(shè)計(jì)4.1 軟件設(shè)計(jì)思路在程序設(shè)設(shè)計(jì)中,首先是對(duì)系統(tǒng)進(jìn)行各種初始化處理,包括定時(shí)器,中斷以及其他寄存器和/口的處理等。在main()函數(shù)中的主循環(huán)不停的執(zhí)行按鍵掃描并調(diào)用數(shù)碼管顯示程序,單片機(jī)檢測(cè)到有按鍵按下,判斷該值,并執(zhí)行相應(yīng)的操作,如果是正轉(zhuǎn)按鍵按下,則置位正轉(zhuǎn)標(biāo)志位,單片機(jī)于是調(diào)用正轉(zhuǎn)程序代碼,向單片機(jī)I/O口輸出控制脈沖,控制步進(jìn)電機(jī)的正轉(zhuǎn)。同理,當(dāng)有反正或是停止按鍵按下時(shí),單片機(jī)調(diào)用相應(yīng)的程序,使單片機(jī)的IO口輸出相應(yīng)的控制脈沖,從而控制步進(jìn)電機(jī)的運(yùn)轉(zhuǎn)。程序運(yùn)行后,單片機(jī)開始不停地通過(guò)外部中斷0檢測(cè)有無(wú)中斷信號(hào)輸入(紅外控制信號(hào)通過(guò)紅外接收頭接到單片機(jī)的外部中斷0引腳輸入端),如果有檢測(cè)到中斷信號(hào),就轉(zhuǎn)入中斷服務(wù)程序,控制相關(guān)的變量,讓單片機(jī)處理紅外信號(hào),將其接收到的紅外信號(hào)轉(zhuǎn)變?yōu)樵即a,單片機(jī)再根據(jù)這個(gè)代碼值來(lái)做相應(yīng)的處理,包括調(diào)用顯示程序和步進(jìn)電機(jī)控制程序等。4.2 系統(tǒng)設(shè)計(jì)主程序流程圖系統(tǒng)分為初始化程序、電機(jī)運(yùn)行子程序(包括電機(jī)正轉(zhuǎn)、反轉(zhuǎn)、加減速停止等)、按鍵及紅外掃描子程序等組成,其主程序框圖如下圖17所示。程序流程圖相關(guān)說(shuō)明,單片機(jī)上電后,程序開始執(zhí)行,首先系統(tǒng)初始化,包括各個(gè)寄存器,IO口,中斷,定時(shí)器等等,之后開始按鍵掃描。當(dāng)有按鍵按下時(shí),單片機(jī)就會(huì)調(diào)用相關(guān)的步進(jìn)電機(jī)運(yùn)行子程序。若有外部中斷0輸入(即接收到了紅外信號(hào)),單片機(jī)開始處理紅外程序,根據(jù)紅外處理后的結(jié)果開始調(diào)用步進(jìn)電機(jī)運(yùn)行子程序和顯示子程序。完成之后系統(tǒng)返回,開始下一次掃描,如此循環(huán)。系統(tǒng)初始化掃描按鍵顯示程序開始等待外部中斷0返回有按鍵按下?調(diào)用步進(jìn)電機(jī)運(yùn)行子程序接收到紅外信號(hào)?YYNN圖17 系統(tǒng)主程序流程圖4.3 主程序初始化流程圖對(duì)相應(yīng)的系統(tǒng)參數(shù)進(jìn)行初始化,包括系統(tǒng)上電默認(rèn)運(yùn)行參數(shù)設(shè)定,包括四相八拍的工作方式,初始速度檔位是30轉(zhuǎn)/分,系統(tǒng)中斷設(shè)定,定時(shí)器設(shè)定,載入定時(shí)器初值和默認(rèn)的工作參數(shù)等,具體流程圖如下圖18所示。定時(shí)器中斷允許開始外部中斷允許設(shè)置定時(shí)器工作方式1、裝初值開啟定時(shí)器0、TR0=1載入默認(rèn)工作參數(shù)各I/O端口初始化圖18 系統(tǒng)初始化程序流程圖4.4 步進(jìn)電機(jī)運(yùn)行控制子程序流程圖步進(jìn)電機(jī)控制子程序流程圖說(shuō)明,如圖19所示。程序開始執(zhí)行后,當(dāng)有按鍵或是紅外信號(hào)被單片機(jī)檢測(cè)到后,判別這個(gè)信號(hào)是方向控制信號(hào)還是步進(jìn)電機(jī)啟動(dòng)運(yùn)轉(zhuǎn)信號(hào),若是方向控制信號(hào),置位控制方向的標(biāo)志位,改變步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)方向。若是紅外信號(hào)控制信號(hào),處理之后調(diào)用,步進(jìn)電機(jī)運(yùn)行程序,輸出控制脈沖去控制步進(jìn)電機(jī)的運(yùn)轉(zhuǎn)。若是復(fù)位鍵或是停止鍵,系統(tǒng)復(fù)位或是將停止標(biāo)志位置位,停止輸出控制脈沖,步進(jìn)電機(jī)停止運(yùn)轉(zhuǎn)。當(dāng)多次按下正轉(zhuǎn)鍵或是反轉(zhuǎn)鍵時(shí),步進(jìn)電機(jī)開始加速或是減速,其速度值以0-9等級(jí)級(jí)別在數(shù)碼管上顯示。是方向鍵(或紅外信號(hào))嗎?是啟動(dòng)鍵(或紅外信號(hào))嗎?是復(fù)位鍵(停止信號(hào))嗎?轉(zhuǎn)換正反轉(zhuǎn)電機(jī)運(yùn)行(電機(jī)控制脈沖)調(diào)用正反轉(zhuǎn)指示燈顯示語(yǔ)句開始記下同一按鍵(或紅外信號(hào))按下的次數(shù)的n返回是否否是是掃描按鍵、紅外控制信息將n轉(zhuǎn)換成需要到達(dá)的轉(zhuǎn)速級(jí)別N,控制電機(jī)加、減速數(shù)碼管顯示轉(zhuǎn)速級(jí)別N圖19 步進(jìn)電機(jī)運(yùn)行控制子程序流程圖4.5系統(tǒng)程序簡(jiǎn)要說(shuō)明主要函數(shù)及頭文件的說(shuō)明:#include /AT89S52單片機(jī)的包含文件void main() /負(fù)責(zé)系統(tǒng)程序的初始化,按鍵掃描,數(shù)碼管顯示,/LED指示燈display() /負(fù)責(zé)數(shù)碼管顯示,顯示電機(jī)轉(zhuǎn)速級(jí)別void timeint(void) interrupt 1 /定時(shí)器中斷處理函數(shù),負(fù)責(zé)掃描紅外控制信號(hào)以及/電機(jī)脈沖產(chǎn)生控制等void gorun() /電動(dòng)機(jī)運(yùn)行脈沖控制序列產(chǎn)生函數(shù),通過(guò)改變調(diào)用/該函數(shù)的時(shí)間間隔可以實(shí)現(xiàn)加減速,并且也可以控/制電機(jī)正反轉(zhuǎn)#include/紅外脈沖處理頭文件,對(duì)接收到的脈沖處理文件本次設(shè)計(jì)的軟件部分,是很重要的一個(gè)環(huán)節(jié),是整個(gè)系統(tǒng)的靈魂。在主函數(shù)main中,初始化系統(tǒng),開啟定時(shí)中斷與外部中斷。在while中不停進(jìn)行按鍵掃描,并調(diào)用顯示函數(shù)。同時(shí)定時(shí)器不停的產(chǎn)生控制脈沖,控制步進(jìn)的運(yùn)行狀態(tài),并進(jìn)行紅外脈沖的掃描。另外,外部中斷0與紅外接收頭相連,當(dāng)有紅外控制信號(hào)脈沖發(fā)射出來(lái),經(jīng)過(guò)外部中斷0的處理,翻譯成按鍵對(duì)應(yīng)的標(biāo)志碼,在定時(shí)中斷中檢測(cè)這個(gè)按鍵代碼值,就可以執(zhí)行相應(yīng)的操作,從而去控制電機(jī)及顯示。綜合各個(gè)模塊就可以實(shí)現(xiàn)整個(gè)系統(tǒng)的功能。第五章 系統(tǒng)運(yùn)行與調(diào)試5.1開發(fā)軟件簡(jiǎn)介本設(shè)計(jì)在設(shè)計(jì)過(guò)程中主要用到仿真軟件PROTEUS和C51編譯器keil這兩個(gè)開發(fā)軟件,其中仿真軟件Proteus能在不搭建真實(shí)的硬件電路板就可以模擬出真實(shí)的效果來(lái),而keil C51能很好的編譯單片機(jī)程序,并且在keil里面能很方便的調(diào)試單片機(jī)的程序從而實(shí)現(xiàn)了兩個(gè)開發(fā)軟件的優(yōu)勢(shì)互補(bǔ),大大加快整個(gè)設(shè)計(jì)的開發(fā)速度,本次設(shè)計(jì)繪制原理圖及PCB圖采用的軟件是Altium公司的Altium Designre 6.9,Altium Designer 是業(yè)界首例將設(shè)計(jì)流程、集成化 PCB 設(shè)計(jì)、可編程器件(如 FPGA)設(shè)計(jì)和基于處理器設(shè)計(jì)的嵌入式軟件開發(fā)功能整合在一起的產(chǎn)品,一種同時(shí)進(jìn)行電子線路、PCB和FPGA設(shè)計(jì)以及嵌入式設(shè)計(jì)的解決方案,是繪制原理圖和PCB最佳選擇之一。5.1.1 Keil編程軟件簡(jiǎn)介與使用Keil 是美國(guó)Keil公司的C51編譯器,它被嵌入到了Keil uVision集成開發(fā)環(huán)境中。Keil是目前最常用的編譯器,支持浮點(diǎn)等到類型,支持多維數(shù)組,能生成對(duì)應(yīng)的匯編代碼,能直接編譯匯編代碼程序和內(nèi)嵌多種工具,可以方便的鏈接,生成可執(zhí)行文件。Keil C51軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語(yǔ)言的優(yōu)勢(shì)。5.1.2 Proteus仿真軟件的簡(jiǎn)介與使用Proteus軟件是來(lái)自英國(guó)Labcenter electronics公司的EDA工具軟件。 Proteus軟件有十多年的歷史,在全球廣泛使用,除了其具有和其它EDA工具一樣的原理布圖、PCB自動(dòng)或人工布線及電路仿真的功能外,其革命性的功能是,他的電路仿真是互動(dòng)的,針對(duì)微處理器的應(yīng)用,還可以直接在基于原理圖的虛擬原型上編程,并實(shí)現(xiàn)軟件源碼級(jí)的實(shí)時(shí)調(diào)試。Proteus 產(chǎn)品系列也包含了革命性的VSM技術(shù),用戶可以對(duì)基于微控制器的設(shè)計(jì)連同所有的周圍電子器件一起仿真。PROSPICE 仿真器的一個(gè)擴(kuò)展PROTEUS VSM:便于包括所有相關(guān)的器件的基于微處理器設(shè)計(jì)的協(xié)同仿真。此外,還可以結(jié)合微控制器軟件使用動(dòng)態(tài)的鍵盤,開關(guān),按鈕,LEDs甚至LCD顯示CPU模型。PROTEUS的特點(diǎn)主要有:(1)支持許多通用的微控制器,如PIC,AVR,HC11以及8051; (2)交互的裝置模型包括:LED和LCD顯示,RS232終端,通用鍵盤;(3)強(qiáng)大的調(diào)試工具;包括寄存器和存儲(chǔ)器,斷點(diǎn)和單步模式;(4)IAR C-SPY 和Keil uVision3等開發(fā)工具的源層調(diào)試;(5)應(yīng)用特殊模型的DLL界面-提供有關(guān)元件庫(kù)的全部文件。5.1.3系統(tǒng)的仿真圖圖20 系統(tǒng)仿真圖圖20為仿真結(jié)果圖,在Proteus中電路連接如上,D1藍(lán)色燈,表示電機(jī)正轉(zhuǎn),D2黃色燈,表示電機(jī)反正,D3紅色燈,表示電機(jī)停止運(yùn)轉(zhuǎn)。數(shù)碼管表示步進(jìn)電機(jī)運(yùn)行的速度級(jí)別0-9級(jí)。三個(gè)按鍵分別是正轉(zhuǎn)、反轉(zhuǎn)、停止。當(dāng)上電開始仿真時(shí),紅燈亮,步進(jìn)電機(jī)停止,數(shù)碼管顯示為0,系統(tǒng)正常。當(dāng)按下正轉(zhuǎn)鍵,步進(jìn)電機(jī)開始正轉(zhuǎn),數(shù)碼管顯示1,步進(jìn)電機(jī)運(yùn)行最快,再按一下數(shù)碼管顯示2,電機(jī)速度降低一個(gè)等級(jí),如此直至顯示9,之后又回歸到顯示0,步進(jìn)電機(jī)停止運(yùn)行。同理,反轉(zhuǎn)鍵也是如此。在任何時(shí)候按下停止按鍵時(shí),步進(jìn)電機(jī)都會(huì)立刻停止運(yùn)轉(zhuǎn),數(shù)碼管顯示為0。5.2系統(tǒng)的軟硬件聯(lián)調(diào)及問(wèn)題總結(jié)(一)硬件調(diào)試的步驟仿真完全實(shí)現(xiàn)其所需的功能以后,并在接入電源之前,用萬(wàn)用表對(duì)整個(gè)電路進(jìn)行檢查,查看是否在聯(lián)線過(guò)程中是否出現(xiàn)問(wèn)題。檢查硬件電路內(nèi)容按如下步驟:1、檢查線路的焊接問(wèn)題。2、檢查電路是否有沒接的線路。3、各種外圍器件有沒接錯(cuò)。在接上電源以后看芯片是否都是在正常工作電壓下工作,其它器件是否正常工作等。(二)調(diào)試總結(jié)雖然在仿真軟件調(diào)試好之后沒有什么問(wèn),看似都很正常??傻搅藢?shí)物總會(huì)遇到一些問(wèn)題。首先,在焊接完成后,上電,燒錄程序,發(fā)現(xiàn)預(yù)先的程序在剛做好的板子上跑步起來(lái),電機(jī)嗡嗡的想,但不轉(zhuǎn),開始檢查硬件電路才發(fā)現(xiàn),電機(jī)接口插座焊反了,拆焊,重新裝上,電機(jī)轉(zhuǎn)動(dòng)起來(lái),各種顯示也正常。其次,在電路中

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論