葛亦斌 盛蒙蒙 馬 棟 邱 燁
[摘要]系統(tǒng)的控制部分以單片機(jī)為核心,通過對前向通道各種傳感器信號的采集、處理,較好地實(shí)現(xiàn)后向通道驅(qū)動(dòng)及轉(zhuǎn)向電機(jī)的運(yùn)動(dòng)控制和相關(guān)信息的女l理。系統(tǒng)采用AT89C52為中心控制器,實(shí)現(xiàn)電動(dòng)車的智能控制功能。整個(gè)電動(dòng)車智能控制系統(tǒng)包括:上位機(jī)實(shí)時(shí)模擬系統(tǒng),主控制系統(tǒng)和各種標(biāo)志的傳感器檢測系統(tǒng)三大部分。檢測控制系統(tǒng)通過各傳感器檢測引導(dǎo)線、障礙物和光源等控制信號,并送入單片機(jī),單片機(jī)判斷、處理后,控制MOTORI(左輪驅(qū)動(dòng)電機(jī))和MOTOR~(右輪驅(qū)動(dòng)電機(jī)),以達(dá)到控制電動(dòng)車行進(jìn)方向的目的a在正向行駛時(shí),當(dāng)傳感器檢測到路口口時(shí)進(jìn)行左轉(zhuǎn)。倒退過程中時(shí),也將行進(jìn)方向作為前方,當(dāng)檢測到躥口口時(shí)進(jìn)行左轉(zhuǎn)。
[關(guān)鍵詞]光電傳感器自動(dòng)遍歷出錯(cuò)控制
中圖分類號:TP2文獻(xiàn)標(biāo)識碼:A文章編號:1671—7597(2009)1020044--01
一、引言
小車自動(dòng)遍歷是為了讓小車能夠自動(dòng)的循跡行駛完所有的標(biāo)志點(diǎn),實(shí)現(xiàn)小車識別路線,判斷路口,選擇正確的行進(jìn)路線,最后返回到初始點(diǎn)。導(dǎo)引方式采用與地面顏色差別較大的引導(dǎo)線,使用反射式光電傳感器,驅(qū)動(dòng)電路為直流電機(jī),控制方式為單向的pwm開環(huán)控制,控制的核心是8051單片機(jī)。由于小車在行駛的路線過程中不能標(biāo)志駛過的路線,因此會(huì)有一定得重復(fù)路線。在實(shí)際中最常用的是十字路口和三岔路口,并且受到傳感器的限制,本次設(shè)計(jì)主要針對小于4個(gè)路口的線路,各個(gè)路口也必須得成直角才能被傳感器識別。小車按指定路線運(yùn)行,自動(dòng)區(qū)分直線軌道和彎路軌道,在指定彎路處拐彎,實(shí)現(xiàn)靈活前進(jìn)、轉(zhuǎn)彎、倒退等功能。
對于遍歷小車控制系統(tǒng)的設(shè)計(jì)主要有三個(gè)方面:一是控制電路;二是傳感器的安放設(shè)計(jì);三是程序算法設(shè)計(jì)。
二、控制電路
(一)直流電機(jī)驅(qū)動(dòng)電路。這里的循跡是指小車在黑色地板上循白線行走,通常采取的方法是紅外探測法。紅外探測法,即利用紅外線在不同顏色的物體表面具有不同的反射性質(zhì)的特點(diǎn),在小車行駛過程中不斷地向地面發(fā)射紅外光,當(dāng)紅外光遇到白色紙質(zhì)地板時(shí)發(fā)生漫反射,反射光被裝在小車上的接收管接收;如果遇到黑線則紅外光被吸收,小車上的接收管接收不到紅外光。單片機(jī)就是否收到反射回來的紅外光為依據(jù)來確定黑線的位置和小車的行走路線。紅外探測器探測距離有限,一般最大不應(yīng)超過3cm。
(二)光電傳感器電路。光電傳感器接受到的是微弱的電信號,必須先通過放大器電路進(jìn)行電壓的放大,然后通過光電隔離得出穩(wěn)定的高低壓信號,為了在測試的時(shí)候方便觀察,在檢測到的電壓信號中并接一個(gè)小燈。共有5個(gè)傳感器:將三個(gè)傳感器分布安裝成三角型,在兩底角下在對稱安裝兩個(gè)。
(三)硬件尋跡光電對管的安裝??紤]到設(shè)計(jì)要求,本次設(shè)計(jì)僅用7對光電傳感器就能完成設(shè)計(jì)要求,中間四對傳感器用來校正小車的尋跡路線,保證小車運(yùn)行的直線性。兩側(cè)的傳感器用來檢測小車過線,可以實(shí)現(xiàn)小車的轉(zhuǎn)彎和小車走過的方格的計(jì)數(shù)。當(dāng)車體中間通過白線時(shí),小車在相應(yīng)的坐標(biāo)方向上加一計(jì)數(shù)。車輪處的傳感器記錄小車的運(yùn)行速度和里程數(shù)。
鍵盤電路:該項(xiàng)功能主要是通過掃描鍵盤通過接受到的不同的電壓來區(qū)別不同的功能,我在這里主要用到的是2x4的鍵盤,主要有:停止,前進(jìn),后退,速度1,速度2,速度3,速度4,速度5這些功能。
動(dòng)態(tài)掃描占用了cpu的工作時(shí)間,雖然在此設(shè)計(jì)中沒有多大的影響,但在實(shí)物演示的時(shí)候有些影響小車的實(shí)時(shí)性,對精度要求較高的場合最好運(yùn)用中斷。
該項(xiàng)功能主要是通過程序讀取外界得來的信號來完成電機(jī)的不同加速,停止,和后退,觀察電機(jī)上的數(shù)字就可以看出電機(jī)的速度。
由于在protuse的仿真中沒有傳感器,只能通過按鍵來模擬檢測到的仿真信號,通過讀取鍵盤的不同值模擬傳感器的功能,主要用到4個(gè)傳感器,左邊兩個(gè),右邊兩個(gè),相互對稱。分別為左一,左二,右一,右二。當(dāng)左一和右一檢測到有信號時(shí)點(diǎn)擊開始以一定的速度減速,當(dāng)左二,右二檢測到有信號時(shí)點(diǎn)擊開始以更快的速度減速。進(jìn)行軟件模擬成功。
三、軟件設(shè)計(jì)
(一)傳感器數(shù)據(jù)處理及尋跡程序流程。我們用一個(gè)字節(jié)來代表車底的5個(gè)光電傳感器。用每一個(gè)位來代表當(dāng)前傳感器的檢測狀態(tài)。我們把小車直線行進(jìn)時(shí)分成三種狀態(tài),當(dāng)中間四個(gè)傳感器都檢測到白線時(shí),小車在跑道的正上方,這時(shí)控制兩電機(jī)同速度全速運(yùn)行。當(dāng)檢測到有一個(gè)傳感器或者同側(cè)的兩個(gè)傳感器偏出白線時(shí),小車處于微偏狀態(tài),這時(shí)將一個(gè)電機(jī)速度調(diào)慢,另一電機(jī)速度調(diào)快,完成調(diào)整。當(dāng)檢測到有三個(gè)電機(jī)偏出時(shí),小車處于較大的偏離狀態(tài),這時(shí)把一個(gè)電機(jī)的速度調(diào)至極低,另一電機(jī)全速運(yùn)行,從而在較短時(shí)間內(nèi)完成路線的調(diào)整。
用這種三級調(diào)速的尋跡算法同單純的判斷檢測到對管的位置并作出判斷的方法相比,程序思路清晰,程序執(zhí)行結(jié)果較好。
該檢測傳感器子程序如下:獲取各個(gè)傳感器的電平一>轉(zhuǎn)化為小車偏離狀況:當(dāng)偏離較大時(shí)調(diào)整函數(shù):當(dāng)未偏時(shí)直行函數(shù);當(dāng)微偏是微調(diào)函數(shù);當(dāng)十字路口時(shí)轉(zhuǎn)彎函數(shù):當(dāng)三岔路口時(shí)轉(zhuǎn)彎函數(shù)。
(二)算法實(shí)現(xiàn)。本次設(shè)計(jì)的調(diào)速主要是通過pwm進(jìn)行調(diào)速,通過改變pwm的占空比來改變電機(jī)的平均電壓,以方便進(jìn)行電機(jī)的調(diào)速。
在正向行駛時(shí),當(dāng)傳感器檢測到路口時(shí)進(jìn)行左轉(zhuǎn)。倒退過程中時(shí),也將行進(jìn)方向作為前方,當(dāng)檢測到路口時(shí)進(jìn)行左轉(zhuǎn)。
四、缺陷和限制
在軟件中已近基本能夠完成小車的自動(dòng)尋跡,但由于傳感器的限制,不能很好的看到仿真的效果,要確定它的實(shí)際特點(diǎn)就必須進(jìn)行實(shí)物的設(shè)計(jì)。在規(guī)定的線路上進(jìn)行測試。
十字路口和三岔路口必須做到直角,這樣傳感器就可以檢測到信號。供電電壓不穩(wěn)定,易導(dǎo)致小車車速不穩(wěn)定,則距離不好控制;另外路線固定不變,不能應(yīng)對意外事件,而且想要準(zhǔn)確跑完全程對于電動(dòng)車的起始位置、直線行進(jìn)參數(shù)、轉(zhuǎn)彎半徑進(jìn)行精密測量和計(jì)算,智能化差。
由于條件有限,存在傳感器誤差;電機(jī)轉(zhuǎn)速的誤差使兩個(gè)相同型號的電機(jī)的轉(zhuǎn)速可能保持完全同步。
五、系統(tǒng)出錯(cuò)處理設(shè)計(jì)
補(bǔ)救措施說明故障出現(xiàn)后可能采取的變通措施,包括:恢復(fù)及再啟動(dòng)技術(shù)說明將使用的恢復(fù)再啟動(dòng)技術(shù),使軟件從故障點(diǎn)恢復(fù)執(zhí)行或使軟件從頭開始重新運(yùn)行的方法:可進(jìn)行復(fù)位;運(yùn)用pcb板具有更好的穩(wěn)定性:運(yùn)用看門狗函數(shù),當(dāng)程序跑偏可進(jìn)行復(fù)位設(shè)置;不斷對程序的改進(jìn)。
六、分析結(jié)果討論
在軟件的設(shè)計(jì)中完成了檢測不同的傳感器信號進(jìn)行調(diào)速,和不同的鍵盤來完成電機(jī)的調(diào)速,也可以將鍵盤的函數(shù)改成無限模塊的設(shè)計(jì),就可以進(jìn)行遠(yuǎn)距離的調(diào)速。