Open Source Robotics

精選高品質的開源機器人專案、工具與軟體,推動機器人社群向前發展。

Obstacle Avoidance

  • 又稱: Collision Avoidance, Object Avoidance
  • 類別: State estimation & navigation › Navigation
  • 標籤: navigation, autonomous, safety, planning, sensors

機器人運用感測器與規劃,偵測物體並繞行、不發生碰撞的能力。

定義

避障是機器人偵測路徑上的物體並繞過它們、不發生碰撞的能力。它是自主機器人最基本的行為之一,幾乎每個在非結構化環境中移動的機器人都需要它。

避障在多個層級上運作: - 反應式避障:以簡單規則對偵測到的障礙物立即做出反應。機器人感測到障礙物後即時調整路徑,不預先規劃。方法包括位能場(把障礙物當成排斥力)與向量場直方圖(VFH)法。 - 區域規劃:考量機器人周圍鄰近障礙物的短時域規劃。動態視窗法(DWA;Nav2 中的實作為 DWB)與時間彈性帶(TEB)等演算法會計算避開附近障礙物、同時遵循全域路徑的短軌跡。 - 全域規劃:考量已知障礙物,計算從起點到目標的完整路徑。A*、RRT 與 PRM 等演算法會在整個環境中找出無碰撞路徑。

避障的感測器輸入: - 光達(LIDAR):提供精確的 360 度距離量測。對 2D 障礙物偵測最可靠。 - 深度攝影機:提供 3D 障礙物資訊。有助於偵測不同高度的物體。 - 超音波感測器:簡單、低成本的測距感測器。距離與精度有限,但足以做到基本的防碰撞。 - 保險桿/接觸感測器:其他感測器失效時的最後一道偵測。機器人會實際碰觸到障礙物。

實務上,穩健的避障會結合多種感測器類型與規劃層級。現代方法越來越常使用學習而得的策略(在模擬中以強化學習訓練),能處理人群、狹窄通道與動態障礙物等複雜情境。

為何重要

避障讓機器人不會撞上它沒有規劃到的那部分世界。它與運動規劃有一個重要的區別:規劃是在運動之前依據已知地圖進行,避障則是在運動過程中依據感測器當下回報的資訊進行。機器人兩者都需要,因為世界裡有會移動的人、會關上的門,以及五分鐘前還不在那裡的箱子。

主要應用

  • 在人群與移動設備之間的移動機器人導航
  • 有人進入工作範圍時必須停止或減速的協作手臂
  • 在雜亂或室內環境中的無人機飛行
  • 在人車混流倉庫中的無人搬運車
  • 規劃後路線遭阻擋時的動態重新規劃
  • 工業工作單元中符合安全等級的速度與間隔監控

實際應用

執行 Nav2 的移動機器人會在靜態地圖上維持一條全域路徑,並由 DWB 等區域規劃器在每個週期依據以即時光達(LIDAR)與深度資料建立的區域成本地圖重新評估。最關鍵的參數是膨脹半徑與機器人的佔地面積,設錯就會出現兩種典型失敗:設得太緊,機器人會擦撞門框;設得太寬,它會拒絕進入其實完全能通過的走廊。最困難的情況根本不是靜態的:玻璃、位於感測平面以下的低矮障礙物,以及會改變方向的人。

常見誤解

  • 避障與規劃是同一件事:前者對即時感測資料做出反應,後者事先在已知地圖上搜尋
  • 有好的感測器就夠了:機器人本身的佔地面積與膨脹設定對行為的影響,和偵測一樣大
  • 偵測到的東西都能避開:感測器會漏掉玻璃、低矮路緣,以及位於掃描平面以下的物體
  • 反應式避障能保證安全:它可能把機器人帶進死路或來回擺盪,也不能取代符合安全等級的系統

誰需要了解

  • 任何要把移動機器人部署到與人共用之空間的人
  • 調整區域規劃器、成本地圖與佔地面積的開發者
  • 評估協作式安裝的安全工程師
  • 學習審議式控制與反應式控制之分的學生
  • 任何機器人不是擦撞門框、就是拒絕通過可通行空隙的人

相關技術

  • 動態視窗法(DWA)
  • 向量場直方圖(VFH)
  • 人工位能場
  • ROS Navigation Stack 中的成本地圖圖層
  • 符合安全等級的監控停止(ISO 10218)
  • 時間彈性帶(TEB)區域規劃器
  • 深度攝影機(Intel RealSense、Stereolabs ZED)
  • 預測式碰撞偵測

相關術語

  • SLAM
  • LIDAR
  • Motion Planning
  • AMR

相關專案

  • OpenMower: Open-source project converting commercial mowers into autonomous RTK-GPS guided robots
  • Nav2: ROS 2 navigation stack with path planning and obstacle avoidance for mobile robots
  • DimOS: Python robotics runtime with agents, SLAM and teleop, no ROS required
  • ROS Motion Planning: One repo implementing 40+ classic and learning-based robot path planners as ROS plugins
  • MRPT: Comprehensive C++ toolkit for mobile robotics, SLAM, and sensor-based navigation
  • TurtleBot3: ROS packages for TurtleBot3 — the standard educational mobile robot platform

影片

  • Potential Field Navigation - Obstacle Avoidance: Carlotta A. Berry, PhD

維基百科

  • 避障 (机器人学)

本網站需要 JavaScript 才能正常運作。請啟用 JavaScript 以瀏覽我們的開源機器人專案。