版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
東南大學(xué)第二屆IEEE標(biāo)準(zhǔn)電腦鼠走迷宮競賽電腦鼠原理及其應(yīng)用 機(jī)電動(dòng)力試驗(yàn)平臺(tái)第7頁共9頁第二屆IEEE標(biāo)準(zhǔn)電腦鼠走迷宮競賽論文目錄一.軟件程序框圖………….3二.參賽軟件研發(fā)過程…….4三.軟硬件調(diào)試過程……….4四.各組員分工…………….4五.體會(huì)心得……………….5附錄……………………...…..6參考書目……………….……9軟件程序框圖參賽軟件研發(fā)過程在voidmain()函數(shù)中,采用壓棧的方式進(jìn)行電腦鼠搜索,數(shù)組uint8GmcCrossway[MAZETYPE*MAZETYPE]用于暫存未走過支路坐標(biāo)。數(shù)組uint8GucMapBlock[MAZETYPE][MAZETYPE]記錄每個(gè)點(diǎn)的地圖信息,初始化為0x00。函數(shù)voidmouseGoahead(int8cNBlock)、voidmazeSearch(void)、voidmouseTurnleft(void)、voidmouseTurnright(void)、voidmouseTurnback(void)和voidobjectGoTo(int8cXdst,int8cYdst)控制電腦鼠的運(yùn)動(dòng)狀態(tài)。voidmapStepEdit(int8cX,int8cY)為制作等高圖函數(shù),它把記錄等高值的數(shù)組uint8GucMapStep[MAZETYPE][MAZETYPE](初始化為0xff)賦值。當(dāng)電腦鼠搜索時(shí)無方向可走時(shí)就按照這個(gè)等高圖的信息退回上個(gè)點(diǎn),沖刺時(shí)也是一樣的道理。另外,為了縮短轉(zhuǎn)彎時(shí)間,并且保證電腦鼠的穩(wěn)定性,采取轉(zhuǎn)彎時(shí)整步,直走時(shí)半步。我們在Mouse_Drive.c文件中,加入全局變量int8maincheck,初始化為0(其中0為不轉(zhuǎn)彎,1為轉(zhuǎn)彎)。在__leftMotorContr()和__rightMotorContr()中根據(jù)maincheck的值來實(shí)現(xiàn)整步和半步的轉(zhuǎn)換,maincheck的值在voidmouseTurnleft(void),voidmouseTurnback(void)和voidmouseTurnright(void)中被更改。軟硬件調(diào)試過程首先我們對電腦鼠的傳感器進(jìn)行調(diào)節(jié)。根據(jù)程序中對傳感器返回值的要求,首先我們降低了左前右三個(gè)方向遠(yuǎn)距紅外檢測頻率,改為35500Hz。再在跑道上對傳感器硬件的調(diào)節(jié),當(dāng)電腦鼠靠近墻時(shí),近墻一側(cè)斜角紅外值為1,遠(yuǎn)墻一側(cè)斜角紅外值為0,近墻一側(cè)正對紅外值為3,遠(yuǎn)墻一側(cè)正對紅外值為1;當(dāng)電腦鼠在跑道中央時(shí),斜角紅外值均為0,且兩側(cè)正對紅外值為1;前方紅外探測距離不得超過一格,由于提速的原因,盡量要遠(yuǎn)些。將速度提高,68的速度實(shí)在太慢。最開始嘗試100和120,但是電腦鼠探索時(shí)前進(jìn)不穩(wěn)定,會(huì)晃,撞墻。所以放棄了高速,只將速度提高到80。速度提高了,就得更改轉(zhuǎn)彎時(shí)得轉(zhuǎn)動(dòng)步數(shù),速度的調(diào)節(jié)和步數(shù)的調(diào)節(jié)是同步的。根據(jù)轉(zhuǎn)彎時(shí)的幅度來判斷目前轉(zhuǎn)彎步數(shù)是否合適。預(yù)賽完后,要想縮短搜索時(shí)間,就采用轉(zhuǎn)彎時(shí)整步,直走時(shí)半步的驅(qū)動(dòng)方法。首先步數(shù)減半,再像之前那樣微調(diào)步數(shù)。組員分工程序的改編和程序的調(diào)試體會(huì)心得當(dāng)初我選這門公選課,是我舍友告訴我的,他說他的朋友說上這門課有機(jī)會(huì)拿srtp學(xué)分,但是需要些編程基礎(chǔ)。我的編程基礎(chǔ)還好,就奔著srtp學(xué)分選了這門課。其實(shí)這次我上交的程序只在標(biāo)準(zhǔn)程序中更改了很少,更本沒有多大的意義。對此我很遺憾。我們平時(shí)課程也有點(diǎn)多,瑣碎的事情也多,就沒多少時(shí)間來好好理解程序。我很早就寫好了一個(gè)算法,但是我是在C++上寫的,是很理論的。后來我就想用我自己的算法來寫這個(gè)電腦鼠搜索程序,結(jié)果我遇到了很大的難題。我對電腦鼠的速度始終都控制不好,老是撞墻。后來聽了好友的建議,把速度先減小,看看具體原因。結(jié)果我發(fā)現(xiàn),我的程序有很多問題。雖然我修改了很多了,但是還是有漏洞。由于時(shí)間不夠,沒有將我的算法改好,就很舍不得地放棄了它。我將我自己編寫的程序附在附錄里。在整個(gè)過程中,我感觸最深的是理論與實(shí)際的差異原來是很大的。比如說對半步驅(qū)動(dòng)速度的控制,如果defineSEARCHSPEED68,在較長直道上速度太小,很慢,但是轉(zhuǎn)彎就比較合適;但是如果defineSEARCHSPEED100,雖然在較長直道上速度足夠,但是轉(zhuǎn)彎很不穩(wěn)定,很容易出現(xiàn)丟步現(xiàn)象。還有一點(diǎn),我體會(huì)到有個(gè)老師說的那句話是對的,“現(xiàn)在的編程語言太多了,平臺(tái)也很多,但是只要你努力學(xué)好一種語言,其他的語言可以很快學(xué)會(huì)”。他曾經(jīng)十天學(xué)會(huì)一種語言,并且完成了一個(gè)項(xiàng)目。附錄搜索算法:搜索過程中根據(jù)絕對方向信息前進(jìn),由遞歸函數(shù)voidSeekPath(int8x,int8y,int8x1,int8y1)實(shí)現(xiàn)的,其中(x,y)為電腦鼠當(dāng)前所在點(diǎn),(x1,y1)為上次探索的點(diǎn),(x1,y1)是為了回溯而設(shè)立的參數(shù)。而且,在搜索過程中采用排除算法,可以避免走一些死路或不必走的路。其中排除算法是由函數(shù)voidmapchange(void)實(shí)現(xiàn)的,其算法為:在電腦鼠四周的四個(gè)點(diǎn)中,如果某個(gè)點(diǎn)的四個(gè)方向地圖信息至少有三個(gè)方向已知,則不需要探索這個(gè)點(diǎn),將這個(gè)點(diǎn)標(biāo)記為已被探測過。電機(jī)驅(qū)動(dòng):Speed0=Speed1=整步驅(qū)動(dòng)。整步驅(qū)動(dòng)加速很快,尤其是后轉(zhuǎn)彎很快。地圖信息處理:地圖信息在每次走了40步后進(jìn)行獲取,此時(shí)傳感器正處于格子中央,獲取的地圖信息要準(zhǔn)確些。記錄地圖信息的數(shù)組我改為maze[MAZETYPE*2+1][MAZETYPE+1],我設(shè)電腦鼠起點(diǎn)為(1,1),則地圖上某個(gè)點(diǎn)(x,y)的墻壁信息為:上方向maze[2*x-1][y],下方向maze[2*x-1][y-1],左方向maze[2*x-2][y-1],右方向maze[2*x][y-1]。如下圖,每個(gè)三角形為地圖上的一個(gè)點(diǎn),圖中每個(gè)三角形的上頂點(diǎn)為上方向墻壁信息,左頂點(diǎn)為左方向墻壁信息,右頂點(diǎn)為右方向墻壁信息,中間的點(diǎn)為下方向墻壁信息。這樣做有一個(gè)好處,比如說,地圖上某個(gè)點(diǎn)(x,y),那么它下方向墻壁信息和這個(gè)點(diǎn)下面的點(diǎn)(x,y-1)的上方向墻壁信息是一致的,一旦改變其一,兩者都變了,這很符合實(shí)際。但是,它有它的不足,就是開空間太大,而且還是全局變量,占內(nèi)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 武漢大學(xué)舞蹈課程設(shè)計(jì)表
- 音響商務(wù)談判課程設(shè)計(jì)
- 高校排球課程設(shè)計(jì)
- 素描課課程設(shè)計(jì)
- 鋼框架結(jié)構(gòu)課程設(shè)計(jì)書
- 跳躍活動(dòng)課程設(shè)計(jì)
- 藝術(shù)中班繪畫課程設(shè)計(jì)
- GB/T 44980-2024凍蝦滑
- 2025年度數(shù)據(jù)中心UPS電源采購與能效提升合同3篇
- 二零二五版太陽能發(fā)電站電力安全保障協(xié)議3篇
- 2024年醫(yī)師定期考核臨床業(yè)務(wù)知識(shí)考試題庫及答案(共三套)
- 2014新PEP小學(xué)英語六年級(jí)上冊-Unit5-What-does-he-do復(fù)習(xí)課件
- 建筑材料供應(yīng)鏈管理服務(wù)合同
- 孩子改名字父母一方委托書
- 2024-2025學(xué)年人教版初中物理九年級(jí)全一冊《電與磁》單元測試卷(原卷版)
- 江蘇單招英語考綱詞匯
- 2024年事業(yè)單位財(cái)務(wù)工作計(jì)劃例文(6篇)
- 2024年工程咨詢服務(wù)承諾書
- 青桔單車保險(xiǎn)合同條例
- 車輛使用不過戶免責(zé)協(xié)議書范文范本
- 2023-2024學(xué)年天津市部分區(qū)九年級(jí)(上)期末物理試卷
評論
0/150
提交評論