陶磊 龔博
摘 要:本設計以STC89C51單片機為控制核心,小車速度和方向的控制通過PWM脈寬調制完成。利用控制系統中的超聲波檢測模塊來測量距前方坡道的長度,同時由單片機計算出斜坡角度,并自主判斷采取爬坡或者避障動作。若障礙物的坡度超出智能小車的爬坡能力范圍,則由紅外避障模塊檢測障礙物的外形尺寸參數,采用繞行方式來躲避障礙物。
關鍵詞:坡道信息檢測;STC89C51;超聲波;紅外避障
中圖分類號:U467 ?文獻標識碼:A ?文章編號:1671-7988(2020)04-89-03
The Design and Research of Slope Collection and Obstacle Avoidance Moduleof Intelligent Car*
Tao Lei, Gong Bo
(?Anhui Industry & Trade Vocational and Technical College,?Department of Mechanical andAutomotive Engineering,?Anhui Huainan 232001?)
Abstract:The design takes the STC89C51 single chip as the control core, and the control of the speed and direction of the trolley is completed by the PWM pulse width modulation. The length of the front ramp is measured by the ultrasonic detection module in the control system, and the slope angle is calculated by the single-chip microcomputer, and the climbing or obstacle avoidance action is automatically judged. If the slope of the obstacle exceeds the climbing capacity range of the intelligent trolley, the infrared obstacle avoidance module detects the dimension parameter of the obstacle, and uses the bypass mode to avoid the obstacle.
Keywords: Ramp information detection; STC89C51; Ultrasound; Infrared obstacle avoidance
CLC NO.: U467 ?Document Code: A ?Article ID:1671-7988(2020)04-89-03
前言
目前,在眾多智能小車的避障設計中,主要是采用按照既定路線行駛進行循跡避障或遇到障礙物之前進行繞行避障。然而對于坡度較小或依靠智能小車本身動力就能通過的綜合路況,智能小車應該能夠適時根據所處路況,及時地規劃最佳的行駛路徑,并且準確判斷是否應該避障或做出何種避障措施。本設計正是基于此類路況情形,研究智能小車如何進行信息采集并作出自主避障措施。
![]()
1 智能小車系統結構
智能小車的控制模型可以視為自動控制系統,主要有信息采集、信息處理、人機交互和執行模塊等部分組成。如圖1所示。

控制系統的核心是STC89C51單片機,配有多個信息采集傳感器。智能小車控制系統在設計本質上分為硬件電路設計和控制軟件設計兩部分,其中控制系統的硬件由執行模塊的電機以及各自的驅動電路和電源管理電路構成;控制系統的軟件由單片機內部的程序控制完成信息處理和控制算法。
2 硬件設計
為了簡化電機驅動電路的設計,電機控制采用了L293D電機驅動器,用于驅動直流電動機。其控制電路如圖2所示。該驅動器內含兩個H橋,采用標準邏輯電平信號控制,兩個使能控制端EN1和EN2,在控制器件工作時不受輸入信號影響;有一個邏輯電源輸入端VCC,使內部邏輯電路部分在低電壓下工作;可以外接檢測電阻,將變化量反饋給控制電路[1]。
2.2 超聲波距離模塊檢測
本設計中作為智能小車搭載的距離傳感器采用了HC- SR04超聲波模塊,該模塊由超聲波發射器、接收器與控制電路組成[2],具備非接觸式距離感測功能,測距范圍2cm- 400cm,測距精度可達3mm。
考慮超聲波傳感器的波束角為15°,為避免由于兩個超聲波同時發射有可能會產生干擾的情況[3],同時獲得較高的采集頻率和滿足系統實時性的要求,因此在超聲波傳感器的布置策略上,共采用兩個超聲波傳感器放置于小車的正前方,間隔一定的距離縱向放置,采用輪循發射方式發射超聲波,如圖3所示。
2.3 紅外避障模塊
當超聲波傳感器準確檢測到坡度距離后,通過控制器算法計算坡度后進行避障控制。避障中主要采用紅外避障模塊進行障礙物檢測。當智能小車通電后,紅外對管LEAS1、RC1、LEAS2、RC2就開始工作,紅外對管前方一定距離內有障礙物出現時,會把發射管LEAS1、LEAS2發射的紅外光反射回來,此時被接收管RC1、RC2接收到,檢測障礙物的距離可通過電位計RW1、RW2調節。然后信號傳遞到電壓比較芯片LM324,經分析后輸出相應的信號,同時狀態指示 LED 燈亮起,如圖4所示。
3 智能小車結構系統的軟件設計
智能小車在前進過程中,坡道信息采集模塊實時檢測運動前方是否有障礙物,并檢測障礙物的坡度。若坡度小于15°,則智能小車繼續前進,直接進行越障動作;若坡度大于15°,則智能小車通過判斷障礙物的方位,采取避障動作。如圖5所示。
3.2 PWM電機調速
PWM脈寬調制的輸出電壓通過改變脈沖寬度實現,其輸出頻率通過改變周期來控制[4]。
實現輸出PWM信號方法是使用51單片機定時器與中斷實現。頻率是根據周期決定的,而周期則是定時器溢出時間和占空比決定的。通過編程設置定時器溢出時間和周期來實現對PWM的頻率設定,再通過軟件設置驅動電機的高電平的占空比來實現調速。
智能小車軟件系統設計的核心就是障礙物類型的判別,根據判別結果,做出越障或是避障決策。障礙物判別過程中,我們將實際情況簡化成下圖所示的模型,超聲波傳感器1的聲波接收結束時刻即是超聲波傳感器2的聲波發出時刻,假設此時小車勻速運動。如圖6所示。
1—超聲波傳感器1號;2—超聲波傳感器2號;
H—超聲波傳感器1號和2號安裝的距離
那么
,而
,
,其中聲速c=340m/s,t1為超聲波傳感器1號從發出到接收到聲波的時間。t2為超聲波傳感器2號從發出到接收到聲波的時間。即斜坡角度為
。
重復上述操作,直到小車運動到安全距離以內,測量結束。最終測得多個斜坡角度α1,α2,.......,αN。通過統計學的方法得到斜坡最終的測量角α,去除n個壞數據,斜坡角度為:
。對其結果進行判斷:
若A>15°,則視為無法越過,選擇躲避障礙物;
若0°≤A≤15°則直接選擇越障。
4 程序設計
5 測試結果
選擇平坦寬闊的實驗場地,模擬10°和60°兩種坡道,并且在坡道附近設置障礙物,將智能小車的運行速度設定為恒定值。經實際驗證,智能小車在行進中能實時檢測前方坡道信息并進行綜合分析,準確根據坡度范圍自行選擇越障或選擇避障。
參考文獻
[1] 李汝山,孫彥萍,顏迎金.基于光敏器件的投影法藥品包裝檢測系統研究[J].機電信息,2013(20):43-46.
[2] 李杰.基于單片機的超聲波測距報警系統的設計[J].數字技術與應用,2018(9):7-8.
[3] 張洪,錢勝,陳路.多傳感器在確定智能小車安全區域中的應用[J].傳感器與微系統,2013(12):145-148,152.
[4] 朱志甫.開關電源PWM比較器的研究與設計[D].西南交通大學, 2008.