====== ROS2 학습에 대한 메뉴얼 ====== 이 글은 노션으로 작성되었습니다. 원본 링크 : https://jh00817.notion.site/ROS2-9f8cfb4f72184437b86b53efc05aebd9?pvs=4 ====== ROS2 설치 ====== ===== 우분투를 어디에 설치할 것인가? ===== ROS2는 윈도우, 맥, 리눅스 등 모든 개발환경을 지원하지만, 가장 안정적이고 주류가 되는 환경은 리눅스입니다. 리눅스 중 가장 유저가 많은 우분투를 주로 로봇을 개발할 때 사용합니다. ==== 듀얼부팅(추천) ==== 조금 어렵습니다. 하지만 대부분의 유저가 이를 사용하며, 가장 오류가 없는 안정적인 방식입니다. usb가 필요하고요, ventoy 등의 프로그램을 통해 os를 설치하시면 됩니다. ISO 파일은 공식 홈페이지에서 다운 받으시면 됩니다. [Download Ubuntu Desktop | Download | Ubuntu](https://ubuntu.com/download/desktop) 참고자료 : [Ubuntu 설치 - KAsimov Wiki](https://kasimov.korea.ac.kr/dokuwiki/doku.php/activity/public/reference/linux/ubuntu-install) ==== 윈도우 WSL2 사용 ==== 윈도우에서 WSL2를 통해 우분투를 설치하는 것이 가능합니다. 저희는 Ubuntu 22.04 LTS Desktop 버전을 사용하고 있고, 이를 Microsoft store 에서 `ubuntu 22.04` 를 검색하셔서 설치하시면 됩니다. [Get Ubuntu 22.04.2 LTS from the Microsoft Store](https://apps.microsoft.com/store/detail/ubuntu-22042-lts/9PN20MSR04DW?hl=ko-kr&gl=kr) 참고 : [Windows Subsystem for Linux(WSL) - KAsimov Wiki](https://kasimov.korea.ac.kr/dokuwiki/doku.php/activity/public/reference/wsl) ==== 가상머신을 통한 우분투 구동 ==== 컴퓨터가 맥인 경우 추천 드리는 방법입니다. 윈도우보다 가상머신이 잘 되어 있기 때문에 높은 성능을 내지만, 아무래도 네이티브인 듀얼부팅을 통한 우분투보다는 느리고, 안정적이지 않은 모습을 보여줍니다. 맥은 VMware fusion, 유료로는 Parallels를 추천 드립니다. 윈도우는 추천하지 않지만 VMware 등을 추천드립니다. 참고 : (컴퓨터가 맥인 경우) [[Mac] VMware 가상머신으로 Ubuntu 설치하기](https://velog.io/@rara_kim/Mac-VMware-가상머신으로-Ubuntu-설치하기) ===== 우분투에 관해서 ===== 우분투는 리눅스라는 컴퓨터 Operationg System 중 하나 입니다. 윈도우, 맥 이후 가장 많이 쓰이는 운영체제이며, 주로 개발자들이 많이 사용합니다. 공식 문서에서는 로스에서 윈도우와 맥을 지원한다고 적혀있지만, 불안정하기 때문에 아직까지는 우분투(리눅스) 설치가 필수적입니다. 다음은 우분투(리눅스)의 명령어 관해 설명된 글 입니다. [Linux 명령어 기초 - KAsimov Wiki](https://kasimov.korea.ac.kr/dokuwiki/doku.php/activity/public/reference/linux/basic-commands) ===== ROS2 설치 ===== 공식 홈페이지를 참고 바랍니다. [ROS 2 Documentation — ROS 2 Documentation: Humble documentation](https://docs.ros.org/en/humble/index.html) 혹은 밑에 소개하는 책에서 ROS2 설치를 설명하고 있습니다. ====== ROS2 를 어떻게 배울 것인가 ====== ===== 1. (추천) ROS2 공식 홈페이지 ===== [ROS 2 Documentation — ROS 2 Documentation: Humble documentation](https://docs.ros.org/en/humble/index.html) ==== Tutorial - Beginner : CLI & CL 를 완료 ==== Tutorial에서 비기너 단계만 하셔도 어느정도 기초적인 프로그래밍, 로스에 대해 알고 계신다 생각하시면 되겠습니다. 이후 인터미디언트 단계 등 추가로 공부하시고 싶으시다면 추천드립니다. ===== 2. ROS2 책을 읽음 ===== 우리나라 최고의 로봇공학자, 표윤석 박사님의 ‘****ROS 2로 시작하는 로봇 프로그래밍’ 을 읽으며 배우시면 될 것 같습니다. 이는 로스****의 공식홈페이지를 변역 및 추가로 설명해 놓은 것이고요, 구매를 하셔도 되지만 동방에 있습니다. 그리고 잘 안쓰게 되고 비싸서 동방에서 보시거나 1의 방안을 추천드립니다. [](https://product.kyobobook.co.kr/detail/S000001891112) ===== 3. 오로카 네이버 카페 참고 ===== [오픈소스 소프트웨어 & 하드웨어: 로... : 네이버 카페](https://cafe.naver.com/openrt) 에서 **000 로봇 운영체제 ROS 강좌 목차를 보면 됩니다.** [오픈소스 소프트웨어 & 하드웨어: 로... : 네이버 카페](https://cafe.naver.com/openrt?iframe_url_utf8=/ArticleRead.nhn%3Fclubid=25572101%26menuid=30%26boardtype=L%26page=1%26specialmenutype=%26userDisplay=15%26articleid=24070) ===== 4. Udemy 강좌 ===== Udemy 는 프로그래머를 위한 인터넷 강의 홈페이지입니다. 여기서 로스2도 많은 강좌가 올라와 있습니다. [Online Courses - Learn Anything, On Your Schedule | Udemy](https://www.udemy.com/courses/search/?src=ukw&q=ros2) ====== ROS2를 어떻게 숙달할 것인가 ====== {{:activity:public:reference:20230812_174107.jpg?nolink&400|}} 동아리에 있는 다양한 로봇들, 터틀봇 4대와 오픈 메니퓰레이터 및 여러 로봇이 있다. ===== 1. Turtlebot3 를 구동시켜보며 배움 ===== [ROBOTIS e-Manual](https://emanual.robotis.com/docs/en/platform/turtlebot3/overview/) ===== 2. Open Manipulator 를 구동시켜보면서 배움( 비추 ) ===== [OpenMANIPULATOR-X](https://emanual.robotis.com/docs/en/platform/openmanipulator_main) ===== 3. 개인적인 프로젝트 혹은 동아리 프로젝트를 참여 ===== 프로젝트를 하다보면 배우는게 정말 많습니다. 1, 2의 방식도 좋지만 이에 비교해 배우는 양과 깊이가 수준이 다릅니다. 공식홈페이지 튜토리얼의 비기너 단계만 하셔도, 프로젝트를 진행하기에 무리가 없는 수준입니다. 이후.. ====== 이제 반복적인 프로젝트로 실력을 쌓습니다. ====== 이제 여기서 자신만의 연구주제를 잡아서, 논문을 읽는 등의 survey를 해서, 이론에 대한 궁금증이나 실현하고 싶은 이론적인 무엇인가 있다면, 이를 직접 로스를 통해 구현을 시켜보며 연구를 해보는 것을 추천드립니다. 질문은 dreambait011@naver.com 혹은 noelbait02@korea.ac.kr 로 주세요 !