머신비전 검사 시스템을 개발할 때 많은 개발자들이 검사 알고리즘에 집중하지만, 실제 현장에서는 검사 로그(Log) 관리 시스템이 프로젝트의 완성도를 결정하는 중요한 요소입니다.
검사 로그는 단순한 기록이 아니라 불량 원인 분석, 설비 유지보수, 품질 개선, 고객 클레임 대응을 위한 핵심 데이터입니다.
실제로 현장에서는 "왜 불량이 발생했는가?"보다 "그 당시 어떤 상황이었는가?"를 확인하는 경우가 훨씬 많습니다.
이번 글에서는 머신비전 검사 로그 관리 시스템의 구성 방법, 저장 전략, 실무 구현 방식, 실패 사례와 유지보수 노하우를 자세히 알아보겠습니다.
검사 로그(Log)란 무엇인가?
검사 로그는 머신비전 프로그램에서 발생하는 모든 이벤트를 기록하는 데이터입니다.
대표적으로 다음과 같은 내용을 저장합니다.
- 검사 시작
- 검사 완료
- PASS / FAIL 결과
- 검사 시간(Tact Time)
- 검사 점수(Score)
- Barcode
- 제품 번호(Serial Number)
- 작업자 정보
- 검사 모델(Recipe)
- PLC 통신
- MES 전송 결과
- Camera 연결 상태
- 프로그램 오류
- 사용자 로그인
- 설정 변경
로그는 문제가 발생했을 때 가장 먼저 확인하는 자료입니다.
검사 로그가 중요한 이유
예를 들어 고객이 "불량 제품이 출하되었다."고 연락했다고 가정해 보겠습니다.
검사 로그가 없다면 언제 검사했는지, 어떤 결과였는지, 검사 이미지가 존재하는지, 프로그램 오류가 있었는지 확인할 수 없습니다.
반면 로그가 잘 관리되고 있다면 몇 초 만에 모든 정보를 확인할 수 있습니다.
실무에서 가장 많이 사용하는 로그 구조
검사 시작
↓
Barcode 읽기
↓
Camera 촬영
↓
Vision 검사
↓
PASS / FAIL
↓
이미지 저장
↓
MES 전송
↓
PLC 완료
↓
검사 종료
각 단계마다 로그를 남기면 문제 발생 시 원인을 빠르게 찾을 수 있습니다.
권장 로그 항목
| 항목 | 설명 |
| DateTime | 발생 시간 |
| Event | 이벤트 종류 |
| Serial Number | 제품 번호 |
| Barcode | 바코드 |
| Recipe | 검사 모델 |
| Camera | 카메라 번호 |
| Result | PASS / FAIL |
| Score | 검사 점수 |
| Inspection Time | 검사 시간(ms) |
| PLC Status | PLC 상태 |
| MES Status | MES 전송 결과 |
| Image Path | 저장 이미지 |
| Error Code | 오류 코드 |
| Error Message | 오류 내용 |
| Operator | 작업자 |
로그 레벨(Log Level) 구분
모든 로그를 동일하게 저장하면 관리가 어렵습니다.
실무에서는 보통 다음과 같이 구분합니다.
INFO
정상적인 검사 진행
예)
[10:15:23]
Inspection Start
[10:15:25]
PASS
[10:15:26]
MES Send Complete
WARNING
프로그램은 동작하지만 주의가 필요한 상황
예)
Camera Exposure Changed
Barcode Retry
PLC Response Delay
ERROR
검사가 정상적으로 수행되지 않은 경우
예)
Camera Disconnect
PLC Timeout
MES Send Fail
Template Matching Fail
DEBUG
개발 및 유지보수용 상세 로그
예)
Template Score = 0.983
ROI=(325,182)
Alignment X=-0.52
Alignment Angle=0.18°
DEBUG 로그는 개발 단계에서 주로 사용하며, 운영 환경에서는 선택적으로 저장하는 것이 좋습니다.
로그 저장 방식
1. TXT 파일
가장 간단한 방식입니다.
예시
2026-07-11 10:15:21 Inspection Start
2026-07-11 10:15:23 PASS
2026-07-11 10:15:24 MES OK
장점
- 구현이 쉽다.
- 사람이 바로 읽을 수 있다.
단점
- 검색이 어렵다.
2. CSV 파일
엑셀에서 바로 열어볼 수 있습니다.
| Time | Result | Score | Tact |
| 10:15 | PASS | 99.3 | 180ms |
| 10:16 | FAIL | 81.2 | 192ms |
품질 분석에 많이 사용됩니다.
3. Database 저장
대규모 프로젝트에서는 SQL Server, MySQL, PostgreSQL 등을 사용합니다.
장점
- 검색이 빠름
- 통계 생성 가능
- 장기간 데이터 관리 가능
4. 이미지와 함께 저장
실무에서는 가장 많이 사용하는 방식입니다.
예)
Inspection
├─Log
│ 20260711.csv
│
├─Image
│ PASS
│ FAIL
│
└─Result
FAIL 이미지와 로그를 함께 관리하면 원인 분석이 매우 쉬워집니다.
실시간 로그 화면 구성
머신비전 프로그램 메인 화면에는 최근 로그를 표시하는 것이 좋습니다.
예)
10:15:21 Inspection Start
10:15:22 Barcode=A240711001
10:15:23 Camera Capture
10:15:23 PASS
10:15:24 MES Send OK
10:15:24 PLC Complete
최근 100~500개의 로그만 화면에 표시하고, 전체 로그는 파일이나 DB에 저장하는 것이 일반적입니다.
로그 저장 시 주의사항
다음 항목은 반드시 기록하는 것을 권장합니다.
- 검사 시작 시간
- 검사 종료 시간
- 검사 시간(Tact Time)
- 프로그램 버전
- 모델명(Recipe)
- 카메라 번호
- 작업자 ID
- 검사 결과
- 오류 코드
- 이미지 저장 경로
이 정보만 있어도 대부분의 문제를 분석할 수 있습니다.
실패 사례
사례 1. 오류 로그가 없어 원인 분석 실패
한 공장에서 하루에 한 번씩 검사 프로그램이 종료되는 문제가 발생했습니다.
하지만 오류 로그를 남기지 않아 원인을 찾지 못했고, 문제 해결까지 일주일 이상이 걸렸습니다.
해결 방법
- Exception 로그 저장
- Stack Trace 기록
- 프로그램 종료 원인 저장
사례 2. PASS만 저장하고 FAIL 로그를 누락
FAIL 제품은 저장하지 않도록 개발한 사례가 있었습니다.
결과적으로 고객 불량이 발생했을 때 검사 이력을 확인할 수 없었습니다.
해결 방법
FAIL 제품은 반드시 다음 항목을 저장합니다.
- 검사 이미지
- 검사 결과
- NG 코드
- 측정값
- 검사 시간
사례 3. 로그 파일이 너무 커져 프로그램 속도 저하
모든 로그를 하나의 TXT 파일에 저장하여 수개월 동안 운영한 결과 파일 크기가 수 GB까지 증가했습니다.
해결 방법
- 하루 단위 또는 월 단위로 로그 파일 분리
- 오래된 로그 자동 압축
- 보관 기간 정책(예: 6개월 또는 1년) 적용
실무 노하우
프로젝트 경험상 가장 추천하는 로그 저장 구조입니다.
이 구조를 사용하면 날짜별 검색과 백업이 편리하며, 유지보수 효율도 크게 향상됩니다.
자주 묻는 질문(Q&A)
Q1. 모든 검사 로그를 저장해야 하나요?
가능하면 저장하는 것이 좋습니다. 다만 저장 공간을 고려하여 오래된 로그는 압축하거나 삭제 정책을 운영하는 것이 효율적입니다.
Q2. PASS 이미지도 모두 저장해야 하나요?
고객 요구사항에 따라 다르지만, 일반적으로는 FAIL 이미지는 모두 저장하고 PASS 이미지는 일정 기간 또는 샘플만 저장하는 경우가 많습니다.
Q3. 로그는 TXT와 DB 중 어떤 방식이 좋나요?
소규모 프로젝트는 TXT 또는 CSV로도 충분하지만, 장기 운영과 통계 분석이 필요한 경우에는 데이터베이스(DB) 저장을 권장합니다.
Q4. 로그에 개인정보를 저장해도 되나요?
필요한 최소한의 정보만 저장하고, 개인정보 보호 정책과 관련 법규를 준수해야 합니다.
Q5. 유지보수를 쉽게 하려면 어떤 로그가 가장 중요할까요?
오류 로그(Exception), 검사 결과(PASS/FAIL), 검사 시간, 제품 번호, 이미지 경로, PLC/MES 통신 상태를 우선적으로 기록하는 것이 좋습니다.
마무리
검사 로그 관리 시스템은 단순한 기록 기능이 아니라 문제 원인 분석, 품질 향상, 고객 대응, 설비 유지보수를 위한 핵심 기능입니다.
실무에서는 날짜별 로그 관리, 로그 레벨 구분, 예외 처리 기록, 이미지 연계 저장, DB 기반 검색 기능까지 함께 설계해야 안정적이고 신뢰성 높은 머신비전 시스템을 구축할 수 있습니다.
다음 편에서는 **「6편 검사 이미지 저장 전략」**을 통해 이미지 저장 정책, 폴더 구조, 용량 관리, NAS 활용 방법 및 장기 보관 전략을 자세히 살펴보겠습니다.