機器人運動規划中的構形空間(Configuration Space)


  A key concept in motion planning is configuration space, or C-space for short. Every point in the C-space C corresponds to a unique configuration q of the robot, and every configuration of the robot can be represented as a point in C-space. This description is convenient because it allows us to describe the complex 3D shape of the robot with a single n-dimensional point. For example, the configuration of a robot arm with n joints can be represented as a list of n joint positions, q = (θ1, . . . , θn). The free C-space Cfree consists of the configurations where the robot neither penetrates an obstaclen or violates a joint limit. 

  The workspace obstacles partition the configuration space C into two sets, the free space Cfree and the obstacle space Cobs, where C = Cfree ∪ Cobs. Joint limits are treated as obstacles in the configuration space. With the concepts of Cfree and Cobs, the path planning problem reduces to the problem of finding a path for a point robot among the obstacles Cobs. If the obstacles break Cfree into separate connected components, and qstart and qgoal do not lie in the same connected component, then there is no collision-free path. The goal of path planning is to find a path in the work space from the initial position to the goal position, avoiding all collisions with the obstacles. This is a difficult problem to visualize and solve in the physical space, particularly as dimension grows large. But in configuration space the problem is straightforward.

   一般移動機器人的路徑規划問題都將其假設為一個點,忽略外形以及尺寸來簡化問題。但在實際控制機器人時就必須考慮其真實尺寸,這時機器人就不能被簡單地當做一個點。

What if the robot is not a point? 

 

  對平面機器人來說,C-Space就是以機器人的尺寸為基礎,對工作空間進行一定的膨脹即可得到:

  如果對工作空間中的障礙物進行膨脹產生了重疊的部分,如下圖所示,則表示機器人不能通過那個區域:

  C-Space與機器人實際形狀和尺寸有關,從下圖可以看出中間和右邊兩個機器人由於尺寸(直徑)太大而不能通過工作空間的某些區域:

  另外機器人的形狀也會影響C-Space。下圖中的直角三角形代表一個三角形狀的機器人,只能在平面內平移,其參考位置點在圖中的(x,y)處。灰色矩形是工作空間內的障礙物,將機器人貼着障礙物邊界滑行一圈,追蹤參考點的位置可以畫出一個黑色粗線框的多邊形區域。這個區域就是該三角形機器人C-Space中的障礙區域。

   下面是一個關節型機器人的例子。平面二連桿機器人有兩個自由度,可以繞兩個關節分別旋轉0-360°,中間的圖描繪了在工作空間中機器人從初始位置開始經過一系列中間點避開障礙物A、B、C運動到目標位置。右圖是與之對應的C-Space中的情形:

   注意θ= 0和θ= 2π(θ= 0和θ= 2π)其實是一個角度,因此上面C-Space的左右邊界和上下邊界其實是連在一起的。其拓撲結構是一個圓環面(torus),正方形構型空間可從圓環面的θ= 0、θ= 0處切開、展平得到。

   任何落在C-obstacle中的點都表示位於該構型時機械臂與障礙物發生了碰撞。C-Space中從start到end的路徑代表了一條工作空間中無碰撞的路徑。注意障礙物將Cfree分隔成了三個連通區域(connected components
),且起點和終點處於同一連通區域中。然而下圖這種情況,起始狀態qA和目標狀態qB分別位於不連通的區域內,機械臂從A運動到B無論怎么走必然會撞到障礙物。

 

 

 

參考:

Modern Robotics Mechanics, Planning, and Control

Modern Robotics home page

Robotics Modelling, Planning and Control Chapter 12. Motion Planning

Springer Handbook of Robotics  Chapter 5. Motion Planning

Robotic Motion Planning: Configuration Space 

知乎 機器人運動規划中的C space怎樣理解?


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM