# 8. 로그 및 데이터 관리 [← 메뉴얼 목차로 돌아가기](사용자_메뉴얼.md) --- ## 8.1 검사 데이터 로그 (CSV) ### 기본 정보 | 항목 | 내용 | |------|------| | **저장 위치** | `[프로그램 폴더]\Logs\yyyy-MM-dd.csv` | | **파일 형식** | CSV (UTF-8 인코딩) | | **파일 생성** | 날짜별 자동 생성 (해당 날짜 첫 시험 시) | | **데이터 추가** | 매 시험 완료 시 자동으로 해당 날짜 파일에 1행 추가 | ### CSV 헤더 및 컬럼 ``` Date,Time,Channel,ID,Value,Judgment,SpecUL,SpecLL,Retest ``` | 컬럼 | 예시 | 설명 | |------|------|------| | `Date` | `2026-05-08` | 검사 일자 | | `Time` | `10:30:15` | 검사 시각 | | `Channel` | `LEFT` | 검사 채널 (LEFT 또는 RIGHT) | | `ID` | `260508A00123B01C` | 제품 ID | | `Value` | `0.5234` | 측정값 (sccm, 소수점 4자리) | | `Judgment` | `OK` | 판정 결과 (OK 또는 NG) | | `SpecUL` | `1.00` | 검사 시점의 상한 규격값 | | `SpecLL` | `-1.00` | 검사 시점의 하한 규격값 | | `Retest` | `N` | 재시험 여부 (Y 또는 N) | ### CSV 예시 ```csv Date,Time,Channel,ID,Value,Judgment,SpecUL,SpecLL,Retest 2026-05-08,10:30:15,LEFT,260508A00123B01C,0.5234,OK,1.00,-1.00,N 2026-05-08,10:30:45,RIGHT,260508A00456D02E,1.2000,NG,1.00,-1.00,N 2026-05-08,10:31:20,LEFT,260508A00789F03G,0.0000,NG,1.00,-1.00,N ``` > **참고**: 타임아웃 발생 시에도 측정값 `0.0000`, 판정 `NG`로 로그에 기록됩니다. > **참고**: CSV 값에 쉼표, 따옴표, 줄바꿈이 포함된 경우 자동으로 이스케이프 처리됩니다. --- ## 8.2 시스템 로그 ### 기본 정보 | 항목 | 내용 | |------|------| | **저장 위치** | `[프로그램 폴더]\Logs\yyyy-MM-dd_system.log` | | **파일 형식** | 텍스트 파일 (UTF-8 인코딩) | | **내용** | 통신 오류, 시스템 이벤트 등 | ### 로그 형식 ``` [HH:mm:ss.fff] [TAG] 메시지 내용 ``` ### 예시 ``` [10:30:00.123] [SYSTEM] 프로그램 시작 [10:30:01.456] [COMM] Sentinel C28 포트 연결 성공 (COM1) [10:35:15.789] [ERROR] Sentinel C28 통신 타임아웃 ``` --- ## 8.3 설정 파일 ### config.xml | 항목 | 내용 | |------|------| | **위치** | 프로그램 실행 폴더 | | **생성** | 최초 실행 시 기본값으로 자동 생성 | | **수정** | Comm. Settings 또는 Parameters에서 저장 시 갱신 | ```xml COM1 9600 COM3 115200 5000 1.00 -1.00 ``` | 설정 키 | 기본값 | 설정 위치 | 설명 | |---------|--------|----------|------| | `SensorPort` | COM1 | Comm. Settings | C28 센서 COM 포트 | | `SensorBaudRate` | 9600 | Comm. Settings | C28 센서 통신 속도 | | `Board4251Port` | COM3 | Comm. Settings | 4251 보드 COM 포트 | | `Board4251BaudRate` | 115200 | Comm. Settings | 4251 보드 통신 속도 | | `Board4251Timeout` | 5000 | (코드 내 고정) | 4251 보드 응답 대기 시간(ms) | | `SpecUL` | 1.00 | Parameters | 누설 상한 규격값 | | `SpecLL` | -1.00 | Parameters | 누설 하한 규격값 | ### DioConfig.ini | 항목 | 내용 | |------|------| | **위치** | `[프로그램 폴더]\Settings\DioConfig.ini` | | **생성** | 최초 실행 시 자동 생성 | | **수정** | 일반적으로 수정 불필요 (하드웨어 변경 시에만) | ```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,우측 불합격 출력 ``` **INI 포맷 설명**: `비트인덱스=신호명,활성여부,설명` --- ## 8.4 파일 관리 주의사항 | 주의사항 | 설명 | |---------|------| | Logs 폴더 삭제 금지 | 검사 기록이 영구 삭제됩니다 | | CSV 파일 직접 편집 | Excel 등으로 편집 시 인코딩이 변경될 수 있으므로 주의 | | config.xml 직접 편집 | 잘못된 값 입력 시 프로그램 오작동 가능. 프로그램 내 설정 화면 사용 권장 | | 디스크 용량 | 일일 수백 건 검사 기준, 연간 약 50~100MB 정도의 로그가 생성됩니다 | --- [← 이전: 시험 프로세스](08_시험_프로세스.md) | [다음: 오류 대응 →](10_오류_대응.md)