๋ก๋ด ์ํํธ์จ์ด ์์ง๋์ด๋ก์ ์ค๋ด/์ค์ธ ์์จ์ฃผํ, ๋ฉํฐ๋ก๋ด ๊ด์ ์ํคํ
์ฒ ๋ถ์ผ์ ๊ด์ฌ์ ๊ฐ์ง๊ณ ํ๋ก์ ํธ๋ฅผ ์งํํ๊ณ ์์ต๋๋ค.
ํ์ฅ์์ ์ง์ ๊ตฌ๋๊ณ/์ผ์ ํ๋์จ์ด๋ฅผ ๋ค๋ฃจ๊ณ , ROS2 ๋ฐ ์๋ฎฌ๋ ์ด์
์ ํตํด ์ค์ ์ ์ฉ ๊ฐ๋ฅํ ๋ก๋ณดํฑ์ค ์๋ฃจ์
์ ๊ตฌํํ๋ ๋ฐ ์ง์คํ๊ณ ์์ต๋๋ค.
- ๊ธฐ๊ฐ: 2024.05 ~ 2025.01 (8๊ฐ์)
- ์ฑ๊ณผ: ํ๋๋ ์บ ํผ์ค ์๋ฒ ์๋น์ค์์ ๋ฐฐ๋ฌ ์์ ์๊ฐ 30% ๋จ์ถ (15๋ถ 40์ด -> 11๋ถ), ์ฌ๊ณ ๋ฐ์๋ฅ 75% ๊ฐ์ (20% -> 5%)
- ๊ธฐ์ : Python, C++, ROS2, Nav2, Open-RMF, Gazebo, API, Docker
- ์ฃผ์ ๊ธฐ์ฌ:
- Nav2 ํต์ฌ ํ๋ฌ๊ทธ์ธ(Planner, Controller, BT) ์ด์ ๋ฐ ํ๋ผ๋ฏธํฐ ์ต์ ํ๋ก ์ค์ธ ์ฃผํ ์์ ํ
- ์์ FSM์ผ๋ก ์ฃผํ ์ํ๋ฅผ ๊ด๋ฆฌํด ์ฃผํ ์ทจ์, ์ ์ง, ๋ณ๊ฒฝ, ์ฌ๊ฐ ๊ณผ์ ์ ์ ์ฐจํํ๊ณ ํ ๋ ๋ฉํธ๋ฆฌ๋ก ์ํ๋ฅผ ์ค์๊ฐ ๊ณต์
- Open-RMF ๊ธฐ๋ฐ ๊ด์ ๊ตฌ์กฐ์ ํ๋ฆฟ ์ฐ๋์ ์ค๊ณํ๊ณ , RMF ์์ /๊ฒฝ๋ก๋ฅผ FSM์ผ๋ก ๊ด๋ฆฌํด Nav2 ์ก์ ์ผ๋ก ์คํํ๋ ๋ก๋ด ํด๋ผ์ด์ธํธ ์ํคํ ์ฒ๋ฅผ ๊ตฌ์ถ
- RMF Core์ Traffic Editor ์ฐ๊ณ๋ก ์จ์ดํฌ์ธํธ ์ด์ ๊ท์น์ ์ฒด๊ณํํ๊ณ , ๊ตฌ๊ฐ ์๋, ๋๊ธฐ ์ง์ , ์ฐ์ ์์, ์์ ๊ฑฐ๋ฆฌ ๊ธฐ์ค์ ๋งต์ ๋ฐ์
- ํ๊ตญ ์ขํ๊ณ(EPSG ๊ณ์ด) ๋ณํ์ ํตํด ๊ตฌ๊ธ ์์ฑ ํ์ผ์ Traffic Editor์ RViz Satellite์ ์ ์ฉํด ํธ์ง ๋งต๊ณผ ํ์ฅ ๊ฐ ์ค์ฐจ ํด์, ๋ชจ๋ํฐ๋ง ํจ๊ณผ ๊ทน๋ํ
- Gazebo ์๋ฎฌ๋ ์ด์ ์ผ๋ก ์ฌ์ ๊ฒ์ฆ์ ์ํํ ํ ๋จ๊ณ์ ํ์ฅ ์ ์ฉ ์ ์ฐจ๋ฅผ ํตํด ์ด์ ๋ฆฌ์คํฌ ์ต์ํ
- ๋ก๊ทธ ์งํํ๋ฅผ ๋ฐํ์ผ๋ก ์ง์์ ์ฑ๋ฅ ๊ฐ์ ํ๋ก์ธ์ค ์ ๋ฆฝ์ ๊ธฐ์ฌ
- Docker๋ก ๋ฐฐ๋ฌ๋ก๋ด ๋ฐ ๊ด์ ์๋ฒ๋ฅผ ์ปจํ ์ด๋ํํ๊ณ ์๋น์ค๋ณ ์คํ ๊ฐ์ด๋๋ฅผ ์ ๋ฆฌํด ์จ๋ณด๋ฉ ์๊ฐ์ ๋จ์ถ
- ๐ ๋ฐฐ๋ฌ๋ก๋ด / ๊ด์ ์๋ฒ
- ๊ธฐ๊ฐ: 2025.02 ~ 2025.08 (6๊ฐ์)
- ์ฑ๊ณผ: RTK-GNSS ์์ด LiDAR ๊ธฐ๋ฐ Localization์ ์์ ํํด ์ฃผํ ์ค์ฐจ 40% ๊ฐ์ (25cm -> 15cm), ํ์ ๊ตฌ๊ฐ ์์ฃผ์จ์ 90%๋ก ํฅ์
- ๊ธฐ์ : Python, C++, ROS2, SLAM, Nav2, Gazebo, Serial, API, Docker
- ์ฃผ์ ๊ธฐ์ฌ:
- ๋ฌผ๋ฅ๋ก๋ด์ ๊ตฌ๋๋ถ์ ์ผ์๋ฅผ ํตํฉํ ํ๋์จ์ด ๋ ์ด์ด๋ฅผ ์ค๊ณํด Nav2, SLAM ๋ฑ ์์ ์คํ์ ์ผ๊ด๋ ํ ํฝ/TF๋ฅผ ์ ๊ณต
- Odom๊ณผ IMU๋ฅผ EKF๋ก ์ตํฉํด map, odom, base_link TF ์ฒด์ธ์ ์์ ํํ๊ณ ์ ๋ฐฉ 180๋ LiDAR์ ์์ผ ํ๊ณ๋ฅผ ๊ฐ๋ ๊ตฌ๊ฐ๋ณ ํํฐ๋ง์ผ๋ก ๋ณด์
- Cartographer๋ก ๋งตํ๊ณผ loop closure๋ฅผ ์ํํ๊ณ ์ด์์ AMCL Localization์ผ๋ก ์ ์ฐฉ, ๋ผ์ด๋ค ์์ผ ํ๊ณ๋ฅผ ๊ณ ๋ คํด ๋จ๊ณ๋ณ ํ๋ผ๋ฏธํฐ๋ฅผ ์ง์ ์กฐ์
- Nav2 ํต์ฌ ํ๋ฌ๊ทธ์ธ(Planner, Controller, BT) ์ด์ ๋ฐ ํ๋ผ๋ฏธํฐ ์ต์ ํ๋ก ์ค๋ด ํ์ ๊ตฌ๊ฐ ์ฃผํ ์์ ํ
- ์์ FSM์ผ๋ก ์ฃผํ ์ํ๋ฅผ ๊ด๋ฆฌํด ์ฃผํ ์ทจ์, ์ ์ง, ๋ณ๊ฒฝ, ์ฌ๊ฐ ๊ณผ์ ์ ์ ์ฐจํํ๊ณ ํ ๋ ๋ฉํธ๋ฆฌ๋ก ์ํ๋ฅผ ์ค์๊ฐ ๊ณต์
- Gazebo ์๋ฎฌ๋ ์ด์ ์ผ๋ก ์ฌ์ ๊ฒ์ฆ์ ์ํํ ํ ๋จ๊ณ์ ํ์ฅ ์ ์ฉ ์ ์ฐจ๋ฅผ ํตํด ๋ฆฌ์คํฌ ์ต์ํ
- ๋ก๊ทธ ๊ธฐ๋ฐ ์ด์ ์งํํ๋ฅผ ํตํด ์ง์์ ์ธ ์ฑ๋ฅ ๊ฐ์ ์ฒด๊ณ ์ ๋ฆฝ์ ๊ธฐ์ฌ
- Docker๋ก bringup, slam, nav2๋ฅผ ์ปจํ ์ด๋ํํ๊ณ ์๋น์ค๋ณ ์คํ ๊ฐ์ด๋๋ฅผ ๋ง๋ จํด ์จ๋ณด๋ฉ ์๊ฐ์ ๋จ์ถ
- ๐ ๋ฌผ๋ฅ๋ก๋ด
- GitHub: https://github.com/DeveloperKSH
- Email: kim1836113@naver.com
โญ๏ธ ๊พธ์คํ ๋ฐฐ์ฐ๊ณ ์คํํ๋ฉฐ, ์ค์ ํ๊ฒฝ์ ์ ์ฉ ๊ฐ๋ฅํ ๋ก๋ณดํฑ์ค ์๋ฃจ์ ์ ๋ง๋ค์ด๊ฐ๋ ์์ง๋์ด๊ฐ ๋๊ณ ์ ํฉ๋๋ค.