iT邦幫忙

2024 iThome 鐵人賽

DAY 13
0
自我挑戰組

ROS 筆記:要怎麼叫無人機自己飛系列 第 13

【ROS 筆記:要怎麼叫無人機自己飛】Day 13:機器人學的基礎知識

  • 分享至 

  • xImage
  •  

今天唐突新加了一篇機器人學的基礎知識!本來我是打算直接開始寫在 Gazebo 的介紹和基本操作,但是發現後面好幾篇的內容有太多跟機器人有關性質,到處補充看起來實在有點雜亂,決定還是把這些小知識全都拉到前面來一次講清楚。

機器人學的基礎

空間座標系(Coordinate System)

在模擬環境和實際的應用中,經常會需要讓機器人了解自己身處在環境中的位置,這時候就需要使用空間座標系來定義。空間座標系是用來描述物體在空間中位置和方向的一組參考系統,一般在機器人學中會使用的是 X、Y、Z 軸互相垂直的直角坐標系,又稱為笛卡兒坐標系(Cartesian coordinate system)。

右手坐標系是其中一種習慣的表示方式,如下圖所示,右手食指、中指和大拇指依序指向互相垂直的 X、Y、Z 軸,手指指尖方向為軸的正向,且 X、Y、Z 軸分別朝向前方、左方和上方。

座標變換(Coordinate Transformation)

機器人通常需要在不同的座標系中運作:

  • 全局座標系(Global coordinate system)用來描述整個環境中物體的絕對位置和方向。
  • 局部座標系(Local coordinate system)是以機器人自身當原點,用來描述它周圍物體的相對位置和方向。

用汽車駕駛的角度來看,全局座標系相當於導航地圖紀錄的經緯度座標,而局部座標系則是從駕駛的角度看車外的其他物件與自己的距離、位置。

機器人在執行各種任務時,周圍物體的位置會隨著機器人的移動而變化,因此它必須隨時進行座標轉換,將自身的局部座標系中的位置和方向轉換成全局座標系的數據,才能理解在這個空間的其他東西在哪裡,藉此來計算出最佳的移動路徑或避障行為。

六個自由度(Six degrees of freedom,6-DOF)與姿態(Pose)

6-DOF 是指一個剛體在三維空間中可以活動的六個自由度,即在三個互相垂直的坐標軸上進行的平移和旋轉。

姿態(Pose) 是一般用來表示機器人在空間中的位置和身體的朝向:

  • 位置(Position)

    機器人在三維空間中的座標。根據右手座標系,三個軸上的值分別是:

    • X 軸:前進(正向)和後退(負向)。
    • Y 軸:左移(正向)和右移(負向)。
    • Z 軸:上升(正向)和下降(負向)。
  • 朝向(Orientation)

    機器人相對於某個座標系的旋轉狀態。根據右手拇指定則(拇指朝向旋轉軸正向,看四根手指的彎曲方向),三個軸上的旋轉分別是:

    • 翻滾(Roll),繞 X 軸旋轉,右翻(正向)和左翻(負向)。
    • 俯仰(Pitch),繞 Y 軸旋轉,上仰(正向)和下俯(負向)。
    • 偏航(Yaw),繞 Z 軸旋轉,左擺(正向)和右擺(負向)。

自主行動機器人(Autonomous Mobile Robots,AMR)

AMR 是一種結合多種技術來實現自主行動的機器人系統,它們不需要人類干預,而是透過身上的處理器、感測器以及控制演算法來感知環境、做出決策並執行動作。

常見的感測器

機器人利用多種感測器來收集周圍環境的數據。這些感測器幫助機器人「看到」和「理解」周遭的環境,包括物體的形狀、距離、位置等。

  • 慣性測量單元(Inertial Measurement Unit,IMU)

    IMU 提供有關加速度和角速度的資料,用於測量物體的運動狀態。IMU 常用於機器人的姿態控制和穩定導航。

  • 全球定位系統(Global Positioning System,GPS)

    GPS 用於提供物體的地理位置資訊,通常在室外環境中用於機器人或無人機的導航。

  • 相機(Camera)

    相機是用來捕捉環境影像的感測器,一般會根據機器人的任務需求,安裝不同角度的相機在機身上。

  • 光達(Light Detection and Ranging,LiDAR)

    LiDAR 利用雷射向四周掃描,測量物體與環境之間的距離,並生成精確的 3D 點雲圖。

在 Gazebo 可以透過插件(Plugins)來賦予模擬環境中的機器人感測器功能,具體的執行細節會在之後介紹。


今天介紹的內容中,6-DOF 是我在寫控制程式時覺得最抽象的部份(方向感太差),這次還特別自己做個示意圖,希望這樣以後我就不會再搞錯機器人移動方向了。


上一篇
【ROS 筆記:要怎麼叫無人機自己飛】Day 12:使用 Python 撰寫服務代理(Service Proxy)
下一篇
【ROS 筆記:要怎麼叫無人機自己飛】Day 14:Gazebo 又是什麼?
系列文
ROS 筆記:要怎麼叫無人機自己飛14
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言