甘家梁,季俊杰
(1.湖北工程學院 計算機與信息科學學院,湖北 孝感432100;2.重慶大學 自動化學院,重慶400044)
基于紅外傳感器的瑞薩智能車的設計
甘家梁1,季俊杰2
(1.湖北工程學院 計算機與信息科學學院,湖北 孝感432100;2.重慶大學 自動化學院,重慶400044)
摘要:以“瑞薩杯”智能小車比賽為應用平臺,用16位單片機R8C/38A為核心單元,設計了一個基于紅外光電傳感器實現(xiàn)路徑識別的智能尋跡小車系統(tǒng)。該系統(tǒng)采用8個“一字排”的紅外激光傳感器探測路徑,能快速準確地采集路徑信息,并結(jié)合PID閉環(huán)控制算法控制舵機的轉(zhuǎn)向和驅(qū)動電機的速度,使小車能夠沿著固定的跑道穩(wěn)定行駛。
關(guān)鍵詞:紅外傳感器;自主循跡;智能車;單片機R8C/38A
中圖分類號:TP368.1
文獻標志碼:碼:A
文章編號:號:2095-4824(2015)06-0071-04
收稿日期:2015-08-25
基金項目:湖北省高等學校省級教學研究項目(2014376);湖北工程學院教學研究指導項目(2014B03)
作者簡介:甘家梁(1966-),男,湖北安陸人,湖北工程學院計算機與信息科學學院副教授,碩士。
近年來,智能電動汽車的研究和發(fā)展成為熱門。隨著智能控制理論與技術(shù)在交通運輸中被越來越多地應用,國際上正在形成智能電動汽車研究、設計及開發(fā)的熱潮,21世紀的汽車概念即將發(fā)生根本性的變化。電動智能小車涵蓋了汽車機械與電子、計算機科學技術(shù)、傳感器與檢測技術(shù)、模式識別技術(shù)、人工智能與控制技術(shù)、交通與能源等多個學科。為了提高學生的自主創(chuàng)新能力、機械制作能力和編程技巧,并培養(yǎng)與開發(fā)電動智能汽車相關(guān)人才的潛質(zhì),由教育部主導的“瑞薩超級MCU模型車大賽”已經(jīng)主辦了6屆。筆者所在學校學生參加了第5屆和第6屆“瑞薩超級MCU模型車大賽”,取得了比較優(yōu)秀的成績。
1系統(tǒng)總體結(jié)構(gòu)設計
“瑞薩杯”智能小車由動力驅(qū)動系統(tǒng)、信號檢測與信息處理模塊、MCU 最小系統(tǒng)及電源驅(qū)動電路、人機交互系統(tǒng)四個主要部分組成,其他構(gòu)成部件可以根據(jù)競賽的需要擴展,如紅外遙控處理電路、存儲電路等,其硬件結(jié)構(gòu)如圖1所示[1]。智能小車維持基本運行只需動力系統(tǒng)、信號檢測與信息處理模塊、MCU 最小系統(tǒng)以及驅(qū)動電路即可。
圖1 “瑞薩杯”智能小車硬件結(jié)構(gòu)圖
動力系統(tǒng)由控制運動方向的舵機、驅(qū)動電機以及提供動力的電源組成。驅(qū)動電機普遍采用直流電機驅(qū)動智能車行駛。舵機采用標準舵機,使用自制的轉(zhuǎn)向系統(tǒng)控制智能車行駛方向。電源為可充電電池組[2-3]。
系統(tǒng)以R8C/38A單片機控制器為核心,配合有紅外光電傳感器、編碼器、控制方向的舵機、驅(qū)動電機以及相應控制和驅(qū)動電路。同時對機械結(jié)構(gòu)進行一定的設計改進,在保證智能車可靠運行的前提下,設計簡潔合適的電路并選擇恰當?shù)目刂扑惴ǎ诒WC模型車在規(guī)定的跑道上自主循線運行穩(wěn)定的前提下提高速度。
季俊杰(1991-),男,湖北荊州人,重慶大學自動化學院碩士研究生。
本系統(tǒng)主要分機械、硬件電路和軟件三部分進行設計。硬件主要有電源模塊、紅外傳感器數(shù)據(jù)采集模塊、直流電機PWM驅(qū)動模塊、組合邏輯設計、單片機控制模塊等;軟件主要有舵機轉(zhuǎn)向的控制程序、循跡程序和速度PID控制程序等。
1.1單片機控制模塊
控制器采用瑞薩16位單片機R8C/38A設計,智能車CPU主板一般每屆都由組委會提供,而且型號指定,參數(shù)固定,具有控制簡單、功耗低、性能出眾、供電方便等優(yōu)點。
單片機R8C/38A微控制器整合了R8C CPU的核心,擁有高效率的指令與1 MB的地址空間,能夠高速地執(zhí)行指令。此外,CPU核心擁有高速運算處理的乘數(shù),功耗低,支持操作模式,允許額外的電源控制。該微控制器的設計最大限度地發(fā)揮EMI / EMS(電磁干擾/電磁靈敏)性能。同時,它還擁有許多外設功能,包括多功能定時器和串行接口,R8C/38A有支持后臺操作(BGO)功能的數(shù)據(jù)閃存(1 KB×4塊)[4]。
單片機R8C/38A微控制器是整個模型車的核心,對該芯片程序的優(yōu)化處理是提高模型車性能的關(guān)鍵,它的主要作用是按照比賽規(guī)則的要求編寫控制程序,通過控制程序?qū)δP蛙嚨亩鏅C、驅(qū)動電機發(fā)出控制指令,從而實現(xiàn)MCU模型車按照賽道上預先設置的標志自動尋跡運動。
CPU主板的結(jié)構(gòu)較復雜,其核心控制部分為R8C/38A芯片,該芯片共有80個引腳,其中有10個輸入和輸出接口,分別是接口0~9。這些輸入輸出接口中大部分是8位的接口,其中有2個是少于8位的接口,通過對接口的編程實現(xiàn)模型車運動軌跡的控制。接口控制程序的輸入需要通過一個導入開關(guān)來實現(xiàn)。盡管R8C/38A芯片上有10個接口,但是整個模型車控制系統(tǒng)只需用到兩個接口,即P2接口和P5接口。
1.2系統(tǒng)電源供電方案
智能小車的電源系統(tǒng)由三個部分組成,分別是單片機控制系統(tǒng)、傳感器供電系統(tǒng)、舵機和驅(qū)動電機供電系統(tǒng)。前兩者為5 V供電,電機驅(qū)動電路為7~12 V供電。整個智能小車系統(tǒng)的動力電源采用8節(jié)AA電池進行組合,電壓可以達到9.6 V。在智能小車調(diào)試階段,經(jīng)過反復多次試驗,加載9.6 V的電壓能夠滿足整個系統(tǒng)的要求,但是CPU的正常工作電壓在4.5~5.5 V之間。因此,為了保證CPU能夠正常運行,需要在電路中串接一個三端調(diào)節(jié)器(LM2940-5)將電壓限定為5 V,以滿足CPU正常工作。如果CPU的供電電源高于5.5 V,CPU將會損壞。反之,如果CPU的供電電壓低于4.5 V,CPU將會復位??刂品较虻乃欧鏅C需要6 V的恒定電壓,因此采用一個三端的穩(wěn)壓芯片LM350及附屬電路對伺服舵機的供電電壓進行限制[4-6]。電源供電方案如圖2所示。為了防止電壓和電流的突變引起智能小車在運動中產(chǎn)生“抖動”,在各個電源電路中,根據(jù)調(diào)試情況需要并聯(lián)電容或串聯(lián)電感。
圖2 系統(tǒng)的供電方案圖
1.3驅(qū)動直流電機PWM驅(qū)動模塊
智能車的驅(qū)動系統(tǒng)一般由控制器、電機和電機驅(qū)動模塊三個主要部分組成。智能車的驅(qū)動不僅要求電機驅(qū)動系統(tǒng)具有高可靠性、寬調(diào)速范圍,高轉(zhuǎn)矩重量比,而且電機的轉(zhuǎn)矩——轉(zhuǎn)速特性受電源功率的影響,這就需要驅(qū)動具有盡可能寬的高效率區(qū)。直流電機具有良好的線性調(diào)速特性,控制方式采用脈沖寬度調(diào)制( Pulse Width Modulation,PWM)方法。設計中采用兩片BTS7960芯片組成H型雙極模式PWM控制電機電路。BTS7960是一款智能高集成功率芯片,主要應用于電機驅(qū)動的大電流半橋電路,通過改變單片機輸出到芯片控制端的PWM 波的占空比來控制供給電機電壓的大小,從而達到控制電機的轉(zhuǎn)動速率和電機的正反轉(zhuǎn),以較好地實現(xiàn)智能車在直道上的加速行駛,在進入彎道時急減速入彎道等電機驅(qū)動功能。直流電機驅(qū)動原理如圖3所示。
圖3 PWM控制H橋式雙極型直流電機驅(qū)動原理圖
由圖3可知,PWM控制H橋式雙極型直流電機驅(qū)動電路由四個絕緣柵雙極晶體管(IGBT)和各一個續(xù)流二極管反并聯(lián)組成。相對應橋臂上的兩個晶體管分為一組, 即V1和V4一組, V2和V3為一組。系統(tǒng)工作時晶體管V1和晶體管V4的通斷狀態(tài)互補,晶體管V2和晶體管V3的通斷狀態(tài)互補,即基極的控制驅(qū)動信號ub1 =ub4, ub2 =ub3 = - ub1。由于晶體管各自反并聯(lián)了一個續(xù)流二極管,因此PWM控制的H橋式雙極型功率轉(zhuǎn)換電路工作時允許電流反向流通,從而保證流過直流電機的電樞電流始終是連續(xù)的。即使直流電機不轉(zhuǎn)動,電樞兩端的瞬時電壓也不為零,而是寬度相等的正、負脈沖電壓,這個交變的電流通過電機的電樞回路,會使電動機產(chǎn)生制動力,有利于減小靜摩擦。
1.4紅外傳感器控制模塊
紅外傳感器控制模塊的主要功能是速度檢測和道路識別。紅外傳感器采用S7136傳感器。S7136傳感器主要由時鐘頻率振蕩電路、產(chǎn)生時鐘信號的電路、標準電壓供電電路、驅(qū)動發(fā)光二極管正常工作的驅(qū)動電路、緩沖放大電路、信號處理電路、比較電路、輸出電路等組成。智能小車上的傳感器電路由8個S7136等距離一字排列組成[7]。紅外傳感器控制模塊和MCU之間通過IO連接。這種連接方式可以使信息傳遞直接、快速。單片機控制器可以靈活配置控制信號讀取周期,保證信息交換的實時性,使得系統(tǒng)資源得到合理的利用。
紅外傳感器數(shù)據(jù)處理模塊主要由信號采集和信號處理兩部分組成,利用“白色反射光線,黑色吸收光線”的原理。每個紅外傳感器S7136都可以識別賽道上的黑白顏色,并能將其轉(zhuǎn)化為數(shù)字信號“0”或“1”輸出到控制系統(tǒng)單片機上,同時發(fā)光二極管能顯示傳感器檢測到的狀態(tài)。如果傳感器發(fā)射裝置發(fā)射的光照射到賽道上白色集中的地方,光線會產(chǎn)生全反射,并被傳感器的接收器接收,處理器認為是“0”信號,傳感器輸出數(shù)字信號“0”。同時,具有指示發(fā)光二極管工作狀態(tài)的作用。同理,如果傳感器發(fā)射器發(fā)射的光照射到賽道上黑色集中的地方,光線不能產(chǎn)生全反射,會被全部吸收,處理器認為是“1”信號,此時傳感器輸出數(shù)字信號“1”,發(fā)光二極管就不工作。通過紅外傳感器測量電路對路面和車速信號進行檢測,能讀取賽道路面完整的信息,利用單片機控制器處理這些信息,為智能小車在運動過程中要產(chǎn)生相應動作提供必要依據(jù),并基于路徑標記線結(jié)構(gòu)化信息模式匹配的尋跡控制策略對小車進行尋跡控制。
2智能小車系統(tǒng)軟件設計
瑞薩超級MCU智能車比賽組委會為了提高學生實踐的能力和培養(yǎng)大學生的興趣,增加了比賽的難度。比賽規(guī)則規(guī)定了賽道的類型、拐彎半徑、直道的長度等元素。賽道由直道、大彎道、小彎道、特殊賽道如S型彎、直角彎、換道等組成,并限制了賽道的寬度只有30 cm,因此小車在運動過程中的空間回旋余地受到了很大的限制。其次是賽道不是緊貼地面,距離地面大約2 cm的高度,當賽車在運動過程中一旦沖出賽道時就很難再返回賽道繼續(xù)運行,如果借助人力返回賽道,在比賽中是不允許的。這一系列的約束條件導致賽道容錯度變小,但是從軟件編寫角度上看,上述限制在一定程度上減少了編寫控制程序的復雜性。
智能小車在比賽的過程中,對道路形狀做出正確判斷是決定小車實現(xiàn)自動尋跡的重要因素,以實現(xiàn)最短時間沿特定軌道完成比賽全程。如果要取得好的成績必須又快又穩(wěn)。“快”是指智能車速度要快,以求最短時間跑完全程,而“穩(wěn)”是指智能車運行過程要穩(wěn),不能沖出賽道,因此在編程時要考慮將誤差必須控制在一定范圍內(nèi),保證智能車在賽道上正常運行。在編寫智能小車控制程序時,一方面要考慮智能小車隨賽道的變化而不斷改變方向,如進入彎道、十字道時,速度要降下來,要求隨動性好。另一方面,在直道上時,速度要提上來,保證平穩(wěn)快速地運行,要求具有一定的穩(wěn)定性。智能小車在整個比賽運動的過程中,必須檢測出一些特殊的路面標志,如比賽起止線、各種類型的彎道標識線、換道標識線等,并能使相應的控制機構(gòu)快速響應,執(zhí)行相應的特殊動作,要求識別可靠性高,不能漏檢,更不能錯檢。因此,在設計與調(diào)試控制算法時,既要滿足智能小車在運動時賽道有變化情況下的動態(tài)特性,又要滿足賽道無變化時的快速穩(wěn)定性,而且必須滿足對特殊賽道標識的準確檢測[8]。
智能小車控制程序的設計必須緊密配合小車的機械動力裝置、電路系統(tǒng)的要求、賽道各方面的信息進行總體考慮,在調(diào)試過程中不斷地進行修正,才可能在正式比賽中跑出比較好的成績。軟件設計遵循程序模塊化原則,力求各模塊程序調(diào)用關(guān)系簡單,以便于代碼編寫、調(diào)試和維護。
智能小車在賽道上行進的過程中,控制系統(tǒng)要綜合分析傳感器所反饋的道路走向相關(guān)信息,采用相應的控制策略來控制小車的運動速度和前進方向。
本系統(tǒng)根據(jù)車載紅外傳感器控制模塊所獲得的當前運動路徑和小車的運動速度信息的制定控制方案,圖4為智能小車控制系統(tǒng)程序流程圖。
圖4 控制程序系統(tǒng)流程圖
智能模型車的運動軌跡搜索算法是智能車設計中的關(guān)鍵部分,它將紅外激光傳感器采集到的路徑信息和光電編碼器采集到的速度信息反饋給單片機控制模塊,通過有效的控制算法得到小車的精確位置和方向,然后單片機生成PWM 脈沖控制信號控制舵機的運動方向,使驅(qū)動直流電機能較好地應對直道、彎道、S道等復雜路況,較好地完成比賽??刂葡到y(tǒng)的程序流程如圖5所示。
3結(jié)束語
實踐證明,智能車采用紅外傳感器作為信號的采集與處理,系統(tǒng)響應快,能準確實現(xiàn)自主尋跡,在中央控制系統(tǒng)的控制下,可以在以兩條白色線為邊界的黑色跑道上快速穩(wěn)定地自動行駛,具備速度調(diào)節(jié)快、響應時間短、抗干擾性強、穩(wěn)態(tài)誤差小等特點,為研究多種傳感器數(shù)據(jù)相互融合的智能小車導航系統(tǒng)和智能控制算法提供了有價值的參考。
[參考文獻]圖5運動路徑搜索程序流程圖
[1]李泉溪.單片機原理與應用實例仿真[M].北京:北京航空航天大學出版社,2009.
[2]胡壽松.自動控制原理[M].5版. 北京:科學出版社,2007.
[3]董宗祥,石紅瑞,楊杰.嵌入式智能小車測控系統(tǒng)的設計與實現(xiàn)[J].計算機測量與控制,2010,18(2):357-362.
[4]韓毅,楊天.基于HCS12單片機的智能尋跡模型車的設計與實現(xiàn)[J].計算機工程與設計,2008,29(18):1535-1955.
[5]黃智偉.全國大學生電子設計競賽系統(tǒng)設計[M].2版.北京:北京航空航天大學出版社,2011.
[6]吳斌華,黃衛(wèi)華,程磊,等.基于路徑識別的智能車系統(tǒng)設計[J].電子技術(shù)應用, 2007,33(3):80-82.
[7]張淑謙,王國權(quán).智能車黑線識別算法及控制策略研究[J].電子技術(shù),2009,46(3):89-92.
[8]高月華.基于紅外光電傳感器的智能車自動尋跡系統(tǒng)設計[J].半導體光電, 2009, 31(1):134-137.
(責任編輯:張凱兵)