本系統(tǒng)以51系列單片機(jī)89S52為控制中心,外加電機(jī)驅(qū)動(dòng)集成電路L298、七段碼譯碼顯示集成電路74LS247、七段碼數(shù)碼管等外圍元件控制電動(dòng)車前進(jìn)、后退、停止等運(yùn)行狀態(tài),并顯示所需時(shí)間、發(fā)出聲光報(bào)警。本次設(shè)計(jì)前進(jìn)、后退、停止等狀態(tài)運(yùn)行時(shí)間通過(guò)簡(jiǎn)單估算及實(shí)驗(yàn)測(cè)試最終確定,并通過(guò)單片機(jī)定時(shí)完成。單片機(jī)通過(guò)接收鍵盤信號(hào)確定小車的工作方式,從而啟動(dòng)具有相應(yīng)定時(shí)參數(shù)的運(yùn)行程序;單片機(jī)執(zhí)行程序時(shí)根據(jù)定時(shí)信息適時(shí)發(fā)出控制信號(hào)給電機(jī)驅(qū)動(dòng)集成電路L298;而L298通過(guò)輸出高電壓、低電壓、零值電壓來(lái)控制電動(dòng)車的前進(jìn)、后退、剎車、停止等運(yùn)行模式。
一 核心模塊的方案論證和比較:
1 電動(dòng)車位置測(cè)定方案的選擇:
由于題目要求電動(dòng)車在運(yùn)行到某一特定位置時(shí)要改變運(yùn)動(dòng)狀態(tài),因此需要實(shí)時(shí)測(cè)定電動(dòng)車的位置。可以有以下方案:
方案一:機(jī)械測(cè)距。采用行程開(kāi)關(guān)測(cè)定電動(dòng)車是否到達(dá)某一特定位置,然后將信號(hào)傳入單片機(jī);
方案二:光電測(cè)距。采用紅外線二極管對(duì)射獲得電動(dòng)車當(dāng)前位移。
方案三:時(shí)間測(cè)距。電動(dòng)車在蹺蹺板水平和傾斜兩種狀態(tài)下前進(jìn)和后退的速度是固定不變的(啟動(dòng)和制動(dòng)的過(guò)程除外),盡管兩者并不相同。我們可以通過(guò)理論估算和實(shí)驗(yàn)修正最終確定電動(dòng)車在以上兩種狀態(tài)下的速度。因此,時(shí)間就代表了電動(dòng)車在蹺蹺板中的位置。通過(guò)定時(shí)可以很好地把握電動(dòng)車改變運(yùn)動(dòng)狀態(tài)的時(shí)機(jī)。而定時(shí)又可采用兩種子方案。1.外部硬件電路定時(shí)。如利用555振蕩器產(chǎn)生秒信號(hào),然后利用十進(jìn)制計(jì)數(shù)器74LS160計(jì)數(shù)定時(shí),并利用相應(yīng)譯碼顯示集成電路74LS247、七段碼數(shù)碼管顯示時(shí)間。這里,單片機(jī)的作用僅僅是向計(jì)數(shù)器/計(jì)時(shí)器電路發(fā)出開(kāi)始、結(jié)束等控制信號(hào)。該方案優(yōu)點(diǎn)在于節(jié)省了單片機(jī)I/O端口,節(jié)省了程序長(zhǎng)度,縮短了執(zhí)行時(shí)間,保證了控制的實(shí)時(shí)性。缺點(diǎn)在于增加了硬件定時(shí)電路的成本,增加了電路的復(fù)雜性,定時(shí)的準(zhǔn)確度往往不能得到保證。2.軟件定時(shí)。單片機(jī)通過(guò)軟件進(jìn)行定時(shí),采用時(shí)鐘信號(hào)作為時(shí)間基準(zhǔn),啟用程序計(jì)數(shù)功能。該方案定時(shí)準(zhǔn)確,不增加硬件投資。盡管增加了程序的長(zhǎng)度,但對(duì)于單片機(jī)存儲(chǔ)容量的要求微乎其微,盡管稍稍延長(zhǎng)了程序執(zhí)行時(shí)間,但對(duì)控制的時(shí)效性的影響幾乎可以忽略不計(jì)。
綜上所述,軟件定時(shí)測(cè)電動(dòng)車的位置方案節(jié)省硬件投資,簡(jiǎn)化電路,簡(jiǎn)單易行,并且還可以方便地實(shí)時(shí)顯示時(shí)間,因此我們選用方案三中的軟件定時(shí)。
2 電機(jī)的選擇:
方案一:采用步進(jìn)電機(jī)。步進(jìn)電機(jī)的顯著特點(diǎn)就是具有快速啟動(dòng)和停止能力。如果負(fù)荷不超過(guò)步進(jìn)電機(jī)所提供的動(dòng)態(tài)轉(zhuǎn)矩值,就可以使電機(jī)快速啟動(dòng)、停止和反轉(zhuǎn)。另一個(gè)顯著特點(diǎn)就是轉(zhuǎn)換精度高,正轉(zhuǎn)反轉(zhuǎn)控制靈活。但步進(jìn)電機(jī)價(jià)格相對(duì)較高。
方案二:采用普通直流電機(jī)。直流電機(jī)具有良好的調(diào)速性能,調(diào)速平滑方便,調(diào)速范圍廣;過(guò)載能力強(qiáng),能承受頻繁的沖擊負(fù)載,可實(shí)現(xiàn)頻繁的無(wú)級(jí)快速啟動(dòng)、制動(dòng)和反轉(zhuǎn);能滿足生產(chǎn)過(guò)程自動(dòng)化系統(tǒng)各種不同的特殊運(yùn)行要求。
由于比賽前購(gòu)買的電動(dòng)車安裝的是普通的直流電機(jī),因此采用直流電機(jī)相對(duì)節(jié)省了購(gòu)買步進(jìn)電機(jī)的大量開(kāi)支;而且直流電機(jī)驅(qū)動(dòng)電路相對(duì)簡(jiǎn)單,因此選用直流電機(jī)降低了電路的復(fù)雜度,同時(shí)也減小了硬件部分的故障概率。我們選用方案二。
3直流電機(jī)制動(dòng)性能的改進(jìn):
方案一:采用能耗制動(dòng)的方法:即需要停車時(shí),切斷電源,使電動(dòng)車在摩擦力作用下停止。
方案二:采用短時(shí)反接制動(dòng)的方法:需要停車時(shí),通過(guò)單片機(jī)控制驅(qū)動(dòng)芯片L298向電動(dòng)車提供負(fù)向電源,促使其快速停車。
方案一受慣性影響,停車較慢,方案二在不增加硬件、軟件成本的前提下縮短了制動(dòng)時(shí)間,提高了控制的時(shí)效性。我們選用方案二。
4 蹺蹺板平衡狀態(tài)的檢測(cè)與實(shí)現(xiàn):
方案一:采用角度傳感器來(lái)實(shí)現(xiàn)。利用角度傳感器實(shí)時(shí)測(cè)試蹺蹺板當(dāng)前狀態(tài)與水平位置的夾角,將其輸出的八位格雷碼輸入單片機(jī)的I/O口,經(jīng)過(guò)程序采集、分析及處理,向電動(dòng)車驅(qū)動(dòng)電路發(fā)出相應(yīng)的控制信號(hào)。當(dāng)角度傳感器檢測(cè)到當(dāng)前處于平衡位置時(shí),發(fā)出停車信號(hào)。
方案二:利用估算及反復(fù)實(shí)驗(yàn)確定合適位移,從而達(dá)到平衡狀態(tài)。當(dāng)配重物體重量、位置均固定不變時(shí),小車只要運(yùn)動(dòng)到一個(gè)特定位置蹺蹺板即可到達(dá)平衡位置。只要利用物理上的杠桿原理對(duì)小車的這個(gè)特定位移進(jìn)行估算,并通過(guò)多次實(shí)驗(yàn)進(jìn)行統(tǒng)計(jì)處理即可得到。
我們選用方案二。
二 系統(tǒng)的具體設(shè)計(jì)與實(shí)現(xiàn)
本系統(tǒng)利用51系列單片機(jī)89S52作為電動(dòng)車運(yùn)動(dòng)控制中心,外接角度傳感器用來(lái)檢測(cè)蹺蹺板的平衡狀態(tài),利用鍵盤及撥碼開(kāi)關(guān)設(shè)定蹺蹺板的初始位置及配重物體的位置信息,利用兩位數(shù)碼管顯示時(shí)間,利用蜂鳴器及發(fā)光二極管進(jìn)行聲光報(bào)警。軟件部分主要包括根據(jù)設(shè)定信息及角度傳感器輸入的信息進(jìn)行定時(shí)、電機(jī)驅(qū)動(dòng)信號(hào)的產(chǎn)生、聲光報(bào)警信號(hào)的產(chǎn)生等。
以下分硬件和軟件兩個(gè)部分進(jìn)行分析討論:
1 系統(tǒng)的硬件設(shè)計(jì):
原理框圖如下:
鍵盤輸入部分:由于設(shè)計(jì)題目要求電動(dòng)車分別在水平固定木板、傾斜木板、配重物體位置固定及在一定區(qū)域內(nèi)移動(dòng)等四種工作方式下運(yùn)行,所以設(shè)置了A、B兩個(gè)鍵設(shè)定不同的工作模式。A、B兩鍵分別連接P2.7、P2.6口,高電平有效。此外,在工作方式4中,A、B兩個(gè)鍵還用來(lái)輸入配重物體所在的位置信息。電機(jī)驅(qū)動(dòng)電路: 采用L298驅(qū)動(dòng),可控制電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、剎車、停止。其外型及功能如下:  [/url] 顯示電路: 采用兩位七段碼數(shù)碼管用來(lái)顯示小車運(yùn)動(dòng)所需要的時(shí)間。由2片74LS247將P0口輸出的8位8421BCD碼轉(zhuǎn)換為2個(gè)七段碼,分別供兩位數(shù)碼管顯示。 聲光報(bào)警: 由單片機(jī)P3.0口輸出報(bào)警信號(hào),通過(guò)蜂鳴器發(fā)出聲音報(bào)警,通過(guò)發(fā)光二極管進(jìn)行光線報(bào)警。 2 軟件部分設(shè)計(jì):  程序編寫流程圖如下:
本電動(dòng)車分為四種工作方式:方式1:電動(dòng)車在固定水平板上往返運(yùn)動(dòng)。設(shè)正程需要時(shí)間t11,返程需要時(shí)間。 方式2:在蹺蹺板配重傾斜狀態(tài)下,電動(dòng)車往返運(yùn)動(dòng)。設(shè)正程需要時(shí)間t21,返程需要時(shí)間t22。 方式3:配重物體置于某特定位置,小車運(yùn)動(dòng)至蹺蹺板平衡位置并停止5秒以上。設(shè)小車運(yùn)動(dòng)t3時(shí)間蹺蹺板平衡。 方式4:配重物體置于可移動(dòng)區(qū)域的任意位置,小車運(yùn)動(dòng)至蹺蹺板平衡位置并停止5秒以上。小車運(yùn)動(dòng)時(shí)間t4直接決定于配重物體的位置,只要鍵入該信息,即可得到運(yùn)動(dòng)時(shí)間t4。 以上時(shí)間t11、t12、t21、、t22、t3、、t4均可由電機(jī)轉(zhuǎn)速、路程估算,并通過(guò)多次實(shí)驗(yàn)值進(jìn)行修正,并將其寫入程序。 三 測(cè)量?jī)x器、測(cè)量方法與數(shù)據(jù) 1 測(cè)量?jī)x器: 秒表 米尺 2 測(cè)量數(shù)據(jù): (1)基本要求:
* 蹺蹺板水平狀態(tài)下小車的行駛時(shí)間(單位:秒)
* 蹺蹺板傾斜狀態(tài)下小車的行駛時(shí)間(單位:秒)
(2)發(fā)揮部分:
將配重物體放置在可移動(dòng)范圍內(nèi)的某位置,檢測(cè)小車運(yùn)動(dòng)至蹺蹺板平衡狀態(tài)所需時(shí)間及聲光報(bào)警情況如下:
| 運(yùn)動(dòng)至平衡位置所用時(shí)間 | | | | | | | |
四 結(jié)束語(yǔ) 本次設(shè)計(jì)在51系列單片機(jī)AMTEI89S52的控制及電機(jī)驅(qū)動(dòng)L298、譯碼顯示電路、聲光報(bào)警電路、角度傳感器的配合下,不僅成功地完成了蹺蹺板水平固定狀態(tài)下、傾斜狀態(tài)下小車往返、停止的操作、計(jì)時(shí)顯示的功能,而且完成了配重物體隨意放置下平衡狀態(tài)下的報(bào)警、時(shí)間顯示以及靜止等功能。
附:控制部分電路圖
以上的Word格式文檔51黑下載地址(沒(méi)有代碼): |