NI 스캔 엔진이 설치된 타겟은 결함 기능을 사용하여 비동기화 에러 조건을 처리합니다. LabVIEW는 3가지 단계로 결함을 정의합니다: 보조, 주요, 회복할 수 없음. LabVIEW는 모든 결함을 타겟의 메모리에 로그합니다. NI 배포된 시스템 관리자에서 스캔 엔진 프로브 보기를 사용하여 타겟의 NI 스캔 엔진 결함을 보고 지웁니다.

보조 결함은 경고와 같은 레벨이며, 이로 인해 결함 처리 동작이 시작되지는 않습니다. 보조 결함의 예로 시작 에러를 들 수 있는데, 이는 컨트롤러를 시작할 때 저장된 설정을 적용할 수 없을 때 발생하는 결함입니다.

주요 결함은 에러와 같은 레벨입니다. 예를 들어, 스캔 엔진이 늦게 실행되었음을 LabVIEW가 감지하는 경우, LabVIEW는 주요 결함 −66460을 트리거합니다. 10개의 스캔 반복이 연속적으로 늦게 실행되었음을 LabVIEW가 감지하는 경우, LabVIEW는 주요 결함 −66461을 트리거하고 NI 스캔 엔진은 실행을 정지합니다.

노트 일부 I/O 하드웨어 드라이버는 주요 결함에 대한 응답으로 결함 처리 동작을 시작합니다. 결함 처리 동작에 대한 정보는 특정 하드웨어 문서를 참조하십시오.

복구할 수 없음 결함은 하드웨어 오류 또는 소프트웨어 충돌로 인해 발생할 수 있습니다. 복구할 수 없음 결함이 발생한 경우, 컨트롤러를 재부팅하고 National Instruments에 연락하십시오.

결함 보기 및 삭제하기

NI 배포된 시스템 관리자를 사용하여 결함을 보고 삭제할 수 있습니다. 또한, [결함 리스트 얻기] VI와 [결함 지우기] VI를 사용하여 프로그램적으로 결함을 보고 지울 수 있습니다. 결함을 삭제하면 메모리에서도 지워지며, 마치 그 결함이 전혀 발생하지 않은 것처럼 됩니다.

시스템 결함

LabVIEW는 일반적인 결함 세트를 정의합니다. LabVIEW 에러 클러스터를 기반으로, 사용자가 추가적인 결함을 로그할 수 있습니다. 다음 테이블에서 보이는 것처럼, LabVIEW는 타입별로 결함을 분류합니다:

노트 결함 처리 동작에 대한 정보는 특정 하드웨어 문서를 참조하십시오.
결함 타입 결함 코드의 범위
I/O 스캔 드라이버 에러 -66000에서 -66099
I/O 변수 -66200에서 -66299
NI 스캔 엔진 VI -66300에서 -66399
NI 스캔 엔진 -66400에서 -66499
사용자 결함 LabVIEW 에러 코드

결함 트리거하기

[결함 셋팅] VI를 사용하여 LabVIEW 에러 코드를 기반으로 보조 결함과 주요 결함을 트리거할 수 있습니다. 사용자 에러 코드를 정의한 다음에 그 코드를 [결함 셋팅] VI에 전달하여, 사용자 결함을 트리거할 수 있습니다.

LabVIEW는 최대 100개의 고유한 결함 코드를 로그할 수 있는 정도의 충분한 메모리 풀을 확보해놓고 있습니다. 고유 결함 코드의 개수가 100 개를 초과하는 경우, LabVIEW는 보조 결함 -66420을 트리거하고 추가 결함 로그 동작을 중지합니다. 하지만, 사용자 결함의 최대 개수에 도달하더라도, 여전히 주요 결함 또는 복구할 수 없음 결함은 하드웨어 드라이버가 결함 처리 동작을 시작하도록 트리거할 수 있습니다.

결함 설정하기

사용자 결함 설정을 통해 특정 결함에 대한 레벨 및 트리거 동작을 사용자 정의할 수 있습니다. 대화식 또는 프로그램적으로 사용자 결함 설정을 적용할 수 있습니다.

사용자 결함 설정을 대화식으로 적용하려면 스캔 엔진 페이지의 결함 설정 섹션을 사용합니다. 프로그램적으로 사용자 결함 설정을 적용하려면, [결함 설정] VI를 사용합니다.

일부 결함은 설정할 수 없습니다. 하지만, 설정 가능한 결함의 리스트는 설치된 NI 스캔 엔진 I/O 소프트웨어에 따라 달라집니다. 대화식으로 설정 가능한 결함의 리스트를 보려면, 스캔 엔진 페이지의 결함 설정 섹션에 있는 설정 가능한 결함 리스트를 사용합니다.