내일배움캠프(QA,QC_5기)

[내일배움캠프] QA/QC_5기 ( 68일차 )

lshxkwh 2026. 6. 23. 20:51

데이터 선정 배경 및 소개


1. 데이터 선정 배경

문제 인식

스마트 제조 현장에서는 로봇, 컨베이어, 그리퍼, 안전장치 등 다양한 설비가 연동되어 제품을 자동 조립한다. 이러한 자동화 공정에서는 설비가 정상적으로 동작하더라도 부품 누락, 파지 실패, 조립 순서 이상 같은 문제가 발생할 수 있다.

특히 부품이 누락되더라도 설비는 그냥 계속 동작하기 때문에 사람이 직접 확인하지 않으면 불량품이 그대로 다음 공정으로 넘어가는 문제가 있다. 수작업 확인 중심의 품질 관리는 반복성과 확장성이 낮아 자동화가 필요하다.

데이터 선정 이유

본 프로젝트에서 신라정보기술의 로봇 자동화 조립라인 데이터를 선정한 이유는 다음과 같다.

실무 연계성 실제 제조 현장에서 수집된 데이터로, 현업에서 발생하는 부품 누락 문제를 그대로 담고 있다. 단순한 실습용 데이터가 아닌 실제 공정 데이터를 분석하는 경험을 쌓을 수 있다.

멀티모달 구조 시계열 센서 데이터와 이미지 데이터를 동시에 제공한다. 센서 데이터로 공정 중 이상 징후를 탐지하고, 이미지 데이터로 최종 조립 불량을 검출하는 두 가지 접근을 모두 시도할 수 있다.

명확한 라벨 구조 부품 누락 유형이 Normal, NoNose, NoNose,NoBody2, NoNose,NoBody2,NoBody1 네 가지로 명확하게 정의되어 있어 지도 학습 분류 모델을 바로 적용할 수 있다.

균형잡힌 클래스 분포 전체 276 사이클 중 정상 138개, 이상 138개로 완벽하게 균형잡힌 데이터다. 클래스 불균형 문제 없이 모델링을 진행할 수 있다.


2. 데이터 소개

기본 정보

항목 내용

제공 기업 신라정보기술
도메인 스마트 제조, 로봇 자동화 조립라인
수집 기간 2023-12-11 ~ 2023-12-12 (약 29시간)
수집률 10Hz (0.1초마다 1번 기록)
총 데이터 974,836행 × 7개 파일
사이클 수 276개 완전 사이클
조립 제품 4피스 로켓 (NoseCone + Body1 + Body2 + Body3)

공정 구조

4대의 로봇이 순서대로 작업을 이어받아 로켓을 조립한다.

로봇 활성 구간 역할

R01 0 ~ 30초 초기 부품 파지 및 이송
R02 25 ~ 95초 부품 이송 및 조립 준비
R03 50 ~ 130초 NoseCone 조립
R04 200 ~ 310초 최종 조립 마무리

파일 구성

파일명 역할 주요 컬럼 행 수

R01_Data.csv 로봇 1호 센서 Gripper_Load, Gripper_Pot, 관절각도 6축 (B/L/R/S/T/U) 974,836
R02_Data.csv 로봇 2호 센서 동일 구조 974,836
R03_Data.csv 로봇 3호 센서 동일 구조 974,836
R04_Data.csv 로봇 4호 센서 동일 구조 974,836
Conveyor_Signals.csv 컨베이어 상태 VFD 온도 4채널, 스토퍼 ON/OFF 5개 974,836
FFCell_CycleManagement.csv 공정 사이클 관리 Q_Cell_CycleCount, I_MHS_GreenRocketTray 974,836
FFCell_SafetyManagement.csv 안전 시스템 상태 SafetyDoor 1/2, HMI_EStop, CabinetESTOP 974,836

주요 신호 설명

Gripper_Load 그리퍼(집게)가 부품을 집을 때 받는 하중 값이다. 부품을 제대로 집었을 때는 하중이 높고, 부품이 없거나 파지에 실패하면 하중이 낮게 나타난다.

Gripper_Pot 그리퍼의 개폐 위치를 나타내는 포텐셔미터 값이다. 그리퍼가 열리고 닫히는 정도를 수치로 기록한다.

관절각도 (B/L/R/S/T/U Joint) 로봇 팔의 6개 관절 각도를 각각 기록한다. 로봇이 움직일 때 각도가 변하고, 대기 중에는 고정된 값을 유지한다.

Q_VFD1~4_Temperature 컨베이어 모터를 제어하는 VFD(가변 주파수 드라이브) 장치의 온도다. 정상 운영 시 80~95°C 범위를 유지한다.

Q_Cell_CycleCount 현재 몇 번째 조립 사이클인지를 나타내는 카운터다. 이 값을 기준으로 데이터를 사이클 단위로 분할한다.

Description 이상이 발생한 시점에만 기록되는 컬럼으로, 어떤 부품이 누락됐는지를 나타낸다. 값이 없는 경우(결측)는 정상 상태를 의미한다.

라벨 구조

라벨 사이클 수 비율 의미

Normal 138 50.0% 정상 조립 완료
NoNose 39 14.1% NoseCone 누락
NoNose,NoBody2 45 16.3% NoseCone + Body2 누락
NoNose,NoBody2,NoBody1 54 19.6% NoseCone + Body2 + Body1 누락
합계 276 100%  

누락은 항상 NoseCone부터 시작되는 누적 구조다. Body2가 누락되면 반드시 NoseCone도 누락되어 있고, Body1이 누락되면 NoseCone과 Body2도 함께 누락된다.

데이터 품질 이슈

이슈 대상 컬럼 내용

100% 결측 CabinetESTOP 센서 미연결로 데이터 전혀 없음 → 분석 제외
49.5% 결측 Description 결측 = 정상 상태를 의미 → Normal로 대체
Float 오버플로 Q_VFD2~4_Temperature 센서 통신 오류로 ±1e36 ~ ±1e38 극단값 발생 → IQR 기준 제거 후 보간
음수 센서값 I_R01_Gripper_Load 최솟값 -259, 물리적으로 불가능한 값 → 0으로 클리핑