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

正文內(nèi)容

基于h8-3048單片機(jī)的智能車驅(qū)動設(shè)計與實現(xiàn)(編輯修改稿)

2024-09-06 17:00 本頁面
 

【文章內(nèi)容簡介】 們設(shè)置IO口為上升沿觸發(fā)或者下降沿觸發(fā),就能在中斷函數(shù)里面來計算脈沖數(shù)。已知:后輪直徑為D mm ,上升沿或者下降沿一圈N個,因此兩個脈沖之間為N等分的周長,兩個脈沖之間間隔的時間設(shè)為T。因此速度V為:公式 電機(jī)轉(zhuǎn)速計算公式由公式可以知道黑白間隔的條紋數(shù)越多,兩個脈沖之間的間隔越短而速度檢測的分辨率就越高。而條紋增多后,相鄰脈沖間的持續(xù)時間會變短,脈沖檢測的可靠性會因相鄰脈沖的干擾而受到影響,權(quán)衡速度檢測分辨率和可靠性兩方面,根據(jù)實驗檢測的效果我們采用12 等分的圓盤。 驅(qū)動電機(jī)原理電機(jī)的驅(qū)動是由驅(qū)動板來驅(qū)動的。原因是來自微控制器的信號一般都比較微弱無法正常驅(qū)動電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、停止等。于是,就需要電機(jī)驅(qū)動板把信號加強(qiáng)后再去控制電機(jī)的行為。 電機(jī)速度控制的原理對于電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)以及停止可以很容易的通過電壓來控制實現(xiàn)。例如,正轉(zhuǎn)我們可以給電機(jī)一個正向電壓,反轉(zhuǎn)我們可以給電機(jī)一個反向的電壓,停止則可以不提供電壓。但是,在智能小車比賽里面我們還有一個需求那就是控制電機(jī)速度的快慢。這就需要利用PWM原理來實現(xiàn)了。PWM(Pulse Width Modulation)控制技術(shù)就是對脈沖的寬度進(jìn)行調(diào)制的技術(shù),即通過對一系列脈沖的寬度進(jìn)行調(diào)制,來等效的獲得所需要的波形(含形狀和幅值);面積等效原理是PWM技術(shù)的重要基礎(chǔ)理論;圖 脈沖寬度調(diào)制的原理圖從中可以看到,工作的比例為Duty = on width/(on width + off width)公式 工作比例公式如果電壓在這個周期都持續(xù)在工作脈沖狀態(tài),那么工作比例為100%,相反則為0% 。因此電壓的等效值就等于輸入等于乘以工作比例。于是在理論上就可以得到U到U之間的如何電壓。其中U為輸入電壓。這就是PWM 脈沖寬度調(diào)制的優(yōu)勢所在。 電機(jī)正反轉(zhuǎn)、制動的原理電機(jī)的正反轉(zhuǎn)、制動的關(guān)鍵利用的是H橋芯片來實現(xiàn)的。如圖 圖 H橋?qū)崿F(xiàn)電機(jī)正反轉(zhuǎn)、制動原理圖 伺服機(jī)的控制原理伺服機(jī)的控制類似與電機(jī)的控制,同樣是常用了PWM 脈沖寬度調(diào)制的原理。不過稍有不同的是這里控制的是角度,所以得通過機(jī)械傳動設(shè)備轉(zhuǎn)換成角度輸出。原理如圖 圖 轉(zhuǎn)動角度與脈沖關(guān)系圖 智能車的規(guī)格參數(shù)a)車重: 長:384mm 寬:185mm 高:47mm b)傳感器種類:反射式紅外光電傳感器 數(shù)目:8個c)舵機(jī)個數(shù):1個d)電機(jī)個數(shù):2個e)前后輪直徑:53 mm 系統(tǒng)硬件部分總結(jié)本設(shè)計中的各個硬件模塊的設(shè)計為智能車的軟件開發(fā)、控制算法的設(shè)計、給智能車行駛的穩(wěn)定性和可靠性提供了堅實的平臺基礎(chǔ),各個功能模塊的調(diào)試與功能實現(xiàn)都符合大賽相關(guān)規(guī)定。 軟件環(huán)境選型源程序編譯環(huán)境:選用的是瑞薩科技公司的集成開發(fā)環(huán)境(Highperformance Embedded Workshop)Falsh 芯片燒寫軟件:選用的是組委會提供的CpuWriter程序的串口調(diào)試程序:選用的是Windows下的Tera Term Pro程序 程序引導(dǎo)部分首先,設(shè)置中斷向量表。然后設(shè)置程序的跳轉(zhuǎn)直接跳轉(zhuǎn)到C語言程序的main函數(shù)里面。程序如下RESET_START: H39。FFFF10,ER7 。 設(shè)置堆棧 JSR @_main 。 跳轉(zhuǎn)到C語言的main()函數(shù) 路徑識別的數(shù)據(jù)采集驅(qū)動部分因為前排傳感器通過傳感器子板反相后接到了MCU的Port 7端口因此要設(shè)置相關(guān)參數(shù)。如Port 7的輸入輸出方向,因為Port 7只是作為簡單的輸入IO口使用,因此沒有數(shù)據(jù)方向寄存器所以不用設(shè)置。為了讀取Port 7的數(shù)據(jù)寄存器方便,因此對其進(jìn)行宏定義如下:define P7DR (*(volatile unsigned char*)0xfffce)使用的時候直接可以用P7DR來代替Port 7的數(shù)據(jù)寄存器。由于,傳感器板上LED燈的排列方向和數(shù)據(jù)表示的高低位方向剛好相反 。為了處理習(xí)慣的方便必須把順序轉(zhuǎn)換正常。使用如下的轉(zhuǎn)換:in 作為輸入的8位值 ,ret 作為返回的最終結(jié)果。for( i = 0。 i 8。 i++ ) { ret = 1。 /* 返回值右移1位 */ ret |= in amp。 0x80。 /* 將in的最高位給ret */ in = 1。 /* in 左移一位 */ }取采集到的數(shù)據(jù)只需要使用P7DR的值就可以了,就像用只讀的變量一樣。 閘門傳感器的程序閘門傳感器輸入信號接到Port A上,只作為輸入信號。Port A既可以作為輸入又可以作為輸出寄存器。因此必須設(shè)置它的數(shù)據(jù)方向寄存器,圖 Port A的數(shù)據(jù)寄存器各位意義因為閘門傳感器輸出只接到第3位,因此程序設(shè)置:define P8DDR (*(volatile unsigned char*)0xfffcd)define P8DR (*(volatile unsigned char*)0xfffcf)P8DDR = 0xf3。取采集到的數(shù)據(jù)只需要使用P7DR的值就可以了,就像用只讀的變量一樣。(其中b為返回值)b = ~PADR。 /* 閘門傳感器信號讀取 */b amp。= 0x08。b = 3。 速度傳感器程序及設(shè)置 設(shè)計中斷函數(shù)首先設(shè)計左右電機(jī)的中斷函數(shù):/*左馬達(dá)中斷計數(shù)*/pragma interrupt( l_count )void l_count( void ){ISR amp。= 0xf7。 /* 清除中斷服務(wù)寄存器的標(biāo)志位,允許下一個中斷進(jìn)入*/this_t_lsec=t_lsec。t_lsec=0。}/*右馬達(dá)中斷計數(shù)*/pragma interrupt( r_count )void r_count( void ){ISR amp。= 0xfb。 /*清除中斷服務(wù)寄存器的標(biāo)志位,允許下一個中斷進(jìn)入*/this_t_rsec=t_rsec。t_rsec=0。}然后,設(shè)置中斷向量表讓MCU在中斷的上升沿或者下降沿到來時自動調(diào)用左右電機(jī)的中斷函數(shù)。.IMPORT _l_count 。左馬達(dá)中斷.IMPORT _r_count 。右馬達(dá)中斷. _r_count 。 14 h39。000038 外部中斷 IRQ2. _
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1