1주차 ‐ 임베디드 시스템 - Jhyemin06/Embedded-System_2026 GitHub Wiki
1. 임베디드 시스템
임베디드이란?
- 임베디드(Embedded) : '내장된', '내장형' 뜻임.
- 임베디드 시스템: 더 큰 시스템의 일부로 내장된 것이라 이해할 수 있음
- 즉, 기계나 기타 제어를 위해 특정한 기능을 수행하는 컴퓨터 시스템으로 장치 내의 전자 시스템
- 쉽게 말하자면, 주어진 상황에 따라 특정 시스템이나 기능을 작동시키기 위해 수행됨.
- 세탁기, 자동차, 도어락 등의 장치 안에서 프로그램을 실행시킴.
2. 범용,전용 컴퓨터 차이
범용 컴퓨터 vs 전용 컴퓨터
- 범용 컴퓨터(General-Purpose Computer): 다양한 프로그램, 여러 프로그램을 설치해 여러 작업을 수행하며 사용자의 편의성을 향상.
- 전용 컴퓨터(Special-Purpose Computer): 오직 한 가지의 목적이나 처리를 위해 특정 기능을 안정적으로 수행.
- 공통점
- 학습 - 개발 - 제어 등 폭넓게 활용
- 다양한 OS/언어 지원, 유연한 개발 가능
- 다양한 인터페이스 지원
- 차이점
- 두 컴퓨터는 목적이 다르다.
- 범용 컴퓨터는 다양한 작업을 위한 것이라면 전용 컴퓨터는 특정한 기능을 수행하기 위한 것이다.
- 전용 컴퓨터는 범용 컴퓨터에 비해 구조가 단순하고 저렴함.
- 범용 컴퓨터는 전용 컴퓨터에 비해 다양한 작업과 프로그램 설치 실행 가능 및 풍부한 자원을 활용 가능함.
- 두 컴퓨터는 목적이 다르다.
임베디드 시스템은 전용 컴퓨터인가?
임베디드 시트템은 다양한 작업을 실행하는 범용 컴퓨터와 다르게 세탁기, 신호등, 제어기 등 하나의 정해진 기능 만을 수행함으로 전용 컴퓨터이다.
3. Arduino MCU & Raspberry Pi SBC
4. 임베디드 시스템의 응용분야
- 가전/전자 기기
- 차량/교통
- 드론
- 다양한 단말기
실시간 시스템(Real-Time System)
- 정해진 시간에 작업 수행이 보장되는 것, 외부 이벤트를 일정한 시간 내에 처리해야 하는 시스템
- 정해진 시간 내 반드시 또는 가급적 작업을 완료해야 하는 결정적 시스템(deterministic)
- 경성 실시간 시스템(hard real-time): 시간 제약의 위반이 심각한 결과를 초래, 시간 제약은 반드시 지켜져야 함
- 연성 실시간 시스템(soft real-time): 시간 제약의 위반이 QoS(서비스 품질)의 저하를 유발, 시간 제약은 가급적 지켜져야 함
빠른 처리와 실시간 처리의 의미는 같지 않다.
임베디드 시스템은 실시간성외에도 품질도 중요하다.
- 신뢰성
- 안정성
- 저전력
- 저비용
- 소형화
- 보안
5. AI 활용
- AI 활용시 장점
- 복잡한 인식과 판단 가능
- 네트워크 없이도 동작하고 응답 지연을 줄임.
- 영상,음성 등 원본을 로컬 처리해 개인정보 전송을 줄임.
- 단점
- 제한된 메모리, 연산, 전력에 맞게 모델을 최적화 하고 고려해야 함.
6. Raspberry Pi
라즈베리 파이란?
- 라즈베리 파이 재단에서 컴퓨터 교육 증진을 위해 개발한 신용카드 크기의 작은 싱글 보드 컴퓨터이다.
주요부품
Raspberry pi는 연결 방식에 따라 같은 보드를 사용하더라도 다른 역할을 수행할 수 있다
- 개발중에는 PC처럼 사용, 완성 후에는 서버나 전용 장치로 운용.
Raspberry OS
사용 목적에 맞게 운영체제를 선택한다.
부팅 과정
안전 규칙, 절차 및 중요 수칙
중요 안전 수칙
- GPIO 신호 전압은 3.3V, 5V를 직접 입력 X
- LED에는 220~330Ω 정도의 전류 제한 저항을 사용한다.
- 모터·릴레이처럼 큰 전류가 필요한 장치는 드라이버를 사용한다.
- 배선을 바꾸기 전 전원을 끄고 핀 번호와 공유 GND를 확인한다.
- 보드는 가장자리를 잡고 GPIO 핀과 커넥터에 힘을 가하지 않는다.
- microSD 기록 중 전원을 제거하지 않고 종료 후 전원을 분리한다.
첫 부팅에서 상태 LED와 시스템 상태를 확인
실습
기본 시스템 정보를 터미널에서 확인
#장치 이름과 IP 주소
hostname
hostname -I
#운영체제와 커널
cat /etc/os-release
uname -a
#CPU,메모리, 저장공간
lscpu
free -h
df -h
#날짜와 시간
timedatectl status
#Python
python3 --version
실행결과
- 라즈베리 파이 미보유로 확인 불가
Python 프로그램으로 실행 환경 확인
- Python 프로그램 환경에서 실습 진행함.
#hello.py
from datetime import datetime
import platform
import socket
print("Hello, Raspberry Pi!")
print("Host: ", socket.gethostname())
print("Python: ", platform.python_version())
print("Time:", datetime.now())
#실행
python3 hello.py
#예상 결과
Hello, raspberry Pi!
Host: raspberrypi
Python: 3.1X.X
Time: 2026-09-13...
실행 결과
안전한 종료
# 패키지 목록 갱신과 업그레이드
sudo apt update
sudo apt upgrade
# Raspberry Pi 설정
sudo raspi-config
# 재부팅
sudo reboot
# 안전한 정료
sudo shotdown -h now
# 또는
sudo power off
# 활동 LED가 멈춘 뒤 전원 분리