DIT 13th 寒假教學 -- ROS
===
<!-- {%hackmd BJrTq20hE %} -->
- [回到目錄](https://hackmd.io/@nthu-ditrobotics/ryxdiYn67Jl)
- [教學範例程式](https://github.com/DIT-ROBOTICS/Winter-Tutorial.git)
I. DAY 1 -- Docker & ROS 基本框架
---
- [01. Docker 架構介紹](https://hackmd.io/@HungPin/SyMB2ebK6)
- [02. Docker 環境安裝](https://hackmd.io/@HungPin/SkYDGWWYT)
- [03. Docker 基本指令](https://hackmd.io/@HungPin/SJtVzz-KT)
- [04. Dockerfile and Docker Compose](https://hackmd.io/llMPLduSSumOnUHnXfV0uA#Dockerfile-and-Docker-compose)
- [05. File System](https://hackmd.io/1ERvPS78STKy445Bg81y8A#-04-File-System)
- [06. 那些自動生成的東西們](https://hackmd.io/1ERvPS78STKy445Bg81y8A#-05-%E9%82%A3%E4%BA%9B%E8%87%AA%E5%8B%95%E7%94%9F%E6%88%90%E7%9A%84%E6%9D%B1%E8%A5%BF%E5%80%91)
- [07. 編譯與執行](https://hackmd.io/1ERvPS78STKy445Bg81y8A#-06-%E7%B7%A8%E8%AD%AF%E8%88%87%E5%9F%B7%E8%A1%8C)
- [08. ROS 程式架構初探](https://hackmd.io/1ERvPS78STKy445Bg81y8A#-07-ROS-%E7%A8%8B%E5%BC%8F%E6%9E%B6%E6%A7%8B%E5%88%9D%E6%8E%A2)
- [09. Linux 和 ROS 常用指令集](https://hackmd.io/1ERvPS78STKy445Bg81y8A#-08-Linux-%E5%92%8C-ROS-%E5%B8%B8%E7%94%A8%E6%8C%87%E4%BB%A4%E9%9B%86)
II. DAY 2 -- node間的通訊架構(Publisher&Subscriber篇)
---
- [01. ROS topic介紹](https://hackmd.io/ibpdUMYvRuK3nk4XYLCxRw#-01-ROS-topic%E4%BB%8B%E7%B4%B9)
- [02. 常用的messages](https://hackmd.io/ibpdUMYvRuK3nk4XYLCxRw#-02-%E5%B8%B8%E7%94%A8%E7%9A%84messages)
- [03. Messages 的使用方式](https://hackmd.io/ibpdUMYvRuK3nk4XYLCxRw#-03-Messages-%E7%9A%84%E4%BD%BF%E7%94%A8%E6%96%B9%E5%BC%8F)
- [04. ROS Publisher & Subscriber](https://hackmd.io/ibpdUMYvRuK3nk4XYLCxRw#-04-ROS-Publisher-amp-Subscriber-)
- [05. turtlesim](https://hackmd.io/ibpdUMYvRuK3nk4XYLCxRw#-05-turtlesim)
- 加入 DIT github
- [寒訓小專案說明](/s/S14DvhkLkx)
III. DAY 3 -- message
---
- [01. 建立自定義的 message](https://hackmd.io/@ianlai0521/SJoCZ14F6#01-%E5%BB%BA%E7%AB%8B%E8%87%AA%E5%AE%9A%E7%BE%A9%E7%9A%84-message)
- [02. 自定義需要的 message](https://hackmd.io/@ianlai0521/SJoCZ14F6#02-%E8%87%AA%E5%AE%9A%E7%BE%A9%E9%9C%80%E8%A6%81%E7%9A%84-message)
- [03. 編譯/生成 message file](https://hackmd.io/@ianlai0521/SJoCZ14F6#03-%E7%B7%A8%E8%AD%AF%E7%94%9F%E6%88%90-message-file)
- [04. 使用自定義的 message](https://hackmd.io/@ianlai0521/SJoCZ14F6#04-%E4%BD%BF%E7%94%A8%E8%87%AA%E5%AE%9A%E7%BE%A9%E7%9A%84-message)
- [05. CMakeList.txt & package.xml 介紹](/s/SkDgJyeLkx)
IV. DAY 4 -- service
---
- [01.ROS Service 介紹](https://hackmd.io/ZeShD4ANR4awA3VbdKOVqQ?view)
- [02. 小烏龜的 Service](https://hackmd.io/ZeShD4ANR4awA3VbdKOVqQ?view#-02-%E5%B0%8F%E7%83%8F%E9%BE%9C%E7%9A%84-Service)
- [03. 自定義 Service](https://hackmd.io/ZeShD4ANR4awA3VbdKOVqQ#-03-%E8%87%AA%E5%AE%9A%E7%BE%A9-Service-)
- [04. Service 實作 for C++](https://hackmd.io/ZeShD4ANR4awA3VbdKOVqQ#-04-Service-%E5%AF%A6%E4%BD%9C-for-C)
- [05. Service 實作 for Python](https://hackmd.io/ZeShD4ANR4awA3VbdKOVqQ#-05-Service-%E5%AF%A6%E4%BD%9C-for-Python)
V. DAY 5 -- Vscode & GitHub (共同課程)
---
* [VScode](https://hackmd.io/pSGxMe3xScmxyNQhLwxc8w?view#-01-vscode-extensions)
* [Git & Github](https://hackmd.io/pSGxMe3xScmxyNQhLwxc8w?view#-03-GitHub-%E2%80%93-setup)
VI. DAY 6 -- Parameter & Launch
---
- [01. ROS Param](/s/FeZtqLglSDqBWbNqaT7nGQ?view)
- [02. Roslaunch](/s/FeZtqLglSDqBWbNqaT7nGQ?view#-02-Roslaunch-)
VII. DAY 7 -- VScode & OOP
---
- [Object-Oriented Programming 物件導向程式設計](/ut2uhJ8xR3C3kkQLMbnaBg)
VIII. DAY 8 -- tf
---
- [04. tf](/D4D_Ymf_ROagZZeN9nfVEA?view)
- [05. tf & tf2](https://ditrobotics.notion.site/TF-TF2-9ffc0ca2cac14ca0bed4f0cfe982199c?pvs=4)
- [06. official tf tutorial](https://wiki.ros.org/tf2/Tutorials/Writing%20a%20tf2%20static%20broadcaster%20%28C%2B%2B%29)
IX. DAY 9 -- ssh & Xserver & ROS tools & namespace
---
- [01. ROS tools](/s/SkXn1wAt6?view)
- [02. namespace](/dLKUYGZRS1GytMzz5OSGiA?view)
- [03. ssh](https://hackmd.io/@HungPin/H1mxfXB5T)
X. DAY 10 -- 上下位機通訊方式
---
- [ros 通訊設置(Linux)](/MWaCX4AQRzi6AM6DW87f2A)
{"description":"回到目錄","title":"DIT 13th 寒假教學 -- ROS","contributors":"[{\"id\":\"ab0f9c1c-4e24-4894-b7fc-d061b66611de\",\"add\":5382,\"del\":939},{\"id\":\"3630b0e1-5f62-4899-a0cc-528ca6f4f95b\",\"add\":54,\"del\":10},{\"id\":\"0fdfebaf-f67a-4c3c-a76c-3eb87d5f982c\",\"add\":1558,\"del\":1590},{\"id\":\"430bf3d7-2e6f-447f-98c0-bbb2ba04a375\",\"add\":6,\"del\":246},{\"id\":\"265e60cc-994b-40f0-bcec-d18b11134d2c\",\"add\":63,\"del\":53},{\"id\":\"e07c0e35-e7aa-4a54-a664-0cc2032736fb\",\"add\":180,\"del\":749},{\"id\":\"c5d44bef-c716-4f14-a978-a79e94efe66a\",\"add\":218,\"del\":0}]"}
DIT 13th 寒假教學 ROS
I. DAY 1 Docker & ROS 基本框架
II. DAY 2 node間的通訊架構(Publisher&Subscriber篇)
III. DAY 3 message
IV. DAY 4 service
V. DAY 5 Vscode & GitHub (共同課程)
VI. DAY 6 Parameter & Launch
VII. DAY 7 VScode & OOP
VIII. DAY 8 tf
IX. DAY 9 ssh & Xserver & ROS tools & namespace
X. DAY 10 上下位機通訊方式