中南大學(xué)基于單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)課程設(shè)計(jì)_第1頁(yè)
中南大學(xué)基于單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)課程設(shè)計(jì)_第2頁(yè)
中南大學(xué)基于單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)課程設(shè)計(jì)_第3頁(yè)
中南大學(xué)基于單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)課程設(shè)計(jì)_第4頁(yè)
中南大學(xué)基于單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)課程設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、中南大學(xué)基于單片機(jī)步進(jìn)電機(jī)控制系統(tǒng)設(shè)計(jì)報(bào)告 專(zhuān)業(yè)班級(jí): 學(xué) 號(hào): 姓 名: 指導(dǎo)教師:吳同茂 實(shí)驗(yàn)日期:2014年5月 目錄前 言1第一章 步進(jìn)電機(jī)原理及控制技術(shù)2第二章 設(shè)計(jì)原理分析72.1 總體設(shè)計(jì)方框圖:72.2元器件介紹72.3 方案論證10第三章 硬件設(shè)計(jì)113.1 控制電路113.2 最小系統(tǒng)123.3 驅(qū)動(dòng)電路143.4 顯示電路143.5 總體電路圖16第四章 軟件設(shè)計(jì)174.1主程序設(shè)計(jì)174.2 定時(shí)中斷設(shè)計(jì)184.3 外部中斷設(shè)計(jì)194.4 源程序21第五章 課程設(shè)計(jì)總結(jié)27第六章 收獲和體會(huì)28參考文獻(xiàn)29 前 言 步進(jìn)電機(jī)是一種進(jìn)行精確步進(jìn)運(yùn)動(dòng)的機(jī)電執(zhí)行元件,它廣泛應(yīng)

2、用于工業(yè)機(jī)械的數(shù)字控制,為使系統(tǒng)的可靠性、通用性、可維護(hù)性以及性?xún)r(jià)比最優(yōu),根據(jù)控制系統(tǒng)功能要求及步進(jìn)電機(jī)應(yīng)用環(huán)境,確定了設(shè)計(jì)系統(tǒng)硬件和軟件的功能劃分,從而實(shí)現(xiàn)了基于8051單片機(jī)的四相步進(jìn)電機(jī)的開(kāi)環(huán)控制系統(tǒng)。控制系統(tǒng)通過(guò)單片機(jī)存儲(chǔ)器、I/O接口、中斷、鍵盤(pán)、LED顯示器的擴(kuò)展、步進(jìn)電機(jī)的環(huán)形分頻器、驅(qū)動(dòng)及保護(hù)電路、人機(jī)接口電路、中斷系統(tǒng)及復(fù)位電路、單電壓驅(qū)動(dòng)電路等的設(shè)計(jì),實(shí)現(xiàn)了四相步進(jìn)電機(jī)的正反轉(zhuǎn),急停等功能。為實(shí)現(xiàn)單片機(jī)控制步進(jìn)電機(jī)系統(tǒng)在數(shù)控機(jī)床上的應(yīng)用,系統(tǒng)設(shè)計(jì)了兩個(gè)外部中斷,以實(shí)現(xiàn)步進(jìn)電機(jī)在某段時(shí)間內(nèi)的反復(fù)正反轉(zhuǎn)功能,也即數(shù)控機(jī)床的刀架自動(dòng)進(jìn)給運(yùn)動(dòng),隨著單片機(jī)技術(shù)的不斷發(fā)展,單片機(jī)在日用

3、電子產(chǎn)品中的應(yīng)用越來(lái)越廣泛,自六十年代初期以來(lái),步進(jìn)電機(jī)的應(yīng)用得到很大的提高。人們用它來(lái)驅(qū)動(dòng)時(shí)鐘和其他采用指針的儀器,打印機(jī)、繪圖儀,磁盤(pán)光盤(pán)驅(qū)動(dòng)器、各種自動(dòng)控制閥、各種工具,還有機(jī)器人等機(jī)械裝置。此外作為執(zhí)行元件,步進(jìn)電機(jī)是機(jī)電一體化的關(guān)鍵產(chǎn)品之一,被廣泛應(yīng)用在各種自動(dòng)化控制系統(tǒng)中,隨著微電子和計(jì)算機(jī)技術(shù)的發(fā)展,它的需要量與日俱增,在各個(gè)國(guó)民經(jīng)濟(jì)領(lǐng)域都有應(yīng)用。步進(jìn)電機(jī)是機(jī)電數(shù)字控制系統(tǒng)中常用的執(zhí)行元件,由于其精度高、體積小、控制方便靈活,因此在智能儀表和位置控制中得到了廣泛的應(yīng)用,大規(guī)模集成電路的發(fā)展以及單片機(jī)技術(shù)的迅速普及,為設(shè)計(jì)功能強(qiáng),價(jià)格低的步進(jìn)電機(jī)控制驅(qū)動(dòng)器提供了先進(jìn)的技術(shù)和充足的資

4、源。第一章 步進(jìn)電機(jī)原理及控制技術(shù)由于步進(jìn)電機(jī)是一種將電脈沖信號(hào)轉(zhuǎn)換成直線(xiàn)或角位移的執(zhí)行元件,它不能直接接到交直流電源上,而必須使用專(zhuān)業(yè)設(shè)備-步進(jìn)電機(jī)控制驅(qū)動(dòng)器,典型步進(jìn)電機(jī)控制系統(tǒng)如圖1所示:控制器可以發(fā)出脈沖頻率從幾赫茲到幾千赫茲可以連續(xù)變化的脈沖信號(hào),它為環(huán)形分配器提供脈沖序列,環(huán)形分配器的主要功能是把來(lái)自控制環(huán)節(jié)的脈沖序列按一定的規(guī)律分配后,經(jīng)過(guò)功率放大器的放大加到步進(jìn)電機(jī)驅(qū)動(dòng)電源的各項(xiàng)輸入端,以驅(qū)動(dòng)步進(jìn)電機(jī)的轉(zhuǎn)動(dòng),環(huán)形分配器主要有兩大類(lèi):一類(lèi)是用計(jì)算機(jī)軟件設(shè)計(jì)的方法實(shí)現(xiàn)環(huán)形分配器要求的功能,通常稱(chēng)軟環(huán)形分配器。另一類(lèi)是用硬件構(gòu)成的環(huán)形分配器,通常稱(chēng)硬環(huán)形分配器。功率放大器主要對(duì)環(huán)形分

5、配器的較小輸出信號(hào)進(jìn)行放大,以達(dá)到驅(qū)動(dòng)步進(jìn)電機(jī)的目的,步進(jìn)電機(jī)的基本控制包括轉(zhuǎn)向控制和速度控制兩個(gè)方面。從結(jié)構(gòu)上看,步進(jìn)電機(jī)分為三相單三拍、三相雙三拍和三相六拍3種,其基本原理如下: (1) 換相順序的控制通電換相這一過(guò)程稱(chēng)為脈沖分配。例如,三相步進(jìn)電機(jī)在單三拍的工作方式下,其各相通電順序?yàn)锳BCA,通電控制脈沖必須嚴(yán)格按照這一順序分別控制A、B、C相的通斷。三相雙三拍的通電順序?yàn)锳BBCCAAB,三相六拍的通電順序?yàn)锳ABBBCCCAA。 (2) 步進(jìn)電機(jī)的換向控制如果給定工作方式正序換相通電,步進(jìn)電機(jī)正轉(zhuǎn)。若步進(jìn)電機(jī)的勵(lì)磁方式為三相六拍,即AABBBCCCAA。如果按反序通電換相,即AAC

6、CCBBBAA,則電機(jī)就反轉(zhuǎn)。其他方式情況類(lèi)似。 (3) 步進(jìn)電機(jī)的速度控制如果給步進(jìn)電機(jī)發(fā)一個(gè)控制脈沖,它就轉(zhuǎn)一步,再發(fā)一個(gè)脈沖,它會(huì)再轉(zhuǎn)一步。兩個(gè)脈沖的間隔越短,步進(jìn)電機(jī)就轉(zhuǎn)得越快。調(diào)整送給步進(jìn)電機(jī)的脈沖頻率,就可以對(duì)步進(jìn)電機(jī)進(jìn)行調(diào)試。 (4) 步進(jìn)電機(jī)的起停控制步進(jìn)電機(jī)由于其電氣特性,運(yùn)轉(zhuǎn)時(shí)會(huì)有步進(jìn)感。為了使電機(jī)轉(zhuǎn)動(dòng)平滑,減小振動(dòng),可在步進(jìn)電機(jī)控制脈沖的上升沿和下降沿采用細(xì)分的梯形波,可以減小步進(jìn)電機(jī)的步進(jìn)角,跳過(guò)電機(jī)運(yùn)行的平穩(wěn)性。在步進(jìn)電機(jī)停轉(zhuǎn)時(shí),為了防止因慣性而使電機(jī)軸產(chǎn)生順滑,則需采用合適的鎖定波形,產(chǎn)生鎖定磁力矩,鎖定步進(jìn)電機(jī)的轉(zhuǎn)軸,使步進(jìn)電機(jī)轉(zhuǎn)軸不能自由轉(zhuǎn)動(dòng)。 (5) 步進(jìn)電機(jī)

7、的加減速控制在步進(jìn)電機(jī)控制系統(tǒng)中,通過(guò)實(shí)驗(yàn)發(fā)現(xiàn),如果信號(hào)變化太快,步進(jìn)電機(jī)由于慣性跟不上電信號(hào)的變化,這時(shí)就會(huì)產(chǎn)生堵轉(zhuǎn)和失步現(xiàn)象。所有步進(jìn)電機(jī)在啟動(dòng)時(shí),必須有加速過(guò)程,在停止時(shí)波形有減速過(guò)程。理想的加速曲線(xiàn)一般為指數(shù)曲線(xiàn),步進(jìn)電機(jī)整個(gè)降速過(guò)程頻率變化規(guī)律是整個(gè)加速過(guò)程頻率變化規(guī)律的逆過(guò)程。選定的曲線(xiàn)比較符合步進(jìn)電機(jī)升降過(guò)程的運(yùn)行規(guī)律,能充分利用步進(jìn)電機(jī)的有效轉(zhuǎn)矩,快速響應(yīng)性好,縮短了升降速的時(shí)間,并可防止失步和過(guò)沖現(xiàn)象。在一個(gè)實(shí)際的控制系統(tǒng)中,要根據(jù)負(fù)載的情況來(lái)選擇步進(jìn)電機(jī)。步進(jìn)電機(jī)能響應(yīng)而不失步的最高步進(jìn)頻率稱(chēng)為“啟動(dòng)頻率”,于此類(lèi)似“停止頻率”是指系統(tǒng)控制信號(hào)突然關(guān)斷,步進(jìn)電機(jī)不沖過(guò)目標(biāo)位

8、置的最高步進(jìn)頻率。電機(jī)的啟動(dòng)頻率、停止頻率和輸出轉(zhuǎn)矩都要和負(fù)載的轉(zhuǎn)動(dòng)慣量相適應(yīng),有了這些數(shù)據(jù),才能有效地對(duì)電機(jī)進(jìn)行加減速控制。加速過(guò)程有突然施加的脈沖啟動(dòng)頻率f0。步進(jìn)電機(jī)的最高啟動(dòng)頻率(突跳頻率)一般為0.1KHz到34KHz,而最高運(yùn)行頻率則可以達(dá)到N*102KHz,以超過(guò)最高啟動(dòng)頻率的頻率直接啟動(dòng),會(huì)產(chǎn)生堵轉(zhuǎn)和失步的現(xiàn)象。 圖1 步進(jìn)電機(jī)運(yùn)行過(guò)程中頻率變化曲線(xiàn)在一般的應(yīng)用中,經(jīng)過(guò)大量實(shí)踐和反復(fù)驗(yàn)證,頻率如按直線(xiàn)上升或下降,控制效果就可以滿(mǎn)足常規(guī)的應(yīng)用要求。用PLC實(shí)現(xiàn)步進(jìn)電機(jī)的加P減速控制,實(shí)踐上就是控制發(fā)脈沖的頻率。加速時(shí),使脈沖頻率增高,減速則相反。如果使用定時(shí)器來(lái)控制電機(jī)的速度,加

9、減速控制就是不斷改變定時(shí)中斷的設(shè)定值。速度從v1v2變化,如果是線(xiàn)性增加,則按給定的斜率加P減速;如果是突變,則按階梯加速處理。在此過(guò)程中要處理好兩個(gè)問(wèn)題: 速度轉(zhuǎn)換時(shí)間應(yīng)盡量短。為了縮短速度轉(zhuǎn)換的時(shí)間,可以采用建立數(shù)據(jù)表的方法。結(jié)合各曲線(xiàn)段的頻率和各段間的階梯頻率,就可以建立一個(gè)連續(xù)的數(shù)據(jù)表,并通過(guò)轉(zhuǎn)換程序?qū)⑵滢D(zhuǎn)換為定時(shí)初始表。通過(guò)在不同的階段調(diào)用相應(yīng)的定時(shí)初值,就可控制電機(jī)的運(yùn)行。定時(shí)初值的計(jì)算是在定時(shí)中斷外實(shí)現(xiàn)的,并不占用中斷時(shí)間,保證電機(jī)的高速運(yùn)行。 保證控制速度的精確性。要從一個(gè)速度準(zhǔn)確達(dá)到另一個(gè)速度,就要建立一個(gè)校驗(yàn)機(jī)制,以防超過(guò)或未達(dá)到所需速度。 (6) 步進(jìn)電機(jī)的換向控制 步進(jìn)

10、電機(jī)換向時(shí),一定要在電機(jī)降速停止或降到突跳頻率范圍之內(nèi)在換向,以免產(chǎn)生較大的沖擊而損壞電機(jī)。換向信號(hào)一定要在前一個(gè)方向的最后一個(gè)脈沖結(jié)束后以及下一個(gè)方向的第一個(gè)脈沖前發(fā)出。對(duì)于脈沖的設(shè)計(jì)主要要求其有一定的脈沖寬度、脈沖序列的均勻度及高低電平方式。在某一高速下的正、反向切換實(shí)質(zhì)包含了降速換向加速3個(gè)過(guò)程。 步進(jìn)電機(jī)有如下特點(diǎn): 步進(jìn)電機(jī)的角位移與輸入脈沖數(shù)嚴(yán)格成正比,因此當(dāng)它轉(zhuǎn)一轉(zhuǎn)后,沒(méi)有累計(jì)誤差,具有良好的跟隨性。 由步進(jìn)電機(jī)與驅(qū)動(dòng)電路組成的開(kāi)環(huán)數(shù)控系統(tǒng),既非常方便、廉價(jià),也非??煽?。同時(shí),它也可以有角度反饋環(huán)節(jié)組成高性能的閉環(huán)數(shù)控系統(tǒng)。 步進(jìn)電機(jī)的動(dòng)態(tài)響應(yīng)快,易于啟停、正反轉(zhuǎn)及變速。 速度可

11、在相當(dāng)寬的范圍內(nèi)平滑調(diào)節(jié),低速下仍能保證獲得很大的轉(zhuǎn)矩,因此一般可以不用減速器而直接驅(qū)動(dòng)負(fù)載。 步進(jìn)電機(jī)只能通過(guò)脈沖電源供電才能運(yùn)行,它不能直接用交流電源或直流電源。 步進(jìn)電機(jī)自身的噪聲和振動(dòng)比較大,帶慣性負(fù)載的能力強(qiáng)。 第二章 設(shè)計(jì)原理分析2.1 總體設(shè)計(jì)方框圖:2.2元器件介紹(1)步進(jìn)電機(jī) 步進(jìn)電機(jī)是數(shù)字控制電機(jī),它將脈沖信號(hào)轉(zhuǎn)變成角位移,即給一個(gè)脈沖信號(hào),步進(jìn)電機(jī)就轉(zhuǎn)動(dòng)一個(gè)角度,因此非常適合于單片機(jī)控制。步進(jìn)電機(jī)區(qū)別于其他控制電機(jī)的最大特點(diǎn)是:它是通過(guò)輸入脈沖信號(hào)來(lái)進(jìn)行控制的,即電機(jī)的總轉(zhuǎn)動(dòng)角度由輸入脈沖數(shù)決定,而電機(jī)的轉(zhuǎn)速由脈沖信號(hào)頻率決定。 步進(jìn)電機(jī)分三種:永磁式(PM),反應(yīng)式(

12、VR)和混合式(HB),步進(jìn)電機(jī)又稱(chēng)為脈沖電機(jī),是工業(yè)過(guò)程控制和儀表中一種能夠快速啟動(dòng),反轉(zhuǎn)和制動(dòng)的執(zhí)行元件,其功用是將電脈沖轉(zhuǎn)換為相應(yīng)的角位移或直線(xiàn)位移,由于開(kāi)環(huán)下就能實(shí)現(xiàn)精確定位的特點(diǎn),使其在工業(yè)控制領(lǐng)域獲得了廣泛應(yīng)用。步進(jìn)電機(jī)的運(yùn)轉(zhuǎn)是由電脈沖信號(hào)控制的,其角位移量或線(xiàn)位移量與脈沖數(shù)成正比,每個(gè)一個(gè)脈沖,步進(jìn)電機(jī)就轉(zhuǎn)動(dòng)一個(gè)角度(不距角)或前進(jìn)、倒退一步。步進(jìn)電機(jī)旋轉(zhuǎn)的角度由輸入的電脈沖數(shù)確定,所以,也有人稱(chēng)步進(jìn)電機(jī)為數(shù)字/角度轉(zhuǎn)換器。 四相步進(jìn)電機(jī)的工作原理 該設(shè)計(jì)采用了20BY-0型步進(jìn)電機(jī),該電機(jī)為四相步進(jìn)電機(jī),采用單極性直流電源供電。只要對(duì)步進(jìn)電機(jī)的各相繞組按合適的時(shí)序通電,就能使步

13、進(jìn)電機(jī)轉(zhuǎn)動(dòng)。當(dāng)某一相繞組通電時(shí),對(duì)應(yīng)的磁極產(chǎn)生磁場(chǎng),并與轉(zhuǎn)子形成磁路,這時(shí),如果定子和轉(zhuǎn)子的小齒沒(méi)有對(duì)齊,在磁場(chǎng)的作用下,由于磁通具有力圖走磁阻最小路徑的特點(diǎn),則轉(zhuǎn)子將轉(zhuǎn)動(dòng)一定的角度,使轉(zhuǎn)子與定子的齒相互對(duì)齊,由此可見(jiàn),錯(cuò)齒是促使電機(jī)旋轉(zhuǎn)的原因。 步進(jìn)電機(jī)的靜態(tài)指標(biāo)及術(shù)語(yǔ) 相數(shù):產(chǎn)生不同隊(duì)N、S磁場(chǎng)的激磁線(xiàn)圈對(duì)數(shù),常用m表示。 拍數(shù):完成一個(gè)磁場(chǎng)周期性變化所需脈沖用n表示,或指電機(jī)轉(zhuǎn)過(guò)一個(gè)齒距角所需脈沖數(shù),以四相電機(jī)為例,有四相四拍運(yùn)行方式即ABBCCDDAAB,四相八拍運(yùn)行方式即AABBBCCCDDDAA。步距角:對(duì)應(yīng)一個(gè)脈沖信號(hào),電機(jī)轉(zhuǎn)子轉(zhuǎn)過(guò)的角位移用表示。=360度(轉(zhuǎn)子齒角運(yùn)行拍數(shù)),

14、以常規(guī)二、四相,轉(zhuǎn)子齒角為50齒角電機(jī)為例。四相運(yùn)行時(shí)步距角為=360度/(50*4)=1.8度,八拍運(yùn)行時(shí)步距角為=360度/(50*8)=0.9度。 定位轉(zhuǎn)矩:電機(jī)在不通電的狀態(tài)下,電機(jī)轉(zhuǎn)子自身的鎖定力矩(由磁場(chǎng)齒形的諧波以及機(jī)械誤差造成的)。 靜轉(zhuǎn)矩:電機(jī)在額定靜態(tài)作業(yè)下,電機(jī)不做旋轉(zhuǎn)運(yùn)動(dòng)時(shí),電機(jī)轉(zhuǎn)軸的鎖定力矩。此力矩是衡量電機(jī)體積的標(biāo)準(zhǔn),與驅(qū)動(dòng)電壓及驅(qū)動(dòng)電源等無(wú)關(guān)。雖然靜態(tài)轉(zhuǎn)矩與電磁激磁匝數(shù)成正比,與定子和轉(zhuǎn)子間的氣隙有關(guān)。但過(guò)分采用減小氣隙,增加勵(lì)磁匝數(shù)來(lái)提高靜轉(zhuǎn)矩是不可取的,這樣會(huì)造成電機(jī)的發(fā)熱及機(jī)械噪音。 四相步進(jìn)電機(jī)的脈沖分配規(guī)律 目前,對(duì)步進(jìn)電機(jī)的控制主要有分散器件組成的環(huán)形

15、脈沖分配器、軟件環(huán)形脈沖分配器、專(zhuān)用集成芯片環(huán)形脈沖分配器等。本設(shè)計(jì)利用單片機(jī)進(jìn)行控制,主要是利用軟件進(jìn)行環(huán)形脈沖分配。四相步進(jìn)電機(jī)的工作方式為四相單四拍,雙四拍和四相八拍工作的方式。各種工作方式在電源通電時(shí)的時(shí)序 與波形分別如圖1 a、b、c所示。本設(shè)計(jì)的電機(jī)工作方式為四相單四拍,根據(jù)步進(jìn)電機(jī)的工作的時(shí)序和波形圖,總結(jié)出其工作方式為四相單四拍時(shí)的脈沖分配規(guī)律,四相雙四拍的脈沖分配規(guī)律,在每一種工作方式中,脈沖的頻率越高,其轉(zhuǎn)速就越快,但脈沖頻率高到一定程度,步進(jìn)電機(jī)跟不上頻率的變化后電機(jī)會(huì)出現(xiàn)失步現(xiàn)象,所以脈沖頻率一定要控制在步進(jìn)電機(jī)允許的范圍內(nèi)。 (2)89C51單片機(jī) Atmel公司生產(chǎn)

16、的89C51單片機(jī)是一種低功耗/低電壓高性能的8位單片機(jī),它采用CMOS和高密度非易失性存儲(chǔ)技術(shù),而且其輸出引腳和指令系統(tǒng)都與MCS-51兼容;片內(nèi)的Flash ROM允許在系統(tǒng)內(nèi)改編程序或用常規(guī)的非易失性編程器來(lái)編程,內(nèi)部除CPU外,還包括256字節(jié)RAM,4個(gè)8位并行I/O口,5個(gè)中斷源,2個(gè)中斷優(yōu)先級(jí),2個(gè)16位可編程定時(shí)計(jì)數(shù)器,89C51單片機(jī)是一種功能強(qiáng)、靈活性高且價(jià)格合理的單片機(jī),完全滿(mǎn)足本系統(tǒng)設(shè)計(jì)需要。 2.3 方案論證從該系統(tǒng)的設(shè)計(jì) 要求可知,該系統(tǒng)的輸入量為速度和方向,速度應(yīng)該有增減變化,通常用加減按鈕控制速度,這樣只要2根口線(xiàn),再加上一根方向線(xiàn)盒一根啟動(dòng)信號(hào)線(xiàn)共需要4根輸入

17、線(xiàn)。系統(tǒng)的輸出線(xiàn)與步進(jìn)電機(jī)的繞組數(shù)有關(guān)。這里選四相雙四拍步進(jìn)電機(jī),該電機(jī)共有四相繞組,工作電壓為+5V,可以個(gè)單片機(jī)共用一個(gè)電源。步進(jìn)電機(jī)的四相繞組用P1口的P1.0P1.3控制,由于P1口驅(qū)動(dòng)能力不夠,因而用一片2803增加驅(qū)動(dòng)能力。用P0口控制第一數(shù)碼管用于顯示正反轉(zhuǎn),用P2口控制第二個(gè)數(shù)碼管用于顯示轉(zhuǎn)速等級(jí)。數(shù)碼管采用共陽(yáng)第三章 硬件設(shè)計(jì)本設(shè)計(jì)的硬件電路只要包括控制電路、最小系統(tǒng)、驅(qū)動(dòng)電路、顯示電路四大部分。最小系統(tǒng)只要是為了使單片機(jī)正常工作??刂齐娐分灰砷_(kāi)關(guān)和按鍵組成,由操作者根據(jù)相應(yīng)的工作需要進(jìn)行操作。顯示電路主要是為了顯示電機(jī)的工作狀態(tài)和轉(zhuǎn)速。驅(qū)動(dòng)電路主要是對(duì)單片機(jī)輸出的脈沖進(jìn)行

18、功率放大,從而驅(qū)動(dòng)電機(jī)轉(zhuǎn)動(dòng)。 3.1 控制電路 根據(jù)系統(tǒng)的控制要求,控制輸入部分設(shè)置了啟動(dòng)控制,換向控制,加速控制和減速控制按鈕,分別是K1、K2、S2、S3,控制電路如圖4所示。通過(guò)K1、K2狀態(tài)變化來(lái)實(shí)現(xiàn)電機(jī)的啟動(dòng)和換向功能。當(dāng)K1、K2的狀態(tài)變化時(shí),內(nèi)部程序檢測(cè)P1.0和P1.1的狀態(tài)來(lái)調(diào)用相應(yīng)的啟動(dòng)和換向程序,發(fā)現(xiàn)系統(tǒng)的電機(jī)的啟動(dòng)和正反轉(zhuǎn)控制。 根據(jù)步進(jìn)電機(jī)的工作原理可以知道,步進(jìn)電機(jī)轉(zhuǎn)速的控制主要是通過(guò)控制通入電機(jī)的脈沖頻率,從而控制電機(jī)的轉(zhuǎn)速。對(duì)于單片機(jī)而言,主要的方法有:軟件延時(shí)和定時(shí)中斷在此電路中電機(jī)的轉(zhuǎn)速控制主要是通過(guò)定時(shí)器的中斷來(lái)實(shí)現(xiàn)的,該電路控制電機(jī)加速度主要是通過(guò)S2、

19、S3的斷開(kāi)和閉合,從而控制外部中斷根據(jù)按鍵次數(shù),改變速度值存儲(chǔ)區(qū)中的數(shù)據(jù)(該數(shù)據(jù)為定時(shí)器的中斷次數(shù)),這樣就改變了步進(jìn)電機(jī)的輸出脈沖頻率,從而改變了電機(jī)的轉(zhuǎn)速。圖4 控制電路原理圖3.2 最小系統(tǒng) 單片機(jī)最小系統(tǒng)或者稱(chēng)為最小應(yīng)用系統(tǒng),素質(zhì)用最少的元件組成的單片機(jī)可以工作的系統(tǒng),對(duì)51系列單片機(jī)來(lái)說(shuō),最小系統(tǒng)一般應(yīng)該包括:?jiǎn)纹瑱C(jī)、復(fù)位電路、晶振電路。 復(fù)位電路:使用了獨(dú)立式鍵盤(pán),單片機(jī)的P1口鍵盤(pán)的接口。該設(shè)計(jì)要求只需4個(gè)鍵對(duì)步進(jìn)電機(jī)的狀態(tài)進(jìn)行控制,但考慮到對(duì)控制功能的擴(kuò)展,使用了6路獨(dú)立式鍵盤(pán)。復(fù)位電路采用手動(dòng)復(fù)位,所謂手動(dòng)復(fù)位,是指通過(guò)接通一按鈕開(kāi)關(guān),使單片機(jī)進(jìn)入復(fù)位狀態(tài),晶振電路用30PF

20、的電容和一12M晶體振蕩器組成為整個(gè)電路提供時(shí)鐘頻率。如圖5示。 晶振電路:8051單片機(jī)的時(shí)鐘信號(hào)通常用兩種電路形式電路得到:內(nèi)部震蕩方式和外部中斷方式。在引腳XTAL1和XTAL2外部接晶振電路器(簡(jiǎn)稱(chēng)晶振)或陶瓷晶振器,就構(gòu)成了內(nèi)部晶振方式。由于單片機(jī)內(nèi)部有一個(gè)高增益反相放大器,當(dāng)外接晶振后,就構(gòu)成了自激振蕩器并產(chǎn)生振蕩時(shí)鐘脈沖。內(nèi)部振蕩方式的外部電路如圖5示。其電容值一般在530pf,晶振頻率的典型值為12MHz,采用6MHz的情況也比較多。內(nèi)部振蕩方式所得的時(shí)鐘信號(hào)比較穩(wěn)定,實(shí)用電路實(shí)用較多。 圖5 復(fù)位及時(shí)鐘振蕩電路3.3 驅(qū)動(dòng)電路 通過(guò)ULN2803構(gòu)成比較多的驅(qū)動(dòng)電路,電路圖如

21、圖6所示。通過(guò)單片機(jī)的P1.0P1.3輸出脈沖到ULN2803的1B4B口,經(jīng)信號(hào)放大后從1C4C口分別輸出到電機(jī)的A、B、C、D相。 圖6 步進(jìn)電機(jī)驅(qū)動(dòng)電路3.4 顯示電路 在該步進(jìn)電機(jī)的控制器中,電機(jī)可以正反轉(zhuǎn),可以加速、減速,其中電機(jī)轉(zhuǎn)速的等級(jí)分為七級(jí),為了方便知道電機(jī)的運(yùn)行狀態(tài)和電機(jī)的轉(zhuǎn)速的等級(jí),這里設(shè)計(jì)了電機(jī)轉(zhuǎn)速和電機(jī)的工作狀態(tài)的顯示電路。在顯示電路中,主要是利用了單片機(jī)的P0口和P2口。采用兩個(gè)共陽(yáng)數(shù)碼管作顯示。第一個(gè)數(shù)碼管接的a、b、c、d、e、f、g、h分別接P0.0P0.7口,用于顯示電機(jī)正反轉(zhuǎn)狀態(tài),正轉(zhuǎn)時(shí)顯示“1”,反轉(zhuǎn)時(shí)顯示“一”,不轉(zhuǎn)時(shí)顯示“0”。第二個(gè)數(shù)碼管的a、b、

22、c、d、e、f、g、h分別接P2.0P2.7口,用于顯示電機(jī)的轉(zhuǎn)速級(jí)別,共七級(jí),即從17轉(zhuǎn)速依次遞增,“0”表示轉(zhuǎn)速為零。電路如圖7所示。圖7 顯示電路3.5 總體電路圖 把各個(gè)部分的電路圖組合成總電路圖,如圖8所示。圖8 總體電路圖第四章 軟件設(shè)計(jì)通過(guò)分析可以看出,實(shí)現(xiàn)系統(tǒng)功能可以采用多種方法,由于隨時(shí)有可能輸入加速、加速信號(hào)和方向信號(hào),因而采用中斷方式效率最高,這樣總共要完成4個(gè)部分的工作才能滿(mǎn)足課題要求,即主程序部分、定時(shí)器中斷部分、外部中斷0和外部中斷1部分,其中主程序的主要功能是系統(tǒng)初始參數(shù)的設(shè)置及啟動(dòng)開(kāi)關(guān)的檢測(cè),若啟動(dòng)開(kāi)關(guān)合上則系統(tǒng)開(kāi)始工作,反之系統(tǒng)停止工作;定時(shí)器部分控制脈沖頻率

23、,它決定了步進(jìn)電機(jī)轉(zhuǎn)速的快慢;兩個(gè)外部中斷程序要做的工作都是為了完成改變速度這一功能。下面分析主程序與定時(shí)器中斷程序及外部中斷程序。4.1主程序設(shè)計(jì)主程序中要完成的工作主要有系統(tǒng)初始值的設(shè)置、系統(tǒng)狀態(tài)的顯示以及各種開(kāi)關(guān)狀態(tài)的檢測(cè)判斷等。其中系統(tǒng)初始狀態(tài)的設(shè)置內(nèi)容較多,該系統(tǒng)中,需要初始化定時(shí)器、外部中斷;對(duì)P1口送初值以決定脈沖分配方式,速度值存儲(chǔ)區(qū)送初值決定步進(jìn)電機(jī)的啟動(dòng)速度,對(duì)方向值存儲(chǔ)區(qū)送初值決定步進(jìn)電機(jī)旋轉(zhuǎn)方向等內(nèi)容。若初始化P1=11H、速度和方向初始值均設(shè)為0,就意味著步進(jìn)電機(jī)按四相單四拍運(yùn)行,系統(tǒng)上電后在沒(méi)有操作的情況下,步進(jìn)電機(jī)不旋轉(zhuǎn),方向值顯示“0”,速度值顯示“0”,主程序

24、流程圖如圖9所示 圖9 主程序流程圖4.2 定時(shí)中斷設(shè)計(jì)步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)主要是給電機(jī)各繞組按一定的時(shí)間間隔連續(xù)不斷地按規(guī)律通入電流,步進(jìn)電機(jī)才會(huì)旋轉(zhuǎn),時(shí)間間隔越短,速度就越快。在這個(gè)系統(tǒng)中,這個(gè)時(shí)間間隔是用定時(shí)器重復(fù)中斷一定次數(shù)產(chǎn)生的,即調(diào)節(jié)時(shí)間間隔就是調(diào)節(jié)定時(shí)器的中斷次數(shù),因而在定時(shí)器中斷程序中,要做的工作主要是判斷電機(jī)的運(yùn)行方向、發(fā)下一個(gè)脈沖,以及保存當(dāng)前的各種狀態(tài)。程序流程圖如圖10所示。 圖10 定時(shí)中斷程序流程4.3 外部中斷設(shè)計(jì)外部中斷所要完成的工作是根據(jù)按鍵次數(shù),改變速度值存儲(chǔ)區(qū)中的數(shù)據(jù)(該數(shù)據(jù)為定時(shí)器的中斷次數(shù)),這樣就改變了步進(jìn)電機(jī)的輸出脈沖頻率,也就是改變了電機(jī)的轉(zhuǎn)速。速度增

25、加按鈕S2為INT0中斷,其程序流程為原數(shù)據(jù),當(dāng)值等于7時(shí),不改變?cè)瓟?shù)值返回,小于7時(shí),數(shù)據(jù)加1后返回;速度減少按鈕S3,當(dāng)原數(shù)據(jù)不為0,減1保存數(shù)據(jù),原數(shù)據(jù)為0則保持不變。程序流程圖如圖11所示。 圖11 外部中斷程序流程圖4.4 源程序匯編程序如下:SPEED EQU 10H ;SPEED為轉(zhuǎn)速等級(jí)標(biāo)志,共7級(jí),即17 FX EQU 11H ;FX為方向標(biāo)志 COUNT EQU 12H ;COUNT中斷次數(shù)標(biāo)志 ORG 0000H AJMP MAIN ORG 0003H ;外部中斷0入口地址,加速子程序 AJMP UP ORG 0013H ;外部中斷1入口地址,減速子程序 AJMP DOW

26、N ORG 000BH ;定時(shí)器0中斷入口地址,控制中斷次數(shù)來(lái)達(dá)到控制轉(zhuǎn)速 AJMP ZDT0 ORG 0030H MAIN: MOV SP,#60H MOV TMOD,#01H ;工作于定時(shí)、軟件置位啟動(dòng)!模式1(16位計(jì)時(shí)器) MOV TH0,#0CFH MOV TL0,#2CH MOV COUNT,#01H SETB ET0 ;定時(shí)/計(jì)數(shù)器允許中斷 CLR IT0 ;外部中斷為電平觸發(fā)方式,低電平有效 CLR IT1 SETB EX0 ;外部允許中斷 SETB EX1 SETB EA ;開(kāi)總中斷 MOV R1,#11H ; 四相單四拍運(yùn)行,共陽(yáng)數(shù)碼管方向顯示8,速度值顯示0 MOV SP

27、EED,#00H MOV FX,#00H XIANS: MOV A,SPEED MOV DPTR,#LED MOVC A,A+DPTR ;查表獲取等級(jí)對(duì)應(yīng)數(shù)碼管代碼 MOV P2,A ;第二個(gè)數(shù)碼管顯示轉(zhuǎn)速等級(jí) MOV A,FX ;準(zhǔn)備判斷轉(zhuǎn)向 CJNE A,#11H,ELS MOV P0, #0F9H ;第一個(gè)數(shù)碼管顯示1,表示正轉(zhuǎn) AJMP QD ELS: CJNE A,#00H,ZHENG MOV P0,#0C0H ;第一個(gè)數(shù)碼管顯示0,表示不轉(zhuǎn) AJMP QD ZHENG: MOV P0,#0BFH ;第一個(gè)數(shù)碼管顯示-,表示反轉(zhuǎn) QD: JB P3.4,DD ;P3.4接啟動(dòng)開(kāi)關(guān)K1

28、,P3.4=1時(shí)啟動(dòng) CLR TR0 ;停止定時(shí)/計(jì)數(shù)器 MOV P0,#0C0H ;第一個(gè)數(shù)碼管顯示0,表示不轉(zhuǎn) MOV P2,#0C0H ;第二個(gè)數(shù)碼管顯示0,表示轉(zhuǎn)速為0 MOV SPEED,#00H ;重新賦初值 MOV FX,#00H AJMP QD DD: MOV A,SPEED JNZ GO ;A不等于0,即初始速度不為零,則轉(zhuǎn)移到GO CLR TR0 ;停止定時(shí)/計(jì)數(shù)器 AJMP QD GO: SETB TR0 ;開(kāi)啟定時(shí)/計(jì)數(shù)器 ACALL DELAY AJMP XIANS DELAY: MOV R6,#10 ;延時(shí)子程序 DEL1: MOV R7,#250 HERE1: D

29、JNZ R7, HERE1 DJNZ R6,DEL1 RET ;以下ZDT0為定時(shí)器中斷程序 ZDT0: PUSH ACC PUSH DPH PUSH DPL MOV TH0,#0D8H MOV TL0,#0F0H DJNZ COUNT,EXIT JB P3.5,NIZHUAN ;查詢(xún)方向標(biāo)志,P3.5接換向開(kāi)關(guān)K2 MOV FX,#11H NIZHUAN:MOV A,FX CJNE A,#11H,FZ ;若A不等于11,即正轉(zhuǎn),則轉(zhuǎn)移到FZ MOV A,R1 ;R1記錄上一次電機(jī)脈沖狀態(tài) MOV P1,A RR A ;循環(huán)右一位 MOV R1,A MOV P1,A AJMP RE FZ: M

30、OV A,R1 MOV P1,A RL A ;循環(huán)左移一位 MOV P1,A MOV R1,A RE: MOV A,SPEED MOV DPTR,#TAB MOVC A,A+DPTR MOV COUNT,A ;把轉(zhuǎn)速級(jí)別賦給COUNT JB P3.5 ,FFX ; P3.5接換向開(kāi)關(guān)K2, 即換向位,若P3.5=1,則跳到FFXMOV FX,#11H AJMP EXIT FFX: MOV FX,#0FEH ;只要FX不等于11H,就可以通過(guò)循環(huán)左移或右移進(jìn)行換向 EXIT: POP DPL POP DPH POP ACC RETI ;以下UP為加速中斷程序 UP: PUSH ACC ACALL

31、 DELAY ;延時(shí)防抖動(dòng) JB P3.2,UPEX ;P3.2為外部中斷0位,接增速開(kāi)關(guān)S2,低電平有效,若P3.2=1,則退出 MOV A,SPEED CJNE A,#7,SZ ;最大等級(jí)為7,若A不等于7,則轉(zhuǎn)移到SZ AJMP UPEX ;若A=7,則退出 SZ: INC SPEED ;SPEED= SPEED+1 UPEX: POP ACC HERE2: JNB P3.2,HERE2 ;本條指令為防止開(kāi)關(guān)S2按下去后彈不起,導(dǎo)致一直產(chǎn)生中斷 RETI ;以下DOWN為減速中斷程序 DOWN: PUSH ACC ACALL DELAY JB P3.3,DEX ; P3.3為外部中斷1位

32、,接減速開(kāi)關(guān)S3,低電平有效,若P3.3=1,則退出 MOV A,SPEED CJNE A,#0,SJ AJMP DEX SJ: DEC SPEED ;SPEED= SPEED-1 DEX: POP ACC HERE3: JNB P3.3,HERE3 RETI TAB: DB 0,60,40,35,30,28,25,21 ;經(jīng)仿真,小于21時(shí),由于脈沖太快,會(huì)出現(xiàn)失步 ; 0 1 2 3 4 5 6 7 8 9 LED: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98H END 第五章 課程設(shè)計(jì)總結(jié)本設(shè)計(jì)通過(guò)分析步進(jìn)電機(jī)結(jié)構(gòu)、工作原理,查閱步進(jìn)電機(jī)控制系統(tǒng)的相關(guān)科技文獻(xiàn),遵循實(shí)用、簡(jiǎn)單、可靠和低成本的原則,設(shè)計(jì)了一種既可用于精度要求不高,但控制需完備的場(chǎng)合。對(duì)本次設(shè)計(jì),有以下結(jié)論: (1)采用單片機(jī)為控制核心,利用其強(qiáng)大的功能,把鍵盤(pán)和顯示電路有機(jī)的結(jié)合起來(lái),組成一個(gè)操作方便、交互性強(qiáng)的控制系統(tǒng)。而且整個(gè)系統(tǒng)所包含的技術(shù)幾乎包括了現(xiàn)本科學(xué)??刂茖?zhuān)業(yè)所要求的知識(shí),有利于實(shí)踐教學(xué)取得最大效果。 (2)鍵盤(pán)電路和顯示電路采用了動(dòng)態(tài)掃描技術(shù),節(jié)約了單片機(jī)資源。 (3)系統(tǒng)軟件采用結(jié)構(gòu)化設(shè)計(jì),具有易維護(hù)性,根據(jù)用戶(hù)新的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論