로봇운영 소프트웨어로봇 운영 소프트웨어 개발모니터링 툴 개발
출제기준 좌표1·1·1·1
1과목 · 로봇운영 소프트웨어

로봇 제어기 특성

로봇 운영 소프트웨어 개발모니터링 툴 개발
# 로봇운영소프트웨어
01

📌 개요

  • 모니터링 툴 개발의 전제 = 감시 대상인 로봇 제어기(Robot Controller)가 어떤 장치이고 어떤 정보를 내놓는지 파악
  • 제어기 = 로봇의 "두뇌" → 모션 제어·입출력·통신·안전 기능 총괄
  • 모니터링 프로그램 = 제어기가 외부로 제공하는 상태 정보(관절 위치, 전류, 알람 등)를 받아서 동작
  • 출제 포인트: 제어기의 구성 요소·계층 구조, 실시간성 요구, 개방형/폐쇄형 분류, 모니터링 대상 상태 정보
02

📖 핵심 개념

로봇 제어기란 무엇인가

  • 로봇 제어기(Robot Controller) = 로봇의 동작을 계산하고 명령하는 컴퓨터 시스템
  • 비유: 팔다리(머니퓰레이터·구동부)를 움직이는 두뇌와 신경에 해당

제어기가 수행하는 핵심 기능은 네 가지다.

  • 모션 제어(Motion Control): 목표 경로를 따라 각 관절의 위치·속도·토크를 계산하고 서보 드라이브에 지령 (→ 액추에이터 제어구조 설계)
  • 입출력(I/O) 처리: 센서 입력을 읽고 그리퍼·컨베이어 등 주변장치에 신호 출력
  • 통신(Communication): 상위 서버·티치 펜던트·다른 장비와 데이터 교환
  • 안전(Safety) 기능: 비상정지, 속도 제한, 충돌 감지, 인터록(Interlock) 처리

제어기의 하드웨어 구성

구성 요소 역할
메인 프로세서(Main Processor) 작업 프로그램 해석, 경로 계산, 시스템 전체 관리
모션 제어부(Motion Control Unit) 각 축의 실시간 위치·속도 제어 연산
서보 드라이브(Servo Drive) 제어 지령을 받아 모터에 전류를 공급하는 전력 변환 장치
I/O 모듈 디지털·아날로그 입출력 (센서, 밸브, 릴레이 등)
통신 인터페이스 이더넷, 필드버스(EtherCAT, CAN 등), 시리얼, 무선
티치 펜던트(Teach Pendant) 작업자가 로봇을 수동 조작(조그)·교시·설정하는 휴대 단말
전원부·안전 회로 전원 공급, 비상정지 체인, 안전 릴레이

계층 구조 — 상위 제어와 하위 제어

  • 로봇 제어기는 보통 계층(Hierarchy) 으로 나뉨

  • 핵심: 계층마다 요구되는 제어 주기(실시간성) 가 다름

  • 상위 제어기(High-level Controller): 작업 계획, 경로 생성, 사용자 인터페이스, 서버 통신 담당. 주기 수십 ms 수준 또는 비실시간 — 일반 OS(Linux 등)로 충분한 영역

  • 하위 제어기(Low-level Controller): 관절 서보 제어, 센서 실시간 처리 담당. 주기 1 ms 이하의 경성 실시간(Hard Real-time) — RTOS나 전용 하드웨어가 필요 (→ 로봇 소프트웨어 운영체제)

  • 모니터링 프로그램은 대부분 상위(비실시간) 영역에서 동작 → 하위 계층이 만들어 내는 실시간 데이터를 전달받아 표시

  • 이유: 모니터링이 실시간 제어 루프를 방해하면 안 되기 때문

제어기의 분류 — 폐쇄형 vs 개방형

  • 폐쇄형(전용) 제어기(Closed/Proprietary Controller): 로봇 제조사가 하드웨어·소프트웨어를 일체형으로 공급. 안정적이고 안전 인증이 잘 되어 있으나, 내부 구조가 공개되지 않아 제조사가 제공하는 인터페이스(API)로만 상태를 읽을 수 있다
  • 개방형 제어기(Open Controller): PC 기반 또는 공개 플랫폼 기반으로 표준 OS·미들웨어(ROS 등) 위에 구성. 사용자가 기능을 추가·수정하기 쉬워 모니터링 툴 개발 자유도가 높다
  • 임베디드 제어기(Embedded Controller): 소형 로봇·모듈에 내장되는 저전력 보드 형태 (→ 임베디드 프로그래밍 특성)

모니터링 관점에서 본 제어기 특성

모니터링 툴 개발자가 파악해야 할 것은 "제어기가 무엇을, 어떤 통로로, 얼마나 자주 내놓는가"이다.

  • 상태 데이터(State Data): 관절별 위치·속도·전류·토크, TCP 포즈, 서보 온도, 부하율 — 주기적으로 갱신되는 수치
  • 알람·이벤트(Alarm/Event): 에러 코드, 경고, 비상정지 발생 — 비주기적으로 발생하는 사건
  • I/O 상태: 디지털·아날로그 입출력의 현재 값
  • 가동 정보: 운전 모드(자동/수동), 프로그램 실행 상태, 가동 시간
  • 제공 통로: 필드버스, 이더넷 소켓, 제조사 API/SDK, OPC UA 같은 표준 인터페이스 (→ 로봇 구성 요소 간 통신 프로토콜)

안전 관련 특성

제어기는 산업 안전 규격에 따라 안전 기능을 갖추며, 모니터링 툴도 이 상태를 표시해야 한다.

  • 비상정지(Emergency Stop, E-Stop): 즉시 동력을 차단하는 최우선 기능
  • 데드맨 스위치(Deadman Switch/Enabling Device): 티치 펜던트에서 손을 떼거나 꽉 쥐면 정지 — 수동 조작 중 안전 확보
  • 인터록(Interlock): 안전 도어 열림 등 조건 위반 시 동작 차단
  • 속도·영역 제한: 교시 모드 저속 제한, 작업 영역(Safety Zone) 제한
03

📊 다이어그램 · 수식

로봇 제어기 구성과 모니터링 데이터 흐름

DIAGRAM
graph TD
    TP["티치 펜던트
(교시·수동조작)"] --- MP SRV["상위 서버 · 모니터링 툴"] -- "이더넷 (상태 데이터·알람)" --- MP subgraph CTRL["로봇 제어기"] MP["메인 프로세서
작업 해석·경로 계산"] --> MC["모션 제어부
실시간 축 제어 (≤1ms)"] MP --> IO["I/O 모듈"] SAFE["안전 회로
비상정지·인터록"] --> MP end MC --> SD["서보 드라이브"] --> M["모터·액추에이터"] M -- "엔코더 피드백" --> MC IO --- EXT["센서·주변장치"]

제어 계층별 요구 주기

계층 담당 대표 제어 주기 실시간성
작업 계획·UI·서버 통신 상위 제어기 수십 ms ~ 초 비실시간/연성
궤적 생성(보간) 상위~중간 수 ms ~ 수십 ms 연성~경성
관절 서보 제어 하위 제어기 0.1 ~ 1 ms 경성 실시간
04

🎯 핵심 요약 · 암기 포인트

익힘 0 / 9카드를 눌러 뒤집고, 앞면에서 아는지 표시하세요.
Q · 1
로봇 제어기의 4대 핵심 기능은?
A
모션 제어, I/O 처리, 통신, 안전 기능
Q · 2
티치 펜던트(Teach Pendant)란?
A
작업자가 로봇을 수동 조작(조그)·교시·설정하는 휴대형 조작 단말
Q · 3
상위 제어기와 하위 제어기의 역할 차이는?
A
상위는 작업 계획·경로 생성·통신(비실시간~연성), 하위는 관절 서보 제어(1ms 이하 경성 실시간)
Q · 4
폐쇄형(전용) 제어기의 특징은?
A
제조사 일체형으로 안정적이지만 내부 비공개 — 제조사 API로만 상태 접근 가능
Q · 5
개방형 제어기의 특징은?
A
표준 OS·미들웨어(ROS 등) 기반으로 사용자 확장이 쉬워 모니터링 개발 자유도가 높다
Q · 6
모니터링 대상 데이터 중 주기적 데이터와 비주기적 데이터의 예는?
A
주기적 — 관절 위치·속도·전류·온도 등 상태 데이터, 비주기적 — 알람·에러 코드 등 이벤트
Q · 7
데드맨 스위치(Enabling Device)란?
A
티치 펜던트에서 손을 떼거나 꽉 쥐면 로봇이 정지하는 수동 조작 안전장치
Q · 8
서보 드라이브의 역할은?
A
제어 지령을 받아 모터에 전류를 공급하는 전력 변환 장치
Q · 9
모니터링 프로그램이 상위(비실시간) 영역에서 동작하는 이유는?
A
실시간 제어 루프를 방해하지 않기 위해 — 하위 계층 데이터를 전달받아 표시만 한다
05

✏️ 예상문제

1. 로봇 제어기의 계층 구조에서 경성 실시간(Hard Real-time) 이 요구되는 기능은?

① 사용자 인터페이스 표시 ② 관절 서보 제어 ③ 서버로의 로그 전송 ④ 작업 통계 리포트 생성

정답 및 해설

정답: ② 관절 서보 제어는 0.1~1 ms 주기를 어기면 진동·폭주 등 제어 실패로 직결되므로 경성 실시간이 필요하다. ①③④는 조금 늦어도 시스템이 파괴되지 않는 비실시간~연성 작업이다.

2. 티치 펜던트(Teach Pendant)에 대한 설명으로 옳지 않은 것은?

① 로봇을 수동으로 조그(Jog) 조작할 수 있다 ② 작업 위치를 교시(Teaching)하는 데 사용한다 ③ 데드맨 스위치 등 안전장치가 부착된다 ④ 관절 서보 제어 연산을 직접 수행한다

정답 및 해설

정답: ④ 서보 제어 연산은 제어기 내부의 모션 제어부가 수행한다. 티치 펜던트는 작업자용 조작·교시·설정 단말이며, 수동 조작 중 안전을 위해 데드맨 스위치를 갖춘다.

3. 개방형(Open) 제어기의 특징으로 가장 적절한 것은?

① 제조사가 하드웨어와 소프트웨어를 일체형으로만 공급한다 ② 내부 구조가 비공개라 제조사 API로만 접근한다 ③ 표준 OS와 공개 미들웨어 기반이라 사용자가 기능을 추가·수정하기 쉽다 ④ 안전 인증을 받을 수 없다

정답 및 해설

정답: ③ 개방형 제어기는 PC·공개 플랫폼 기반으로 ROS 같은 미들웨어를 활용해 확장이 쉽다. ①②는 폐쇄형(전용) 제어기의 설명이고, ④ 개방형이라도 설계에 따라 안전 인증을 받을 수 있다.

4. 모니터링 툴이 제어기로부터 받는 정보 중 비주기적(이벤트성) 정보에 해당하는 것은?

① 관절별 현재 위치 ② 서보 모터 온도 ③ 비상정지 발생 알람 ④ TCP 현재 포즈

정답 및 해설

정답: ③ 알람·에러 코드·비상정지는 사건이 발생할 때만 전달되는 비주기적 이벤트다. ①②④는 일정 주기로 계속 갱신되는 상태 데이터다.

06

🔗 관련 노트

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