<var id="fnfpo"><source id="fnfpo"></source></var>
<rp id="fnfpo"></rp>

<em id="fnfpo"><object id="fnfpo"><input id="fnfpo"></input></object></em>
<em id="fnfpo"><acronym id="fnfpo"></acronym></em>
  • <th id="fnfpo"><track id="fnfpo"></track></th>
  • <progress id="fnfpo"><track id="fnfpo"></track></progress>
  • <tbody id="fnfpo"><pre id="fnfpo"></pre></tbody>

  • 機器人技術基礎系列:規劃與導航

    發布時間:2010-3-9 21:34    發布者:嵌入式公社
    關鍵詞: 導航 , 規劃 , 機器人技術 , 基礎
    概覽

    自主移動機器人的規劃與導航包括利用有目的的抉擇制定和執行來使系統實現最高級的目標。機器人是否勝任導航的能力必須通過兩個技能來證明:路徑規劃和避障。

    路徑規劃

    給定地圖和目的地情況下的路徑規劃指的是機器人通過軌跡識別行進至目的地的能力。路徑規劃是至關重要的問題解決能力,因為機器人必須有能力決定在到達目的地前的路程中如何行進。

    路徑規劃可分為兩部分:表達與算法。路徑規劃人員首先將機器人環境轉化為適合路徑規劃的形式。一些常用的技術包括廣義的 Voronoi圖、規則網格和四叉樹。路徑規劃算法通?捎糜趲缀跛信渲每臻g的表達,雖然某些方法會更適合特定表達。圖1展示了LabVIEW中繪制的 Voronoi圖。


    圖1. LabVIEW中的Voronoi圖

    由于多數表達可轉換為圖表,初始節點和目標節點之間的路徑可通過圖搜索算法來計算。圖搜索算法被計算機科學充分理解,然而,許多算法要求程序訪問圖上的每個節點,以此來決定初始節點和目標節點間的最短路徑。對于松連通圖來說,訪問每個節點是容易計算的,如Voronoi 圖;但對于緊連通圖來說計算開銷迅速變大,如規則網格圖。

    避障

    路徑規劃人員僅考慮預先知道的環境障礙。在路徑執行中可能由于地圖精度或動態環境等因素,造成機器人真實傳感器的值與預期值之間存在差異。因此,機器人必須能根據真實傳感器的值實時改變運動路徑。這正是避障能力重要的原因。一些通用的避障方法包括Bug算法、VFH算法。

    Bug算法

    一種直接的路徑規劃方法是沿機器人行進路線中每個障礙的輪廓繞行。Bug1算法中,機器人完全沿障礙物輪廓環繞,并在到達離目標地點最近的點時分離。這種方法效率低,但能確保機器人到達任何可到達的目標。Bug2算法中,機器人先沿障礙物輪廓行進,當達到可直達目標地點的位置時立刻分離。Bug2算法顯著縮短了機器人的行進路程,但仍不是最優的。

    VFH算法

    Bug算法的一個限制是機器人每一刻的行為一般為傳感器最近時刻讀數的函數。這就可能導致機器人的瞬時傳感器讀數不能為穩定的避障能力提供足夠的信息。VFH技術通過創建機器人周圍環境的地圖克服了該限制。在避障時生成極坐標柱狀圖來確定轉向。首先,識別能夠讓機器人通過的所有通道。然后,執行考慮目標方向、輪方向和前一刻方向的代價函數。


    圖2. LabVIEW VI的前面板運行VFH避障算法

    在中LabVIEW使用算法

    通過LabVIEW用戶可選擇最有效的語法來開發算法,或使用內置工具來導入其它基于文本語言寫的算法。繼承代碼中已有的搜索算法及其它機器人庫可輕松導入LabVIEW、LabVIEW Real-Time和LabVIEW FPGA中。

    調用函數庫節點

    LabVIEW用戶可利用調用庫函數節點在Windows機器和實時嵌入式控制器中調用DLL。該節點用于在 LabVIEW中創建調用專為LabVIEW編寫的已有庫或新庫的接口。下圖的調用庫函數節點輸入4個字節的浮點數,并輸出其平方值。


    圖3. 調用函數庫節點可在LabVIEW中用于導入繼承代碼

    也可參閱:

    概述LabVIEW中的DLL訪問或庫共享

    使用導入共享庫向導綜合外部代碼

    公式節點

    公式節點可用于LabVIEW和LabVIEW Real-Time中的算法開發。公式節點是一種簡單的基于文本語言的節點,用于在LabVIEW框圖中執行數學操作。用戶無需連接任何外部代碼或應用,也無需連接低級算法函數來創建等式。除了基于文本的等式表達,公式節點還能接受基于文本版的if聲明、while循環、for循環和do循環,這些都是C 語言用戶所熟悉的。


    圖4. 公式節點采用類似C語言的語法

    公式節點對于包含許多變量或非常復雜的等式,以及使用已有的基于文本的代碼來說很有用。用戶可將已有的基于文本的代碼復制、粘貼到公式節點中,避免了重新創建圖形代碼的麻煩。

    也可參閱:

    指南:Mathscript和公式節點
    練習:Mathscript和公式節點
    視頻:Mathscript和公式節點

    HDL節點

    HDL接口節點允許用戶在LabVIEW FPGA中綜合硬件描述語言(HDL)寫的算法或應用。用戶可以直接在HDL接口節點中輸入HDL代碼,或引用外部HDL文件,下圖的例子中,HDL輸入節點包括了VHDL代碼,將兩個32比特數字相加并返回結果。


    圖5. HDL節點允許用于向LabVIEW FPGA中導入HDL代碼

    也可參閱:

    本文地址:http://www.portaltwn.com/thread-9127-1-1.html     【打印本頁】

    本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
    您需要登錄后才可以發表評論 登錄 | 立即注冊

    廠商推薦

    • Microchip視頻專區
    • Dev Tool Bits——使用MPLAB® Discover瀏覽資源
    • Dev Tool Bits——使用條件軟件斷點宏來節省時間和空間
    • Dev Tool Bits——使用DVRT協議查看項目中的數據
    • Dev Tool Bits——使用MPLAB® Data Visualizer進行功率監視
    • 貿澤電子(Mouser)專區

    相關視頻

    關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
    電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
    快速回復 返回頂部 返回列表
    精品一区二区三区自拍图片区_国产成人亚洲精品_亚洲Va欧美va国产综合888_久久亚洲国产精品五月天婷