freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)智能小車畢業(yè)設(shè)計(jì)(論文)(編輯修改稿)

2025-04-03 11:52 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 小車循跡的原理是 在鋪有約 四 厘米寬 黑膠帶 的 白紙 “ 路面 ” 上行駛 ,由于黑紙和白色路面對(duì)光線的反射系數(shù)不同,可以根據(jù)接收的反射光的強(qiáng)弱來判斷道路 —— 黑紙軌跡。本設(shè)計(jì)采用簡(jiǎn)單易用,應(yīng)用也較為普遍的紅外探測(cè)法。 紅外探測(cè)法,即用紅外線在不同顏色的物表面具有不同的反射性質(zhì)的特點(diǎn)[7]。在小車行駛過程中 傳感器的紅外發(fā)射二極管不斷發(fā)射 紅外線,當(dāng)發(fā)射出的紅外線沒有被反射回來或被反射回來但強(qiáng)度不夠大時(shí),光敏三極管一直處于關(guān)斷狀態(tài),此時(shí)模塊的輸出端為低電平, 當(dāng)紅外線遇到白色地面時(shí)發(fā)生漫反射, 紅外線被反射回來 反射光被裝在小車上的接收管接收 且強(qiáng)度足夠大,光敏三極管飽和,此時(shí)模塊的輸出端為高電平 ;如果遇到黑紙則紅外光被吸收,小車上的接收管接收不到信號(hào) , 再通過 LM393 作比較器來采集高低電平,從而實(shí)現(xiàn)信號(hào)的檢測(cè)。避障亦是此原理。 12 通過設(shè)計(jì)了如圖 35所示的電路來檢測(cè),圖中 R18 為限流電阻,當(dāng)有光反射回來時(shí),光電傳感器的三極管導(dǎo)通,在 LM393 的 2腳出 產(chǎn)生低電平電壓,通過 LM393處理后在 出產(chǎn)生高電平,返回給單片機(jī),從而達(dá)到檢測(cè)的目的。并通過變阻器 RV1 可調(diào)節(jié)傳感器的靈敏度。 圖 35 循跡原理圖 測(cè)速電路 采用 透射式光電傳感器(凹槽型 ) 進(jìn)行測(cè)速。槽型光耦是由紅外發(fā)光管和光敏三極管構(gòu)成的, 將碼盤安裝在電機(jī)軸上,當(dāng)電機(jī)轉(zhuǎn)動(dòng)時(shí),碼盤也隨之轉(zhuǎn)動(dòng)。 工作時(shí)紅外發(fā)光管發(fā)出紅外光線透過光耦的槽投射到光敏三極管上,光敏三極管導(dǎo)通,集電極輸出低電平。當(dāng)紅外光線被檢測(cè)物遮斷時(shí),光敏三極管截止,集電極輸出高電平。遮擋一次槽型光耦輸出一個(gè)脈沖,因此脈沖的個(gè)數(shù)就是被 檢測(cè)物的數(shù)量。車輪轉(zhuǎn)動(dòng)時(shí)帶動(dòng)碼盤轉(zhuǎn)動(dòng),單片機(jī)內(nèi)部計(jì)時(shí)可測(cè)出給定的時(shí)間內(nèi)通過的脈沖數(shù),從而測(cè)出小車的實(shí)時(shí)速度。其電路原理圖與循跡原理圖類似。如圖 36 所示。 13 圖 36 測(cè)速電路原理圖 顯示電路 用 LCD1602 來顯示數(shù)據(jù), LCD 液晶具有功耗低、顯示內(nèi)容豐富、清晰,顯示信息量大,顯示速度較快等特點(diǎn)。 其中用滑動(dòng)變阻器 RV0 來調(diào)節(jié)顯示器的背光亮度。 電路原理圖如下圖 37。 圖 37 顯示電路原理圖 主控電路 單片機(jī)是控制單元的核心。起著控制小車所有運(yùn)行狀態(tài)的作用。單片機(jī)控制模塊使用的是 宏晶 公司生產(chǎn)的 STC89C52,使用該芯片很容易實(shí)現(xiàn)對(duì)其 它 模塊的控制。通過對(duì)單片機(jī) STC89C52 寫入程序,可以方便的用軟件來控制 , 整個(gè)過程 的 14 控制部分如圖 38 所示 。 圖 38 單片機(jī)最小系統(tǒng) STC89C52單片機(jī)最小系統(tǒng)包括了 晶振電路,電源電路以及 復(fù)位 電路 , 其中復(fù)位電路的復(fù)位按鍵 用于小車 的 復(fù)位。 ~ 分別控制電機(jī)驅(qū)動(dòng)。其 它 P 口用外接控制小車的各種控制開關(guān), P0口外接上拉電阻,可用于外接 LCD1602。 STC89C52 單片機(jī)介紹 [5]: STC89C52RC單片機(jī)是宏晶科技推出的新一代高速 /低功耗 /超強(qiáng)抗干擾的單片機(jī),指令代碼完全兼容傳統(tǒng) 8051 單片機(jī), 12 時(shí)鐘 /機(jī)器周期和 6 時(shí)鐘 /機(jī)器周期可以任意選擇。 主要特性如下: 1. 增強(qiáng)型 8051 單片機(jī), 6 時(shí)鐘 /機(jī)器周期和 12 時(shí)鐘 /機(jī)器周期可以任意選擇,指令代碼完全兼容傳統(tǒng) 8051。 2. 工作頻率范圍: 0~ 40MHz,相當(dāng)于普通 8051 的 0~ 80MHz,實(shí)際工作頻率可達(dá) 48MHz。 3. 工作電壓: ~ ( 5V單片機(jī)) /~ ( 3V單片機(jī)) 15 4. 片上集成 512字節(jié) RAM。 5. 用戶應(yīng)用程序空間為 8K 字節(jié)。 6. ISP(在系統(tǒng)可編程) /IAP(在應(yīng)用可編程),無 需專用編程器,無需專用仿真器,可通過串口( RxD/,TxD/)直接下載用戶程序,數(shù)秒即可完成一片。 7. 通用 I/O口( 32 個(gè)),復(fù)位后為: P1/P2/P3/P4 是準(zhǔn)雙向口 /弱上拉,P0 口是漏極開路輸出,作為總線擴(kuò)展用時(shí),不用加上拉電阻,作為I/O口用時(shí),需加上拉電阻。 8. 具有看門狗功能。 9. 具有 EEPROM 功能。 10. 共 3 個(gè) 16 位定時(shí)器 /計(jì)數(shù)器。即定時(shí)器 T0、 T T2。 11. 外部中斷 4 路,下降沿中斷或低電平觸發(fā)電路, Power Down 模式可由外部中斷低電平觸發(fā)中斷方式喚醒。 12. 通用異步串行口( UART), 還可用定時(shí)器軟件實(shí)現(xiàn)多個(gè) UART。 13. 工作溫度范圍: 40~ +85℃(工業(yè)級(jí)) /0~ 75℃(商業(yè)級(jí)) 14. PDIP 封裝。 STC89C52 單片機(jī)的引腳圖如下圖 39。 16 圖 39 STC89C52RC 引腳圖 另外 STC 單片機(jī)有兩種時(shí)鐘模式,一種是單倍速,也就是 12 時(shí)鐘模式,在該模式下, STC 單片機(jī)與其他公司 51 系列單片機(jī)具有相同的機(jī)器周期,即 12 個(gè)振蕩周期為一個(gè)機(jī)器周期;另一種是雙倍速,又稱 6 時(shí)鐘模式,在該模式下, STC單片機(jī)比其他公司的 51 單片機(jī)運(yùn)行速度快一倍。 17 第 4章 軟件設(shè)計(jì) 主程序模塊的設(shè)計(jì) 主程序的流程圖 圖 41 主程序流程圖 在圖 41 主程序流程圖中,開始時(shí)先是單片機(jī)的初始化,包括定時(shí)器初始化,外部中斷的初始化,液晶的初始化。然后調(diào)用循跡子程序,小車循跡前進(jìn),如果定時(shí)時(shí)間到了則調(diào)用超聲波模塊子程序,判斷前方 50cm 處是否有障礙物,如果有的話 led 閃爍,如果檢測(cè)到停止線則小車停止。 18 主程序的設(shè)計(jì) void main() { Timer_Init()。 //定時(shí)器初始化 INT0_Init()。 //外部中斷初始 化 LCD_Init()。 //LCD1602初始化 TR1=1。 //啟動(dòng)定時(shí)器 lcd_write_cmd(0x80)。 LED1 = 1。 LED2 = 1。 while(1) { PWM()。 //pwm調(diào)速 track()。 //調(diào)用循跡子程序 lcd_write_cmd(0x80+0x09)。 lcd_write_dat(qian)。 lcd_write_cmd(0x80+0x0a)。 lcd_write_dat(bai2)。 lcd_write_cmd(0x80+0x0b)。 lcd_write_dat(shi2)。 lcd_write_cmd(0x80+0x0c)。 lcd_write_dat(ge2)。 lcd_write_cmd(0x80+0x47)。 lcd_write_dat(bai1)。 lcd_write_cmd(0x80+0x48)。 lcd_write_dat(shi1)。 lcd_write_cmd(0x80+0x49)。 lcd_write_dat(ge1)。 if(flag1==1amp。amp。flag2==1) { csb()。 //調(diào)用超聲波子程序 flag1=0。 } } } 19 電機(jī)驅(qū)動(dòng)程序的設(shè)計(jì) 電機(jī)驅(qū)動(dòng)程序流程圖 圖 42 電機(jī)驅(qū)動(dòng)程序流程圖 電機(jī)驅(qū)動(dòng)程序流程圖如上圖 42,開始先檢測(cè)小車的狀態(tài)如果相對(duì)黑線是直的,則調(diào)用直走子程序,即左右兩個(gè)電機(jī)都正轉(zhuǎn);如果小車偏向黑線的左邊則調(diào)用向右走子程序,即左電機(jī)正轉(zhuǎn)右電機(jī)反轉(zhuǎn);如果小車偏向黑線的右邊則調(diào)用向左走子程序,即左電機(jī)反轉(zhuǎn)右 電機(jī)正轉(zhuǎn);如果小車完全偏離黑線則調(diào)用向后退子程序,即兩個(gè)電機(jī)都反轉(zhuǎn);如果小車到終點(diǎn)了則調(diào)用停止子程序,即兩個(gè)電機(jī)都不轉(zhuǎn)。 20 電機(jī)驅(qū)動(dòng)程序的設(shè)計(jì) void goahead() //小車直走 { IN1 = 1。 IN2 = 0。 IN3 = 1。 IN4 = 0。 } void goback() //小車后退 { IN1 = 0。 IN2 = 1。 IN3 = 0。 IN4 = 1。 } void turnright() //小車向右轉(zhuǎn) { IN1 = 1。 IN2 = 0。 IN3 = 0。 IN4 = 1。 } void turnleft() //小車向左轉(zhuǎn) { IN1 = 0。 IN2 = 1。 IN3 = 1。 IN4 = 0。 } void zw_turnright() //用于轉(zhuǎn)彎 時(shí) 的左轉(zhuǎn) { IN1 = 1。 IN2 = 0。 IN3 = 0。 IN4 = 0。 } void zw_turnleft() //用于轉(zhuǎn)彎時(shí) 的右轉(zhuǎn) { 21 IN1 = 0。 IN2 = 0。 IN3 = 1。 IN4 = 0。 } void stop() //小車停止 { IN1 = 0。 IN2 = 0。 IN3 = 0。 IN4 = 0。 } void PWM(void) //小車調(diào)速 { PWM_ENA = 1。 PWM_ENB = 1。 delayXms(H)。 PWM_ENA = 0。 PWM_ENB = 1。 delayXms(L)。 PWM_ENA = 0。 PWM_ENB = 0。 delayXms(N)。 } 22 循跡模塊程序的設(shè)計(jì) 循跡模塊流程圖 圖 43 循跡模塊流程圖 在圖 43 循跡模塊流程圖中,通過檢測(cè) P1 口第四位的電平并把它賦給變量temp 然后用 switchcase 語句來根據(jù) P1 口低四位的電平,給出相應(yīng)的電平送到電機(jī)驅(qū)動(dòng)芯片 L298N 去,從而控制小車的直走,左轉(zhuǎn),右轉(zhuǎn),后退,停止等動(dòng)作。 循跡模塊子程序設(shè)計(jì) void track( void ) { uchar temp = 0。 temp = P1 amp。 0x0f。 //取 P1口低四位賦給變量 temp switch( temp ) 23 { case 0x09: goahead()。 //直走 break。 case 0x0c: case 0x0e: turnleft()。//左轉(zhuǎn) break。 case 0x03: case 0x07: turnright()。//右轉(zhuǎn) break。 case 0x0f: goback()。// 后退 break。 case 0x00: stop()。 //停止 break。 case 0x08: zw_turnleft()。//用于直角轉(zhuǎn)彎 時(shí) 的左轉(zhuǎn) delayXms(20)。 break。 case 0x01: zw_turnright()。 //用于直角轉(zhuǎn)彎時(shí)的右轉(zhuǎn) delayXms(20)。 break。 default: break。 } } 24 測(cè)距避障模塊程序的設(shè)計(jì) 測(cè)
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1