智能小車的設計畢業(yè)論文
《智能小車的設計畢業(yè)論文》由會員分享,可在線閱讀,更多相關《智能小車的設計畢業(yè)論文(81頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、摘 要 摘 要 80C52單片機是一款八位單片機,它的易用性和多功能性受到了廣大使用者的好評。這里介紹的是如何使用80C52單片機來實現(xiàn)智能小車的設計,該設計是結合科研項目而確定的設計類課題。本系統(tǒng)以設計題目的要求為目的,采用80C52單片機作為控制核心,采用紅外傳感器檢測道路面上的障礙,控制智能小車的自動避障,快慢速行駛,按鍵開車停車,并可以實現(xiàn)自動記錄行駛時間,自動避障,自動尋線功能。最終完成智能車設計需要綜合單片機編程、模數(shù)電、Protel 設計、電路焊接、自動控制算法設計等多方面內(nèi)容。整個系統(tǒng)的電路結構簡單,可靠性能高。實驗測試結果滿足要求,本文著重介紹了該系統(tǒng)的硬件設計方法及測
2、試結果分析。 采用的技術主要有: (1) 通過編程來控制小車的速度; (2) 傳感器的有效應用; (3) 顯示譯碼管的使用。 關鍵詞: 80C52單片機;光電檢測器;PWM調(diào)速;智能小車 - I - ABSTRACT Design and create an intelligence electricity motive small car Abstract 80C52 is a 8 bit single chip computer. Its easily using and multi-function benefit l
3、arge users. This article introduces the UESTC graduation design with the 80C52 single chip computer. This design combines with scientific research object. This system regards the request of the topic, adopting 80C52 for controlling core, infrared reflection sensor for test the hinder. It can run in
4、a high and a low speed or stop automatically. It also can record the time, distance and the speed or searching light and mark automatically the electric circuit construction of whole system is simple, the function is dependable. Experiment test result satisfy the request, this text emphasizes introd
5、uced the hardware system designs and the result analyze. The adoption of technique as: (1) Speed control by program the engine; (2) Efficient application of the sensor; (3) The adoption of the new display chip. Keywords 80C52 single chip computer; light electricity detector; PWM speed adju
6、sting;Electricity motive small car 目 錄 目 錄 第一章 引 言 5 第二章 方案設計與論證 7 2.1 微處理器(MCU)和場可編程邏輯門陣列(FPGA)的選擇 7 2.2 直流電機和步進電機的選擇 9 2.3 舵機和萬向輪的選擇 10 2.4 最終元器件選擇 11 第三章 硬件設計 13 3.1 課題的方案論證 13 3.1.1 主要任務 13 3.1.2 功能要求 13 3.1.3 性能指標 13 3.2 課題工作 13 3.3 系統(tǒng)整體框圖 14 3.4 電源模塊設計 14 3.5 單片機最小系統(tǒng)設計 14
7、 3.6 紅外探測模塊設計 16 3.7 后輪電機驅動模塊設計 17 3.8 測速模塊設計 21 3.9 發(fā)光二級管電路的設計 22 3.10 七段譯碼管電路的設計 23 3.11 蜂鳴器電路的設計 25 3.12 外接排針模塊的設計 25 3.13 液晶顯示屏電路的設計 26 3.14 DS1302模塊的設計 26 3.15 M24C02BN6模塊的設計 26 3.16 巡線模塊的設計 26 3.17 火焰?zhèn)鞲衅鞯脑O計 27 第四章 軟件設計 30 4.1 基本原理 30 4.2 控制真值表和卡諾圖 30 4.3 端口定義 35 4.4 頭文件定義 36 4
8、.5 延時函數(shù)定義 38 4.6 PWM脈寬調(diào)制定義 38 4.7 隨機轉向模塊 39 4.8 初始化模塊 40 4.9 巡線模塊 41 4.10 行駛控制模塊 42 4.11 停車模塊 43 4.12 按鍵檢測模塊和點火啟動模塊 44 4.13 傳感器檢測模塊 45 4.14 蜂鳴器模塊 46 4.15 發(fā)光二級管模塊 47 4.16 七段譯碼管模塊 47 4.17 主函數(shù)模塊 48 4.18 中斷模塊 49 第五章 設計創(chuàng)新點 51 5.1 在算法上的創(chuàng)新點 51 5.1.1 光線反射式避障 51 5.1.2 多種避障算法結合 51 5.1.3 U型死角
9、自動倒車 52 5.2 在硬件上的創(chuàng)新點 52 5.2.1 雙核 52 5.2.2 點火啟動 53 5.2.3 溫度檢測 53 5.2.4 日歷顯示 54 5.2.5 硬件可更改 54 5.2.6 兩種行駛方式 54 5.3 在程序上的創(chuàng)新點 54 5.3.1 大量使用狀態(tài)機 54 5.3.2 車速預置 55 5.3.3 邊沿判定 55 5.3.4 精確停車 56 第六章 測試與調(diào)試 57 6.1 測試方法與儀器 57 6.1.1 測試儀器 57 6.1.2 測試方法 57 6.2 測試數(shù)據(jù)和測試結果 57 6.2.1 定時精度 57 6.2.2 停車精度
10、 57 6.2.3 直線行駛精度 57 6.2.4 點火精度 58 第七章 問題與思考 59 第八章 結束語 61 致謝 63 參考文獻 64 外文翻譯 65 Intelligent Vehicle 65 中文翻譯 75 智能車 75 - 5 - 第一章 引 言 隨著汽車工業(yè)的迅速發(fā)展,關于汽車的研究也就越來越受人關注。全國電子大賽和省內(nèi)電子大賽幾乎每次都有智能小車這方面的題目,全國各高校也都很重視該題目的研究,可見其研究意義重大,但是,各大智能車比賽項目或活動大都是在預先設計好的賽道上進行的,在實現(xiàn)智能避障時,卻顯得乏力。本設計就是在這樣的背景下提出的,
11、本題目是結合科研項目而確定的設計類題目。設計的智能電動小車要求能夠實時顯示行駛時間、速度、里程,具有自動尋跡、避障功能,可程控行駛速度、精確定位停車。 根據(jù)題目的要求,確定如下方案:在現(xiàn)有玩具電動車的基礎上,外加光電、紅外傳感器,實現(xiàn)對電動車的速度、位置、運行狀況的實時測量,并將測量數(shù)據(jù)傳送至單片機進行處理,然后由單片機根據(jù)所檢測的各種數(shù)據(jù)實現(xiàn)對電動小車的智能控制。 這種方案能實現(xiàn)對電動小車的運動狀態(tài)進行實時控制,控制靈活、可靠、精度高、易于調(diào)試和維護,可以根據(jù)不同環(huán)境,不同參數(shù)更改程序代碼,調(diào)整硬件結構,使小車滿足要求的指標。本設計采用MCS-51系列中的80C52單片機。以80C5
12、2為控制核心,利用紅外傳感器檢測道路上的障礙,控制電動小車自動避障,快慢速行駛,并可以自動記錄時間、行駛里程,即時顯示速度,自動循跡和尋光功能。 80C52是一片8位的微控制器,作為第三代微控制器,它的易用性和多功能性能滿足大多數(shù)場合的要求。第三代單片機包括了Intel公司發(fā)展MCS-51系列的新一代產(chǎn)品,如8xC152、80C51FA/FB、80C51GA/GB、8xC451、8xC452,還包括了Philips、Siemens、ADM、OKI、Harria-Metra、Atmel等公司以80C51為核心推出的各具特色、與80C51兼容的單片機。新一代的單片機的最主要的技術特點是向外部接口
13、電路擴展,向更完善的控制功能擴展,能與常用的外部接口功能單元如A/D、PWM、PCA(可編程計數(shù)器陣列)、WDT(看門狗監(jiān)視定時器)、高速I/O口、計數(shù)器的捕獲/比較邏輯等兼容。第三代微控制器中,在總線方面最重要的進展是為單片機配置了芯片間的串行總線,為單片機應用系統(tǒng)設計提供了更加靈活的方式。Philips公司還為80C51系列的8xC592單片機引入了具有較強功能的設備間網(wǎng)絡系統(tǒng)總線CAN(Controller Area Network BUS)。這些完善的總線結構,為系統(tǒng)的擴展與配置打下了良好的基礎。 單片機發(fā)展到這一階段,表明單片機已成為工業(yè)控制領域中普遍采用的智能化控制工具,小到玩具
14、、家電行業(yè),大到車載、艦船電子系統(tǒng),遍及計量測試、工業(yè)過程控制、機械電子、金融電子、商用電子、辦公自動化、工業(yè)機器人、軍事和航空航天等領域。為滿足不同的要求,出現(xiàn)了高速、大尋址范圍、強運算能力和多機通信能力的8位、16位、32位通用型單片機,小型廉價型、外圍系統(tǒng)集成的專用型單片機,以及形形色色各具特色的現(xiàn)代單片機。 本設計采用80C52RC芯片作為控制單元,80C52采用CMOS工藝,功耗很低。 該設計具有實際意義,其無人駕駛的特性可以應用于考古、地震救援、醫(yī)療器械、自動搬運等許多方面,尤其是在足球機器人研究方面具有很好的發(fā)展前景;在考古方面應用到的超聲波傳感器進行檢測,所以本設計與實際
15、結合,應用性較強。 - 81 - 電子科技大學學士學位論文 第二章 方案設計與論證 智能車制作是一個涵蓋電子、電氣、機械、控制等多個領域和學科的科技創(chuàng)新活動。簡單點來說可以將其分為硬件電路(包括電源、MCU控制部分、電機驅動、傳感器)、機械、算法三方面的設計。 根據(jù)題目的要求,確定如下方案:在現(xiàn)有玩具小車的基礎上,加裝光電傳感器,實現(xiàn)對電動小車的速度、位置、運行狀況的實時測量,并將測量數(shù)據(jù)傳動通過信號流的方式傳送至單片機進行處理,然后由單片機根據(jù)所檢測的各種數(shù)據(jù)實現(xiàn)對電動小車的智能控制。 這種方案能實現(xiàn)對電動小車的運動狀態(tài)進行實時控制,控制簡單、靈活、可靠、精度高,測量
16、障礙的距離可調(diào)整,其整體模塊均可以通過軟件或硬件的調(diào)整來滿足各種場合的需求。 2.1 微處理器(MCU)和場可編程邏輯門陣列(FPGA)的選擇 方案一:場可編程邏輯門陣列作為控制核心 方案二:微處理器作為控制核心 場可編程邏輯門陣列的優(yōu)缺點: ·高速性。作為信號高速處理的標準模塊,擁有比MCU高出三個量級的頻率,這意味著FPGA可以擁有高速的信號處理能力,速度高到可以實現(xiàn)將信號進行FFT變換,實現(xiàn)數(shù)字濾波,最后再進行FFT變換還原信號,這樣大量的數(shù)據(jù)處理需要高速的數(shù)字器件完成。所以目前FPGA在通訊領域發(fā)揮著其不可替代的作用。 ·穩(wěn)步發(fā)展的技術。FPGA作為更新的技術,在幾年之內(nèi)
17、會變得更加快速、更加便宜,此技術的發(fā)展空間和發(fā)展?jié)摿薮蟆? ·大量的端口。相對于MCU的32個IO口,F(xiàn)PGA擁有高出MCU一個量級的端口數(shù)目,這為以后更好的技術的出現(xiàn)提供了硬件擴展支持,設計者在進行系統(tǒng)的初始設計期間,就能夠考慮到并適應預期的技術發(fā)展,并提供額外的擴展端口為技術升級做準備。FPGA擁有的端口數(shù)為256、512、1024或者更多。 ·嚴謹。作為嚴謹?shù)恼Z言,F(xiàn)PGA中變量和信號有所區(qū)分,不同進制之間區(qū)分,這樣雖然降低了潛在的錯誤風險,但是,這會使設計變得更加復雜。 ·大量的警告和錯誤。以xilinx的ISE為例,即時程序設計正確,在綜合的時候,也至少有十處警告,這說明了技術
18、的不成熟,有待改進和發(fā)展。 ·支持的語言模塊太少。數(shù)字設計中,VHDL工具甚至不能很好地綜合for循環(huán)(可能造成無效或不可綜合),將for循環(huán)的每一次循環(huán)用單獨的器件實現(xiàn),每個i值生成一組器件,以此來解開for循環(huán)并實現(xiàn)電路,這樣會造成器件的大量浪費,這將是以一個極其昂貴的解決方式。不能運用mod操作符求余,因為這個操作需要除法,多數(shù)VHDL工具不能綜合出觸發(fā)電路,除了二位除法(一次右移操作)等簡單除法。 與之相比,微處理器擁有成熟的技術,設計完善,編程實現(xiàn)時可以做到零錯誤零警告,支持比硬件描述語言(VHDL)更好的C語言。設計簡單,設計程序簡潔有效,出錯率大大降低。由寄存器組實現(xiàn)數(shù)據(jù)存儲
19、記憶,與寄存器和觸發(fā)器存儲數(shù)據(jù)相比更加有效,支持自動數(shù)據(jù)轉換,設計更加簡單。比如clk時鐘信號,在FPGA中,需要為時鐘信號專門寫進程,需要專門分配端口,再使用分頻得到想要的頻率,在MCU中,時鐘信號是所有器件的驅動時鐘,對于計時,僅僅需要打開寄存器讓寄存器計數(shù)即可。并且在數(shù)字設計中對MCU程序的設計是邏輯的,不需要特別的數(shù)學技能。而不像對電容器、晶體管或其他的元器件那樣,要求對模型進行計算才能了解和認識他們的內(nèi)部特性和工作過程。 事實上,微處理器有很多的優(yōu)點: ·易于設計。MCU支持各種進制之間的自動轉換,設計時不用考慮具體信號進制,在硬件實現(xiàn)時,MCU自動將數(shù)值進制轉換成為所賦值的信號
20、的進制,所以,設計時可以靈活寫十六進制數(shù)據(jù),對硬件更有效的控制。而不像FPGA那樣,需要對進制轉換單獨寫進程或者調(diào)用函數(shù)實現(xiàn)。能使用各種高級語言,比如,使用mod函數(shù)實現(xiàn)取余操作。 ·靈活性和功能性。C語言本身支持直接對硬件進行操作,例如對內(nèi)存地址的操作、位操作等。C語言作為一種高級語言,對硬件的支持并不差于匯編語言,這個特性能在設計單片機程序時帶來很大便利,在稍后的設計部分中可見,單片機對C語言的兼容性將C語言的優(yōu)點繼承了下來。在這方面,VHDL相對薄弱。單片機中更高層的功能,如微處理器、存儲器和輸入輸出控制器,在使用這些器件時,數(shù)字設計者不用對最復雜而關鍵的片上組件及其互連技術進行設計,
21、因為這已經(jīng)由器件制造商設計出來并測試過了。這些都體現(xiàn)了微處理器的靈活和高效。 ·可編程性。如今大多數(shù)數(shù)字設計都是采用語言進行編程來完成的。這些語言可以將數(shù)字電路的功能進行規(guī)格化或者模型化。在構建任何真實硬件之前,要使用編譯器和模擬器來測試硬件模型的運行狀況,然后才將模型用特別的組件技術實現(xiàn)電路。這就使得電路的設計具有相同性,對于同樣的電路,只用改變E2PROM的程序就可以實現(xiàn)功能的改變,從而帶來了極大的便利。微控制器這種集成電路在它們出廠后具有邏輯功能的編程能力。這些器件能夠通過重新編程來設置其功能,這就意味著,如果發(fā)現(xiàn)了設計中的差錯,不需要在物理上替換器件或重新接線,就可以排除錯誤。也意味
22、著,設計者可以自行設計出自己所想要的芯片。用同樣的電路,寫入不同的程序,系統(tǒng)就可以完成不同的功能,加上E2PROM電可擦除芯片的誕生,設計者們就不用專門為一種功能去設計一種電路,不用自己動手搭建電路,就像在三十年前他們的教授所做過的那樣。 ·快捷性。如今,MCU的處理速度很快,對于時鐘為11.0592MHZ的微處理器而言,12個時鐘周期為一個機器周期,所以該MCU的頻率大約為1MHZ,也就是說,一秒鐘執(zhí)行10^6條指令,執(zhí)行一條指令的時間為1微妙。對于F22戰(zhàn)斗機而言,開加力時時速大約為M2.00,也就是680米每秒,單片機執(zhí)行一次指令時,F(xiàn)22大約能飛行0.68毫米,所以,對于普通的智能
23、小車而言,用單片機作為控制核心是完全可以勝任的。 ·經(jīng)濟性。單片機能夠在一片芯片里提供大量的功能。能夠重復使用的電路可以被集成到單個芯片里,以很低的成本進行大量的生產(chǎn),這樣就可以將那些計算器、數(shù)字手表、音樂生日卡之類的不同功能的器件集成在一起了。 本設計因為需要直接對硬件進行操作,需要簡易靈活的程序編寫,所以筆者選擇單片機作為控制核心。 2.2 直流電機和步進電機的選擇 直流電機的工作原理: 直流電機的轉子為三組呈60°的漆包線圈,在線端口焊接六個60°圓弧銅 片。這些銅片構成換向片,兩個彈性銅片靠在換向片兩側,作為供電電刷。當電源通過電刷向漆包線圈供電時,線框中就會有電流流過
24、。直流電機的定子為一對磁極,由導磁良好的鋼鐵制成,磁極的磁力由一個U型永久磁鐵產(chǎn)生,將磁極放置在漆包線圈兩側,形成磁場,漆包線圈處于磁場中。當線圈通過電流時,三個線圈就會受到磁場的洛倫茲力,受力方向依照左手定理判斷。受到磁場的作用力的線圈會旋轉,當旋轉了60°后,原通電線圈斷電,下一組通電線圈通電,使整個轉子繼續(xù)受到相同旋轉方向的力,這就是直流電機的工作原理。 直流電機的優(yōu)點和缺點: ·控制簡單。直流電機的控制相對于步進電機要簡單,直流電機的兩個接口加正電壓時電機正轉,加負電壓時電機反轉,易于控制。 ·轉速快。直流電機的轉速不受控制,所以外加電壓時,直流電機一直處于最佳工作狀態(tài),無保留地
25、發(fā)揮出其最大轉速。 ·成本低。相對于步進電機,直流電機的成本更低,價格易于接受。更重要的是,兩個直流電機僅需要一片L298N芯片即可完成控制,所以,選擇直流電機能使得電路更簡單。 ·無法控制轉過角度。所以對于速度的測試需要和外部傳感器配合使用,增加了硬件的設計難度。同時因為無法控制轉過角度,所以無法通過軟件精確控制直流電機的行駛距離。 步進電機的工作原理: 步進電機是一種將電脈沖轉化為角位移的器件。當步進驅動器接收到一個脈沖信號,它就驅動步進電機按設定的方向轉動一個固定的角度,稱為步距角,它的旋轉是以固定的角度一步一步運行的??梢酝ㄟ^控制脈沖個數(shù)來控制角位移量,從而達到準確定位的目
26、的;同時可以通過控制脈沖頻率來控制電機轉動的速度和加速度,從而達到調(diào)速的目的。步進電機可以作為一種控制用的特種電機,利用其沒有積累誤差(精度為100%)的特點,廣泛應用于各種開環(huán)控制。 步進電機的優(yōu)點和缺點: ·角度、轉速可控。在非超載的情況下,電機的轉速、停止的位置只取決于脈沖信號的頻率和脈沖數(shù),而不受負載變化的影響,即給電機加一個脈沖信號,電機則轉過一個步距角。這一線性關系的存在,使得步進電機只有周期性的誤差而無累積誤差。所以在速度、位置等控制領域用步進電機來控制變的非常簡單。 ·控制較為復雜。需要四個接口輸入,所以如果使用步進電機,智能小車需要兩個驅動輪,也就是八個接口,這就使得需
27、要兩片L298N芯片,使成本增加。這樣設計就需要額外增加步進電機的費用和另一片L298N芯片的費用。 ·無法實現(xiàn)較高的速度。步進電機的精確控制性決定了其扭矩較大,這樣也使得步進電機趨向于驅動力而不是旋轉速度,使得步進電機速度有所限制。 本設計中使用控制簡單的直流電機,因為設計中創(chuàng)新的光線反射式避障不需要精確控制行駛距離,這樣可以節(jié)約出步進電機和一片L298N芯片及其外部電路的成本。 2.3 舵機和萬向輪的選擇 根據(jù)控制方式,舵機應該稱為微型伺服馬達。舵機能夠利用簡單的輸入信號轉動到一個比較精確的角度,所以非常適合機器小車使用。舵機簡單的說就是集成了直流電機、電機控制器和減速器,并封
28、裝在一個便于安裝的外殼里的伺服單元。舵機內(nèi)安裝了一個電位器檢測輸出軸轉動角度,控制板能根據(jù)電位器的信息能比較精確的控制和保持輸出軸的角度。這樣的直流電機控制方式叫閉環(huán)控制。 舵機的工作原理是:控制信號由接收機的通道進入信號調(diào)制芯片,獲得直 流偏置電壓。它內(nèi)部有一個基準電路,產(chǎn)生周期為20ms,寬度為1.5ms的基準信號,將獲得的直流偏置電壓與電位器的電壓比較,獲得電壓差輸出。最后,電壓差的正負輸出到電機驅動芯片決定電機的正反轉。當電機轉速一定時,通過級聯(lián)減速齒輪帶動電位器旋轉,使得電壓差為0,電機停止轉動。 總而言之,控制電路接收信號源的控制脈沖,并驅動電機轉動;齒輪組將電機的速度成倍數(shù)
29、縮小,并將電機的輸出扭矩放大響應倍數(shù),然后輸出。電位器和齒輪組的末級一起轉動,測量舵機軸轉動角度;電路板檢測并根據(jù)電位器判斷舵機轉動角度,然后控制舵機轉動到目標角度或保持目標角度。 舵機的控制信號為周期20ms,脈寬0.5ms-2.5ms之間的PWM信號,在20ms的周期中,輸入脈沖寬度與舵機輸出角度之間的關系: 0.5ms -90° 1.0ms -45° 1.5ms 0° 2.0ms 45° 2.5ms 90° 可見,使用舵機可以獲得精確的轉角,這樣的方式能提高機器小車的行駛 速度,但是,精確轉角的方式使得機器小車要想轉彎必須以要有一個固定的轉角,要求小車的轉彎路線為
30、圓弧,小車不能原地轉彎,且因為舵機需要用到定時器,而定時器本身在程序較復雜時中斷時間不準確,所以舵機有控制不準的風險。 使用萬向輪的優(yōu)點在于轉彎不需要轉角,可以原地轉彎,因為其不需要圓弧轉向,所以萬向輪可以精確控制小車的行進路線,缺點是無法精確控制轉角。 本設計中采用萬向輪的方式轉向,因為萬向輪是從動輪,兩個主動輪和一個從動輪呈三角形分布,所以在平面上從動輪那個點的受力完全由兩個主動輪給予,其轉動方向和轉動速度完全依靠于兩個主動輪,使用簡單有效,而且,使用萬向輪的方式可以為單片機省下一個定時器。 2.4 最終元器件選擇 元器件選擇:E18-D80NK型光電反射式傳感器3個、STC
31、89C52RC型單片機1塊、RS232芯片1塊、11.0592M系統(tǒng)晶振1個、LED發(fā)光二級管2個、共陽七段數(shù)碼管4個、蜂鳴器1個、L298N芯片1塊、直流電機2個、電容電阻若干。電容選擇1uF和30pF,電阻選擇1K和10K兩種。 電子科技大學學士學位論文 第三章 硬件設計 3.1 課題的方案論證 3.1.1 主要任務 設計一臺具有避障功能的智能小車。該智能小車利用紅外傳感器檢測周圍障礙情況,用控制電機驅動電路來控制機器人的前進方向,以躲避障礙物。用單片機作為控制核心,完成硬件和軟件的設計。 3.1.2 功能要求 (1)小車能夠實現(xiàn)自動躲避在車前方,左方,右方的障礙物,達到
32、智能的效果。 (2)狀態(tài)和時間顯示功能:第一個數(shù)碼管可以顯示小車當前狀態(tài),第三個和第四個數(shù)碼管可以顯示小車實際行駛時間。 (3)按鍵轉換功能:小車在上電復位后,由獨立按鍵1控制,按鍵1按下后,小車行駛,再次按下時,小車停止。 (4)報警功能:小車在遇到障礙物時候進行蜂鳴器報警。 (5)障礙燈:兩個LED燈用于顯示小車周圍障礙物的狀況。 3.1.3 性能指標 (1)紅外傳感器的探測距離為10cm以上。 (2)紅外傳感器的響應時間小于1毫秒。 (3)智能小車遇到障礙物到做出反應的時間小于2毫秒。 (4)智能小車能夠在直線,彎道,S型彎道,發(fā)卡彎道等完成無碰撞行駛。 (
33、5)智能小車能夠在放置零散障礙物的平面空間內(nèi)行駛無碰撞。 3.2 課題工作 一個單片機應用系統(tǒng)的硬件電路設計包含兩部分內(nèi)容:一是最小系統(tǒng)設計,即設計微控制器能工作的最精簡的電路,該設計方法固定,可以參考大多數(shù)單片機系統(tǒng)設計,設計完成后,單片機可以使用其內(nèi)部的基本功能單元,如ROM、RAM、I/O端口、定時/計數(shù)器、中斷寄存器等,單片機能正常工作,能按照程序控制其I/O端口。二是擴展設計,在單片機內(nèi)部系統(tǒng)無法完成需求工作時,選擇適當?shù)男酒?,設計對應的外部電路,添加外圍設備,如獨立按鍵,LED燈、七段譯碼管、蜂鳴器、AD/DA轉換器等,來完成需求功能。 3.3 系統(tǒng)整體框圖 圖3-
34、1 系統(tǒng)整體框圖 3.4 電源模塊設計 電源是整個系統(tǒng)穩(wěn)定工作的前提,因此必須有一個合理的電源設計,對于小車電機部分的工作電源,要求在電池耗損時電壓降低的情況下也能正常驅動電機,所以給電機供6V直流電壓,使用四節(jié)五號電池串聯(lián)供電,這樣,即使存在電池耗損,整個電池盒的供電大于3V,這樣的電壓也足以驅動電機正常工作。同時考慮到大電流器件可能會對單片機造成干擾,影響單片機的穩(wěn)定運行,所以,本設計為單片機和電機控制芯片L298N這兩塊芯片單獨供電,均采用四節(jié)五號電池串聯(lián)供電。 3.5 單片機最小系統(tǒng)設計 STC89C52是一種低功耗、高性能CMOS8位微控制器,具有 8K 可編程Flash 存
35、儲器。擁有8 位CPU 和可編程Flash,具有以下功能: 8k字節(jié)Flash,512字節(jié)RAM, 32 位I/O 口線,看門狗定時器,內(nèi)置4KB EEPROM,MAX810復位電路,三個16 位定時器/計數(shù)器,一個6向量2級中斷結構,全雙工串行口,最高運行頻率35Mhz,6T/12T可選。具體使用到的模塊包括:ADC模擬數(shù)字轉換模塊、定時器模塊、PWM脈沖寬度調(diào)制模塊、中斷模塊、I/O端口和實時時鐘模塊。 單片機是小車的控制中心,單片機最小系統(tǒng)的設計是小車正常行駛的前提,最小系統(tǒng)指的是能夠保證單片機正常運行的最精簡的硬件設計,如圖3-2所示,為STC89C52RC單片機的最小系統(tǒng)參考電路圖
36、。 圖3-2 STC89C52RC單片機最小系統(tǒng)參考圖 圖3-2中的STC89C52RC單片機最小系統(tǒng)由以下幾個部分組成: 1. 晶振電路:單片機要能正常工作必須設計一個外部的時鐘源,這個時鐘源由晶振電路產(chǎn)生,具體電路為圖中的Y1、C2、C3部分,電容典型值為30pF,晶振典型值為12Mhz。 2. 復位電路:STC89C52RC單片機為高電平復位,也就是說RST(9)腳上只要有持續(xù)兩個機器周期以上的高電平就能使單片機復位,上電復位的原理是利用電容充電的一段時間將復位腳拉至高電平,使單片機完成復位,C1可以選用1uF的瓷片電容,R1在電容充電結束后將復位腳拉至低電平,保證單片機的正
37、常工作。 其中,單片機的十二個晶振周期為一個機器周期,微處理器在一個機器周期內(nèi)能執(zhí)行一條指令,所以,機器周期也稱為指令周期。 3. ISP 下載部分:如圖中的Header5X2部分就是下載接口,電路是根據(jù)標準的ISP下載線來設計的,與常用的并口下載線,串口下載線和筆記本用的USBASP 下載線兼容,只需將下載線接口插到本接口上就可以向單片機燒寫程序。同時,ISP 的下載接口在設計時應注意以下兩點,否則會造成程序下載的失敗。 1. 下載線接口中的電源和單片機共用一個電源。 2. 下載線接口中用到的P1.5到P1.7 腳不能連接外部器件,如果要連接外部器件可以設計為可插拔的方式,防止影響程
38、序的下載。在本設計中,筆者將這三個端口用于傳遞三個光電傳感器的反饋信號,所以在下載程序的時候,需要將這三個光電傳感器停用,即將它們斷電,否則,下載器會提示無法正常下載。 4.電源和地:如圖所示,單片機的二十管腳為GND,接地,四十管腳為VCC,接電源,同時注意將第三十一管腳拉高,三十一腳即EA腳為內(nèi)外存儲器的選擇腳,由于本設計只使用內(nèi)部存儲器,因此需要將此腳連至高電平,否則單片機無法正常工作。 5.上拉電阻:P0口與其他三組I/O口不同,P0口沒有內(nèi)部上拉電阻,因此如果需要驅動LED等外部器件時需要在P0口加上10K的上拉電阻,并且加外部上拉電阻的方式有助于增強端口的驅動能力。 3.6
39、紅外探測模塊設計 在本設計中筆者采用光電反射式傳感器組作為探測模塊的核心,這種傳感器將發(fā)射管和接收管放置在一個塑料殼內(nèi),發(fā)射管和接收管均為長方形,尺寸為4mm*3mm,系統(tǒng)中我們設計探測距離在10cm 左右,此時探測環(huán)境良好,不易受到其它光線的干擾。傳感器采用E18-D80NK式反射紅外傳感器。該封裝形狀規(guī)則,便于安裝。探測距離在3CM到80CM范圍內(nèi)可調(diào),完全能滿足探測距離要求。傳感器由于發(fā)射和接受的是紅外光,所以常見光對它的干擾較小。 光電反射式傳感器的原理圖如3-2所示,其具體原理為:當電源穩(wěn)定供電時,紅外發(fā)射管不斷地發(fā)射出紅外光,當發(fā)射出的紅外光遇到障礙物時,發(fā)射出的紅外光會發(fā)生漫
40、反射,反射回傳感器,這時傳感器的三極管就會導通,傳感器的I/O端口與地導通,輸出為低電平,反之,發(fā)射出的紅外光沒有遇到障礙物,發(fā)射出的紅外光無法返回傳感器,傳感器的三極管就會截止,傳感器的I/O口經(jīng)10K歐的電阻與電源相連,輸出為高電平。 所以從宏觀上來看,光電反射式傳感器在電路正常工作的情況下,有障礙物時輸出低電平,沒有障礙物時輸出高電平,為低電平有效器件。 在實際測試中,需要指出,光電反射式傳感器是基于障礙物能反射部分紅外光,在極端條件下,比如黑色完全不反光的障礙物,這種障礙物能夠完全吸收紅外光,所以,光電反射式傳感器無法檢測這種障礙物,或者檢測精度下降。 圖3-3 E18-
41、D80NK型反射紅外傳感器原理圖 E18-D80NK型反射紅外傳感器的技術參數(shù): 1.輸出電流 DC:100mA/5V 2.消耗電流 DC:<25mA 3.響應時間:<1ms 4.指向角:15° 5.有效距離:3-80cm可調(diào) 6.監(jiān)測物體:反光物體(實際測試中黑色墻壁不可檢測) 7.工作環(huán)境:-25°C ~ 55°C 8.標準檢測光照強度:<3000LX 3.7 后輪電機驅動模塊設計 前面已經(jīng)提到,由于單片機的驅動能力不足,無法驅動像電機這樣的大功率外部器件,因此必須外加驅動電路。電機常用的驅動芯片很多,在本設計中筆者選用硬件設計簡單,驅
42、動效率高的L298N作為電機驅動芯片,L298N芯片是一種集成大功率H橋芯片。 如圖3-4所示,H橋式電機驅動電路包括四個三極管和一個電機。要使電機運轉,必須導通對角線上的一對三極管。根據(jù)不同三極管對的導通情況,電流可能會從左至右或從右至左流過電機,從而控制電機正轉或反轉。 圖3-4 簡易H橋電路原理圖 要使電機運轉,必須使對角線上的一對三極管導通。當Q1管和Q4管導通時,電流就從電源正極經(jīng)Q1從左至右穿過電機,然后再經(jīng)Q4回到電源負極,該流向的電流將驅動電機順時針轉動。當另一對三極管Q2和Q3導通時,電流將從右至左流過電機,該流向的電流將驅動電機逆時針轉動。 驅動電機時,保證H
43、橋上兩個同側的三極管不會同時導通非常重要。如果三極管Q1和Q2同時導通,那么電流就會從正極穿過兩個三極管直接回到負極。此時,電路中除了三極管外沒有其他任何負載,理論上電路上的電流趨近于無窮大,實際上,電流可能大到燒壞三極管?;谏鲜鲈颍趯嶋H驅動電路中通常要用硬件電路控制同側三極管不能同時導通。 圖3-5所示就是H橋電路的改進電路,它在基本H橋電路的基礎上增加了四個與門和兩個非門。四個與門與同一個使能信號相接,這樣,用使能信號就能控制整個電路的開關。兩個非門通過提供同側三極管反相的信號,可以保證任何時候在H橋的同側最多只有一個三極管導通。 圖3-5 改進后的H橋電路原理圖 圖3
44、-5所示的H橋電路的真值表如表4-3所示,描述如下: EN=0時,Q1Q2Q3Q4均截止,電機不轉; EN=1,DIR-L=1,DIR-R=0時,Q2Q3導通,電機正轉; EN=1,DIR-L=0,DIR-R=1時,Q1Q4導通,電機反轉; EN=1,DIR-L=0,DIR-R=0時,Q2Q4導通,電機不轉; EN=1,DIR-L=1,DIR-R=1時,Q1Q3導通,電機不轉; H橋電路雖然有著諸多的優(yōu)點,但是在實際制作過程中,由于元件較多,電路的搭建較為麻煩,增加了硬件設計的復雜度,因此在本設計中筆者采用H橋集成驅動芯片L298N。L298N 的工作原理和以上介紹的H橋相同,引腳
45、圖如圖3-6所示: 其管腳與H橋電路輸入控制基本相同,5、7、10、12為輸入管腳,分別為兩路DIR-L、DIR-R,2、3、13、14為輸出管腳,分別為兩路電機供電,6、11為兩路時能管腳ena,enb,1、15為兩路電流感應管腳,通常情況下不用,使用大電阻10K歐隔離這兩個管腳,接地即可,4為電機供電電壓,為圖示中H橋電路的正極,當對角線三極管打開時,就是4腳為電機提供電壓,9為邏輯供電電壓,為H橋芯片的三極管提供正常工作電壓,8為GND,為接地管腳。 圖3-6 集成H橋芯片L298N管腳圖 L298N芯片作為一種功率轉換的集成高功率電路,支持高達46V的直流操作電壓,可通過高達
46、4A的直流電流,低保和電流,過溫保護,邏輯0電壓高達1.5V(高噪聲免疫)。 L298N 是ST 公司生產(chǎn)的一種高電壓、大電流電機驅動芯片。該芯片采用15腳封裝。主要特點是:工作電壓高,最高工作電壓可達46V;輸出電流大,瞬間峰值電流可達3A,持續(xù)工作電流為2A;額定功率25W。內(nèi)含兩個H橋的高電壓大電流全橋式驅動器,可以用來驅動直流電動機和步進電動機、繼電器線圈等感性負載;采用標準邏輯電平信號控制;具有兩個使能控制端,在不受輸入信號影響的情況下允許或禁止器件工作有一個邏輯電源輸入端,使內(nèi)部邏輯電路部分在低電壓下工作;可以外接檢測電阻,將變化量反饋給控制電路。使用L298N芯片驅動電機,該芯
47、片可以驅動一臺兩相步進電機或四相步進電機,也可以驅動兩臺直流電機。L298 的參考電路圖如圖3-15 所示。 圖3-7 集成H橋芯片L298N外部電路原理圖 原理圖分析:J1部分為單片機傳遞給L298N芯片的數(shù)據(jù)控制端口,J4部分為芯片輸出組和供電組,J2和J3這兩個三針跳線盒的作用是當1、2兩個端口用跳冒連接后,A、B兩個信號為高電平,直接使ena、enb兩個時能信號為高電平,這時,L298N上電后能即時工作,同時單片機無法控制L298N的使能端,因單片機的輸入電阻很大,所以外加5V電壓的ena、enb端口吸收電流不大,所以不考慮加大電阻隔離。 VSS端口的C1電容是為了去除供
48、電電壓的紋波波動,根據(jù)電容的阻直流通交流的特性,供電電壓的交流波動會通過此電容直流流向GND,這樣設計是為了使芯片的供電電源更穩(wěn)定有效。 輸出端口的八個續(xù)流二極管是為了消除電機轉動時的尖峰電壓保護電機而設計,簡化電路時可以不加。 注意到工作時L298N芯片的功耗較大,所以設計中因加裝散熱片。 3.8 測速模塊設計 在智能小車的設計中,測速是必不可少的一部分,但是本設計中避障傳感器太大,因此無法在輪子處增加一個避障傳感器來對車輪軸條個數(shù)進行計數(shù),所以筆者沒有考慮速度測試,而選擇直接對小車進行開環(huán)控制。 測速的原理是對車輪軸條進行計數(shù),當小車行駛時,軸條發(fā)生轉動,那么,對軸條計數(shù)后
49、除以輪子上一圈的總軸條數(shù)可以得到輪子旋轉圈速,在乘以輪子周長可以得到行駛距離,加上定時器定時就可以得到在單位時間內(nèi)小車的行駛距離即可得到小車的行駛速度,對小車的行駛速度求差分即可得小車的加速度。 同理,用黑白碼盤也可以對小車進行測速。 圖3-8 測速用黑白碼盤 3.9 發(fā)光二級管電路的設計 顯示模塊中先解釋如何驅動發(fā)光二極管:數(shù)字電路中通常使用CMOS電路漏極開路輸出驅動發(fā)光二級管,注意選擇合適的上拉電阻R,使發(fā)光二級管開啟時流過合適的電流。典型發(fā)光二級管正常發(fā)光所需要的電流為10毫安,所需壓降為1.6V,假設VCC為5V,那么,需要的限流電阻R應為(5-1.6)/0.01=3
50、40歐。 同時注意到,單片機的驅動能力只能提供4毫安的電流,通常不能用來驅動發(fā)光二級管,但是單片機可以吸收24毫安的電流,所以,單片機可以用于吸收發(fā)光二級管的電流,在實際中設計如下: 圖3-9 STC89C52RC單片機最小系統(tǒng)原理圖 兩個發(fā)光二極管的設計與連接如下:正極與VCC相連,負極通過470歐的電阻與單片機相連,電阻起限流作用,這里筆者適當增加電阻阻值來限制LED燈的發(fā)光強度,使其變暗。 那么根據(jù)原理圖,發(fā)光二極管的使用方法如下:當單片機P1.2端口輸出低電平時,LED兩端存在壓差,發(fā)光二極管啟動,正常發(fā)光。反之,P1.2端口輸出高電平,LED兩端不存在壓差,發(fā)光二級
51、管截止,不發(fā)光。在實際使用中,可以利用單片機通過控制端口電平的方式來控制發(fā)光二級管的亮滅。 3.10 七段譯碼管電路的設計 七段譯碼管是由七個發(fā)光二極管構成,形成8字形,所以其使用方法,使用原理和發(fā)光二級管LED一樣。其具體原理圖如下: 圖3-10 七段譯碼管原理圖 這是七段譯碼管的原理圖,J7部分為數(shù)碼管的控制排針,當跳冒沒連接2、3排針時,Q1Q2Q3Q4四個三極管沒有連接到VCC上,三極管截止,四個數(shù)碼管全不亮。當跳冒連接2、3排針時,Q1Q2Q3Q4四個三極管連接到VCC上,當這四個三極管的另一個管腳為低電平時,三極管兩端導通,使9、10、11、12端口連接到VCC上,
52、三極管為共陽三極管,即abcdefgdp這八個發(fā)光二級管的正極均連接在一起,一起連接到外面的9、10、11、12端口上,那么,當P0口輸出對應的電平產(chǎn)生段選碼,P2控制口輸出對應的電平產(chǎn)生位選碼時,對應的數(shù)碼管就按照輸入的段碼發(fā)光,顯示對應的信息。和發(fā)光二極管原理一樣,這里的發(fā)光二級管的導通電壓為1.6V,VCC為5V,發(fā)光二級管的正常導通電流為10毫安,所以這里的限流電阻和LED一樣,R=(5-1.6)/0.01=340歐,因為沒有340歐姆規(guī)格的通用電阻,這里使用330歐姆的電阻代替之。 其中,P0端口稱為段選端口,P2.0到P2.3端口稱為位選端口,從宏觀上來看,當跳冒連接2、3端口
53、時,位選端口為低電平的對應數(shù)碼管亮,其顯示為P0口送的段選數(shù)據(jù)。比如P2.3端口低電平,P0端口為0xc0時,即P0為11000000時,顯示數(shù)據(jù)為0,這八位數(shù)據(jù)從低位到高位排列成數(shù)字0。 所以,對P0送如下數(shù)組,P0就可以顯示出0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F、不顯示、H、L、橫杠這些不同的字符。 {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90, 0x88,0x83,0xc6,0xa1,0x86,0x8e,0xff,0x89,0xc7,0xdf}; 3.11 蜂鳴器電路的設計 圖3-11 蜂鳴
54、器原理圖 蜂鳴器的啟動原理和數(shù)碼管的啟動原理一樣,如圖3-11所示,Q5三極管的一端接VCC,另一端接單片機P2.4端口,當單片機控制P2.4端口輸出低電平時,三極管Q5導通,蜂鳴器兩端存在VCC的壓差,蜂鳴器工作。 3.12 外接排針模塊的設計 如圖3-11所示,J11、J12、J13、J14、J15為五個外接排針,能為三個光電傳感器、兩個循跡傳感器、一個火焰?zhèn)鞲衅?、雙核芯片B供電。同時因為最小系統(tǒng)的設計簡單,單片機PCB板上所有的器件共VCC、共GND,所以,這些排針不僅可以用于對外界傳感器供電,也可以用于外界電源對單片機供電,這樣排針就有兩種不同的用途。 發(fā)光二級管D0的用
55、途是顯示外界電源是否正常供電,一端通過限流電阻接VCC,另一端接地,D0亮表示外界電源正常有效。 電容C9選擇1uF作為通交流,阻直流的濾波器,其作用是消除電源的紋波波動和交流分量。使電源工作穩(wěn)定,為所有器件提供直流電壓。 3.13 液晶顯示屏電路的設計 如圖3-11所示,J1為LCD1602液晶顯示插槽,R10為電位器,R10是一個滑動變阻器,可以通過螺絲旋轉調(diào)節(jié)其阻值的方式來控制液晶顯示屏的亮暗。 但是在實際組裝的時候,三個光電傳感器剛好擋住液晶顯示屏,所以液晶屏無法安裝,不僅如此,筆者在實際焊接時,因為將LCD1602顯示屏的排針焊反了,導致筆者的液晶顯示屏直接報廢。這里特
56、別強調(diào)一下,LCD1602的排針是在下面的,焊點在液晶屏的上面,注意不要焊反。 3.14 DS1302模塊的設計 DS1302是DALLAS公司推出的涓流充電時鐘芯片,內(nèi)含有一個實時時鐘/日歷和31字節(jié)靜態(tài)RAM,可通過簡單的串行接口與單片機進行通信,可提供秒分時日日期月年等日歷信息。DS1302芯片的設計與DS1302芯片datasheet所提供的典型電路接法相同,按照Datasheet畫原理圖焊接即可。 DS1302中CE復位腳,I/O數(shù)據(jù)輸入/輸出引腳,SCLK串行時鐘。 3.15 M24C02BN6模塊的設計 M24C02BN6是E2PROM器件,是單片機中存儲下載程序
57、的部分,采用256*8-bit的組織結構和兩線串行接口,最大存儲2KB程序。電路接法與芯片Datasheet所提供的典型電路接法相同,按照Datasheet畫原理圖焊接即可。 24C02中A2A1A0是器件地址輸入引腳,SDA為串行地址和數(shù)據(jù)輸入輸出,SCL串行時鐘輸入,WP寫保護引腳。 3.16 巡線模塊的設計 巡線模塊與反射式紅外傳感器的原理相似,巡線傳感器的原理圖如3-11所示,其具體原理為:當電源穩(wěn)定供電時,紅外發(fā)射管不斷地發(fā)射出紅外光,當發(fā)射出的紅外光遇到地面時,發(fā)射出的紅外光會發(fā)生漫反射,反射回傳感器,這時傳感器的三極管就會根據(jù)反射回傳感器的紅外光線的強弱按照三極管伏安特性
58、曲線(非線性曲線)改變電流大小,見圖3-12所示,電流大小乘以R2電阻的阻值即為比較器LM339的4管腳的輸入電壓,與受電位器控制的5腳電壓一并影響輸出電壓,運算放大器的輸出信號與兩個輸入端的信號電壓差成正比,輸出電壓=A0(E1-E2),其中,A0是運放的低頻開環(huán)增益(如100dB,即100000倍),E1是同相端的輸入信號電壓,E2是反相端的輸入信號電壓。當5腳電壓高于4腳端時,輸出端輸出高電壓。當4腳端電壓高于5腳端時,輸出管飽和,相當于輸出端接低電位。兩個輸入端電壓差別大于10mV就能確保輸出能從一種狀態(tài)可靠地轉換到另一種狀態(tài),因此,把LM339 用在弱信號檢測等場合是比較理想的。LM
59、339 的輸出端相當于一只不接集電極電阻的晶體三極管,在使用時輸出端需要接上拉電阻,以提高輸出端的帶負載能力。 在傳感器感應到黑線時,接收三級管處于截止狀態(tài),電流很微弱,相當于大電阻,電流微弱使4腳電壓低,4腳電壓低于5腳電壓,輸出為高電平。反之,當傳感器檢測到地面時,接收三極管導通,電流較大,相當于小電阻,電流增加使運算放大器4腳電平升高,4腳電壓高于5腳電壓,輸出為低電平。 所以從宏觀上來看,巡線傳感器在電路正常工作的情況下,檢測到黑線時輸出高電平,檢測正常地面時輸出低電平,為高電平有效器件。 也可以將運算放大器的4腳和5腳反接,這時傳感器為低電平有效器件。 圖3-12 巡線傳
60、感器原理圖 3.17 火焰?zhèn)鞲衅鞯脑O計 火焰?zhèn)鞲衅鞯脑砼c上述傳感器大體相同,當二極管N1檢測到火焰時,二極管導通,輸出大電流,等效于電阻較小,這樣R1上的壓降也較大,3腳電壓較低。當二極管N1沒有檢測到火焰時,二極管截止,輸出小電流,等效于大電阻,R1的壓降較小,3腳電壓較高。同時,這個3腳的電壓可以直接作為輸出,其輸出的是一個火焰強度的模擬信號。電容C2的作用是濾除比較器3腳輸入電壓中的交流分量,同理,電容C1的作用是濾除電源電壓的交流分量,使電源電壓穩(wěn)定有效。 發(fā)光二極管D1作為電源指示燈,使用R3作為D1的限流電阻,當電源穩(wěn)定后,D1正常發(fā)光。電阻R2作為電位器,通過R2的分壓
61、改變比較器2腳的電壓,這個電壓我們可以給其命名為基準電壓,改變這個基準電壓可以改變傳感器的精度和檢測范圍。 在火焰?zhèn)鞲衅髡9ぷ骱螅瑱z測到火焰時,3腳電壓較低,低于2腳的基準電壓,比較器1腳輸出低電平,當1腳為低電平時,火焰指示燈D2兩端存在電壓壓差,D2指示燈發(fā)光。反之,沒有檢測到火焰時,3腳電壓較高,高于2腳的基準電壓,比較器1腳輸出高電平,D2指示燈熄滅。 從宏觀上總結:檢測到火焰時,輸出端1腳輸出低電平數(shù)字信號,沒檢測到火焰時,輸出端1腳輸出高電平數(shù)字信號,該傳感器為低電平有效器件。輸出段 3腳為火焰檢測的模擬信號,該模擬信號電壓值越低,表示火焰強度越大。 圖3-13
62、二極管伏安特性曲線 圖3-14 火焰?zhèn)鞲衅髟韴D 第4章 軟件設計 第四章 軟件設計 4.1 基本原理 設計的智能小車擁有三個光電式傳感器(型號:E18-D80NK),分別安裝在智能小車的左方、前方、右方,兩個巡線傳感器,安裝在小車的車頭的下方,一個火焰?zhèn)鞲衅?,安裝在智能小車的底盤部分,這樣智能小車就可以隨時監(jiān)控左前右三個方向的障礙物情況,兩個巡線傳感器隨時監(jiān)控是否踩到黑線,火焰?zhèn)鞲衅麟S時監(jiān)測前方是否著火,這些傳感器即時反饋周圍的環(huán)境狀況給STC89C52RC單片機,單片機根據(jù)光電傳感器的反饋信號控制L298N電機驅動模塊,L298N芯片將單片機的信號進行功放,使得外
63、部電路能夠帶動左右兩個直流電機,智能小車的功能就實現(xiàn)了。 4.2 控制真值表和卡諾圖 真值表中,左前右三列代表著小車左前右三個光電傳感器的反饋電平,0/1分別代表三個光電傳感器反饋低電平和高電平,狀態(tài)代表著將左前右三個傳感器這三位反饋數(shù)據(jù)轉換為十進制數(shù)據(jù)表示,小車姿態(tài)代表著小車在這些狀態(tài)時應該采取的行駛方式,左輪信號和右輪信號代表著單片機需要給控制芯片發(fā)送的控制信號,蜂鳴器和LED列描述了小車在這些不同的狀態(tài)下的工作方式。 狀態(tài) 左 前 右 小車姿態(tài) 左輪信號 右輪信號 蜂鳴器 LED 0 0 0 0 后退 0 1 0 1 無聲音 亮
64、 亮 1 0 0 1 右轉 1 0 0 1 長鳴叫 長閃 滅 2 0 1 0 前進 1 0 1 0 無聲音 滅 滅 3 0 1 1 微右轉 1 0 0 0 短鳴叫 短閃 滅 4 1 0 0 左轉 0 1 1 0 長鳴叫 滅 長閃 5 1 0 1 隨機 - - - - 長鳴叫 長閃 長閃 6 1 1 0 微左轉 0 0 1 0 短鳴叫 滅 短閃 7 1 1 1 前進
65、1 0 1 0 無聲音 滅 滅 表4-1 控制真值表 狀態(tài)0時,三個傳感器的狀態(tài)均為低電平,意味著智能小車左前右三個方向都存在障礙物,這時小車通過檢測到的電平數(shù)據(jù)感知到前方不可通行,小車后退,如圖4-1所示。 狀態(tài)1時,小車左方和前方都有障礙物,這時小車需要快速改變行進方向,通過單片機的控制使得小車的左輪正轉,右輪反轉,在宏觀上表現(xiàn)為小車圍繞小車中心發(fā)生旋轉,小車右轉。 狀態(tài)2在實際測試中很難發(fā)生,代表著小車行進在很窄的路面上,因為小車左右兩個傳感器幾乎不可能同時有效,兩個傳感器電平變化之間肯定存在一定的時差,先變化的那個傳感器電平變低的同時,小車檢測到左右兩邊有一邊是
66、障礙,這時小車的狀態(tài)為3或者6,小車采取微轉向的方式以躲避障礙物。小車在單個傳感器有效的情況下會一直微轉向直到小車左右都沒有障礙,所以,左右兩個傳感器很難同時有效。 圖4-1 狀態(tài)0示意圖 圖4-2 光線反射式避障 狀態(tài)3和狀態(tài)6作為本設計的創(chuàng)新點,智能小車能夠在探測到障礙物時如同光線照射到鏡面上那樣發(fā)生鏡面反射,有入射角等于反射角,前文中已經(jīng)提到,萬向輪的優(yōu)點在于轉彎不需要轉角,可以原地轉彎,因為其不需要圓弧轉向,所以萬向輪可以精確控制小車的行進路線,缺點是無法精確控制轉角。為什么在萬向輪根本無法精確控制轉角的情況之下,小車還能正確地入射角等于反射角呢?因為智能小車利用左右的傳感器檢測左右障礙物,如果存在障礙物,則靠近障礙物那邊的輪子正轉,沒有障礙物那邊的輪子不轉,這時小車開始圍繞小車遠離障礙物的那只輪子開始轉向,由于光電傳感器的探測距離固定。根據(jù)勾股定理,有入射角等于反射角,如圖4-2所示。因為跟光線照射到鏡面所發(fā)生的現(xiàn)象相同,略微不同之處在于光線照射到鏡面上,其反射點在鏡面上,而小車行駛靠近障礙物的反射點與障礙物有一定的距離,所以我們可以命名這種轉向方式為鏡面發(fā)射式
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。