国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于STC89C51單片機步進電機控制系統(tǒng)的設(shè)計

2016-09-19 01:39:32陳慧琴東南大學(xué)成賢學(xué)院電子工程系南京210088
山東工業(yè)技術(shù) 2016年18期
關(guān)鍵詞:子程序按鍵脈沖

陳慧琴(東南大學(xué)成賢學(xué)院電子工程系,南京 210088)

基于STC89C51單片機步進電機控制系統(tǒng)的設(shè)計

陳慧琴
(東南大學(xué)成賢學(xué)院電子工程系,南京 210088)

本文基于STC89C51單片機,設(shè)計了步進電機控制系統(tǒng),系統(tǒng)分為STC89C51單片機最小系統(tǒng)、按鍵模塊、顯示模塊、電機驅(qū)動模塊以及步進電機等幾個部分,通過編程實現(xiàn)了步進電機的正反轉(zhuǎn),加減速,啟停控制以及運行狀態(tài)LED狀態(tài)顯示功能。實驗結(jié)果表明,系統(tǒng)性能優(yōu)于傳統(tǒng)的步進電機控制器。

STC89C51單片機;步進電機;控制系統(tǒng);設(shè)計

1 引言

步進電機是機電設(shè)備中最廣泛使用的一種電機,又被稱為脈沖電動機或者階躍電動機,其工作原理是將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移。每輸入一個電脈沖,電機轉(zhuǎn)動一個角度前進一步,其輸出的角位移與輸入的脈沖數(shù)成正比、轉(zhuǎn)速與脈沖頻率成正比。在控制中,可以利用輸入電脈沖的頻率、數(shù)量和各相繞組的通電順序來精確控制電機的啟停、轉(zhuǎn)速、轉(zhuǎn)向和定位,幾乎不受電壓和環(huán)境溫度等影響,誤差小。隨著單片機嵌入式系統(tǒng)的發(fā)展應(yīng)用,基于單片機的步進電機控制系統(tǒng)在各個領(lǐng)域得到了廣泛應(yīng)用,比如線切割的工作臺運動、ATM機、刻字機、工業(yè)控制系統(tǒng)等等,并且特別適合要求性能穩(wěn)定、誤差率低、響應(yīng)迅速、運行時產(chǎn)生噪音小、具有較長的使用壽命以及能輸出較大扭矩的應(yīng)用場合。本文設(shè)計了基于STC89C51單片機的步進電機控制系統(tǒng),具備價格低廉、結(jié)構(gòu)簡單、移植性好等特點,具有廣泛的應(yīng)用前景。

2 系統(tǒng)總體框架

本系統(tǒng)主要由STC89C51單片機最小系統(tǒng)、驅(qū)動電路模塊、按鍵電路模塊、數(shù)碼管顯示電路模塊和步進電機等幾個模塊組成。本設(shè)計中步進電機功率和額定電流都較小,從經(jīng)濟性方面考慮,驅(qū)動芯片選用 ULN2003芯片,ULN2003芯片是一種高耐壓、大電流、內(nèi)部包含七個硅PNP達林頓管的驅(qū)動芯片。

步進電機的控制主要通過按鍵來實現(xiàn),分別負責(zé)控制加減速、換向、轉(zhuǎn)速。 STC89C51單片機向ULN2003輸出脈沖信號,驅(qū)動芯片將脈沖信號進行電壓和電流放大,驅(qū)動步進電機的各相繞組,使步進電機隨著不同的脈沖信號分別作相應(yīng)的動作。系統(tǒng)結(jié)構(gòu)如圖1所示。

圖1 

3 硬件電路設(shè)計

以STC89C51單片機為核心處理器及主控制器,由28BYJ-48步進電機與ULN2003組成電機與驅(qū)動模塊,矩陣鍵盤模塊分別控制步進電機的啟停、正反轉(zhuǎn)、加速、減速,顯示模塊驅(qū)動數(shù)碼管顯示步進電機當前的轉(zhuǎn)速與轉(zhuǎn)動方向。

3.1步進電機選擇與設(shè)計

本設(shè)計采用28BYJ-48步進電機,內(nèi)部結(jié)構(gòu)如圖2所示,內(nèi)部接線如圖3所示。

28BYJ-48步進電機一共有四組線圈,每對繞組有一個共同端點,將兩個公共端點連在一起引出,這樣一共得到5根引出線。給各引出端通電,就能使步進電機轉(zhuǎn)動。步進電機的轉(zhuǎn)動方向由給定工作方式的換相通電順序決定。正轉(zhuǎn)的循環(huán)通電順序是A-AB-B-BC-C-CD-D-DA,反轉(zhuǎn)的循環(huán)通電順序是D-DC-C-CB-B-BA-A-AD,通過調(diào)整步進電機的四個繞組的通電順序,來控制其轉(zhuǎn)動方向,通過調(diào)整發(fā)射脈沖信號的頻率來控制其轉(zhuǎn)速,頻率越高,速度越快。

圖2 

圖3 

3.2單片機系統(tǒng)

本設(shè)計采用STC89C5l單片機作為核心,如圖4所示,該單片機結(jié)構(gòu)簡單,價格低廉,使用方便,能夠反復(fù)寫入或擦除程序達幾萬次以上。除此之外,STC89C51還支持MCS51系列單片機的所有功能。單片機最小系統(tǒng)主要由復(fù)位電路和振蕩電路組成。最小系統(tǒng)如圖5所示。

圖4 

圖5 

3.3按鍵控制電路

開關(guān)斷開時,輸出電壓為低電平,開關(guān)閉合時,輸出電壓為高電平。通過按鍵掃描程序掃描按鍵輸出的是否為高電平就可以判斷按鍵是否閉合。設(shè)計四個發(fā)光二極管用于顯示當前脈沖信號的發(fā)射狀態(tài),如果按鍵按下,則發(fā)光二極管的發(fā)光狀態(tài)會發(fā)生改變??刂瓢存I電路如圖6所示。

圖6 

3.4數(shù)碼管顯示電路

選用共陽極數(shù)碼管來顯示步進電機當前實時轉(zhuǎn)動速度和方向。數(shù)碼管顯示電路圖如圖7所示。

圖7 

3.5步進電機驅(qū)動電路

ULN2003通過1號到4號接口依次與單片機的28號到25號接口相連,STC89C51通過這四個引腳向ULN2003輸入信號,同時ULN2003的16號到13號接口與步進電機相連用于驅(qū)動步進電機轉(zhuǎn)動。本設(shè)計采用單拍方式對步進電機進行控制,1號到4號接口在同一時刻只有一個連通,其余的3個接口斷開。步進電機每個時刻只有一個引出端與ULN2003相連。驅(qū)動電路如圖8所示。

圖8 

4 軟件設(shè)計

4.1軟件設(shè)計思路

軟件系統(tǒng)采用MCS-51 單片機匯編語言編寫,系統(tǒng)由初始化模塊、按鍵模塊、顯示模塊、步進電機控制模塊等幾個部分組成,通過按鍵模塊控制步進電機的啟停,調(diào)整轉(zhuǎn)速、轉(zhuǎn)向。轉(zhuǎn)速和轉(zhuǎn)向通過LED數(shù)碼管實時顯示。程序流程圖如圖9所示。

圖9 

4.2按鍵掃描模塊

按鍵掃描子程序的運行流程是首先啟動按鍵掃描子程序,然后掃描按鍵輸出端,檢測是否有按鍵動作發(fā)生,如果沒有按鍵動作發(fā)生,就回到程序的開始,即繼續(xù)掃描按鍵輸出端以檢測是否發(fā)生按鍵動作,直到檢測到有按鍵動作發(fā)生時運行按鍵處理子程序,而后回到程序的初始,繼續(xù)掃描按鍵輸出端。在本子程序中,還需要加入一個消抖子程序,當檢測到輸入時,運行一個延時程序,延時時間為十毫秒,接著再次對按鍵輸端進行掃描,如果仍能檢測到輸入,則說明真的有按鍵動作發(fā)生,否則按鍵輸出是由抖動產(chǎn)生,最后將所確認的按鍵輸出值反饋給按鍵掃描子程序以準備運行按鍵處理子程序。

4.3按鍵處理模塊

按鍵處理子程序的目的是改變定時器T0的運行狀態(tài),因為定時器T0控制著脈沖信號的輸出。按鍵處理子程序的運行流程是:首先開始運行按鍵處理子程序,將各變量初始化,接著依次檢測四個按鍵是否有按鍵動作發(fā)生,如果有按鍵動作發(fā)生,就對相應(yīng)的值做修改,然后退出該程序。需要注意的是,每運行一次程序只對一個按鍵做出反應(yīng),即檢測到一個按鍵有輸入并處理完之后就退出該程序而非把所有按鍵都檢測一遍之后再退出。

4.4步進電機控制模塊

在設(shè)計中,將換向子程序放在定時中斷服務(wù)程序中,運行時,通過判斷換向按鍵是否按下,來決定是否執(zhí)行換向子程序,以達到對轉(zhuǎn)向的控制。首先運行步進電機控制中斷子程序,設(shè)置T0時間參數(shù),接著根據(jù)按鍵處理子程序運行的結(jié)果判斷是否需要改變轉(zhuǎn)動方向控制位的值,如果需要則改變方向控制位的變量值,然后退出程序,如果不需要則再根據(jù)按鍵輸出子程序的運行結(jié)果來查詢輸出脈沖為多少,最后退出程序。需注意的是,如果按鍵處理子程序沒有檢測到加速、減速按鈕的按鍵動作,則根據(jù)步進電機當前的轉(zhuǎn)動速度來決定脈沖信號的輸出頻率。

5 總結(jié)

本文基于STC89C 51單片機、ULN2003驅(qū)動芯片和28BYJ-48步進電機設(shè)計了步進電機控制硬件電路,軟件編程實現(xiàn)了實時精確控制步進電機轉(zhuǎn)速、轉(zhuǎn)向和停轉(zhuǎn),該系統(tǒng)結(jié)構(gòu)簡單、性能穩(wěn)定、精確度高、通用性強、成本低廉。經(jīng)仿真測試,該步進電機控制系統(tǒng)各項指標達到了良好效果,實現(xiàn)了預(yù)期目標,可廣泛應(yīng)用于數(shù)控機床、軋鋼機、機器人以及自動化儀表等多個方面。具有較高的實用價值和經(jīng)濟效益。

[1]王宗培.步進電動機及其控制系統(tǒng)[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2009.

[2]李強.基于單片機的步進電機控制系統(tǒng)設(shè)計與實現(xiàn).儀器儀表用戶.2008(04):44-46.

[3]陳理壁.步進電機及其應(yīng)用[M].上海:上??茖W(xué)技術(shù)出版社,2009.

[4]洪新華,陳建鋒,霍鵬飛.基于單片機的步進電機控制系統(tǒng)的設(shè)計.湛江師范學(xué)院學(xué)報,2010(06):84-8.

[5]劉帥,祖靜,張紅艷.基于單片機的步進電機控制系統(tǒng)設(shè)計.電子設(shè)計工程,2010(04):38-40.

10.16640/j.cnki.37-1222/t.2016.18.165

猜你喜歡
子程序按鍵脈沖
他們使阿秒光脈沖成為可能
脈沖離散Ginzburg-Landau方程組的統(tǒng)計解及其極限行為
基于有限狀態(tài)機的按鍵檢測程序設(shè)計
電子制作(2021年3期)2021-06-16 03:14:26
黃芩苷脈沖片的制備
中成藥(2017年12期)2018-01-19 02:06:54
一種多方向?qū)Ч獍存I結(jié)構(gòu)設(shè)計
電子制作(2016年1期)2016-11-07 08:43:05
淺談子程序在數(shù)控車編程中的應(yīng)用
子程序在數(shù)控車加工槽中的應(yīng)用探索
西門子840D系統(tǒng)JOG模式下PLC調(diào)用并執(zhí)行NC程序
按鍵的多種狀態(tài)檢測及消抖處理方法
家電科技(2013年4期)2013-07-09 10:55:08
簡化編程與子程序嵌套的應(yīng)用
科技傳播(2011年24期)2011-08-29 05:39:46
阜阳市| 建宁县| 茂名市| 杨浦区| 宣武区| 聂拉木县| 宝兴县| 都江堰市| 安康市| 竹山县| 翁牛特旗| 巧家县| 彩票| 确山县| 石河子市| 勃利县| 东乌珠穆沁旗| 万山特区| 大丰市| 鄂托克旗| 镶黄旗| 桐乡市| 淮安市| 喀喇沁旗| 明星| 延安市| 新竹市| 固安县| 永宁县| 浪卡子县| 上饶市| 垣曲县| 白银市| 华亭县| 林州市| 玉田县| 镇康县| 顺义区| 辽阳市| 星子县| 德州市|