摘 要:介紹利用反射式紅外光電傳感器實現(xiàn)小車自動尋跡導航的設計與實現(xiàn)以及小車的一種尋跡算法。自動尋跡是智能小車(Smart Car)機器人系統(tǒng)的重要組成部分,其用實現(xiàn)小車自動識別路徑。在實驗中采用與白色地面色相差很大的黑色線條引導小車按照既定路線前進,系統(tǒng)控制核心采用飛思卡爾的MC9S12DG128B單片機,系統(tǒng)驅(qū)動采用控制方式為PWM的直流電機。實驗證明此方案可行并且可靠。該技術可以應用于無人駕駛機動車、無人生產(chǎn)線、倉庫、服務機器人等領域。
關鍵詞:自動尋跡;紅外傳感器;PWM方式;數(shù)據(jù)處理
中圖分類號:TP212文獻標識碼:B
文章編號:1004-373X(2008)22-192-03
Design of the Sensor Module in Automatic Track FindingModel Car
WANG Jing,WENG Xianyao,LIANG Yezong
(College of Automation,Wuhan University of Technology,Wuhan,430070,China)
Abstract:This article introduces the design and execution of automatic track finding navigation car realized by reflective infrared photoeletric sensor and its algorithm.The automatic trak fiding is an important function of smart-car robot system,to realize car automatic identification path.In the experiment,taking use of the black guiding wire whose color distinguishes from the white background to guide the car to move along the given line automatically.The MC9S12DG128B from freescale single chip microcomputer is used for the control core in this system,and the PWM direct current electromotor for the motive force or power system.The experiment proves that this project is feasible and credible.This technology could serve to driverless mobile,unmanned producing lines,warehouse,service robot and etc.
Keywords:automatic track finding;infrared sensor;PWM;data processing
1 引 言
隨著科學技術的發(fā)展,機器人的應用已經(jīng)遍及機械、電子、冶金、交通、宇航、國防等領域。利用傳感器進行自動導航的機器人已得到初步應用。但傳感器CCD價格較高、體積較大、數(shù)據(jù)處理復雜,因此在按路面畫好既定路線行走的自尋跡機器人設計中,紅外反射式傳感器以其體積小、價格低、數(shù)據(jù)處理方便顯得更有優(yōu)勢。因此該設計采用紅外反射式傳感器,成功實現(xiàn)了小車的尋黑線行走。
2 傳感器的選擇和介紹
本文采用型號為ST188的反射式紅外光電傳感器。其內(nèi)部電路如圖1所示。即由1個紅外發(fā)射管(發(fā)射器)和1個光電二極管(接收器)構(gòu)成。紅外發(fā)射管發(fā)出的紅外光在遇到反光性較強的物體(表面為白色或近白色)后被折回,其被光電二極管接收到,引起光電二極管光生電流的增大。將這個變化轉(zhuǎn)為電壓信號,就可以被處理器接收并處理,進而實現(xiàn)對反光性差別較大的2種顏色(如黑白兩色)的識別。
圖1 ST188的內(nèi)部電路示意圖
3 具體設計與實現(xiàn)
單片機對傳感器的檢測信號的處理有連續(xù)和離散2種方式。在實際中連續(xù)控制比離散控制更具優(yōu)勢。在離散控制中檢測到的是離散的信號,舵機的控制也只能是針對離散量進行控制,這一般在低速的情況下是適用的;在高速情況下過于離散的控制將造成系統(tǒng)控制緩慢、滯后。所以對小車進行連續(xù)控制很有必要。而一般認為傳感器分辨黑線白線時只能輸出0和1兩種信號,即黑線低電壓,白線高電壓,通過這兩種信號來對黑白進行區(qū)分。然而通過測量可知,其輸出電壓的大小與傳感器距離黑色路徑的垂直距離有關,距黑線越近,則電壓越低;距黑線越遠,則電壓越高。因此,這里把傳感器所檢測到的信號接入單片機的模數(shù)轉(zhuǎn)換端口,具體電路如圖2所示。
圖2 傳感器電路圖
3.1 電路中元件和參數(shù)的選擇
(1) R1阻值的選擇
由于Q2的Ib約為10 mA就能正常工作,所以可以取R1為510 Ω,則根據(jù)電路算得此時Q2的Ib=5 000/510=10 mA。
(2) R2阻值的選擇
R2即接收管的負載電阻,其選擇是至關重要的,首先因為單片機的每一路A/D轉(zhuǎn)換時間約為7 ms,因為有7路傳感器,則7路的轉(zhuǎn)換時間至少為49 ms。R2取的越大則白區(qū)的輸出越高,這樣傳感器輸出的變化范圍就越大,這樣看似R2越大越好。但通過實際的測試可知,導通發(fā)射管發(fā)光后,傳感器的輸出電壓的上升需要一定的時間,加的負載電阻越大,所需的上升時間就越大。但是PWM的有效持續(xù)時間又不能太長,應限制在100 ms左右,否則容易損壞傳感器。這樣就對R2的取值造成了限制。在實踐中,當R2取2 kΩ時,其白區(qū)電壓大約為1.2 V,黑線大約為200 mV,上升時間大約為40 ms,總的加起來不過100 ms,所以可行。但是必須注意在程序中當開通了發(fā)射管發(fā)光后,必須同樣延時40 ms才能開始采樣,這樣才能得到正確的結(jié)果。
(3) R5阻值的選擇
由于Q1通過的電流為70 mA以上,而Q1的hfe約為200,所以R5選擇1 kΩ這一典型值就以驅(qū)動Q1,此時Q1的Ib=5 000/1 000=5 mA。
3.2 傳感器的PWM控制信號
這里所設計的紅外傳感器工作在其極限狀態(tài),即采用脈沖大電流發(fā)光的方式。由于紅外傳感器的發(fā)光強度與其通過的電流有關,電流越大則發(fā)光越強,且發(fā)光越強則作用的距離越遠。但是查資料得ST188型傳感器的極限工作電流為50 mA,如果電流長時間大于此值,則傳感器很可能會損壞。所以采取脈沖發(fā)光的方式,用PWM來控制傳感器發(fā)射管的導通和關閉。通過實驗,F(xiàn)ront-PWM的頻率為1 kHz,低電平的占空比為10%(本電路是低電平有效導通的),低電平的持續(xù)時間為100 ms。這樣傳感器的瞬時電流就可以提高到500 mA左右。因為PWM的占空比僅為10%,即使其瞬時電流為500 mA,其平均電流也僅為50 mA,這樣就不會對傳感器造成損壞,實踐證明100 ms是安全的,如果過長則也可能會損壞傳感器。
3.3 傳感器的排列
本次設計采用單排共7個紅外傳感器等間距排列的方式,傳感器間隔為3.7 cm,離地高度為8 cm,傳感器與地面成一定的夾角,以此來提高前瞻性。如此設計是因為實際上紅外傳感器發(fā)出的紅外光是一些錐形的光線,而不是一條直線(如圖3所示)。所以通過抬高傳感器,使傳感器與地面有一定的距離,則傳感器的敏感距離就會加長,成線性變化。即距黑線越近,則電壓越低;距黑線越遠,則電壓越高,而不是在黑線上輸出就為0,在白線上就為1。實踐中的測試證明傳感器間隔為3.7 cm,高度為8 cm時,各傳感器間沒有出現(xiàn)死區(qū)。而且也便于安裝,所以這樣的布置方式是可行的。另外由于傳感器制作工藝的差異,每個傳感器的輸出都是不一樣的,為了簡化算法,可以選擇一些輸出特性相對一致的傳感器。
圖3 傳感器的發(fā)光示意圖
4 傳感器的數(shù)據(jù)處理
首先,要通過測試得知傳感器的敏感距離即傳感器的敏感點距黑線中心的距離。傳感器的輸出距黑線越近,則電壓越低;距黑線越遠,則電壓越高。但是當傳感器距離黑線到達某一距離后,向遠離黑線的方向移動時,其輸出電壓已經(jīng)沒有變化了,即已經(jīng)達到飽和,達到白區(qū)的最大電壓。此時需要對每個傳感器進行測試,把它們的這個敏感距離記下來,以供程序算法用。本次設計所采用的傳感器的敏感距離大約為3.7 cm,這個敏感距離其實就可以得出在算法中的它們的坐標。
設MAX為傳感器在道路白區(qū)的最大輸出,MIN為黑區(qū)的最小輸出,各傳感器的敏感距離約為3.7 cm,為了便于計算采用37表示,設此時傳感器的輸出為OUT。于是,把距離作為橫坐標,把傳感器的輸出作為縱坐標模擬成三角形(如圖4所示)得出以下比例關系:
OUT-MINx-0=MAX-MIN37-0
即:
x=OUT-MINMAX-MIN×37
其中求得的x為黑線中心與本傳感器的距離。
圖4 傳感器輸出數(shù)據(jù)關系數(shù)據(jù)圖
舉例說明,設各傳感器的敏感點為3.7 cm,MAX=80,MIN=10,若此時傳感器F的輸出OUT為50,則有x=21,又因為75-21=54,即5.4 cm。實際上所求得的21在坐標上可能有2種情況:即可能出現(xiàn)在位置a或b,就是75-21或75+21。要確定是這兩種情況中的哪一個,可以根據(jù)F傳感器兩旁的傳感器的輸出情況來判斷。顯然,當E傳感器的輸出比G傳感器的輸出小時,黑線中心在a點,反之,黑線的中心在b點。所以,要先找出相對輸出最小的傳感器即距離黑線中心最近的傳感器,其中相對輸出值用OUT-MINMAX-MIN計算。
5 MCU控制與算法實現(xiàn)
系統(tǒng)控制由微處理器完成,微處理器采用飛思卡爾公司的單片機MC9S12DG128B,當單片機通過A/D口讀入傳感器的信號后即可判斷小車當前的行駛狀態(tài),具體流程如圖5所示。
6 結(jié) 語
本文給出了自動尋跡小車傳感器模塊設計的全過程,經(jīng)試驗驗證,用光電傳感器作為機器人的近距離感覺傳感器是可行的。
在非強光直射的條件下有良好的可靠性和抗干擾能力,而傳感器的探頭尺寸僅為幾個毫米,特別適合小型化,在尋跡領域,反射式紅外光電傳感器能較好的實現(xiàn)尋跡要求,且成本低廉。這為進一步研究機器人自動行走技術提供了很大借鑒作用。
圖5 程序流程圖
參考文獻
[1]劉迎春.傳感器原理設計與應用[M].長沙:國防科技大學出版社,1992.
[2]康華光.電子技術基礎:模擬部分[M].北京:高等教育出版社,1999.
[3]卓晴,黃開勝,邵貝貝,等.學做智能車:挑戰(zhàn)“飛思卡爾”杯[M].北京:北京航空航天大學出版社,2007.
[4]陳杰,黃鴻.傳感器與檢測技術[M].北京:高等教育出版社,2002.
[5]劉迎春.傳感器原理設計與應用[M].長沙:國防科技大學出版社,1992.
[6]陳杰,黃鴻.傳感器與檢測技術[M].北京:高等教育出版社,2002.
[7]王化詳,張淑英.傳感器原理及應用[M].天津:天津大學出版社,1999.
[8]清源科技.Protel 2004電路原理及PCB設計[M].北京:機械工業(yè)出版社,2005.
[9]吳麒.自動控制原理(上冊)[M].北京:清華大學出版社,2004.
[10]金以慧.過程控制[M].北京:清華大學出版社,1996.
[11]龔建偉.輪式移動機器人航向跟蹤預估控制算法[J].機器人,2001,23(3):193-196,279.
作者簡介 王 晶 女,在讀碩士研究生。研究方向為汽車電子信息與控制技術。
翁顯耀 男,1982年畢業(yè)于武漢工學院電氣自動化專業(yè),副教授。
梁業(yè)宗 男,在讀碩士研究生。研究方向為汽車電子信息與控制技術。
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文