




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
東南大學(xué)第二屆IEEE標(biāo)準(zhǔn)電腦鼠走迷宮競(jìng)賽電腦鼠原理及其應(yīng)用 機(jī)電動(dòng)力試驗(yàn)平臺(tái)第7頁(yè)共9頁(yè)第二屆IEEE標(biāo)準(zhǔn)電腦鼠走迷宮競(jìng)賽論文目錄一.軟件程序框圖………….3二.參賽軟件研發(fā)過(guò)程…….4三.軟硬件調(diào)試過(guò)程……….4四.各組員分工…………….4五.體會(huì)心得……………….5附錄……………………...…..6參考書(shū)目……………….……9軟件程序框圖參賽軟件研發(fā)過(guò)程在voidmain()函數(shù)中,采用壓棧的方式進(jìn)行電腦鼠搜索,數(shù)組uint8GmcCrossway[MAZETYPE*MAZETYPE]用于暫存未走過(guò)支路坐標(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í)無(wú)方向可走時(shí)就按照這個(gè)等高圖的信息退回上個(gè)點(diǎn),沖刺時(shí)也是一樣的道理。另外,為了縮短轉(zhuǎn)彎時(shí)間,并且保證電腦鼠的穩(wěn)定性,采取轉(zhuǎn)彎時(shí)整步,直走時(shí)半步。我們?cè)贛ouse_Drive.c文件中,加入全局變量int8maincheck,初始化為0(其中0為不轉(zhuǎn)彎,1為轉(zhuǎn)彎)。在__leftMotorContr()和__rightMotorContr()中根據(jù)maincheck的值來(lái)實(shí)現(xiàn)整步和半步的轉(zhuǎn)換,maincheck的值在voidmouseTurnleft(void),voidmouseTurnback(void)和voidmouseTurnright(void)中被更改。軟硬件調(diào)試過(guò)程首先我們對(duì)電腦鼠的傳感器進(jìn)行調(diào)節(jié)。根據(jù)程序中對(duì)傳感器返回值的要求,首先我們降低了左前右三個(gè)方向遠(yuǎn)距紅外檢測(cè)頻率,改為35500Hz。再在跑道上對(duì)傳感器硬件的調(diào)節(jié),當(dāng)電腦鼠靠近墻時(shí),近墻一側(cè)斜角紅外值為1,遠(yuǎn)墻一側(cè)斜角紅外值為0,近墻一側(cè)正對(duì)紅外值為3,遠(yuǎn)墻一側(cè)正對(duì)紅外值為1;當(dāng)電腦鼠在跑道中央時(shí),斜角紅外值均為0,且兩側(cè)正對(duì)紅外值為1;前方紅外探測(cè)距離不得超過(guò)一格,由于提速的原因,盡量要遠(yuǎn)些。將速度提高,68的速度實(shí)在太慢。最開(kāi)始嘗試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í)的幅度來(lái)判斷目前轉(zhuǎn)彎步數(shù)是否合適。預(yù)賽完后,要想縮短搜索時(shí)間,就采用轉(zhuǎn)彎時(shí)整步,直走時(shí)半步的驅(qū)動(dòng)方法。首先步數(shù)減半,再像之前那樣微調(diào)步數(shù)。組員分工程序的改編和程序的調(diào)試體會(huì)心得當(dāng)初我選這門(mén)公選課,是我舍友告訴我的,他說(shuō)他的朋友說(shuō)上這門(mén)課有機(jī)會(huì)拿srtp學(xué)分,但是需要些編程基礎(chǔ)。我的編程基礎(chǔ)還好,就奔著srtp學(xué)分選了這門(mén)課。其實(shí)這次我上交的程序只在標(biāo)準(zhǔn)程序中更改了很少,更本沒(méi)有多大的意義。對(duì)此我很遺憾。我們平時(shí)課程也有點(diǎn)多,瑣碎的事情也多,就沒(méi)多少時(shí)間來(lái)好好理解程序。我很早就寫(xiě)好了一個(gè)算法,但是我是在C++上寫(xiě)的,是很理論的。后來(lái)我就想用我自己的算法來(lái)寫(xiě)這個(gè)電腦鼠搜索程序,結(jié)果我遇到了很大的難題。我對(duì)電腦鼠的速度始終都控制不好,老是撞墻。后來(lái)聽(tīng)了好友的建議,把速度先減小,看看具體原因。結(jié)果我發(fā)現(xiàn),我的程序有很多問(wèn)題。雖然我修改了很多了,但是還是有漏洞。由于時(shí)間不夠,沒(méi)有將我的算法改好,就很舍不得地放棄了它。我將我自己編寫(xiě)的程序附在附錄里。在整個(gè)過(guò)程中,我感觸最深的是理論與實(shí)際的差異原來(lái)是很大的。比如說(shuō)對(duì)半步驅(qū)動(dòng)速度的控制,如果defineSEARCHSPEED68,在較長(zhǎng)直道上速度太小,很慢,但是轉(zhuǎn)彎就比較合適;但是如果defineSEARCHSPEED100,雖然在較長(zhǎng)直道上速度足夠,但是轉(zhuǎn)彎很不穩(wěn)定,很容易出現(xiàn)丟步現(xiàn)象。還有一點(diǎn),我體會(huì)到有個(gè)老師說(shuō)的那句話是對(duì)的,“現(xiàn)在的編程語(yǔ)言太多了,平臺(tái)也很多,但是只要你努力學(xué)好一種語(yǔ)言,其他的語(yǔ)言可以很快學(xué)會(huì)”。他曾經(jīng)十天學(xué)會(huì)一種語(yǔ)言,并且完成了一個(gè)項(xiàng)目。附錄搜索算法:搜索過(guò)程中根據(jù)絕對(duì)方向信息前進(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ù)。而且,在搜索過(guò)程中采用排除算法,可以避免走一些死路或不必走的路。其中排除算法是由函數(shù)voidmapchange(void)實(shí)現(xiàn)的,其算法為:在電腦鼠四周的四個(gè)點(diǎn)中,如果某個(gè)點(diǎn)的四個(gè)方向地圖信息至少有三個(gè)方向已知,則不需要探索這個(gè)點(diǎn),將這個(gè)點(diǎn)標(biāo)記為已被探測(cè)過(guò)。電機(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è)好處,比如說(shuō),地圖上某個(gè)點(diǎn)(x,y),那么它下方向墻壁信息和這個(gè)點(diǎn)下面的點(diǎn)(x,y-1)的上方向墻壁信息是一致的,一旦改變其一,兩者都變了,這很符合實(shí)際。但是,它有它的不足,就是開(kāi)空間太大,而且還是全局變量,占內(nèi)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 直播公司退讓協(xié)議書(shū)
- 瑜伽授課合同協(xié)議書(shū)
- 池塘承包合同協(xié)議書(shū)
- 牡丹購(gòu)買(mǎi)合同協(xié)議書(shū)
- 焊接安裝承包協(xié)議書(shū)
- 疾病治療合同協(xié)議書(shū)
- 環(huán)保工程資質(zhì)協(xié)議書(shū)
- 離婚再分財(cái)產(chǎn)協(xié)議書(shū)
- 砍伐堤壩雜草協(xié)議書(shū)
- 疫情期間免稅協(xié)議書(shū)
- CT圖像的主要偽影
- “雙減”作業(yè)設(shè)計(jì):小學(xué)道德與法治作業(yè)設(shè)計(jì)案例
- DB11T 353-2021 城市道路清掃保潔質(zhì)量與作業(yè)要求
- 六年級(jí)下冊(cè)科學(xué)知識(shí)點(diǎn)(浙教版新)
- 2024年滌綸FDY油劑項(xiàng)目可行性研究報(bào)告
- 《形形色色的人》習(xí)作教學(xué)課件
- RhD抗原陰性孕產(chǎn)婦血液安全管理專(zhuān)家共識(shí)
- 2023年遼寧營(yíng)口中考滿(mǎn)分作文《你是我成長(zhǎng)中的榜樣》
- 泵站運(yùn)行管理手冊(cè)
- YYT 0316-2003醫(yī)療器械風(fēng)險(xiǎn)管理對(duì)醫(yī)療器械的應(yīng)用
- 四川省綿陽(yáng)市2023-2024學(xué)年高一下學(xué)期期末英語(yǔ)試題(解析版)
評(píng)論
0/150
提交評(píng)論