天津工業(yè)大學(xué)鋒利隊技術(shù)報告_第1頁
天津工業(yè)大學(xué)鋒利隊技術(shù)報告_第2頁
天津工業(yè)大學(xué)鋒利隊技術(shù)報告_第3頁
天津工業(yè)大學(xué)鋒利隊技術(shù)報告_第4頁
天津工業(yè)大學(xué)鋒利隊技術(shù)報告_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、第一屆“飛思卡爾”杯全國大學(xué)生智能汽車邀請賽技 術(shù) 報 告學(xué) 校:天津工業(yè)大學(xué) 隊伍名稱:鋒利隊參賽隊員:李超 謝樂成 郭威帶隊教師:張軍 關(guān)于技術(shù)報告和研究論文使用授權(quán)的說明 本人完全了解第一屆“飛思卡爾”杯全國大學(xué)生智能汽車邀請賽關(guān)保留、使用技術(shù)報告和研究論文的規(guī)定,即:參賽作品著作權(quán)歸參賽者本人,比賽組委會和飛思卡爾半導(dǎo)體公司可以在相關(guān)主頁上收錄并公開參賽作品的設(shè)計方案、技術(shù)報告以及參賽模型車的視頻、圖像資料,并將相關(guān)內(nèi)容編纂收錄在組委會出版論文集中。參賽隊員簽名: 帶隊教師簽名: 日 期: 目錄第一章 引言第二章 硬件設(shè)計2.1單片機2.2電源管理模塊 電源總體分配圖2.2.2 780

2、5和7806降壓模塊 DC/DC升壓模塊2.3后輪電機及其驅(qū)動模塊后輪電機后輪電機驅(qū)動模塊2.4傳感器模塊傳感器工作原理及性能傳感器布局2.5速度負(fù)反饋模塊2.6前輪舵機2.7智能車的主要技術(shù)參數(shù)第三章 軟件設(shè)計3.1 HCS12控制軟件理論3.2算法說明及代碼設(shè)計介紹3.3調(diào)試過程說明第四章 結(jié)論參考文獻附錄第一章 引言本賽車采用飛思卡爾16位微控制器MC9S12DG128B作為核心控制單元,通過紅外光電傳感器進行路徑識別,采用自制光電碼盤檢測速度,采用MC33886DH集成H橋芯片驅(qū)動電機,具有簡單且先進的轉(zhuǎn)向控制算法和速度控制算法,保證智能車能夠在各種不同尺寸的賽道上穩(wěn)定高速的行駛。本技

3、術(shù)報告將從硬件設(shè)計(單片機型號、電源管理模塊、后輪電機及其驅(qū)動模塊、傳感器模塊、速度負(fù)反饋模塊、前輪舵機)和軟件設(shè)計兩大部分對智能車各項性能進行介紹。第二章 硬件設(shè)計2.1單片機本智能車采用大賽組委會提供的采用飛思卡爾16位微控制器MC9S12DG128B作為核心控制單元,有關(guān)MC9S12DG128B的詳細(xì)信息可以登陸。2.2 電源管理模塊 電源總體分配圖圖1 電源管理原理圖圖2 電源管理電路圖2.2.2 7805和7806穩(wěn)壓模塊由于電源提供的直流電壓為7.2V,而單片機、測速傳感器和其中6個光電傳感器的工作電壓為5V。所以,使用7805電路進行5V穩(wěn)壓。電路如右圖所示:圖3 7805電路圖

4、圖4 7806電路圖前輪舵機的工作電壓為4.86V,根據(jù)舵機的特性,電機在6V時能輸出最大轉(zhuǎn)矩。所以,采用7806對電源電壓進行降壓與穩(wěn)壓。如右所示: DC/DC升壓模塊 VoViDC/DC升 壓模 塊本智能車光電傳感器有2個的工作電壓為12V,所以我們采用DC/DC升壓模塊將電壓升為12V。GND0圖5 DC/DC升壓模塊2.3后輪電機及其驅(qū)動模塊后輪電機本車后輪電機采用由深圳市高翔電機有限公司生產(chǎn)的RS-380SH-4045直流電機,電機參數(shù)如下表:表一 驅(qū)動電機參數(shù)后輪電機驅(qū)動模塊后輪電機采用飛思卡爾MC33886芯片進行驅(qū)動。MC33886芯片主要技術(shù)參數(shù):5.0V to 40V Co

5、ntinuous OperationPWM Frequencies up to 10kHz5.0A H-BRIDGEUndervoltage shutdownMC33886驅(qū)動芯片與單片機連接、與電機連接電路:圖6 MC33886連接電路原理圖2.4傳感器模塊傳感器工作原理及性能光電傳感器采用浙江超能電子有限公司生產(chǎn)的E3F-DS30C1型號光電傳感器。此傳感器能有效的檢測出黑白線。并且,此傳感器有檢測距離遠, 靈敏度可調(diào),響應(yīng)速度塊等優(yōu)點。具體參數(shù)為:圖7 E3F-DS30C1型號光電傳感器原理電路圖工作電壓:DC10-30V;工作電流:I 200MA;探測距離:430CM。響應(yīng)時間:t 1

6、.5ms傳感器布局圖8 傳感器布局分布在上面的兩個紅外光電傳感器探測距離20CM,我們主要用它來檢測彎道,并適時的減速;中間的四個紅外光電傳感器主要用來檢測彎道并根據(jù)情況控制前輪所轉(zhuǎn)的角度;下面的兩個光電傳感器主要用于檢測直線。2.5速度負(fù)反饋模塊采用紅外光電對射傳感器對安裝在后輪轉(zhuǎn)軸上的自制編碼器提取信號,并用555定時器對所提取的信號進行整形,整形后的信號送入單片機,通過單片機輸入捕捉功能計算出智能車當(dāng)時的行駛速度,根據(jù)反饋回的速度控制輸給后輪PWM占空比。圖9 555定時器引腳圖速度反饋電路如下:圖10 速度反饋電路測速編碼器安裝情況如右圖,采用自制的編碼盤,焊接的電路。 圖11 測速傳

7、感器安裝位置2.6前輪舵機SRM-102 舵機基本參數(shù)如下: 響應(yīng)速度: 4.8V 旋轉(zhuǎn)60度 0.2秒輸出力矩: 3.3kg (6V)轉(zhuǎn)速:     0.18s (6V)尺寸:     39*20*36mm重量:     45g工作電壓: 4.8-6V2.7 智能車的主要技術(shù)參數(shù)智能車總體重量:1.24千克 長、寬、高:35cm、24cm、14cm電路功耗:12W

8、電容總?cè)萘浚簜鞲衅鞣N類及個數(shù):紅外光電傳感器6個 光電傳感器2個 紅外對射傳感器1個賽道信息檢測精度:55mm第三章 軟件設(shè)計3.1 HCS12控制軟件理論軟件以光電傳感器檢測黑白線的的不同而輸出高低電平為依據(jù),根據(jù)不同傳感器到黑線,對應(yīng)不同的情況,對前輪舵機轉(zhuǎn)向和后輪電機速度進行控制。并設(shè)置了一些特殊情況,以解決小車在不同路段行駛時有不同情況。并使用編碼器測速原理對小車進行測速。以控制小車的高速運行,起反饋作用。程序流程圖為:程序開始AD初始化速度大小AD轉(zhuǎn)換是速度>最大控制速度速度<最小控制速度穩(wěn)速升速否轉(zhuǎn)換完?轉(zhuǎn)換值給最高速度傳感器不同情況時各速度初始化中斷執(zhí)行程序關(guān)中斷舵機

9、各角度初始化判斷誰中斷PWM、定時器、H口初始化根據(jù)傳感器中斷賦不同值,以對應(yīng)速度、轉(zhuǎn)動角度開中斷for循環(huán):等中斷,一直執(zhí)行程序,二次控制程序control()跳出中斷讀取脈沖個數(shù)3.2算法說明及代碼設(shè)計介紹H口中斷服務(wù)程序設(shè)計清單: interrupt void H0_Interrupt(void) DisableInterrupts; /關(guān)中斷 if(PTIH=0b00000100 ) /(3)傳感器檢測黑線; ctrl=3; left=1; right=0; PORTK = 0; else if(PTIH=0b00001000 ) /(4)傳感器檢測黑線; ctrl=4; left=0

10、; right=1; PORTK = 1; else if(PTIH=0b00010000) /(5)傳感器檢測黑線; ctrl=5; left=1; right=0; PORTK = 2; else if(PTIH=0b00100000 ) /(6)傳感器檢測黑線; ctrl=6; left=0; right=1; PORTK = 4; else if(PTIH=0b01000000 ) /(7)傳感器檢測黑線; ctrl=7; left=1; right=0; PORTK = 0; else if(PTIH=0b10000000 ) /(8)傳感器檢測黑線; ctrl=8; left=0;

11、 right=1; PORTK = 1; else if(PTIH=0b00000011 ) /(1)、(2)傳感器同時檢測黑線; ctrl=0; left=0; right=0; else if(PTIH=0b00000001) /(1)傳感器檢測黑線; ctrl=1; left=0; right=0; else if(PTIH=0b00000010 ) /(2)傳感器檢測黑線; ctrl=2; left=0; right=0; turn_drive = turnctrl; speed_ref = speedctrl; speed_drive=200; PWME = 0; PIFH=255;

12、 PWMDTY01 = turn_drive; PWMDTY5 = speed_drive; PWME = 34; EnableInterrupts; asm("RTI"); /中斷返回注:部分變量參數(shù)意義見附錄程序在此段程序中,主要是對小車進行產(chǎn)生中斷后的最初控制,以快速響應(yīng)為目的。同時,產(chǎn)生一些標(biāo)志性信息,為其后的再次控制提供各種信息。二次控制子程序清單:void control() if(ctrl=0) if(counter<speed_ref)&&(speed_drive<255) speed_drive+; else if(ctrl=1

13、)|(ctrl=2) if(counter<speed_ref-1)&&(speed_drive<255) speed_drive+; else if(counter>speed_ref) speed_drive-; else if(ctrl=3)|(ctrl=4) if(counter<speed_ref)&&(speed_drive<255) speed_drive+; else if(counter>speed_ref) speed_drive-; else if(ctrl=5)|(ctrl=6) if(counter&

14、lt;speed_ref)&&(speed_drive<255) speed_drive+; else if(counter>speed_ref) speed_drive-; else if(ctrl=7)|(ctrl=8) if(counter<speed_ref)&&(speed_drive<255) speed_drive+; else if(counter>speed_ref) speed_drive-; PWME = 0; PWMDTY01 = turn_drive; PWMDTY5 = speed_drive; PWME

15、 = 34; return; 根據(jù)當(dāng)前速度、傳感器檢測到黑線情況,對小車的速度進行控制。包括當(dāng)小車速度小到設(shè)置極限時對其升速。當(dāng)最外傳感器檢測到黑線時,根據(jù)當(dāng)時速度情況對其降速,以保證其能正常轉(zhuǎn)過彎道,不會沖出跑道。3.3調(diào)試過程說明對速度、轉(zhuǎn)角、傳感器位置以及傳感器靈敏度進行調(diào)節(jié)。確定小車在不沖出跑道的前提下,在直線上能達到的最大速度、轉(zhuǎn)彎降速時最小降到多少進行調(diào)節(jié)。以達到最佳的搭配。對傳感器之間距離、傳感器靈敏度進行小范圍的調(diào)節(jié),以達到最好的檢測狀態(tài)。并對其抗干擾性進行檢測。第四章 結(jié)論半年來,在緊張的學(xué)習(xí)之余,我們積極準(zhǔn)備著即將到來的智能車大賽,雖然我們的知識和經(jīng)驗還很不足,但在經(jīng)過幾個

16、月來的精心準(zhǔn)備,我們完成了智能車的設(shè)計制作與調(diào)試,并在自制的跑道上完成了各種自動駕駛測試。我們的智能車主要由尋跡探測部分和轉(zhuǎn)速控制部分兩大部分構(gòu)成,具有簡單而先進的轉(zhuǎn)向控制算法與速度控制算法,小車行駛快速、可靠。但智能車在“S”形賽道上仍有一定的振蕩并且小車行駛的穩(wěn)定性不是很強,往往在同一賽道上每一圈的時間有一定的差別,針對這個問題,我們進行了一系列的有針對性的測試盡量將振蕩降到最小,使其具有更好的穩(wěn)定性。參考文獻1 MC9S12DT128BDGV1 Device User Guide2 MC9S12ATD10B8CV2 Device User Guide3 MC9S12BDLCV1 Devi

17、ce User Guide4 MC9S12BFV1 Device User Guide5 MC9S12CRGV3 Device User Guide6 MC9S12DT128PIMV1 Device User Guide7 MC9S12ECT16B8V1 Device User Guide8 MC9S12EETS2KV1 Device User Guide9 MC9S12FTS128KV1 Device User Guide10 MC9S12IICV2 Device User Guide11 MC9S12MSCANV2 Device User Guide12 MC9S12PWM8B8CV1 D

18、evice User Guide13 MC9S12SCIV2 Device User Guide14 MC9S12SPIV2 Device User Guide15 MC9S12VREGV1 Device User Guide16邵貝貝.單片機嵌入式應(yīng)用的在線開發(fā)方法. 北京:清華大學(xué)出版社,200417王宜懷,劉曉升.嵌入式應(yīng)用技術(shù)基礎(chǔ)教程. 北京:清華大學(xué)出版社,200518 黃繼昌.無線電愛好者實用資料圖表集. 北京:人民郵電出版社,199119秦曾煌.電工學(xué)上下冊 電子技術(shù)(第五版). 北京:高等教育出版社,1999附錄程序代碼:#include <hidef.h> /*

19、common defines and macros */#include <mc9s12dg128.h> /* derivative information */#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"unsigned char ctrl; unsigned char speed9; unsigned int turn9; unsigned char ATD; unsigned int turn_drive=1500;unsigned char speed_ref=0;int turn_change=0; unsig

20、ned char speed_drive=200; unsigned char left=0; unsigned char right=0; unsigned char counter;/ -AD初始化 - void AD_Init(void) ATD0CTL2 = 0xC0; /控制寄存器2: 上電,標(biāo)志位快速清零 ATD0CTL3 = 0x08; /一個通道轉(zhuǎn)換,非FIFO模式 ATD0CTL4 = 0x85; /轉(zhuǎn)換精度8位,2個AD轉(zhuǎn)換周期,最高AD轉(zhuǎn)換時鐘為2MHz,即:24MHz/(5+1)*0.5=2MHz ATD0CTL5 = 0x80; /八位精度只能采用右對齊方式,結(jié)果數(shù)據(jù)

21、無符號表示,選擇多路轉(zhuǎn)換,通道選擇碼為000(cc,cb,ca)即從0通道開始的3個通道被采樣 ATD0DIEN = 0x00; / 禁止數(shù)字輸入緩沖 /-中斷口H初始化-void PORTH_Init() DDRH=0x00; PIEH=0xFF;/H口中斷允許 PPSH=0xFF; void PORTK_Init() DDRK=255; PORTK=6; /IN2=0;D1=0;D2=1;/-計數(shù)、定時初始化- void ECT_init() PBCTL = 0; DLYCT = 0; ICPAR_PA0EN=0; TCTL4_EDG0A=1; MCCTL_MODMC=1; ICPAR_P

22、A0EN=1; MCCTL_MCZI = 1; MCCTL_MODMC = 1; MCCTL_MCPR = 3; MCCTL_RDMCL = 1; MCCNT = 50000; TSCR1_TEN = 1; MCCTL_MCEN = 1; /-PWM初始化-void PWM_init() PWMCTL_CON01=1;/0和1聯(lián)合成16位PWM; PWMCNT01 = 0;/計數(shù)器清零; PWMPOL_PPOL1=1;/先輸出高電平,計數(shù)到DTY時,反轉(zhuǎn)電平 PWMPRCLK = 0; /clockA不分頻; clockA=busclock; PWMSCLA = 12; /對clock sA

23、進行24分頻;pwm clock=clockA/24=1MHz; /pwm0、1 ,前輪電機 PWMDTY01 = turnctrl; /高電平時間為1.5ms; PWMPER01 = 20000; /周期20ms; 50Hz; PWMCLK_PCLK1 = 1; /選擇clock sA做時鐘源; PWME_PWME1 = 1;/允許PWM1 /PWM5后輪電機 PWMCNT5 = 0; PWMPOL_PPOL5=1; PWMDTY5 = speedctrl; PWMPER5 = 255; PWMCLK_PCLK5 = 1; PWME_PWME5 = 1; return; /-H口中斷處理函數(shù)

24、-#pragma CODE_SEG NON_BANKED interrupt void H0_Interrupt(void) DisableInterrupts; /關(guān)中斷 if(PIFH=0b00000100 ) /(3)傳感器檢測黑線; ctrl=3; left=1; right=0; else if(PIFH=0b00001000 ) /(4)傳感器檢測黑線; ctrl=4; left=0; right=1; else if(PIFH=0b00010000) /(5)傳感器檢測黑線; ctrl=5; left=1; right=0; else if(PIFH=0b00100000 ) /

25、(6)傳感器檢測黑線; ctrl=6; left=0; right=1; else if(PIFH=0b01000000 ) /(7)傳感器檢測黑線; ctrl=7; left=1; right=0; else if(PIFH=0b10000000 ) /(8)傳感器檢測黑線; ctrl=8; left=0; right=1; else if(PIFH=0b00000011 ) /(1)、(2)傳感器同時檢測黑線; ctrl=0; left=0; right=0; else if(PIFH=0b00000001) /(1)傳感器檢測黑線; ctrl=1; left=0; right=0; el

26、se if(PIFH=0b00000010 ) /(2)傳感器檢測黑線; ctrl=2; left=0; right=0; turn_drive = turnctrl; speed_ref = speedctrl; speed_drive=200; PWME = 0; PIFH=255; PWMDTY01 = turn_drive; PWMDTY5 = speed_drive; PWME = 34; EnableInterrupts; asm("RTI"); /中斷返回/-T0定時中斷- interrupt void T0_Interrupt(void) counter =

27、 PACN0; PACN0 = 0; TFLG2_TOF = 1; MCFLG_MCZF = 1; if(ctrl=1) turn_drive-; else if(ctrl=2) turn_drive+;/-控制子程序- void control() if(ctrl=0) if(counter<speed_ref)&&(speed_drive<255) speed_drive+; else if(ctrl=1)|(ctrl=2) if(counter<speed_ref-1)&&(speed_drive<255) speed_drive+; else if(counter>speed_ref) speed_drive-; else if(ctrl=3)|(ctrl=4) i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論