[아두이노&라즈베리파이 완전정복 #3] 개발 환경 구축하기: 첫 번째 발걸음

2025. 5. 25. 10:59·하드웨어
반응형

안녕하세요! 드디어 실습을 시작할 시간이 왔습니다! 🚀

지난 강의에서 아두이노와 라즈베리파이 중 어떤 것을 선택할지 결정하셨나요? 이제 선택하신 플랫폼(또는 둘 다!)으로 실제 개발을 시작하기 위한 환경을 구축해보겠습니다.

많은 초보자들이 이 단계에서 막혀서 포기하곤 합니다. "뭔가 설치가 안 된다", "에러 메시지가 뭔지 모르겠다", "USB 연결이 안 된다" 같은 문제들 때문이죠. 하지만 걱정하지 마세요! 이 글을 따라하시면 누구나 쉽게 개발 환경을 완성할 수 있습니다. 💪

🎯 이번 강의에서 배울 내용

아두이노 개발 환경

  • Arduino IDE 설치 및 설정
  • 드라이버 설치와 포트 설정
  • 첫 번째 프로그램 업로드
  • 필수 라이브러리 설치

라즈베리파이 개발 환경

  • 라즈베리파이 OS 설치
  • 초기 설정과 원격 접속
  • 개발 도구 설치
  • GPIO 라이브러리 설정

공통 준비사항

  • 필수 도구와 부품 체크리스트
  • 자주 발생하는 문제 해결법
  • 개발 효율을 높이는 팁들

📋 시작하기 전 준비물 체크리스트

하드웨어 준비물

아두이노 개발용

✅ 아두이노 우노 보드 (정품 권장)
✅ USB A to B 케이블 (프린터 케이블과 동일)
✅ 브레드보드 (400홀 추천)
✅ 점퍼선 세트 (Male-Male, Male-Female)
✅ LED 몇 개 (빨강, 노랑, 초록)
✅ 저항 (220Ω, 1kΩ 각 10개씩)

라즈베리파이 개발용

✅ 라즈베리파이 4B (4GB 메모리 추천)
✅ 마이크로 SD카드 (32GB, Class 10 이상)
✅ SD카드 리더기
✅ 공식 전원 어댑터 (5V 3A)
✅ 마이크로 HDMI 케이블 (모니터 연결용)
✅ USB 키보드, 마우스
✅ 방열판 세트 (발열 방지용)

소프트웨어 준비물

✅ Windows/Mac/Linux 컴퓨터
✅ 안정적인 인터넷 연결
✅ SD카드 포맷 도구
✅ 텍스트 에디터 (추천 목록 후술)

🔧 아두이노 개발 환경 구축하기

1단계: Arduino IDE 다운로드 및 설치

Windows 사용자

  1. Arduino 공식 웹사이트 접속
  2. "Windows Win 10 and newer" 클릭
  3. "Just Download" 선택 (기부는 선택사항)
  4. 다운로드된 파일 실행하여 설치
🔍 설치 옵션 체크사항:
✅ Install USB driver (자동으로 체크됨)
✅ Associate .ino files (자동으로 체크됨)
✅ Add shortcuts (바탕화면 바로가기)

Mac 사용자

  1. Arduino 웹사이트에서 "Mac OS X" 선택
  2. DMG 파일 다운로드 후 실행
  3. Arduino.app을 Applications 폴더로 드래그

Linux 사용자 (Ubuntu 기준)

# 터미널에서 실행
sudo apt update
sudo apt install arduino

2단계: 아두이노 보드 연결 및 인식

USB 연결

  1. USB 케이블로 아두이노와 컴퓨터 연결
  2. 아두이노의 전원 LED가 켜지는지 확인
  3. L LED가 깜빡이면 정상 (기본 Blink 프로그램)

포트 확인 및 설정

  1. Arduino IDE 실행
  2. 도구(Tools) → 보드(Board) → Arduino Uno 선택
  3. 도구(Tools) → 포트(Port) 에서 연결된 포트 선택
    • Windows: COM3, COM4 등
    • Mac: /dev/cu.usbmodem... 형태
    • Linux: /dev/ttyACM0 등

🚨 드라이버 설치 문제 해결

Windows에서 포트가 인식되지 않는다면:

  1. 장치 관리자 열기 (Windows + X 키)
  2. 기타 장치 또는 포트에서 아두이노 찾기
  3. 노란색 느낌표가 있다면 우클릭 → 드라이버 업데이트
  4. 컴퓨터에서 드라이버 찾아보기
  5. Arduino IDE 설치 폴더의 drivers 폴더 선택

3단계: 첫 번째 프로그램 업로드

Hello World: LED 깜빡이기

  1. 파일(File) → 예제(Examples) → 01.Basics → Blink
  2. 코드 확인:
void setup() {
  // LED_BUILTIN은 보드의 내장 LED (13번 핀)
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // LED 켜기
  delay(1000);                       // 1초 대기
  digitalWrite(LED_BUILTIN, LOW);    // LED 끄기
  delay(1000);                       // 1초 대기
}
  1. → (업로드) 버튼 클릭
  2. 하단에 "업로드 완료" 메시지 확인
  3. 아두이노의 L LED가 1초 간격으로 깜빡이는지 확인

🎉 성공! 첫 번째 프로그램 완성

4단계: 시리얼 모니터 사용법

디버깅과 데이터 확인을 위한 필수 도구입니다.

시리얼 출력 예제

void setup() {
  Serial.begin(9600);  // 시리얼 통신 시작
  Serial.println("아두이노 시작!");
}

void loop() {
  Serial.println("Hello World!");
  delay(1000);
}

시리얼 모니터 열기

  1. 도구(Tools) → 시리얼 모니터(Serial Monitor)
  2. 오른쪽 하단에서 9600 baud 선택
  3. "아두이노 시작!" 메시지가 보이면 성공!

5단계: 필수 라이브러리 설치

라이브러리 매니저 사용법

  1. 도구(Tools) → 라이브러리 관리(Manage Libraries)
  2. 검색창에 라이브러리 이름 입력
  3. 설치(Install) 클릭

추천 라이브러리 목록

✅ DHT sensor library (온습도 센서용)
✅ Servo (서보 모터 제어용)
✅ LiquidCrystal (LCD 디스플레이용)
✅ WiFi (WiFi 통신용)
✅ ArduinoJson (JSON 데이터 처리용)

🥧 라즈베리파이 개발 환경 구축하기

1단계: 라즈베리파이 OS 설치

Raspberry Pi Imager 다운로드

  1. 공식 웹사이트 접속
  2. 운영체제에 맞는 Imager 다운로드
  3. 설치 후 실행

OS 이미지 굽기

  1. Raspberry Pi OS (32-bit) 선택 (초보자 추천)
  2. SD카드 선택 (32GB 이상 권장)
  3. 고급 옵션(Advanced Options) 클릭하여:
    • SSH 활성화
    • WiFi 설정 (SSID, 비밀번호)
    • 사용자명/비밀번호 설정
  4. 쓰기(Write) 클릭하여 굽기 시작

⚠️ 중요 팁

  • SD카드는 반드시 Class 10 이상 사용
  • 굽기 전에 SD카드 포맷 권장
  • 처음에는 모니터 연결해서 설정하는 것이 안전

2단계: 첫 부팅 및 기본 설정

하드웨어 연결

1. SD카드 삽입
2. HDMI 케이블로 모니터 연결
3. USB 키보드, 마우스 연결
4. 전원 케이블 연결 (마지막에!)

초기 설정 마법사

  1. 국가/키보드 설정: 대한민국, Korean
  2. 비밀번호 변경: 기본값(raspberry)에서 변경 필수
  3. WiFi 연결: 네트워크 선택 후 비밀번호 입력
  4. 업데이트: 최신 소프트웨어로 업데이트 (시간 소요)
  5. 재부팅 후 설정 완료

3단계: 원격 접속 설정 (SSH)

SSH 활성화

  1. 터미널 열기
  2. 설정 도구 실행:
    sudo raspi-config
  3. Interface Options → SSH → Enable 선택
  4. 재부팅

Windows에서 SSH 접속

# Windows PowerShell 또는 CMD에서
ssh pi@라즈베리파이IP주소

# 예시
ssh pi@192.168.1.100

IP 주소 확인 방법

# 라즈베리파이 터미널에서
hostname -I

4단계: 개발 도구 설치

시스템 업데이트

sudo apt update
sudo apt upgrade -y

Python 개발 환경

# Python 3 및 pip 설치 (대부분 기본 설치됨)
sudo apt install python3 python3-pip -y

# GPIO 라이브러리 설치
sudo apt install python3-rpi.gpio -y

# 추가 유용한 라이브러리들
pip3 install gpiozero
pip3 install picamera
pip3 install matplotlib
pip3 install requests

개발 에디터 설치

# Thonny IDE (Python 초보자용)
sudo apt install thonny -y

# Visual Studio Code (고급 사용자용)
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/
echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" | sudo tee /etc/apt/sources.list.d/vscode.list
sudo apt update
sudo apt install code -y

5단계: GPIO 테스트

간단한 LED 제어 테스트

# test_gpio.py
import RPi.GPIO as GPIO
import time

# GPIO 설정
GPIO.setmode(GPIO.BCM)
GPIO.setup(18, GPIO.OUT)  # 18번 핀을 출력으로 설정

try:
    while True:
        GPIO.output(18, GPIO.HIGH)  # LED 켜기
        time.sleep(1)
        GPIO.output(18, GPIO.LOW)   # LED 끄기
        time.sleep(1)
except KeyboardInterrupt:
    GPIO.cleanup()  # 정리

실행 방법

python3 test_gpio.py

🛠️ 개발 효율을 높이는 추가 도구들

텍스트 에디터/IDE 추천

무료 에디터

  • Visual Studio Code: 가장 인기있는 무료 에디터
  • Sublime Text: 가볍고 빠른 에디터
  • Notepad++: Windows 전용, 간단한 용도

아두이노 전용

  • PlatformIO: 전문가용 아두이노 개발 환경
  • Arduino IDE 2.0: 새로운 버전의 공식 IDE

라즈베리파이용

  • Thonny: Python 초보자 최적화
  • IDLE: Python 기본 IDE
  • Geany: 가벼운 다목적 IDE

유용한 온라인 도구들

회로 설계

  • Tinkercad: 온라인 아두이노 시뮬레이터
  • Fritzing: 회로도 그리기 도구
  • KiCad: 전문가용 PCB 설계 도구

코드 관리

  • GitHub: 코드 저장 및 버전 관리
  • Arduino Cloud: 온라인 아두이노 개발
  • Pastebin: 코드 공유 사이트

🚨 자주 발생하는 문제 해결법

아두이노 관련 문제

"포트를 찾을 수 없습니다"

해결 방법:
1. USB 케이블 확인 (데이터 전송용인지 확인)
2. 다른 USB 포트로 변경
3. 드라이버 재설치
4. 아두이노 보드 재부팅 (리셋 버튼)

"업로드 오류 발생"

해결 방법:
1. 올바른 보드 선택 확인
2. 올바른 포트 선택 확인
3. 다른 프로그램에서 시리얼 포트 사용 중인지 확인
4. 안티바이러스 소프트웨어 임시 비활성화

"컴파일 오류"

해결 방법:
1. 오타 확인 (대소문자, 세미콜론)
2. 필요한 라이브러리 설치 확인
3. 코드 예제를 정확히 복사했는지 확인

라즈베리파이 관련 문제

"부팅이 안 됨"

해결 방법:
1. SD카드 다시 포맷 후 OS 재설치
2. 전원 어댑터 확인 (5V 3A 이상)
3. SD카드 품질 확인 (Class 10 이상)
4. HDMI 케이블 연결 확인

"WiFi 연결 안 됨"

해결 방법:
1. 네트워크 이름과 비밀번호 재확인
2. 5GHz 대신 2.4GHz 네트워크 사용
3. 수동으로 WiFi 설정 파일 편집
4. USB WiFi 동글 사용 고려

"SSH 접속 안 됨"

해결 방법:
1. SSH 서비스 활성화 확인
2. 방화벽 설정 확인
3. IP 주소 재확인
4. 라우터 포트 포워딩 설정

공통 문제

"권한 오류"

Windows: 관리자 권한으로 실행
Mac/Linux: sudo 명령어 사용

"라이브러리 설치 실패"

해결 방법:
1. 인터넷 연결 확인
2. 방화벽/안티바이러스 확인
3. 수동 다운로드 후 설치
4. 다른 미러 서버 사용

💡 개발 환경 최적화 팁

작업 공간 설정

✅ 충분한 조명 확보
✅ 정전기 방지 매트 사용
✅ 부품 정리함 준비
✅ 멀티미터, 브레드보드 등 기본 도구 구비

백업 및 버전 관리

✅ 프로젝트 코드 GitHub에 백업
✅ 중요한 설정 파일 따로 보관
✅ SD카드 이미지 백업 (라즈베리파이)
✅ 라이브러리 목록 문서화

효율적인 디버깅

✅ 시리얼 모니터 적극 활용
✅ LED를 이용한 상태 표시
✅ 단계별 테스트 습관화
✅ 에러 메시지 구글링 스킬 향상

🎯 첫 번째 미니 프로젝트: "Hello, Hardware!"

환경 구축이 완료되었으니 간단한 프로젝트로 테스트해봅시다!

아두이노: 외부 LED 제어

// 13번 핀에 LED 연결
const int ledPin = 13;

void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
  Serial.println("LED 제어 시작!");
}

void loop() {
  digitalWrite(ledPin, HIGH);
  Serial.println("LED 켜짐");
  delay(500);

  digitalWrite(ledPin, LOW);
  Serial.println("LED 꺼짐");
  delay(500);
}

라즈베리파이: GPIO LED 제어

import RPi.GPIO as GPIO
import time

LED_PIN = 18

GPIO.setmode(GPIO.BCM)
GPIO.setup(LED_PIN, GPIO.OUT)

try:
    while True:
        GPIO.output(LED_PIN, GPIO.HIGH)
        print("LED 켜짐")
        time.sleep(0.5)

        GPIO.output(LED_PIN, GPIO.LOW)
        print("LED 꺼짐")
        time.sleep(0.5)

except KeyboardInterrupt:
    print("프로그램 종료")
    GPIO.cleanup()

마무리하며 🎉

축하합니다! 이제 여러분은 아두이노와 라즈베리파이 개발을 위한 모든 준비가 끝났습니다.

환경 구축 과정에서 몇 가지 오류를 만났더라도 괜찮습니다. 실제 개발자들도 항상 이런 문제들과 씨름합니다. 중요한 것은 포기하지 않고 하나씩 해결해나가는 것입니다.

이제 정말 재미있는 하드웨어 프로젝트들을 시작할 준비가 되었습니다! 다음 강의부터는 본격적으로 센서들을 다루고 실제 동작하는 시스템들을 만들어볼 예정입니다.

환경 구축 과정에서 어려움이 있으셨다면 댓글로 알려주세요. 함께 해결해나가겠습니다! 💪


💬 경험 공유해주세요!

  • 환경 구축 과정에서 어떤 어려움이 있었나요?
  • 첫 번째 프로그램이 성공적으로 실행되었나요?
  • 다음에 만들어보고 싶은 프로젝트가 있다면 댓글로 공유해주세요!

#아두이노 #라즈베리파이 #개발환경 #Arduino IDE #GPIO #초보자가이드 #하드웨어 #프로그래밍 #설치가이드

저작자표시 비영리 변경금지 (새창열림)

'하드웨어' 카테고리의 다른 글

Node-RED로 XY-MD02 온습도 센서 실시간 모니터링하기  (0) 2025.05.29
[아두이노&라즈베리파이 완전정복 #4] 전자공학 기초: 알아두면 쓸모있는 기본 지식  (3) 2025.05.26
[아두이노&라즈베리파이 완전정복 #2] 아두이노 vs 라즈베리파이: 어떤 것을 선택해야 할까?  (3) 2025.05.24
[아두이노&라즈베리파이 완전정복 #1] 아두이노와 라즈베리파이의 세계에 오신 것을 환영합니다!  (6) 2025.05.22
'하드웨어' 카테고리의 다른 글
  • Node-RED로 XY-MD02 온습도 센서 실시간 모니터링하기
  • [아두이노&라즈베리파이 완전정복 #4] 전자공학 기초: 알아두면 쓸모있는 기본 지식
  • [아두이노&라즈베리파이 완전정복 #2] 아두이노 vs 라즈베리파이: 어떤 것을 선택해야 할까?
  • [아두이노&라즈베리파이 완전정복 #1] 아두이노와 라즈베리파이의 세계에 오신 것을 환영합니다!
코샵
코샵
나의 코딩 일기장
    반응형
  • 코샵
    끄적끄적 코딩 공방
    코샵
  • 전체
    오늘
    어제
    • 분류 전체보기 (525) N
      • 상품 추천 (41) N
      • MongoDB (4)
      • 하드웨어 (5) N
      • 일기장 (4)
      • Unity (138)
        • Tip (41)
        • Project (1)
        • Design Pattern (8)
        • Firebase (6)
        • Asset (2)
      • 파이썬 (127)
        • Basic (40)
        • OpenCV (8)
        • Pandas (15)
        • PyQT (3)
        • SBC(Single Board Computer) (1)
        • 크롤링 (14)
        • Fast API (29)
        • Package (6)
      • Linux (4)
      • C# (97)
        • Algorithm (11)
        • Window (7)
      • TypeScript (48)
        • CSS (10)
      • Git (11)
      • SQL (5)
      • Flutter (10)
        • Tip (1)
      • System (1)
      • BaekJoon (6)
      • Portfolio (2)
      • MacOS (1)
      • 유틸리티 (1)
      • 서비스 (6)
      • 자동화 (3)
      • Hobby (10)
        • 물생활 (10)
        • 식집사 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 다비즈
  • 공지사항

  • 인기 글

  • 태그

    C#
    유니티
    카페24리뷰
    devlife
    긴유통기한우유
    스크립트 실행
    리뷰이관
    셀레니움
    상품 리뷰 크롤링
    programming101
    unity
    codingtips
    스크립트 실행 순서
    learntocode
    programmerlife
    라떼우유
    appdevelopment
    스마트스토어리뷰
    리뷰관리
    카페24리뷰이관
    ipcamera
    쇼핑몰리뷰
    리스트
    믈레코비타멸균우유
    파이썬
    codingcommunity
    cv2
    Python
    list
    rtsp
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
코샵
[아두이노&라즈베리파이 완전정복 #3] 개발 환경 구축하기: 첫 번째 발걸음
상단으로

티스토리툴바