本文針對小車采用傳統光循跡電路的兩點不足,提出了一種高可靠小車紅外光循跡電路的設計方案。該方案用低占空比強紅外光調制發射能克服環境光線的干擾;再對光接收信號進行交流放大后解調能進一步克服環境干擾;采用逐個循環發射、接收能克服光衍射對相鄰光敏管的干擾,最后給出設計方案的電路結構框圖及部分電路圖。經分析該方案避免了傳統設計繁瑣的調試工作量,可以滿足各種環境光線的應用。
0 引言
歷屆全國大學生電子設計競賽、全國職業院校大學生職業技能競賽、飛思卡爾杯全國大學生智能車競賽幾乎都包含小車類的賽題。小車類賽題大部分又都有循跡的要求。循跡的方法一般可分為光控循跡、攝像循跡控兩類。光控循跡成本低、軟件設計較為簡單,設計制作周期短;攝像控循跡則相反:成本高,軟件設計復雜,設計制作周期長。小車采用傳統光循跡電路的兩點不足也是顯而易見的:一是容易受環境光線的影響而照成誤判;另一點是由于光衍射現象的存在又容易被相鄰的光敏管接收而造成誤判。本文就此兩點不足提出一種高可靠小車紅外光循跡電路的設計方案以解決此問題。
1 傳統光循跡小車電路結構
1.1 小車循跡簡介
所謂小車循跡,就是在白紙上畫出黑色的線條,稱為賽道;小車沿著賽道按要求(可以做一些指定的任務)行進時,能自動識別賽道并按賽道線條行走,稱為小車循跡。如圖1所示,該賽道是2010年全國職業院校大學生職業技能競賽月球車競賽項目湖南賽區賽道圖。
一般的,小車底部安裝一排(或幾排)紅外光發射、接收陣列用于檢測賽道,從而控制小車能沿線行走。光發射、接收陣列要與賽道成十字交叉排放,有的也做成弧形或倒“V”字型排放。這一排紅外光發射、接收陣列的數量越多越密,控制小車跑起來越穩,但編程時算法越復雜。一般少則四、五個,多則十來個,如圖2 所示。也可以采用雙排甚至多排設計。
1.2 傳統循跡小車紅外光發射、接收電路
傳統的紅外光發射、接收電路的發射部分用直流電流驅動,接收部分采用比較器。比較器的一個比較點用電位器調整直流電位,另一個比較點接光敏管的輸出端,這種簡易做法往往也能滿足簡單比賽要求。但抗干擾能力較差。
一路傳統簡易循跡電路圖如圖3所示。
采用紅外光作發射接收的目的是為了減少環境光線的干擾,但若不采取輔助措施,當環境光線較強時,并不能很好的克服環境光線的干擾;另外,還需采取措施克服相鄰收發對管的光衍射干擾。
2 紅外光循跡設計原則
2.1 選擇合適的光發射驅動電流
一般應將發射電流設計在發光二極管的最大正向電流允許值IF 上。發射的紅外光線強度提高了以后,環境光的紅外成份占總光線的比例就減小了,可以克服一部分環境光干擾。但是,過于提高發射光電流,會產生較大的熱量,使發射管光衰現象加劇。
要想既提高發射電流,又使發射管安全工作,則可以采用低占空比脈沖調制發射。
2.2 脈沖調制式紅外發射和紅外接收效果分析
環境光中的紅外成份表現出來的是直流分量,采取調制式[4]紅外發射措施后,調制接收電路接收的是調制信號,可以將環境光中的直流分量濾除。
2.3 采取低占空比脈沖調制紅外光發射的優勢
紅外光敏三極管接收靈敏度并不因紅外發光二極管發射信號的占空比降低而降低。降低紅外發光二極管發射信號占空比后,可以在紅外發光二極管上施加較大電流,甚至可以大大超過紅外發光二極管的最大允許正向電流IF ,而不會損壞紅外發光二極管。增加的那部分電流相當于紅外發光二極管的發光強度大大加強了,則抗干擾能力也進一步加強。
2.4 采取穩定的38.5 kHz頻率調制發射的紅外光
紅外調制光信號在調制頻率為38.5 kHz時,紅外光敏接收靈敏度最高。
為獲得較穩定的38.5 kHz的調制頻率,應避免用電阻、電容和電感等分立元件配合非線性器件組成振蕩電路作調制信號,應采用晶體振蕩器或有源晶體振蕩器配合非線性元器件作振蕩電路。
用晶體振蕩器作MCU 的外部晶體,用編程的方法啟動38.5 kHz/10%~20%占空比的PWM 信號作調制振蕩信號;也可以用晶體振蕩器配合非線性器件進行振蕩、分頻后獲得38.5 kHz/10%~20%頻率和占空比。
2.5 采用交流放大電路作紅外接收放大器
即使調制光受到環境光的淹沒,但是調制光并沒有因此而消失。接收信號后送交流放大器放大,被淹沒的調制光信號仍可得到復原,而直流成份的環境光被交流放大器阻擋,這就有效還原出了被淹沒的有效紅外光,克服了強環境光的干擾。
2.6 采用巡回開通某一路發射接收克服光衍射
壓線的那一路原本不應該接收到信號,而相鄰沒壓線的那一路還在繼續發光。由于光衍射,相鄰沒壓線那一路發出的紅外光很容易衍射到壓線的那一路紅外接收管,導致判斷失誤,從而引起干擾。
當巡回開通某一路時,任何時候只一路發光,檢測電路也僅接收這一路的信號,即使這時候發光的那一路衍射到壓線的接收電路,但MCU 并不去讀取被衍射的那一路。這就克服了相鄰通道的衍射干擾。這時要注意軟件設計時采集一個巡回的周期時間要恰當。
3 高可靠紅外光循跡電路設計
3.1 低占空比脈沖波38.5 kHz/10%~20%脈沖波形成
遵循2.4節設計原則,第一種方法采用具有PWM外設的單片機啟動PWM 模塊產生脈沖波,不建議用純軟件產生該脈沖波。產生的波形應滿足圖4所示的時間參數要求。
第二種方法采用有源晶振(可省去振蕩電路,簡化電路設計)1.544 MHz(經2 級二分頻)或11.059 2 MHz(經5 級二分頻)后,分別產生386 kHz 或345.6 kHz 方波,后接十進制計數/分配器或九進制計數/分配器,從Q0~Q7任意引腳即可產生38.6 kHz/10%或38.4 kHz/11%占空比的脈沖波(脈沖頻率均誤差0.1 kHz,占空比一個是10%,一個是11%)。電路圖如圖5所示。
3.2 紅外光發射控制電路設計
小車紅外光循跡電路采用8路已經可以滿足較復雜競賽的要求。按照設計原則2.6,矩形脈沖最好不要同時驅動光發射電路,需要一路一路輪流發送并保持一段時間。
采用兩個74HC4081 四與門控制脈沖信號傳送給ULN2803八反向OC驅動器驅動紅外發光二極管,每一路可輸出500 mA.74HC4081 與門的另一個輸入端接MCU控制選通。如圖6所示。
紅外發射接收采用一體化封裝的TCRT5000對管,電流傳輸系數》20%,發射管最大持續允許電流IF 為60 mA,脈沖電流在1 μs/1%占空比時允許3 A.脈沖信號經紅外發光管發射后,經地面反射,送到光敏三極管從發射極輸出。如果地面為白色,絕大部分信號(脈沖)都能傳遞給光敏三極管;如果地面為黑色,光線被吸收,則幾乎沒有信號能傳遞給光敏三極管。
控制每一路持續工作的時間應保證讓紅外發光二極管發出10~20個脈沖,使后續解調器能可靠解調。可以算出循環一周共8路所需時間:
T=([ 1 38.5 kHz)×(10~20)]×8=2.08~4.16 ms.
3.3 放大器電路設計
由于有8個光發送接收對管,圖6中僅顯示出1路,如果只想用一個放大器和后續的一個脈沖頻率解調器,則需要模擬開關來一一選通。為了和圖6共用選通信號,采用兩片74HC4066(也可以用一片74HC4051,但這時就不能共用74HC4081選通信號了,既浪費了MCU的IO口,編程也較為復雜些)。
按2.5節所述要采用交流放大器的原則,這里采用零漂移雙運算放大器AD8552,一個單元接成反向比例運算電路,另一個單元實現輸出中點電位給放大電路作參考“地”。電路如圖7所示。可通過反饋電阻調整其放大倍數。
3.4 信號解調
信號解調采用標準38.5 kHz解調器CXA20106,裝置中增益控制和中心頻率控制用的電容器盡量采用精密低損耗無極性電容器,最好采用CBB 電容器。電路結構圖如圖8所示。
4 結語
按照本方案所介紹的紅外光循跡設計原則所設計、裝配的電路,可以滿足絕大多數較復雜競賽現場的需求。現場競賽時抗干擾能力較傳統電路相比大大加強了,既克服了環境光線的干擾,也克服了臨近紅外循跡發光管的衍射干擾。電路調整比傳統電路更加簡單:僅需調整放大器的放大倍數這一項,且一次性調好,避免了傳統設計繁瑣的調試工作量,可以滿足各種環境光線的應用。由于任一時刻只需發出一路強紅外光,并且還是低占空比的調制光,所以不但不會因為采用強紅外光造成成車體電池供電不足,相反的,若干個循跡發射二極管輪回通電比傳統的循跡電路一組多個一直通電的情況更省電。(作者:徐昌華)
評論
查看更多