校際選修

115-1 選課時程

進行中

  • 初選第一階段 6/15/2026
  • 初選第二階段 6/22/2026
  • 校際選修 8/24/2026
  • 初選第三階段 8/31/2026
  • 開學後加退選 9/7/2026
  • 逾期加退選 9/21/2026
選課資源

ROS機器人程式設計與實作

ROS Robotics Programming and Projects

學期
110-2
學分
3 學分
當期課號
5232
永久課號
IOG5009
開課單位
智慧科學暨綠能學院
授課教師
陳建志
校區
歸仁
類別
選修
上課時間表
週一
5
13:20–14:10
ROS機器人程式設計與實作
CM212
3 節連堂
6
14:20–15:10
7
15:30–16:20

* 根據陽明交大上課時間表所列

概述

機器人作業系統(Robot Operating System, ROS)是專為開發機器人所設計的開源軟體架構,如今ROS已風行全世界並支援各大廠牌的機器人(Universal Robots, ABB Manipulators, Faunc等)。ROS提供了硬體抽象、設備驅動、函式庫、可視化工具、軟體間訊息傳遞和軟體包管理等功能。ROS背後廣大的社群累積了龐大的能量,除了提供基本工具外,也包含各式各樣的演算法,使得開發者可猶如組裝積木般,一塊塊的將自己想要的機器人快速拼接起來,並專注於開發自己的應用。首先,本課程將引導學生學會相關的基礎與知識,然後以ROS作為機器人應用開發系統,並以無人自動駕駛為應用範例,讓學生據此發展出其它類型的應用,或新的專案。 本課程並結合教育部智慧聯網技術課程推廣計畫的 E-1「自動駕駛ROS開發使用課程模組」,採用該模組單元2與單元3,介紹ROS系統效能分析與平行化/最佳化相關內容,以及使用基於ROS之autoware自動駕駛軟體,讓同學們操作更多自動駕駛上可使用的物件偵測與物件追蹤演算法,使得ROS相關內容更豐富、完整。亦結合D-4「工業物聯網通訊與雲端軟體平臺整合」課程模組,學習建構以oM2M或研華 WISE-PaaS服務之物聯網管理平台,教學在智慧工廠場域內如何將感測設備連接形成工業物聯網,接著,學習透過將機器人整合入物聯網通訊或其它網路通訊協議方式,基於物聯網平台聯網功能、webhook、RestfulAPI、notification service、或網路通訊協定進行整合,實現ROS 智慧機器人與工業物聯網在廠區內進行協同工作的目標。

先修科目

程式設計、資料結構、嵌入式系統或物聯網程式設計

教學方式

教學活動包括授課、實習、課前預習與指導學生專題。評量方式,以labs與專題成果為主。

評分方式

labs: 60% final project: 40% 出席: for reference (教師保留最終的比重調配權利)

週次計畫
週次主題
第 1 週Introduction to ROS, OM2M, and WISE-PaaS、Python Quick Start、Jupyter-Notebook Labs: download Linux image
第 2 週ROS concepts、ROS系統建構、配置ROS工作環境、An example: turtlesim、ROS tools and commands、VirtualBox、ROS environment setup on laptop、Vim Labs: 安裝VirtualBox and Linux Image、rqt_graph繪製動態流程圖、first ROS package
第 3 週228,休息一次
第 4 週ROS environment setup on R-Pi、ROS coding: 跨裝置溝通、R-Pi GPIO control、ROS coding: multi-Node co-work、ROS launch files Labs: 在樹莓派建置ROS environment、ROS Inter-device communications、使用LED燈作出SOS求救訊號、button, LED, &超音波感測器
第 5 週ROS系統效能分析與平行化:以無人倉儲自走車為例 (3hrs) 1) ROS工具與perf效能分析工具操作介紹 2) ROS模組平行化與效能分析實務 *E-1:單元2
第 6 週Git-tutorial、Duckiebot setup、laptop setup、ROS Camera and joystick control Labs: git practice、Duckiebot assembly、Duckiebot setup、Test Duckiebot hardware: joystick control & camera
第 7 週Camera calibration: Intrinsic calibration &Extrinsic calibration、Ground projection、ROS Rviz, a 3D visualizer、Wheel calibration、OpenCV Quick Start、Line detection and filter Labs: RViz、Camera calibration、Wheel calibration
第 8 週春假,休息一次
第 9 週Lane Pose and Measurement models、Lane following、Object detection、How to create your ROS Apps: (1) FSM, (2) importing existing modules、ROS publish and subscribe、ROS remap、launch & include files Labs: Lane following、One color following、Apriltags
第 10 週ROS為基礎之自駕車軟體與實作 (3hrs) 1) Autoware自駕軟體基礎介紹 2) Autoware以Lidar為基礎的物件偵測 (object detection) *E-1:單元3
第 11 週How to create your ROS Apps: (3) create ROS packages, (4) integrate other resources Labs: Create your own ROS package、Integrate remote AI services
第 12 週物聯網標準化平台OM2M與實驗: OM2M + PostMan 練習、 OM2M + NodeRED 練習 *D-4:單元1
第 13 週Web of Things實驗:結合 NodeRED 實作於 Arduino *D-4:單元2
第 14 週WISE-PaaS基本架構與WISE-PaaS/Data Hub服務 Labs: 物聯網裝置加入WISE-PaaS物聯網
第 15 週WISE-PaaS/Dashboard 低代碼可視化儀表板實作 Labs: 物聯網裝置結合 WISE-PaaS/Dashboard可視化儀表板做數據呈現
第 16 週專題提案報告,工業物聯網與ROS機器人整合基礎及範例探討,基於物聯網平台聯網功能、webhook、RestfulAPI、notification service、或網路通訊協定進行整合 Labs: 物聯網與ROS機器人整合實驗
第 17 週WISE-PaaS/SaaS Composer 低代碼2D/3D可視化工具實作 Labs: WISE-PaaS Level 1 & 2線上課程
第 18 週期末專題報告與展示
教科書

1.課程講義 2.教育部智慧聯網技術課程推廣計畫: E-1「自動駕駛ROS開發使用課程模組」與D-4「工業物聯網通訊與雲端軟體平臺整合」課程模組 3."Learning Robotics Using Python", 作者: Lentin Joseph, 原文出版社:Packt Pub Ltd, 出版日期:2015/05/30, ISBN:9781783287536 4."Mastering ROS for Robotics Programming", 作者: Lentin Joseph, 原文出版社:Packt Pub Ltd, 出版日期:2015/12/31, ISBN:9781783551798

Office Hours
地點
CM318
時間
週二,9:00-12:00
聯絡方式
jenjee@nycu.edu.tw