甘家梁,季俊杰
(1.湖北工程學院 計算機與信息科學學院,湖北 孝感432100;2.重慶大學 自動化學院,重慶400044)
基于紅外傳感器的瑞薩智能車的設計
甘家梁1,季俊杰2
(1.湖北工程學院 計算機與信息科學學院,湖北 孝感432100;2.重慶大學 自動化學院,重慶400044)
摘要:以“瑞薩杯”智能小車比賽為應用平臺,用16位單片機R8C/38A為核心單元,設計了一個基于紅外光電傳感器實現路徑識別的智能尋跡小車系統。該系統采用8個“一字排”的紅外激光傳感器探測路徑,能快速準確地采集路徑信息,并結合PID閉環控制算法控制舵機的轉向和驅動電機的速度,使小車能夠沿著固定的跑道穩定行駛。
關鍵詞:紅外傳感器;自主循跡;智能車;單片機R8C/38A
中圖分類號:TP368.1
文獻標志碼:碼:A
文章編號:號:2095-4824(2015)06-0071-04
收稿日期:2015-08-25
基金項目:湖北省高等學校省級教學研究項目(2014376);湖北工程學院教學研究指導項目(2014B03)
作者簡介:甘家梁(1966-),男,湖北安陸人,湖北工程學院計算機與信息科學學院副教授,碩士。
近年來,智能電動汽車的研究和發展成為熱門。隨著智能控制理論與技術在交通運輸中被越來越多地應用,國際上正在形成智能電動汽車研究、設計及開發的熱潮,21世紀的汽車概念即將發生根本性的變化。電動智能小車涵蓋了汽車機械與電子、計算機科學技術、傳感器與檢測技術、模式識別技術、人工智能與控制技術、交通與能源等多個學科。為了提高學生的自主創新能力、機械制作能力和編程技巧,并培養與開發電動智能汽車相關人才的潛質,由教育部主導的“瑞薩超級MCU模型車大賽”已經主辦了6屆。筆者所在學校學生參加了第5屆和第6屆“瑞薩超級MCU模型車大賽”,取得了比較優秀的成績。
1系統總體結構設計
“瑞薩杯”智能小車由動力驅動系統、信號檢測與信息處理模塊、MCU 最小系統及電源驅動電路、人機交互系統四個主要部分組成,其他構成部件可以根據競賽的需要擴展,如紅外遙控處理電路、存儲電路等,其硬件結構如圖1所示[1]。智能小車維持基本運行只需動力系統、信號檢測與信息處理模塊、MCU 最小系統以及驅動電路即可。

圖1 “瑞薩杯”智能小車硬件結構圖
動力系統由控制運動方向的舵機、驅動電機以及提供動力的電源組成。驅動電機普遍采用直流電機驅動智能車行駛。舵機采用標準舵機,使用自制的轉向系統控制智能車行駛方向。電源為可充電電池組[2-3]。
系統以R8C/38A單片機控制器為核心,配合有紅外光電傳感器、編碼器、控制方向的舵機、驅動電機以及相應控制和驅動電路。同時對機械結構進行一定的設計改進,在保證智能車可靠運行的前提下,設計簡潔合適的電路并選擇恰當的控制算法,在保證模型車在規定的跑道上自主循線運行穩定的前提下提高速度。
季俊杰(1991-),男,湖北荊州人,重慶大學自動化學院碩士研究生。
本系統主要分機械、硬件電路和軟件三部分進行設計。硬件主要有電源模塊、紅外傳感器數據采集模塊、直流電機PWM驅動模塊、組合邏輯設計、單片機控制模塊等;軟件主要有舵機轉向的控制程序、循跡程序和速度PID控制程序等。
1.1單片機控制模塊
控制器采用瑞薩16位單片機R8C/38A設計,智能車CPU主板一般每屆都由組委會提供,而且型號指定,參數固定,具有控制簡單、功耗低、性能出眾、供電方便等優點。
單片機R8C/38A微控制器整合了R8C CPU的核心,擁有高效率的指令與1 MB的地址空間,能夠高速地執行指令。此外,CPU核心擁有高速運算處理的乘數,功耗低,支持操作模式,允許額外的電源控制。該微控制器的設計最大限度地發揮EMI / EMS(電磁干擾/電磁靈敏)性能。同時,它還擁有許多外設功能,包括多功能定時器和串行接口,R8C/38A有支持后臺操作(BGO)功能的數據閃存(1 KB×4塊)[4]。
單片機R8C/38A微控制器是整個模型車的核心,對該芯片程序的優化處理是提高模型車性能的關鍵,它的主要作用是按照比賽規則的要求編寫控制程序,通過控制程序對模型車的舵機、驅動電機發出控制指令,從而實現MCU模型車按照賽道上預先設置的標志自動尋跡運動。
CPU主板的結構較復雜,其核心控制部分為R8C/38A芯片,該芯片共有80個引腳,其中有10個輸入和輸出接口,分別是接口0~9。這些輸入輸出接口中大部分是8位的接口,其中有2個是少于8位的接口,通過對接口的編程實現模型車運動軌跡的控制。接口控制程序的輸入需要通過一個導入開關來實現。盡管R8C/38A芯片上有10個接口,但是整個模型車控制系統只需用到兩個接口,即P2接口和P5接口。
1.2系統電源供電方案
智能小車的電源系統由三個部分組成,分別是單片機控制系統、傳感器供電系統、舵機和驅動電機供電系統。前兩者為5 V供電,電機驅動電路為7~12 V供電。整個智能小車系統的動力電源采用8節AA電池進行組合,電壓可以達到9.6 V。在智能小車調試階段,經過反復多次試驗,加載9.6 V的電壓能夠滿足整個系統的要求,但是CPU的正常工作電壓在4.5~5.5 V之間。因此,為了保證CPU能夠正常運行,需要在電路中串接一個三端調節器(LM2940-5)將電壓限定為5 V,以滿足CPU正常工作。如果CPU的供電電源高于5.5 V,CPU將會損壞。反之,如果CPU的供電電壓低于4.5 V,CPU將會復位??刂品较虻乃欧鏅C需要6 V的恒定電壓,因此采用一個三端的穩壓芯片LM350及附屬電路對伺服舵機的供電電壓進行限制[4-6]。電源供電方案如圖2所示。為了防止電壓和電流的突變引起智能小車在運動中產生“抖動”,在各個電源電路中,根據調試情況需要并聯電容或串聯電感。

圖2 系統的供電方案圖
1.3驅動直流電機PWM驅動模塊
智能車的驅動系統一般由控制器、電機和電機驅動模塊三個主要部分組成。智能車的驅動不僅要求電機驅動系統具有高可靠性、寬調速范圍,高轉矩重量比,而且電機的轉矩——轉速特性受電源功率的影響,這就需要驅動具有盡可能寬的高效率區。直流電機具有良好的線性調速特性,控制方式采用脈沖寬度調制( Pulse Width Modulation,PWM)方法。設計中采用兩片BTS7960芯片組成H型雙極模式PWM控制電機電路。BTS7960是一款智能高集成功率芯片,主要應用于電機驅動的大電流半橋電路,通過改變單片機輸出到芯片控制端的PWM 波的占空比來控制供給電機電壓的大小,從而達到控制電機的轉動速率和電機的正反轉,以較好地實現智能車在直道上的加速行駛,在進入彎道時急減速入彎道等電機驅動功能。直流電機驅動原理如圖3所示。

圖3 PWM控制H橋式雙極型直流電機驅動原理圖
由圖3可知,PWM控制H橋式雙極型直流電機驅動電路由四個絕緣柵雙極晶體管(IGBT)和各一個續流二極管反并聯組成。相對應橋臂上的兩個晶體管分為一組, 即V1和V4一組, V2和V3為一組。系統工作時晶體管V1和晶體管V4的通斷狀態互補,晶體管V2和晶體管V3的通斷狀態互補,即基極的控制驅動信號ub1 =ub4, ub2 =ub3 = - ub1。由于晶體管各自反并聯了一個續流二極管,因此PWM控制的H橋式雙極型功率轉換電路工作時允許電流反向流通,從而保證流過直流電機的電樞電流始終是連續的。即使直流電機不轉動,電樞兩端的瞬時電壓也不為零,而是寬度相等的正、負脈沖電壓,這個交變的電流通過電機的電樞回路,會使電動機產生制動力,有利于減小靜摩擦。
1.4紅外傳感器控制模塊
紅外傳感器控制模塊的主要功能是速度檢測和道路識別。紅外傳感器采用S7136傳感器。S7136傳感器主要由時鐘頻率振蕩電路、產生時鐘信號的電路、標準電壓供電電路、驅動發光二極管正常工作的驅動電路、緩沖放大電路、信號處理電路、比較電路、輸出電路等組成。智能小車上的傳感器電路由8個S7136等距離一字排列組成[7]。紅外傳感器控制模塊和MCU之間通過IO連接。這種連接方式可以使信息傳遞直接、快速。單片機控制器可以靈活配置控制信號讀取周期,保證信息交換的實時性,使得系統資源得到合理的利用。
紅外傳感器數據處理模塊主要由信號采集和信號處理兩部分組成,利用“白色反射光線,黑色吸收光線”的原理。每個紅外傳感器S7136都可以識別賽道上的黑白顏色,并能將其轉化為數字信號“0”或“1”輸出到控制系統單片機上,同時發光二極管能顯示傳感器檢測到的狀態。如果傳感器發射裝置發射的光照射到賽道上白色集中的地方,光線會產生全反射,并被傳感器的接收器接收,處理器認為是“0”信號,傳感器輸出數字信號“0”。同時,具有指示發光二極管工作狀態的作用。同理,如果傳感器發射器發射的光照射到賽道上黑色集中的地方,光線不能產生全反射,會被全部吸收,處理器認為是“1”信號,此時傳感器輸出數字信號“1”,發光二極管就不工作。通過紅外傳感器測量電路對路面和車速信號進行檢測,能讀取賽道路面完整的信息,利用單片機控制器處理這些信息,為智能小車在運動過程中要產生相應動作提供必要依據,并基于路徑標記線結構化信息模式匹配的尋跡控制策略對小車進行尋跡控制。
2智能小車系統軟件設計
瑞薩超級MCU智能車比賽組委會為了提高學生實踐的能力和培養大學生的興趣,增加了比賽的難度。比賽規則規定了賽道的類型、拐彎半徑、直道的長度等元素。賽道由直道、大彎道、小彎道、特殊賽道如S型彎、直角彎、換道等組成,并限制了賽道的寬度只有30 cm,因此小車在運動過程中的空間回旋余地受到了很大的限制。其次是賽道不是緊貼地面,距離地面大約2 cm的高度,當賽車在運動過程中一旦沖出賽道時就很難再返回賽道繼續運行,如果借助人力返回賽道,在比賽中是不允許的。這一系列的約束條件導致賽道容錯度變小,但是從軟件編寫角度上看,上述限制在一定程度上減少了編寫控制程序的復雜性。
智能小車在比賽的過程中,對道路形狀做出正確判斷是決定小車實現自動尋跡的重要因素,以實現最短時間沿特定軌道完成比賽全程。如果要取得好的成績必須又快又穩?!翱臁笔侵钢悄苘囁俣纫?,以求最短時間跑完全程,而“穩”是指智能車運行過程要穩,不能沖出賽道,因此在編程時要考慮將誤差必須控制在一定范圍內,保證智能車在賽道上正常運行。在編寫智能小車控制程序時,一方面要考慮智能小車隨賽道的變化而不斷改變方向,如進入彎道、十字道時,速度要降下來,要求隨動性好。另一方面,在直道上時,速度要提上來,保證平穩快速地運行,要求具有一定的穩定性。智能小車在整個比賽運動的過程中,必須檢測出一些特殊的路面標志,如比賽起止線、各種類型的彎道標識線、換道標識線等,并能使相應的控制機構快速響應,執行相應的特殊動作,要求識別可靠性高,不能漏檢,更不能錯檢。因此,在設計與調試控制算法時,既要滿足智能小車在運動時賽道有變化情況下的動態特性,又要滿足賽道無變化時的快速穩定性,而且必須滿足對特殊賽道標識的準確檢測[8]。
智能小車控制程序的設計必須緊密配合小車的機械動力裝置、電路系統的要求、賽道各方面的信息進行總體考慮,在調試過程中不斷地進行修正,才可能在正式比賽中跑出比較好的成績。軟件設計遵循程序模塊化原則,力求各模塊程序調用關系簡單,以便于代碼編寫、調試和維護。
智能小車在賽道上行進的過程中,控制系統要綜合分析傳感器所反饋的道路走向相關信息,采用相應的控制策略來控制小車的運動速度和前進方向。
本系統根據車載紅外傳感器控制模塊所獲得的當前運動路徑和小車的運動速度信息的制定控制方案,圖4為智能小車控制系統程序流程圖。

圖4 控制程序系統流程圖
智能模型車的運動軌跡搜索算法是智能車設計中的關鍵部分,它將紅外激光傳感器采集到的路徑信息和光電編碼器采集到的速度信息反饋給單片機控制模塊,通過有效的控制算法得到小車的精確位置和方向,然后單片機生成PWM 脈沖控制信號控制舵機的運動方向,使驅動直流電機能較好地應對直道、彎道、S道等復雜路況,較好地完成比賽。控制系統的程序流程如圖5所示。
3結束語
實踐證明,智能車采用紅外傳感器作為信號的采集與處理,系統響應快,能準確實現自主尋跡,在中央控制系統的控制下,可以在以兩條白色線為邊界的黑色跑道上快速穩定地自動行駛,具備速度調節快、響應時間短、抗干擾性強、穩態誤差小等特點,為研究多種傳感器數據相互融合的智能小車導航系統和智能控制算法提供了有價值的參考。
[參考文獻]圖5運動路徑搜索程序流程圖
[1]李泉溪.單片機原理與應用實例仿真[M].北京:北京航空航天大學出版社,2009.
[2]胡壽松.自動控制原理[M].5版. 北京:科學出版社,2007.
[3]董宗祥,石紅瑞,楊杰.嵌入式智能小車測控系統的設計與實現[J].計算機測量與控制,2010,18(2):357-362.
[4]韓毅,楊天.基于HCS12單片機的智能尋跡模型車的設計與實現[J].計算機工程與設計,2008,29(18):1535-1955.
[5]黃智偉.全國大學生電子設計競賽系統設計[M].2版.北京:北京航空航天大學出版社,2011.
[6]吳斌華,黃衛華,程磊,等.基于路徑識別的智能車系統設計[J].電子技術應用, 2007,33(3):80-82.
[7]張淑謙,王國權.智能車黑線識別算法及控制策略研究[J].電子技術,2009,46(3):89-92.
[8]高月華.基于紅外光電傳感器的智能車自動尋跡系統設計[J].半導體光電, 2009, 31(1):134-137.
(責任編輯:張凱兵)