터틀봇

라즈베리파이, OpenCR 세팅

haniru 2026. 1. 20. 23:40

1단계: 라즈베리 파이 OS 설치 및 부팅 절차는 다음과 같다.

1. SD 카드에 OS 굽기 (노트북에서 작업)

라즈베리 파이는 일반 컴퓨터와 달리 하드디스크가 없으므로 SD 카드에 운영체제(OS)를 직접 설치해야 한다.

1. 준비물: 노트북, SD 카드 리더기, MicroSD 카드(32GB 이상 권장).

2. 프로그램 설치: 노트북에 Raspberry Pi Imager를 설치하고 실행한다.

3. 장치 선택: 설정 단계에서 본인이 가진 모델(예: Raspberry Pi 4)을 선택한다.

4. 운영체제 선택: Ubuntu Server 24.04.3 LTS (64-bit) 선택 (Desktop 선택시 모니터가 있어야함)

5. 저장소 선택:

6. 설정 편집 (매우 중요): 오른쪽 하단의 톱니바퀴 아이콘을 누른다.

  • 호스트 이름: turtlebot으로 설정한다.
  • 사용자 이름: ubuntu, 비밀번호: 본인이 기억하기 쉬운 것으로 설정한다.
  • 와이파이 설정: 집과 학교에서 쓸 와이파이 이름(SSID)과 비밀번호를 미리 입력한다.

2. 하드웨어 연결 및 부팅 (라즈베리 파이 본체 작업)

OS 설치가 끝난 SD 카드를 가지고 이제 라즈베리 파이를 깨워야 한다.

  1. SD 카드 삽입: 금색 접점이 위를 향하게 하여 라즈베리 파이 뒷면의 슬롯에 끝까지 밀어 넣는다.
  2. 모니터/키보드 연결: Micro HDMI 케이블을 이용해 모니터와 연결하고, USB 포트에 키보드와 마우스를 꽂는다.
  3. 전원 공급: USB-C 케이블을 꽂아 전원을 넣는다. (별도의 전원 버튼 없이 케이블을 꽂으면 바로 켜진다.)
  4. 초기 부팅: 화면에 글자들이 올라오며 부팅이 시작된다. 첫 부팅은 시스템 설정으로 인해 평소보다 오래 걸릴 수 있으니 바탕화면이나 로그인 프롬프트가 나올 때까지 기다린다.

3. 로그인 및 IP 확인

  1. 로그인: 아까 설정한 ID(ubuntu)와 비밀번호를 입력한다.
  2. 네트워크 확인: 터미널을 열고(Ctrl + Alt + T) hostname -I를 입력하여 현재 할당된 IP 주소를 확인한다. 이 주소를 메모해 두어야 내일 노트북(WSL2)에서 원격으로 접속할 수 있다.

 

윈도우 PowerShell 열고 명령어 입력 (라즈베리파이 ip 확인 위해)

arp -a

 

ssh 연결 (arp -a로 찾은 ip 입력)

ssh ubuntu@192.168.0.15

 

우분투 안으로 들어왔을 때 패키지 업그레이드

# 패키지 목록 업데이트 및 시스템 업그레이드
sudo apt update && sudo apt upgrade -y

 

 

필수도구 설치

sudo apt install -y net-tools curl git vim

 

Locale 설정

sudo locale-gen ko_KR ko_KR.UTF-8
sudo update-locale LC_ALL=ko_KR.UTF-8 LANG=ko_KR.UTF-8
export LANG=ko_KR.UTF-8

 

ROS 2 Jazzy 설치 (자동화 스크립트 방식)

원래는 복잡한 과정을 거쳐야 하지만, 초보 팀장을 위해 가장 간단한 방법으로 안내한다.

① 저장소 설정 및 키 등록

sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $VERSION_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

 

② ROS 2 Jazzy 설치 (약 10~15분 소요)

sudo apt update
sudo apt install ros-jazzy-ros-base ros-dev-tools -y
  • 로봇 본체용이므로 가벼운 ros-base 버전을 설치한다.

환경 설정 (매우 중요)

터미널을 켤 때마다 ROS 2 명령어를 인식할 수 있도록 설정해야 한다.

echo "source /opt/ros/jazzy/setup.bash" >> ~/.bashrc
source ~/.bashrc

터틀봇3 및 다이나믹셀 필수 패키지 설치

로봇의 모터(다이나믹셀)를 구동하고 센서 데이터를 처리하기 위한 드라이버들을 설치한다.

# 터틀봇3 메시지 및 브링업 패키지
sudo apt install ros-jazzy-turtlebot3-msgs ros-jazzy-turtlebot3-bringup -y

# 다이나믹셀 제어를 위한 SDK 및 드라이버
sudo apt install ros-jazzy-dynamixel-sdk ros-jazzy-turtlebot3-node -y

# 센서 데이터 처리를 위한 툴
sudo apt install ros-jazzy-hls-lfcd-lds-driver -y

2. AI 모델을 위한 웹캠 드라이버

가지고 있는 USB 웹캠을 통해 숫자를 인식하려면, 카메라 영상을 ROS 2 메시지로 변환해 주는 드라이버가 필요하다.

# v4l2 카메라 드라이버 설치
sudo apt install ros-jazzy-v4l2-camera -y

3. 환경 변수 설정 (매우 중요)

라즈베리 파이가 어떤 로봇 모델을 제어하는지, 그리고 어떤 네트워크 ID를 사용하는지 명시해야 한다. .bashrc 파일 끝에 아래 내용을 추가한다.

# 터틀봇 모델 설정 (burger)
echo 'export TURTLEBOT3_MODEL=burger' >> ~/.bashrc

# ROS Domain ID 설정
# 학교 실습실에서 다른 팀과 섞이지 않으려면 고유한 번호가 필요하다.
echo 'export ROS_DOMAIN_ID=97' >> ~/.bashrc

# 변경사항 적용
source ~/.bashrc

4. 내일 실습 시 해야 할 일

  1. OpenCR 펌웨어 확인: 라즈베리 파이와 OpenCR을 USB로 연결하고, 모터 제어를 위한 펌웨어가 깔려 있는지 확인한다.
  2. 브링업(Bringup) 실행: 아래 명령어를 입력했을 때 에러 없이 로봇 소리가 나면 성공이다.
    ros2 launch turtlebot3_bringup robot.launch.py
    

'터틀봇' 카테고리의 다른 글

터틀봇 펌웨어를 수정해서 센서 데이터값 가져오기  (0) 2026.04.13
OpenCR 세팅  (0) 2026.01.21
wsl2 에 터틀봇 설치  (0) 2026.01.20