版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、2017屆電子信息工程專業(yè)本科畢業(yè)論文基于單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)設(shè)計 摘要:步進(jìn)電動機(jī)由于利用其組成的開環(huán)系統(tǒng)簡單、廉價、實用價值高的特點。因此在精度要求比較高的精密儀器以及各種控制裝置中有著極其廣泛的應(yīng)用如:噴繪機(jī)、刻字機(jī)、線切割、機(jī)器人等領(lǐng)域。本文介紹的是一種基于單片機(jī)的步進(jìn)電機(jī)的系統(tǒng)設(shè)計,用C語言編寫出電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、加速、減速、停止程序代碼,通過單片機(jī)、電機(jī)的驅(qū)動芯片ULN2003以及相應(yīng)的按鍵實現(xiàn)以上操作功能,步進(jìn)電機(jī)的工作狀態(tài)用相應(yīng)的LCD1602顯示。本文內(nèi)容介紹了步進(jìn)電機(jī)以及單片機(jī)原理、該系統(tǒng)的硬件電路、軟件程序。并對軟、硬件進(jìn)行調(diào)試,同時介紹了調(diào)試過程中出現(xiàn)的問題以及解決
2、問題的方法。該設(shè)計具有思路清晰、可靠性高、穩(wěn)定性強(qiáng)等特點,通過調(diào)試實現(xiàn)了上述功能。關(guān)鍵詞:步進(jìn)電機(jī) 脈寬調(diào)制 驅(qū)動機(jī)構(gòu) 單片機(jī)Abstract: Stepper motor due to the use of the open loop system consisting of a simple, cheap, and the characteristics of high practical value. So in accuracy requirement high precision instrument and various kinds of control device has t
3、he extremely widespread application, such as: spraying machine, carving machine, thread cutting, robot, etc. Is introduced in this paper a system based on single-chip stepper motor design, using C language to write the motor forward, reverse, acceleration, deceleration and stop the program code, thr
4、ough single chip, motor drive chip ULN2003 as well as the corresponding button to achieve the above operation function, the working state of the stepper motor with the corresponding LCD1602 display. Content of this article introduces the principle of step motor and single chip microcomputer, hardwar
5、e circuit and software program of the system. And the hardware and software debugging, and introduces the debugging process problems and the methods to solve the problem. This design has ideas clearly, high reliability, strong stability, etc, through debugging realized the function. Key Words: Stepp
6、er motor; Pulse-width modulated; driving mechanism; scm 1 緒論 1.1 引言在眾多的執(zhí)行元件中,步進(jìn)電機(jī)是機(jī)電設(shè)備不可缺少的元件。步進(jìn)電機(jī)是一種微型電機(jī),它的工作原理是利用電子電路,將直流電變成分時供電的,多相時序控制電流。用此電流供電,電機(jī)才能正常運轉(zhuǎn),而它的具體工作過程是將電脈沖信號轉(zhuǎn)換成相應(yīng)的角位移或者是線位移來達(dá)到轉(zhuǎn)動的目的。在數(shù)控系統(tǒng)、自動生產(chǎn)線、自動化儀表中應(yīng)用電機(jī)實現(xiàn)其調(diào)速、快速起停、正反轉(zhuǎn)控制的功能已普遍存在,它最突出的優(yōu)點是能在寬頻率中改變脈沖頻率對步進(jìn)電機(jī)實施控制。并且組成的開環(huán)系統(tǒng)利于人們控制,操作簡便。微電子和計
7、算機(jī)技術(shù)的日益成熟,使步進(jìn)電機(jī)在工業(yè)電子自動化、印刷設(shè)備、機(jī)器人和智能醫(yī)療設(shè)備中的需求量不斷提高,對于研制出具有高精確度、實時監(jiān)控、數(shù)字顯示的步進(jìn)電機(jī)及其驅(qū)動控制系統(tǒng)有著很大的實用意義。這次設(shè)計選用28BYJ-48型號四相步進(jìn)電機(jī),它有三種工作模式,利用其單雙相工作模式進(jìn)行工作,使其提高步進(jìn)的精度。整個控制系設(shè)計組成有:電機(jī)驅(qū)動電路的設(shè)計、液晶顯示和按鍵部分設(shè)計三大模塊。 1.2課題研究的目的和意義本文選用28BYJ48型五線四相步進(jìn)電機(jī),采用單雙相工作模式。采用單片機(jī)控制脈沖數(shù)使其步進(jìn)電機(jī)完成驅(qū)動,實現(xiàn)一系列指定工作要求。因為步進(jìn)電機(jī)旋轉(zhuǎn)是以固定的角度一步一步轉(zhuǎn)動的,所以研究其工作原理和工作
8、模式有著很大的實用意義。通過單片機(jī)的控制,讓步進(jìn)驅(qū)動器接收脈沖信號,驅(qū)動步進(jìn)電機(jī)按預(yù)設(shè)定的方向,轉(zhuǎn)動一個固定的角度,實現(xiàn)其指定功能。在掃描儀、打印機(jī)、DVD-ROM驅(qū)動器的應(yīng)用中尤為頻繁。研究步進(jìn)電機(jī)可以從研究單片機(jī)脈沖的控制開始入手,通過控制脈沖個數(shù)來控制步進(jìn)電機(jī)的角位移量達(dá)到控制的目的。在實際工作過程中可以用作準(zhǔn)確定位。通過設(shè)計硬件電路和程序編寫,利用其上述步進(jìn)電機(jī)的優(yōu)點來作為設(shè)計目的,研究完成電機(jī)的工作模式和功能調(diào)試。2 系統(tǒng)硬件電路的設(shè)計 2.1 步進(jìn)電機(jī)介紹 2.1.1 步進(jìn)電機(jī)概述步進(jìn)電機(jī)作為本系統(tǒng)的主要組成部件。它在不超載的狀況下,其運行的轉(zhuǎn)速、停止方位只由脈沖信號的頻率和脈沖個
9、數(shù)所決定,且不受負(fù)載變化而變化。它的積累誤差幾乎沒有,要驅(qū)動步進(jìn)電機(jī)轉(zhuǎn)動時,只需按照一個脈沖信號驅(qū)動電機(jī)轉(zhuǎn)過一個步距角的方法即可實現(xiàn)運轉(zhuǎn)。這種特有的線性關(guān)系,讓步進(jìn)電機(jī)在速度和定位相關(guān)的行業(yè)中,變得非常易于控制。不同的步進(jìn)電機(jī)又因為廠家設(shè)置的電機(jī)參數(shù)不同,性能也迥異,因此選擇一個合適步進(jìn)電機(jī),了解其性能指標(biāo)參數(shù)尤為重要,這決定了步進(jìn)電機(jī)的應(yīng)用場合。輸入信號的時候,通過步進(jìn)電動機(jī)對數(shù)字量能直接接收的特點,使其免去了大量繁瑣的模擬量轉(zhuǎn)換成數(shù)字量的工作,利用單片機(jī)簡單的程序代碼即可讓其實現(xiàn)轉(zhuǎn)動,因此非常適合用于微機(jī)控制。這次設(shè)計采用帶減速比步距角為5.625/64度的四相永磁式步進(jìn)電機(jī)。 步進(jìn)電機(jī)的
10、主要參數(shù)有如下: 1、相數(shù):在不同磁力作用下N、S磁場的激磁線圈對數(shù)。一般用符號m表示。2、 拍數(shù):是指電機(jī)轉(zhuǎn)過一個齒距角完成磁場周期變化所需要的脈沖數(shù),常用n表示。以四相四拍運行方式為例:即BC-CD-DA-AB-BC;四相八拍運行方式即 B-BC-C-CD-D-DA-A-AB-B.3、 步距角:輸入一個脈沖信號,步進(jìn)電機(jī)所轉(zhuǎn)過的機(jī)械位移(角位移)。轉(zhuǎn)子轉(zhuǎn)過的機(jī)械位移用表示。=360度/(轉(zhuǎn)子齒數(shù)*運行拍數(shù)),以現(xiàn)在應(yīng)用普遍的二、四相,轉(zhuǎn)子齒輪數(shù)為50齒的步進(jìn)電機(jī)作計算說明。四拍運行時步距角等于1.8度,八拍運行時步距角等于0.9度。通過計算:八拍運行時,不帶減速齒輪情況下,步進(jìn)電機(jī)轉(zhuǎn)動一圈
11、需要走400步。4、 步距角精度:即電機(jī)實際轉(zhuǎn)過的步距角和理論上計算的步距角之間的誤差范圍。四拍和八拍運行時,誤差范圍分別應(yīng)該在為5%和15%以下。5、電機(jī)正反轉(zhuǎn)控制:電機(jī)的正反轉(zhuǎn)與電機(jī)內(nèi)部繞組密切相關(guān),通過相與相之間的通電順序不同,轉(zhuǎn)子產(chǎn)生的旋轉(zhuǎn)方向便發(fā)生變化如:通電相序為B-BC-C-CD-D-DA-A-AB時則正轉(zhuǎn),通電相序為AB-A-DA-D-CD-C-BC-B時則反轉(zhuǎn)。2.1.2 步進(jìn)電機(jī)的工作原理步進(jìn)電機(jī)轉(zhuǎn)動的工作原理是將脈沖電信號變換為相應(yīng)的角位移或是直線位移,當(dāng)電流流過定子繞組時,定子繞組生成一個磁場。此磁場會使轉(zhuǎn)子轉(zhuǎn)過一個角度。給輸入一個電脈沖信號進(jìn)入電機(jī),電機(jī)就轉(zhuǎn)動一個角度
12、。而輸入信號的脈沖數(shù)與步進(jìn)電機(jī)的角位移量成正比,輸入信號脈沖頻率高低又與電機(jī)轉(zhuǎn)速成正比,因此只要改變繞組相通電的順序,電機(jī)就會正反轉(zhuǎn)動。所以可用控制脈沖的數(shù)量、頻率高低、相繞組通電順序的這些方法,來控制電機(jī)的轉(zhuǎn)動。如下圖所示28BYJ48五線四相步進(jìn)電機(jī)工作原理圖,采用單極性直流電源供電方式。通過對相繞組通電順序的改變,使產(chǎn)生的磁場發(fā)生變化,磁力之間相互要達(dá)到平衡狀態(tài)。使步進(jìn)電機(jī)完成在不同拍數(shù)之間工作模式的轉(zhuǎn)動。圖21是該步進(jìn)電機(jī)工作原理示意圖。圖2-1 四相步進(jìn)電機(jī)步進(jìn)示意圖單四拍工作時,開關(guān)SB合上時,其余三個開關(guān)斷開。B相磁極和轉(zhuǎn)子0、3號齒對齊,同時轉(zhuǎn)子的1、4號齒就和C、D
13、相繞組磁極錯開,直至相互之間的磁拉力達(dá)到平衡;2、5號齒就和D、A相繞組磁極在磁拉力作用下錯開,最后轉(zhuǎn)子受力平衡不再轉(zhuǎn)動。當(dāng)開關(guān)SC合上時,其余三個開關(guān)斷開。因為C相繞組產(chǎn)生的磁力線和1、4號齒之間磁力線的相互作用,所以轉(zhuǎn)子因此而轉(zhuǎn)動。磁力達(dá)到平衡后1、4號齒和C相繞組的磁極就隨之對齊了。在磁拉力作用下0、3號齒和A、B相繞組開始錯開;而在此時,2、5號齒就與A、D相繞組磁極錯開,相應(yīng)的磁拉力達(dá)到平衡。按照上述方法依次類推出A、B、C、D相的通電順序,則電機(jī)按照四個相數(shù)通電順序依次轉(zhuǎn)動。1相勵磁方式(單相)、2相勵磁方式(雙相)與1-2相勵磁方式(單雙相)工作時的電源通電時序波形圖分別如圖2-
14、2所示:圖2-2 步進(jìn)電機(jī)工作時序波形圖2.1.3 步進(jìn)電機(jī)的分類與選擇步進(jìn)電機(jī)的種類劃分可分為三種:反應(yīng)式步進(jìn)電機(jī)、永磁式步進(jìn)電機(jī)、混合式步進(jìn)電機(jī);作為特種電機(jī)來說,它們的應(yīng)用各有如下優(yōu)缺點:反應(yīng)式步進(jìn)電機(jī),一般為三相。步距角可以設(shè)計得很小,一般為1.5度。此類電機(jī)可實現(xiàn)大轉(zhuǎn)矩輸出,但其缺點是動態(tài)性能相對較差,噪聲和振動很大;80年代在歐美發(fā)達(dá)國家中已被淘汰。永磁式步進(jìn)電機(jī),一般為兩相。其優(yōu)點是轉(zhuǎn)矩出力大,動態(tài)性能好,轉(zhuǎn)矩和體積較小。通常步進(jìn)角為7.5度 或者為15度?;旌鲜讲竭M(jìn)電機(jī)則融合了永磁式和反應(yīng)式兩者的優(yōu)點??煞譃閮上嗪臀逑鄡煞N,且它們的步進(jìn)角分別為1.8度和 0.72度。這種在工業(yè)
15、制造中的混合式步進(jìn)電機(jī)應(yīng)用甚廣,不僅步距角小,輸出力矩大,而且動態(tài)性能也很好。在智能設(shè)備以及精確度要求高的工藝加工中多用此類型步進(jìn)電機(jī)。本設(shè)計中步進(jìn)電機(jī)采用市場最常見的小型號28BJY48步進(jìn)電機(jī),此電機(jī)為四相八拍步進(jìn)電機(jī),工作電壓為5V。此步進(jìn)電機(jī)具有體積小、價格便宜等優(yōu)點。對于初步入門學(xué)習(xí)步進(jìn)電機(jī)者來說,最為合適。28BJY48步進(jìn)電機(jī)具參數(shù)如圖表1-1所示。表1-1 28BJY48步進(jìn)電機(jī)參數(shù)電機(jī)型號電壓V相數(shù)相電阻±10%步距角度減速比起動轉(zhuǎn)矩100P.P.Sg.cm起動頻率P.P.S定位轉(zhuǎn)矩g.cm28BYJ-48543005.625/641:6430055030028BJ
16、Y48步進(jìn)電機(jī)以單雙八拍為工作模式,其繞組通電時序為A-AB-B-BC-C-CD-D-DA,其步距角是最小步距角的16倍。通過單片機(jī)的P1口把電機(jī)的A相、B相、C相及D相的真值表轉(zhuǎn)換成單片機(jī)能識別的十六進(jìn)制,并通過脈沖控制P1口不同相序通電后步進(jìn)電機(jī)的轉(zhuǎn)動。步進(jìn)電機(jī)真值表如表1-2所示。表1-2 步進(jìn)電機(jī)單雙八拍旋轉(zhuǎn)相序真值表 橙(A) 黃(B)粉(C)藍(lán)(D)十六制(P1口)10000x0811000x0c01000x0401100x0600100x0200110x0300010x0110010x09 2.2 步進(jìn)電機(jī)驅(qū)動系統(tǒng)介紹 2.2.1 步進(jìn)電機(jī)驅(qū)動系統(tǒng)簡介步進(jìn)電機(jī)
17、工作時,不像直流電機(jī)那樣直接通入交流電便可開始工作,需要專用設(shè)備進(jìn)行驅(qū)動工作。其中步進(jìn)電機(jī)驅(qū)動系統(tǒng)由選擇也至關(guān)重要,性能不同的驅(qū)動系統(tǒng)的共同點是其組成部分大致都一樣,都由步進(jìn)電機(jī)控制器、步進(jìn)電機(jī)驅(qū)動器和步進(jìn)電機(jī)三部分所組成。步進(jìn)電機(jī)驅(qū)動系統(tǒng)的性能與很多因素有關(guān)如:驅(qū)動器自身性能優(yōu)劣,以及驅(qū)動的電機(jī)和設(shè)計得驅(qū)動電路好壞等。而其工作過程是由步進(jìn)電機(jī)控制器發(fā)出步進(jìn)脈沖和方向信號來完成的。每發(fā)出一個電脈沖,驅(qū)動器則驅(qū)動步進(jìn)電機(jī)轉(zhuǎn)子轉(zhuǎn)過一個步距角,并依次按照發(fā)送電脈沖的順序和個數(shù)讓步進(jìn)電機(jī)做出相應(yīng)的轉(zhuǎn)動。步進(jìn)電機(jī)驅(qū)動器只要接收到來自單片機(jī)控制器的方向信號和步進(jìn)脈沖后,控制電路就按已經(jīng)設(shè)定好的相序通電方式
18、,讓相繞組通電或斷電。通常,+5V供電的單片機(jī)控制輸出信號功率一般都不高,不能提供步進(jìn)電機(jī)所需的輸出功率,在運用設(shè)計電路知識時,應(yīng)添加功率放大電路,此設(shè)計所用功率放大芯片為UNL2003。2.2.2 步進(jìn)電機(jī)繞組的電氣特性步進(jìn)電機(jī)各相繞組由銅線圈纏繞而成,涉及線圈那么可由電阻和電感特性分析電機(jī)相繞組,通過其分析電阻電感組成的電路,來分析電機(jī)工作時受影響的參數(shù)。當(dāng)繞組通電時,由于電感會削弱電流,限制繞組電流上升的速率,因此能導(dǎo)致電機(jī)繞組電流大小發(fā)生變化。而繞組線圈電阻的存在又會使電機(jī)溫度升高、電能白白損耗,最終影響其電機(jī)工作的工作狀態(tài)。因此分析這些影響電機(jī)工作的因素尤為重要。圖2-3 電感-電阻
19、串聯(lián)電路及其電流波形圖2-3為電感一電阻串聯(lián)電路,由電機(jī)相繞組等效而來。當(dāng) t=0時刻時,直流電壓源V施加到該電路上,電路電流變化規(guī)律可由以下公式推導(dǎo): I(t)=V(1-e-Rt/L)/R通電瞬間繞組電流上升速率為:di(0)/dt=V/t如圖可知,當(dāng)電流達(dá)到最大值時為: Imax=V/R由上圖可知,當(dāng)電路中的電流達(dá)到最大電流Imax的63%時,所需要用的時間是由L/R定義的時間常數(shù)決定的。在 t=t1時刻,曲線到達(dá)最高點轉(zhuǎn)而開始下降,電流開始以初始速率一V/L下降,直至逐漸下降為零。而此時刻反映在電路中的現(xiàn)象為:電路斷開與直流電壓源V接通,并使之短路。其電流變的化規(guī)律如下公式推導(dǎo):I(t)
20、=Ve-R(t-t1)/L/R如圖2-4所示,在施加不同頻率的電壓矩形波之后,電流波形圖中電流的大小變化。(a)片段所顯示的是低頻時運行時,步進(jìn)電機(jī)電流能達(dá)到最大值;當(dāng)矩形波頻率上升達(dá)到某一臨界頻率。(b)片段所顯示的是步進(jìn)電機(jī)電流上升到最大值后立馬變化隨之下降;(c)片段所顯示的是矩形波頻率超過此臨界頻率值之后,步進(jìn)電機(jī)繞組中的電流上升不到最大值 。因為步進(jìn)電機(jī)轉(zhuǎn)矩的大小與繞組的電流成正比,所以在臨界頻率上下運行時,電機(jī)轉(zhuǎn)動的情況也不同。低速運行電機(jī)能達(dá)到其額定轉(zhuǎn)矩,在高于臨界頻率運行時,繞組電流隨著頻率的升高隨之下降;電機(jī)轉(zhuǎn)矩漸漸變小,高速運轉(zhuǎn)時的負(fù)載能力也隨之漸漸下降。圖2-4 不同頻率
21、脈沖作用下電感-電阻電路的電流波形2.3 單片機(jī)原理2.3.1單片機(jī)原理概述單片機(jī)(single-chip microcomputer)是把微型計算機(jī)CPU、存儲器、I/O口等核心工作部件都集成在一起的單芯片微型計算機(jī)。圖2-5中所示單片機(jī)結(jié)構(gòu)圖。由于單片機(jī)內(nèi)部高度集成化,對于結(jié)構(gòu)配置進(jìn)行了很大的改善,使得系統(tǒng)內(nèi)的信號傳送距離變短,提高了工作時的運行和讀取速度,對于工業(yè)要求任務(wù)能夠很好的勝任。因此,單片機(jī)在智能家居、機(jī)器人、線切割等領(lǐng)域應(yīng)用廣泛。圖2-5典型單片機(jī)結(jié)構(gòu)圖2.3.2單片機(jī)的應(yīng)用系統(tǒng)人們在對單片機(jī)在進(jìn)行控制和數(shù)據(jù)處理時,在怎樣讓單片機(jī)完成指定功能的過程中,實行人機(jī)對話交流,了解系統(tǒng)
22、的工作情況至關(guān)重要。單片機(jī)CPU雖然在高度集成后擁有許多優(yōu)點,但由于單片機(jī)自身芯片結(jié)構(gòu)、引腳數(shù)目的限制,內(nèi)存和I/O口都相對較少。在實際應(yīng)用時,單片機(jī)為了適應(yīng)某些極端環(huán)境下工作,應(yīng)該根據(jù)不同功能要求,加擴(kuò)展口實現(xiàn)更多特定的系統(tǒng)功能。單片機(jī)元件結(jié)構(gòu)如圖2-6所示。圖2-6 單片機(jī)的應(yīng)用系統(tǒng) 通過運用單片機(jī)最小應(yīng)用系統(tǒng),加入相應(yīng)的外圍電路和電機(jī)驅(qū)動系統(tǒng)電路,構(gòu)成本設(shè)計的內(nèi)容。由于最小系統(tǒng)成本低、結(jié)構(gòu)簡單,對于一些模擬開關(guān)量的輸入/輸出控制、A/D和D/A轉(zhuǎn)換控制和并行和串行口控制來說,配用最小應(yīng)用系統(tǒng)還是能夠完成的。而對于最小應(yīng)用系統(tǒng)有片內(nèi)ROM/EPROM的芯片來說,電路一般由晶體振蕩器、復(fù)位電
23、路和電源所組成;片內(nèi)無ROM/EPROM芯片,則最小應(yīng)用系統(tǒng)應(yīng)該配置上述的晶振、復(fù)位電路、電源以及外部程序存儲器。2.3.3 AT89C52簡介AT89C52的主要參數(shù)如表2-1所示:表2-1 AT89C52的主要參數(shù)型號存儲器定時器I/0串行口中斷速度(MH)其它特點E²PROMROMRAM89C524K5123321535低功耗AT89C52是一種帶8K字節(jié)可反復(fù)擦寫的只讀存儲器。有著低功耗,性能強(qiáng)的CMOS8位微處理器。該器件的指令系統(tǒng)與其它單片機(jī)相兼容,由ATMEL公司生產(chǎn)技術(shù)生產(chǎn),在電子行業(yè)應(yīng)用甚廣。其功能引腳如圖2-7所示。圖2-7 單片機(jī)的引腳排列1、主要特性:
24、3;與MCS-51 兼容·具有8K在系統(tǒng)可編程Flash存儲器·工作平率范圍:0Hz-40Hz·工作電壓:5.5V3.3V·用戶應(yīng)用程序空間為8K字節(jié)·片上集成512字節(jié)RAM·32可編程I/O線·16位定時器/計數(shù)器3個。即定時器T0、T1、T2·8個中斷源·看門狗和EEPROM功能·低功耗的空閑和掉電模式:典型功耗2mA·片內(nèi)振蕩器和時鐘電路2、管腳說明: VCC:電源電壓。 GND:接地。
25、0; P0端口:P0口作為8位開路雙向I/O口,每個引腳能驅(qū)動8個TTL負(fù)載,對端口P0寫入“1”時,可以作為高阻抗輸入。在訪問外部程序和FIASH編程時,P0口也可以提供低8位地址和8位數(shù)據(jù)的復(fù)用總線,P0 端口則接收指令字節(jié)。當(dāng)FIASH進(jìn)行校驗時,P0輸出指令字節(jié),P0外部電路則要接上拉電阻。 P1端口:P1口是8位雙向I/O口,需要提供上拉電阻。當(dāng)P1口被寫入1后,其管腳被內(nèi)部上拉到高電位,可用作輸入口。而在外部電路中被下拉為低電平時,將輸出電流,因為內(nèi)部上拉的作用導(dǎo)致。 P2端口:
26、P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,當(dāng)P2口被寫1時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入口。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進(jìn)行存取時,P2口輸出高8位地址;在訪問8位地址的外部數(shù)據(jù)存儲器時,P2口引腳上的內(nèi)容,在訪問期間內(nèi)不會發(fā)生改變。 P3端口:內(nèi)部自帶8個上拉電阻的雙向I/O口??山邮沼糜贔lash閃速存儲器編程和程序校驗的控制信號,P3口輸出緩沖器可吸收4個TTL邏輯門電路。 P3端口除了有內(nèi)部常用的功能外,還可為AT89C52提供一些特殊功能口,如下所示: P3口管腳復(fù)用功能 P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口) P3.
27、2 /INT0(外部中斷0) P3.3 /INT1(外部中斷1) P3.4 T0(記時器0外部輸入) P3.5 T1(記時器1外部輸入) P3.6 /WR(外部數(shù)據(jù)存儲器寫選通) P3.7 /RD(外部數(shù)據(jù)存儲器讀選通) RST:復(fù)位接口。外接復(fù)位電路,復(fù)位默認(rèn)高電平有效。 XTAL1:構(gòu)成單片機(jī)內(nèi)部時鐘工作電路的輸入端。 XTAL2:來自反向振蕩器的輸入端。3、I/O口引腳:a:P0口,雙向8位三態(tài)I/O口,此口為地址總線(低8位)復(fù)用;b:P1口,8位準(zhǔn)雙向I/O口;c:P2口,8位準(zhǔn)雙向I/O口,與地址總線(高8位)復(fù)用;d:P3口,8位準(zhǔn)雙向
28、I/O口,雙功能復(fù)用。3系統(tǒng)整體硬件結(jié)構(gòu) 3.1 系統(tǒng)整圖系統(tǒng)整圖如圖3-1所示,本系統(tǒng)采用外部中斷方式,p0口作為液晶顯示部分,p1口為電機(jī)的驅(qū)動部分,p3口作為信號的輸入部分。圖3-1 系統(tǒng)整圖 3.2 時鐘部分時鐘電路是微計算機(jī)的核心,它控制著單片機(jī)CPU工作時的運行速度和性能。通常想讓CPU的運行速度提高,可以選擇提高時鐘的頻率,本次設(shè)計采用12MHz的晶振頻率。如圖3-6。圖3-6 時鐘部分電路3.3 電源部分 利用電池盒或者電源頭讓步進(jìn)電機(jī)得到5V的電壓。如圖3-2所示。圖3-2 5V電路部分3.3 按鍵部分按鍵設(shè)計部分用單片機(jī)的P3口來作控制信號的輸入端,并用按鍵開關(guān)和P3口依次
29、連接,用以下按鍵來控制功能。當(dāng)要使電機(jī)正轉(zhuǎn)時按下S1,P3.0口變?yōu)榈碗娖?要使電機(jī)反轉(zhuǎn)時按下S2,P3.1口變?yōu)榈碗娖?停止時按下S3,P3.2口變?yōu)榈碗娖?電機(jī)停止。加速時按下S4,P3.3口變?yōu)榈碗娖?電機(jī)加速;減速時按下S5,P3.4口變?yōu)榈碗娖?電機(jī)減速。如圖3-3。圖3-3 按鍵部分電路 3.4 驅(qū)動部分下圖是步進(jìn)電機(jī)的驅(qū)動電路,驅(qū)動芯片選用ULN2003來完成驅(qū)動的。通過ULN2003驅(qū)動芯片具有高耐壓,能輸出大電流的特點,彌補(bǔ)了單片機(jī)自身對電機(jī)提供控制信號的不足,加上ULN2003芯片其內(nèi)部結(jié)構(gòu)由7個硅NPN達(dá)林頓管組成,可以在5V的工作電壓下與CMOS電路和TTL直接相連,處
30、理數(shù)據(jù)。因此選擇此款驅(qū)動芯片。如圖3-4。圖3-4 驅(qū)動部分電路 3.5 狀態(tài)指示部分用LCD1602液晶顯示屏電機(jī)狀態(tài),其顯示內(nèi)容包括步進(jìn)電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、停止、轉(zhuǎn)速信息。利用顯示設(shè)備LCD1602液晶顯示,既能清楚方便的了解步進(jìn)電機(jī)工作所處的狀態(tài),又能達(dá)到控制目的。如圖3-5。 圖3-5 狀態(tài)顯示部分電路4 系統(tǒng)軟件設(shè)計 4.1 系統(tǒng)開發(fā)軟硬件環(huán)境現(xiàn)在眾多的微型計算機(jī)中,在與51單片機(jī)相比之下,以不斷創(chuàng)新52型STC系列的單片機(jī)為內(nèi)核的出現(xiàn),完善了一些51單片機(jī)的不足之處。國外單片機(jī)公司如:ATMEL、TI、ARM公司推出了52單片機(jī)的開發(fā)環(huán)境以適應(yīng)其市場的需求。本次畢業(yè)設(shè)計選用微機(jī)芯片為
31、STC系列的AT89C52單片機(jī)。 4.2 系統(tǒng)主程序步進(jìn)電機(jī)控制系統(tǒng)由五部分組成如:電機(jī)正轉(zhuǎn)、電機(jī)反轉(zhuǎn)、電機(jī)加速與電機(jī)減速、電機(jī)停止。其主程序運行框圖如圖4-1所示。開始顯示函數(shù)進(jìn)入大循環(huán)LCD初始化定時器初始化模式切換按鍵掃描state=0正反轉(zhuǎn)標(biāo)記置零正轉(zhuǎn)鍵是否按下停止鍵是否按下減速鍵是否按下加速鍵是否按下反轉(zhuǎn)鍵是否按下State=1調(diào)用正轉(zhuǎn)驅(qū)動電機(jī)正轉(zhuǎn)State=1調(diào)用反轉(zhuǎn)驅(qū)動電機(jī)反轉(zhuǎn)State=1則改變speed值調(diào)節(jié)速度State=1則改變speed值調(diào)節(jié)速度ENDNYYYYY圖4-1 主程序框圖 程序開始執(zhí)行,開始各I/O口的初始化,各功能按鍵的定義,分配單片機(jī)的各口位,然后LC
32、D1602液晶屏顯示。再看各功能鍵盤是否被按下,如果有功能按鍵被按下,步進(jìn)電機(jī)做出相應(yīng)的正轉(zhuǎn)、反轉(zhuǎn)、加速、減速和停止;并通過液晶屏顯示步進(jìn)電機(jī)的工作狀態(tài),一直循環(huán)。 4.3 按鍵部分按鍵程序用于判斷P3.0口與P3.1口的值,當(dāng)p3.1口為低電平時,電機(jī)開始正轉(zhuǎn),當(dāng)p3.1口為高電平時,繼續(xù)判斷p3.0口的值,如果此時p3.0口為低電平,則電機(jī)開始反轉(zhuǎn)。當(dāng)p3.2口為低電平,電機(jī)停止;當(dāng)p3.3為低電平,電機(jī)開始加速,繼續(xù)判斷p3.4口的值,如果此時p3.4口值為低電平,則電機(jī)開始減速。如圖4-2所示。調(diào)按鍵子程序P3.1是否為0反轉(zhuǎn)正轉(zhuǎn)P3.2是否為0P3.4是否為0P3.3是否為0 減速加
33、速停止P3.0是否為0YYNNYY圖4-2 按鍵部分流程圖 4.4 正轉(zhuǎn)部分系統(tǒng)初始化之后,通過掃描正轉(zhuǎn)按鍵是否按下,來通過正轉(zhuǎn)子程序給P1口送不同的十六進(jìn)制值,根據(jù)電機(jī)相序通電的方法,使電機(jī)按預(yù)設(shè)相序依次轉(zhuǎn)動。P1口的電機(jī)相序值分別為03H,02H,06H,04H,0CH,08H,09H,01H。流程圖如圖4-3所示。正轉(zhuǎn)按鍵是否下(p3.1)開始按鍵掃描State=1調(diào)用正轉(zhuǎn)子程序ENDN YY 圖4-3 正轉(zhuǎn)部分流程圖 4.5 反轉(zhuǎn)部分電機(jī)反轉(zhuǎn)原理與正轉(zhuǎn)相似,此時P1口的值分別為01H,09H,08H,0CH,04H,06H,02H,03H。流程圖如圖4-4所示。開始按鍵掃描反轉(zhuǎn)按鍵是否
34、按下(p3.0=0?)State=1調(diào)用反轉(zhuǎn)子程序ENDNY圖4-4 反轉(zhuǎn)部分流程圖 4.6 加速部分通過按鍵掃描程序判斷電機(jī)是否正轉(zhuǎn)或反轉(zhuǎn)。如果按下加速鍵,則p3.3口為低電平,調(diào)取加速子程序。其加速工作原理是延長電機(jī)每轉(zhuǎn)動一步的時間,讓其轉(zhuǎn)子轉(zhuǎn)動的速度變快,電機(jī)相應(yīng)加速。在p3.3口為低電平時,電機(jī)轉(zhuǎn)速speed值增加。流程圖如圖4-5所示。YN開始按鍵掃描加速鍵是否被按下(p3.3=0?)State=1改變speed值調(diào)用加速子程序END 圖4-5 加速部分流程圖 4.7 減速部分通過按鍵掃描程序判斷電機(jī)是否正轉(zhuǎn)或反轉(zhuǎn)。如果按下減速鍵,則p3.4為低電平即可調(diào)取加速子程序。其減速工作原理
35、是延長電機(jī)每轉(zhuǎn)動一步的時間,讓其轉(zhuǎn)子轉(zhuǎn)動的速度變慢,電機(jī)相應(yīng)減速。在p3.4為低電平時,電機(jī)轉(zhuǎn)速speed值減少。流程圖如圖4-6所示。 YN按鍵掃描減速鍵是否被按下(p3.4=0?)State=1改變speed值調(diào)用減速子程序END開始圖4-6 減速部分流程圖5 系統(tǒng)的調(diào)試與檢測 5.1程序編譯時的錯誤與解決方法將編寫好的正反轉(zhuǎn)程序、停止程序、顯示等程序整理打包后,進(jìn)行編譯。用Keil編程軟件編譯檢查語法漏洞和錯誤,去除語法錯誤之后,檢查電路查看邏輯錯誤有無。程序修改好以后,直至編譯器界面的編譯結(jié)果窗口顯示編譯0錯誤,0警告為止。接著燒錄程序進(jìn)入單片機(jī)電路板,接通電源開始仿真。觀察步進(jìn)電機(jī)能
36、否正常轉(zhuǎn)動,顯示是否正常。 5.2 步進(jìn)電機(jī)轉(zhuǎn)動異常及解決方法最初步進(jìn)電機(jī)不能正常轉(zhuǎn)動,懷疑其工作原理是否弄錯,有無電路焊接錯誤。為了解決問題,防止電路出現(xiàn)虛焊、漏焊,使用萬用表表筆測試,結(jié)果無導(dǎo)通斷開等問題。繼續(xù)查閱資料得出結(jié)果:步進(jìn)電機(jī)要實現(xiàn)正常正反轉(zhuǎn),首要問題是轉(zhuǎn)子該如何通電,通電繞組相的次序應(yīng)該誰先誰后,其工作模式選用是否又存在錯誤呢?通過查閱網(wǎng)上步進(jìn)電機(jī)相應(yīng)數(shù)據(jù)資料,終于搞清了電機(jī)的四個相序和相序通電時的工作模式。其接線順序分別是A相(橙),B相(黃),E(紅),C相(粉),D相(藍(lán)),其中ABCD為電機(jī)四個相,E為電源+5V接線。把電路板排針和單片機(jī)引腳連線重新整理焊接后,繼續(xù)通上
37、電源觀察電機(jī)轉(zhuǎn)動情況,結(jié)果電機(jī)轉(zhuǎn)動顯示正常。 5.3 結(jié)論與展望利用本次畢業(yè)設(shè)計對步進(jìn)電機(jī)各項功能及其工作原理的研究,讓我對代碼的書寫和設(shè)計硬件電路有了更深刻的認(rèn)識和理解,并且熟悉了ULN2004電機(jī)驅(qū)動芯片、LCD1602液晶顯示屏的使用和步進(jìn)電機(jī)的工作原理。本次畢業(yè)設(shè)計讓我對單片機(jī)的工作原理、各引腳功能、以及定時器和中斷的應(yīng)用都有了更深刻的認(rèn)識。并且,自己能夠以單片機(jī)為基礎(chǔ)元件設(shè)計一個簡單的工作系統(tǒng)。在現(xiàn)科技發(fā)展中,日漸成熟的智能家居以及機(jī)器人應(yīng)用領(lǐng)域,步進(jìn)電機(jī)將有著更為廣泛的發(fā)展空間。參考文獻(xiàn)1李夙.異步電動機(jī)直接轉(zhuǎn)矩控制M.北京:機(jī)械工業(yè)出版社,1998.2張友德.單片微型機(jī)原理、應(yīng)用
38、與實驗M.上海:復(fù)旦大學(xué)出版社,2005.3江一,朱凌,申仲濤.異步電動機(jī)直接轉(zhuǎn)矩控制仿真研究J.華北電力大學(xué)學(xué)報,2003.4袁任光,張偉武.電動機(jī)控制電路選用與258實例M.北京:機(jī)械工業(yè)出版社,2005.5房玉明,杭柏林.基于單片機(jī)的步進(jìn)電機(jī)開環(huán)控制系統(tǒng)J.電機(jī)與控制應(yīng)用,2006.6孫笑輝,韓曾晉.減少感應(yīng)電動機(jī)直接轉(zhuǎn)矩控制系統(tǒng)轉(zhuǎn)矩脈動的方法J.電氣傳動,2001.7王鴻鈺.步進(jìn)電機(jī)控制入門M.上海:同濟(jì)大學(xué)出版社,1990.8韓利虎. 淺談步進(jìn)電機(jī)的基本原理J. 內(nèi)蒙古石油化工, Inner Mongolia Petrochemical Industry, 2007.9喬璐.,景林,
39、韓英桃.一種實用的步進(jìn)電動機(jī)驅(qū)動器設(shè)計J.微特電機(jī),2005.10 張巍. 淺談單片機(jī)控制步進(jìn)電機(jī)J. 安防科技,2006.致 謝首先誠摯的感謝我的論文指導(dǎo)老師鄧凌云老師,從論文的寫作、修改到最后定稿過程中,自始至終都傾注著老師的心血。特別是她多次詢問寫作進(jìn)程,并為我指點迷津,不斷與我交流,幫助我開拓思路。老師以嚴(yán)謹(jǐn)?shù)闹螌W(xué)之道、寬厚仁慈的胸懷、積極樂觀的生活態(tài)度,兢兢業(yè)業(yè)的工作作風(fēng)和大膽創(chuàng)新的進(jìn)取精神為我樹立了學(xué)習(xí)的典范,她的教誨與鞭策將激勵我在學(xué)習(xí)和生活的道路上勵精圖治,開拓創(chuàng)新并不斷進(jìn)取。為我在以后的工作領(lǐng)域中提供了一系列堅實的專業(yè)基礎(chǔ)。她淵博的知識、開闊的視野和敏銳的思維給了我深深的啟迪
40、。我以最誠摯的心意感謝鄧凌云老師。在畢業(yè)設(shè)計期間,我要感謝許多讓我分享他們寶貴經(jīng)驗和知識的老師,教會我正確的思考問題的方式。同時也要感謝在論文寫作過程中,幫助過我、并且共同奮斗四年的大學(xué)同學(xué)們。能夠順利完成論文,離不開他們的幫助,在此表示最深的謝意。附錄A :系統(tǒng)總電路圖圖A 系統(tǒng)原理圖附錄B:源程序清單#include<reg52.h>#define uchar unsigned char #define uint unsigned int uchar i;sbit lcdrs=P20; /lcd rs 腳sbit lcdrw=P21;/lcd rw腳sbit lcden=P22
41、;/lcd en 腳 sbit key_zheng =P31; /定義正傳按鍵sbit key_fan =P30; /定義反轉(zhuǎn)按鍵sbit key_stop =P32; /定義停止按鍵sbit key_jiasu =P33; /定義加速按鍵sbit key_jiansu=P34; /定義 減速按鍵#define step 24 /定義 一圈步數(shù)uchar code dis_speed="Speed= . RPM "uchar code dis_state="Mode: "uchar code dis_positive=" FWD "u
42、char code dis_negative=" REV "uchar code dis_stop= " STOP "uint moto_delay, speed ,state;/轉(zhuǎn)速變量 電機(jī)工作狀態(tài)變量 uchar rotate28=0x03,0x02,0x06,0x04,0x0c,0x08,0x09,0x01; /電機(jī)轉(zhuǎn)動 /*下面設(shè)定19個轉(zhuǎn)速值,及19個轉(zhuǎn)速值的定時器時間*/uint zhuansu=1400,1350,1300,1250,1200,1150,1100,1050,1000,950,900,850,800,750,700,650,
43、600,550,500;uint timer_set=63443 ,63366 ,63282 ,63192 ,63095 ,62988 ,62873 ,62746 ,62606 ,62452 ,62281 ,62089 ,61874 ,61630 ,61351 ,61029 ,60653 ,60209 ,59677 ,;/液晶顯示模塊void delay(uint z)uint x,y;for(x=100;x>1;x-)for(y=z;y>1;y-);void write_com(uchar com)lcdrs=0;P0=com;delay(5);lcden=1;delay(5);
44、lcden=0;void write_date(uchar date)lcdrs=1;P0=date;delay(5);lcden=1;delay(5);lcden=0;void init_lcd()lcden=0;lcdrw=0;write_com(0x38);write_com(0x01);write_com(0x0c);write_com(0x06);write_com(0x80);for(i=0;i<16;i+)write_date(dis_statei);delay(1);write_com(0x80+0x40);for(i=0;i<16;i+)write_date(di
45、s_speedi);delay(1);void display()uchar a,b,c,d,i;/個十百千位數(shù)字 if(state!=0) a=(zhuansuspeed/2)/1000; / 千位b=(zhuansuspeed/2)%1000)/100; / 百位c=(zhuansuspeed/2)%100)/10; / 十位d=(zhuansuspeed/2)%10); /個位else a=0; b=0; c=0; d=0; write_com(0x80+0x40+6);write_date(a+'0'); /+'0' 將數(shù)字轉(zhuǎn)化為asc字符write_com(0x80+0x40+7);w
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 含子女撫養(yǎng)的離婚協(xié)議書模板
- 企業(yè)運營管理咨詢協(xié)議樣本
- 2024工程挖掘機(jī)租賃合同標(biāo)準(zhǔn)范文
- 新住宅按揭貸款合同樣本
- 2024錄制合同模板
- 2024廣告刊登協(xié)議范本
- 動物醫(yī)院聘用合同2024年
- 省級代理合作協(xié)議書的注意事項
- 我國自學(xué)考試網(wǎng)上輔導(dǎo)協(xié)議書樣本大全
- 2023年高考地理第一次模擬考試卷-(河北A卷)(全解全析)
- 空調(diào)安裝施工方案及空調(diào)安裝現(xiàn)場管理辦法
- 甘肅省黃金礦產(chǎn)資源概況
- 診所消防安全應(yīng)急方案
- 譯林版一年級上冊英語全冊課件
- 中小學(xué)德育工作指南考核試題及答案
- 凈現(xiàn)值NPV分析和總結(jié)
- 國網(wǎng)基建各專業(yè)考試題庫大全-質(zhì)量專業(yè)-中(多選題匯總)
- LTC流程介紹完整版
- 飼料加工系統(tǒng)粉塵防爆安全規(guī)程
- 一年級上冊美術(shù)課件-第11課-花兒寄深情-▏人教新課標(biāo)
- 植物的象征意義
評論
0/150
提交評論