<!DOCTYPE html>
< html >
< head >
< meta charset = "utf-8" >
< title > Pressure Leak Inspect System - 사용자 메뉴얼< / title >
< style >
/*
* A4 용지 기준 PDF 출력을 위한 스타일시트 (pdf_style.css)
*/
@page {
size: A4;
margin: 20mm 15mm 20mm 15mm;
@top-left { content: none !important; }
@top-right { content: none !important; }
@bottom-left { content: none !important; }
@bottom-right { content: none !important; }
@bottom-center {
content: counter(page) !important;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans KR", sans-serif;
font-size: 8.5pt;
color: #7f8c8d;
}
}
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans KR", sans-serif;
font-size: 10pt;
line-height: 1.6;
color: #333333;
background-color: #ffffff;
-webkit-print-color-adjust: exact !important;
print-color-adjust: exact !important;
}
/* 제목 스타일 */
h1, h2, h3, h4, h5, h6 {
color: #111111;
font-weight: bold;
page-break-after: avoid;
page-break-inside: avoid;
}
h1 {
font-size: 18pt;
border-bottom: 2px solid #007acc;
padding-bottom: 4px;
margin-top: 20px;
margin-bottom: 12px;
}
h2 {
font-size: 13pt;
border-bottom: 1px solid #e1e4e8;
padding-bottom: 3px;
margin-top: 16px;
margin-bottom: 10px;
}
h3 {
font-size: 11pt;
margin-top: 12px;
margin-bottom: 6px;
}
h4 {
font-size: 10pt;
margin-top: 10px;
margin-bottom: 6px;
}
/* 문단 및 리스트 */
p {
margin-top: 0;
margin-bottom: 8px;
text-align: justify;
}
ul, ol {
margin-top: 0;
margin-bottom: 8px;
padding-left: 20px;
}
li {
margin-bottom: 3px;
}
/* 구분선 */
hr {
height: 1px;
padding: 0;
margin: 15px 0;
background-color: #e1e4e8;
border: 0;
}
/* 테이블 스타일 */
table {
width: 100%;
border-collapse: collapse;
margin-top: 0;
margin-bottom: 10px;
page-break-inside: avoid;
}
table th, table td {
padding: 4px 8px;
border: 1px solid #dfe2e5;
font-size: 8.5pt;
word-break: keep-all;
}
table th {
font-weight: 600;
background-color: #f6f8fa;
text-align: left;
}
table tr:nth-child(even) {
background-color: #f9fbfd;
}
table tr {
page-break-inside: avoid; /* 표의 중간 행이 반으로 쪼개지는 것만 방지 */
}
/* 인용구 스타일 */
blockquote {
padding: 6px 12px;
color: #6a737d;
border-left: 0.25em solid #007acc;
background-color: #f6f8fa;
margin: 0 0 10px 0;
page-break-inside: avoid;
}
blockquote p {
margin: 0;
}
/* 코드 블록 (아스키 아트 등 포함) */
pre, code {
font-family: "Consolas", "Monaco", "Andale Mono", "Ubuntu Mono", monospace;
font-size: 8.5pt;
background-color: #f6f8fa;
border-radius: 3px;
}
code {
padding: 0.2em 0.4em;
margin: 0;
border: 1px solid #eaecef;
}
pre {
padding: 12px;
overflow: auto;
line-height: 1.45;
border: 1px solid #e1e4e8;
word-wrap: normal;
white-space: pre; /* 아스키 아트 정렬 유지를 위해 강제 줄바꿈 해제 */
page-break-inside: avoid;
}
pre code {
padding: 0;
margin: 0;
background-color: transparent;
border: none;
font-size: inherit;
white-space: inherit;
}
/* 이미지 스타일 */
img {
max-width: 100%;
max-height: 100mm; /* A4 높이의 약 절반 이하로 제한 */
display: block;
margin: 15px auto;
object-fit: contain;
page-break-inside: avoid;
border: 1px solid #e1e4e8;
box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
/* 페이지 나누기 요소 */
.page-break {
page-break-before: always !important;
}
/* 내비게이션 숨김 (인쇄 시) */
.nav-link, .nav-links, .back-to-toc, .manual-nav,
a[href$=".md"] {
display: none !important;
}
/* 링크 스타일 */
a {
color: #007acc;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
/* 특별 배지 스타일 */
.badge {
display: inline-block;
padding: 2px 6px;
font-size: 8pt;
font-weight: 600;
line-height: 1;
border-radius: 2px;
background-color: #e1e4e8;
color: #24292e;
margin-right: 4px;
}
< / style >
< / head >
< body >
< h1 > Pressure Leak Inspect System - 사용자 메뉴얼< / h1 >
< blockquote >
< p > < strong > 버전< / strong > : 1.0.0 | < strong > 최종 수정< / strong > : 2026-07-01< / p >
< / blockquote >
< hr / >
< h2 > 메뉴얼 목차< / h2 >
< p > 본 메뉴얼은 각 주제별로 별도 문서로 구성되어 있습니다. 아래 링크를 클릭하여 해당 문서로 이동하세요.< / p >
< table >
< thead >
< tr >
< th > 번호< / th >
< th > 문서< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 1< / td >
< td > < a href = "#1-시스템-개요-및-요구사항" > 시스템 개요 및 요구사항< / a > < / td >
< td > 프로그램 소개, 주요 기능, 하드웨어/소프트웨어 요구사항, DIO 신호 매핑< / td >
< / tr >
< tr >
< td > 2< / td >
< td > < a href = "#2-초기-설정-가이드" > 초기 설정 가이드< / a > < / td >
< td > 설치 전 준비, 로그인 및 프로그램 실행, 최초 설정 순서 (통신→시험→동작 테스트)< / td >
< / tr >
< tr >
< td > 3< / td >
< td > < a href = "#3-메인-화면-home-view" > 메인 화면 (Home View)< / a > < / td >
< td > 타이틀 바(작업자/모델/라인 정보 배지 및 로그아웃), 좌/우 채널 모니터링 영역, 하단 메뉴 바 상세 설명< / td >
< / tr >
< tr >
< td > 4< / td >
< td > < a href = "#4-통신-설정-comm-settings" > 통신 설정 (Comm. Settings)< / a > < / td >
< td > 4251 보드 및 Sentinel C28 센서의 COM 포트/BaudRate 설정 방법< / td >
< / tr >
< tr >
< td > 5< / td >
< td > < a href = "#5-시험-설정-parameters" > 시험 설정 (Parameters)< / a > < / td >
< td > SPEC UL/LL 판정 규격값 설정 방법< / td >
< / tr >
< tr >
< td > 6< / td >
< td > < a href = "#6-측정-데이터-조회-data-view" > 측정 데이터 조회 (Data View)< / a > < / td >
< td > 검사 기록 검색, 필터링, CSV 내보내기 방법< / td >
< / tr >
< tr >
< td > 7< / td >
< td > < a href = "#7-자동-시험-프로세스" > 자동 시험 프로세스< / a > < / td >
< td > 7단계 자동 시험 흐름, 순차 실행, ID 수동 테스트< / td >
< / tr >
< tr >
< td > 8< / td >
< td > < a href = "#8-로그-및-데이터-관리" > 로그 및 데이터 관리< / a > < / td >
< td > 검사 데이터 로그, 시스템 로그, 설정 파일 구조< / td >
< / tr >
< tr >
< td > 9< / td >
< td > < a href = "#9-오류-대응-및-프로그램-종료" > 오류 대응 및 프로그램 종료< / a > < / td >
< td > 통신 오류, 시험 중 오류, DIO 보드 오류 대응, 종료 절차< / td >
< / tr >
< / tbody >
< / table >
< hr / >
< h2 > 빠른 시작 가이드 (Quick Start)< / h2 >
< p > 처음 사용하는 경우 아래 순서를 따르세요:< / p >
< ol >
< li > < strong > 하드웨어 연결 확인< / strong > → < a href = "#1-시스템-개요-및-요구사항" > 시스템 개요 및 요구사항< / a > 참조< / li >
< li > < strong > 프로그램 실행 및 로그인< / strong > → 바탕화면의 < strong > 바로가기 아이콘< / strong > 을 실행하여 로그인 완료 (오프라인 테스트는 < code > Database.ini< / code > 에서 < code > OfflinePreview=true< / code > 설정)< / li >
< li > < strong > 통신 설정< / strong > → 하단 메뉴 < code > Comm. Settings< / code > → COM 포트 선택 → < code > 설정 저장< / code > < / li >
< li > < strong > 시험 설정< / strong > → 하단 메뉴 < code > Parameters< / code > → SPEC UL/LL 입력 → < code > 설정 저장< / code > < / li >
< li > < strong > 시험 시작< / strong > → DIO 시작 신호 또는 < code > ID Test (L/R)< / code > 버튼으로 동작 확인< / li >
< / ol >
< hr / >
< p > < em > 본 문서는 Pressure Leak Inspect System v1.0.0 기준으로 작성되었습니다.< / em > < / p >
< div class = "page-break" > < / div >
< h1 > 1. 시스템 개요 및 요구사항< / h1 >
< hr / >
< h2 > 1.1 시스템 개요< / h2 >
< p > < strong > Pressure Leak Inspect System< / strong > 은 제품의 압력 누설(Leak)을 자동으로 검사하는 데스크탑 프로그램입니다. 생산 라인에서 DIO 시작 신호를 받아 제품 ID를 판독하고, 누설 시험을 수행한 뒤 합격/불합격을 자동 판정합니다.< / p >
< h3 > 주요 기능 요약< / h3 >
< table >
< thead >
< tr >
< th > 기능< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > 좌/우 2채널 관리< / strong > < / td >
< td > LEFT / RIGHT 두 개의 독립적인 시험 채널을 운영합니다< / td >
< / tr >
< tr >
< td > < strong > 자동 시험 프로세스< / strong > < / td >
< td > DIO 시작 신호 감지 → ID 판독 → 누설 시험 → 판정 → 결과 출력까지 전 과정 자동화< / td >
< / tr >
< tr >
< td > < strong > Sentinel C28 연동< / strong > < / td >
< td > RS-232 시리얼 통신으로 누설 센서의 실시간 측정값을 수신합니다< / td >
< / tr >
< tr >
< td > < strong > 4251 보드 연동< / strong > < / td >
< td > 제품 ID 판독을 위한 시리얼 통신을 수행합니다< / td >
< / tr >
< tr >
< td > < strong > PCI-7432 DIO 보드< / strong > < / td >
< td > 디지털 입출력 제어 (시작 신호 수신, OK/NG 출력)< / td >
< / tr >
< tr >
< td > < strong > 검사 기록 관리< / strong > < / td >
< td > 날짜/판정/ID별 필터링 검색 및 CSV 파일 내보내기를 지원합니다< / td >
< / tr >
< tr >
< td > < strong > SPEC 교차 검증< / strong > < / td >
< td > 프로그램 판정과 센서 자체 판정을 비교하여 불일치 시 경고합니다< / td >
< / tr >
< tr >
< td > < strong > 순차 실행 보장< / strong > < / td >
< td > 중복 실행 방지 기능으로 좌/우 채널의 동시 시험을 방지합니다< / td >
< / tr >
< / tbody >
< / table >
< hr / >
< h2 > 1.2 소프트웨어 요구사항< / h2 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > 요구사항< / th >
< th > 비고< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > 운영체제< / strong > < / td >
< td > Windows 10 이상 (64bit 권장)< / td >
< td > 32bit도 지원 가능< / td >
< / tr >
< tr >
< td > < strong > .NET 런타임< / strong > < / td >
< td > .NET 9< / td >
< td > 별도 설치 필요 없음 (자체 포함 배포)< / td >
< / tr >
< tr >
< td > < strong > 드라이버< / strong > < / td >
< td > ADLINK PCIS-DASK 드라이버< / td >
< td > < code > PCI-Dask.dll< / code > 필요< / td >
< / tr >
< tr >
< td > < strong > 시리얼 포트< / strong > < / td >
< td > 최소 2개의 COM 포트< / td >
< td > C28 센서용 + 4251 보드용< / td >
< / tr >
< tr >
< td > < strong > 화면 해상도< / strong > < / td >
< td > 1024×768 이상< / td >
< td > 최대화 실행 시 1920×1080 권장< / td >
< / tr >
< / tbody >
< / table >
< blockquote >
< p > < strong > 참고< / strong > : ADLINK 드라이버가 설치되지 않은 환경에서는 프로그램이 < strong > 시뮬레이션 모드< / strong > 로 자동 전환됩니다. 이 경우 DIO 입출력은 동작하지 않지만, 프로그램의 나머지 기능은 정상적으로 사용할 수 있습니다.< / p >
< / blockquote >
< hr / >
< h2 > 1.3 하드웨어 구성< / h2 >
< table >
< thead >
< tr >
< th > 장비< / th >
< th > 모델명< / th >
< th > 용도< / th >
< th > 통신 방식< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > DIO 보드< / strong > < / td >
< td > ADLINK PCI-7432< / td >
< td > 디지털 입출력 (시작 신호 수신, OK/NG 결과 출력)< / td >
< td > PCI 슬롯 장착< / td >
< / tr >
< tr >
< td > < strong > ID 판독 보드< / strong > < / td >
< td > 4251< / td >
< td > 제품 ID 데이터 판독< / td >
< td > RS-232 시리얼 (COM 포트)< / td >
< / tr >
< tr >
< td > < strong > 누설 센서< / strong > < / td >
< td > Sentinel C28< / td >
< td > 압력 누설량(sccm) 측정< / td >
< td > RS-232 시리얼 (COM 포트)< / td >
< / tr >
< / tbody >
< / table >
< h3 > 케이블 연결도< / h3 >
< div style = "display: flex; align-items: center; justify-content: center; gap: 20px; margin: 25px auto; max-width: 600px; page-break-inside: avoid; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;" >
<!-- PC Box -->
< div style = "border: 2px solid #2f3542; border-radius: 6px; padding: 35px 20px; background-color: #f1f2f6; text-align: center; min-width: 100px; font-weight: bold; color: #2f3542; box-shadow: 0 2px 4px rgba(0,0,0,0.06); font-size: 11pt;" >
본체 PC
< / div >
<!-- Connections -->
< div style = "display: flex; flex-direction: column; gap: 12px; flex-grow: 1;" >
<!-- C28 센서 -->
< div style = "display: flex; align-items: center; justify-content: space-between; gap: 10px;" >
< div style = "flex-grow: 1; text-align: center; font-size: 8.5pt; border-bottom: 2px dashed #007acc; padding-bottom: 4px; color: #007acc; font-weight: 500;" >
RS-232 통신 ➔
< / div >
< div style = "border: 1px solid #007acc; border-radius: 4px; padding: 8px 12px; background-color: #f0f7ff; min-width: 140px; text-align: center; font-size: 9pt; font-weight: bold; color: #005999; box-shadow: 0 1px 3px rgba(0,0,0,0.04);" >
Sentinel C28 센서
< / div >
< / div >
<!-- 4251 보드 -->
< div style = "display: flex; align-items: center; justify-content: space-between; gap: 10px;" >
< div style = "flex-grow: 1; text-align: center; font-size: 8.5pt; border-bottom: 2px dashed #007acc; padding-bottom: 4px; color: #007acc; font-weight: 500;" >
RS-232 통신 ➔
< / div >
< div style = "border: 1px solid #007acc; border-radius: 4px; padding: 8px 12px; background-color: #f0f7ff; min-width: 140px; text-align: center; font-size: 9pt; font-weight: bold; color: #005999; box-shadow: 0 1px 3px rgba(0,0,0,0.04);" >
4251 보드 (ID 리더)
< / div >
< / div >
<!-- ADLINK -->
< div style = "display: flex; align-items: center; justify-content: space-between; gap: 10px;" >
< div style = "flex-grow: 1; text-align: center; font-size: 8.5pt; border-bottom: 2px solid #2ed573; padding-bottom: 4px; color: #2ed573; font-weight: 500;" >
PCI 슬롯 ══➔
< / div >
< div style = "border: 1px solid #2ed573; border-radius: 4px; padding: 8px 12px; background-color: #f1fff5; min-width: 140px; text-align: center; font-size: 9pt; font-weight: bold; color: #157a38; box-shadow: 0 1px 3px rgba(0,0,0,0.04);" >
ADLINK PCI-7432
< / div >
< / div >
< / div >
< / div >
< hr / >
< h2 > 1.4 DIO 신호 매핑< / h2 >
< h3 > 입력 신호 (Inputs) - PCI-7432< / h3 >
< table >
< thead >
< tr >
< th > 주소< / th >
< th > 신호명< / th >
< th > 동작< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 0< / td >
< td > < code > LEFT_START< / code > < / td >
< td > OFF→ON 감지< / td >
< td > 좌측 채널 시험 시작 트리거< / td >
< / tr >
< tr >
< td > 1< / td >
< td > < code > RIGHT_START< / code > < / td >
< td > OFF→ON 감지< / td >
< td > 우측 채널 시험 시작 트리거< / td >
< / tr >
< / tbody >
< / table >
< blockquote >
< p > < strong > 동작 원리< / strong > : 시작 신호가 OFF→ON으로 전환되는 순간(Rising Edge)을 감지하여 시험을 시작합니다.< / p >
< / blockquote >
< h3 > 출력 신호 (Outputs) - PCI-7432< / h3 >
< table >
< thead >
< tr >
< th > 주소< / th >
< th > 신호명< / th >
< th > 초기값< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 0< / td >
< td > < code > LEFT_OK< / code > < / td >
< td > OFF< / td >
< td > 좌측 합격 시 ON 출력< / td >
< / tr >
< tr >
< td > 1< / td >
< td > < code > RIGHT_OK< / code > < / td >
< td > OFF< / td >
< td > 우측 합격 시 ON 출력< / td >
< / tr >
< tr >
< td > 2< / td >
< td > < code > PC_ON< / code > < / td >
< td > < strong > ON< / strong > < / td >
< td > PC 가동 상태 신호 (프로그램 실행 시 자동 ON)< / td >
< / tr >
< tr >
< td > 3< / td >
< td > < code > LEFT_NG< / code > < / td >
< td > OFF< / td >
< td > 좌측 불합격 시 ON 출력< / td >
< / tr >
< tr >
< td > 4< / td >
< td > < code > RIGHT_NG< / code > < / td >
< td > OFF< / td >
< td > 우측 불합격 시 ON 출력< / td >
< / tr >
< / tbody >
< / table >
< blockquote >
< p > < strong > 참고< / strong > : < code > PC_ON< / code > 신호는 프로그램 시작 시 자동으로 ON이 되며, 프로그램 종료 시 자동으로 OFF됩니다. 이를 통해 외부 시스템이 PC의 가동 상태를 확인할 수 있습니다.< / p >
< p > < strong > 참고< / strong > : 시험이 시작되면 해당 채널의 OK/NG 출력이 모두 OFF로 초기화된 후, 판정 완료 시 해당 결과에 맞는 출력만 ON됩니다.< / p >
< / blockquote >
< hr / >
< div class = "page-break" > < / div >
< h2 > 1.5 프로그램 창 구조 개요< / h2 >
< p > 프로그램은 3개의 영역으로 구성됩니다:< / p >
< div style = "border: 1px solid #ccd0d5; border-radius: 6px; overflow: hidden; max-width: 500px; margin: 20px auto; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; box-shadow: 0 2px 6px rgba(0,0,0,0.05); page-break-inside: avoid;" >
<!-- Header -->
< div style = "background-color: #2f3542; color: #ffffff; padding: 12px; font-weight: bold; font-size: 9.5pt; text-align: center; border-bottom: 2px solid #ccd0d5;" >
상단 타이틀 바 < span style = "font-weight: normal; font-size: 8.5pt; color: #a4b0be; margin-left: 5px;" > (프로그램명, 시간, 배지, 창 제어)< / span >
< / div >
<!-- Content -->
< div style = "background-color: #ffffff; padding: 45px 15px; text-align: center; color: #2f3542; border-bottom: 2px solid #ccd0d5;" >
< div style = "font-weight: bold; font-size: 11pt; margin-bottom: 6px;" > 메인 콘텐츠 영역< / div >
< div style = "color: #747d8c; font-size: 9pt;" > (Home / Data View 전환)< / div >
< / div >
<!-- Footer -->
< div style = "background-color: #f1f2f6; color: #2f3542; padding: 12px; font-size: 9pt; text-align: center; font-weight: bold;" >
하단 메뉴 바 < span style = "font-weight: normal; font-size: 8.5pt; color: #57606f; margin-left: 5px;" > (Data, Parameters, Comm.Settings, ID Test L/R)< / span >
< / div >
< / div >
< table >
< thead >
< tr >
< th > 영역< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 상단 타이틀 바< / td >
< td > 프로그램 제목, 실시간 날짜/시간, 현재 로그인된 작업자/모델/라인 정보 배지, 세션 로그아웃 버튼, 시스템 창 제어 버튼 배치< / td >
< / tr >
< tr >
< td > 메인 콘텐츠 영역< / td >
< td > 선택된 기능 화면(Home 검사 모니터 또는 Data 데이터 조회)이 표시되는 주 콘텐츠 영역< / td >
< / tr >
< tr >
< td > 하단 메뉴 바< / td >
< td > 각 화면 전환 및 설정을 위한 조작 버튼 영역< / td >
< / tr >
< / tbody >
< / table >
< div class = "page-break" > < / div >
< h1 > 2. 초기 설정 가이드< / h1 >
< hr / >
< h2 > 2.1 설치 전 준비사항 체크리스트< / h2 >
< p > 프로그램을 실행하기 전에 아래 항목을 모두 확인하세요:< / p >
< table >
< thead >
< tr >
< th > #< / th >
< th > 확인 항목< / th >
< th > 확인 방법< / th >
< th > 비고< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 1< / td >
< td > ADLINK PCIS-DASK 드라이버 설치 완료< / td >
< td > Windows 장치 관리자에서 PCI-7432 인식 확인< / td >
< td > 미설치 시 시뮬레이션 모드로 동작< / td >
< / tr >
< tr >
< td > 2< / td >
< td > Sentinel C28 센서 시리얼 케이블 연결< / td >
< td > 장치 관리자 → 포트(COM & LPT)에서 COM 포트 번호 확인< / td >
< td > RS-232 케이블 사용< / td >
< / tr >
< tr >
< td > 3< / td >
< td > 4251 보드 시리얼 케이블 연결< / td >
< td > 장치 관리자 → 포트(COM & LPT)에서 COM 포트 번호 확인< / td >
< td > RS-232 케이블 사용< / td >
< / tr >
< tr >
< td > 4< / td >
< td > PCI-7432 DIO 보드 장착< / td >
< td > 장치 관리자에서 ADLINK PCI-7432 인식 확인< / td >
< td > PCI 슬롯에 장착< / td >
< / tr >
< tr >
< td > 5< / td >
< td > COM 포트 번호 메모< / td >
< td > C28 센서와 4251 보드 각각의 COM 포트 번호를 기록< / td >
< td > 설정 시 필요< / td >
< / tr >
< / tbody >
< / table >
< blockquote >
< p > < strong > ⚠️ 중요< / strong > : C28 센서와 4251 보드는 < strong > 서로 다른 COM 포트< / strong > 에 연결해야 합니다. 동일한 포트를 지정하면 통신 충돌이 발생합니다.< / p >
< / blockquote >
< hr / >
< h2 > 2.2 프로그램 실행< / h2 >
< h3 > 실행 방법< / h3 >
< ol >
< li > 바탕화면의 < strong > 바로가기 아이콘< / strong > 을 더블 클릭하여 실행합니다.< / li >
< li > 프로그램이 전체화면(Maximized) 모드로 시작됩니다.< / li >
< / ol >
< h3 > 최초 실행 시 자동 생성되는 파일< / h3 >
< table >
< thead >
< tr >
< th > 파일 / 폴더< / th >
< th > 위치< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < code > config.xml< / code > < / td >
< td > 프로그램 실행 폴더 (< code > C:\LeakTest\< / code > )< / td >
< td > 통신 포트, BaudRate, SPEC 값 등 모든 설정을 저장< / td >
< / tr >
< tr >
< td > < code > Settings\DioConfig.ini< / code > < / td >
< td > < code > C:\LeakTest\Settings\< / code > < / td >
< td > DIO 보드 타입, 입출력 포인트 정의< / td >
< / tr >
< tr >
< td > < code > Database.ini< / code > < / td >
< td > < code > C:\LeakTest\< / code > < / td >
< td > DB 접속 정보 및 로그인 인증 방식 설정 (최초 실행 시 기본 템플릿으로 생성)< / td >
< / tr >
< tr >
< td > < code > LoginOptions.json< / code > < / td >
< td > < code > C:\LeakTest\< / code > < / td >
< td > 로그인 화면 자동완성 드롭다운 선택지 저장< / td >
< / tr >
< tr >
< td > < code > LoginHistory.json< / code > < / td >
< td > < code > C:\LeakTest\< / code > < / td >
< td > 최근 로그인 정보 최대 10건 자동 저장< / td >
< / tr >
< tr >
< td > < code > Logs\< / code > 폴더< / td >
< td > < code > C:\LeakTest\Logs\< / code > < / td >
< td > 날짜별 CSV 검사 로그 및 시스템 로그 저장 위치< / td >
< / tr >
< / tbody >
< / table >
< h3 > 프로그램 시작 시 자동 수행 동작< / h3 >
< p > 프로그램이 실행되면 아래 동작이 자동으로 수행됩니다:< / p >
< div style = "border-left: 3px solid #007acc; padding-left: 20px; margin: 25px auto; max-width: 550px; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; page-break-inside: avoid;" >
< div style = "margin-bottom: 15px; position: relative;" >
< span style = "position: absolute; left: -26px; top: 4px; width: 10px; height: 10px; background-color: #007acc; border-radius: 50%;" > < / span >
< div style = "font-weight: bold; color: #1e272e; font-size: 10pt;" > 프로그램 실행 시작< / div >
< / div >
< div style = "margin-bottom: 12px; position: relative;" >
< span style = "position: absolute; left: -26px; top: 4px; width: 10px; height: 10px; background-color: #007acc; border-radius: 50%;" > < / span >
< strong style = "color: #007acc; font-size: 9.5pt;" > 1. DIO 보드 초기화< / strong >
< span style = "font-size: 8.5pt; color: #57606f; display: block; margin-top: 2px;" > PCI-7432 보드를 확인하며, 실패 시 시뮬레이션 모드로 전환< / span >
< / div >
< div style = "margin-bottom: 12px; position: relative;" >
< span style = "position: absolute; left: -26px; top: 4px; width: 10px; height: 10px; background-color: #007acc; border-radius: 50%;" > < / span >
< strong style = "color: #007acc; font-size: 9.5pt;" > 2. PC_ON 출력 신호 ON< / strong >
< span style = "font-size: 8.5pt; color: #57606f; display: block; margin-top: 2px;" > 외부 설비에 PC 가동 상태를 실시간 알림< / span >
< / div >
< div style = "margin-bottom: 12px; position: relative;" >
< span style = "position: absolute; left: -26px; top: 4px; width: 10px; height: 10px; background-color: #007acc; border-radius: 50%;" > < / span >
< strong style = "color: #007acc; font-size: 9.5pt;" > 3. 설정값 로드< / strong >
< span style = "font-size: 8.5pt; color: #57606f; display: block; margin-top: 2px;" > `config.xml` 파일로부터 통신 포트 및 판정 규격(SPEC) 로드< / span >
< / div >
< div style = "margin-bottom: 12px; position: relative;" >
< span style = "position: absolute; left: -26px; top: 4px; width: 10px; height: 10px; background-color: #007acc; border-radius: 50%;" > < / span >
< strong style = "color: #007acc; font-size: 9.5pt;" > 4. Sentinel C28 연결< / strong >
< span style = "font-size: 8.5pt; color: #57606f; display: block; margin-top: 2px;" > 리크 센서 시리얼 통신 포트 연결 시도< / span >
< / div >
< div style = "margin-bottom: 12px; position: relative;" >
< span style = "position: absolute; left: -26px; top: 4px; width: 10px; height: 10px; background-color: #007acc; border-radius: 50%;" > < / span >
< strong style = "color: #007acc; font-size: 9.5pt;" > 5. 4251 보드 연결< / strong >
< span style = "font-size: 8.5pt; color: #57606f; display: block; margin-top: 2px;" > ID 판독 보드 시리얼 통신 포트 연결 시도< / span >
< / div >
< div style = "margin-bottom: 12px; position: relative;" >
< span style = "position: absolute; left: -26px; top: 4px; width: 10px; height: 10px; background-color: #007acc; border-radius: 50%;" > < / span >
< strong style = "color: #007acc; font-size: 9.5pt;" > 6. 시험 프로세스 스레드 기동< / strong >
< span style = "font-size: 8.5pt; color: #57606f; display: block; margin-top: 2px;" > LEFT 및 RIGHT 채널의 백그라운드 계측 제어 스레드 개시< / span >
< / div >
< div style = "position: relative;" >
< span style = "position: absolute; left: -26px; top: 4px; width: 10px; height: 10px; background-color: #2ed573; border-radius: 50%;" > < / span >
< strong style = "color: #2ed573; font-size: 9.5pt;" > 7. 메인 화면(Home View) 표시< / strong >
< span style = "font-size: 8.5pt; color: #57606f; display: block; margin-top: 2px;" > 프로그램 UI 전체 활성화 및 측정 대기 상태 진입< / span >
< / div >
< / div >
< blockquote >
< p > < strong > 참고< / strong > : 시리얼 포트 연결에 실패하면 메인 화면의 < strong > 오류 메시지< / strong > 영역에 해당 오류가 표시됩니다. 이 경우 < code > Comm. Settings< / code > 에서 올바른 포트를 선택한 후 저장하면 자동으로 재연결됩니다.< / p >
< / blockquote >
< hr / >
< h2 > 2.3 프로그램 로그인 및 오프라인 모드 설정< / h2 >
< p > 프로그램 실행이 완료되면 메인 화면이 활성화되기 전, < strong > 작업 정보 입력 및 로그인 창< / strong > 이 모달로 표시됩니다. 로그인을 성공적으로 마쳐야 메인 화면을 조작할 수 있습니다.< / p >
< h3 > 로그인 필드 구성< / h3 >
< table >
< thead >
< tr >
< th > 입력 필드< / th >
< th > 예시< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > Maker< / strong > < / td >
< td > < code > MOBIS< / code > < / td >
< td > 제조사 정보< / td >
< / tr >
< tr >
< td > < strong > Model< / strong > < / td >
< td > < code > C28_TEST< / code > < / td >
< td > 검사 모델명< / td >
< / tr >
< tr >
< td > < strong > Variant 1< / strong > < / td >
< td > < code > V1< / code > < / td >
< td > 세부 파생 모델 정보 1< / td >
< / tr >
< tr >
< td > < strong > Variant 2< / strong > < / td >
< td > < code > V2< / code > < / td >
< td > 세부 파생 모델 정보 2< / td >
< / tr >
< tr >
< td > < strong > ID (Operator)< / strong > < / td >
< td > < code > sa< / code > < / td >
< td > 작업자 ID< / td >
< / tr >
< tr >
< td > < strong > PW (Password)< / strong > < / td >
< td > < code > ****< / code > < / td >
< td > 비밀번호 (DB 조회용)< / td >
< / tr >
< tr >
< td > < strong > Line< / strong > < / td >
< td > < code > EOL_01< / code > < / td >
< td > 생산 라인 번호< / td >
< / tr >
< tr >
< td > < strong > Lot No< / strong > < / td >
< td > < code > LOT001< / code > < / td >
< td > 로트 번호< / td >
< / tr >
< tr >
< td > < strong > Jig No< / strong > < / td >
< td > < code > JIG_L< / code > < / td >
< td > 지그 번호< / td >
< / tr >
< / tbody >
< / table >
< blockquote >
< p > < strong > 참고 (자동완성)< / strong > : 각 필드에 마우스를 클릭하거나 포커스를 두면, 이전 로그인 이력이 팝업 메뉴 형식으로 나열되어 간편하게 자동 완성을 사용할 수 있습니다.< / p >
< / blockquote >
< h3 > 로그인 방식 설정 (Database.ini)< / h3 >
< p > 프로그램 배포 폴더(< code > C:\LeakTest\Database.ini< / code > )에 위치한 < code > Database.ini< / code > 파일 설정에 따라 로그인 인증 방식이 달라집니다. 해당 파일이 누락된 경우 프로그램 최초 실행 시 기본 템플릿 정보와 함께 해당 경로에 자동으로 생성됩니다. 모든 설정 파일이 배포 폴더에 함께 위치하므로 경로 관리가 단순합니다.< / p >
< pre > < code class = "language-ini" > ; [데이터베이스 접속 상세 설정]
Db_Server=[데이터베이스_서버_IP],[포트번호]
Db_Name=[데이터베이스_이름]
Db_User=[접속_계정_ID]
Db_Password=[접속_비밀번호]
[Login]
Procedure=dbo.CheckOperator
ProcessName=EOL
OfflinePreview=false
< / code > < / pre >
< ul >
< li > < strong > 온라인 인증 모드 (< code > OfflinePreview=false< / code > )< / strong > : 지정된 데이터베이스 접속 정보(< code > Db_Server< / code > , < code > Db_Name< / code > , < code > Db_User< / code > , < code > Db_Password< / code > )를 기반으로 데이터베이스에 접속하여 사용자 계정의 유효성을 검증합니다. DB 서버 연결 실패나 미등록 사용자일 경우 로그인이 거부됩니다.< / li >
< li > < strong > 오프라인 테스트 모드 (< code > OfflinePreview=true< / code > )< / strong > : 데이터베이스를 거치지 않고, 필수 입력 값을 채우면 즉시 로그인이 허용됩니다. 네트워크 연결이 안 된 시뮬레이션 및 테스트 환경에서 사용합니다.< / li >
< / ul >
< hr / >
< h2 > 2.4 최초 설정 순서 (Step-by-Step)< / h2 >
< p > 프로그램을 처음 사용할 때는 반드시 아래 순서로 설정을 진행하세요.< / p >
< h3 > Step 1: 통신 설정 (가장 먼저 수행)< / h3 >
< blockquote >
< p > 하드웨어와의 통신이 설정되어야 이후 모든 기능이 정상 동작합니다.< / p >
< / blockquote >
< ol >
< li > 하단 메뉴 바에서 < strong > < code > Comm. Settings (통신 설정)< / code > < / strong > 버튼을 클릭합니다.< / li >
< li > < strong > 통신 설정< / strong > 팝업 창이 메인 창 중앙에 표시됩니다.< / li >
< / ol >
< p > < strong > 4251 보드 설정 (좌측 영역):< / strong > < / p >
< table >
< thead >
< tr >
< th > 설정 항목< / th >
< th > 설명< / th >
< th > 선택 방법< / th >
< th > 기본값< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < code > 4251 BaudRate< / code > < / td >
< td > 통신 속도< / td >
< td > 드롭다운에서 선택 (9600/19200/38400/115200)< / td >
< td > < code > 115200< / code > < / td >
< / tr >
< tr >
< td > < code > 4251 Port< / code > < / td >
< td > COM 포트< / td >
< td > 드롭다운에서 연결된 포트 선택< / td >
< td > < code > COM3< / code > < / td >
< / tr >
< / tbody >
< / table >
< p > < strong > Sentinel C28 설정 (우측 영역):< / strong > < / p >
< table >
< thead >
< tr >
< th > 설정 항목< / th >
< th > 설명< / th >
< th > 선택 방법< / th >
< th > 기본값< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < code > Sensor BaudRate< / code > < / td >
< td > 통신 속도< / td >
< td > 드롭다운에서 선택 (9600/19200/38400/115200)< / td >
< td > < code > 9600< / code > < / td >
< / tr >
< tr >
< td > < code > Sensor Port< / code > < / td >
< td > COM 포트< / td >
< td > 드롭다운에서 연결된 포트 선택< / td >
< td > < code > COM1< / code > < / td >
< / tr >
< / tbody >
< / table >
< ol >
< li > 모든 항목을 설정한 후 < strong > < code > 설정 저장< / code > < / strong > 버튼을 클릭합니다.< / li >
< li > "통신 설정이 저장되었습니다." 메시지가 표시되면 설정 완료입니다.< / li >
< / ol >
< blockquote >
< p > < strong > ⚠️ 중요< / strong > : 저장 시 기존의 모든 시리얼 통신 연결이 해제되고, 새로운 설정으로 자동 재연결됩니다. 이 과정에서 진행 중인 시험이 있다면 중단될 수 있습니다.< / p >
< p > < strong > 참고< / strong > : COM 포트 목록에는 현재 PC에 물리적으로 연결된 시리얼 장치만 표시됩니다. 원하는 포트가 보이지 않으면:
- USB-시리얼 케이블이 PC에 연결되어 있는지 확인
- 장치 관리자에서 해당 포트의 드라이버가 정상 설치되었는지 확인
- 다른 프로그램이 해당 포트를 점유하고 있지 않은지 확인< / p >
< / blockquote >
< hr / >
< h3 > Step 2: 시험 설정 (SPEC 규격값 입력)< / h3 >
< ol >
< li > 하단 메뉴 바에서 < strong > < code > Parameters (시험 설정)< / code > < / strong > 버튼을 클릭합니다.< / li >
< li > < strong > 시험 설정< / strong > 팝업 창이 표시됩니다.< / li >
< / ol >
< table >
< thead >
< tr >
< th > 설정 항목< / th >
< th > 설명< / th >
< th > 입력 형식< / th >
< th > 기본값< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < code > SPEC UL (sccm)< / code > < / td >
< td > 누설 상한 규격값< / td >
< td > 소수점 포함 숫자 (예: < code > 1.00< / code > )< / td >
< td > < code > 1.00< / code > < / td >
< / tr >
< tr >
< td > < code > SPEC LL (sccm)< / code > < / td >
< td > 누설 하한 규격값< / td >
< td > 소수점 포함 숫자 (예: < code > -1.00< / code > )< / td >
< td > < code > -1.00< / code > < / td >
< / tr >
< / tbody >
< / table >
< ol >
< li > 값을 입력한 후 < strong > < code > 설정 저장< / code > < / strong > 버튼을 클릭합니다.< / li >
< li > "파라미터 설정이 저장되었습니다." 메시지가 표시되면 완료입니다.< / li >
< / ol >
< blockquote >
< p > < strong > 참고< / strong > : SPEC UL/LL 값은 좌/우 양쪽 채널에 < strong > 공통으로 적용< / strong > 됩니다.< / p >
< p > < strong > 판정 기준< / strong > : < code > SPEC LL ≤ 측정값 ≤ SPEC UL< / code > 이면 < strong > OK< / strong > , 범위를 벗어나면 < strong > NG< / strong > 로 판정됩니다.< / p >
< / blockquote >
< hr / >
< h3 > Step 3: 동작 테스트 (선택사항)< / h3 >
< p > 모든 설정이 완료되면 하단 메뉴의 < strong > < code > ID Test (L)< / code > < / strong > 또는 < strong > < code > ID Test (R)< / code > < / strong > 버튼으로 간단한 동작 테스트를 수행할 수 있습니다.< / p >
< ol >
< li > < strong > < code > ID Test (L)< / code > < / strong > 버튼을 클릭합니다.< / li >
< li > 좌측 채널의 진행 메시지가 순서대로 표시됩니다:< / li >
< li > < code > 시험 시작< / code > → < code > 센서 정보 읽는 중< / code > → < code > ID 테스트 완료< / code > (또는 < code > ID 테스트 실패< / code > )< / li >
< li > 좌측 채널의 < strong > ID< / strong > 영역에 읽은 제품 ID가 표시되면 정상입니다.< / li >
< / ol >
< blockquote >
< p > < strong > 참고< / strong > : ID Test는 DIO 시작 신호 없이도 4251 보드의 센서 판독 기능만 단독으로 테스트합니다. 실제 LEAK 시험은 수행하지 않습니다.< / p >
< / blockquote >
< hr / >
< h2 > 2.5 설정 변경 시 주의사항< / h2 >
< table >
< thead >
< tr >
< th > 상황< / th >
< th > 동작< / th >
< th > 주의< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 통신 설정 저장< / td >
< td > 모든 시리얼 연결 해제 → 새 설정으로 재연결< / td >
< td > 시험 중 변경 시 시험 중단< / td >
< / tr >
< tr >
< td > 시험 설정 저장< / td >
< td > 즉시 메인 화면의 SPEC 표시 갱신< / td >
< td > 진행 중인 시험에는 영향 없음< / td >
< / tr >
< tr >
< td > 프로그램 재시작< / td >
< td > < code > config.xml< / code > 에서 마지막 저장된 설정 자동 로드< / td >
< td > 별도 작업 불필요< / td >
< / tr >
< / tbody >
< / table >
< div class = "page-break" > < / div >
< h1 > 3. 메인 화면 (Home View)< / h1 >
< hr / >
< p > 프로그램 실행 시 기본으로 표시되는 화면입니다. 좌/우 채널의 누설 시험 결과를 실시간으로 모니터링합니다.< / p >
< h2 > 3.1 전체 화면 레이아웃< / h2 >
< p > < img src = "./Pasted image 20260626093617.png" alt = "Pasted image 20260626093617.png" / > < / p >
< hr / >
< h2 > 3.2 상단 타이틀 바< / h2 >
< p > 프로그램 최상단에 위치한 짙은 블랙 그레이 배경의 바입니다.
< img src = "./Pasted image 20260626093648.png" alt = "Pasted image 20260626093648.png" / > < / p >
< table >
< thead >
< tr >
< th > 위치< / th >
< th > 요소< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 좌측< / td >
< td > < strong > 프로그램 제목 & 버전< / strong > < / td >
< td > "Pressure Leak" (백색 볼드) 및 < code > v1.0.0 (Updated: 2026-06-05)< / code > 표시< / td >
< / tr >
< tr >
< td > 중앙< / td >
< td > < strong > 현재 날짜/시간< / strong > < / td >
< td > < code > yyyy-MM-dd [요일] HH:mm:ss< / code > 형식, 1초 주기로 실시간 갱신< / td >
< / tr >
< tr >
< td > 우측< / td >
< td > < strong > 작업 정보 배지< / strong > < / td >
< td > 현재 로그인 상태에 따른 < code > 작업자 ID< / code > , < code > 검사 모델< / code > , < code > 생산 라인< / code > 정보를 배지로 시각화하여 현재 작업 상태 인지< / td >
< / tr >
< tr >
< td > 우측< / td >
< td > < strong > 로그아웃 버튼< / strong > < / td >
< td > 현재 세션을 로그아웃하고, 다시 로그인 모달 창을 띄웁니다< / td >
< / tr >
< tr >
< td > 최우측< / td >
< td > < strong > 창 제어 버튼< / strong > < / td >
< td > 최소화(─) / 최대화·복원(□) / 종료(X)를 수행하는 윈도우 창 제어 아이콘 배치< / td >
< / tr >
< / tbody >
< / table >
< h3 > 타이틀 바 조작< / h3 >
< table >
< thead >
< tr >
< th > 조작< / th >
< th > 동작< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 타이틀 바 < strong > 드래그< / strong > < / td >
< td > 창 이동< / td >
< / tr >
< tr >
< td > 타이틀 바 < strong > 더블 클릭< / strong > < / td >
< td > 최대화 ↔ 일반 크기 전환< / td >
< / tr >
< tr >
< td > < strong > ─< / strong > 버튼 클릭< / td >
< td > 작업표시줄로 최소화< / td >
< / tr >
< tr >
< td > < strong > □< / strong > 버튼 클릭< / td >
< td > 최대화 ↔ 일반 크기 전환 (아이콘도 변경됨)< / td >
< / tr >
< tr >
< td > < strong > X< / strong > 버튼 클릭< / td >
< td > 종료 확인 대화상자 표시 → "예" 선택 시 종료< / td >
< / tr >
< / tbody >
< / table >
< hr / >
< h2 > 3.3 메인 영역 - 채널 모니터링< / h2 >
< p > 화면은 좌측(< code > LEFT LEAK TESTER< / code > )과 우측(< code > RIGHT LEAK TESTER< / code > )으로 균등 분할되며, 각 채널은 동일한 구조입니다.
< img src = "./Pasted image 20260626093712.png" alt = "Pasted image 20260626093712.png" / > < / p >
< h3 > 각 채널의 구성 요소 (위에서 아래 순서)< / h3 >
< h4 > ① 채널 타이틀 (Row 0)< / h4 >
< ul >
< li > < strong > LEFT LEAK TESTER< / strong > 또는 < strong > RIGHT LEAK TESTER< / strong > < / li >
< li > 짙은 남색 배경에 백색 볼드 텍스트로 채널 구분을 명시합니다.< / li >
< / ul >
< h4 > ② 시작/종료 시간 (Row 1)< / h4 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 라벨< / td >
< td > < code > 시작/종료< / code > (회색 헤더 배경)< / td >
< / tr >
< tr >
< td > 값< / td >
< td > < code > 시작시간 / 종료시간< / code > 형식 (예: < code > 2026-05-08 10:30:15 / -< / code > 또는 < code > 2026-05-08 10:30:15 / 10:30:45< / code > )< / td >
< / tr >
< tr >
< td > 갱신 시점< / td >
< td > 시험이 시작될 때 < code > 시작시간 / -< / code > 형태로 갱신되며, 시험 완료(DB 저장) 시점에 종료 시간이 함께 기록됩니다.< / td >
< / tr >
< / tbody >
< / table >
< h4 > ③ IC_SN / PCB_Barcode (Row 2~3) - < strong > 식별자 2행 분리 표시< / strong > < / h4 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 라벨< / td >
< td > < code > IC_SN< / code > / < code > PCB_Barcode< / code > (각각 회색 헤더 배경, 개별 행으로 표시)< / td >
< / tr >
< tr >
< td > 값< / td >
< td > 각각 제품의 IC 일련번호 및 이에 매핑되는 PCB 바코드 고유 식별 정보< / td >
< / tr >
< tr >
< td > 데이터 소스< / td >
< td > < strong > IC_SN< / strong > : 4251 보드로 제품 ID 센서에서 판독한 값< br > < strong > PCB_Barcode< / strong > : 판독한 < code > IC_SN< / code > 을 기준으로 데이터베이스에서 조회한 바코드 값 (오프라인 모드 시 임시 데이터 주입)< / td >
< / tr >
< tr >
< td > 갱신 시점< / td >
< td > 시험 시작 시 빈 값(< code > -< / code > )으로 초기화, 판독 및 조회 완료 시 표시< / td >
< / tr >
< / tbody >
< / table >
< blockquote >
< p > < strong > 참고< / strong > : 텍스트 잘림 방지 및 가독성 향상을 위해 IC_SN과 PCB_Barcode를 별도의 행으로 나누어 표시합니다. 프로그램 창 크기를 소형으로 조절하더라도 텍스트가 잘리지 않고 정상 표시됩니다.< / p >
< / blockquote >
< h4 > ④ 측정값 + SPEC (Row 3) - < strong > 가장 큰 영역< / strong > < / h4 >
< p > 좌측에 측정값, 우측에 SPEC 규격이 함께 표시됩니다.< / p >
< p > < strong > 측정값 영역:< / strong > < / p >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 라벨< / td >
< td > < code > 측정값< / code > (볼드)< / td >
< / tr >
< tr >
< td > 값< / td >
< td > Sentinel C28에서 수신한 누설량 (소수점 4자리, 예: < code > 0.5234< / code > )< / td >
< / tr >
< tr >
< td > 단위< / td >
< td > < code > sccm< / code > (우측 하단에 표시)< / td >
< / tr >
< tr >
< td > 폰트 크기< / td >
< td > 원거리에서도 쉽게 식별할 수 있도록 대형 폰트로 강조 표시< / td >
< / tr >
< tr >
< td > 색상< / td >
< td > 파란색 볼드< / td >
< / tr >
< tr >
< td > 갱신 시점< / td >
< td > C28 센서 스트리밍 데이터 수신 시 실시간 갱신< / td >
< / tr >
< / tbody >
< / table >
< p > < strong > SPEC 영역 (우측):< / strong > < / p >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < code > UL< / code > < / td >
< td > 상한 규격값 (예: < code > 1.00< / code > ) 볼드< / td >
< / tr >
< tr >
< td > < code > LL< / code > < / td >
< td > 하한 규격값 (예: < code > -1.00< / code > ) 볼드< / td >
< / tr >
< tr >
< td > 갱신 시점< / td >
< td > Parameters에서 저장 시 즉시 반영< / td >
< / tr >
< / tbody >
< / table >
< h4 > ⑤ 판정 (Row 4) - < strong > 두 번째로 큰 영역< / strong > < / h4 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 라벨< / td >
< td > < code > 판정< / code > (볼드)< / td >
< / tr >
< tr >
< td > 값< / td >
< td > < strong > OK< / strong > 또는 < strong > NG< / strong > (대형 볼드)< / td >
< / tr >
< tr >
< td > OK 표시< / td >
< td > 녹색 텍스트 + 연녹색 배경으로 가시성 극대화< / td >
< / tr >
< tr >
< td > NG 표시< / td >
< td > 빨간색 텍스트 + 연빨간색 배경으로 가시성 극대화< / td >
< / tr >
< / tbody >
< / table >
< blockquote >
< p > < strong > 판정 기준< / strong > : < code > SPEC LL ≤ 측정값 ≤ SPEC UL< / code > → < strong > OK< / strong > , 그 외 → < strong > NG< / strong > < / p >
< / blockquote >
< h4 > ⑥ 진행 메시지 (Row 5)< / h4 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 라벨< / td >
< td > < code > 진행 메시지< / code > (연파랑 배경)< / td >
< / tr >
< tr >
< td > 값< / td >
< td > 현재 시험 단계를 나타내는 파란색 볼드 텍스트< / td >
< / tr >
< / tbody >
< / table >
< p > 표시되는 메시지 목록:< / p >
< table >
< thead >
< tr >
< th > 메시지< / th >
< th > 의미< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < code > 시험 시작< / code > < / td >
< td > DIO 시작 신호 감지, 시험 프로세스 시작< / td >
< / tr >
< tr >
< td > < code > 대기중< / code > < / td >
< td > 다른 채널이 시험 중이어서 순서 대기< / td >
< / tr >
< tr >
< td > < code > 센서 정보 읽는 중< / code > < / td >
< td > 4251 보드를 통해 제품 ID 판독 중< / td >
< / tr >
< tr >
< td > < code > LEAK 시험중< / code > < / td >
< td > Sentinel C28 센서의 측정 결과 대기 중< / td >
< / tr >
< tr >
< td > < code > 시험 완료< / code > < / td >
< td > 판정 완료 및 결과 출력 완료< / td >
< / tr >
< tr >
< td > < code > 오류 발생< / code > < / td >
< td > 시험 중 오류 발생 (상세 내용은 오류 메시지 참조)< / td >
< / tr >
< tr >
< td > < code > ID 테스트 완료< / code > < / td >
< td > 수동 ID 테스트 정상 완료< / td >
< / tr >
< tr >
< td > < code > ID 테스트 실패< / code > < / td >
< td > 수동 ID 테스트 실패< / td >
< / tr >
< tr >
< td > < code > 통신 대기 중< / code > < / td >
< td > 통신 설정 변경 후 재연결 대기< / td >
< / tr >
< / tbody >
< / table >
< h4 > ⑦ 오류 메시지 (Row 6)< / h4 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 라벨< / td >
< td > < code > 오류 메시지< / code > (연주황 배경, 갈색 텍스트)< / td >
< / tr >
< tr >
< td > 값< / td >
< td > 오류 내용 (빨간색 볼드). 스크롤 가능< / td >
< / tr >
< tr >
< td > 특징< / td >
< td > 읽기 전용 텍스트 박스, 텍스트 줄바꿈 자동, 세로 스크롤바< / td >
< / tr >
< tr >
< td > 초기화 시점< / td >
< td > 새 시험 시작 시 자동 초기화< / td >
< / tr >
< / tbody >
< / table >
< hr / >
< h2 > 3.4 SPEC 교차 검증 경고< / h2 >
< p > 프로그램의 판정 결과(SPEC UL/LL 기준)와 Sentinel C28 센서의 < strong > 자체 판정 결과< / strong > 가 서로 다를 경우:< / p >
< ol >
< li > 해당 채널의 < strong > 오류 메시지< / strong > 영역에 < code > SPEC 불일치 - 프로그램: OK, 센서: R< / code > 등의 메시지가 표시됩니다.< / li >
< li > < strong > 팝업 경고 대화상자< / strong > 가 표시됩니다: "프로그램 스팩과 센서의 스팩이 서로 맞지 않습니다."< / li >
< / ol >
< blockquote >
< p > < strong > 조치< / strong > : 센서 측의 SPEC 설정과 프로그램의 SPEC UL/LL 설정이 동일한지 확인하세요.< / p >
< / blockquote >
< hr / >
< h2 > 3.5 하단 메뉴 바< / h2 >
< p > 프로그램 최하단의 연회색 배경 영역입니다. 5개의 버튼이 좌측부터 수평으로 배치됩니다.
< img src = "./Pasted image 20260624104445.png" alt = "Pasted image 20260624104445.png" / > < / p >
< table >
< thead >
< tr >
< th > 순서< / th >
< th > BUTTON< / th >
< th > 부제< / th >
< th > 동작< / th >
< th > 동작 방식< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 1< / td >
< td > < strong > Data< / strong > < / td >
< td > (측정 데이터)< / td >
< td > 검사 기록 조회 화면 전환< / td >
< td > 토글 (다시 클릭 시 Home으로 복귀)< / td >
< / tr >
< tr >
< td > 2< / td >
< td > < strong > Parameters< / strong > < / td >
< td > (시험 설정)< / td >
< td > 시험 설정 팝업 창 열기< / td >
< td > 모달 팝업 (설정 후 자동 닫힘)< / td >
< / tr >
< tr >
< td > 3< / td >
< td > < strong > Comm. Settings< / strong > < / td >
< td > (통신 설정)< / td >
< td > 통신 설정 팝업 창 열기< / td >
< td > 모달 팝업 (설정 후 자동 닫힘)< / td >
< / tr >
< tr >
< td > 4< / td >
< td > < strong > ID Test (L)< / strong > < / td >
< td > (좌측 ID 테스트)< / td >
< td > 좌측 채널 센서 ID 수동 판독< / td >
< td > 즉시 실행 (파란색 텍스트)< / td >
< / tr >
< tr >
< td > 5< / td >
< td > < strong > ID Test (R)< / strong > < / td >
< td > (우측 ID 테스트)< / td >
< td > 우측 채널 센서 ID 수동 판독< / td >
< td > 즉시 실행 (파란색 텍스트)< / td >
< / tr >
< / tbody >
< / table >
< h3 > 버튼 스타일< / h3 >
< ul >
< li > 배경: 연회색, 마우스 오버 시 시각적 피드백을 위해 약간 어둡게 변함< / li >
< li > 테두리: 회색< / li >
< li > 텍스트: 볼드 (부제는 일반 텍스트)< / li >
< / ul >
< div class = "page-break" > < / div >
< h1 > 4. 통신 설정 (Comm. Settings)< / h1 >
< hr / >
< p > 하단 메뉴에서 < strong > Comm. Settings (통신 설정)< / strong > 버튼 클릭 시 열리는 < strong > 모달 팝업 창< / strong > 입니다.
< img src = "./Pasted image 20260624104506.png" alt = "Pasted image 20260624104506.png" / > < / p >
< h2 > 4.1 창 구성< / h2 >
< table >
< thead >
< tr >
< th > 속성< / th >
< th > 값< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 창 크기< / td >
< td > 고정 (크기 변경 불가)< / td >
< / tr >
< tr >
< td > 위치< / td >
< td > 메인 창 중앙에 정렬되어 표시< / td >
< / tr >
< tr >
< td > 타입< / td >
< td > 모달 (이 창이 열려있으면 메인 창 조작 불가)< / td >
< / tr >
< / tbody >
< / table >
< h2 > 4.2 4251 보드 설정 (좌측 영역)< / h2 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > UI 타입< / th >
< th > 선택 가능 값< / th >
< th > 기본값< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > 4251 BaudRate< / strong > < / td >
< td > 드롭다운< / td >
< td > 9600 / 19200 / 38400 / 115200< / td >
< td > < code > 115200< / code > < / td >
< td > 4251 보드 통신 속도. 보드 설정과 일치해야 함< / td >
< / tr >
< tr >
< td > < strong > 4251 Port< / strong > < / td >
< td > 드롭다운< / td >
< td > 시스템 감지 COM 포트 목록< / td >
< td > < code > COM3< / code > < / td >
< td > 4251 보드가 연결된 시리얼 포트< / td >
< / tr >
< / tbody >
< / table >
< h2 > 4.3 Sentinel C28 설정 (우측 영역)< / h2 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > UI 타입< / th >
< th > 선택 가능 값< / th >
< th > 기본값< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > Sensor BaudRate< / strong > < / td >
< td > 드롭다운< / td >
< td > 9600 / 19200 / 38400 / 115200< / td >
< td > < code > 9600< / code > < / td >
< td > C28 센서 통신 속도. 센서 설정과 일치해야 함< / td >
< / tr >
< tr >
< td > < strong > Sensor Port< / strong > < / td >
< td > 드롭다운< / td >
< td > 시스템 감지 COM 포트 목록< / td >
< td > < code > COM1< / code > < / td >
< td > C28 센서가 연결된 시리얼 포트< / td >
< / tr >
< / tbody >
< / table >
< h2 > 4.4 스펙 불일치 알림 설정 (화면 하단 영역)< / h2 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > UI 타입< / th >
< th > 선택 가능한 값< / th >
< th > 기본값< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > 스펙 불일치 알림 활성화< / strong > < / td >
< td > 체크박스< / td >
< td > 체크(ON) / 체크 해제(OFF)< / td >
< td > < code > 체크(ON)< / code > < / td >
< td > 프로그램 판정과 센서 자체 판정이 맞지 않을 때의 알림 팝업 창 발생 여부 설정< / td >
< / tr >
< / tbody >
< / table >
< blockquote >
< p > < strong > 동작 설명< / strong > :
- < strong > ON (기본값)< / strong > : 판정이 불일치할 때 메인 화면의 오류 메시지 창에 로그가 기재됨과 동시에, 경고 대화상자("프로그램 스펙과 센서의 스펙이 서로 맞지 않습니다.") 팝업이 출력되어 작업자 인지를 강제합니다.
- < strong > OFF< / strong > : 판정이 불일치하더라도 경고 팝업을 띄우지 않고, 화면의 오류 메시지 영역에만 텍스트로 기록을 남깁니다. (콘솔 로그 기록 등은 유지)
- 이 설정은 < code > config.xml< / code > 내의 < code > EnableSpecMismatchAlarm< / code > 옵션에 영속 저장되어 프로그램 재작동 시에도 마지막 상태가 자동 유지됩니다.< / p >
< / blockquote >
< h2 > 4.5 버튼 설명< / h2 >
< table >
< thead >
< tr >
< th > 버튼< / th >
< th > 특징< / th >
< th > 동작< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > 설정 저장< / strong > < / td >
< td > 녹색 계열< / td >
< td > config.xml에 저장 → 기존 연결 해제 → 새 설정으로 재연결 → "통신 설정이 저장되었습니다." 메시지 → 창 닫힘< / td >
< / tr >
< tr >
< td > < strong > 닫기< / strong > < / td >
< td > 회색 계열< / td >
< td > 변경 사항 저장하지 않고 창 닫기< / td >
< / tr >
< / tbody >
< / table >
< h2 > 4.6 저장 시 내부 동작 순서< / h2 >
< ol >
< li > 현재 선택된 값을 < code > config.xml< / code > 에 저장 (스펙 불일치 알림 활성화 여부 포함)< / li >
< li > 기존 Sentinel C28 시리얼 연결 해제< / li >
< li > 기존 4251 보드 시리얼 연결 해제< / li >
< li > 시험 프로세스 스레드 종료< / li >
< li > 새 설정값으로 Sentinel C28 재연결< / li >
< li > 새 설정값으로 4251 보드 재연결< / li >
< li > 시험 프로세스 스레드 재시작< / li >
< / ol >
< blockquote >
< p > < strong > ⚠️ 주의< / strong > : COM 포트를 동일하게 설정하면 충돌이 발생합니다. 4251 보드와 C28 센서는 반드시 다른 포트를 사용하세요.< / p >
< / blockquote >
< div class = "page-break" > < / div >
< h1 > 5. 시험 설정 (Parameters)< / h1 >
< hr / >
< p > 하단 메뉴에서 < strong > Parameters (시험 설정)< / strong > 버튼 클릭 시 열리는 < strong > 모달 팝업 창< / strong > 입니다.
< img src = "./Pasted image 20260624104531.png" alt = "Pasted image 20260624104531.png" / > < / p >
< h2 > 5.1 창 구성< / h2 >
< table >
< thead >
< tr >
< th > 속성< / th >
< th > 값< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 창 크기< / td >
< td > 고정 (크기 변경 불가)< / td >
< / tr >
< tr >
< td > 위치< / td >
< td > 메인 창 중앙에 정렬되어 표시< / td >
< / tr >
< tr >
< td > 타입< / td >
< td > 모달< / td >
< / tr >
< / tbody >
< / table >
< h2 > 5.2 설정 항목< / h2 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > UI 타입< / th >
< th > 입력 형식< / th >
< th > 기본값< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > SPEC UL (sccm)< / strong > < / td >
< td > 텍스트 입력< / td >
< td > 소수점 숫자< / td >
< td > < code > 1.00< / code > < / td >
< td > 누설 상한 규격값. 이 값 이하일 때 OK< / td >
< / tr >
< tr >
< td > < strong > SPEC LL (sccm)< / strong > < / td >
< td > 텍스트 입력< / td >
< td > 소수점 숫자< / td >
< td > < code > -1.00< / code > < / td >
< td > 누설 하한 규격값. 이 값 이상일 때 OK< / td >
< / tr >
< / tbody >
< / table >
< blockquote >
< p > < strong > 입력 팁< / strong > : 소수점 2자리까지 입력합니다 (예: < code > 1.50< / code > , < code > -0.80< / code > ). 정수도 입력 가능합니다 (예: < code > 2< / code > ).< / p >
< / blockquote >
< div class = "page-break" > < / div >
< h2 > 5.3 판정 로직 상세< / h2 >
< ul >
< li > < strong > 합격 판정 기준< / strong > : < code > SPEC LL ≤ 측정값 ≤ SPEC UL< / code > < / li >
< li > < strong > 불합격 판정 기준< / strong > : < code > 측정값 < SPEC LL< / code > 또는 < code > 측정값 > SPEC UL< / code > < / li >
< / ul >
< p > < strong > 예시< / strong > :< / p >
< table >
< thead >
< tr >
< th style = "text-align: center;" > SPEC LL< / th >
< th style = "text-align: center;" > SPEC UL< / th >
< th style = "text-align: center;" > 측정값< / th >
< th style = "text-align: center;" > 판정< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td style = "text-align: center;" > -1.00< / td >
< td style = "text-align: center;" > 1.00< / td >
< td style = "text-align: center;" > 0.523< / td >
< td style = "text-align: center;" > ✅ OK< / td >
< / tr >
< tr >
< td style = "text-align: center;" > -1.00< / td >
< td style = "text-align: center;" > 1.00< / td >
< td style = "text-align: center;" > 1.200< / td >
< td style = "text-align: center;" > ❌ NG< / td >
< / tr >
< tr >
< td style = "text-align: center;" > -1.00< / td >
< td style = "text-align: center;" > 1.00< / td >
< td style = "text-align: center;" > -1.500< / td >
< td style = "text-align: center;" > ❌ NG< / td >
< / tr >
< tr >
< td style = "text-align: center;" > -1.00< / td >
< td style = "text-align: center;" > 1.00< / td >
< td style = "text-align: center;" > -1.00< / td >
< td style = "text-align: center;" > ✅ OK (경계값 포함)< / td >
< / tr >
< / tbody >
< / table >
< h2 > 5.4 버튼 설명< / h2 >
< table >
< thead >
< tr >
< th > 버튼< / th >
< th > 동작< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > 설정 저장< / strong > < / td >
< td > config.xml에 저장 → 메인 화면의 SPEC 표시 즉시 갱신 → "파라미터 설정이 저장되었습니다." 메시지 → 창 닫힘< / td >
< / tr >
< tr >
< td > < strong > 닫기< / strong > < / td >
< td > 변경 사항 저장하지 않고 창 닫기< / td >
< / tr >
< / tbody >
< / table >
< blockquote >
< p > < strong > 참고< / strong > : SPEC 값은 좌/우 양쪽 채널에 < strong > 공통으로 적용< / strong > 됩니다. 채널별 개별 설정은 지원하지 않습니다.< / p >
< p > < strong > 참고< / strong > : SPEC 값 변경 후 저장하면, 이미 진행 중인 시험에는 영향을 주지 않으며, 다음 시험부터 새 값이 적용됩니다.< / p >
< / blockquote >
< div class = "page-break" > < / div >
< h1 > 6. 측정 데이터 조회 (Data View)< / h1 >
< hr / >
< p > 하단 메뉴에서 < strong > Data (측정 데이터)< / strong > 버튼을 클릭하면 표시됩니다. 다시 클릭하면 메인 화면으로 복귀합니다.
< img src = "./Pasted image 20260624104558.png" alt = "Pasted image 20260624104558.png" / > < / p >
< h2 > 6.1 화면 구성< / h2 >
< h2 > 6.2 필터 조건 상세< / h2 >
< h3 > 1행: 공통 기본 필터< / h3 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > UI 타입< / th >
< th > 기본값< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > 조회 기간< / strong > < / td >
< td > DatePicker (달력) x 2< / td >
< td > 오늘로부터 7일 전 ~ 오늘< / td >
< td > 조회 대상 날짜 범위를 설정합니다. (달력 확대 표시 적용)< / td >
< / tr >
< tr >
< td > < strong > 판정 결과< / strong > < / td >
< td > 드롭다운 ComboBox< / td >
< td > < code > [전체]< / code > / < code > OK< / code > / < code > NG< / code > < / td >
< td > 판정 결과에 따른 필터링을 수행합니다. (기본값: 전체)< / td >
< / tr >
< / tbody >
< / table >
< h3 > 2행: 상세 검색 필터 (DB 스키마 필드 교차 검색)< / h3 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > UI 타입< / th >
< th > 설명< / th >
< th > 기본값< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > ID 검색< / strong > < / td >
< td > TextBox (텍스트 입력)< / td >
< td > < code > IC_SN< / code > 또는 < code > PCB_Barcode< / code > 열에 대한 부분 일치 (LIKE) 검색을 수행합니다.< / td >
< td > (빈 값 = 필터 제외)< / td >
< / tr >
< tr >
< td > < strong > 작업자< / strong > < / td >
< td > TextBox (텍스트 입력)< / td >
< td > 작업자 ID (< code > Operator< / code > ) 열에 대한 부분 일치 검색을 수행합니다.< / td >
< td > (빈 값 = 필터 제외)< / td >
< / tr >
< tr >
< td > < strong > Lot No< / strong > < / td >
< td > TextBox (텍스트 입력)< / td >
< td > 로트 번호 (< code > Lot_No< / code > ) 열에 대한 부분 일치 검색을 수행합니다.< / td >
< td > (빈 값 = 필터 제외)< / td >
< / tr >
< tr >
< td > < strong > 모델< / strong > < / td >
< td > TextBox (텍스트 입력)< / td >
< td > 모델명 (< code > Model< / code > ) 열에 대한 부분 일치 검색을 수행합니다.< / td >
< td > (빈 값 = 필터 제외)< / td >
< / tr >
< / tbody >
< / table >
< h2 > 6.3 조회 및 취소 버튼< / h2 >
< table >
< thead >
< tr >
< th > 버튼< / th >
< th > 색상< / th >
< th > 동작< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > Search< / strong > < / td >
< td > 파란색 계열< / td >
< td > 설정된 필터 조건으로 로컬 로그 CSV 백업 파일을 검색하여 그리드에 표시합니다. (시스템 안정성을 위해 데이터베이스 직접 조회 대신 로컬 백업 파일을 조회하도록 설계되었습니다.)< / td >
< / tr >
< tr >
< td > < strong > Cancel (취소)< / strong > < / td >
< td > 빨간색 계열< / td >
< td > 조회 중일 때 로딩 화면 내부에 나타나며, 진행 중인 파일 검색 작업을 중단하고 이전 화면으로 복귀합니다.< / td >
< / tr >
< / tbody >
< / table >
< h3 > Search 버튼 동작 상세< / h3 >
< ol >
< li > 지정된 조회 기간에 해당하는 일별 로그 CSV 파일만 조회하여 검색을 수행합니다. (불필요한 파일 스캔을 제한하여 검색 속도를 향상시켰습니다.)< / li >
< li > 검색 조건(판정, ID, 작업자, Lot No, 모델)에 맞는 데이터를 인메모리 부분 일치 방식으로 검색합니다.< / li >
< li > 검색 결과가 존재하지 않을 경우 "해당 조건의 데이터가 없습니다." 알림을 표시합니다.< / li >
< / ol >
< h3 > 조회 중 로딩 및 Cancel 버튼 동작 상세< / h3 >
< ol >
< li > Search 버튼 클릭 시 화면 전체에 "Searching Logs..." 라는 반투명 오버레이가 활성화되어 검색이 진행 중임을 나타냅니다.< / li >
< li > 검색이 지연될 경우 로딩 오버레이의 < strong > Cancel (취소)< / strong > 버튼을 누르면 즉시 조회가 중단되고, "조회가 취소되었습니다." 메시지 박스 팝업 후 자동으로 메인 화면으로 복귀합니다.< / li >
< / ol >
< h2 > 6.4 데이터 조회 결과 표(그리드) 항목 안내< / h2 >
< table >
< thead >
< tr >
< th > 컬럼 헤더명< / th >
< th > 정렬< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > IC_SN< / strong > < / td >
< td > 좌측< / td >
< td > 제품 고유 IC 시리얼 번호< / td >
< / tr >
< tr >
< td > < strong > PCB_Barcode< / strong > < / td >
< td > 좌측< / td >
< td > PCB 바코드 고유 식별 정보< / td >
< / tr >
< tr >
< td > < strong > Maker< / strong > < / td >
< td > 좌측< / td >
< td > 로그인 시 입력된 제조사명< / td >
< / tr >
< tr >
< td > < strong > Model< / strong > < / td >
< td > 좌측< / td >
< td > 로그인 시 입력된 검사 모델명< / td >
< / tr >
< tr >
< td > < strong > Variant_1< / strong > < / td >
< td > 좌측< / td >
< td > 로그인 시 입력된 세부 파생 모델 1< / td >
< / tr >
< tr >
< td > < strong > Variant_2< / strong > < / td >
< td > 좌측< / td >
< td > 로그인 시 입력된 세부 파생 모델 2< / td >
< / tr >
< tr >
< td > < strong > Operator< / strong > < / td >
< td > 좌측< / td >
< td > 작업 진행자 사용자 ID< / td >
< / tr >
< tr >
< td > < strong > Production_Date< / strong > < / td >
< td > 좌측< / td >
< td > 검사 수행 및 완료 일시 (yyyy-MM-dd HH:mm:ss)< / td >
< / tr >
< tr >
< td > < strong > Line< / strong > < / td >
< td > 좌측< / td >
< td > 로그인 공정 작업 라인< / td >
< / tr >
< tr >
< td > < strong > Lot_No< / strong > < / td >
< td > 좌측< / td >
< td > 생산 Lot 번호< / td >
< / tr >
< tr >
< td > < strong > Jig_No< / strong > < / td >
< td > 좌측< / td >
< td > 사용 지그(Jig) 번호< / td >
< / tr >
< tr >
< td > < strong > Channel< / strong > < / td >
< td > 좌측< / td >
< td > 검사 채널 (< code > LEFT< / code > 또는 < code > RIGHT< / code > )< / td >
< / tr >
< tr >
< td > < strong > Spec_UL< / strong > < / td >
< td > 좌측< / td >
< td > 누설 상한 규격값 (sccm)< / td >
< / tr >
< tr >
< td > < strong > Spec_LL< / strong > < / td >
< td > 좌측< / td >
< td > 누설 하한 규격값 (sccm)< / td >
< / tr >
< tr >
< td > < strong > Leak_Value< / strong > < / td >
< td > < strong > 우측< / strong > < / td >
< td > 측정된 누설 리크량 (< strong > 볼드 표시< / strong > )< / td >
< / tr >
< tr >
< td > < strong > Result< / strong > < / td >
< td > < strong > 중앙< / strong > < / td >
< td > 최종 판정 결과 (< code > OK< / code > 초록 / < code > NG< / code > 빨강 볼드 강조)< / td >
< / tr >
< / tbody >
< / table >
< h3 > 표(그리드) 스타일< / h3 >
< ul >
< li > 격자선: 수평 및 수직 연회색 격자선을 표시합니다.< / li >
< li > 교대 행 배경: 홀수 행은 흰색, 짝수 행은 연회색 배경을 적용하여 가독성을 높였습니다.< / li >
< li > 선택된 행: 연파란색 배경에 파란색 텍스트로 강조합니다.< / li >
< li > 컬럼 헤더 정렬: 헤더 클릭 시 해당 열 기준으로 오름차순 또는 내림차순 정렬이 가능합니다. (컬럼 순서 변경은 제한됩니다.)< / li >
< li > 격자 유지: 조회된 데이터 개수가 50개 미만이더라도 화면 구성을 유지하기 위해 나머지 행은 빈 칸으로 채워져 표시됩니다.< / li >
< / ul >
< h2 > 6.5 화면 닫기< / h2 >
< table >
< thead >
< tr >
< th > 방법< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 하단 < strong > Close< / strong > 버튼 클릭< / td >
< td > 메인 화면으로 복귀합니다.< / td >
< / tr >
< tr >
< td > 하단 메뉴 < strong > Data< / strong > 버튼 재클릭< / td >
< td > 토글 동작을 통해 메인 화면으로 복귀합니다.< / td >
< / tr >
< / tbody >
< / table >
< div class = "page-break" > < / div >
< h1 > 7. 자동 시험 프로세스< / h1 >
< hr / >
< h2 > 7.1 개요< / h2 >
< p > 자동 시험은 시작 신호(LEFT_START 또는 RIGHT_START)에 의해 작동하며, 7단계로 진행됩니다. 좌/우 채널은 각각 독립적인 백그라운드 스레드에서 실행되지만, < strong > 중복 실행 방지 기능< / strong > 을 통해 동시 시험은 방지됩니다.< / p >
< h2 > 7.2 전체 프로세스 흐름도< / h2 >
< div style = "border-left: 3px solid #1e3799; padding-left: 20px; margin: 25px auto; max-width: 600px; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; page-break-inside: avoid; font-size: 9pt; line-height: 1.5;" >
<!-- Trigger -->
< div style = "margin-bottom: 15px; position: relative;" >
< span style = "position: absolute; left: -26px; top: 4px; width: 10px; height: 10px; background-color: #1e3799; border-radius: 50%;" > < / span >
< div style = "font-weight: bold; color: #2f3542;" > 시작 신호 감지 < span style = "font-weight: normal; font-size: 8pt; color: #747d8c;" > (좌측/우측 시작 신호 입력 시)< / span > < / div >
< / div >
<!-- Semaphore -->
< div style = "margin-bottom: 20px; position: relative; background-color: #f1f2f6; padding: 10px; border-radius: 4px; border-left: 3px solid #f6b93b;" >
< span style = "position: absolute; left: -26px; top: 14px; width: 10px; height: 10px; background-color: #f6b93b; border-radius: 50%;" > < / span >
< strong > 중복 실행 방지 대기< / strong >
< div style = "font-size: 8.5pt; color: #57606f; margin-top: 3px;" >
• 다른 채널이 시험 중인 경우: "대기중" 메시지를 표시하며 순서 대기< br >
• 시험 가능 상태인 경우: 다음 단계 진행 (좌/우 채널 동시 시험 방지)
< / div >
< / div >
<!-- Step 1 -->
< div style = "margin-bottom: 15px; position: relative;" >
< span style = "position: absolute; left: -26px; top: 4px; width: 10px; height: 10px; background-color: #1e3799; border-radius: 50%;" > < / span >
< strong style = "color: #1e3799;" > 1단계: 시험 시작 (초기화)< / strong >
< div style = "font-size: 8.5pt; color: #57606f; margin-top: 3px;" >
• 합격/불합격 신호 출력 초기화 (OFF)< br >
• 메인 화면 결과 표시 초기화 및 시작 시간 갱신< br >
• 누설 센서 수신 데이터 초기화
< / div >
< / div >
<!-- Step 2 -->
< div style = "margin-bottom: 15px; position: relative;" >
< span style = "position: absolute; left: -26px; top: 4px; width: 10px; height: 10px; background-color: #1e3799; border-radius: 50%;" > < / span >
< strong style = "color: #1e3799;" > 2단계: 제품 ID 판독< / strong >
< div style = "font-size: 8.5pt; color: #57606f; margin-top: 3px;" >
• 판독 장치(4251 보드)를 통해 제품 ID 센서에서 16자리 ID 판독< br >
• < span style = "color: #ff4757; font-weight: bold;" > [실패 시]< / span > "ID 읽기 실패" 오류 출력 후 시험이 종료되며 결과는 기록 및 저장에서 제외됩니다.
< / div >
< / div >
<!-- Step 3 -->
< div style = "margin-bottom: 15px; position: relative; background-color: #f8f9fa; padding: 10px; border-radius: 4px; border-left: 3px solid #1e3799;" >
< span style = "position: absolute; left: -26px; top: 14px; width: 10px; height: 10px; background-color: #1e3799; border-radius: 50%;" > < / span >
< strong style = "color: #1e3799;" > 3단계: PCB 바코드 데이터베이스 조회< / strong >
< div style = "font-size: 8.5pt; color: #57606f; margin-top: 3px;" >
• 데이터베이스에서 제품 ID(`IC_SN`)에 매칭되는 `PCB_Barcode` 조회 (5초 대기 시간 초과 제한)< br >
• < span style = "color: #ff4757; font-weight: bold;" > [실패/누락 시]< / span > "바코드 매핑 실패" 오류 출력 후 즉시 종료되며 결과는 기록 및 저장에서 제외됩니다.
< / div >
< / div >
<!-- Step 4 -->
< div style = "margin-bottom: 15px; position: relative;" >
< span style = "position: absolute; left: -26px; top: 4px; width: 10px; height: 10px; background-color: #1e3799; border-radius: 50%;" > < / span >
< strong style = "color: #1e3799;" > 4단계: 누설 시험 수행 (계측)< / strong >
< div style = "font-size: 8.5pt; color: #57606f; margin-top: 3px;" >
• 화면에 "LEAK 시험중" 표시< br >
• 누설 센서(Sentinel C28)로부터 측정 결과 수신 대기 (최대 30초)< br >
• < span style = "color: #ff4757; font-weight: bold;" > [시간 초과 시]< / span > 통신 시간 초과 오류 발생 및 불합격(NG) 판정으로 자동 종료 (측정값 9.9999로 데이터베이스에 저장)
< / div >
< / div >
<!-- Step 5 -->
< div style = "margin-bottom: 15px; position: relative;" >
< span style = "position: absolute; left: -26px; top: 4px; width: 10px; height: 10px; background-color: #1e3799; border-radius: 50%;" > < / span >
< strong style = "color: #1e3799;" > 5단계: 합격 판정< / strong >
< div style = "font-size: 8.5pt; color: #57606f; margin-top: 3px;" >
• 규격 하한값 ≤ 측정값 ≤ 규격 상한값 이면 **OK (합격)**, 범위를 벗어나면 **NG (불합격)**로 판정합니다.
< / div >
< / div >
<!-- Step 6 -->
< div style = "margin-bottom: 15px; position: relative;" >
< span style = "position: absolute; left: -26px; top: 4px; width: 10px; height: 10px; background-color: #1e3799; border-radius: 50%;" > < / span >
< strong style = "color: #1e3799;" > 6단계: 판정 스펙 교차 검증< / strong >
< div style = "font-size: 8.5pt; color: #57606f; margin-top: 3px;" >
• 프로그램 판정과 센서 자체 판정을 비교 분석합니다.< br >
• 판정이 서로 다를 경우 화면에 경고 창을 표시합니다. (통신 설정에서 알림 창 표시를 끌 수 있습니다.)
< / div >
< / div >
<!-- Step 7 -->
< div style = "margin-bottom: 20px; position: relative;" >
< span style = "position: absolute; left: -26px; top: 4px; width: 10px; height: 10px; background-color: #1e3799; border-radius: 50%;" > < / span >
< strong style = "color: #1e3799;" > 7단계: 결과 출력 및 저장< / strong >
< div style = "font-size: 8.5pt; color: #57606f; margin-top: 3px;" >
• 로컬 CSV 백업 파일 기록 및 데이터베이스에 검사 결과 저장< br >
• 판정 결과에 따라 외부 설비에 출력 신호(OK 또는 NG 포트) 전송< br >
• 메인 화면에 최종 측정값 및 판정 출력 ("시험 완료" 표시)
< / div >
< / div >
<!-- End -->
< div style = "position: relative; background-color: #f1fff5; padding: 10px; border-radius: 4px; border-left: 3px solid #2ed573;" >
< span style = "position: absolute; left: -26px; top: 14px; width: 10px; height: 10px; background-color: #2ed573; border-radius: 50%;" > < / span >
< strong style = "color: #2f855a;" > 순서 잠금 해제< / strong >
< div style = "font-size: 8.5pt; color: #57606f; margin-top: 3px;" >
• 시험 종료 후 순서 대기가 해제되며, 대기 중이던 다른 채널이 0.35초 대기 후 자동으로 시험을 개시합니다.
< / div >
< / div >
< / div >
< h2 > 7.3 좌/우 채널 순차 실행 및 대기< / h2 >
< p > 좌/우 채널은 < strong > 동시에 시험을 수행할 수 없습니다< / strong > . 이는 하드웨어 통신 간섭 및 충돌을 방지하기 위함입니다.< / p >
< table >
< thead >
< tr >
< th > 상황< / th >
< th > 동작< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 한 채널만 시험 시작 신호 발생< / td >
< td > 즉시 시험을 시작합니다.< / td >
< / tr >
< tr >
< td > 양쪽 채널 동시 신호 발생< / td >
< td > 먼저 순서를 획득한 채널이 시험을 진행하며, 다른 채널은 "대기중"을 표시하며 대기합니다.< / td >
< / tr >
< tr >
< td > 시험 완료 후< / td >
< td > 대기 중이던 채널이 자동으로 시험을 시작합니다. (안정화를 위해 0.35초의 대기 시간이 적용됩니다.)< / td >
< / tr >
< / tbody >
< / table >
< blockquote >
< p > < strong > 참고< / strong > : 하드웨어 통신 안정화를 위해 이전 채널의 시험 종료 후 < strong > 0.35초의 여유 시간< / strong > 이 자동으로 적용됩니다.< / p >
< / blockquote >
< h2 > 7.4 시간 초과 (타임아웃) 처리< / h2 >
< p > 누설 센서에서 30초 이내에 계측 결과 응답이 없으면 다음과 같이 처리됩니다.< / p >
< ol >
< li > 화면의 오류 메시지 영역에 "통신 시간 초과" 오류 메시지를 표시합니다. (데이터베이스 저장 실패 시 "DB 저장 실패" 사유도 함께 노출)< / li >
< li > 해당 채널의 불합격(NG) 물리 신호를 내보냅니다.< / li >
< li > 측정값 < code > 9.9999< / code > , 판정 < code > NG< / code > 로 기록을 생성합니다.< / li >
< li > 로컬 CSV 로그 파일 및 데이터베이스에 검사 결과를 기록합니다. (단, 이전 단계인 제품 ID 판독에 성공한 상태여야 저장이 이루어집니다.)< / li >
< / ol >
< h2 > 7.5 제품 ID 및 PCB 바코드 연동 예외 처리< / h2 >
< p > 데이터 일관성과 무결성을 확보하기 위해 제품 식별 정보가 불완전한 상태에서의 데이터 저장을 차단하는 안전 검증 절차가 작동합니다.< / p >
< h3 > 1. 제품 ID(IC_SN) 판독 실패 시< / h3 >
< ul >
< li > < strong > 동작< / strong > : 제품 ID 판독 장치(4251 보드)로부터 16자리 ID 취득을 실패하는 경우 진행 메시지에 < code > "ID 읽기 실패"< / code > 를 표시하고, 해당 채널의 NG 물리 신호를 즉시 출력합니다.< / li >
< li > < strong > 저장 제한< / strong > : 이 경우에는 로컬 CSV 로그 기록 및 데이터베이스 저장을 < strong > 완전히 건너뜁니다< / strong > .< / li >
< / ul >
< h3 > 2. PCB 바코드 DB 조회(매핑) 실패 시< / h3 >
< ul >
< li > < strong > 동작< / strong > : 판독 완료 후 데이터베이스 서버에서 < code > IC_SN< / code > 에 해당하는 < code > PCB_Barcode< / code > 를 조회할 때, 정해진 시간(5초) 내에 응답이 없거나 일치하는 데이터가 없는 경우 화면에 < code > "바코드 매핑 실패"< / code > 관련 오류를 표시하고 NG 신호를 출력합니다.< / li >
< li > < strong > 저장 제한< / strong > : 이 경우에도 제품 검사 자체를 진행하지 않고 즉시 스킵하며, < strong > 데이터베이스 및 로컬 CSV 로그 기록 저장을 건너뜁니다< / strong > . (오프라인 모드에서는 임시 바코드 정보를 주입하여 검사 동작을 테스트할 수 있습니다.)< / li >
< / ul >
< h2 > 7.6 누설 센서 측정 결과 채널 분류< / h2 >
< p > 누설 센서에서 수신한 데이터는 다음 채널 번호 정보를 기준으로 정렬됩니다.< / p >
< table >
< thead >
< tr >
< th > 채널 번호< / th >
< th > 대상< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < code > C01< / code > 또는 < code > 1< / code > < / td >
< td > 좌측(LEFT) 채널< / td >
< / tr >
< tr >
< td > < code > C02< / code > 또는 < code > 2< / code > < / td >
< td > 우측(RIGHT) 채널< / td >
< / tr >
< tr >
< td > 채널 번호 식별 불가< / td >
< td > 현재 활성화되어 시험을 진행 중인 채널로 자동 배정< / td >
< / tr >
< / tbody >
< / table >
< h2 > 7.7 ID 수동 테스트< / h2 >
< p > 하단 메뉴의 < strong > ID Test (L)< / strong > 또는 < strong > ID Test (R)< / strong > 버튼을 사용하면 시험 시작 신호 없이 센서 ID 판독 동작만 단독으로 수행할 수 있습니다.< / p >
< h3 > 실행 흐름< / h3 >
< ol >
< li > 중복 방지 잠금 획득 (다른 채널이 시험 중인 경우 대기)< / li >
< li > 결과 표시 초기화 및 0.5초 대기< / li >
< li > "센서 정보 읽는 중" 메시지 표시 후 ID 판독 시작< / li >
< li > 성공 시: 판독된 ID 표시 및 "ID 테스트 완료" 메시지 표시< / li >
< li > 실패 시: ID 영역에 "-" 표시 및 "ID 테스트 실패" 메시지 표시< / li >
< li > 잠금 해제< / li >
< / ol >
< blockquote >
< p > < strong > 용도< / strong > : 장비 설치 후 통신 상태 확인 및 디버깅 시 사용합니다. 실제 누설 시험(압력 계측)은 수행하지 않습니다.< / p >
< / blockquote >
< h2 > 7.8 측정 판정 및 저장 기준< / h2 >
< p > 프로그램의 판정 스펙(상하한 규격) 기준과 누설 센서 자체의 내부 스펙 판정 기준이 일치하지 않는 경우, 저장소에는 다음과 같이 저장됩니다.< / p >
< h3 > 저장 기준 요약< / h3 >
< ul >
< li > < strong > 최종 저장 판정 (Result)< / strong > : 센서 자체의 판정값과 무관하게, 항상 < strong > 프로그램 화면 판정 기준< / strong > 으로 데이터베이스 및 로그에 저장됩니다.< / li >
< li > < strong > 동작 예시< / strong > : 프로그램 판정이 합격(< code > OK< / code > )이지만 센서 자체의 내부 판정이 불합격(< code > NG< / code > 등)인 경우에도, 최종 기록 및 CSV에는 < strong > < code > OK< / code > (합격)< / strong > 로 기록됩니다.< / li >
< / ul >
< h3 > 판정 스펙 불일치 시의 동작< / h3 >
< ul >
< li > 양측의 판정 스펙이 다르면 불일치 로그가 기록되며 화면에 경고 팝업이 출력되지만, < strong > 최종 저장되는 판정 결과에는 영향을 미치지 않고 프로그램 판정값을 유지< / strong > 합니다.< / li >
< / ul >
< div class = "page-break" > < / div >
< h1 > 8. 로그 및 데이터 관리< / h1 >
< hr / >
< h2 > 8.1 검사 데이터 로그 (CSV)< / h2 >
< h3 > 기본 정보< / h3 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > 내용< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > 저장 위치< / strong > < / td >
< td > < code > C:\LeakTest\Logs\yyyy-MM-dd.csv< / code > < / td >
< / tr >
< tr >
< td > < strong > 파일 형식< / strong > < / td >
< td > CSV (UTF-8 인코딩)< / td >
< / tr >
< tr >
< td > < strong > 파일 생성< / strong > < / td >
< td > 날짜별 자동 생성 (해당 날짜 첫 시험 시)< / td >
< / tr >
< tr >
< td > < strong > 데이터 추가< / strong > < / td >
< td > 매 시험 완료 시 자동으로 해당 날짜 파일에 1행 추가< / td >
< / tr >
< / tbody >
< / table >
< h3 > CSV 헤더 및 컬럼< / h3 >
< pre > < code > IC_SN,PCB_Barcode,Maker,Model,Variant_1,Variant_2,Operator,Production_Date,Line,Lot_No,Jig_No,Channel,Spec_UL,Spec_LL,Leak_Value,Result
< / code > < / pre >
< table >
< thead >
< tr >
< th > 컬럼< / th >
< th > 예시< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < code > IC_SN< / code > < / td >
< td > < code > 260508A00123B01C< / code > < / td >
< td > 제품 고유 시리얼 번호 (PK/FK)< / td >
< / tr >
< tr >
< td > < code > PCB_Barcode< / code > < / td >
< td > < code > 260508A00123B01C< / code > < / td >
< td > PCB 바코드 고유 식별 정보 (UK)< / td >
< / tr >
< tr >
< td > < code > Maker< / code > < / td >
< td > < code > Hyundai< / code > < / td >
< td > 메이커 정보< / td >
< / tr >
< tr >
< td > < code > Model< / code > < / td >
< td > < code > NE1aW< / code > < / td >
< td > 모델 정보< / td >
< / tr >
< tr >
< td > < code > Variant_1< / code > < / td >
< td > < code > PT< / code > < / td >
< td > 변형1 정보< / td >
< / tr >
< tr >
< td > < code > Variant_2< / code > < / td >
< td > < code > SENSOR< / code > < / td >
< td > 변형2 정보< / td >
< / tr >
< tr >
< td > < code > Operator< / code > < / td >
< td > < code > op001< / code > < / td >
< td > 작업자 ID< / td >
< / tr >
< tr >
< td > < code > Production_Date< / code > < / td >
< td > < code > 2026-05-08 10:30:15< / code > < / td >
< td > 검사 수행 일시< / td >
< / tr >
< tr >
< td > < code > Line< / code > < / td >
< td > < code > L1< / code > < / td >
< td > 작업 라인 번호< / td >
< / tr >
< tr >
< td > < code > Lot_No< / code > < / td >
< td > < code > LOT001< / code > < / td >
< td > Lot 번호< / td >
< / tr >
< tr >
< td > < code > Jig_No< / code > < / td >
< td > < code > JIG01< / code > < / td >
< td > 지그 번호< / td >
< / tr >
< tr >
< td > < code > Channel< / code > < / td >
< td > < code > LEFT< / code > < / td >
< td > 검사 채널 (LEFT 또는 RIGHT)< / td >
< / tr >
< tr >
< td > < code > Spec_UL< / code > < / td >
< td > < code > 1.00< / code > < / td >
< td > 규격 상한값< / td >
< / tr >
< tr >
< td > < code > Spec_LL< / code > < / td >
< td > < code > -1.00< / code > < / td >
< td > 규격 하한값< / td >
< / tr >
< tr >
< td > < code > Leak_Value< / code > < / td >
< td > < code > 0.5234< / code > < / td >
< td > 측정된 릭 측정값 (소수점 4자리)< / td >
< / tr >
< tr >
< td > < code > Result< / code > < / td >
< td > < code > OK< / code > < / td >
< td > 최종 판정 결과 (OK 또는 NG)< / td >
< / tr >
< / tbody >
< / table >
< h3 > CSV 예시< / h3 >
< pre > < code class = "language-csv" > IC_SN,PCB_Barcode,Maker,Model,Variant_1,Variant_2,Operator,Production_Date,Line,Lot_No,Jig_No,Channel,Spec_UL,Spec_LL,Leak_Value,Result
260508A00123B01C,260508A00123B01C,Hyundai,NE1aW,PT,SENSOR,op001,2026-05-08 10:30:15,L1,LOT001,JIG01,LEFT,1.00,-1.00,0.5234,OK
260508A00456D02E,260508A00456D02E,Hyundai,NE1aW,PT,SENSOR,op002,2026-05-08 10:30:45,L1,LOT001,JIG01,RIGHT,1.00,-1.00,1.2000,NG
< / code > < / pre >
< blockquote >
< p > < strong > 참고< / strong > : 타임아웃 발생 시에도 측정값 < code > 0.0000< / code > , 판정 < code > NG< / code > 로 로그에 기록됩니다.< / p >
< p > < strong > 참고< / strong > : CSV 값에 쉼표, 따옴표, 줄바꿈이 포함된 경우 자동으로 이스케이프 처리됩니다.< / p >
< / blockquote >
< hr / >
< h2 > 8.2 시스템 로그< / h2 >
< h3 > 기본 정보< / h3 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > 내용< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > 저장 위치< / strong > < / td >
< td > < code > C:\LeakTest\Logs\yyyy-MM-dd_system.log< / code > < / td >
< / tr >
< tr >
< td > < strong > 파일 형식< / strong > < / td >
< td > 텍스트 파일 (UTF-8 인코딩)< / td >
< / tr >
< tr >
< td > < strong > 내용< / strong > < / td >
< td > 통신 오류, 시스템 이벤트 등< / td >
< / tr >
< / tbody >
< / table >
< h3 > 로그 형식< / h3 >
< pre > < code > [HH:mm:ss.fff] [TAG] 메시지 내용
< / code > < / pre >
< h3 > 예시< / h3 >
< pre > < code > [10:30:00.123] [SYSTEM] 프로그램 시작
[10:30:01.456] [COMM] Sentinel C28 포트 연결 성공 (COM1)
[10:35:15.789] [ERROR] Sentinel C28 통신 타임아웃
< / code > < / pre >
< hr / >
< h2 > 8.3 설정 파일< / h2 >
< h3 > config.xml< / h3 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > 내용< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > 위치< / strong > < / td >
< td > 프로그램 실행 폴더 (< code > C:\LeakTest\config.xml< / code > )< / td >
< / tr >
< tr >
< td > < strong > 생성< / strong > < / td >
< td > 최초 실행 시 기본값으로 자동 생성< / td >
< / tr >
< tr >
< td > < strong > 수정< / strong > < / td >
< td > Comm. Settings 또는 Parameters에서 저장 시 갱신< / td >
< / tr >
< / tbody >
< / table >
< pre > < code class = "language-xml" > < AppConfig>
< SensorPort> COM1< /SensorPort>
< SensorBaudRate> 9600< /SensorBaudRate>
< Board4251Port> COM3< /Board4251Port>
< Board4251BaudRate> 115200< /Board4251BaudRate>
< Board4251Timeout> 5000< /Board4251Timeout>
< SpecUL> 1.00< /SpecUL>
< SpecLL> -1.00< /SpecLL>
< EnableSpecMismatchAlarm> true< /EnableSpecMismatchAlarm>
< /AppConfig>
< / code > < / pre >
< table >
< thead >
< tr >
< th > 설정 키< / th >
< th > 기본값< / th >
< th > 설정 위치< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < code > SensorPort< / code > < / td >
< td > COM1< / td >
< td > Comm. Settings< / td >
< td > C28 센서 COM 포트< / td >
< / tr >
< tr >
< td > < code > SensorBaudRate< / code > < / td >
< td > 9600< / td >
< td > Comm. Settings< / td >
< td > C28 센서 통신 속도< / td >
< / tr >
< tr >
< td > < code > Board4251Port< / code > < / td >
< td > COM3< / td >
< td > Comm. Settings< / td >
< td > 4251 보드 COM 포트< / td >
< / tr >
< tr >
< td > < code > Board4251BaudRate< / code > < / td >
< td > 115200< / td >
< td > Comm. Settings< / td >
< td > 4251 보드 통신 속도< / td >
< / tr >
< tr >
< td > < code > Board4251Timeout< / code > < / td >
< td > 5000< / td >
< td > (코드 내 고정)< / td >
< td > 4251 보드 응답 대기 시간(ms)< / td >
< / tr >
< tr >
< td > < code > SpecUL< / code > < / td >
< td > 1.00< / td >
< td > Parameters< / td >
< td > 누설 상한 규격값< / td >
< / tr >
< tr >
< td > < code > SpecLL< / code > < / td >
< td > -1.00< / td >
< td > Parameters< / td >
< td > 누설 하한 규격값< / td >
< / tr >
< tr >
< td > < code > EnableSpecMismatchAlarm< / code > < / td >
< td > true< / td >
< td > Comm. Settings< / td >
< td > 스펙 불일치 알림 활성화 여부 (true/false)< / td >
< / tr >
< / tbody >
< / table >
< h3 > Database.ini< / h3 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > 내용< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > 위치< / strong > < / td >
< td > < code > C:\LeakTest\Database.ini< / code > < / td >
< / tr >
< tr >
< td > < strong > 생성< / strong > < / td >
< td > 최초 실행 시 해당 파일이 없으면 기본 양식으로 자동 생성. 배포 폴더(< code > C:\LeakTest\< / code > )와 동일 위치에 저장되어 경로 관리가 단순함< / td >
< / tr >
< tr >
< td > < strong > 수정< / strong > < / td >
< td > 메모장 등의 텍스트 에디터를 통해 연결 주소 및 프로시저 정보 직접 수정< / td >
< / tr >
< / tbody >
< / table >
< pre > < code class = "language-ini" > ; =====================================================================
; Leak Test System - 데이터베이스 및 로그인 설정 파일 (Database.ini)
; =====================================================================
; [데이터베이스 접속 상세 설정]
; Db_Server : 중앙 MSSQL 데이터베이스 서버의 IP 주소 또는 호스트명
; Db_Name : 검사 데이터를 저장할 대상 데이터베이스 이름
; Db_User : 데이터베이스 접속 계정 ID (예: sa)
; Db_Password: 데이터베이스 접속 계정의 비밀번호
Db_Server=127.0.0.1, 1433
Db_Name=Test_DB
Db_User=db_user
Db_Password=db_password
[Login]
; Procedure: 로그인 검증에 사용할 DB 저장 프로시저명입니다. (공란일 경우 기본 테이블 조회 쿼리 작동)
Procedure=dbo.CheckOperator
; ProcessName: 로그인 검증 시 전달할 공정 이름입니다.
ProcessName=EOL
; OfflinePreview: 오프라인 모드 활성화 여부 (true = DB 연결 없이 로그인 통과, false = 실제 DB 인증)
OfflinePreview=false
< / code > < / pre >
< table >
< thead >
< tr >
< th > 설정 키< / th >
< th > 예시 / 기본값< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < code > Db_Server< / code > < / td >
< td > < code > [서버IP], [포트번호]< / code > (예: 127.0.0.1, 1433)< / td >
< td > 데이터베이스 서버 IP 주소 및 포트 번호< / td >
< / tr >
< tr >
< td > < code > Db_Name< / code > < / td >
< td > < code > [데이터베이스명]< / code > (예: Test_DB)< / td >
< td > 대상 데이터베이스(DB) 이름< / td >
< / tr >
< tr >
< td > < code > Db_User< / code > < / td >
< td > < code > [사용자ID]< / code > (예: db_user)< / td >
< td > 데이터베이스 접속 계정 ID< / td >
< / tr >
< tr >
< td > < code > Db_Password< / code > < / td >
< td > < code > [비밀번호]< / code > (예: db_password)< / td >
< td > 데이터베이스 접속 계정 비밀번호< / td >
< / tr >
< tr >
< td > < code > Procedure< / code > < / td >
< td > dbo.CheckOperator< / td >
< td > 로그인 계정 검증용 데이터베이스 프로그램명< / td >
< / tr >
< tr >
< td > < code > ProcessName< / code > < / td >
< td > EOL< / td >
< td > 검증 공정명< / td >
< / tr >
< tr >
< td > < code > OfflinePreview< / code > < / td >
< td > false< / td >
< td > true 시 DB 연결 없이 로그인 즉시 성공 (오프라인 모드)< / td >
< / tr >
< / tbody >
< / table >
< blockquote >
< p > < strong > SSL 인증 오류 방지< / strong > : DB 연결 시 SSL 인증서 신뢰 오류가 발생하는 환경을 방지하기 위해 프로그램 내부에서 자동으로 < code > TrustServerCertificate=True;< / code > 옵션을 연결 문자열 끝에 추가하여 안정적인 동작을 보장합니다.< / p >
< / blockquote >
< h3 > LoginOptions.json / LoginHistory.json< / h3 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > 내용< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > 위치< / strong > < / td >
< td > < code > C:\LeakTest\< / code > < / td >
< / tr >
< tr >
< td > < strong > 생성< / strong > < / td >
< td > 최초 실행 시 자동 생성< / td >
< / tr >
< tr >
< td > < strong > 수정< / strong > < / td >
< td > 프로그램 내 로그인 화면 사용 시 자동 갱신< / td >
< / tr >
< / tbody >
< / table >
< table >
< thead >
< tr >
< th > 파일< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < code > LoginOptions.json< / code > < / td >
< td > 로그인 화면 각 필드(Maker, Model, Variant_1 등)의 자동완성 드롭다운 선택지 목록 저장< / td >
< / tr >
< tr >
< td > < code > LoginHistory.json< / code > < / td >
< td > 최근 로그인 정보(작업자 ID, 라인, 모델 등 전체 세트)를 최대 10건 저장하여 재사용< / td >
< / tr >
< / tbody >
< / table >
< h3 > DioConfig.ini< / h3 >
< table >
< thead >
< tr >
< th > 항목< / th >
< th > 내용< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < strong > 위치< / strong > < / td >
< td > < code > [프로그램 폴더]\Settings\DioConfig.ini< / code > < / td >
< / tr >
< tr >
< td > < strong > 생성< / strong > < / td >
< td > 최초 실행 시 자동 생성< / td >
< / tr >
< tr >
< td > < strong > 수정< / strong > < / td >
< td > 일반적으로 수정 불필요 (하드웨어 변경 시에만)< / td >
< / tr >
< / tbody >
< / table >
< pre > < code class = "language-ini" > [DIO]
CompanyName=ADLink
BoardCnt=1
[BOARD_1]
BoardType=PCI_7432
BoardNumber=0
[BOARD_1_IN]
0=LEFT_START,1,좌측 시험 시작 신호
1=RIGHT_START,1,우측 시험 시작 신호
[BOARD_1_OUT]
0=LEFT_OK,1,좌측 합격 출력
1=RIGHT_OK,1,우측 합격 출력
2=PC_ON,1,PC 가동 신호
3=LEFT_NG,1,좌측 불합격 출력
4=RIGHT_NG,1,우측 불합격 출력
< / code > < / pre >
< p > < strong > INI 포맷 설명< / strong > : < code > 비트인덱스=신호명,활성여부,설명< / code > < / p >
< hr / >
< h2 > 8.4 파일 관리 주의사항< / h2 >
< table >
< thead >
< tr >
< th > 주의사항< / th >
< th > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > Logs 폴더 삭제 금지< / td >
< td > 검사 기록이 영구 삭제됩니다< / td >
< / tr >
< tr >
< td > CSV 파일 직접 편집< / td >
< td > Excel 등으로 편집 시 인코딩이 변경될 수 있으므로 주의< / td >
< / tr >
< tr >
< td > config.xml 직접 편집< / td >
< td > 잘못된 값 입력 시 프로그램 오작동 가능. 프로그램 내 설정 화면 사용 권장< / td >
< / tr >
< tr >
< td > 디스크 용량< / td >
< td > 일일 수백 건 검사 기준, 연간 약 50~100MB 정도의 로그가 생성됩니다< / td >
< / tr >
< / tbody >
< / table >
< hr / >
< h2 > 8.5 데이터베이스 데이터 관리< / h2 >
< p > 검사가 완료되면 측정 결과와 작업 정보가 데이터베이스에 자동으로 저장됩니다.< / p >
< h3 > 데이터베이스 저장 항목 안내< / h3 >
< ul >
< li > < strong > 저장 대상 테이블< / strong > : < code > EOL< / code > < / li >
< li > < strong > 저장 항목 상세< / strong > :< / li >
< / ul >
< table >
< thead >
< tr >
< th style = "text-align: left;" > 데이터베이스 항목명< / th >
< th style = "text-align: left;" > 구분< / th >
< th style = "text-align: left;" > 설명< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td style = "text-align: left;" > < strong > < code > IC_SN< / code > < / strong > < / td >
< td style = "text-align: left;" > 문자형 (최대 10자)< / td >
< td style = "text-align: left;" > 제품 고유 IC 일련번호< / td >
< / tr >
< tr >
< td style = "text-align: left;" > < strong > < code > PCB_Barcode< / code > < / strong > < / td >
< td style = "text-align: left;" > 문자형 (최대 10자)< / td >
< td style = "text-align: left;" > 조회된 PCB 바코드 정보< / td >
< / tr >
< tr >
< td style = "text-align: left;" > < code > Maker< / code > < / td >
< td style = "text-align: left;" > 문자형 (최대 10자)< / td >
< td style = "text-align: left;" > 로그인 시 입력한 제조사명< / td >
< / tr >
< tr >
< td style = "text-align: left;" > < code > Model< / code > < / td >
< td style = "text-align: left;" > 문자형 (최대 10자)< / td >
< td style = "text-align: left;" > 로그인 시 입력한 검사 모델명< / td >
< / tr >
< tr >
< td style = "text-align: left;" > < code > Variant_1< / code > < / td >
< td style = "text-align: left;" > 문자형 (최대 10자)< / td >
< td style = "text-align: left;" > 로그인 시 입력한 파생 모델명 1< / td >
< / tr >
< tr >
< td style = "text-align: left;" > < code > Variant_2< / code > < / td >
< td style = "text-align: left;" > 문자형 (최대 10자)< / td >
< td style = "text-align: left;" > 로그인 시 입력한 파생 모델명 2< / td >
< / tr >
< tr >
< td style = "text-align: left;" > < code > Operator< / code > < / td >
< td style = "text-align: left;" > 문자형 (최대 10자)< / td >
< td style = "text-align: left;" > 검사자(작업자) ID< / td >
< / tr >
< tr >
< td style = "text-align: left;" > < code > Production_Date< / code > < / td >
< td style = "text-align: left;" > 날짜/시간형< / td >
< td style = "text-align: left;" > 검사가 완료된 시간< / td >
< / tr >
< tr >
< td style = "text-align: left;" > < code > Line< / code > < / td >
< td style = "text-align: left;" > 문자형 (최대 30자)< / td >
< td style = "text-align: left;" > 로그인 시 입력한 작업 라인명< / td >
< / tr >
< tr >
< td style = "text-align: left;" > < code > Lot_No< / code > < / td >
< td style = "text-align: left;" > 문자형 (최대 8자)< / td >
< td style = "text-align: left;" > 로그인 시 입력한 Lot 번호< / td >
< / tr >
< tr >
< td style = "text-align: left;" > < code > Jig_No< / code > < / td >
< td style = "text-align: left;" > 문자형 (최대 10자)< / td >
< td style = "text-align: left;" > 로그인 시 입력한 지그 번호< / td >
< / tr >
< tr >
< td style = "text-align: left;" > < code > Channel< / code > < / td >
< td style = "text-align: left;" > 문자형 (최대 5자)< / td >
< td style = "text-align: left;" > 검사가 수행된 채널 (LEFT / RIGHT)< / td >
< / tr >
< tr >
< td style = "text-align: left;" > < code > Spec_UL< / code > < / td >
< td style = "text-align: left;" > 숫자형< / td >
< td style = "text-align: left;" > 리크 판정 상한 기준값< / td >
< / tr >
< tr >
< td style = "text-align: left;" > < code > Spec_LL< / code > < / td >
< td style = "text-align: left;" > 숫자형< / td >
< td style = "text-align: left;" > 리크 판정 하한 기준값< / td >
< / tr >
< tr >
< td style = "text-align: left;" > < code > Leak_Value< / code > < / td >
< td style = "text-align: left;" > 숫자형< / td >
< td style = "text-align: left;" > 측정된 누설량< / td >
< / tr >
< tr >
< td style = "text-align: left;" > < code > Result< / code > < / td >
< td style = "text-align: left;" > 문자형 (최대 5자)< / td >
< td style = "text-align: left;" > 최종 판정 결과 (OK / NG)< / td >
< / tr >
< / tbody >
< / table >
< div class = "page-break" > < / div >
< h1 > 9. 오류 대응 및 프로그램 종료< / h1 >
< hr / >
< h2 > 9.1 통신 연결 실패< / h2 >
< p > 프로그램 시작 또는 통신 설정 저장 시 발생할 수 있습니다.< / p >
< table >
< thead >
< tr >
< th > 오류 메시지< / th >
< th > 원인< / th >
< th > 조치 방법< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < code > Sentinel C28 포트 연결 실패 (COMx)< / code > < / td >
< td > C28 센서 미연결, 잘못된 포트, 다른 프로그램이 포트 점유< / td >
< td > ① 케이블 연결 확인 ② 장치 관리자에서 COM 포트 번호 확인 ③ Comm. Settings에서 올바른 포트 선택 후 < code > 설정 저장< / code > < / td >
< / tr >
< tr >
< td > < code > 4251 보드 포트 연결 실패 (COMx)< / code > < / td >
< td > 4251 보드 미연결, 잘못된 포트< / td >
< td > ① 케이블 연결 확인 ② Comm. Settings에서 올바른 포트 선택 후 < code > 설정 저장< / code > < / td >
< / tr >
< / tbody >
< / table >
< blockquote >
< p > < strong > 참고< / strong > : 통신 설정을 저장하면 기존 연결을 모두 해제하고 새 설정으로 재연결을 시도합니다. 포트 변경 후 재시작 없이 바로 적용됩니다.< / p >
< / blockquote >
< h2 > 9.2 시험 중 오류< / h2 >
< p > 시험 프로세스 진행 중 발생하는 오류입니다. 메인 화면의 < strong > 오류 메시지< / strong > 영역에 표시됩니다.< / p >
< table >
< thead >
< tr >
< th > 오류 메시지< / th >
< th > 원인< / th >
< th > 조치 방법< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < code > Sentinel C28 통신 타임아웃< / code > < / td >
< td > 30초 내 C28 센서 응답 없음< / td >
< td > ① 센서 전원 ON 확인 ② 시리얼 케이블 연결 확인 ③ BaudRate 설정 확인 (기본: 9600)< / td >
< / tr >
< tr >
< td > < code > 통신 실패 (4251 보드 CHx 상태 응답 시간 초과)< / code > < / td >
< td > 4251 보드가 대기 시간(15초) 내에 응답하지 않음< / td >
< td > ① 4251 보드 전원 공급 및 케이블 연결선 확인 ② 통신 노이즈 방지 조치 확인< / td >
< / tr >
< tr >
< td > < code > 통신 실패 (4251 보드 CHx 상태 이상 또는 Fail)< / code > < / td >
< td > 4251 보드로부터 정상 응답을 받지 못했거나 오류 코드가 반환됨< / td >
< td > ① 하드웨어 오결선 여부 점검 ② 채널 센서 구동 전원 확인< / td >
< / tr >
< tr >
< td > < code > 통신 실패 (4251 보드 CHx ID 대기 타임아웃)< / code > < / td >
< td > 4251 보드를 통해 제품 ID를 15초 내에 판독하지 못함< / td >
< td > ① 센서가 지그(Jig)에 올바르게 안착되었는지 물리적 확인 ② 접촉 단자 이물질 청소< / td >
< / tr >
< tr >
< td > < code > SPEC 불일치 - 프로그램: OK, 센서: R< / code > < / td >
< td > 프로그램 SPEC과 센서 자체 SPEC의 판정이 다름< / td >
< td > ① 프로그램의 SPEC UL/LL 확인 (Parameters) ② C28 센서의 SPEC 설정 확인 ③ 양쪽 설정값 동기화 (※ 통신 설정에서 경고 알림 스위치 상태를 확인하세요)< / td >
< / tr >
< tr >
< td > < code > LEAK 센서 데이터 오류< / code > < / td >
< td > C28에서 수신된 데이터 파싱 실패< / td >
< td > ① 센서 통신 상태 확인 ② 케이블 접촉 불량 확인 ③ BaudRate 불일치 확인< / td >
< / tr >
< tr >
< td > < code > DB 저장 실패: [오류 원인] 상세 메시지< / code > < / td >
< td > 데이터베이스 서버에 검사 데이터를 저장하지 못함< / td >
< td > ① 네트워크 케이블 및 서버 통신 연결 확인 ② Database.ini 설정 파일의 접속 정보(IP/비밀번호 등) 확인 ③ 로컬 일일 CSV 로그 파일에 백업이 정상적으로 저장되었는지 확인< / td >
< / tr >
< tr >
< td > < code > 바코드 매핑 실패: [오류 원인] 상세 메시지< / code > < / td >
< td > 데이터베이스에서 해당 < code > IC_SN< / code > 에 매칭되는 바코드 정보를 찾지 못함< / td >
< td > ① 데이터베이스 서버 네트워크 연결 확인 ② Housing_Assembly 테이블에 대상 제품의 바코드 정보 매핑 상태 점검< / td >
< / tr >
< / tbody >
< / table >
< hr / >
< h2 > 9.3 SPEC 교차 검증 경고 팝업< / h2 >
< p > 프로그램 판정과 센서 판정이 불일치할 때, 통신 설정 화면의 < strong > < code > 스펙 불일치 알림 활성화< / code > < / strong > 옵션이 켜져(ON) 있는 경우 팝업 경고가 표시됩니다:< / p >
< pre > < code > [!] SPEC 교차 검증 경고
" 프로그램 스팩과 센서의 스팩이 서로 맞지 않습니다."
[확인]
< / code > < / pre >
< ul >
< li > 만약 이 옵션을 < strong > 해제(OFF)< / strong > 한 경우, 이 팝업 경고 대화상자는 나타나지 않으며, 메인 화면 하단의 < strong > 오류 메시지< / strong > 텍스트 박스에만 불일치 로그가 기록됩니다.< / li >
< li > 이 경고는 검사 자체를 중단하지는 않으며, < strong > 프로그램의 판정 결과< / strong > 가 최종 DB 및 로컬 로그 기록에 사용됩니다.< / li >
< / ul >
< hr / >
< h2 > 9.4 DIO 보드 오류< / h2 >
< table >
< thead >
< tr >
< th > 상황< / th >
< th > 프로그램 동작< / th >
< th > 영향< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > PCI-7432 보드 미인식< / td >
< td > < strong > 시뮬레이션 모드< / strong > 로 자동 전환< / td >
< td > DIO 입출력이 동작하지 않음 (실제 입출력 포트 제어 불가)< / td >
< / tr >
< tr >
< td > 보드 런타임 오류< / td >
< td > 좌/우 채널 오류 메시지에 < code > [DIO Board Error]< / code > 표시< / td >
< td > 오류 내용에 따라 조치< / td >
< / tr >
< / tbody >
< / table >
< blockquote >
< p > < strong > 시뮬레이션 모드< / strong > : ADLINK 드라이버가 설치되지 않은 환경에서도 프로그램의 기능(통신 설정, 데이터 조회 등)을 사전에 테스트할 수 있도록 제공되는 가상 동작 모드입니다.< / p >
< / blockquote >
< hr / >
< h2 > 9.5 일반적인 문제 해결< / h2 >
< table >
< thead >
< tr >
< th > 증상< / th >
< th > 가능한 원인< / th >
< th > 해결 방법< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 프로그램 시작 후 양쪽 채널에 오류 메시지< / td >
< td > COM 포트 설정 불일치< / td >
< td > Comm. Settings에서 올바른 포트 선택 후 저장< / td >
< / tr >
< tr >
< td > 시험이 시작되지 않음< / td >
< td > DIO 시작 신호 미수신< / td >
< td > 외부 PLC 또는 시작 스위치의 접점 신호 상태 확인< / td >
< / tr >
< tr >
< td > "대기중"에서 진행되지 않음< / td >
< td > 다른 채널이 타임아웃 대기 중< / td >
< td > 최대 30초 대기 후 자동 해제. 센서 연결 확인< / td >
< / tr >
< tr >
< td > 측정값이 표시되지 않음< / td >
< td > C28 센서 스트리밍 데이터 미수신< / td >
< td > 센서 전원, 케이블, BaudRate 확인< / td >
< / tr >
< tr >
< td > COM 포트 목록이 비어있음< / td >
< td > 시리얼 장치 미연결< / td >
< td > USB-시리얼 케이블 연결 확인, 드라이버 설치 확인< / td >
< / tr >
< / tbody >
< / table >
< hr / >
< h2 > 9.6 프로그램 종료< / h2 >
< h3 > 종료 방법< / h3 >
< ol >
< li > 상단 타이틀 바 우측의 < strong > X (빨간색)< / strong > 버튼을 클릭합니다.< / li >
< li > 종료 확인 대화상자가 표시됩니다:< / li >
< / ol >
< pre > < code > [?] 종료 확인
" 프로그램을 종료하시겠습니까?"
[예] [아니오]
< / code > < / pre >
< ol >
< li > < strong > "예"< / strong > 를 선택하면 종료, < strong > "아니오"< / strong > 를 선택하면 취소됩니다.< / li >
< / ol >
< h3 > 종료 시 자동 처리 사항< / h3 >
< p > 아래 순서로 자동 정리가 수행됩니다:< / p >
< table >
< thead >
< tr >
< th > 순서< / th >
< th > 처리 내용< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 1< / td >
< td > 시험 프로세스 스레드 종료 (좌/우 모두)< / td >
< / tr >
< tr >
< td > 2< / td >
< td > 대기 중인 순서 잠금 해제< / td >
< / tr >
< tr >
< td > 3< / td >
< td > 디지털 입출력(DIO) 신호 감지 중단< / td >
< / tr >
< tr >
< td > 4< / td >
< td > 누설 센서 신호 감지 중단< / td >
< / tr >
< tr >
< td > 5< / td >
< td > Sentinel C28 시리얼 통신 연결 해제< / td >
< / tr >
< tr >
< td > 6< / td >
< td > 4251 보드 시리얼 통신 연결 해제< / td >
< / tr >
< tr >
< td > 7< / td >
< td > DIO < code > PC_ON< / code > 출력 < strong > OFF< / strong > < / td >
< / tr >
< tr >
< td > 8< / td >
< td > DIO 보드 자원 해제< / td >
< / tr >
< tr >
< td > 9< / td >
< td > 타이틀 바 시계 타이머 정지< / td >
< / tr >
< / tbody >
< / table >
< blockquote >
< p > < strong > ⚠️ 주의< / strong > : 시험 진행 중에 프로그램을 종료하면 진행 중인 시험이 < strong > 즉시 중단< / strong > 됩니다. 해당 시험의 결과는 로그에 기록되지 않을 수 있습니다. 가급적 시험이 완료된 후 종료하세요.< / p >
< p > < strong > 참고< / strong > : 프로그램 종료 시 현재 설정값은 이미 < code > config.xml< / code > 에 저장되어 있으므로 별도로 저장할 필요가 없습니다. 다음 실행 시 마지막 설정이 자동으로 로드됩니다.< / p >
< / blockquote >
< / body >
< / html >