모션 소프트웨어로봇 액추에이터 제어 소프트웨어 개발로봇액추에이터제어기 소프트웨어 구조 설계
출제기준 좌표3·3·3·1
3과목 · 모션 소프트웨어

액추에이터 구동원리

로봇 액추에이터 제어 소프트웨어 개발로봇액추에이터제어기 소프트웨어 구조 설계
# 모션소프트웨어
01

📌 개요

  • 제어 소프트웨어 설계의 전제 = "소프트웨어가 내보내는 신호가 어떤 경로로 모터를 돌리는가"를 알아야 함
  • 다루는 범위 = 모터가 도는 물리 원리(전자기력·정류) → 소프트웨어의 조종 수단 PWM·H-브리지·인버터 → 결과를 되읽는 엔코더까지 구동 체인 전체
  • 시험 출제 포인트: PWM 듀티비 계산, H-브리지 동작(슛스루·데드타임), BLDC 전자 정류(홀 센서), 인크리멘털/앱솔루트 엔코더 비교
02

📖 핵심 개념

모터가 도는 원리 — 전류가 힘을 만든다

  • 자기장 속 도선에 전류를 흘리면 힘 발생 = 전자기력
  • 방향 = 플레밍의 왼손 법칙(검지 = 자기장 B, 중지 = 전류 I, 엄지 = 힘 F) · 크기는 아래 식
F = B\,I\,l \quad (l: \text{자기장 속 도선의 길이})
  • 모터 = 이 힘이 회전축 둘레에서 토크가 되도록 도선(코일)을 감은 장치
  • 토크는 전류에 비례(\tau = k_t i) — 액추에이터 사양 분석에서 본 대로
  • 역으로 코일이 자기장 속에서 회전 → 전압 유도(발전기 원리) = 동역학 모델의 역기전력 k_e\omega
  • 모터와 발전기 = 같은 구조의 양방향 에너지 변환기

정류(Commutation) — 회전을 계속 이어가는 기술

  • 코일에 한 방향 전류만 흘리면 반 바퀴 후 힘의 방향이 반대가 되어 멈춤

  • 회전 지속 = 로터의 위치에 맞춰 전류 방향을 계속 바꿔 주기 = 정류(Commutation)

  • 기계식 정류 — 브러시 DC 모터: 회전축의 정류자(Commutator)와 고정된 브러시(Brush)가 물리적으로 접촉하며 전류 방향을 자동으로 전환. 구조는 간단하지만 브러시가 마모된다

  • 전자식 정류 — BLDC 모터: 브러시 대신 로터의 자석 위치를 센서로 읽고, 소프트웨어(드라이버)가 반도체 스위치를 켜고 꺼서 전류 방향을 전환한다. 로터 위치는 보통 홀 센서(Hall Sensor) 3개로 감지하며, 3개의 조합으로 전기각 60° 단위의 위치를 구분해 3상 코일 중 2개씩 차례로 통전하는 6-스텝 구동이 기본형이다

"브러시리스(Brushless)"의 의미

BLDC에서 브러시가 하던 일이 사라진 게 아니라 센서 + 전자 스위치 + 제어 로직으로 옮겨 갔다. 그래서 BLDC는 반드시 전용 드라이버(제어 회로)가 있어야 돌고, 정류가 소프트웨어의 일이 되었기 때문에 이 과목(제어 소프트웨어)에서 다루는 것이다.

PWM — 디지털 신호로 아날로그 전압을 흉내 내다

  • MCU는 0 V/전원 전압의 디지털 신호만 낼 수 있으나, 모터는 연속적인 전압 조절이 필요
  • 해결책 = PWM(Pulse Width Modulation, 펄스 폭 변조): 스위치를 매우 빠르게(수 kHz~수십 kHz) 켰다 껐다 하며 켜져 있는 시간의 비율(듀티비, Duty Ratio) 로 평균 전압 조절
V_{avg} = D \times V_{DC} \qquad (D: \text{듀티비 } 0{\sim}1)
  • 예: 전원 24 V, 듀티비 50% → 평균 12 V

  • 모터의 인덕턴스·관성이 빠른 스위칭을 평활 → 모터는 평균 전압에 반응

  • 왜 PWM인가: 스위치가 완전히 켜지거나(전압 강하 ≈ 0) 완전히 꺼진(전류 = 0) 상태만 오가므로 소자에서 열로 버리는 손실이 작다. 저항으로 전압을 낮추는 선형 방식보다 효율이 압도적으로 높다

  • 스위칭 소자: MOSFET(중소형·고속), IGBT(대전력) 같은 전력 반도체를 사용

  • PWM 주파수: 너무 낮으면 전류 맥동·소음(가청 주파수), 너무 높으면 스위칭 손실 증가 — 통상 수 kHz~수십 kHz에서 절충

H-브리지 — 전류 방향을 뒤집어 정·역회전

  • DC 모터 회전 방향 변경 = 전류 방향 뒤집기

  • H-브리지(H-Bridge) = 스위치 4개를 H자 모양으로 배치한 회로로:

  • 대각선 쌍 (Q1, Q4) ON → 전류가 좌→우로 흘러 정회전

  • 반대 대각선 (Q2, Q3) ON → 전류가 우→좌로 흘러 역회전

  • 여기에 PWM을 결합하면 방향 + 속도를 모두 제어할 수 있다

슛스루(Shoot-through)와 데드타임(Dead Time)

같은 쪽의 위아래 스위치(예: Q1과 Q2)가 동시에 켜지면 전원이 모터를 거치지 않고 직접 단락되어 소자가 파손된다(슛스루). 이를 막기 위해 한쪽을 끄고 반대쪽을 켜기 전에 둘 다 꺼져 있는 짧은 시간(데드타임) 을 반드시 삽입한다 — 펌웨어/PWM 하드웨어 설정의 필수 항목이다.

3상 모터(BLDC·PMSM)는 H-브리지를 확장한 3상 인버터(스위치 6개, 하프브리지 3개) 로 구동하며, 원리는 같다.

서보 드라이버의 구동 모드

모터 + 드라이버 + 엔코더를 묶은 서보 시스템은 상위 제어기가 어떤 물리량을 지령하느냐에 따라 세 가지 모드로 동작한다.

모드 지령 내부 동작 용도
토크(전류) 모드 목표 토크(전류) 전류 루프만 동작 힘 제어, 상위에서 직접 모션 제어
속도 모드 목표 속도 속도 + 전류 루프 컨베이어, 주행 바퀴
위치 모드 목표 위치(펄스) 위치 + 속도 + 전류 루프 로봇 관절 위치결정

모드 구분은 다단 제어 루프 중 어느 루프까지 드라이버가 담당하느냐의 차이다.

엔코더 — 구동 결과를 되읽는 눈

  • 폐루프 제어 = 실제 회전각·속도 측정이 필수

  • 대표 센서 = 엔코더(Encoder) (센서 일반론은 로봇센서 작동 원리)

  • 인크리멘털 엔코더(Incremental): 회전하면 펄스가 나온다. 90° 위상차가 나는 A상·B상 두 신호의 선후 관계로 회전 방향을 판별하고, 두 신호의 모든 엣지를 세면 분해능이 4배가 된다(4체배, Quadrature). 1회전 1펄스인 Z상(인덱스) 으로 기준점을 잡는다. 단점: 전원이 꺼지면 위치를 잃는다 → 켠 후 원점 복귀(Homing) 필요

  • 앱솔루트 엔코더(Absolute): 각도마다 고유 코드를 출력해 전원을 껐다 켜도 절대 위치를 즉시 안다. 원점 복귀가 필요 없어 로봇 관절에 애용되지만 비싸다

  • 속도는 보통 위치의 차분(단위 시간당 펄스 수)으로 계산한다. 그 밖에 자기식 리졸버(Resolver, 내환경성 우수)도 쓰인다

분해능 계산: 1회전당 P펄스(PPR) 엔코더를 4체배하면 카운트 수는 4P, 각도 분해능은 360°/4P.

03

📊 다이어그램 · 수식

액추에이터 구동 체인 전체 구조

DIAGRAM
flowchart LR
    SW["제어 소프트웨어
(MCU)"] -- "PWM 듀티비
+ 방향 신호" --> GD["게이트 드라이버"] GD --> PB["전력단
H-브리지 / 3상 인버터
(MOSFET·IGBT)"] PB -- "전압·전류" --> M["모터
(전류→토크: τ = kt·i)"] M -- "회전" --> L["감속기·부하"] M -.-> HS["홀 센서
(로터 위치 → 정류)"] L -.-> EN["엔코더
(위치·속도 피드백)"] HS -.-> SW EN -.-> SW

핵심 공식 모음

전자기력 (플레밍 왼손 법칙):

F = B\,I\,l

PWM 평균 전압 (듀티비 D, 전원 전압 V_{DC}):

V_{avg} = D \times V_{DC}, \qquad D = \frac{T_{ON}}{T_{ON}+T_{OFF}}

엔코더 분해능 (PPR P, 4체배 시):

\text{각도 분해능} = \frac{360°}{4P}

예: 2500 PPR 엔코더 → 360/10000 = 0.036°

04

🎯 핵심 요약 · 암기 포인트

익힘 0 / 11카드를 눌러 뒤집고, 앞면에서 아는지 표시하세요.
Q · 1
자기장 속 도선이 받는 전자기력의 크기 공식은?
A
F = B·I·l (자속밀도 × 전류 × 도선 길이), 방향은 플레밍 왼손 법칙
Q · 2
정류(Commutation)란 무엇인가?
A
회전을 지속하도록 로터 위치에 맞춰 코일 전류의 방향을 계속 바꿔 주는 것
Q · 3
브러시 DC 모터와 BLDC 모터의 정류 방식 차이는?
A
브러시 DC는 정류자·브러시의 기계식 정류, BLDC는 홀 센서 + 반도체 스위치의 전자식 정류
Q · 4
BLDC 6-스텝 구동에서 홀 센서 3개의 역할은?
A
로터 자석의 위치를 전기각 60° 단위로 구분해 어느 상에 통전할지 결정한다
Q · 5
PWM으로 모터 전압을 조절하는 원리는?
A
빠른 ON/OFF 스위칭에서 켜진 시간 비율(듀티비)로 평균 전압을 만든다 — Vavg = D × VDC
Q · 6
PWM 방식이 선형(저항) 방식보다 효율이 높은 이유는?
A
스위치가 완전 ON/OFF 상태만 오가므로 소자에서 열로 소모되는 손실이 작다
Q · 7
H-브리지의 역할과 구성은?
A
스위치 4개로 모터 전류 방향을 반전시켜 정·역회전을 만든다 (대각선 쌍끼리 ON)
Q · 8
슛스루(shoot-through)와 그 방지책은?
A
H-브리지 같은 쪽 상·하 스위치가 동시에 켜져 전원이 단락되는 것 — 전환 사이에 데드타임을 삽입해 방지
Q · 9
인크리멘털 엔코더에서 A상·B상 두 신호를 쓰는 이유는?
A
90° 위상차의 선후 관계로 회전 방향을 판별하고, 4체배로 분해능을 4배 높이기 위해
Q · 10
앱솔루트 엔코더가 인크리멘털보다 유리한 점은?
A
전원을 껐다 켜도 절대 위치를 바로 알아 원점 복귀(호밍)가 필요 없다
Q · 11
서보 드라이버의 3가지 구동 모드는?
A
토크(전류) 모드, 속도 모드, 위치 모드 — 드라이버가 담당하는 제어 루프의 범위 차이
05

✏️ 예상문제

1. 전원 전압 24 V인 모터 드라이버에서 PWM 듀티비를 25%로 설정했다. 모터에 인가되는 평균 전압은?

① 3 V ② 6 V ③ 12 V ④ 18 V

정답 및 해설

정답: ② V_{avg} = D \times V_{DC} = 0.25 \times 24 = 6 V. PWM은 켜진 시간의 비율만큼 평균 전압을 만든다.

2. H-브리지 회로에서 데드타임(dead time)을 삽입하는 이유로 옳은 것은?

① 모터의 회전 속도를 높이기 위해 ② 같은 쪽 상·하 스위치가 동시에 켜지는 단락(슛스루)을 막기 위해 ③ PWM 주파수를 높이기 위해 ④ 엔코더 신호와 동기화하기 위해

정답 및 해설

정답: ② 상·하 스위치가 겹쳐 켜지면 전원이 모터를 거치지 않고 직접 단락되어 스위칭 소자가 파손된다. 한쪽을 끄고 반대쪽을 켜기 전 둘 다 꺼진 시간(데드타임)을 두어 이를 방지한다.

3. BLDC 모터의 전자 정류에 대한 설명으로 옳지 않은 것은?

① 홀 센서로 로터의 자석 위치를 감지한다 ② 6-스텝 구동은 3상 중 2개 상에 차례로 통전한다 ③ 브러시와 정류자의 기계적 접촉으로 전류 방향을 바꾼다 ④ 정류를 수행하는 전용 구동 회로(드라이버)가 필요하다

정답 및 해설

정답: ③ 브러시·정류자의 기계식 정류는 브러시 DC 모터의 방식이다. BLDC는 브러시 없이(Brushless) 센서와 반도체 스위치로 정류하며, 그래서 드라이버 없이는 회전할 수 없다.

4. 1000 PPR 인크리멘털 엔코더를 4체배(quadrature) 방식으로 읽을 때 1회전당 카운트 수와 각도 분해능은?

① 1000 카운트, 0.36° ② 2000 카운트, 0.18° ③ 4000 카운트, 0.09° ④ 4000 카운트, 0.36°

정답 및 해설

정답: ③ 4체배는 A·B상의 상승·하강 엣지를 모두 세므로 1000 \times 4 = 4000 카운트/회전, 분해능은 360°/4000 = 0.09°.

5. 인크리멘털 엔코더를 사용하는 시스템에서 전원 투입 직후 원점 복귀(homing)가 필요한 이유는?

① 엔코더 분해능이 낮기 때문에 ② 전원이 꺼진 동안의 위치 정보를 잃어 절대 위치를 모르기 때문에 ③ 모터 토크가 부족하기 때문에 ④ PWM 듀티비를 초기화해야 하기 때문에

정답 및 해설

정답: ② 인크리멘털 엔코더는 상대적인 증감 펄스만 출력하므로 전원이 꺼지면 누적 위치가 사라진다. 그래서 기동 시 Z상(인덱스)이나 리미트 센서로 기준점을 다시 잡는다. 앱솔루트 엔코더는 이 과정이 필요 없다.

06

🔗 관련 노트

로봇소프트웨어개발기사 필기 · 학습 교재출제기준 2025.1.1 – 2027.12.31