|
摘要:本文介紹一種以多種傳感器為敏感元件,以AT89C51 單片機為控制核心的電動小車的智能控制系統(tǒng)。文中敘述了該系統(tǒng)的硬件設計及軟件流程圖,并給出了實測結果。該控制技術可用于智能機器人及自動停車控制系統(tǒng)的設計。 關鍵詞:單片機;自動;中斷;控制; 傳感器
0 前言 當前的電動小汽車基本上采取的是基于純硬件電路的一種開環(huán)控制方法,或者是直線行使,或者是在遙控下作出前進、后退、轉彎、停車等基本功能。但是它們不能實現(xiàn)在某些特殊的場合下,我們需要能夠自動控制的小型設備先采集到一些有用的信息的功能。本文正是在這種需要之下開發(fā)設計的一種智能的電動小車的自動控制系統(tǒng)。它以單片機AT89C51 為控制核心,附以外圍電路,采用金屬探測器、光電檢測器等傳感器材檢測信號和障礙物;充分利用單片機的串口、并口資源和運算、處理能力,來實現(xiàn)小車的按軌跡直線行走、按軌跡轉彎、檢測軌道下的金屬片并顯示其數(shù)目同時發(fā)出聲光警示、躲避障礙物、尋燈光進入車庫,最后停車等智能控制系統(tǒng)。 1 系統(tǒng)硬件電路設計 整個系統(tǒng)結構框圖如1 所示。
圖1 系統(tǒng)框圖
1.1 尋跡電路設計 本設計需要檢測直線行駛區(qū)和沿弧線行駛區(qū)具有一定黑白對比度的黑線。圖2 為尋跡發(fā)射和接收電路,共有兩套,分別檢測左側車輪和右側車輪的偏轉情況。采取的是反射取樣式,高亮度的發(fā)光二極管與光敏二極管呈V 字型放置。光敏三極管接收到的信號用LM358 進行電壓比較與放大。圖2 的電路在+5V 電壓下工作,根據(jù)發(fā)射管和接收管所需的工作壓降和工作電流,選取的負載電阻如圖中所示。此部分電路的設計具有靈敏度高、可調節(jié)等特點。
圖2 尋跡發(fā)射和接收電路 1.2 金屬探測及報警電路設計 本設計需要檢測在軌道下的未知位置處埋藏的金屬片,并且在檢測到金屬片時,發(fā)出聲光告警。如圖3 所示。圖中的探頭為J2D-5NB 常閉型接近開關。其輸出電壓可直接送給單片機進行處理。當檢測到金屬片后,單片機馬上輸出信號,控制由NE555 時基電路構成的多諧振蕩器開始振蕩,驅動發(fā)光二極管D1 閃亮,蜂鳴器B1 斷斷續(xù)續(xù)的鳴叫。
圖3 金屬探測器檢測及報警電路 1.3 平行光管方向探測電路設計 此部分設計采用兩對光敏三極管,用于檢測車庫外的200W 的燈泡發(fā)出的光線,放在車前部的中間位置。當兩個光敏三極管同時檢測到光時,直線前進。當光敏三極管檢測不到光時,處于截止狀態(tài),雙運算放大器LM358 輸出低電平給單片機的P2.3、(P2.4)后,由程序處理;若左路未檢測到光,則向右拐彎;若右路未檢測到光,則向左拐彎。 當光敏三極管接收到光后導通,相應的LM358 輸出低電平給單片機,將繼續(xù)讓小車前進。
圖4 駛向車庫時光檢測電路 1.4 電機驅動電路設計 電源電路的設計在整個系統(tǒng)中起著至關重要的作用。由于采用的是雙驅動的小車,這部分電路必須能夠輸出兩個不同的電壓值,分別去控制小車的左、右兩個驅動電機,使小車的兩個履帶的轉速相同或不同,從而來控制它的前進和轉彎。主要應用四雙向模擬開關CD4066、8 緩沖器及線驅動器74LS244、三端可調整輸出穩(wěn)壓器LM317 及穩(wěn)壓塊7805 來完成單片機和小車之間的控制和驅動信號的連接。為了保證每個單元電路都能夠穩(wěn)定的供電,采取分別供電的方法,控制各個電路的啟動。
1.5 顯示電路 顯示電路的設計采用串行口方式0 輸出,靜態(tài)顯示。顯示電路中使用4 位數(shù)碼管,由四塊移位寄存器74LS164 實現(xiàn)串行傳送。其中,第一位顯示檢測到的金屬塊數(shù),為了便于區(qū)分,它與其他三個隔開一定的距離,后三位用于分時顯示時間或距離。硬件接口電路如下圖所示。
圖6 單片機接口及顯示電路 1.6 停車部分 此部分的電路利用了前邊的尋跡部分的電路,這里只使用了P2.1 檢測位,讓它檢測車庫的黑邊。在駛向車庫時的程序中,若P2.1 輸出高電平,則意味著小車已經完全進入車庫內部;若輸出低電平,則繼續(xù)尋光前進。電路圖參照圖1 尋跡發(fā)射和接收電路圖。 2、軟件設計體系結構 (1) 時序管理:采用時間控制的方法,在程序中設定各種時間參數(shù)值(這些參數(shù)值由反復實際測量得到),通過比較是否已達到或超過預定時間,來控制各段運行。 (2) 中斷管理:采用多中斷方式,因為優(yōu)先級的設置,避免了多級中斷的相互干擾。其中,T0 中斷的優(yōu)先級最高。 (3) 多種控制方式復合:用時間信號與各種檢測信號共同控制車的運行。程序整體流程圖:
3 可靠性設計 在前向通道中的尋跡電路和平行光管光強度傳感器電路中所使用的,是高亮度的發(fā)光二極管和靈敏度適當?shù)墓饷舳䴓O管,這樣可使光敏三極管接收到的光強度足夠大,而且為了進一步提高其可靠性,采用了LM358 電壓比較器進行噪聲切割。在程序設計中,當外部中斷1和外部中斷0 中斷不用后,將其關斷,這樣就避免了干擾信號的產生。 4 系統(tǒng)測試結果 小車進入車庫停車時間為60 秒左右。在探測到金屬塊時,能準確顯示距起點的時間,同時有聲光顯示。小車基本上能按照預定路線行進,進入車庫,且時間未超過90 秒。在聲光報警電路中,采用的是蜂鳴器和高亮度的發(fā)光二極管。在每次檢測到有金屬塊時,都能發(fā)出聲光指示信息,顯示清晰。 5 結論 整個系統(tǒng)的設計以單片機為核心,利用了多種傳感器,在中斷管理、時序管理的復合控制方式下,將軟件和硬件相結合。本系統(tǒng)能實現(xiàn)如下功能: (1) 自動沿預設軌道行駛小車在行駛過程中,能夠自動檢測預先設好的軌道,實現(xiàn)直道和弧形軌道的前進。若有偏離,能夠自動糾正,返回到預設軌道上來。 (2) 自動檢測軌道下的金屬片小車在按照軌道行進過程中,可以檢測埋在軌道下的金屬片,并且可以顯示檢測到的金屬片的數(shù)目。 (3) 檢測到指定點后自動停車小車可以自動檢測到指定點的標志,并且自動停車。 (4) 自動躲避障礙物小車可以自動躲避障礙物,當小車探測到前進前方的障礙物時,可以自動調整,躲避障礙物,從無障礙區(qū)通過。 (5) 自動尋引導源進入車庫 小車通過障礙區(qū)后,能夠在光源的引導下,自動進入車庫,當車體完全進入車庫后可以自動停車。 (6) 自動報警和顯示時間 小車在每次探測到金屬片后能夠自動發(fā)出聲光報警信息,顯示金屬片距起點的時間。 (7) 在規(guī)定時間內完成整個運行過程 通過參數(shù)設定可以使小車在規(guī)定的時間內完成運行任務。 本文作者創(chuàng)新觀點:利用高性能的單片機,輔以各種傳感器來檢測路面、障礙物等周圍環(huán)境,通過高可靠性的軟件設計,可以實現(xiàn)小型電動車的智能控制。此控制方法有很大的應用價值,例如可以應用于智能機器人及自動倒車、停車的設計。 參考文獻 [1]梁長垠、晏凱,基于80C196 單片機的角位移智能測量系統(tǒng)研究,微計算機信息,2006,09-2-0103-03 [2]張友德、趙志英、涂時亮,單片微型機原理、應用與實驗,復旦大學出版社,2000 年6 月 [3]胡學海,單片機原理及應用系統(tǒng)設計,電子工業(yè)出版社,2005 年8 月 [4]胡漢才,單片機原理與系統(tǒng)設計,清華大學出版社,2002 年1 月 [5]童詩白、華成英,模擬電子技術基礎,高等教育出版社,2003年12月 [6]胡壽松,自動控制原理,科學出版社,2001年2月 [7]閻石,數(shù)字電子技術基礎,高等教育出版社,2003年12月
|