TurtleBot3 설치부터 실행까지 해보자!
TurtleBot3 설치부터 실행까지 해보자!
Remote PC (노트북)
노트북에는 Ubuntu 20.04 LTS(ROS noetic) 버전을 설치하였습니다.
Ubuntu 20.04. 버전 설치하기
https://releases.ubuntu.com/20.04/
Ubuntu 20.04.6 LTS (Focal Fossa)
Select an image Ubuntu is distributed on three types of images described below. Desktop image The desktop image allows you to try Ubuntu without changing your computer at all, and at your option to install it permanently later. This type of image is what m
releases.ubuntu.com
ROS noetic 설치도 해야합니다 Noetic 설치(http://wiki.ros.org/noetic/Installation/Ubuntu)
설명서 보고 천천히 명령어를 입력해서 설치하시면됩니다.
터틀봇3 SBC를 준비하자
여기서 SBC는 소형보드컴퓨터라고 생각하시면 됩니다.
터틀봇 공식 사이트 들어가 3. Quick Start Guide를 눌러준다
https://emanual.robotis.com/docs/en/platform/turtlebot3/overview/
1. PC Setup 설정
원격 PC에 ROS설치하기
$ sudo apt update
$ sudo apt upgrade
$ wget https://raw.githubusercontent.com/ROBOTIS-GIT/robotis_tools/master/install_ros_noetic.sh
$ chmod 755 ./install_ros_noetic.sh
$ bash ./install_ros_noetic.sh
종속 ROS 패키지 설치하기
$ sudo apt-get install ros-noetic-joy ros-noetic-teleop-twist-joy \
ros-noetic-teleop-twist-keyboard ros-noetic-laser-proc \
ros-noetic-rgbd-launch ros-noetic-rosserial-arduino \
ros-noetic-rosserial-python ros-noetic-rosserial-client \
ros-noetic-rosserial-msgs ros-noetic-amcl ros-noetic-map-server \
ros-noetic-move-base ros-noetic-urdf ros-noetic-xacro \
ros-noetic-compressed-image-transport ros-noetic-rqt* ros-noetic-rviz \
ros-noetic-gmapping ros-noetic-navigation ros-noetic-interactive-markers
TurtleBot3 패키지 설치하기
$ sudo apt install ros-noetic-dynamixel-sdk
$ sudo apt install ros-noetic-turtlebot3-msgs
$ sudo apt install ros-noetic-turtlebot3
RemotePC(노트북-컨트롤러) 와 ROS 와 연결하려면 설정이 필요하다
원격PC에서 우선 명령프롬프트(CMD)창을 열어서 Ifcofig 또는 ip a입력한다
그러면 현재PC 에대한 IP를 확인할수있습니다.
이제 IP를 확인하였으면 ROS IP설정을 업데이트 해보자
Remote PC(노트북)
$ nano ~/.bashrc
export ROS_MASTER_URI=https://방금 확인한 IP 확인번호 :11311
export ROS_HOSTNAME=방금 확인한 IP 확인번호
입력후 Ctrl_C 저장후 Ctrl +x 하면나오면된다.
다음 RemotePC(노트북) bashrc를 소스로 지정합니다.
$ source ~/.bashrc
2. SBC setup 설정하기
SBC란 소형 보드 컴퓨터라고 생각하시면 됩니다. 터틀봇3에 달려있는 라즈베리파이 버전을 확인을 해줍니다.
라즈베리파이 버전은 위 랑 뒷부분에 적혀있는 부분으로 확인이 가능하고 또한 구성요소가 다릅니다.
예를들어 HDMI 연결하는 부분 과 USB 포트만 보아도 확연히 차이가납니다.
라즈베리파이 3B: HDMI 포트 1개, USB 2.0 포트 4개
라즈베리파이 4B: HDMI 포트 2개, USB 3.0 포트 2개 + USB 2.0 포트 2개
![]() |
![]() |
라즈베리파이 3B | 라즈베리파이 4B |
이제 우리는 라즈베리파이 버전을 구별하는 방법도 확인을 하였고
SD카드 인식 여부 확인하기
이제 우리는 라즈베리파이의 버전을 구별하는 방법을 확인했으니,
다음 단계로 넘어가기 전에 SD카드가 Remote PC(노트북)에 제대로 인식되었는지 확인해야 합니다.
⚠️ 이 부분이 제대로 되지 않으면 추후 설정이나 설치 과정에서 문제가 생길 수 있습니다.
📌 ① SD카드 인식 확인 명령어
SD카드를 꽂은 후, **터미널(또는 명령줄)**을 열고 아래 명령어를 입력합니다:
💡 여기서 $USER는 현재 로그인된 사용자 이름입니다. 예: USER
📌 ② 확인 예시
아래와 같이 폴더 목록에 writable, system-boot 등이 보이면 SD카드가 정상적으로 인식된 것입니다.
✅ 위 폴더들이 보이면 다음 단계로 진행해도 됩니다.
PC에 microSD 슬롯이 없는 경우 microSD 카드 리더를 사용하여 필요한 복구 이미지를 SD 카드에 구워보자 SD 카드를 Remote PC에 끼워주세요 |
![]() |
Turtlebot3 SBC 이미지 다운로드 하드웨어 및 ROS 버전에 맞는 이미지 파일을 다운로드하세요. Noetic 버전 이미지는 Ubuntu 20.04를 기반으로 제작되었습니다. 밑에 이미지 주소는 https://emanual.robotis.com/docs/en/platform/turtlebot3/sbc_setup/#sbc-setup 들어가서 눌러주세요! |
|
![]() |
|
![]() |
라즈베리파이 버전에 맞는 이미지를 다운로드합니다.
다운로드한 파일의 압출을 풀면 .img로 된 파일이 나옵니다.
이제 원하는 도구를 선택하여 microSD 카드에 이미지를 구우세요. 예를 들어,
Raspberry Pi ImagerLinux Disks유틸리티를 사용할 수 있습니다.
밑에 주소를 들어가서 설치를 해주세요!
https://www.raspberrypi.com/software/
Raspberry Pi OS – Raspberry Pi
From industries large and small, to the kitchen table tinkerer, to the classroom coder, we make computing accessible and affordable for everybody.
www.raspberrypi.com
설치가 완료되면 RemotePC(노트북)
명령프롬프트(CMD)열은 다음 아래와 같은 명령어를 입력하시면 Raspberry PI Imager 가 나올것입니다.
$ sudo snap install rpi-imager
$ rpi-imager
- 클릭하세요 CHOOSE OS.
- 로컬 디스크에서 Use custom추출한 파일을 클릭 하여 선택합니다..img
- 클릭하여 CHOOSE STORAGEmicroSD 카드를 선택하세요.
- 클릭하여 WRITE이미지 굽기를 시작하세요.
디스크 유틸리티
Disks유틸리티는 최신 Ubuntu Desktop에 포함되어 있습니다. "Disks"를 검색하여 앱을 실행하세요.

- 왼쪽 패널에서 microSD 카드를 선택하세요.
- 옵션을 선택하세요 Restore Disk Image.
- .img로컬 디스크에서 파일을 엽니다 .
- Start Restoring...> 버튼을 클릭하세요 Restore.
파티션 크기 조정
복구 이미지 파일의 크기를 줄이고 microSD에 이미지를 굽는 데 걸리는 시간을 단축하기 위해 복구 파티션이 최소화되었습니다.
할당되지 않은 사용 가능한 공간을 활용하려면 파티션 크기를 조정하세요.
GParted GUI 도구 링크를 클릭한다음 밑에 빨간색 부분을 다운로드 하시면됩니다.
- 메뉴에서 microSD 카드를 선택합니다(장착된 위치는 시스템에 따라 다를 수 있습니다).
- 노란색 파티션을 마우스 오른쪽 버튼으로 클릭하세요.
- 옵션을 선택하세요 Resize/Move.
- 파티션의 오른쪽 가장자리를 오른쪽 끝까지 끕니다.
- 버튼을 클릭하세요 Resize/Move.
- Apply All Operations위쪽의 녹색 확인 버튼을 클릭하세요 .
WiFi 네트워크 설정 구성
- Alt+ Ctrl+ 키 를 눌러 터미널 창을 열고 TmicroSD 카드의 netplan 디렉터리로 이동합니다. 슈퍼유저 권한으로 파일
편집을 시작합니다 . [원격 PC]50-cloud-init.yaml
$ cd /media/$USER/writable/etc/netplan $ sudoedit 50-cloud-init.yaml
눌러 파일을 저장 하고 + 를 눌러 종료하세요 .CtrlSCtrlX
ROS 네트워크 구성
참고 : 기존 GPG 만료로 인해 ROS GPG 키 관련 오류가 발생하는 경우, GPG 키를 업데이트해야 할 수 있습니다. ROS GPG 키 만료 사고를 참조 하고 제시된 해결책을 따라 진행하세요.
SBC(라즈베리파이) 에서 아래 지침을 따르세요 .
- WiFi IP 주소를 확인하세요.
[Turtlebot3 SBC]$ ifconfig
- 파일 을 편집하세요 .bashrc.
[Turtlebot3 SBC]$ nano ~/.bashrc
- ROS_MASTER_URI설정 섹션을 찾은 ROS_HOSTNAME다음 IP 주소를 장치에 맞는 올바른 주소로 수정하세요. [Turtlebot3 SBC]
export ROS_MASTER_URI=http://{IP_ADDRESS_OF_REMOTE_PC}:11311 export ROS_HOSTNAME={IP_ADDRESS_OF_RASPBERRY_PI_3}
- Ctrl+ 를 눌러 파일을 저장 하고 + S를 눌러 nano 편집기를 종료합니다 .CtrlX
- 아래 명령어로 변경 사항을 적용하세요.
[Turtlebot3 SBC]$ source ~/.bashrc
새로운 LDS-02 구성
TurtleBot3 LDS는 2022년 모델부터 LDS-02로 업데이트되었습니다. TurtleBot3의 SBC(라즈베리파이)
에서 아래 지침을 따르세요 .
- LDS-02 드라이버를 설치하고 TurtleBot3 패키지를 업데이트하세요
[Turtlebot3 SBC]$ sudo apt update $ sudo apt install libudev-dev $ cd ~/catkin_ws/src $ git clone -b noetic https://github.com/ROBOTIS-GIT/ld08_driver.git $ cd ~/catkin_ws/src/turtlebot3 && git pull $ rm -r turtlebot3_description/ turtlebot3_teleop/ turtlebot3_navigation/ turtlebot3_slam/ turtlebot3_example/ $ cd ~/catkin_ws && catkin_make
- LDS_MODEL을 bashrc 파일로 내보냅니다. LDS 모델에 따라 LDS-01또는 를 사용하세요 LDS-02.
[Turtlebot3 SBC]$ echo 'export LDS_MODEL=LDS-02' >> ~/.bashrc $ source ~/.bashrc
OpenCR 설정
- 마이크로 USB 케이블을 사용하여 OpenCR을 Rasbperry Pi에 연결합니다 .
- OpenCR 펌웨어를 업로드하려면 Raspberry Pi에 필요한 패키지를 설치하세요 .
[TurtleBot3 SBC]$ sudo dpkg --add-architecture armhf $ sudo apt-get update $ sudo apt-get install libc6:armhf
- 특정 모델에 따라 OPENCR_MODEL 이름 에 burger또는 을 지정하세요 . [TurtleBot3 SBC]waffle
$ export OPENCR_PORT=/dev/ttyACM0 $ export OPENCR_MODEL=burger_noetic $ rm -rf ./opencr_update.tar.bz2
- 펌웨어와 필요한 로더를 다운로드한 후, 파일을 추출하여 업로드를 준비합니다. [TurtleBot3 SBC]
$ wget https://github.com/ROBOTIS-GIT/OpenCR-Binaries/raw/master/turtlebot3/ROS1/latest/opencr_update.tar.bz2 $ tar -xvf opencr_update.tar.bz2
- OpenCR에 펌웨어를 업로드합니다.
[TurtleBot3 SBC]$ cd ./opencr_update $ ./update.sh $OPENCR_PORT $OPENCR_MODEL.opencr
- TurtleBot3 Burger의 펌웨어 업로드가 성공적으로 완료되면 다음과 같습니다.
- 펌웨어 업로드가 실패하면 다음 지침에 따라 복구 모드를 통해 다시 업로드해 보세요. 복구 모드에서는 OpenCRSTATUS 의 LED가 주기적으로 깜박입니다.
- 버튼을 누르고 계세요 PUSH SW2.
- 버튼 을 누르세요 Reset.
- 버튼을 놓으세요 Reset.
- 버튼을 놓으세요 PUSH SW2.
OpenCR 테스트
참고 : OpenCR 테스트를 수행하는 동안 바퀴가 움직이지 않으면 " TurtleBot3 DYNAMIXEL 설정 지침 "을 참조하여 DYNAMIXEL의 구성을 업데이트하세요.
PUSH SW 1및 버튼을 사용하여 PUSH SW 2로봇이 제대로 조립되었는지 확인할 수 있습니다. 이 과정에서는 좌우 다이나믹셀 구성과 OpenCR 보드 펌웨어를 테스트합니다.

- TurtleBot3를 조립한 후 OpenCR 에 전원을 연결 하고 전원 스위치를 켜세요. 빨간색 불이 Power LED켜집니다.
- 로봇을 넓고 열린 공간의 평평한 지면에 놓으세요. 테스트 시 안전 반경 1미터(40인치)를 권장합니다.
- PUSH SW 1몇 초간 길게 누르면 로봇이 30cm(약 12인치) 앞으로 이동합니다.
- PUSH SW 2몇 초간 길게 누르면 로봇이 그 자리에서 180도 회전합니다.