救援小車的設計含程序及CAD圖
救援小車的設計含程序及CAD圖,救援,救濟,營救,小車,設計,程序,cad
編號:
設計說明書
題 目: 救援小車
學 院:
專 業(yè):
學生姓名:
學 號:
指導教師:
職 稱:
題目類型: 理論研究 實驗研究 t工程設計 工程技術研究 軟件開發(fā)
20XX年 5 月 20 日
救援小車的設計
摘 要
自動循跡避障小車在工業(yè)和生產上都有廣泛運用,為了培養(yǎng)大學生對循跡避障的運用,循跡避障機器人最近幾年一直是各類全國大學生機電類比賽的主要題目。而本次題目要求小車能根據外部環(huán)境的變化而做出智能的判斷并成功執(zhí)行題目要求的循跡、避障和發(fā)現目標的任務。
本設計采用單片機控制技術為核心,通過對各類傳感器的合理運用以達到設計要求。本系統主要由單片機、紅外傳感器、光電接近開關、直流電機、穩(wěn)壓芯片組成。系統采用可充電電池作為總電源,并通過穩(wěn)壓芯片進行穩(wěn)壓分別對各部分電路進行供電。其中系統的數據采集部分采用5組紅外對管對地面信息進行數據收集,并且再利用兩組光電接近開關對障礙物進行數據的收集;然后將收集到的外部數據信息傳輸到單片機上根據程序進行相應的數據處理,從而使小車系統能準確、快速地采集處理外部環(huán)境信息并反饋到小車系統執(zhí)行部分去。最后根據單片機對外部信息的處理結果對兩個直流電機進行控制從而實現小車根據外部環(huán)境自動進行循跡、避障、發(fā)現目標的操作;并通過單片機對蜂鳴器和LED的控制實現光電報警。
整個系統的電路機構簡單,可靠性好。并且本救援小車系統具有執(zhí)行效率高、反應快速和低成本等優(yōu)點。根據小車調試運行情況來說,本次設計能很好地根據外部環(huán)境的變化執(zhí)行預定任務。
關鍵詞:救援小車;L298N;紅外對管;STC89C52;直流電機;光電開關
Abstract
Automatic tracking obstacle avoidance for car industry and production, widely used, in order to develop the use of college students on the tracking of obstacle avoidance, tracking, obstacle avoidance robot in recent years has been the main subject of thevarious types of National College Students of machinery and electronic game. The subject car changes in the external environment and to make intelligent judgments andthe successful implementation of the subject requirements tracking, obstacle avoidance,and found the target task.
This design uses a single-chip control technology as the core, through the rational use ofvarious types of sensors to meet the design requirements. The system mainly consists of the microcontroller, infrared sensors, photoelectric proximity switches, DC motors,voltage regulator chip. The system uses a rechargeable battery as the total power supplyvoltage regulator and the regulator chip on the part of the circuit power supply. The system includes data acquisition part of group of infrared tubes on the ground information data collection, and use of two sets of photoelectric proximity switch on the obstacles to data collection; then collected from the external data transmission to the MCU according to the procedures the corresponding data processing, so that the car system can accurately and quickly collecting and processing the external environment for information and feedback to the operative part to go to the car system. The last two DC motor control in order to achieve the car is automatically carried out according to theexternal environment, tracking, obstacle avoidance, found that the operation of the target;and photoelectric alarm buzzer and LED control by the microcontroller according to the results of single-chip processing of external information.
Circuit body of the whole system is simple and good reliability. And the rescue vehicle system with high efficiency in the implementation, fast response and low cost advantages. For debugging and running under the car, the design changes in theexternal environment perform the intended task.
Key words: Rescue car ; L298N; nfrared Emitting Diode ; STC89C52; DC motor ;Photoelectric switch
救援小車的設計
摘 要
自動循跡避障小車在工業(yè)和生產上都有廣泛運用,為了培養(yǎng)大學生對循跡避障的運用,循跡避障機器人最近幾年一直是各類全國大學生機電類比賽的主要題目。而本次題目要求小車能根據外部環(huán)境的變化而做出智能的判斷并成功執(zhí)行題目要求的循跡、避障和發(fā)現目標的任務。
本設計采用單片機控制技術為核心,通過對各類傳感器的合理運用以達到設計要求。本系統主要由單片機、紅外傳感器、光電接近開關、直流電機、穩(wěn)壓芯片組成。系統采用可充電電池作為總電源,并通過穩(wěn)壓芯片進行穩(wěn)壓分別對各部分電路進行供電。其中系統的數據采集部分采用5組紅外對管對地面信息進行數據收集,并且再利用兩組光電接近開關對障礙物進行數據的收集;然后將收集到的外部數據信息傳輸到單片機上根據程序進行相應的數據處理,從而使小車系統能準確、快速地采集處理外部環(huán)境信息并反饋到小車系統執(zhí)行部分去。最后根據單片機對外部信息的處理結果對兩個直流電機進行控制從而實現小車根據外部環(huán)境自動進行循跡、避障、發(fā)現目標的操作;并通過單片機對蜂鳴器和LED的控制實現光電報警。
整個系統的電路機構簡單,可靠性好。并且本救援小車系統具有執(zhí)行效率高、反應快速和低成本等優(yōu)點。根據小車調試運行情況來說,本次設計能很好地根據外部環(huán)境的變化執(zhí)行預定任務。
關鍵詞:救援小車;L298N;紅外對管;STC89C52;直流電機;光電開關
Abstract
Automatic tracking obstacle avoidance for car industry and production, widely used, in order to develop the use of college students on the tracking of obstacle avoidance, tracking, obstacle avoidance robot in recent years has been the main subject of thevarious types of National College Students of machinery and electronic game. The subject car changes in the external environment and to make intelligent judgments andthe successful implementation of the subject requirements tracking, obstacle avoidance,and found the target task.
This design uses a single-chip control technology as the core, through the rational use ofvarious types of sensors to meet the design requirements. The system mainly consists of the microcontroller, infrared sensors, photoelectric proximity switches, DC motors,voltage regulator chip. The system uses a rechargeable battery as the total power supplyvoltage regulator and the regulator chip on the part of the circuit power supply. The system includes data acquisition part of group of infrared tubes on the ground information data collection, and use of two sets of photoelectric proximity switch on the obstacles to data collection; then collected from the external data transmission to the MCU according to the procedures the corresponding data processing, so that the car system can accurately and quickly collecting and processing the external environment for information and feedback to the operative part to go to the car system. The last two DC motor control in order to achieve the car is automatically carried out according to theexternal environment, tracking, obstacle avoidance, found that the operation of the target;and photoelectric alarm buzzer and LED control by the microcontroller according to the results of single-chip processing of external information.
Circuit body of the whole system is simple and good reliability. And the rescue vehicle system with high efficiency in the implementation, fast response and low cost advantages. For debugging and running under the car, the design changes in theexternal environment perform the intended task.
Key words: Rescue car ; L298N; nfrared Emitting Diode ; STC89C52; DC motor ;Photoelectric switch 目 錄
引言 1
1 方案的設計與論證 2
1.1 小車車體結構 2
1.2 主控系統 2
1.3 電機模塊 3
1.4 電機驅動模塊 4
1.5 電源模塊 5
1.6 穩(wěn)壓模塊 6
1.7 循跡傳感器模塊 6
1.8 避障模塊 7
2 硬件設計 8
2.1 總體設計思路和方案的確定 8
2.2 聲光報警電路設計 9
2.3小車驅動部分的電路設計 10
2.4小車傳感部分的電路設計 12
2.5主控電路設計 13
3 軟件設計 14
3.1 主程序流程框圖 15
3.2 電機驅動 15
3.3 循跡模塊 15
3.4 避障模塊 16
4 制作安裝與調試 18
4.1 PCB的設計制作與安裝 18
4.2 小車的調試 18
5 結論 19
致 謝 20
參考文獻 21
附 錄 22
引言
隨著科技的發(fā)展,機器人的運用和發(fā)展已經遍及機械,冶金,電子,交通,宇航,國防等領域。隨著科技的發(fā)展,機器人的智能水平也在不斷發(fā)展著,并且在不斷的影響著人們的生活方式。人們探索,發(fā)展機器人技術的最終夢想是能制造出替代人們勞動并且從各方面服務人們生活的機器人,并且堅信著未來這個夢想會慢慢實現的。
隨著科學技術的發(fā)展和現實生產的需求,機器人的種類也越來越多,而作為機器人中重要的感覺器傳感器的種類也隨之越來越多,機器人中的傳感器就相當于人的感覺器官,是機器人自動行動和智能完成任務的重要部件。視覺的典型應用領域為自主式智能導航系統,對于視覺的各種技術而言圖像處理技術已經相當發(fā)達,而基于圖像的理解技術還很落后,機器的視覺要通過大量的運算才能識別一些簡單的目標。就目前而言視覺傳感器的核心器件是攝像管或CCD,目前的CCD已經能自動聚焦,但從價格,使用方式等各方面而言在機器人運用中CCD并不占優(yōu)勢。因此在只要求粗略感覺的機器人運用中使用普通傳感器無論從編程還是價格上更有優(yōu)勢。
作為機器人的核心技術是CPU和軟件系統的執(zhí)行效率和智能化程度,經過人們不斷的開發(fā)和積累并隨著科技和嵌入式系統的不斷發(fā)展優(yōu)化,現在的機器人已經具有了很大程度的智能,并且能初步具有自主學習能力,在這方面日本做的比較好,已經能生產用于生活實用的智能機器人。同時在開發(fā)機器人的同時開發(fā)出來的技術有很多也在不斷被用于生活生產的各方面。
本次設計的機器人要實現自動導引和避障功能就必須要感知導引線和障礙物,就相當也要給機器人一個視覺功能。循跡避障系統是救援小車的智能系統,使小車能根據傳感器收集到的外部環(huán)境數據實現自動識別路線,判斷并自動避開障礙物,選擇正確的進行路線,并根據傳感器收集到的信息完成任務。
作為循跡小車,可以分為三大組成部分:傳感器檢測部分,執(zhí)行部分,CPU。小車要實現自動循跡,自動避障等功能,要能感知引導線和障礙物。實現小車自動尋線,選擇正確的路線,并在檢測到障礙物時能自動避障?;谏鲜鲆?,小車傳感器就不要求有清晰的圖像,只要求能粗略感知。因此可考慮紅外反射式傳感器。在小車執(zhí)行部分,由直流電機來充當,主要控制小車的行進速度和轉向。單片機驅動直流電機有兩種方案:第一,不占用單片機資源,選擇帶有PWM功能的單片機;第二,通過程序,模擬PWM輸出調劑,占用一定的資源,但單片機型號比較多,利于應用。所以考慮實際情況,本次選擇第二種方案。CPU選用國產的stc12C5A60S2就已經能很好完成任務了。
現智能小車發(fā)展很快,從智能玩具到各行各業(yè)到有運用。其基本上功能有循跡,避障,檢測,入庫等。隨著傳感器的發(fā)展和嵌入式技術的發(fā)展,智能小車已經獲得越來越多的人工智能,并且智能小車的體積也越來越小,功能趨于集成化,智能化。在人工智能方面做的比較好的是日本方面,并且有很多技術運用到了實際生活生產中了。就智能小車現狀來說,雖然說運用的并不是十分多但生產中還是扮演著很重要的角色,并在一些危險工作地方一定程度上代替人的工作,去完成危險繁瑣重復的工作。
1 方案的設計與論證
根據要求,確定如下方案:在現有玩具車的基礎上,加裝紅外光電檢測器。通過傳感器實現對電動車的速度、位置、運行狀況的實時測量,并將測量數據傳送至單片機進行處理,然后由單片機根據所檢測的各種數據執(zhí)行預先編寫好的程序以應對外部環(huán)境變化以實現對電動車的智能控制完成在相對復雜的環(huán)境下的任務。這種方案能實現對電動車的運動狀態(tài)進行實時控制,控制靈活、可靠,精度高,可滿足對系統的各項要求。
1.1 小車車體結構
方案一:
四輪式。利用現成的玩具車,現在市場上有完整的車模購買,能直接拿來就可以用,能減小小車的制造時間和整個小車的制造復雜程度。小車四個輪全部采用獨立驅動輪,采用四輪獨立驅動雖然在控制方面比較復雜但是在路況比較復雜和要進行各種轉向時比較容易做到精確操作和轉向快速的特點,四輪使小車具有無可比擬的行進平穩(wěn)性。
方案二:
三輪式。三輪式是小車常用的車體結構,后輪用兩輪獨立驅動,前輪用萬向輪構成輔助輪,機構組成簡單,可任意旋轉,容易控制。小車前進的時候左右驅動輪和萬向輪,構成三點結構,小車相對平穩(wěn),為防止小車重心偏移,車前的萬向輪起到支撐的作用。
針對本次要求,從簡單,易制做和執(zhí)行任務速度等的角度出發(fā),選擇方案二,車體采用現成三輪式車模,具有容易控制,編程簡單的優(yōu)點。
1.2 主控系統
根據小車的設計要求,認為本次設計屬于多輸入量的復雜程序控制問題。考慮到對數據的處理速度和單片機所提供的片內內存和I/O接口等綜合性能,據此,擬定了以下三種方案并進行了綜合的比較論證:
方案一:
選用一片CPLD(如EPM7128LC84-15)作為系統的核心部件,實現控制與處理的功能。CPLD具有速度快、編程容易、資源豐富、開發(fā)周期短等優(yōu)點,可利用VHDL語言進行編寫開發(fā)。但CPLD在控制上較單片機有較大的劣勢。同時,CPLD的處理速度非??欤≤嚨男羞M速度不可能太高,那么對系統處理信息的要求也就不會太高,在這一點上,MCU就已經可以勝任了。另外,考慮對VHDL語言的不熟悉,若采用該方案,必須得學習VHDL語言,并且在控制上遇到許許多多不必要增加的難題。為此,本設計不采用該種方案,進而提出了第二種設想。
方案二:
采用Atmel公司的ATmaga32L單片機作為主控制器。ATmaga32L是一個低功耗,高性能的8位單片機,片內含32k空間的可反復擦些100,000次的Flash只讀存儲器,具有2Kbytes的隨機存取數據存儲器(RAM),32個IO口,2個8位可編程定時計數器,1個16位可編程定時計數器,四通道PWM,內置8路10 位ADC。且maga系列的單片機可以在線編程、調試,方便地實現程序的下載與整機的調試。但考慮到我們對ATmaga32L的不熟悉,在編程和運用時會遇到很多不必要的麻煩,并且ATmaga32L相當于本設計要求來說有相當一部分性能沒發(fā)揮出來,造成浪費,還有就是價格比普通51單片機貴挺多的。為此,本設計不采用該種方案,進而提出了第三種設想。
方案三:
采用普通51單片機作為整個系統的核心,用其控制行進中的小車,以實現其既定的性能指標。充分分析我們的系統,其關鍵在于實現小車的自動控制,而在這一點上,單片機就顯現出來它的優(yōu)勢——控制簡單、方便、快捷。這樣一來,單片機就可以充分發(fā)揮其資源豐富、有較為強大的控制功能及可位尋址操作功能、價格低廉等優(yōu)點。因此,這種方案是一種較為理想的方案。
針對本設計特點:多開關量輸入的控制系統,需要擅長處理多開關量的標準單片機,而不能用精簡I/O口和程序存儲器的小體積單片機。根據這些分析,我選定了單片機作為本設計的主控裝置,51單片機具有功能強大的位操作指令,I/O口均可按位尋址,程序空間多達8K,對于本設計也足夠了,更主要的是stc12C5A60S2單片機價格非常低廉。
綜合考慮后,決定采用stc12C5A60S2單片機作為主控芯片。
1.3 電機模塊
本系統為智能電動車,對于電動車來說,其驅動輪的驅動電機的選擇就顯得十分重要。由于本實驗要實現對路徑的準確定位和精確測量并考慮電機相應速度,綜合考慮了一下兩種方案。
方案一:
采用步進電機作為該系統的驅動電機。由于其轉過的角度可以精確的定位,并被大多數對轉動經典要求高的設備運用所以可以實現小車前進路程和位置的精確定位。雖然采用步進電機有諸多優(yōu)點,但步進電機的輸出力矩較低,隨轉速的升高而下降,且在較高轉速時會急劇下降,其轉速較低,不適用于小車等有一定速度要求的系統,并且步進電機的價格比較貴,從性價比方面來說比較低。經綜合比較考慮,本設計放棄了此方案。
方案二:
采用直流減速電機。直流減速電機轉動力矩大,體積小,重量輕,裝配簡單,使用方便,在市場方面容易采購到合適的直流電機,不容易受型號的限制,并且價格比步進電機便宜。而對于直流電機的速度控制我們可以通過軟編程的方法可以很好的控制直流電機的轉動,使之處在我們需要的狀態(tài)下。由于其內部由高速電動機提供原始動力,帶動變速(減速)齒輪組,可以產生較大扭力。
我們所選用的直流電機減速比為1:74,減速后電機的轉速為100r/min。我們的車輪直徑為6cm,因此小車的最大速度可以達到
V=2πr·v=2*3.14*0.03*100/60=0.314m/s
能夠較好的滿足系統的要求,因此小車電機選擇了此方案。
1.4 電機驅動模塊
方案一:
采用電阻網絡或數字電位器調節(jié)電動機的分壓,從而達到分壓的目的。但電阻網絡只能實現有級調速,調速范圍比較狹窄,而且數字電阻的元器件價格比較昂貴。更主要的問題在于一般的電動機電阻很小,但電流很大,分壓不僅會降低效率,而且實現很困難。
方案二:
對于直流電機采用分立元件構成驅動電路。由分立元件構成電機驅動電路,結構簡單,價格低廉,在實際應用中應用廣泛。但是這種電路工作性能不夠穩(wěn)定,造成電機速度波動大,不利于電機的控制,容易造成小車碰到障礙物和增加小車的不可靠性。
方案三:
采用專用芯片L298N作為電機驅動芯片。L298N是一個具有高電壓大電流的全橋驅動芯片,它相應頻率高,一片L298N可以分別控制兩個直流電機,而且還帶有控制使能端。用該芯片作為電機驅動,操作方便,穩(wěn)定性好,性能優(yōu)良且市場上容易購買得到,在實際應用中應用廣泛技術也非常成熟。
本次設計選用方案三,這種調速方式有調速特性優(yōu)良、調整平滑、調速范圍廣、過載能力大,能承受頻繁的負載沖擊,還可以實現頻繁的無級快速啟動、制動和反轉等優(yōu)點并且功耗低。因此決定使用1個功率三極管L298N作為功率放大器的輸出控制2個直流電機,以達到電路的簡單化和控制的簡單有效性。
由L298組成的H橋電路,電機平均功率滿足如下關系
(1)
其中P為電機的平均功率,為電動機全速運轉功率。A為脈寬,可見,電機的平均功率與脈寬成正比。
小車行駛后其平均功率
(2)
單片機發(fā)出脈沖信號的比即可決定PWM放大器輸出的電壓平均值的大小。表1-1為L298驅動電機控制方式表,可以通過下表配合軟件編程可以很好的實現對小車的有效控制。
表1-1 L298驅動電機控制方式
IN1
IN2
OUT1
OUT2
方式
1
1
1 0
1 0
前進
1
1
0 1
0 1
后退
1
1
1 0
0 1
掉頭
0
0
0 0
0 0
停止
1.5 電源模塊
從小車的體積,重量和功耗等方面綜合考慮,為使小車體積小行動靈活動力充足,本系統決定采用電池供電,本設計考慮了如下幾種方案為系統供電。
方案一:
采用6節(jié)1.5V干電池供電,電壓達到9V,經7812穩(wěn)壓后給支流電機供電,然后將9V電壓再次降壓、穩(wěn)壓后給單片機系統和其他芯片供電。但干電池電量有限,使用大量的干電池給系統調試帶來很大的不便,同時會使的小車的體積變的過于龐大和比較重,顯的很笨重不利于小車的靈活性使電機的負載增加。同時因為小車的耗電量比較大,用干電池供電費用比較大。但卻具有容易獲得,更換電池方便的特點。
方案二:
采用3節(jié)4.2V可充電式鋰電池串聯共12.6V給直流電機供電,經過7812的電壓變換后給支流電機供電,然后將12V電壓再次降壓、穩(wěn)壓后給單片機系統和其他芯片供電。鋰電池的電量比較足質量輕體積小,并且可以充電,重復利用,時比較理想的供電源。因此,這種方案比較可行。但鋰電池的價格過于昂貴,使用鋰電池會大大超出我們的預算,因此,放棄了這種方案。
方案三:
采用12V蓄電池為直流電機供電,將12V電壓降壓、穩(wěn)壓后給單片機系統和其他芯片供電。蓄電池具有較強的電流驅動能力以及穩(wěn)定的電壓輸出性能。雖然蓄電池的體積過于龐大,在小型電動車上使用極為不方便,但由于我們的車體設計時留出了足夠的空間,并且蓄電池的價格比較低可以重復充電利用,實用起來也比較方便。
綜上考慮,電源模塊選擇了方案一。
1.6 穩(wěn)壓模塊
方案一:
采用兩片7812將電壓穩(wěn)壓至12V后給直流電機供電,然后采用一片7809將電壓穩(wěn)定至9V,最后經7805將電壓穩(wěn)至5V,給單片機系統和其他芯片供電,但7809和7805壓降過大,使7809和7805消耗的功率過大,導致7809和7805發(fā)熱量過大,因此,穩(wěn)壓模塊放棄了這種方案。
方案二:
采用兩片LM2596將電壓穩(wěn)壓至12V后給直流電機供電,LM2596系列是美國國家半導體公司生產的3A電流輸出降壓開關型集成穩(wěn)壓芯片,它內含固定頻率振蕩器(150KHZ),和基準穩(wěn)壓器(1.23v),并具有完善的保護電路:電流限制、熱關斷電路等。利用該器件只需極少的外圍器件便可構成高效穩(wěn)壓電路。 對單片機供電時采用L7805CV將電壓穩(wěn)至5V,用L7805CV組成穩(wěn)壓電源所需的外圍元件極少,電路內部還有過流、過熱及調整管的保護電路,使用起來可靠、方便,而且價格便宜。L7805CV的輸出電流最大可至3A,完全滿足系統要求。
綜上考慮,穩(wěn)壓模塊設計選擇了方案二。
1.7 循跡傳感器模塊
傳感器對于本設計小車來說就相當于眼睛,是系統和外界聯系的關鍵部件,可以說是智能小車的運行的基礎。所以選擇合適的傳感器對于本設計來說很重要,合適的傳感器能使小車達到高的分辨率,提高小車適應外部環(huán)境轉變的能力,有利于小車的控制精度,以便快速準確的完成任務。
方案一:
采用簡易光電傳感器結合外圍電路探測,雖然說電路簡單制作方便但實際效果并不理想,對行駛過程中的穩(wěn)定性要求比較高,且易受光線環(huán)境和路面介質影響,而智能小車的基本要求是能不斷適應變化的環(huán)境,所以要求傳感部分要有較高的穩(wěn)定性,以準確獲取必要的信息。并且該傳感器方法在使用過程很容易出現問題,而且容易因為該部件造成整個系統的不穩(wěn)定,不能滿足小車的穩(wěn)定性要求。
方案二:
采用兩只紅外對管,分別置于小車車身前軌道的兩側,根據兩只紅外光電開關接受到白線與黑線的情況來控制小車轉向來調整車向,如果左邊的傳感器檢測到黑線小車就向右轉,同理右邊的檢測的黑線時一樣。只要合理安裝好兩只光電開關的位置就可以很好的實現循跡的功能。該電路具有結構簡單調試容易等特點但卻無法檢測黑線上的情況不滿足本設計的要求。
方案三:
用光敏電阻組成光敏探測器。光敏電阻的阻值可以跟隨周圍環(huán)境光線的變化而變化。當光線照射到白線上面時,光線發(fā)射強烈,光線照射到黑線上面時,光線發(fā)射較弱。因此光敏電阻在白線和黑線上方時,阻值會發(fā)生明顯的變化。將阻值的變化值經過比較器就可以輸出高低電平。但光敏電阻受環(huán)境光線影響太大,容易產生錯誤信息,且要運用比較器進行高低電平比較會增加電路的設計復雜程度,增加小車系統的功耗。
方案四:
采用五只紅外對管,三只置于軌道中間,兩只置于軌道外側,當小車脫離軌道時,即當置于中間的三個紅外對管中的一只紅外對管脫離軌道時,等待外面任一只檢測到黑線后,做出相應的轉向調整,直到中間的紅外對管重新回到軌道并檢測到黑線再恢復正向行駛。雖然小車在尋跡過程中有一定的左右搖擺不定并且小車行進速度較慢,并且成本和穩(wěn)定性相對于方案二都較次,但方案三能檢測黑線上的白點,雖說該方案有諸多缺點但卻能配合軟件設計完成本小車設計的基本要求。
根據本設計要求,循跡傳感器模塊用方案四的。
1.8 避障模塊
避障和循跡傳感器一樣都是小車的基本,好的避障傳感器能準確的識別障礙物,為小車系統提供優(yōu)質的外部環(huán)境數據,以實現小車快速精準躲避障礙物,另外傳感器的安裝方式也影響著傳感器的工作效率和編寫程序的工作量和復雜程度。為此為小車提供了三種方案如下。
方案一:
紅外對管采用一只紅外對管置于小車中央。雖然電路設計和安裝簡易,也可以檢測到前方的障礙物,并通過軟件可以做出躲避行為但很難確保小車在水平方向上是否會與障礙物相撞,也不容易讓小車做出精確快速的轉向反應并且很難控制小車避過未知大小的障礙物,達不到自動避障回到黑線上,所以該方案并不符合設計要求。
方案二:
采用二個紅外對管置于小車的前端左右兩側,方向與小車前進方向相同,對小車與障礙物相對距離和方位能作出較為準確的判別和及時反應。此方案過于依賴硬件、缺乏創(chuàng)造性,而且置于小車左方的紅外對管用到的幾率很小。體現不出設計的最優(yōu)化。
方案三:
采用一只光電開關置于小車中央,一個可調光電傳感器裝在小車右側,這樣不但能測試到小車前方的障礙物,并可以用于測試到小車右側的障礙物并通過調整測試距離保持小車與障礙物之間的距離,通過程序的優(yōu)化小車可以智能的識別障礙物大小并選擇合適的路線繞過障礙物回到循跡線上。通過測試此種方案就能很好的實現小車避開障礙物,且充分的利用資源而不浪費。能從各方面優(yōu)化設計和電路的簡易化并使程序編寫的復雜程度有所降低。
通過比較選方案三比較容易實現小車的要求。
2 硬件設計
2.1 總體設計思路和方案的確定
救援小車采用四輪驅動,通過兩個L298控制四個直流電機實現小車的各種運動,將紅外探頭裝在車體下的左中右以實現循跡和發(fā)現白點的要求。電機的快慢是通過單片機根據傳感器收集到的信息產生的PWM波的占空比高低來調節(jié)的,占空比高電機轉慢,反之則轉的快。電機的正轉反轉是通過L298固定的高低電平進行對電機轉動的有效控制的。轉向時,小轉向時為一個電機轉慢一個電機轉快。大轉向時時為一個電機正轉一個電機反轉。循跡基本功能是通過紅外探頭檢測黑線來實現的,如果左邊的探頭檢測到黑線,向右慢轉,反之亦然。
避障原理和循跡原理基本相同也是根據光電對管收集到的信息通過單片機來進行電機轉向和調速的。
經過反復論證,我們最終確定了如下方案:
(1)車體直接用現成車模。
(2)采用stc89C52單片機作為主控制器。
(3)采用兩個直流電機作為動力源驅動小車運行。
(4)用RPR220型光電對管進行尋跡。
(5)2個L298N作為直流電機的驅動芯片。
系統的結構框圖如圖2-1所示
圖 2-1 電路系統的結構總框圖
小車硬件系統所需的基礎元件如表2-1
表2-1 元器件件清單
元件
數量
元件
數量
元件
數量
直流電機
2個
電阻
若干
電容
若干
電位器
若干
紅外調制光電傳感器
2個
紅外探頭
3個
單片機
1個
蜂鳴器
1個
電位器
若干
12M晶振
1個
杜邦線
若干
二極管
若干
車模
1個
光電開關
2個
2.2 聲光報警電路設計
本設計采用蜂鳴器和發(fā)光二極管實現聲光報警,根據采集到的外部環(huán)境數據的變化用單片機I/O口通過三極管輸出高低電平來直接對蜂鳴器和二極管進行控制,聲光報警可以很好的反映當前小車的運行狀況。如下圖2-2所示。
圖2-2 聲光報警原理圖
2.3小車驅動部分的電路設計
電機驅動多數采用H橋式驅動電路,L298N內部集成了H橋式驅動電路,從而可以采用L298N電路來驅動電機相當比較簡單和容易。L298N是內含二個H橋的高電壓大電流雙全橋式驅動器可驅動46v,2A以下電機,。L298N是一個具有高電壓大電流的全橋驅動芯片,響應頻率高,一片L298N可以分別控制兩個直流電機,而且還帶有控制使能端。用該芯片作為電機驅動,操作方便,穩(wěn)定性好,性能優(yōu)良。本芯片的缺點是由于工作電流比較大,發(fā)熱量也比較大,所以在本芯片的散熱片上又連接了一塊鋁合金,以增大它的散熱面積。以致在運用是要注意電路的散熱。引腳圖如2-3所示,電機驅動電路原理圖如2-4所示
圖2-3 L298引腳圖
圖2-4 電機驅動電路原理圖
在小車中正在用L298N驅動小車的兩個直流減速電機,其實它很好用,1和15和8引腳直接接地,4管腳VS接2.5到46的電壓,它是用來驅動電機的,9引腳是用來接4.5到7V的電壓的,它是用來驅動L298芯片的,記住,L298需要從外部接兩個電壓,一個是給電機的,另一個給L298芯片的,6和11引腳是它的使能端,一個使能端控制一個電機,至于那個控制那個你自己焊接,你可以把它理解為總開關,只有當它們都是高電平的時候兩個電機才有可能工作,5,7,10,12是298的信號輸入端和單片機的IO口相連,2,3,13,14是輸出端,輸入5和7控制輸出2和3, 輸入的10,12控制輸出的13,14。L298N的5、7、10、12四個引腳接到單片機上,通過對單片機的編程就可以實現兩個直流電機的PWM調速以及正反轉等功能。
2.4 小車傳感部分的電路設計
小車的傳感模塊主要負責對外部環(huán)境的監(jiān)測和處理。小車循跡原理是小車在畫有黑線的路面上行駛,因為黑線和地面對光線的反射系數不同,可根據接收到的反射光的強弱來判斷道路。我在該模塊中利用了簡單、應用也比較普遍的檢測方法——紅外探測法。
紅外探測法就是利用紅外線照射在不同顏色的表面具有不同的反射率的特點。在小車行駛過程中不斷地通過紅外探頭向地面發(fā)射紅外線。紅外線照射到地面時發(fā)生漫反射,小車上的接收管接收到信號;紅外線照射到黑線上則紅外光被吸收,則小車上的接收管接收不到信號,從而實現信號的檢測并通過一定的電路輸送到運算核心判斷路線。避障的原理和循跡的原理相同。
針對紅外探測法,本方案考慮并論證了兩種光電對管檢測及調理電路方法,并通過這兩種方法的比較選出合適小車小系統的電路。電路原理圖分別如圖2-5和圖2-6所示。
圖2-5 光電對管檢測電路1
如圖2.5所示電路中,R1起限流電阻的作用,當有光反射回來時,光電對管中的三極管導通,R2的上端變?yōu)楦唠娖?,此時VT1飽和導通,三極管集電極輸出低電平。當沒有光反射回來時,光電對管中的三極管不導通,VT1截至,其集電極輸出高電平。該電路的優(yōu)點是電路不叫簡單,應用到的原理也比較簡單。
但在該電路中起到濾波整形的作用的是VT1。該電路工作性能一般,輸出有雜散干擾波的成分。并且這種電路有一個比較大的缺點是用電量大,給此種傳感器調理電路供電的電池壓降較快。其原因是因為光敏三極管和三極管VT1導通時的導通電流較大。
圖2-6 光電對管檢測電路2
如圖2.6所示電路中是通過比較器采集高低電平,從而實現信號的檢測。在圖中,可調電阻R3可以調節(jié)比較器的門限電壓,經示波器觀察,輸出波形相當規(guī)則,可以直接夠單片機查詢使用。而且經試驗驗證給此電路供電的電池的壓降較小。電路的穩(wěn)定性主要取決于比較器的穩(wěn)定性和精確性,就現在市場上的比較器來說比較器的穩(wěn)定性都很高所以采用該光電對管檢測電路相當穩(wěn)定。因此本次設計中選擇此電路作為小車系統的傳感器檢測與調理電路。
2.5主控電路設計
本電路采用stc12C5A60S2作為系統電路核心。本電路主要起對傳感器采集到的信號進行分析,同時產生控制電機轉動速度和停止的PWM信號,是小車的硬件核心部分,實現躲避障礙物和發(fā)現白點時發(fā)出光電報警。根據要求,我們組成單片機最小系統以實現設計要求,最小系統主要由復位電路、時鐘電路、電源電路和一個USB下載口組成。
在開發(fā)過程中使用開發(fā)版,方便程序的調試和整機的測試,待系統調試完成后,將單片機從開發(fā)板上取下,安裝在小車系統板的單片機座中,再進行實際驗證。這樣做能實現開放和調試的簡易和快速性。
其電路圖如下圖2-7所示。
圖2-7 主控電路板電路圖
3 軟件設計
為了在任務中完成循跡,避障和發(fā)現白點的任務,小車一方面需要具有探測周圍環(huán)境的能力并完成前進、轉彎、停止和發(fā)出光聲報警等動作這是建立在必要的硬件基礎之上的;另一方面還要具有自動循跡,自動避障并回到線上,還要在發(fā)現白點時停下并發(fā)出光聲報警這一體現了小車的智能化,即軟件的編寫是這部分的核心,可以說軟件編程是人們賦予機器智能的過程,軟件的優(yōu)異決定了小車的智能程度和執(zhí)行任務的速度。其中前一功能依賴于硬件設計并貫穿小車運行始終,為底層任務,。后一功能是并不依賴于硬件,而是建立在硬件收集到的周圍環(huán)境信息并基于這些信息上的軟件設計和信息處理上。所以軟件算法的優(yōu)化在智能小車中扮演著很重要的角色。
3.1 主程序流程框圖
我們所設計的軟件的主程序流程圖如下圖所示:
圖 3-1 主程序流程圖
3.2 電機驅動
本設計中對直流電機進行調速是通過軟編程使單片機產生有一定占空比的PWM波。并通過配合L298芯片進行對電機的實時控制調速。
3.3 循跡模塊
循跡流程框圖
圖3-2 小車循跡流程框圖
3.4 避障模塊
避障流程框圖
N
Y
N
N
Y
Y
右側光電管是否檢測到障礙
小車左轉
結束
紅外探頭是否檢測到黑線
小車右轉
小車左轉 90度
是否檢測到障礙
開始
4 制作安裝與調試
4.1 PCB的設計制作與安裝
在硬件方案確定下來后,我們通過采用DXP2004來繪制原理圖與PCB板,DXP2004是一款十分強大的軟件,相比較于Protel99或者protel99se 它帶給我們更高的繪制效率,并且能很大程度上減輕布線的繁雜。布線的過程中必須注意焊盤的大小與銅線的寬度,因為焊盤的大小直接影響的后期電子元件的安裝質量和難易程度,而銅線的大小會影響到電流傳送的質量進而影響小車系統的精度。我們選取的焊盤內徑為0.8mm,外徑2mm;銅線寬1mm。從做板的情況來看基本達到制作得要求。
采用螺絲將循跡板安裝在車頭底盤上同時調整好它們之間的角度和位置以更好的工作。把避障板安裝在車頭上,主板直接安裝在車模上的板上,而電機是車模自帶的只要把線接好就行了。
4.2 小車的調試
小車的調試是看看小車個硬件系統是否運轉正常,并根據情況具體調整以使小車處于比較佳的狀態(tài),而調試中最重要的部分是調整傳感器的傳感精度等各項功能。在調整循跡傳感器時通過改變循跡板滑動變阻器器的大小來調試紅外對管的靈敏度以使之達到要求精度。在調整避障傳感器時也是通過改變變阻器的大小來改變傳感器傳感器距離,這一個距離對于小車來說是個十分重要的數據,直接影響到小車是否會碰到障礙物,是否能成功完成任務。以上的基本都是針對于硬件方面的調試,而軟件方面的調試是根據實際運行結果來進行調整,對速度的調整是通過改變延時程序來改變速度的大小。下表為小車的實際運行情況:
表4-1 小車調試情況表
小車運行次數
成功循跡次數
成功避障次數
1
1
1
2
2
2
3
3
2
4
4
3
5
5
4
經過不斷的調試小車已經具有不錯的執(zhí)行任務的可靠性。對于一個系統來說執(zhí)行任務的可靠性是一個至關重要的數據,是判斷一個產品的好壞的主要依據,而我們的調試的任務就是在不斷試驗中發(fā)現問題不斷修改使之不斷完美。
5 結論
整個系統的設計是以單片機為核心,利用了多種傳感器,將軟件和硬件相結合的智能小系統。其中涉及到很多傳感器和電子運用方面的知識,同時軟件和硬件的結合也是一個很重要的方面。本系統能相當智能地實現如下功能:
1. 自動沿預設軌道行駛小車在行駛過程中,能夠自動檢測預先設好的軌道,實現直道和弧形軌道的前進。若有偏離,能夠自動糾正,返回到預設軌道上來。
2. 當小車探測到前進前方的障礙物時,可以自動調整行進速度,自動選擇合適路線躲避障礙物,從無障礙區(qū)通過。小車通過障礙區(qū)后,能夠自動循跡回到預先設定好的軌道上繼續(xù)前進。
3. 當檢測到黑色軌道線上的白色標志時小車能停下來并發(fā)出光聲報警,5秒后能繼續(xù)前進。
從運行情況來看循跡的效果比較好達到預期要求,避障的效果不是很好,我認為是由于電源不夠穩(wěn)定導致的小車的速度不好控制,也有可能是避障傳感器安裝配置的不夠好,不能準確檢測到障礙物的準確距離和位置。這也是我這次設計最大的誤區(qū),沒有選取穩(wěn)定的電源,沒有很好的調整好避障傳感器的傳感精度。我相信如果實驗條件和時間的允許下我肯定能解決這一問題。
通過本次設計我掌握了很多以前不熟練的東西,認識了很多以前不熟悉得東西,特別是電子和單片機的運用上。以前的我對電子和單片機的運用只停留在課本的知識層面上,根本不知道在運用時會有很多的注意事項。特別是軟件編程方面,在認知中課本的知識和編程都是挺簡單的,但到了實際編程運用時會遇到很多從未遇到過的難題,程序的調試是一件很繁雜的事情。而傳感器方面的知識,對于以前的我來說是一件空白,但通過智能小車的設計,對傳感器的運用有了一定的了解。通過這次制作使我認識到很多的不足。
致 謝
本設計能夠順利完成,還承蒙李老師以及身邊的很多同學的指導和幫助,特別是機器人中心的同學的鼎力支持和全力幫助。在設計過程中,李老師給予了悉心的指導,最重要的是給了我解決問題的思路和方法,為我解決了很多思路上的誤區(qū)和迷惑,從原理的層面上解決設計上遇到的問題。而在設計環(huán)境和器材方面和電路設計制作方面機器人中心的同學給予了大力的幫助和支持,他們運用他們的優(yōu)勢在我所不是很了解的電子制作方面給予了很大幫助,一直指導著我如何去完成一個電路的設計和制作。當我們在知識的探索中,在面對不熟悉的領域時,向朋友向老師向了解的人請教是一個很重要的過程,這在我看來是一個很愉快的過程,達者為師。在此,我對李老師表示最真摯的感謝!同時感謝所有幫助過我的同學!
參考文獻
[1] 胡偉,季曉衡.單片機C程序設計及應用實例[M]. 北京:人民郵電出版社,2003.
[2] 趙景波,王勁松,滕敦朋. Protel 2004電路設計從基礎到實踐[M]. 北京:電子工業(yè)出版社,
2007.
[3] 求是科技.單片機典型外圍器件及應用實例[M]. 北京:人民郵電出版社,2006.
[4] 王曉明.電動機的單片機控制[J].學術期刊,2002,13(15):1322-1755.
[5] 趙亮,侯國銳.單片機C語言編程與實例[M]. 北京:人民郵電出版社,2003.
[6] 龔運新.單片機C語言開發(fā)技術[M].北京:清華大學出版社,2006.
[7] Peter Spasov.微控制器原理與應用[M]. 北京:清華大學出版社,2006.
[8] Scott MacKenzie.The 8051 Microcontroller[M]. Prentice Hall. 1998.
[9] 林克明, 陳羽, 郭從良.微控制器系統原理與應用[M]. 北京:科學出版社,2007.1.
[10] 裴亞男, 付智輝.數字邏輯[M].成都:西南交通大學出版社,2005.
[11] 何道清.傳感器與傳感器技術[M].北京:科學出版社,2004.
[12] 白延敏.51單片機典型系統開發(fā)實例精講[M].北京:電子工業(yè)出版社,2009,1.
[13] Spasov,Peter. Microcontroller technology[M]. Prentice Hall,2004.
[14] Yamato I,et al 1 New conversion system for UPS using high fre2 quency link[J] 1 IEEE
PESC ,1988 :210-320.
[15] Italian Conference on Sensors and Microsystems Di Natale,C.Proceeding of the 7th Italian
Conference:sensors and microsystems:Bologna,Italy,4-6 February 2002[M] Singapore;River
Edge.N.J.:World Scientific,c2002.
附 錄
以下是本次設計的小車執(zhí)行的程序:
#include
int dr; //標志位
int flag1=0;
int flag2=0;
int flag3=0;
int flag4=0;
int stop=0;
int stop2=0;
sbit guangdian3=P2^5;
sbit guangdian1=P2^6; //光電管接口
sbit guangdian2=P2^7;
sbit left2=P2^0; //循跡接口
sbit left1=P2^1;
sbit middle=P2^2;
sbit right1=P2^3;
sbit right2=P2^4;
sbit fengming=P0^5; //蜂鳴器接口
sbit led=P0^4; //LED接口
sbit motor_left=P0^0; //電機接口
sbit motor_left_gnd=P0^1;
sbit motor_right=P0^2;
sbit motor_right_gnd=P0^3;
void delay(unsigned int x) //延時毫秒程序
{
int i,j;
for(i=x;i>0;i--)
{
for(j=110;j>0;j--);
}
}
void delay1(unsigned int x) //延時輔助程序
{
for(x;x>0;x--)
{
;
};
}
void main()
{
int i,j; //初始化
fengming=0;
led=1;
guangdian1=1; //光電管接口
guangdian2=1;
TMOD=0X01;
TH0= 0XF8; //1ms定時
TL0= 0X30;
TR0= 1;
ET0= 1;
EA = 1;
delay(100);
motor_left_gnd=0;
motor_right_gnd=0;
while(1)
{
if(flag1==0) //正常循跡
{
if(middle==0&&left2==1&&right2==1)
{
motor_left=0;
motor_right=0;
led=0; //燈閃爍,蜂鳴器叫
fengming=1;
delay(1000);
led=1;
fengming=1;
delay(1000);
led=0;
fengming=1;
delay(1000);
led=1;
fengming=1;
delay(1000);
fengming=0;
while(1)
{
motor_left=0;
motor_right=0;
//檢測到人時,停止
}
}
switch(dr)
{
case 0:
motor_left=0,motor_right=0,motor_left_gnd=0,motor_right_gnd=0;
delay1(40);
motor_left=1,motor_right=1,motor_left_gnd=0,motor_right_gnd=0; //直走
delay1(60);
break;
case 2: motor_left=1,motor_right=0,motor_left_gnd=0,motor_right_gnd=0;
delay1(60);
motor_left=1,motor_right=1,motor_left_gnd=0,motor_right_gnd=0;
delay1(2);
motor_left=0,motor_right=0,motor_left_gnd=0,motor_right_gnd=0;
delay1(10);
break; //右轉
case 1: motor_left=0,motor_right=1,motor_left_gnd=0,motor_right_gnd=0;
delay1(60);
motor_left=1,motor_right=1,motor_left_gnd=0,motor_right_gnd=0;
delay1(2);
motor_left=0,motor_right=0,motor_left_gnd=0,motor_right_gnd=0;
delay1(10);
break; //左轉
}
}
if(flag1==1) //壁障過程
{
for(i=200;i>0;i--)
{
for(j=110;j>0;j--)
{
motor_left=0;
motor_right=0;
motor_left_gnd=0;
motor_right_gnd=0;
}
}
while(right1==0)
{
if(guangdian3==1)
{
motor_left=1,motor_right=1,motor_left_gnd=0,motor_right_gnd=0; //右轉
delay1(20);
motor_left=1,motor_right=0,motor_left_gnd=0,motor_right_gnd=0;
delay1(100);
motor_left=0,motor_right=0,motor_left_gnd=0,motor_right_gnd=0;
delay1(40);
}
if(guangdian3==0)
{
motor_left=1,motor_right=1,motor_left_gnd=0,motor_right_gnd=0; //左轉
delay1(20);
motor_left=0,motor_right=1,motor_left_gnd=0,motor_right_gnd=0;
delay1(100);
motor_left
收藏