張大為,劉 迪,趙亞范
(1.海軍航空工程學院 控制工程系,山東 煙臺 264001;2.海軍航空工程學院 基礎實驗部,山東 煙臺 264001)
目前,國內外在智能機器的研究領域已經取得了一定成果,并且開始在生產和生活中發(fā)揮著越來越重要的作用。智能機器是具有簡單智能的自動機器,用智能機器代替人的工作有很多優(yōu)點。智能機器不僅可以自動完成任務,而且與人相比它的動作準確可靠、精度高、無疲勞感,在高精度、高強度的工作場所是代替人類勞動的首選機器[1]。尤其在強輻射、嚴重污染和高溫、高寒、高壓等環(huán)境下可以用智能機器代替人類工作,完成各種危險復雜的任務。智能機器在我們的生活中有著越來越重要的作用。在特定的領域和場所智能機器代替人的工作甚至可以做得比人好。
隨著生產的發(fā)展和生活水平的提高,要求我們加大對智能機器的研究。因此,加大對智能機器的研制開發(fā)非常重要。在智能機器中智能汽車又是一個重要的分支。我們設計制作的簡易智能小車是智能機器的簡化模型,是智能機器的初級階段,對以后深入研究智能機器會有一定的幫助。
簡易智能小車的設計目的是使小車具有簡單智能,可以完成自動尋跡、測量路程、檢測金屬、躲避障礙物、計數計時、報警等任務。小車硬件組成分為驅動轉向模塊、信號采集模塊和報警顯示模塊3部分。驅動轉向模塊主要解決小車動力部份的問題,包括電源、電機、轉向方式等。信號采集模塊主要完成采集信號的任務,主要解決各種傳感器的制作和使用問題。報警和顯示模塊主要解決聲光報警和顯示的問題[2]。系統(tǒng)以單片機為核心,單片機采集傳感器信號,再根據信號變化對執(zhí)行器輸出相應的控制信號對小車進行相應調整。
根據設計任務要求及功能實現的分析,畫出系統(tǒng)的總體功能框圖,框圖如圖1所示。整個系統(tǒng)可分為幾個基本的模塊,根據不同的模塊選擇相應的器件,實現模塊的基本功能??刂菩酒捎肁T89S52單片機。AT89S52單片機是一種低功耗、高性能CMOS 8位微控制器,具有8 k系統(tǒng)可編程存儲器。使用Atmel公司高密度非易失性存儲器技術制造,與工業(yè)80C51產品指令和引腳完全兼容[3]。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。AT89S52有5個中斷源和3個定時計數器。
圖1 系統(tǒng)的總體功能框圖Fig.1 Block diagram of system overall function
小車從起跑線出發(fā)能夠沿引導線駛過直線區(qū),再經過彎道區(qū)到達5 s停車點。停車5 s之后在光源的引導下穿過障礙區(qū)駛入車庫。整個行程用時不得超過90 s,當行駛時間達到90 s時不論行駛到何處都要馬上停車。而且,在直線區(qū)的白紙下面放置了1~3塊寬度為15 cm、長度不等的鐵片。要求小車經過時必需檢測到鐵片,發(fā)出聲光報警并顯示鐵片中心到起跑線的距離[4]。電動車經直線區(qū)、彎道區(qū)到達5 s停車點(停車點下埋有邊長為15 cm的正方形薄鐵片)停車5 s鐘。再次起動時要求小車以光源為前進方向,穿過障礙區(qū)順利駛入車庫。
采用直流電動機作為轉向電動機,通過電動機的正反轉來控制轉動方向。這種設計電路結構簡單、可靠,成本低,易于實現控制,但轉向角度不可調,每一次調整都是以最大的調整角度進行的,所以小車總處于調節(jié)方向的狀態(tài),左右不停地轉向。左右不停的轉動在快速前進的時候就容易導致調節(jié)不及時和振蕩劇烈,但是如果適當降低車速可以得到滿意的調節(jié)效果。構成H橋電路可以用達林頓管,也可以用繼電器。如果使用達林頓管工作頻率可以很高,工作電流不能很高,另外要采用必要的光電隔離,否則很容易對單片機產生干擾[5]。如果使用繼電器那么工作的頻率將受到限制,工作電流與控制端無關。繼電器的另一特點是自身實現了強電、弱電的隔離,有利于防止干擾提高電路穩(wěn)定性。
繼電器1和繼電器2的控制端分別為P3.1和P3.2。如果控制端都為低電平時,繼電器1、繼電器2的開關k1、k2都為常閉狀態(tài),都與電源負極接通。電動機自身形成閉合回路,無電流通過,電機不轉動。如果控制端P3.1為高電平,P3.2為低電平。繼電器1的開關k1動作,與電源正極相連。繼電器2的開關k2為常閉狀態(tài),接通電源負極。電動機有正向電流通過,正向轉動,帶動小車前輪左轉。如果控制端P3.1為低電平,P3.2為高電平。繼電器1的開關k1為常閉狀態(tài),接通電源負極。繼電器2的開關k2動作,與電源正極相連。電動機有反向電流通過,反向轉動,帶動小車前輪右轉。如果控制端P3.1和P3.2都為高電平。繼電器1、2的開關k1、k2都與電源正極相連,電動機形成閉合回路,無電流通過,電機不轉動。整個過程如圖2所示。
圖2 轉向電機電路圖Fig.2 Circuit diagram of steering motor
當小車行進到軌跡的盡頭時,要轉入避障狀態(tài),就需要檢測到終點,由控制器發(fā)出指令,進入相應的程序。采用檢測金屬片的方法。只要在運行軌跡的終點放置一塊鐵片,再用金屬傳感器檢測金屬片就可以了,電路簡單,不會占用很多CPU資源??紤]到金屬一般都是導體,根據電磁場理論可知,在受到變化的電磁場作用的任何導體,都會產生電渦流[6]。電感式接近開關由LC高頻振蕩器和放大處理電路組成,金屬物體接近傳感器的振蕩感應頭時,物體內部產生電渦流,當電渦流作用于接近開關時,接近開關振蕩能力衰減,內部電路的參數發(fā)生變化,由此識別出有無金屬物體接近,進而控制開關的通和斷,并以電信號脈沖的形式送入單片機。電感式接近開關內部工作原理圖如圖3所示。
圖3 電感式接近開關內部工作原理圖Fig.3 Internal operating principle diagram of inductive proximity switch
當小車檢測到金屬由循跡程序進入到避障程序及由避障程序進入到遙控程序時均會發(fā)出聲音報警,通常選擇蜂鳴器作為聲音報警器件。蜂鳴器是一種一體化結構的電子訊響器,采用直流電壓供電,廣泛應用于計算機、打印機、復印機、報警器、電子玩具、汽車電子設備、電話機、定時器等電子產品中作發(fā)聲器件。蜂鳴器主要分為壓電式蜂鳴器和電磁式蜂鳴器兩種類型,在電路中用字母“H”或“HA”表示。壓電式蜂鳴器主要由多諧振蕩器、壓電蜂鳴片、阻抗匹配器及共鳴箱、外殼等組成。有的壓電式蜂鳴器外殼上還裝有發(fā)光二極管。多諧振蕩器由晶體管或集成電路構成。當接通電源后 (1.5~15 V直流工作電壓),多諧振蕩器起振,輸出1.5~2.5 kHz的音頻信號,阻抗匹配器推動壓電蜂鳴片發(fā)聲。電磁式蜂鳴器由振蕩器、電磁線圈、磁鐵 、振動膜片及外殼等組成。接通電源后,振蕩器產生的音頻信號電流通過電磁線圈,使電磁線圈產生磁場。振動膜片在電磁線圈和磁鐵的相互作用下,周期性地振動發(fā)聲。壓電式蜂鳴器和電磁式蜂鳴器又分別有源型和無源型兩種。有源蜂鳴器內部自帶振蕩源,電路接通后便會發(fā)出聲音;無源蜂鳴器需要外部輸入脈沖的驅動下才能夠發(fā)出聲音,且聲音隨脈沖頻率的不同而改變,通過輸入特定頻率的脈沖可以彈奏出美妙的音樂[7]。系統(tǒng)只需要發(fā)出聲音報警即可,故選用有源蜂鳴器。
在小車行進時,需要顯示當前的工作狀態(tài),顯示裝置就必不可少了。采用點陣型LCD顯示。點陣型LCD功能強大,顯示信息量大,可以保證良好的用戶模式。它具有顯示質量高、體積小、重量輕、功耗低、無輻射危險、平面直角顯示以及影像穩(wěn)定不閃爍等優(yōu)勢,且可視面積大,圖面效果好,分辨率高,抗干擾能力強。
在設計流程時,充分考慮到小車的各種傳感器的合理搭配,相互協調,互相配合,使小車運行平緩,通過對繼電器組成的H橋電路的控制來完成小車后輪的驅動和前輪轉向,在設定的路面環(huán)境下,使小車能夠不超調嚴重。檢測鐵片和障礙物通過兩個外部中斷來完成,判斷B點是采用內部定時器來完成的,對小車的路面較正是通過T2計時器產生的中斷子程序完成。其流程圖如圖4所示。在小車啟動以后,同時啟動計數器和計時器,對小車進行計時并對小車后輪的傳感器檢測到的脈沖進行計數,同時打開兩個外部中斷和定時器的中斷,完成初始化。接下來查詢標志位的狀態(tài),如果檢測到鐵片則產生外部中斷,調用中斷子程序,完成鐵片的計數同時置位標志位,進入路程計算程序并調用BCD碼和聲光顯示。如果T1沒有中斷則繼續(xù)循環(huán)查詢,否則進入第二部分查詢,和第一部分不同的是這次再檢測到鐵片時小車要執(zhí)行的是停車5 s鐘再啟動。再去查詢光源的狀態(tài),調用尋光子程序。當再次發(fā)生中斷時CPU首先判斷是障礙物產生的中斷還是車庫產生的中斷,如果是障礙物產生的中斷就調用避開障礙物的子程序,如果是車庫則停車。小車完成題目設計要求。
小車的各項行駛指標都達到了設計要求:轉彎靈敏,速度控制靈活。紅外傳感器[8]判斷黑線準確干擾小。檢測金屬及時準確。路程測量誤差小,顯示清楚穩(wěn)定,亮度高。尋找光源準確靈敏,作用距離遠。能夠發(fā)現并躲避障礙物。停車位置符合要求,行駛全程用時小于90 s。各個模塊在性能測試中工作良好,證明了選定方案是可行的。通過對改進前后的方案進行比較,發(fā)現改進是必要的,合理的,改進效果是顯著的。在硬件上,使用了很多開關式傳感器,避免了A/D轉換的復雜性。用繼電器代替達林頓管則解決了電機驅動的效率問題。用兩個受光管代替可變電阻與受光管的組合提高了傳感器的適應能力。AT89S52單片機芯片運行平穩(wěn),抗干擾能力強??刂菩≤囖D動方向的前輪轉動方向上,如采用步進電機控制可更精確。總體能滿足系統(tǒng)設計要求。
圖4 程序流程圖Fig.4 Flow chart of program
[1]張國良,敬文斌,劉延飛,等.自主移動機器人的設計與制作[M].西安:西安交通大學出版社,2008,5.
[2]毛謙敏.單片機原理及應用系統(tǒng)設計[M].北京:國防工業(yè)出版社,2005,8.
[3]董春麗.傳感器與檢測技術[M].北京:機械工業(yè)出版社,2009,1.
[4]陳松,李立國.智能模型車簡析[J].電子產品世界,2008(8):34-36.CHEN Song,LI Li-guo.Analysis of the intelligent model car[J].The Word of Electronics Products,2008(8):34-36.
[5]王國宏,陸大金,彭應寧.多傳感器信息融合及應用[M].北京:電子工業(yè)出版社,2007,12.
[6]方建軍,何廣平.智能機器人[M].北京:化學工業(yè)出版社,2004,2.
[7]徐建軍.MCS-51系列單片機應用及接口技術[M].北京:人民郵電出版社,2003,6.
[8]李雪霞,何扣芳.基于MCS-51單片機的智能機器人迷宮車設計[J].現代電子技術,2010(16):7-10.LI Xue-xia,HE Kou-fang.A smart car for maze based on MCS-51 single chip computer[J].Modern Electronics Technique,2010(16):7-10.