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

正文內(nèi)容

室內(nèi)巡視機器人設計和仿真與實現(xiàn)本科畢業(yè)設計-閱讀頁

2025-07-02 00:36本頁面
  

【正文】 LogInfo(Obstacle Avoid!)。 ((200), _dateTimePort)。 } }圖 避障程序int laserCount = 。int i = laserCount/3。i++圖 這條語句是實現(xiàn)取激光數(shù)據(jù) 60176。的范圍的數(shù)據(jù)。 LogInfo(Obstacle Avoid!)。 ((200), _dateTimePort)。 }圖 這段程序是實現(xiàn)避障,當機器人與障礙物的距離小于 500mm 時,機器人的右輪子的速度就減小,而左輪子的速度不變,這樣就實現(xiàn)了機器人向左轉(zhuǎn);當機器人與障礙物的距離大于 500mm 時,機器人左右輪的速度保持不變且一樣,這樣機器人就直線前進。((200), _dateTimePort)。每隔 就刷新一次激光數(shù)據(jù),這樣就可以達到實時采集激光數(shù)據(jù)的目的了,使機器人更好的完成避障任務。~120176。for (int i = laserCount / 2。 i++){if ([i] 500) {(, )。Activate((false, _dateTimePort, UpdateLaser))。 yield break。在這里,我們用到了差分驅(qū)動輪的消息端口_simulatedDifferentialDriveServicePort,并根據(jù)激光數(shù)據(jù)向其發(fā)送驅(qū)動參數(shù)。它所要達到的目的是使機器人在存在障礙物的環(huán)境中,按照一定的標準,尋找到一條從起點到終點的最優(yōu)或近似最優(yōu)的無障礙路徑。 機器人沿墻巡視的設計本文所采用的路徑規(guī)劃方法是沿墻走,即機器人沿著室內(nèi)的墻壁進行巡視。示意圖如圖 。 當其殘差 = 滿足 =min 時,顯然對于任何 而, nii=1?iin2i=1?? (32)ii innn2i i ii=1==i i XX??????????????2 2112( ) ( )( ) ( ) +( ) ( )( )當 X= 時, 取得最小值,以上就是最小二乘原理。根據(jù)最小二乘原理求得: (34 )nn2iiii=1=1iinniii=1=12iiyxyxxyyAB???????22( ) ( )( )( ) ( )或 (35)niii=1iiyxyAB??????????2( ) ( )( ) 機器人沿墻走巡視的設計機器人沿墻走的仿真圖如圖 所示。而將這個 180176。一份,如圖 所示。 (36)??iid=2D?????式中,i 表示激光束的第 i 束。 (1)當激光打在墻上的個數(shù)小于3 時(n<3) ,與墻的距離小于 8000mm(d<8000mm)時,機器人就繼續(xù)向前進;如圖 所示。~45176。之所以選擇這個范圍,是因為如果我們將大于 1200mm 的點也包括進來會影響直線擬合的效果,因此我們經(jīng)過反復的調(diào)試最終確定上述這樣一個距離區(qū)間。最后對轉(zhuǎn)換后的坐標運用最小二乘直線擬合,經(jīng)過計算得出擬合后的直線 Y=C+DX,其中 C,D 由最小二乘直線擬合法求出,見公式(34) ,(35) 。r (3iiiiiiix=dcosyn2?????7)式中, 是第 i 束激光到墻壁的距離, 是是第 i 束激光的角度。再根據(jù)斜率 D 按照公式(38)計算出角度 。和小于 90176。而我們這里計算出來的角度 的范圍是90176。? ?即當 D<0 時, <0;當 D>0 時, >0。 (3(),(0)2,()jdjd????????????9)仿真機器人左右輪子的速度計算見公式(310) (3l1r2=jdj?????????10)其中 是當前機器人行進的速度, , 為調(diào)試系數(shù),且 ,經(jīng)過反復的調(diào)試,??1212=?最后我們確定比較理想系數(shù) =。此時,機器人處于特殊情況下,因此沿墻走也要單獨進行分析,解決。~45176。然后對轉(zhuǎn)換后的點運用最小二乘直線擬合,經(jīng)過計算得出擬合后的直線 Y=C+DX,其中 C,D 由最小二乘直線擬合法求出(假設紅線為擬合后的路線) ,見公式(34) ,(35)。r寧波大學信息科學與工程學院本科畢業(yè)設計(論文)3 圖 沿墻走特殊情況擬合示意圖 實時監(jiān)控 獲取攝像頭數(shù)據(jù)攝像頭數(shù)據(jù)的獲取過程與激光數(shù)據(jù)的獲取過程類似定義一個獲取攝像頭數(shù)據(jù)的任務函數(shù) UpdateImage。 Size size = new Size(0, 0)。 size = 。 })。amp。amp。amp。 else destBitmap = new Bitmap(srcDataWidth, srcDataHeight, )。 ((60), _dateTimePortImage)。 Size size = new Size(0, 0)。 size = 。 })。 圖像顯示及刷新從攝像頭獲取到圖像數(shù)據(jù)以后,我們希望能把圖像在窗口中直觀地顯示出來,所以要添加一個窗體,在窗體中添加一個 PictureBox控件來顯示圖像。 ()。 }))。程序如下:寧波大學信息科學與工程學院本科畢業(yè)設計(論文)24internal void UpdateWebcam(Bitmap bmp) { bmpWebcam = bmp。 = bmpWebcam。 }圖 刷新圖像程序這段程序是將 Bitmap 圖像保存到類屬性 bmpWebcam 變量中,讓 pictureBox 空間顯示圖像,根據(jù)圖像大小重新設置 pictureBox 控件的尺寸。編譯運行后可看到攝像頭圖像監(jiān)控畫面如圖 所示:圖 攝像頭圖像監(jiān)控畫面機器人進行室內(nèi)巡視時的實時監(jiān)控圖,如圖 所示,帶有攝像頭實時監(jiān)控畫面和機器人在室內(nèi)的位置,這樣就可以更好的觀察和判斷實時監(jiān)控的畫面是否如實的反映機器人所在處的情況。為此我們專門引入了手動控制器來增加操作的靈活性和多樣化的功能。手動控制操作面板如圖 所示。寧波大學信息科學與工程學院本科畢業(yè)設計(論文)26 手動操作面板控制原理手動操作面板控制原理:當我們點擊手動操作面板中按鍵,此時就會立即先主服務程序發(fā)送一個 port 消息,然后住服務程序根據(jù)接收到的 port 信息調(diào)用預先編寫好的程序進行處理,處理完后控制機器人做出相應狀態(tài)的改變。圖 手動控制操作面板控制原理示意圖 手動操作面板控制的功能手動控制操作面板上有前進,后退,左轉(zhuǎn),右轉(zhuǎn),加速,減速,自動/手動切換和啟動/暫停仿真引擎 8 個按鍵。(2) “啟動/暫停仿真引擎”鍵:簡易方便的開啟和關閉仿真引擎,而不必每次都通過修改 xml 文件,將其中的Pause項由 true 改成 false。(4) “后退”鍵:通過控制機器人左右輪子的轉(zhuǎn)向來實現(xiàn)機器人向后行進。(6) “右轉(zhuǎn)”鍵:通過控制機器人左右輪子的轉(zhuǎn)速來實現(xiàn)機器人的轉(zhuǎn)向,向右轉(zhuǎn)時,左輪的速度應大于右輪的速度。(8) “減速”鍵:將加速的速度值預先通過程序編寫出來,然后當按下此鍵時實現(xiàn)速寧波大學信息科學與工程學院本科畢業(yè)設計(論文)3 度的減少。首先在窗體中增加一個按鈕btnRunPausedEngine,當點擊該按鈕時希望能夠暫?;蛘哌\行仿真引擎。 } public bool paused。同時需要修改主服務程序中啟動窗體的代碼為:zmhOperations _mainPort。 ()。 }))。接下來,我們要為 PauseEngine 消息編寫消息處理任務函數(shù):[ServiceHandler()] public virtual IEnumeratorITask PausedEngineHandler(PausedEngine state) { var stateOrFault = ()。 if (HasError(stateOrFault)) //如果有錯誤,報錯并返回 { LogError(Failed to get state of simulation engine.)。 } var state = ()stateOrFault。 //改變暫停狀態(tài) var replace = new (state)。 yield return ()。 if (HasError(fault)) //更新狀態(tài)失敗 { LogError(Failed to set state of simulation engine.)。 } else //更新狀態(tài)成功 { if(paused) LogInfo(Simulation is Paused!)。 } } 圖 寧波大學信息科學與工程學院本科畢業(yè)設計(論文)3 4 實驗結果 數(shù)據(jù)輸出程序運行仿真程序后,我們希望把機器人的運動軌跡記錄下來,主要是左右輪的速度,這些信息都能夠作為以后的分析。(strInfo)。圖 數(shù)據(jù)分析 避障時數(shù)據(jù)分析我們從輸出的上千組數(shù)據(jù)中選取了些具有代表性的數(shù)據(jù),現(xiàn)在我們把這些數(shù)據(jù)導入MATLAB 中將仿真機器人避障時左右輪子的速度 vl、vr 的變化趨勢畫成波形圖,如圖 所示。(strInfo)。通過仔細的分析對比,我們發(fā)現(xiàn)當仿真機器人在室內(nèi)進行巡視時,如果仿真機器人沒有遇到障礙物時,其左右輪子的速度保持一致且相等,這樣就可以保證仿真機器人能夠做直線運動,一直向前運動;如果仿真機器人在巡視時遇到障礙物,此時仿真機器人左右輪子的速度同時減小一些,然后左輪子速度減小的幅度遠小于右輪子速度減小的幅度,這樣就使得仿真機器人的左輪子的速度大于右輪子的速度,從而使得仿真機器人向右轉(zhuǎn)向,以使仿真機器人能夠成功的避開障礙物,到達避障的目的。 沿墻走時數(shù)據(jù)分析我們從輸出的上千組數(shù)據(jù)中選取了些具有代表性的數(shù)據(jù),現(xiàn)在我們把這些的數(shù)據(jù)導入MATLAB 中畫出仿真機器人沿墻走時左右輪子的速度 vl、vr 及角度的變化趨勢畫成波形圖,如圖 所示。通過仔細的分析對比,我們發(fā)現(xiàn)當仿真機器人在室內(nèi)進行巡視時,因為我們預先設計仿真機器人始終是右側(cè)靠近墻壁進行巡視,仿真機器人右邊檢測到激光束的數(shù)量小于 3 個,并且仿真機器人與墻壁的距離小于 8000mm,此時仿真機器人左右輪子的速度保持一致并且相等,這樣就保證了仿真機器人向前行進;當仿真機器人的右邊檢測到有激光束數(shù)量大于 3 條且仿真機器人與墻壁的距離小于 8000mm 時,仿真機器人還是向前進,知道仿真機器人檢測到的激光束的距離接近安全距離時,仿真機器人的左右輪子速度開始減小,這樣來讓仿真機器人與墻壁的距離保持在安全距離以上。最后,綜合上述仿真機器人巡視時左右輪子速度的數(shù)據(jù),跟我們預先編寫好的程序和我們設定好的要求基本上能到達一致,因此仿真機器人的沿墻走行為順利實現(xiàn)。對二輪差分驅(qū)動機器人的運動原理掌握的更加全面和深刻。寧波大學信息科學與工程學院本科畢業(yè)設計(論文)3 5 總結與展望 本文總結本文是在移動機器人仿真軟件的基礎上,主要研究了室內(nèi)巡視機器人設計中的激光數(shù)據(jù)的獲取,路徑規(guī)劃,避障,圖像顯示,手動控制等方面問題,從最初的程序編寫調(diào)試到自己的算法設計到最后的仿真實現(xiàn),比較完整地研究了激光數(shù)據(jù)的獲取,路徑規(guī)劃,避障,圖像顯示,手動控制等問題。能夠建立一些簡單的仿真環(huán)境以及控制機器人的基本方法。3) 對差分驅(qū)動輪式機器人的基本運動控制方式的認識有了很大的提高,掌握了差分驅(qū)動的原理。4) 掌握了攝像頭數(shù)據(jù)獲取的方法,通過獲取攝像頭數(shù)據(jù)并進行處理來解決圖像顯示的問題,并在 C軟件上進行編程實現(xiàn)。 展望 在計算機技術、傳感技術、控制技術、網(wǎng)絡技術迅猛發(fā)展的今天,移動機器人的應用范圍越來越大,使用的復雜程度也是一天一天的增
點擊復制文檔內(nèi)容
職業(yè)教育相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1