【正文】
design uses the STC89C52RC singlechip microputer as control core, by L298N motor driver module to control the movement of the car, using the ultrasonic module and the distance between the obstacle detection, also used the infrared obstacle avoidance module to detect obstacles, finally uses the LCD1602 display screen to display the data. The whole system module to control the car driven by a motor to move first, during the obstacle detection by infrared obstacle avoidance module, if detected obstacle, ultrasonic module began to measure distance and displayed in the LCD screen, and the car stop moving. The process cycle to the car stopped within the library, and finally the trolley and the rear obstacle distance is measured by the ultrasonic sensor, and eventually make adjustments. The whole process by singlechip puter for data processing, it is a convenient and safe way of parking. The thesis first puts forward the overall plan, and then based on STC89C52RC MCU development and application, and explained. In the paper also introduces the software structure of the system. On the premise of understanding of the working principle of the hardware conditions, using C language programming to realize the function of the system. Key Words: The transducer STC89C52RC SCM Automatic parking The C language 青島理工大學(xué)琴島學(xué)院畢業(yè)設(shè)計(論文) III 目 錄 第一章 引 言 ....................................................... 1 研究背景及發(fā)展現(xiàn)狀 ........................................... 1 研究目的及意義 ............................................... 1 研究內(nèi)容 ..................................................... 1 第二章 方案的論證及設(shè)計 ............................................. 2 自動泊 車系統(tǒng)的設(shè)計要求 ....................................... 2 系統(tǒng)的主要功能 ............................................... 2 第三章 自動泊車系統(tǒng)的硬件設(shè)計 ....................................... 4 自動停泊小車的硬件系統(tǒng) ....................................... 4 STC89C52 單片機的電路圖及引腳說明 ............................ 4 L298N 電機驅(qū)動模塊 ........................................... 7 超聲波傳感器模塊 ........................................... 10 紅外避障模塊 ............................................... 12 LCD1602 液晶顯示 ............................................ 14 第四章 自動泊車系統(tǒng)的軟件設(shè)計 ...................................... 16 開發(fā)軟件 .................................................... 16 Keil 軟件的介紹 ....................................... 16 STC_ISP 軟件介紹 ...................................... 17 自動泊車系統(tǒng)主程序 ......................................... 17 L298N 電機驅(qū)動程序 .......................................... 19 超聲波測距程序 ............................................. 19 紅外避障模塊程序 ........................................... 20 LCD1602 液晶顯示程序 ........................................ 21 第五章 自動停泊小車的測試 .......................................... 24 結(jié) 論 ............................................................. 26 致 謝 ............................................................. 27 參考文獻(xiàn) ........................................................... 28 附 錄 ............................................................. 29 附錄一 ......................................................... 29 附錄二 ......................................................... 36 青島理工大學(xué)琴島學(xué)院畢業(yè)設(shè)計(論文) 1 第一章 引 言 研究背景及發(fā)展現(xiàn)狀 在當(dāng)今社會,科技不斷發(fā)展和更新,逐漸形成了家有一車的趨勢,擁有一輛自己的汽車成為了當(dāng)今社會人們生活中的重要一部分。先由檢測系統(tǒng)來檢測汽車周圍的環(huán)境和汽車自身狀況,然后傳出到處理器,對數(shù)據(jù)進(jìn)行處理。 首先要確定小車開啟自動停泊模式的位置,然后計算好距離、角度和速度然后進(jìn)行 倒車,利用小車后面的紅外模塊對障礙物進(jìn)行檢測,確保倒車過程能順利實現(xiàn)。 系統(tǒng)功能圖如下圖 21 所示。功能強大的 STC89C52 單片機適合于許多較為復(fù)雜的控制應(yīng)用場合 【 11】 。 P1 端口( ~ , 1~ 8 引腳) :八位,準(zhǔn)雙向 I/O 口,在內(nèi)部具有自帶的上拉電阻 。在訪問 8 位地址的外部數(shù)據(jù)存儲器時, P2 口引腳上的內(nèi)容(就是專用寄存器( SFR)區(qū)中的 P2 寄存器的內(nèi)容) , 在整個訪問期間不會改變。在此引腳加上持續(xù)時間大于 2 個機器周期的高電平,就可以使單片機復(fù)位。 ALE 將被微弱拉高。將PWM 引腳上的跳線帽去掉后,從 ENA、 ENB 端輸入,可控制電機速度。測試距離 =(高電平時間 *聲速 (340M/S))/2。 光敏 電阻 器是利用 半導(dǎo)體 的 光電導(dǎo)效應(yīng) 制成的一種電阻值隨入射光的強弱而改變的 電阻器 ,入射光強,電阻減小,入射光弱,電阻增大。連接方式: VCCVCC; GNDGND;OUTI/O; ? 比較器采用 LM393,工作穩(wěn)定; ? 可采用 35V 直流電源對模塊進(jìn)行供電。 Keil 軟件的介紹 C51 開發(fā)系統(tǒng)基本知識 Keil C51 是 美國 Keil Software 公司出品的 51 系列兼容 單片機 C 語言軟件開發(fā)系統(tǒng) ,包括 C 語言編譯器、宏匯編 、連接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案。 ABS文件由 OH51 轉(zhuǎn)換成標(biāo)準(zhǔn)的 .Hex 文件,以供調(diào)試器 Dscope51 或 Tscope51 使用進(jìn)行源代碼級調(diào)試,也可由仿真器使用直接對目標(biāo)板進(jìn)行調(diào)試,也可以直 接寫入程序存貯器如 EPROM 中。并使小車進(jìn)行功能的實現(xiàn)。 青島理工大學(xué)琴島學(xué)院畢業(yè)設(shè)計(論文) 18 TL0=0。并開始對小車 的功能進(jìn)行實現(xiàn)。 IN2=1。 while(!RX)。 紅外避障模塊程序 在本次設(shè)計中,紅外模塊的作用是對小車的運動狀態(tài)進(jìn)行控制。而當(dāng)不存在障礙物則完成泊車過程。隨著液晶屏的初始化操作完成以后,就該對其忙檢測來確定 LCD 液晶屏當(dāng)前的狀態(tài)。 } unsigned char ReadDataLCM(void) { LCM_RS = 1。 青島理工大學(xué)琴島學(xué)院畢業(yè)設(shè)計(論文) 24 第五章 自動停泊小車的測試 第一次測試的時候伴隨著我緊張的心情,小車還是出現(xiàn)了一些小問題。 設(shè)計的不足: 此次設(shè)計完成 后,小車可以實現(xiàn)的功能符合課題的基本要求,雖然在制作、調(diào)試過程中歷盡艱辛,并付出了很多,但是設(shè)計中還存在著不足和需要改進(jìn)的地方,具體如下: 需要計算好地面與車輪的摩擦,會導(dǎo)致誤差; 小車可以自動尋找車位,并完成倒車; 主函數(shù)太大,運行時會出現(xiàn)問題; 對電機的控制不準(zhǔn)確,會出現(xiàn)碰撞; 萬向輪有時會影響小車的前進(jìn)方向。它讓我知道只有不斷摸索,不斷創(chuàng)新,不斷超越自己才能掃盡眼前的霧霾,迎接和煦的陽光,創(chuàng)造美好的新生活。如果不是他們,我在設(shè)計制作期間遇到的無數(shù)艱難將會無法度過。 sbit RX=P3^2。 sbit LCM_RW = P2^5。 unsigned char code ASCII[15] = {39。,39。,39。,39。 void WriteDataLCM(unsigned char WDLCM) { ReadStatusLCM()。 LCM_Data = WCLCM。 LCM_E = 0。 LCM_E = 0。 WriteCommandLCM(0x38,0)。 WriteCommandLCM(0x0F,1)。 WriteDataLCM(DData)。 ListLength++。 a0。 DisplayOneChar(1, 1, ASCII[10])。 DisplayOneChar(1, 1, ASCII[10])。 _nop_()。 _nop_()。 _nop_()。a++) for(b=0。 IN2=0。 IN2=0。 while(!RX)。 Sound = 1。 BZ_L=1。 a++) { if(a%2 == 0) { PWM2 = ~PWM2。 } } Sound = 1。 for(a =0。 if(!flag_c){ ceju()。 PWM1 = 1。 PWM2 = 0。 PWM1 = 1。 PWM1 = 0。 delayms(100)。 } delayms(1)。 Back()。 PWM2 = 1。 PWM2 = 0。 PWM1 = 1。 if(!flag_c){ ceju()。 for(a =0。 flag_c = 1。 for(a =0。 } }