本設(shè)計(jì)采用凌陽16 位單片機(jī)SPCE061A對步進(jìn)電機(jī)進(jìn)行控制,通過IO口輸出的具有時(shí)序的方波作為步進(jìn)電機(jī)的控制信號,信號經(jīng)過芯片L298N驅(qū)動步進(jìn)電機(jī);同時(shí),用 4X4的鍵盤來對電機(jī)的狀態(tài)進(jìn)行控制,并用數(shù)碼管顯示電機(jī)的轉(zhuǎn)速,采用74LS164作為4位單個(gè)數(shù)碼管的顯示驅(qū)動,從單片機(jī)輸入信號;利用凌陽單片機(jī)的語音功能播報(bào)電機(jī)的轉(zhuǎn)速。
一、 方案論證與比較
1、 本設(shè)計(jì)的重點(diǎn)在于對步進(jìn)電機(jī)的控制和驅(qū)動,設(shè)計(jì)中受控電機(jī)為四相六線制的步進(jìn)電機(jī)(內(nèi)阻33歐,步進(jìn)1.8度,額定電壓12V)
方案一:使用多個(gè)功率放大器件驅(qū)動電機(jī)
通過使用不同的放大電路和不同參數(shù)的器件,可以達(dá)到不同的放大的要求,放大后能夠得到較大的功率。但是由于使用的是四相的步進(jìn)電機(jī),就需要對四路信號分別進(jìn)行放大,由于放大電路很難做到完全一致,當(dāng)電機(jī)的功率較大時(shí)運(yùn)行起來會不穩(wěn)定,而且電路的制作也比較復(fù)雜。
方案二:使用L298N芯片驅(qū)動電機(jī)
L298N芯片可以驅(qū)動兩個(gè)二相電機(jī)(如圖1-1),也可以驅(qū)動一個(gè)四相電機(jī),輸出電壓最高可達(dá)50V,可以直接通過電源來調(diào)節(jié)輸出電壓;可以直接用單片機(jī)的IO口提供信號;而且電路簡單,使用比較方便。
圖1-1
通過比較,使用L298N芯片充分發(fā)揮了它的功能,能穩(wěn)定地驅(qū)動步進(jìn)電機(jī),且價(jià)格不高,故選用L298N驅(qū)動電機(jī)。而使用L298N時(shí),可以用L297來提供時(shí)序信號,可以節(jié)省單片機(jī)IO口的使用;也可以直接用單片機(jī)模擬出時(shí)序信號,由于控制并不復(fù)雜,故選用后者。
2、 數(shù)碼管顯示電路的設(shè)計(jì)
方案一:串行接法
設(shè)計(jì)中要顯示4位數(shù)字,用74LS164作為顯示驅(qū)動,其中帶鎖存,使用串行接法可以節(jié)約IO口資源,但要使用SIO,發(fā)送數(shù)據(jù)時(shí)容易控制。
方案二:并行接法
使用并行接法時(shí)要對每個(gè)數(shù)碼管用IO口單獨(dú)輸入數(shù)據(jù),占用資源較多。
由于設(shè)計(jì)中用一塊單片機(jī)進(jìn)行控制,資源有限,選擇了方案一。另外,使用鎖存也起到節(jié)約資源的作用。
二、步進(jìn)電機(jī)控制原理
步進(jìn)電機(jī)是數(shù)字控制電機(jī),它將脈沖信號轉(zhuǎn)變成角位移,即給一個(gè)脈沖信號,步進(jìn)電機(jī)就轉(zhuǎn)動一個(gè)角度,因此非常適合于單片機(jī)控制。步進(jìn)電機(jī)可分為反應(yīng)式步進(jìn)電機(jī)(簡稱VR)、永磁式步進(jìn)電機(jī)(簡稱PM)和混合式步進(jìn)電機(jī)(簡稱HB)。
步進(jìn)電機(jī)區(qū)別于其他控制電機(jī)的最大特點(diǎn)是,它是通過輸入脈沖信號來進(jìn)行控制的,即電機(jī)的總轉(zhuǎn)動角度由輸入脈沖數(shù)決定,而電機(jī)的轉(zhuǎn)速由脈沖信號頻率決定。
步進(jìn)電機(jī)的驅(qū)動電路根據(jù)控制信號工作,控制信號由單片機(jī)產(chǎn)生。其基本原理作用如下:
(1)控制換相順序
通電換相這一過程稱為脈沖分配。例如:三相步進(jìn)電機(jī)的三拍工作方式,其各相通電順序?yàn)锳-B-C-D,通電控制脈沖必須嚴(yán)格按照這一順序分別控制A,B,C,D相的通斷。
(2)控制步進(jìn)電機(jī)的轉(zhuǎn)向
如果給定工作方式正序換相通電,步進(jìn)電機(jī)正轉(zhuǎn),如果按反序通電換相,則電機(jī)就反轉(zhuǎn)。
(3)控制步進(jìn)電機(jī)的速度
如果給步進(jìn)電機(jī)發(fā)一個(gè)控制脈沖,它就轉(zhuǎn)一步,再發(fā)一個(gè)脈沖,它會再轉(zhuǎn)一步。兩個(gè)脈沖的間隔越短,步進(jìn)電機(jī)就轉(zhuǎn)得越快。調(diào)整單片機(jī)發(fā)出的脈沖頻率,就可以對步進(jìn)電機(jī)進(jìn)行調(diào)速。
三、理論設(shè)計(jì)
綜和以上選取的方案,總的流程如圖3-2所示。
圖3-1
1、步進(jìn)電機(jī)驅(qū)動電路
通過L298N構(gòu)成步進(jìn)電機(jī)的驅(qū)動電路,電路圖如圖3-2所示。
通過單片機(jī)SPCE061A的IOB8~I(xiàn)OB13對L298N的IN1~I(xiàn)N4口和ENA、ENB口發(fā)送方波脈沖信號,起時(shí)序圖如圖3-3所示。
圖3-2
圖3-3
2、數(shù)碼管顯示電路的設(shè)計(jì)
數(shù)碼管的顯示驅(qū)動使用74LS164,通過SPCE061A的IOB0和IOB1口對DATA和CLK發(fā)送數(shù)據(jù)。
圖3-4
3、4x4鍵盤電路
在設(shè)計(jì)中,使用了標(biāo)準(zhǔn)的4x4鍵盤,其電路圖如圖3-5所示。單片機(jī)的A口低8位為鍵盤的接口。盡管設(shè)計(jì)要求中只需要4個(gè)鍵對步進(jìn)電機(jī)的狀態(tài)進(jìn)行控制,但考慮到對控制功能的擴(kuò)展,我們使用了4x4的鍵盤。
圖3-5
四、程序設(shè)計(jì)
在進(jìn)行程序設(shè)計(jì)的過程中,主要分為五個(gè)部分:雙機(jī)通訊、語音報(bào)數(shù)、數(shù)字顯示、步進(jìn)電機(jī)驅(qū)動、鍵盤;其中雙機(jī)通訊的實(shí)現(xiàn)和語音報(bào)時(shí)比較有特點(diǎn),將其流程簡要介紹如下,其他部分見附的程序。
1、雙機(jī)通訊
圖4-1
我們在實(shí)現(xiàn)雙機(jī)通訊的過程中使用了“三次握手”的方式,這是Intle網(wǎng)中成用的數(shù)據(jù)通訊確認(rèn)協(xié)議,其流程圖如圖4-1所示。
2、語音報(bào)數(shù)
程序設(shè)計(jì)中語音報(bào)數(shù)使用的是SACM-A2000,考慮到程序比較簡單,首先使用了自動報(bào)數(shù)方式,但發(fā)現(xiàn)不能進(jìn)行連續(xù)報(bào)數(shù),于是使用了非自動方式,流程圖如圖4-2所示。
圖4-2
五、結(jié)果分析與總結(jié)
應(yīng)該說這次課程設(shè)計(jì)還是基本達(dá)到了設(shè)計(jì)的要求,但是也存在著未能解決的問題,由于在執(zhí)行語音程序時(shí)對資源的消耗比較大,在語音報(bào)數(shù)的時(shí)候會中斷步進(jìn)電機(jī)驅(qū)動信號的輸出,導(dǎo)致電機(jī)停轉(zhuǎn)。為此,我們修改了方案,使用了兩塊單片機(jī),通過雙機(jī)通訊來傳遞信號,遺憾的是問題仍然沒有得到解決。
這次步進(jìn)電機(jī)的綜合實(shí)驗(yàn)我們學(xué)到了步進(jìn)電機(jī)、數(shù)碼管、4*4鍵盤、語音報(bào)數(shù)和雙機(jī)通訊的使用,更重要的是學(xué)會了程序出問題時(shí)調(diào)試的方法,并養(yǎng)成了Debug的習(xí)慣,學(xué)到了程序出問題后怎樣去解決的基本方法。
-
單片機(jī)
+關(guān)注
關(guān)注
6037文章
44558瀏覽量
635400 -
功率放大器
+關(guān)注
關(guān)注
102文章
3583瀏覽量
131898 -
步進(jìn)電機(jī)
+關(guān)注
關(guān)注
150文章
3111瀏覽量
147493
發(fā)布評論請先 登錄
相關(guān)推薦
評論