비전검사에서 PLC 연동이 중요한 이유
비전검사 시스템은 혼자 동작하는 장비가 아닙니다.
실제 생산라인에서는 PLC(Programmable Logic Controller)가 모든 설비를 제어하며, 비전검사 장비는 PLC와 데이터를 주고받으면서 검사 작업을 수행합니다.
아무리 비전 프로그램이 완벽하게 만들어져도 PLC와의 통신이 원활하지 않으면 자동화 라인은 정상적으로 운영될 수 없습니다.
이번 글에서는 비전검사와 PLC를 연동하는 방법, 신호 구성, 실무에서 사용하는 통신 방식과 주의사항까지 자세히 알아보겠습니다.
PLC와 비전검사는 어떻게 통신할까?
일반적인 검사 순서는 다음과 같습니다.
제품 도착
↓
PLC Trigger ON
↓
Vision 검사 시작
↓
이미지 촬영
↓
검사 알고리즘 수행
↓
PASS / FAIL 결정
↓
PLC 결과 전송
↓
다음 공정 진행
PLC는 검사 시작을 지시하고, 비전 프로그램은 검사 결과를 PLC에 전달하는 구조입니다.
가장 많이 사용하는 PLC 통신 방식
1. Ethernet/IP
주로 사용하는 모듈은 Allen-Bradley, Omron 일부 모델
특징
- 고속 통신
- 실시간 데이터 교환
- 생산라인에서 가장 많이 사용
장점
- 통신 속도가 빠름
- 안정성이 높음
2. PROFINET
대표 PLC
- Siemens
특징
- 산업용 Ethernet 기반
- 실시간 제어 가능
장점
- Siemens PLC와 높은 호환성
- 대규모 설비에 적합
3. Modbus TCP
가장 범용적으로 사용하는 통신입니다.
지원 장비가 많아 다양한 제조사의 PLC와 연결할 수 있습니다.
장점
- 구현이 쉬움
- 비용이 저렴함
단점
- 실시간 성능은 Ethernet/IP보다 낮을 수 있음
4. TCP/IP Socket
Vision 프로그램에서 직접 소켓 통신을 구현하는 방식입니다.
장점
- 자유로운 데이터 구성
- 다양한 장비 연동 가능
단점
- 직접 프로그래밍해야 함
PLC와 주고받는 대표 신호
실무에서는 아래와 같은 신호를 가장 많이 사용합니다.
| Vision → PLC | VisionVision → PLC |
| Trigger | Busy |
| Reset | Complete |
| Recipe 번호 | PASS |
| Model 번호 | FAIL |
| Start | Error |
| Ready 확인 | 검사 완료 |
신호 이름은 회사마다 다르지만 구조는 대부분 비슷합니다.
기본 Handshake 방식
PLC와 Vision은 보통 다음과 같은 순서로 데이터를 주고받습니다.
PLC
↓ Trigger ON
Vision
↓ 검사 시작
Busy ON
↓
검사 완료
↓
PASS 또는 FAIL 출력
↓
Complete ON
↓
PLC 확인 후 Reset
이 과정을 Handshake 통신이라고 합니다.
검사 결과 데이터 구성
단순히 PASS/FAIL만 보내는 것이 아니라 다음과 같은 데이터를 함께 전송하는 경우가 많습니다.
예시
Result = PASS
Diameter = 20.15
Angle = 90.2
Score = 98
Barcode = A123456
ErrorCode = 0
MES와 연동할 경우 더욱 다양한 데이터를 전송합니다.
실무에서 많이 사용하는 PLC 주소 예시
예시
D100 = Trigger
D101 = Busy
D102 = PASS
D103 = FAIL
D104 = Complete
D105 = Error
D110 = 검사값
D120 = Barcode
주소는 프로젝트마다 다르지만 일정한 규칙으로 관리하는 것이 유지보수에 유리합니다.
PLC 연동 시 주의사항
1. Busy 신호를 반드시 사용한다
검사 중에 새로운 Trigger가 들어오면 오류가 발생할 수 있습니다.
Busy 신호를 통해 검사 중임을 PLC에 알려야 합니다.
2. Timeout 처리
Vision 프로그램이 멈추는 경우를 대비해야 합니다.
예를 들어 3초 이상 응답이 없으면 PLC에서 Error 처리하도록 설계합니다.
3. Error Code 관리
PASS/FAIL만 보내지 말고 오류 원인도 함께 전송합니다.
예를 들어
0 = 정상
1 = Camera Error
2 = Trigger Error
3 = Timeout
4 = Network Error
이렇게 관리하면 유지보수가 쉬워집니다.
4. Recipe 변경 기능
제품 모델이 바뀌면 PLC가 Recipe 번호를 보내고 Vision 프로그램이 자동으로 검사 조건을 변경하도록 구현하면 생산성이 높아집니다.
실제 프로젝트 사례
자동차 부품 검사 프로젝트
PLC : Siemens S7-1500
Vision : C# 기반 검사 프로그램
통신 :PROFINET
검사 시간 : 250ms
전송 데이터
- PASS/FAIL
- 치수값
- Barcode
- Error Code
- 검사 시간
양산 후 하루 평균 5만 개 이상의 제품을 안정적으로 검사하고 있습니다.
실제 실패 사례
사례 1. Busy 신호를 사용하지 않은 경우
PLC가 연속으로 Trigger를 발생시켜 Vision 프로그램이 동시에 여러 검사를 수행했습니다.
결과적으로 검사 데이터가 뒤섞이고 오검출이 발생했습니다.
교훈 : Busy 신호는 반드시 구현해야 합니다.
사례 2. Timeout 처리를 하지 않은 경우
카메라 연결이 끊어졌지만 PLC는 계속 대기 상태였습니다.
생산라인이 멈추고 작업자가 원인을 찾는 데 많은 시간이 소요되었습니다.
교훈 : Timeout과 Error 처리는 필수 기능입니다.
사례 3. PASS만 전송한 경우
불량이 발생했지만 어떤 이유로 FAIL이 되었는지 확인할 수 없었습니다.
결국 현장에서 프로그램을 다시 수정해 Error Code와 측정값을 함께 전송하도록 변경했습니다.
교훈 : PASS/FAIL만으로는 유지보수가 어렵습니다.
실무 체크리스트
□ PLC 기종 확인
□ 통신 방식 선정
□ Trigger 신호 정의
□ Busy 신호 구현
□ Complete 신호 구현
□ PASS/FAIL 신호 구현
□ Error Code 정의
□ Timeout 기능 구현
□ Recipe 기능 구현
□ 통신 로그 저장
□ 비상 복구 절차 확인
자주 묻는 질문(Q&A)
Q1. PLC와 비전검사는 어떤 통신 방식을 사용하는 것이 가장 좋나요?
PLC 제조사에 따라 다릅니다. Siemens는 PROFINET, Allen-Bradley는 Ethernet/IP를 많이 사용하며, 다양한 장비를 함께 사용하는 환경에서는 Modbus TCP도 자주 활용됩니다.
Q2. PASS와 FAIL만 보내면 충분한가요?
권장하지 않습니다. Error Code, 측정값, 바코드, 검사 시간 등도 함께 전송하면 문제 발생 시 원인 분석과 유지보수가 훨씬 쉬워집니다.
Q3. Busy 신호는 꼭 필요한가요?
필수입니다. Busy 신호가 없으면 검사 중에 새로운 Trigger가 들어와 데이터 충돌이나 오검출이 발생할 수 있습니다.
Q4. Timeout은 몇 초로 설정하는 것이 좋나요?
프로젝트마다 다르지만 일반적으로 예상 검사 시간보다 충분한 여유를 둔 2~5초 정도를 설정하는 경우가 많습니다.
Q5. PLC 주소는 어떻게 관리해야 하나요?
기능별로 규칙을 정해 관리하는 것이 좋습니다. 예를 들어 Trigger, Busy, PASS, FAIL, Complete, Error를 연속된 주소에 배치하면 유지보수가 편리합니다.
마무리
비전검사 시스템과 PLC의 안정적인 연동은 자동화 설비의 핵심입니다. 통신 방식 선택뿐 아니라 Trigger, Busy, Complete, PASS/FAIL, Error Code까지 체계적으로 설계해야 안정적인 생산라인을 구축할 수 있습니다. 특히 Handshake 구조와 Timeout 처리는 실무에서 반드시 구현해야 하는 기본 기능입니다.
다음 4편에서는 비전검사 MES 연동 방법을 주제로, 검사 이력 관리와 생산 데이터 저장, 추적성(Traceability) 구축 방법을 실제 사례와 함께 자세히 알아보겠습니다.
'비전검사 기초 및 실무 > 비전 실무 프로젝트' 카테고리의 다른 글
| [비전실무 프로젝트 6편] 검사 이미지 저장 전략 | 머신비전 시스템에서 이미지를 효율적으로 관리하는 방법 (0) | 2026.07.13 |
|---|---|
| [비전실무 프로젝트 5편] 검사 로그 관리 시스템 구축 방법 | 머신비전 유지보수를 위한 필수 기능 (0) | 2026.07.13 |
| [비전실무 프로젝트 4편] MES 연동 방법 | 머신비전 검사 데이터를 생산관리 시스템과 연결하는 실무 가이드 (0) | 2026.07.13 |
| [비전실무 프로젝트 2편] 비전검사 시간(Tact Time) 계산 방법, 생산성을 결정하는 핵심 공식 (0) | 2026.07.13 |
| [비전실무 프로젝트 1편] 비전검사 프로젝트 진행 순서 (실무자가 알려주는 구축 프로세스) (0) | 2026.07.13 |