๊ณต๋ถ ๐/Robot & ROS2
2024.05.01
์ด ๊ธ์ Udemy์ ‘ROS2 for Beginners’๋ฅผ ๋ณด๊ณ ์์ฑํ๋ ๊ธ์
๋๋ค.1. WelcomeWhy i make this cource? step by step to beginner and practice.Install, Create, build and use: - Nodes - Topics - Services - Custom mesages - Parameters - Launch Files - ... Use ROS2 tools => Python and C++ 2. What is ROS2, When to use it, and Why?ROS2: ๊ฐ์ ๋ชฉํ์ด์ง๋ง ํต์ฌ ๊ฐ๋
์ ๋ ๋ซ๊ฒ ๊ฐ์ Why? ๋ก๋ด๋ค์ ๊ณตํต์ ์ ROS ํน์ ROS2๋ฅผ ์ฌ์ฉํ๋ค๋ ์ . ์ด ๋ถ์ค์์ ROS์ ๋ชฉํ๋ ๊ณตํต์ ์ธ ํ๋ซํผ์ ๋ง..
๊ณต๋ถ ๐/ROS1
2024.05.01
์ด ๊ธ์ Udemy์ 'ROS for Beginners: Basics, Motion, and OpenCV' ๋ฅผ ๋ณด๊ณ ์์ฑํ๋ ๊ธ์
๋๋ค.1. What is this course about?- this Course tor Deginner or Aos - What you should know? : Python and C++ - how to make cleaing robot by ROS - OpenCV - LaserScanner - Arduino + ROS - 2. [IMPORTANT] What is you face errors and need to debug and find solutions?We can use Chat GPT.
๊ณต๋ถ ๐/Docker
2023.03.13
1. Docker ๋?๋์ปค๋ ๋ฆฌ๋
์ค ์์์ ์ปจํ
์ด๋ ๋ฐฉ์์ผ๋ก ํ๋ก์ธ์ค๋ฅผ ๊ฒฉ๋ฆฌํด์ ์คํํ๊ณ ๊ด๋ฆฌํ ์ ์๋๋ก ๋์์ฃผ๋ฉฐ, ๊ณ์ธตํ๋ ํ์ผ ์์คํ
์ ๊ธฐ๋ฐํด ํจ์จ์ ์ผ๋ก ์ด๋ฏธ์ง(ํ๋ก์ธ์ค ์คํ ํ๊ฒฝ)์ ๊ตฌ์ถํ ์ ์๋๋ก ํด์ค๋ค. ๋์ปค๋ฅผ ์ฌ์ฉํ๋ฉด ์ด ์ด๋ฏธ์ง๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ปจํ
์ด๋๋ฅผ ์คํํ ์ ์์ผ๋ฉฐ, ๋ค์ ํน์ ์ปจํ
์ด๋์ ์ํ๋ฅผ ๋ณ๊ฒฝํด ์ด๋ฏธ์ง๋ก ๋ง๋ค ์ ์๋ค. ์ด๋ ๊ฒ ๋ง๋ค์ด์ง ์ด๋ฏธ์ง๋ ํ์ผ๋ก ๋ณด๊ดํ๊ฑฐ๋ ์๊ฒฉ ์ ์ฅ์๋ฅผ ์ฌ์ฉํด ์ฝ๊ฒ ๊ณต์ ํ ์ ์์ผ๋ฉฐ, ๋์ปค๋ง ์ค์น๋์ด ์๋ค๋ฉด ํ์ํ ๋ ์ธ์ ์ด๋์๋ ์ปจํ
์ด๋๋ก ์คํํ๋ ๊ฒ์ด ๊ฐ๋ฅํ๋ค. - ์ถ์ฒ : https://www.44bits.io/ko/post/easy-deploy-with-docker์ด๋, ๋๋ Docker๋ฅผ ๋ฆฌ๋
์ค์์ ๋ก๋ด ๊ฐ๋ฐ์ ์ด๋ฏธ ๋ฎ์ ๋ฒ์ ์ผ๋ก ๋ฐฐํฌ๋ ํ์ผ์ ์ด..
๊ณต๋ถ ๐/Robot & ROS2
2023.02.23
์ด ๊ธ์์๋ Ch11. ๋๋ฒ๊ทธ์ ๊ด์ฐฐ์ ์ํ ์ฌ๋ฌ ๋๊ตฌ๋ค ์ ๋ํด์ ์จ๋ณด๊ณ ์ ํ๋ค. 1. ๋ชฉ์ ์ค์ ๋ก ์์คํ
์ ๊ณต๋ถํ๊ฑฐ๋ ๊ฐ๋ฐํ ๋ ์กฐ๊ธ๋ง ๋ณต์กํด๋ ์๋ํ ๋์์ด ๊ตฌํ๋์ง ์๋ ๊ฒฝ์ฐ๊ฐ ์๋ค. ๊ทธ๋ฌํ ๋์ ์ ์ฉํ ๋๊ตฌ๊ฐ ๋ก๊ทธ์ด๋ค. ์๊ฐ ์ ๋ณด์ ์ ๊ธฐ๋ก๋ ๋ก๊ทธ ์ ๋ณด๋ฅผ ๋ณด๋ฉด ํจ์จ์ ์ผ๋ก ๋ก๋ด์ ์ ๊ฒํ ์ ์๋ค. ์ด ๊ธ์์๋ ์ด๋ด ๋ ์ฌ์ฉํ ์ ์๋ ๋๊ตฌ์ธ ๋ก๊ทธ์ ๋ํด์ ์ด๋ป๊ฒ ์ฌ์ฉ์ ํ๋์ง ์์๋ณด๊ณ , rosbag๊ณผ GUI ํ๊ฒฝ์์ ์ง๊ธ๊น์ง ๋ค๋ฃฌ ROS ๋ช
๋ น์ ์ฌ์ฉํ ์ ์๊ฒ ํด์ฃผ๋ rqt ๋ฑ๋ ๋ค๋ค๋ณผ ๊ฒ์ด๋ค. 2. ๋ก๊ทธ (1) ๊ฐ๋จํ rqt_console์ ์ด์ฉํด ๋ก๊ทธ ํ์ธํ๊ธฐ ํน์๋ผ๋ ์ค๋ฅ๊ฐ ๋์ง ์๊ธฐ ์ํด์ rqt ํจํค์ง๋ฅผ ์ค์นํ๋ค. ๋ค์ ๋ช
๋ น์ด๋ฅผ ํตํด์ ๊ฐ๋จํ๊ฒ ์ค์น ๊ฐ๋ฅํ๋ค. sudo apt instal..
๊ณต๋ถ ๐/Robot & ROS2
2023.02.21
์ด๋ฒ์๋ Ch10. Parameter ๋ค๋ฃจ๊ธฐ์ ๋ํด์ ์์ฑํ๊ณ ์ ํ๋ค. 1. ๋ชฉ์ ROS์์๋ ์ค์ ๊ฐ์ ๊ด๋ฆฌํ๋ ๋ค์ํ ๋ฐฉ๋ฒ์ด ์๊ณ , ๊ทธ์ค์ ํ๋ก๊ทธ๋จ ์ฝ๋์ ๋ณ์๋ก ๋ฑ๋กํด ๋๋ ๋ฐฉ๋ฒ์ด ์๋ค. ๊ทธ๋ ๊ฒ ํ๋ฉด ์ด๋ค ์ฝ๋์์ ์ฌ์ฉํ๋ ์ค์ ์ ์ธ๋ถ์์๋ ์ฌ์ฉํ๊ธฐ ์ํด์๋ ์ ๊ฒฝ์ ๋ง์ด ์จ์ผ ํ๋ค. ๋ฐ๋ผ์ ์ด๋ด ๋ ํ๋ผ๋ฏธํฐ ์๋ฒ๋ฅผ ์ด์ฉ๊ฐ๋ฅํ๋ค. ๋ฐ๋ผ์ ์ด ํ๋ผ๋ฏธํฐ๋ฅผ ๋ค๋ฃจ๋ ๋ฐฉ๋ฒ์ ๋ํด์ ์์๋ณผ ๊ฒ์ด๋ค. 2. ํฐ๋ฏธ๋ ๋ช
๋ น์ผ๋ก ํ๋ผ๋ฏธํฐ ์ฌ์ฉํด๋ณด๊ธฐ (1) ์ค์ตํ๊ฒฝ ๋ค์๊ณผ ๊ฐ์ด ํฐ๋ฏธ๋์ ์ค๋น ํ๋ค. ์ดํ turtlesim, turtle_teleop์ ์ด์ด์ค๋ค. (2) ros2 param list ๊ทธ๋ฆฌ๊ณ ์๋์กฑ ํฐ๋ฏธ๋์์๋ ros2 param list ๋ช
๋ น์ ํตํด์ ํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅํ ํ๋ผ๋ฏธํฐ๋ฅผ ํ์ธํ๊ณ ์ ํ๋ค. ๋ค์๊ณผ ๊ฐ์ด ..
๊ณต๋ถ ๐/Robot & ROS2
2023.02.21
์ด๋ฒ์๋ Ch9. ์ก์
์ต์ํด์ง๊ธฐ ์ ๋ํด์ ์จ๋ณด๊ณ ์ ํ๋ค. ์์ ๊ธ์์ ์ก์
์ ํฐ๋ฏธ๋ ๋ช
๋ น์ ์ด์ฉํ์ฌ ์ฌ์ฉํด ๋ณด์๋ค. ์ด์ ๊ฐ๋จํ python์ผ๋ก ROS ์ก์
ํด๋ผ์ด์ธํธ๋ฅผ ๋ค๋ค๋ณด๊ณ ์ก์
์๋ฒ๋ฅผ ๋ง๋ค์ด๋ณด๊ณ ์ ํ๋ค. ์ก์
์ ๋ชฉํ๋ ๋ค์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ์๋น์ค๋ก ์ค๊ฐ ์ํ๋ ํ ํฝ์ผ๋ก ์ ๋ฌํ๋ ํํ์ด๋ค. 1. ์ก์
์ ์ ๋ง๋ค๊ธฐ (1) ์ก์
์ ์๋ฅผ ๋ง๋ค๊ธฐ ์ํ ์ค๋น ์๋กญ๊ฒ ์ก์
์ ์์ํ๊ธฐ ์ํด์๋ ์ก์
์ ์๋ฅผ ๋ง๋ค์ด์ผ ํ๋ค. ๋ฐ๋ผ์ ์๋ก์ด ์ ์๋ฅผ ๋ง๋ค๊ธฐ ์ํ ํจํค์ง์ธ my_first_package_msgs์ ์ ์ก์
์ ์ถ๊ฐํ๊ณ ์ ํ๋ค. ์ด๋ฅผ ์ํด์ my_first_package_msgs ํด๋์ action์ด๋ผ๋ ํด๋๋ฅผ ๋ง๋ค์๋ค. (2) ์ก์
์ ์ ๋ง๋ค๊ธฐ ์ด๋ฒ ์ก์
์์ ๋ฐ์์ผ ํ ์ ๋ณด๋ ๋ค์๊ณผ ๊ฐ๋ค. ์
๋ ฅ : ์ ์..
๊ณต๋ถ ๐/Robot & ROS2
2023.02.17
์ด๋ฒ์๋ Ch8. ๋ฉ์์ง ์ ์ ๋ง๋ค๊ณ ํ ํฝ๊ณผ ์๋น์ค์์ ๋ค๋ฃจ๊ธฐ์ ๋ํด์ ์์ฑํ๊ณ ์ ํ๋ค. ์ด๋ฒ์๋ ๋ฉ์์ง๋ฅผ ์ ์ํ๊ณ ์ด๋ฅผ ๋ค๋ฃจ๋ ๊ฒ์ ๋ํด์ ์์ฑํ ๊ฒ์ด๋ค. 1. ๋ฉ์์ง ์ ์ (1) ๋ฉ์์ง ์ ์๋ฅผ ์ํ ๋ณ๋์ ํจํค์ง ๋ง๋ค๊ธฐ ์์ 7์ฅ์์ ํจํค์ง๋ฅผ ๋ง๋ค ๋ ์ฌ์ฉํ ๋ช
๋ น์ ๋ค์๊ณผ ๊ฐ๋ค. ros2 pkg create --build-type ament_python --node-name my_first_node my_first_package ์ด ๋ช
๋ น์ด๋ ๋น๋ ๋๊ตฌ๋ฅผ ament_python์ผ๋ก ํ๊ฒ ๋ค๊ณ ํ์๋๋ฐ, ์ด ๊ฒฝ์ฐ์ colcon์ ์๋ก์ด ๋ฉ์์ง ์ ์๋ฅผ ๋ง๋ค์ง ๋ชปํ๋ค. ๊ทธ ์ด์ ๋ CMakeLists.txt๊ฐ ํ์ํ๊ณ , ์ด ํ์ผ์ ament_python์ด ๋น๋ ๋๊ตฌ ์ผ ๋ ์ฌ์ฉ ๋ถ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ด๋ค. ๋ฐ๋ผ์ C+..
๊ณต๋ถ ๐/Robot & ROS2
2023.02.16
์ด๋ฒ์๋ Ch7. ํจํค์ง ๋ง๋ค๊ณ ํ ํฝ ๋ค๋ฃจ๊ธฐ์ ๋ํด์ ์ฐ๊ณ ์ ํ๋ค. ์ด๋ฒ ์ฅ์์๋ ํจํค์ง๋ฅผ ์๋กญ๊ฒ ๋ง๋ค๊ณ , ์์ ๋ฐฐ์ด ๋ช
๋ น์ ์ด์ฉํด ํ ํฝ, ์๋น์ค ๋ฑ์ ํจํค์ง ๋ด์์ ๋ง๋ค์ด ๋ณผ ๊ฒ์ด๋ค. 1. ์ค์น ๋ฐ ์ค๋น ์์์ ์ค์นํ์์ง๋ง, ์ค์นํ์ง ์์ ์ฌ๋๋ค์ ์ํด์ ์์ฑํ๋ ๋ถ๋ถ์ด๋ค. ์์ ๊ธ ์ค์ ์ด ๊ธ์์ Humble ์ค์น ์ค์ Install development tools and ROS tools๋ผ๋ ๋ถ๋ถ์ ์ค์น๋ฅผ ํ์ง ์์๋ค๋ฉด ๊ทธ ๋ถ๋ถ์ ์ค์นํด์ผ ํ๋ค. 2023.01.28 - [๊ฐ์ธ ๊ณต๋ถ ๐/ROS] - ๋ฌด์์ ๊ณต๋ถํ๊ธฐ - ํผ์ ๊ณต๋ถํ๋ ๋ก๋ด SW ๋ฐ๋ผํ๊ธฐ (1) ๋ฌด์์ ๊ณต๋ถํ๊ธฐ - ํผ์ ๊ณต๋ถํ๋ ๋ก๋ด SW ๋ฐ๋ผํ๊ธฐ (1) 1ํ๋
๋๋ถํฐ ๊ฐ์ง๊ณ ์๋ ์์์ธ ROS ๊ณต๋ถ๋ฅผ ์ด๋ฒ์ ubuntu 22.04๊ฐ ์ฐ..
๊ณต๋ถ ๐/Robot & ROS2
2023.02.15
Ch6. ROS2 ํ์ต์ ์ํ Python Class ์ดํดํ๊ธฐ ์ด ์ฑํฐ๋ ๋ด์ฉ์ด ์ ์ฒด์ ์ผ๋ก class์ ์ดํด์ ๊ด๋ จ๋์ด ์๊ณ , ROS๊ด๋ จ ๋ด์ฉ์ด ์๋ค๋ ์ ์ ๋ฐํ๊ณ , ์์ํ๋ค. 1. ์ค๋น์์
๋ฐ ๊ทธ๋ฅ sin ํจ์ ๊ทธ๋ ค๋ณด๊ธฐ ํ๋ ๊ฒ์ฒ๋ผ python ํด๋์์ jupyter notebook์ ์ด๊ณ ์ด๋ฒ์๋ Class Study์ ๋ํ ๋ด์ฉ์ ๋ด์ ๊ฒ์ด๋ฏ๋ก ๊ทธ๋ ๊ฒ ์ด๋ฆ์ ์ง๋๋ค. ์ด๋ฒ์ ๊ทธ๋ฆด ์ผ๊ฐํจ์์ ์์์ ๋ค์๊ณผ ๊ฐ๋ค. Asin(2pift)+B ๊ฐ์ฅ ๋จผ์ ์ด sin ํจ์๋ฅผ ๋ํ๋ด๊ธฐ ์ํด์ matplotlib์ ์ค๋นํด์ค์ผ ํ๋ค ๋ค์ ์ฝ๋๋ฅผ ์ด์ฉํด matplotlib์ ์ค์นํ๊ณ , ์ด ํจํค์ง๋ค์ import ํด์ฃผ์ pip3 install matplotlib import matplotlib.pyplot as plt..
๊ณต๋ถ ๐/Robot & ROS2
2023.02.13
Ch5. Python์ผ๋ก ์๋น์ค ํด๋ผ์ด์ธํธ ๋ค๋ฃจ๊ธฐ์ ๋ํด์ ์์๋ณด๊ณ ์ ํ๋ค. ์ด๋ฒ ์ฅ์์๋ ์์์ ํ ํฝ์ ๋ฐํํ๊ณ ๊ตฌ๋
ํ๋ ๋ฐฉ๋ฒ์ ๋ํด์ ์ด์ผ๊ธฐํ ๊ฒ์ฒ๋ผ ์๋ฒ๊ฐ ๋ง๋ค์ด์ ธ ์๋ ์๋น์ค ํด๋ผ์ด์ธํธ๋ฅผ ๊ตฌ์ฑํ๋ Python ์ฝ๋๋ฅผ ๋ค๋ค๋ณผ ๊ฒ์ด๋ค. ์ดํ ๋ค์์๋ ํจํค์ง๋ฅผ ์ง์ ๋ง๋๋ ๋จ๊ณ์์์ ์๋น์ค ์๋ฒ๋ฅผ ๊ตฌ์ฑํ๊ณ ๋๋ง์ ๋ฉ์์ง ํ์
์ ์ ์ํด ๋ณผ ๊ฒ์ด๋ค. 1. ์ค๋น ๋ฐ Service Client ๋
ธ๋ ์์ฑ ๊ฐ์ฅ ๋จผ์ ์ค๋น์ Sercive Client๋ฅผ ์ํ ๋
ธ๋๋ฅผ ์์ฑํ๋ค. ์ด๋ ์ค๋น๋ jupyter notebook์ home\python ์์ ์ด๊ณ , ros2 run turtlesim turtlesim_node ๋ช
๋ น์ ์ด์ฉํด ํฐํ์ฌ์ ์คํํ๋ค. ์ฌ๊ธฐ์ Service Client Test๋ผ๋ ipynb ํ์ผ์ ๋ง..