湖北汽車工業(yè)學(xué)院電磁二隊(duì)技術(shù)報(bào)告_第1頁(yè)
湖北汽車工業(yè)學(xué)院電磁二隊(duì)技術(shù)報(bào)告_第2頁(yè)
湖北汽車工業(yè)學(xué)院電磁二隊(duì)技術(shù)報(bào)告_第3頁(yè)
湖北汽車工業(yè)學(xué)院電磁二隊(duì)技術(shù)報(bào)告_第4頁(yè)
湖北汽車工業(yè)學(xué)院電磁二隊(duì)技術(shù)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩67頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第八屆全國(guó)大學(xué)生智能汽車邀請(qǐng)賽技術(shù)報(bào)告第八屆“飛思卡爾”杯全國(guó)大學(xué)生智能汽車競(jìng)賽技術(shù)報(bào)告學(xué)校:湖北汽車工業(yè)學(xué)院隊(duì)伍名稱:電磁二隊(duì)參賽隊(duì)員:魏超王艷明王興偉帶隊(duì)教師:雷鈞高志敏關(guān)于技術(shù)報(bào)告和研究論文使用授權(quán)的說(shuō)明 本人完全了解第八屆“飛思卡爾”杯全國(guó)大學(xué)生智能汽車邀請(qǐng)賽關(guān)保留、使用技術(shù)報(bào)告和研究論文的規(guī)定,即:參賽作品著作權(quán)歸參賽者本人,比賽組委會(huì)和飛思卡爾半導(dǎo)體公司可以在相關(guān)主頁(yè)上收錄并公開(kāi)參賽作品的設(shè)計(jì)方案、技術(shù)報(bào)告以及參賽模型車的視頻、圖像資料,并將相關(guān)內(nèi)容編纂收錄在組委會(huì)出版論文集中。參賽隊(duì)員簽名: 帶隊(duì)教師簽名: 日期: 引言背景介紹飛思卡爾杯全國(guó)大學(xué)生智能車競(jìng)賽以“立足培養(yǎng),重在參與,鼓勵(lì)探索,追求卓越”為指導(dǎo)思想,涵蓋了機(jī)械、模式識(shí)別、電子、電氣、傳感技術(shù)、計(jì)算機(jī)、自動(dòng)化控制、汽車?yán)碚摰榷喾矫嬷R(shí),從一定程度上反映了當(dāng)代大學(xué)生綜合運(yùn)用所學(xué)知識(shí)和探索創(chuàng)新的精神。同時(shí)該賽事是教育部高等教育司委托(教高司函[2005]201號(hào)文),由教育部高等自動(dòng)化專業(yè)教學(xué)指導(dǎo)分委員會(huì)(以下簡(jiǎn)稱自動(dòng)化分教指委)主辦的全國(guó)性/多學(xué)科交叉、趣味性、創(chuàng)新性賽事,旨在加強(qiáng)大學(xué)生實(shí)踐與團(tuán)隊(duì)合作精神,促進(jìn)高等教育改革。競(jìng)賽規(guī)則透明,評(píng)價(jià)客觀標(biāo)準(zhǔn),堅(jiān)持公開(kāi)、公平、公正的原則,從而保持了競(jìng)賽的健康、普及、持續(xù)的發(fā)展。鑒于飛思卡爾全國(guó)大學(xué)生智能車競(jìng)賽已成功舉辦了5屆,大賽前年為了擴(kuò)展賽道檢測(cè)的多樣化和鍛煉學(xué)生的各項(xiàng)能力,在原來(lái)的攝像頭組與光電組基礎(chǔ)上新增以20KHZ、100ma交變電流(方波)為引導(dǎo)方式的電磁組。學(xué)校積極響應(yīng)教育部關(guān)于加強(qiáng)大學(xué)生的創(chuàng)新意識(shí)、合作精神和創(chuàng)新能力的培養(yǎng)的號(hào)召,成立智能車隊(duì)伍參加比賽。我們積極組隊(duì)參加第八屆“飛思卡爾”杯全國(guó)大學(xué)生智能車比賽,多方搜索資料。由于電磁組的信號(hào)采集與攝像頭組和光電組有很大差別,所以我們延續(xù)了很多學(xué)校包括杭州電子科技大學(xué)在內(nèi)所使用的工字諧振電感作為傳感器來(lái)檢測(cè)信號(hào),加以合理的傳感器布局,經(jīng)過(guò)后續(xù)電路處理,完成對(duì)賽道信號(hào)檢測(cè)并以此來(lái)控制車子的轉(zhuǎn)向和行駛速度。關(guān)于軟件,我們采用魯棒性較強(qiáng)的PID控制算法來(lái)作為車子的主導(dǎo)控制。為滿足智能車在高速與急轉(zhuǎn)等惡劣情況下的動(dòng)力性能和穩(wěn)定性能,我們參考了前幾屆的隊(duì)伍參賽經(jīng)驗(yàn),經(jīng)過(guò)深思熟慮對(duì)整車經(jīng)行了合理的重心與電路等的布局。本技術(shù)報(bào)告主要講述電磁二隊(duì)智能車的制作歷程,包括機(jī)械和硬件的設(shè)計(jì)、改裝,HCS12單片機(jī)的學(xué)習(xí)和使用,控制算法的研究與應(yīng)用,車模機(jī)械參數(shù)的討論和修改等。為了提高全國(guó)大學(xué)生智能汽車競(jìng)賽創(chuàng)新性和趣味性,激發(fā)高校學(xué)生參與比賽的興趣,提高學(xué)生的動(dòng)手能力、創(chuàng)新能力和接受挑戰(zhàn)能力。圖1.1小車整體圖控制簡(jiǎn)述由于傳感器感應(yīng)得到的電壓信號(hào)只有幾十mv,所以我們采用集成運(yùn)放把信號(hào)進(jìn)行放大,然后將其檢波為直流電平送入XS128的AD口。同時(shí)編碼器的信號(hào)也同步輸入,由計(jì)數(shù)芯片HEF4520BT計(jì)數(shù),從而計(jì)算得到車子行駛的速度。舵機(jī)采用PID控制算法進(jìn)行控制,并且加入連續(xù)控制函數(shù)進(jìn)行修正,使前輪的轉(zhuǎn)向更加具有連續(xù)性和精確性;采用增量式PID控制XS128PWM通道的占空比而調(diào)整電機(jī)輸出功率。電磁組的優(yōu)勢(shì)與劣勢(shì)電磁組的信號(hào)采集與處理與攝像頭組和光電組有很大差異,所以對(duì)于信號(hào)的采集問(wèn)題,我們?cè)?jīng)嘗試過(guò)磁敏二極管、磁敏電阻、諧振電感等方法,后來(lái)發(fā)現(xiàn)諧振電感的效果較好。電磁組的信號(hào)由LC并聯(lián)諧振得到,相比攝像頭和光電,信號(hào)為模擬信號(hào),而且賽道的磁場(chǎng)信號(hào)會(huì)發(fā)生疊加與抑制等。磁場(chǎng)是三維矢量,在空間的分布有很大的方向性和對(duì)稱性,水平變化率和豎直變化率有一定聯(lián)系和區(qū)別,從而我們將傳感器放置為對(duì)賽道信號(hào)變化敏感的方向以便最快、最靈敏的檢測(cè)到賽道變化引起的信號(hào)變化。這一點(diǎn)可以參考官方的文檔:《電磁小車設(shè)計(jì)參考》。機(jī)械結(jié)構(gòu)設(shè)計(jì)及體現(xiàn)智能小車的機(jī)械性能對(duì)于其行駛表現(xiàn)具有非常重要的影響,任何控制算法和軟件程序都需要通過(guò)智能小車的機(jī)械結(jié)構(gòu)來(lái)執(zhí)行和實(shí)現(xiàn)。為使模型車在比賽中發(fā)揮出最佳性能,使其直線行駛高速穩(wěn)定,入彎轉(zhuǎn)向靈活,結(jié)合現(xiàn)代汽車控制理論對(duì)智能車的運(yùn)動(dòng)特性進(jìn)行分析,并據(jù)此對(duì)智能小車的機(jī)械結(jié)構(gòu)進(jìn)行相應(yīng)的調(diào)整和參數(shù)優(yōu)化。1.1主板、電池等電子器件的安裝前期在對(duì)電路主板進(jìn)行組裝時(shí),由于布置不當(dāng),致使做軟件的同學(xué)調(diào)整電子器件參數(shù)非常麻煩,比如調(diào)節(jié)電位器參數(shù)的時(shí)候,芯片主板將電位器覆蓋,每次調(diào)試時(shí)都需要將芯片主板取下來(lái)在進(jìn)行調(diào)節(jié),這種方法費(fèi)時(shí)費(fèi)力。后來(lái)將兩塊電路板采用錯(cuò)落疊層分布式組裝,并將電位器調(diào)節(jié)鈕裸露出來(lái)。這種排布方式,使調(diào)節(jié)起來(lái)更加快捷,而且也節(jié)省了空間。如圖1.1所示在后期的組裝過(guò)程中,我們以簡(jiǎn)單、方便、便捷為指導(dǎo)思想,進(jìn)行組裝。另外在保證順利通 圖1.1電路板組裝過(guò)坡道的前提下,底盤(pán)盡量降低,從整體上降低模型車的重心,可使模型車轉(zhuǎn)彎時(shí)更加穩(wěn)定、高速。1.2舵機(jī)安裝式德國(guó)站維特爾車輛的機(jī)械性能的優(yōu)劣,在高速時(shí)體現(xiàn)的尤為明顯。好的機(jī)械性可以高速流暢的運(yùn)行,并且能夠適應(yīng)不同摩擦系數(shù)的賽道,其穩(wěn)定性不會(huì)隨時(shí)間改變而改變。在對(duì)小車的組裝過(guò)程中,我們不斷摸索,不斷總結(jié),發(fā)現(xiàn)舵機(jī)安裝的對(duì)稱性,能有效提高小車的穩(wěn)定性。而對(duì)四輪定位的主要參數(shù)進(jìn)行調(diào)整,則能夠顯著改善高速時(shí)的過(guò)彎性能。舵機(jī)的靈敏程度同樣對(duì)小車高速時(shí)的性能有著至關(guān)重要的作用。 圖1.2小車總體布局機(jī)擺桿是將舵機(jī)的旋轉(zhuǎn)運(yùn)動(dòng)轉(zhuǎn)換成橫擺運(yùn)動(dòng)的一種機(jī)構(gòu)。在智能車比賽里,通過(guò)它將舵機(jī)轉(zhuǎn)矩傳遞到連接輪子上面的橫拉桿,實(shí)現(xiàn)輪子的左右轉(zhuǎn)動(dòng),從而實(shí)現(xiàn)轉(zhuǎn)向。轉(zhuǎn)向在智能車比賽中是至關(guān)重要,而擺桿的設(shè)計(jì)直接關(guān)系到智能車轉(zhuǎn)向靈敏度。舵機(jī)轉(zhuǎn)矩=舵機(jī)擺桿作用力*擺桿長(zhǎng)度通過(guò)公式可以得出:拉桿作用力越大,反應(yīng)越靈敏,轉(zhuǎn)向速度越快!轉(zhuǎn)矩一定時(shí),擺桿越長(zhǎng),作用力就越小,所以擺桿又不能太長(zhǎng)。經(jīng)過(guò)實(shí)驗(yàn),我們選擇舵機(jī)擺桿的長(zhǎng)度在30mm比較合適。同時(shí)最終的轉(zhuǎn)向機(jī)構(gòu)還應(yīng)該盡量滿足符合阿克曼轉(zhuǎn)向理論,依據(jù)阿克曼轉(zhuǎn)向幾何設(shè)計(jì)的車輛,沿著彎道轉(zhuǎn)彎時(shí),利用四連桿的相等曲柄使內(nèi)側(cè)輪的轉(zhuǎn)向角比外側(cè)輪大大約2~4度,使四個(gè)輪子路徑的圓心大致上交會(huì)于后軸圖1.3阿克曼轉(zhuǎn)角調(diào)整的延長(zhǎng)線上瞬時(shí)轉(zhuǎn)向中心,這樣可以使車輛在過(guò)彎時(shí)轉(zhuǎn)向輪處于純滾動(dòng)狀態(tài),減少過(guò)彎時(shí)的阻力,減小輪胎的磨損。示意圖如1.31.3前輪定位的調(diào)整車輛在高速過(guò)彎時(shí),轉(zhuǎn)向舵機(jī)的負(fù)載會(huì)因?yàn)檐囕嗈D(zhuǎn)向角度增大而增大。為了盡可能降低轉(zhuǎn)向舵機(jī)負(fù)載對(duì)前輪的安裝角度;對(duì)前輪定位進(jìn)行了調(diào)整,使車輛直線行駛更穩(wěn)定,轉(zhuǎn)向更輕便,轉(zhuǎn)向后能自動(dòng)回正,減少輪胎和轉(zhuǎn)向系零件的磨損。前輪是轉(zhuǎn)向輪,它的安裝位置由主銷內(nèi)傾、主銷后傾、前輪外傾和前輪前束等4個(gè)參數(shù)決定,反映了轉(zhuǎn)向輪、主銷和前軸等三者在車架上的位置關(guān)系。1.3.1Toe_In(主銷內(nèi)傾)主銷內(nèi)傾是指主銷裝在前軸略向內(nèi)傾斜的角度,它的作用是使前輪自動(dòng)回正。角度越大前輪自動(dòng)回正的作用就越強(qiáng)烈,但轉(zhuǎn)向時(shí)也越費(fèi)力,輪胎磨損大;反之,角度越小前輪圖1.4主銷內(nèi)傾效果圖自動(dòng)回正的作用就越弱。1.3.2Caster(后傾角)Caster(后傾角)是指轉(zhuǎn)向杯的旋轉(zhuǎn)軸向車子后方傾斜的角度。正值的Caster旋轉(zhuǎn)軸頂部?jī)A向后方。它使車輛轉(zhuǎn)彎時(shí)產(chǎn)生的離心力所形成的力矩方向與車輪偏轉(zhuǎn)方向相反,迫使車輪偏轉(zhuǎn)后自動(dòng)恢復(fù)到原來(lái)的中間位置上。由此,主銷后傾角越大,車速越高,前輪穩(wěn)定性也愈好??梢酝ㄟ^(guò)改變懸掛上前后黃色小墊片 圖1.5主銷后傾效果圖的數(shù)量(原車前后各有兩個(gè)黃色小墊片,主銷處于垂直狀態(tài)),當(dāng)模型車需過(guò)坡道,或在比較顛簸的路面行駛時(shí),主銷宜有一定后傾角,但后傾角不能過(guò)大,否則會(huì)產(chǎn)生過(guò)大的回正力矩,導(dǎo)致模型車在出彎進(jìn)入直道時(shí)發(fā)生左右擺動(dòng)。1.3.3Camber(內(nèi)傾角)Camber(內(nèi)傾角)就是輪子的上端傾向或者傾離車身的角度。負(fù)值的Camber角度指車輪上端向內(nèi)傾,正值的Camber指車輪上端向外傾。Camber的主要作用是控制輪胎在直路和彎路的接觸地面的面積。前輪前束的作用是保證汽車的行駛性能,減少輪胎的磨損。前輪在滾動(dòng)時(shí),其慣性力會(huì)自然將輪胎向內(nèi)偏斜,如果前束適當(dāng),輪胎滾動(dòng)時(shí)的偏斜方向就會(huì)抵消,輪胎內(nèi)外側(cè)磨損的現(xiàn)象會(huì)減少。圖1.6小車前束效果圖1.4前懸掛調(diào)整在調(diào)試車的過(guò)程中我們發(fā)現(xiàn),在高速通過(guò)急轉(zhuǎn)彎時(shí),前輪會(huì)出現(xiàn)較大的跳動(dòng),嚴(yán)重影響車輛行駛的穩(wěn)定性,經(jīng)過(guò)我們小組成員的查閱資料分析得出是懸架上原裝的彈簧的剛度較大,因此我們換用較軟的彈簧,經(jīng)試驗(yàn)在高速過(guò)彎下跳動(dòng)明顯改善。1.5后懸架改善在前述四輪定位中提到,當(dāng)前輪轉(zhuǎn)彎時(shí),符合阿克曼定理,過(guò)彎時(shí)車輪屬于純滾動(dòng)狀態(tài),此時(shí)過(guò)彎時(shí)最為流暢,且彎道速度進(jìn)一步提高。然而實(shí)際上在對(duì)前輪進(jìn)行四輪定位時(shí),不可能完全符合阿克曼定理。為達(dá)到理想效果,我們對(duì)小車的后懸架進(jìn)行了改進(jìn)。我們?cè)谲嚹5匕迮c后輪支架的銜接過(guò)渡處左右各增設(shè)一個(gè)剛度適合的彈簧,在過(guò)彎時(shí)利用小車自身的離心力使前輪軸線與后輪軸線能相交于一點(diǎn),從而達(dá)到改善彎道性能的目的。此外,在嘗試的過(guò)程中,我們能發(fā)現(xiàn),若后懸架沿底板中心軸線旋轉(zhuǎn)限位過(guò)大,高圖1.7小車隨動(dòng)實(shí)體圖速過(guò)彎道時(shí),勢(shì)必會(huì)內(nèi)側(cè)后輪與賽道懸空,使小車出現(xiàn)抖動(dòng)跡象。為解決此問(wèn)題,并且預(yù)留一定限位,我們?cè)谶B接片上方增設(shè)了一個(gè)限位片,最后有效解決了此問(wèn)題。 1.6輪胎選用輪胎是選用對(duì)小車的影響也是尤為重要。輪胎的質(zhì)地直接影響到摩擦力的大小,摩擦較小時(shí),過(guò)彎道時(shí)就容易出現(xiàn)滑移,甩尾等現(xiàn)象。未拆裝的模型車的輪胎表面一般都經(jīng)過(guò)防氧化處理,在燈光下觀察,有明顯的反光現(xiàn)象,說(shuō)明表面過(guò)于光滑。此時(shí),需要對(duì)輪胎表面略作處理,以增大摩擦力。1.7差速結(jié)構(gòu)調(diào)整差速結(jié)構(gòu)的作用是在車模轉(zhuǎn)彎的時(shí)候,降低后輪與地面之間的滑動(dòng);并且還可以保證在輪胎抱死的情況下不會(huì)損害到電機(jī)。差速器的特性是:阻力越大的一側(cè),驅(qū)動(dòng)齒輪的轉(zhuǎn)速越低;而阻力越小的一側(cè),驅(qū)動(dòng)齒輪的轉(zhuǎn)速越高,以此次使用的后輪差速器為例,在過(guò)彎時(shí),因外側(cè)前輪輪胎所遇的阻力較小,輪速便較高;而內(nèi)側(cè)前輪輪胎所遇的阻力較大,輪速便較低。差速器的調(diào)整中要注意滾珠輪盤(pán)間的間隙,過(guò)松過(guò)緊都會(huì)使差速器性能降低,轉(zhuǎn)彎時(shí)阻力小的車輪會(huì)打滑,從而影響車模的過(guò)彎性能。好的差速機(jī)構(gòu),在電機(jī)不轉(zhuǎn)的情況下,右輪向前轉(zhuǎn)過(guò)的角度與左輪向后轉(zhuǎn)過(guò)的角度之間誤差很小,不會(huì)有遲滯或者過(guò)轉(zhuǎn)動(dòng)情況發(fā)生。1.8齒輪間隙調(diào)整正常情況下小車在運(yùn)行時(shí)聲音是非常小的,理想狀態(tài)下是沒(méi)有聲音的。小車運(yùn)行時(shí)的聲音來(lái)源主要有兩個(gè)方面。其一,車輪與賽道產(chǎn)生滑移時(shí)所產(chǎn)生的聲音。產(chǎn)生這種原因,可能是前輪的四輪定位沒(méi)做好,轉(zhuǎn)彎不夠靈活。其二,齒輪盤(pán)與電機(jī)齒輪之間間隙過(guò)大或過(guò)小,以及電機(jī)長(zhǎng)時(shí)間工作,齒輪磨損嚴(yán)重。齒輪盤(pán)與電機(jī)齒輪間的間隙過(guò)小時(shí),電機(jī)轉(zhuǎn)動(dòng)時(shí),聲音刺耳嘈雜,此時(shí)需調(diào)整電機(jī)齒輪與齒輪盤(pán)間的距離,使兩齒輪齒頂與齒根間的間隙大約1mm。若在兩齒輪間滴一定潤(rùn)滑油也可使聲音更小,需要注意的是潤(rùn)滑油不能侵入齒輪盤(pán)內(nèi),否則將會(huì)使差速失效。電機(jī)若長(zhǎng)時(shí)間不更換,將會(huì)使電機(jī)齒輪磨損嚴(yán)重,齒形將會(huì)變的很尖,使得齒輪嚙合間隙增大。在這個(gè)時(shí)候,小車拿在手里電機(jī)轉(zhuǎn)動(dòng)時(shí),聲音比較小,一旦放到賽道上時(shí),聲音就會(huì)很大很刺耳,這就需要更換新電機(jī)。 第二章傳感器分析與布局2.1電磁感應(yīng)原理電磁組的智能車是基于100mA的交變電流產(chǎn)生的電磁場(chǎng)上,為了容易研究小車的策略必須先了解相關(guān)的電磁場(chǎng)知識(shí)。由于賽道是通有20KHz交變電流的導(dǎo)線,因此需要通過(guò)檢測(cè)導(dǎo)線周圍所產(chǎn)生的電磁場(chǎng)確定道路與小車的相對(duì)位置。磁場(chǎng)傳感器利用了物質(zhì)與磁場(chǎng)之間的各種物理效應(yīng),如磁電效應(yīng)(電磁感應(yīng),霍爾效應(yīng),磁致電阻效應(yīng)),磁機(jī)械效應(yīng),核磁共振等。現(xiàn)代檢測(cè)磁場(chǎng)的傳感器有很多,常見(jiàn)的有磁通門磁場(chǎng)傳感器,磁阻抗磁場(chǎng)傳感器,半導(dǎo)體霍爾傳感器、磁敏二極管,磁敏三極管。因?yàn)楦鞣N傳感器測(cè)量磁場(chǎng)所依據(jù)的原理不相同,測(cè)量的磁場(chǎng)精度和范圍相差也很大,10-11~107G。圖3.1為各類磁場(chǎng)傳感器的測(cè)量范圍示意圖。 圖2.1各類磁場(chǎng)傳感器的測(cè)量范圍示意圖先估算賽道的磁場(chǎng)強(qiáng)度。把賽道看作無(wú)限長(zhǎng)直導(dǎo)線,載流為直流100mA,距離導(dǎo)線r=5cm時(shí),由畢奧-薩伐爾定律知,磁場(chǎng)強(qiáng)度B如(公式1):(公式1)一般霍爾元件的檢測(cè)范圍在1mT以上,即10G以上,可以想象到需要貼著地面進(jìn)行檢測(cè),而且精度大大受到限制。磁阻傳感器如Honeywell的高靈敏度磁阻HMC1001,分辨率可達(dá)27微高斯,還可以使用多軸的磁阻傳感器檢測(cè)不同方向的磁場(chǎng)。普通的電感線圈測(cè)量范圍廣,理論上只要加上合適的諧振電容和放大電路,不但能夠篩選出特定頻段進(jìn)行放大,而且有較強(qiáng)的抗干擾能力。我們需要選擇適合車模競(jìng)賽的檢測(cè)方法,除了檢測(cè)磁場(chǎng)的精度之外,還需要對(duì)于檢測(cè)磁場(chǎng)的傳感器的頻率響應(yīng)、尺寸、價(jià)格、功耗以及實(shí)現(xiàn)的難易程度進(jìn)行考慮。由于霍爾元件和磁阻傳感器的檢測(cè)精度比較低,價(jià)格比較高。因而我們選取最為傳統(tǒng)的電磁感應(yīng)線圈的,它具有原理簡(jiǎn)單、價(jià)格便宜、體積小、頻率響應(yīng)快、電路實(shí)現(xiàn)簡(jiǎn)單等特點(diǎn)。感應(yīng)線圈可以自行繞制,也可以采用市面上的工字電感。2.2傳感器布局根據(jù)電感的擺放方向不同,采集的信息也不同。一般可規(guī)范為4類方向:以跑道所在的平面為水平面,車前進(jìn)的方向?yàn)閤方向,在水平面上與x垂直的為y方向,垂直于水平面的為z方向水平擺放,如圖所示:圖2.2.1傳感器擺放圖1這是最簡(jiǎn)單的擺放方式,但卻擁有了其它擺放方式所沒(méi)有的穩(wěn)定性,具有單調(diào)性,對(duì)于穩(wěn)定求快的隊(duì)伍采用水平擺放是比較好的選擇如官方文檔所示:圖2.2.2磁場(chǎng)坐標(biāo)圖圖2.2.3B'Z的曲線圖實(shí)際使用過(guò)程中,當(dāng)水平兩個(gè)電感之間的距離越遠(yuǎn),得到的賽道信息也越豐富,一般都采用接近小車限定的寬帶,如24CM左右。一般水平擺放的電感離跑道距離在12CM左右線性比較好。該擺放的優(yōu)點(diǎn)是穩(wěn)定性好,不管是十字交叉彎還是上下坡道都可以順利完成,諧振電壓還算比較大。缺點(diǎn)是只能檢測(cè)到電感垂直下去所在的線上,沒(méi)有提前預(yù)判的作用。向前擺放,如圖所示圖2.2.4傳感器擺放圖2向前擺放的電感一般會(huì)有5~10或者更大的前瞻,諧振回來(lái)的電壓較小。缺點(diǎn)是在十字彎不是垂直入或者不是垂直出彎時(shí)會(huì)在十字交叉彎里面兜圈。垂直擺放,如圖所示圖2.2.5傳感器擺放圖3垂直擺放的諧振電壓算最大,但是往往會(huì)在十字交叉彎時(shí)忽略了十字彎直接轉(zhuǎn)向另一邊,前瞻性雖然比較大,但沒(méi)有前向擺放的好,還有的缺點(diǎn)是在水平偏離導(dǎo)線是并非呈現(xiàn)線性。有一定角度的擺放由于沒(méi)有多余的時(shí)間實(shí)踐,好處是檢測(cè)到更豐富的信息。缺點(diǎn)是需要濾掉更多的干擾。我們小車的傳感器實(shí)圖:

2.3電磁感應(yīng)線圈在磁場(chǎng)中的特性為了討論方便,我們作以下約定:(1)小車車體坐標(biāo)系中,定義小車前進(jìn)的方向?yàn)閅軸正向,順著Y軸的右手邊為X軸的正向,Z軸指向小車正上方,如圖3.2.1所示;(2)水平線圈是指軸線平行于Z軸的電感線圈,垂直線圈是指軸線平行于X軸的線圈,軸線平行于Y軸的線圈所感應(yīng)到的電動(dòng)勢(shì)遠(yuǎn)小于上述兩類線圈,但該類擺放線圈在回環(huán)路檢測(cè)中將可以用到。(3)BX是指向載流導(dǎo)線右手邊的電磁感應(yīng)強(qiáng)度,BZ是指向載流導(dǎo)向正上方的電磁感應(yīng)強(qiáng)度。顯然,垂直線圈感應(yīng)的是BX變化率,水平線圈感應(yīng)的是BZ的變化率。圖2.3.1假定車體坐標(biāo)系直道附近的磁場(chǎng)分布,可以近似為無(wú)限長(zhǎng)的直導(dǎo)線上的磁場(chǎng)分布,容易算得距離長(zhǎng)直導(dǎo)線距離為r的點(diǎn)的磁感應(yīng)強(qiáng)度如(公式2):(公式2)進(jìn)而可以推出:(公式3)(公式4)其中h是電感線圈距離地面的垂直距離。為了討論的方便,記(公式5)(公式6)則從(公式3)、(公式4)、(公式5)、(公式6)可以得出B'X、B'Z分別和BX、BZ有相同的變化趨勢(shì)。圖3.2.2和圖3.2.3顯示了當(dāng)分別取h為5、8、10時(shí)B'X和B'Z的變化趨勢(shì)。由圖可知:(1)B'X是x的偶函數(shù),在Y軸兩側(cè)單調(diào);B'Z是x的奇函數(shù),在Y軸兩側(cè)沒(méi)有單調(diào)關(guān)系;(2)在相同的高度下,B'X幅值是B'Z的兩倍,但是在x=20的時(shí)候,B'X只有B'Z的一半左右了,因此B'X的衰減較B'Z快很多。綜上可推知,水平線圈比較適合做x的正負(fù)判別,垂直線圈比較適合用來(lái)解算x的具體數(shù)值,B'Z較B'X衰減慢得多,說(shuō)明水平線圈對(duì)遠(yuǎn)處道路狀況相對(duì)比較敏感,可以用來(lái)預(yù)測(cè)前方的彎道。圖2.3.2B'X的曲線圖圖2.3.3B'Z的曲線圖第三章硬件電路設(shè)計(jì)整個(gè)硬件系統(tǒng)采用的是模塊化的設(shè)計(jì)思想,整體的硬件框圖如下圖所示:電源模塊電源模塊S12XS128控制核心停車檢測(cè)模塊控制器模塊檢波放大電路模塊測(cè)速模塊前輪轉(zhuǎn)向模塊電機(jī)驅(qū)動(dòng)模塊3.1循跡傳感器放大電路1、雙電源運(yùn)放采用雙電源運(yùn)放可以得到很大的輸出直流電壓,但是多圈高精度滑動(dòng)變阻器對(duì)信號(hào)影響較大,往往在彎道發(fā)生突變電壓。可能是負(fù)電源做的不好,我們采用單電源供電,由于需要放大的信號(hào)是非常弱的信號(hào),所以需要運(yùn)放的單位增益帶寬比較大(至少1M以上),這樣對(duì)小信號(hào)的放大作用就比較好,經(jīng)過(guò)對(duì)比選擇,我們最終選擇了NE5532。圖3.1.1尋跡放大電路如上圖,采用NE5532放大電路,可以避免信號(hào)失真,同時(shí)線性度夠好。而且放大電路簡(jiǎn)單,有一個(gè)2.5V左右的抬壓就不需要負(fù)電壓,便于電路的設(shè)計(jì),最后我們采用了NE5532放大電路作為諧振電壓的放大電路。3.2測(cè)速模塊測(cè)速模塊用了500線AB兩相的編碼器作為測(cè)速傳感器,經(jīng)過(guò)換算12ms定時(shí)器計(jì)算一次速度,每5ms調(diào)一次圖3.2.1編碼器輸出波形圖3.3電機(jī)驅(qū)動(dòng)模塊驅(qū)動(dòng)的選擇:1、采用專用芯片BTN系列的79713.3.1BTN7971驅(qū)動(dòng)電路圖3.4主板電路設(shè)計(jì)電源作為小車的核心,除了滿足小車所需,盡量簡(jiǎn)單穩(wěn)定。主要用了TPS7350單獨(dú)為單片機(jī)供電,另一個(gè)給檢波電路和直立傳感器供電。經(jīng)過(guò)測(cè)試使用,TPS7350的性能很好。圖3.4.1電源模塊圖3.4.2主板原理圖3.5轉(zhuǎn)向部分電路設(shè)計(jì)按照規(guī)則要求本次電磁車用的是大賽要求的FUTABA3010舵機(jī),用下圖電路提供舵機(jī)的供電電壓圖3.5.1舵機(jī)供電電路3.6停車檢測(cè)部分關(guān)于停車檢測(cè),根據(jù)大賽提供的磁鐵,我們選用干簧管并聯(lián)進(jìn)行檢測(cè),通過(guò)單片機(jī)的輸入捕捉模塊對(duì)小車進(jìn)行停車控制。第四章軟件控制算法及策略4.1智能車軟件控制算法及策略4.1.1軟件系統(tǒng)設(shè)計(jì)及整體思路在本屆智能車比賽中,我們選擇了MC9S12XS128為核心控制芯片,CodeWarriorIDE為軟件開(kāi)發(fā)環(huán)境。軟件控制基本是按照路徑識(shí)別=>舵機(jī)控制=>速度控制。首先,采用單片機(jī)的AD模塊進(jìn)行路徑信息采集與識(shí)別;然后,通過(guò)采集到的數(shù)據(jù)計(jì)算出小車距離賽道中線的距離,控制舵機(jī)轉(zhuǎn)向;最后,利用脈沖計(jì)數(shù)功能對(duì)小車的速度進(jìn)行檢查,計(jì)算出速度偏差來(lái)控制電機(jī),從而達(dá)到設(shè)定的速度。除此之外,還用到了單片機(jī)的電源管理模塊,電機(jī)驅(qū)動(dòng),無(wú)線模塊等。4.1.1軟件的整體設(shè)計(jì)框圖4.2程序整體思路程序上電復(fù)位后,先進(jìn)行初始化,包括時(shí)鐘初始化、I/O端口初始化、PWM初始化、ATD初始化、ECT初始化等,對(duì)各個(gè)全局變量進(jìn)行必要的初始化設(shè)置。然后進(jìn)入for()無(wú)線循環(huán)函數(shù),進(jìn)入等待中斷模式,通過(guò)外部的兩個(gè)個(gè)按鍵設(shè)置不同的模式,包括速度的選擇減速程度的選擇等,通過(guò)PIT中斷定時(shí)進(jìn)行速度和方向的控制。4.2.1程序初始化voidInit_Dev(void){SetBusCLK_64M();AD_init();Pit_Init();Pwm_init();PORTA_Init();PORTB_Init();PORTE_Init();PORTJ_Init();PORTP_Init();PORTS_Init();PORTT_Init();PORTM_Init();DFlash_Init();UART_Init();}4.2.2主函數(shù)voidmain(void){/*putyourowncodehere*/Init_Dev();delay(1000);PITCE_PCE0=1;//中斷使能ATD0CTL5=0x30;CarInit(); EnableInterrupts;for(;;){if(Process_Flag){Process_Flag=0;sprintf(txtbuf,"\n_%d___%d___\n",(int)(Offset*10));uart_putstr(txtbuf); //串口輸出字符串delay(1000);/**//*OutPut_Data();*/}_FEED_COP();}}4.2.3PIT中斷函數(shù) voidinterruptVectorNumber_Vpit0VPIT0(void){//時(shí)間2msinti;asm(MOVB#$01,PITTF);//程序執(zhí)行時(shí)間1ms if(StartFlag==1){start_delay++;if(start_delay==1250){//延時(shí)2.5s啟動(dòng)StartFlag=2;start_delay=0;}} SampleCarVoltage();DirectionControl(); GetMotorPulse();SpeedControl(); Process_Flag=1; }4.3傳感器信號(hào)采集處理算法 我們都知道單片機(jī)的AD模塊只能轉(zhuǎn)換正電壓,而我們傳感器感應(yīng)到的是正弦波,所以外部電路把正弦波抬高。那么我們AD轉(zhuǎn)換以后的值一定要把這個(gè)抬高的電壓(后簡(jiǎn)稱抬壓)減掉才能真正表示傳感器采集到的信號(hào)。這個(gè)抬壓的確定有兩種方法:其一就是直接用萬(wàn)用表測(cè)量硬件電路相關(guān)引腳上的電壓,編程時(shí)直接減掉;其二就是軟件實(shí)現(xiàn),將AD轉(zhuǎn)換到的值進(jìn)行累加,求出平均值,這個(gè)平均值當(dāng)做抬壓。 實(shí)際中,雖然每路信號(hào)的抬壓是共用一個(gè)電壓源的,但是由于電感的不同以及硬件的細(xì)小差別,往往導(dǎo)致每路信號(hào)的抬壓不一樣,這時(shí)候,第二種確定抬壓的方案明顯有優(yōu)勢(shì),不需要外部測(cè)量,更不需要分路給定。綜上所述,我們選擇第二種方案。具體程序如下:Mag_data0[CarVoltageCount]=ATD0DR0; CarVoltageSigma[MAGNET_0]+=ATD0DR0; CarVoltage[i]=(unsignedint)(CarVoltageSigma[i]/CarVoltageCount); CarVoltageSigma[i]=0; CarVoltageSigma[0]+=N_Abs(Mag_data0[j]- CarVoltage[0]);MagnetSensor[0]=((int)(CarVoltageSigma[0]/CarVoltageCount));4.4傳感器方案設(shè)計(jì)及路徑識(shí)別算法 對(duì)智能車來(lái)說(shuō),傳感器是個(gè)相當(dāng)重要的部分,就好比人的眼睛一樣。傳感器的穩(wěn)定性以及傳感器的布局,都直接影響了賽道路徑的識(shí)別。 對(duì)于直導(dǎo)線,當(dāng)裝有小車的中軸線對(duì)稱的兩個(gè)線圈的小車沿其直線行駛,即兩個(gè)線圈的位置關(guān)于導(dǎo)線對(duì)稱時(shí),則兩個(gè)線圈中感應(yīng)出來(lái)的電動(dòng)勢(shì)大小應(yīng)相同、且方向亦相同。若小車偏離直導(dǎo)線,即兩個(gè)線圈關(guān)于導(dǎo)線不對(duì)稱時(shí),則通過(guò)兩個(gè)線圈的磁通量是不一樣的。這時(shí),距離導(dǎo)線較近的線圈中感應(yīng)出的電動(dòng)勢(shì)應(yīng)大于距離導(dǎo)線較遠(yuǎn)的那個(gè)線圈中的。根據(jù)這兩個(gè)不對(duì)稱的信號(hào)的差值,即可調(diào)整小車的方向,引導(dǎo)其沿直線行駛。 但是,當(dāng)兩個(gè)線圈偏離導(dǎo)線較遠(yuǎn)時(shí),他們感應(yīng)的電動(dòng)勢(shì)差值就會(huì)隨著他們離導(dǎo)線的距離增大而減小了,當(dāng)傳感器前瞻比較大時(shí),這樣的算法就完全不行。所以我們要另尋他路。 根據(jù)畢奧薩伐爾定理可知,如果導(dǎo)線的電流不發(fā)生變化時(shí),電感的感應(yīng)電壓通過(guò)后級(jí)電路后產(chǎn)生的直流電平正比于sinθ/(h^2+l^2),其中h為傳感器距離導(dǎo)線的豎直距離,L為傳感器距離導(dǎo)線的水平距離,θ為工字電感與導(dǎo)線的夾角。把傳感器的高度測(cè)出來(lái),代入水平方向放置的兩個(gè)電感數(shù)值就可以得到L和θ的具體數(shù)值。從而就可以算出偏移距離。在通過(guò)水平放置的兩個(gè)電感就可以知道傳感器是往那邊偏的,最后就得到了偏移量。最終我們的傳感器選擇了四個(gè)電感的排布方案。4.5速度控制算法與方向控制策略 1.PID控制算法 PID控制是工程實(shí)際中應(yīng)用最為廣泛的調(diào)節(jié)器控制方法。問(wèn)世至今70多年來(lái),它以其結(jié)構(gòu)簡(jiǎn)單、穩(wěn)定性好、工作可靠、調(diào)整方便而成為工業(yè)控制的主要技術(shù)之一。 PID控制系統(tǒng)原理框圖如下:其基本控制規(guī)律為:式中,P、k、I、k、D、k分別被稱為比例系數(shù)、積分系數(shù)和微分系數(shù),e為輸入與輸出間的誤差。在使用離散的數(shù)字量代替該式的連續(xù)量后,可以得到PID控制的離散形式,即數(shù)字PID控制方式,便于計(jì)算機(jī)進(jìn)行運(yùn)算和處理。式中,Ti為積分時(shí)間常數(shù),Td為微分時(shí)間常數(shù)。從以上公式可知,控制器的輸出由三個(gè)部分組成:(1)比例控制部分:只要偏差e一出現(xiàn),控制器立即產(chǎn)生控制作用,使被控參數(shù)朝著減小偏差的方向變化,具有控制及時(shí)的特點(diǎn)。但控制作用的強(qiáng)弱取決于Pk的大小,過(guò)小時(shí)控制作用不明顯,過(guò)大時(shí)會(huì)使系統(tǒng)動(dòng)態(tài)品質(zhì)變壞,引起被控量的振蕩而導(dǎo)致系統(tǒng)不穩(wěn)定。(2)積分控制部分:只要偏差e不為0,它將通過(guò)累積作用影響控制量,以求減小偏差。偏差為0時(shí)不再變化,系統(tǒng)達(dá)到穩(wěn)定。所以積分作用的加入,可以消除系統(tǒng)靜差。積分時(shí)間Ti小,積分響應(yīng)速度快,積分作用強(qiáng)。增大Ti將減慢消除靜差的過(guò)程,降低響應(yīng)速度,但可以減小超調(diào),提高系統(tǒng)穩(wěn)定性。(3)微分控制部分:只要偏差出現(xiàn)變化趨勢(shì),即使很小,也會(huì)立刻產(chǎn)生控制作用,以調(diào)整系統(tǒng)的輸出,阻止偏差的變化。它是一種“超前”控制作用,在偏差出現(xiàn)或變化的瞬間作用明顯。偏差變化越快,反饋校正量越大。微分控制有助于減小超調(diào)、克服振蕩,使系統(tǒng)趨于穩(wěn)定。在實(shí)際應(yīng)用中,根據(jù)被控對(duì)象的特點(diǎn),合理調(diào)節(jié)三個(gè)參數(shù),就能達(dá)到比較理想的控制效果。在目前的許多工業(yè)控制領(lǐng)域,其應(yīng)用仍相當(dāng)廣泛。2PID參數(shù)的作用1、比例環(huán)節(jié):即時(shí)成比例地反應(yīng)控制系統(tǒng)的偏差信號(hào)e(t),偏差一旦產(chǎn)生,調(diào)節(jié)器立即產(chǎn)生控制作用以減小偏差。2、積分環(huán)節(jié):主要用于消除靜差,提高系統(tǒng)的無(wú)差度。積分作用的強(qiáng)弱取決于積分時(shí)間常數(shù)TI,TI越大,積分作用越弱,反之則越強(qiáng)。3、微分環(huán)節(jié):能反應(yīng)偏差信號(hào)的變化趨勢(shì)(變化速率),并能在偏差信號(hào)的值變得太大之前,在系統(tǒng)中引入一個(gè)有效的早期修正信號(hào),從而加快系統(tǒng)的動(dòng)作速度,減小調(diào)節(jié)時(shí)間。3方向控制算法 考慮到積分飽和的問(wèn)題,在實(shí)際方向控制中,我們采用了PD控制算法。fDelta=Offset-Offset_Last;fP=DIR_CONTROL_P*Offset;fD=DIR_CONTROL_D*fDelta;DirectionControlOut=(int)fP+(int)fD;其中的DIR_CONTROL_P和DIR_CONTROL_D是我們?cè)谡{(diào)試過(guò)程中根據(jù)實(shí)際效果確定下來(lái)的參數(shù)。4.5.1速度控制算法純比例控制會(huì)存在一個(gè)靜態(tài)誤差,而積分主要用于消除靜差,提高系統(tǒng)的無(wú)差度。所以速度控制我們采用PI控制。nDelta=CarSpeedSet-CarSpeed;fP=nDelta*SPEED_CONTROL_P; fI=nDelta*SPEED_CONTROL_I; SpeedControlIntegral+=fI; SpeedControlOutNew=fP+SpeedControlIntegral;其中SPEED_CONTROL_P和SPEED_CONTROL_I是調(diào)試的經(jīng)驗(yàn)值,最終調(diào)試的速度控制曲線如下圖:其中,紅色為設(shè)定速度,紅色為小車實(shí)時(shí)速度,紫色為積分量。4.5.2調(diào)速策略 首先設(shè)定一個(gè)整體速度CarSpeedSet彎道部分:電磁組前瞻較小,S道處理較困難,S道的處理的好壞對(duì)整體速度有較大的影響。處理方法如下:初始化一個(gè)容量為50的數(shù)組,記錄每次的彎曲度,動(dòng)態(tài)更新數(shù)組。然后對(duì)50個(gè)數(shù)據(jù)求絕對(duì)值和和代數(shù)和,如果代數(shù)和絕對(duì)值很小,則車在直道,如果代數(shù)和和絕對(duì)值和較小,但是前20個(gè)數(shù)據(jù)較大,則可以判定小車在出彎,如果代數(shù)和和絕對(duì)值和較小,后20較大,則判定小車在入彎,如果代數(shù)和很小,但絕對(duì)值和很大,則在s彎道。經(jīng)過(guò)調(diào)試,雖然有一點(diǎn)滯后性,還可以繼續(xù)完善。但是這個(gè)算法可以非常好的處理彎道。 直道部分:小車在直道上運(yùn)行時(shí)偏移量是很小的,這是我們可以充分的加速。首先判別出直道,具體做法如下:初始化一個(gè)容量為10的數(shù)組,小車每前進(jìn)4cm就把偏移量記錄一次,實(shí)時(shí)更新。然后對(duì)這10個(gè)數(shù)據(jù)進(jìn)行分析,如果10個(gè)偏移量都小于3,則判斷我直道,這是設(shè)定速度就提升一個(gè)檔位。速度提升的檔位可以根據(jù)實(shí)際的調(diào)試效果來(lái)確定,最終的加減速效果還是很明顯的。 經(jīng)過(guò)以上的速度控制策略分析最終我們的速度控制部分程序如下:fDeltasmall_count=0;Offsetsmall_count=0;Offsetmin_count=0;for(j=7;j>=0;j--){if(N_Abs(Offset_[j])<=8)Offsetsmall_count++;if(N_Abs(Offset_[j])<=3)Offsetmin_count++;}for(j=5;j>=0;j--){if(N_Abs(fDelta_[j])<=1)fDeltasmall_count++;}if(StartFlag==2&&CarStopFlag==0){if(fDeltasmall_count>=5){Prespeed=(int)(CarSpeedSet*12.5/10);//PORTB=0X00;}else;//PORTB=0Xff;if(Offsetsmall_count>=7){Prespeed=(int)(CarSpeedSet*12.5/10);//PORTB_PB1=0;}else;//PORTB_PB1=1;if(Offsetmin_count>=8){Prespeed=(int)(CarSpeedSet*13.5/10);PORTB=0X00;}else{PORTB=0XFF;}}nDelta=Prespeed-CarSpeed-F_Abs(fDelta*2)-F_Abs(Offset/2);//F_Abs(fDelta)最大在15--20之間 if(nDelta>=10)fP=nDelta*SPEED_CONTROL_P1;//速度差比例積分elsefP=nDelta*SPEED_CONTROL_P; fI=nDelta*SPEED_CONTROL_I; SpeedControlOutOld=SpeedControlOutNew; SpeedControlOutNew=fP+SpeedControlIntegral; nValue=SpeedControlOutNew-SpeedControlOutOld;if(nMotorVol>0){PWMDTY1=(unsignedchar)nMotorVol; PWMDTY5=0;}else{ nMotorVol=-nMotorVol; PWMDTY1=0; PWMDTY5=(unsignedchar)nMotorVol;}4.6小結(jié)軟件部分是整個(gè)控制系統(tǒng)的核心。首先要解決的一個(gè)難點(diǎn)就是怎么樣準(zhǔn)確的提取賽道信息,算出控制需要的小車偏移量,不同的設(shè)計(jì)方案,算出來(lái)的小車位置信息就不一樣,控制也就會(huì)受到影響;其次,怎樣根據(jù)算出的小車偏移量來(lái)很好的控制舵機(jī)打角,控制的不好會(huì)直接影響小車的運(yùn)行軌跡。最后就是怎樣將舵機(jī)打角和速度控制相互配合,這將會(huì)影響小車的整體運(yùn)行速度。配合的好,小車不僅運(yùn)行穩(wěn)定,而且速度也不會(huì)低。這就需要調(diào)試過(guò)程中盡量多的取分析數(shù)據(jù),以達(dá)到精確控制!第五章開(kāi)發(fā)與調(diào)試5.1BDM調(diào)試BDM調(diào)試界面如下:5.2上位機(jī)調(diào)試我們這調(diào)車過(guò)程中主要用到了一下兩種上位機(jī)進(jìn)行調(diào)試的。在這些上位機(jī)的數(shù)據(jù)窗口中,我們可以看到單片機(jī)內(nèi)部的一些寄存器以及程序中定義的變量,這對(duì)我們調(diào)試程序是很有幫助的。虛擬示波器用來(lái)調(diào)速是一個(gè)非常方便的調(diào)試工具,它的界面如下:第六章智能車相關(guān)技術(shù)參數(shù)說(shuō)明項(xiàng)目參數(shù)路徑檢測(cè)方法(賽題組)電磁組車模幾何尺寸(長(zhǎng)、寬、高)(毫米)710、250、170車模軸距/輪距(毫米)150電路功耗20W電路電容總量(微法)1683uf傳感器種類及個(gè)數(shù)3種電感4個(gè)編碼器1個(gè)干簧管4個(gè)新增加伺服電機(jī)個(gè)數(shù)0個(gè)賽道信息檢測(cè)空間精度(毫米)10mm賽道信息檢測(cè)頻率(次/秒)200電路主要元器件種類/數(shù)量HEF45201片TPS73502片BTS79602片NE55325片車模重量(帶有電池)(千克)0.898第七章鳴謝作為一個(gè)融合多學(xué)科交叉的的復(fù)雜系統(tǒng),完成整智能車的設(shè)計(jì)、制作和調(diào)試是一個(gè)非常龐大的工程,僅靠幾名隊(duì)員是很難完成的,它需要一個(gè)高效運(yùn)作、規(guī)范管理的團(tuán)隊(duì)的緊密合作才能完成。感謝指導(dǎo)老師們?cè)诩夹g(shù)上的指導(dǎo)、物資上支持和多方面的幫助。感謝學(xué)院提供的調(diào)試場(chǎng)地和測(cè)量?jī)x器。同時(shí)感謝各個(gè)隊(duì)伍之間在技術(shù)上進(jìn)行的交流和在技術(shù)上的對(duì)我們提供的幫助,雖然是不同組別,但對(duì)我們的小車的提高起到不小的作用。最后還要感謝我們每一位隊(duì)員在這么長(zhǎng)的時(shí)間里不懈地努力,付出了不少的汗水,最后能夠取得一定的成果。整個(gè)比賽的過(guò)程,磨練了每個(gè)隊(duì)員的意志,提高了隊(duì)員的素質(zhì),總體而言,我們學(xué)到了很多,提高了很多,這將對(duì)以后的學(xué)習(xí)和工作起到很大的作用。

第八章總結(jié)1、制作成果經(jīng)過(guò)大半年的“飛思卡爾”智能車的制作和研究過(guò)程中,從賽道的電源制作、信號(hào)檢測(cè)模塊再到小車的主板的制作;從小車可以起跑,分析其可行性來(lái)讓小車得到提速。我們一步一步地走過(guò)來(lái),從中學(xué)到了不少的知識(shí),總結(jié)了不少的經(jīng)驗(yàn)。在每個(gè)階段中,我們都盡量地將小車改進(jìn)和完善,爭(zhēng)取達(dá)到最優(yōu)效果。2、問(wèn)題與思考在智能車的制作過(guò)程中,我們的小車曾經(jīng)出現(xiàn)過(guò)很多問(wèn)題,如小車的循跡傳感器撞壞,電機(jī)驅(qū)動(dòng)燒毀,因?yàn)樾盘?hào)微弱經(jīng)常沖出賽道等問(wèn)題,或多或少拖慢了我們的進(jìn)度,但經(jīng)隊(duì)員們不斷的努力,和指導(dǎo)老師的幫助,我們從硬件和軟件上做了一步步的改良和升級(jí),漸漸對(duì)各模塊有了深入的認(rèn)識(shí),對(duì)整體有了清晰的把握,我們?cè)诓粩嗟那斑M(jìn)的同時(shí),小車也不斷的加速前進(jìn)。3、不足與改進(jìn)從小車總體性能各因素考慮,小車系統(tǒng)分為采集、處理、控制三部分。對(duì)于采集部分:由于電磁組特點(diǎn)決定了小車的前瞻比較小,而前瞻的大小對(duì)速度是有著很大的影響。在這個(gè)過(guò)程中,我們分析了電感的各種擺放方式對(duì)磁場(chǎng)的檢測(cè)結(jié)果。電磁組的傳感器的擺放具有比較大的靈活性,這是優(yōu)點(diǎn)。但對(duì)采集回來(lái)的信息如何進(jìn)行有效處理是個(gè)難題。由于我們對(duì)空間磁場(chǎng)的具體分布的認(rèn)識(shí)不足,也沒(méi)找到比較好的分析方法,只是運(yùn)用最簡(jiǎn)單的左右手法則來(lái)確定。這是我們隊(duì)不足的地方,沒(méi)有科學(xué)的分析方法。關(guān)于處理和控制部分:傳感器的擺放決定了控制算法。由于沒(méi)有太多的時(shí)間與分析,我們采用的是最簡(jiǎn)單的擺放方式,但也是很有效的方式,因?yàn)樾盘?hào)變化在區(qū)間內(nèi)單調(diào),而雙排傳感器的擺放能夠得到一定的前瞻距離(電磁組的車長(zhǎng)度不限)。但長(zhǎng)度不是越長(zhǎng)越好,太長(zhǎng)的話容易在過(guò)彎的時(shí)候檢測(cè)到臨近的賽道而沖出跑道。參考文獻(xiàn)[1]王威等.HCS12微控制器原理及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2007[2]孫同景陳桂友.Freescale9S12十六位單片機(jī)原理及嵌入式開(kāi)發(fā)技術(shù)[M].北京:機(jī)械工業(yè)出版社,2008[3]卓晴等.學(xué)做智能車--挑戰(zhàn)飛思卡爾杯[M].北京:北京航空航天大學(xué)出版社,2007[4]毛振瓏.磁場(chǎng)測(cè)量[M].北京:原子能出版社.1985[5]張肅文.高頻電子線路(第四版)[M].北京:高等教育出版社.2007[6][7]華成英童詩(shī)白.模擬電子技術(shù)基礎(chǔ)(第四版)[M].北京:高等教育出版社.2007[8]張吳腸馬旭卓晴.基于電磁場(chǎng)檢測(cè)的尋線智能車設(shè)計(jì)[J].電子產(chǎn)品世界,2009,11:48-50[9]李仕伯馬旭卓晴.基于磁場(chǎng)檢測(cè)的尋線小車傳感器布局研究[J].電子產(chǎn)品世界,2009,12:41-44附錄部分源代碼main.cvoidmain(void){Init_Dev();delay(1000);PITCE_PCE0=1;//中斷使能ATD0CTL5=0x30;CarInit(); EnableInterrupts;for(;;){if(Process_Flag){Process_Flag=0;if(Bit4==1)//sprintf(txtbuf,"\n__%d__%d__%d__%d__%d_\n",SE0,SE1,SE2,SE3,(int)(Offset*10));sprintf(txtbuf,"\n_%d__%d__%d__%d___%d__\n",(int)(Offset0*10),(int)(Offset1*10),(int)(Offset2*10),(int)(Offset3*10),(int)(Offset*10));if(Bit4==0)//sprintf(txtbuf,"\n_%d__%d__%d__%d__%d__\n",MagnetSensor[0],MagnetSensor[1],MagnetSensor[2],MagnetSensor[3],(int)(Offset*10));//sprintf(txtbuf,"\n_%d__%d__%d__%d_\n",E0MAX,E1MAX,E2MAX,E3MAX);sprintf(txtbuf,"\n__%d__%d__%d__%d__%d_\n",SE0,SE1,SE2,SE3,(int)(Offset*10));uart_putstr(txtbuf); //串口輸出字符串delay(1000);/**//*OutPut_Data();*/}_FEED_COP();/*feedsthedog*/}/*loopforever*//*pleasemakesurethatyouneverleavemain*/}function.c#include"function.h"voidCarInit(void){ADFlag=1;Process_Flag=0;CarVoltageCount=0;EventCount_1MS=0;SpeedControlPeriod=0;CarSpeed=0;CarSpeedSet=0;MotorOut=0;SpeedControlOutOld=SpeedControlOutNew=0;SpeedControlPeriod=0;SpeedControlIntegral=0;DirectionControlPeriod=0;MagnetSensorOverFlag=0;DirectionControlCount=0; DirectionControlOut=0;MotorPulseSigma=0;Offset_Last=0;}voidGetMotorPulse(void){//2ms unsignedintnPulse; nPulse=PORTA; PTP_PTP2=1; //4520芯片復(fù)位 MotorPulse=(int)nPulse;PTP_PTP2=0;}voidSpeedControl(void){Speed,j=0;floatnDelta,fP,fI;staticintSpeed_Last=0;CarSpeed=MotorPulseSigma;MotorPulseSigma=0;Prespeed=CarSpeedSet;}nDelta=Prespeed-CarSpeed-F_Abs(fDelta*2)-F_Abs(Offset/2);if(nDelta>=10)fP=nDelta*SPEED_CONTROL_P1;//速度差比例積分elsefP=nDelta*SPEED_CONTROL_P; fI=nDelta*SPEED_CONTROL_I; if(CarStopFlag==1){ fP=nDelta*0.7;} SpeedControlIntegral+=fI;//防止超調(diào)可加積分值的上限 if(fP>2.5*MOTOR_OUT_MAX) //2.5 fP=2.5*MOTOR_OUT_MAX; if(fP<2.5*MOTOR_OUT_MIN) fP=2.5*MOTOR_OUT_MIN; if(SpeedControlIntegral>SPEED_CONTROL_OUT_MAX) //SPEED_CONTROL_OUT_MAX100 SpeedControlIntegral=SPEED_CONTROL_OUT_MAX; if(SpeedControlIntegral<SPEED_CONTROL_OUT_MIN) SpeedControlIntegral=SPEED_CONTROL_OUT_MIN; SpeedControlOutOld=SpeedControlOutNew; SpeedControlOutNew=fP+SpeedControlIntegral;}voidSpeedControlOutput(void){ floatnValue; nValue=SpeedControlOutNew-SpeedControlOutOld;if(nValue>50){ nValue=50; SpeedControlOutNew=SpeedControlOutOld+50; } if(nValue<-50){ nValue=-50; SpeedControlOutNew=SpeedControlOutOld-50; }SpeedControlOut=nValue*(SpeedControlPeriod+1.0)/6+SpeedControlOutOld;}voidMotorOutput(void){ floatfspeed; fspeed=SpeedControlOut; if(fspeed>230) fspeed=230;if(fspeed<-230) fspeed=-230; MotorOut=(int)(fspeed); SetMotorVoltage(); /* OutData[0]=CarSpeedSet; OutData[1]=CarSpeed; //OutData[2]=(Offset+CarSpeedSet); OutData[3]=SpeedControlIntegral;Process_Flag=1;*/}voidSetMotorVoltage(void){intnMotorVol;nMotorVol=MotorOut;if(nMotorVol>0){PWMDTY1=(unsignedchar)nMotorVol; PWMDTY5=0;}else{ nMotorVol=-nMotorVol; PWMDTY1=0; PWMDTY5=(unsignedchar)nMotorVol;}}voiderase_flash(void){if(FSTAT_ACCERR==1||FSTAT_FPVIOL==1){FSTAT=0x30;}FCCOBIX=0x00;FCCOB=0x1210;//12FCCOBIX=0x01;FCCOB=0x0000;FSTAT_CCIF=1;while(!FSTAT_CCIF);}voidsave2flash(intdata01,intdata23,intdata45,intdata67){erase_flash();if(FSTAT_ACCERR==1||FSTAT_FPVIOL==1){FSTAT=0x30;}FCCOBIX=0x00;FCCOB=0x1110;//11表示在Dflash中寫(xiě)4個(gè)字,10表示Dflash的高八位FCCOBIX=0x01;FCCOB=0x0000;FCCOBIX=0x02;FCCOB=data01;FCCOBIX=0x03;FCCOB=data23;FCCOBIX=0x04;FCCOB=data45;FCCOBIX=0x05;FCCOB=data67;FSTAT_CCIF=1;while(!FSTAT_CCIF);}voidSampleCarVoltage(void){//每4ms執(zhí)行300次unsignedintnCarVoltage[4]={0}; AD_A_GetValue16(nCarVoltage); Mag_data0[CarVoltageCount]=nCarVoltage[MAGNET_0]; CarVoltageSigma[MAGNET_0]+=nCarVoltage[MAGNET_0]; Mag_data1[CarVoltageCount]=nCarVoltage[MAGNET_1]; CarVoltageSigma[MAGNET_1]+=nCarVoltage[MAGNET_1]; Mag_data2[CarVoltageCount]=nCarVoltage[MAGNET_2]; CarVoltageSigma[MAGNET_2]+=nCarVoltage[MAGNET_2]; Mag_data3[CarVoltageCount]=nCarVoltage[MAGNET_3]; CarVoltageSigma[MAGNET_3]+=nCarVoltage[MAGNET_3]; CarVoltageCount++; }voidGetCarVoltageAverage(void){ inti,j; if(CarVoltageCount==0){ for(i=0;i<4;i++) CarVoltageSigma[i]=0; return; } for(i=0;i<4;i++){ CarVoltage[i]=(unsignedint)(CarVoltageSigma[i]/CarVoltageCount); CarVoltageSigma[i]=0; } for(j=0;j<CarVoltageCount;j++){ CarVoltageSigma[0]+=N_Abs(Mag_data0[j]- CarVoltage[0]); CarVoltageSigma[1]+=N_Abs(Mag_data1[j]- CarVoltage[1]); CarVoltageSigma[2]+=N_Abs(Mag_data2[j]- CarVoltage[2]); CarVoltageSigma[3]+=N_Abs(Mag_data3[j]- CarVoltage[3]); } MagnetSensor[0]=((int)(CarVoltageSigma[0]/CarVoltageCount));MagnetSensor[1]=((int)(CarVoltageSigma[1]/CarVoltageCount));MagnetSensor[2]=((int)(CarVoltageSigma[2]/CarVoltageCount));MagnetSensor[3]=((int)(CarVoltageSigma[3]/CarVoltageCount));CarVoltageSigma[0]=0;CarVoltageSigma[1]=0;CarVoltageSigma[2]=0;CarVoltageSigma[3]=0; CarVoltageCount=0; }voidDirectionVoltageSigma(void){staticintPORTB_pb2;SE0=MagnetSensor[0];//保存原始值SE1=MagnetSensor[1];SE2=MagnetSensor[2];SE3=MagnetSensor[3];if(Bit5==0){PORTB_pb2=1;PORTB_PB2=0;if(MagnetSensor[0]>E0MAX){E0MAX=MagnetSensor[0];}if(MagnetSensor[1]>E1MAX){E1MAX=MagnetSensor[1];}if(MagnetSensor[2]>E2MAX){E2MAX=MagnetSensor[2];}if(MagnetSensor[3]>E3MAX){E3MAX=MagnetSensor[3];}save2flash(E0MAX,E1MAX,E2MAX,E3MAX);}E0MAX=*E0max;//讀取Dflash的值E1MAX=*E1max;E2MAX=*E2max;E3MAX=*E3max;if(MagnetSensor[0]<1)MagnetSensor[0]=1;if(MagnetSensor[1]<1)MagnetSensor[1]=1;if(MagnetSensor[2]<1)MagnetSensor[2]=1;if(MagnetSensor[3]<1)MagnetSensor[3]=1;}voidDirectionControl(void){inti=0,j=0;floatfP,fD;k1=100*H*H/MagnetSensor[1]-H*H;k2=100*H*H/MagnetSensor[2]-H*H;k0=100*H*H/MagnetSensor[0]-H*H;k3=100*H*H/MagnetSensor[3]-H*H;Offset0=sqrt(k0);Offset1=sqrt(k1);Offset2=sqrt(k2);Offset3=sqrt(k3);if(k1<=0)Offset1=Offset1_last;if(k2<=0)Offset2=Offset2_last;if(k0<=0)Offset0=Offset0_

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論