iT邦幫忙

鐵人檔案

2024 iThome 鐵人賽
回列表
自我挑戰組

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

ROS是在開發機器人軟體時常用的一套開源系統,這個系列文章分成兩個主要部分。
首先,第一部份將介紹如何用ROS的功能搭配Python程式,在模擬環境Gezebo中控制機器人移動。
第二部份則是針對無人機的運作特性,介紹基礎的影像處理技術,還有兩種自主系統控制方法(FSM和行為樹),讀者可以跟著文章設計出一套小型控制系統,成功讓無人機完成指定任務。

參賽天數 25 天 | 共 25 篇文章 | 2 人訂閱 訂閱系列文 RSS系列文
DAY 11

【ROS 筆記:要怎麼叫無人機自己飛】Day 11:使用 Python 撰寫話題的發布者(Publisher)和訂閱者(Subscriber)

這一篇想介紹如何用 Python 來讓節點發布和訂閱訊息,做到上一篇介紹的 rostopic echo 和 rostopic pub 這兩個指令相同的效果。 建...

2024-09-24 ‧ 由 欸利 分享
DAY 12

【ROS 筆記:要怎麼叫無人機自己飛】Day 12:使用 Python 撰寫服務代理(Service Proxy)

這一篇繼續介紹如何用 Python 來寫一個服務代理,我們就能做到 Day 10 介紹的 rosservice call 指令相同的效果。 建立服務代理(Ser...

2024-09-25 ‧ 由 欸利 分享
DAY 13

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

今天唐突新加了一篇機器人學的基礎知識!本來我是打算直接開始寫在 Gazebo 的介紹和基本操作,但是發現後面好幾篇的內容有太多跟機器人有關性質,到處補充看起來實...

2024-09-26 ‧ 由 欸利 分享
DAY 14

【ROS 筆記:要怎麼叫無人機自己飛】Day 14:Gazebo 又是什麼?

這個系列文寫到這裡,理論上利用前面介紹的 ROS 基本用法,搭配前人們為各廠牌無人機製作的驅動程式,其實就可以直接開始寫程式控制無人機了。 但是畢竟不是每個人家...

2024-09-27 ‧ 由 欸利 分享
DAY 15

【ROS 筆記:要怎麼叫無人機自己飛】Day 15:匯入模型到 Gazebo 中(一),介紹啟動檔(Launch file)

接下來我們就要來把模型匯入到 Gazebo 裡面了! ROS-Gazebo 專案 前天的內容提到,我們要使用 ROS 指令來啟動 Gazebo ,並且要做到以下...

2024-09-28 ‧ 由 欸利 分享
DAY 16

【ROS 筆記:要怎麼叫無人機自己飛】Day 16:匯入模型到 Gazebo 中(二),介紹模型描述檔(Model SDF file)

今天接續上篇,繼續介紹怎麼用 XML 格式來描述 Gazebo 裡面的模型。 建立一個 ROS-Gazebo 專案的模型檔 前往 models 目錄建立一個模型...

2024-09-29 ‧ 由 欸利 分享
DAY 17

【ROS 筆記:要怎麼叫無人機自己飛】Day 17:匯入模型到 Gazebo 中(三),介紹世界檔(World file)

今天繼續介紹怎麼用 XML 格式來設定 Gazebo 的模擬環境。透過世界檔,我們就可以設置模擬中使用的物理參數、光源、地形以及需要匯入的模型。 建立一個 RO...

2024-09-30 ‧ 由 欸利 分享
DAY 18

【ROS 筆記:要怎麼叫無人機自己飛】Day 18:使用 Gazebo 的插件(plugins)來控制模型

控制無人機需要寫 ROS 節點,但是 Gazebo 和 ROS 畢竟還是兩個獨立的系統,並不能直接通訊。因此還需要在我們的模型中加入插件(plugins)才行。...

2024-10-01 ‧ 由 欸利 分享
DAY 19

【ROS 筆記:要怎麼叫無人機自己飛】Day 19:使用 Gazebo 的插件(plugins)來為模型增加感測器

今天繼續介紹感測器插件的部分,比起模型插件還會用到 PID 控制演算法,感測器插件基本上就是一些感測能力的設置,應該會比模型插件稍微好理解一些。 添加感測器插件...

2024-10-02 ‧ 由 欸利 分享
DAY 20

【ROS 筆記:要怎麼叫無人機自己飛】Day 20:控制 Gazebo 中的無人機

經過這麼多天的鋪陳,今天真的要控制無人機啦! 控制無人機飛行 首先,前往套件的 src 目錄建立控制程式。這裡示範可以讓無人機飛出一個正方形軌跡的程式 squa...

2024-10-03 ‧ 由 欸利 分享