배리언트 데이터 처리하기
- 업데이트 날짜:2025-08-27
- 2분 (읽기 시간)
때로는 VI가 다양한 타입의 데이터를 보편적인 방법으로 처리해야 하는 경우도 있습니다. 특정 데이터 타입에 대해 각각 서로 다른 VI를 작성할 수 있지만, 한 VI를 변경하면 나머지 VI도 모두 변경할 필요가 있기에 여러 개의 사용자 VI의 복사본을 보유하면 관리하기 어렵습니다. 이러한 상황에 대한 해결책으로 LabVIEW에는 배리언트 데이터 타입이 있습니다. 배리언트 데이터 타입은 LabVIEW의 모든 데이터 타입을 위한 일반적인 컨테이너입니다. 다른 데이터를 배리언트로 변환할 때 배리언트는 데이터 및 원래 데이터 타입을 저장하여 LabVIEW가 차후에 배리언트 데이터를 원래 데이터로 올바르게 변환시킬 수 있습니다. 예를 들어, 문자열 데이터를 배리언트로 변환하는 경우에는 배리언트가 문자열의 텍스트와 함께 해당 데이터가 원래 문자열이었음(경로, 바이트 배열, 기타 LabVIEW 데이터 타입이 아니었음)을 알리는 인디케이터를 저장하게 됩니다.
[배리언트] 함수를 사용하여 배리언트 데이터를 생성하고 조작합니다. 모든 LabVIEW 데이터 타입은 배리언트 데이터 타입으로 변환하여 다른 VI와 함수에서 배리언트 데이터로 사용할 수 있습니다. VI 얻기:커넥터 팬 데이터 타입 메소드 및 커넥터 팬: 데이터 타입 프로퍼티 등의 여러 프로퍼티와 메소드는 데이터 타입을 배리언트로 반환합니다. 데이터 타입 분석 VI를 사용하여 배리언트의 데이터 타입과 데이터 타입에 대한 타입 정보를 가져옵니다. 또한 배리언트의 데이터 타입이 특정 데이터 타입과 일치하는지 확인할 수 있습니다.
데이터를 전송하거나 보관할 때, 알려지지 않은 디바이스에 쓰거나 읽을 때, 또는 다른 서로 다른 컨트롤의 세트에 연산을 수행하는 것과 같이 데이터 타입에 독립적으로 데이터를 처리하는 것이 중요할 때 배리언트 데이터 타입을 씁니다.
예를 들어, 배리언트 데이터 타입을 요구하는 ActiveX 객체를 사용할 때 배리언트 데이터 타입을 사용합니다. 또한, 배리언트 데이터 타입을 컨트롤 참조와 함께 사용하여 프로그램적으로 선택된 컨트롤의 값을 읽거나 수정할 수 있습니다.
또한, [패턴화된 문자열로] 함수를 사용하여 독립적인 타입의 데이터를 나타내기 위해서 데이터 타입을 문자열 데이터 타입으로 변환할 수 있습니다. 문자열로 데이터를 패턴화하는 것은 TCP/IP를 사용하여 데이터를 전송할 때 유용합니다. 왜냐하면 프로토콜은 오직 문자열만 인식하기 때문입니다. 하지만, LabVIEW는 원래 데이터 타입이 변환하려는 데이터 타입과 일치하지 않을 때 패턴화된 데이터를 강제 변환할 수 없기 때문에 패턴화된 데이터를 사용하는 데에는 한계가 있습니다. ActiveX 배리언트 데이터는 패턴화할 수 없습니다. 또한, 패턴화된 정수를 확장형 부동소수로 패턴화 해제할 수 없습니다.
배리언트 데이터 타입을 사용하는 또 다른 장점은 데이터의 속성을 저장할 수 있는 기능입니다. 속성은 사용자가 정의하고 배리언트 데이터 타입이 저장하는 데이터에 대한 정보입니다. 예를 들어, 일정 데이터가 언제 생성되었는지를 알려는 경우, 데이터를 배리언트 데이터로 저장하고 시간 문자열을 저장하기 위해서 시간으로 불리는 속성을 추가할 수 있습니다. 속성 데이터는 어떠한 타입도 될 수 있습니다. 특정 속성으로 데이터를 분류하고, 데이터를 생성하는 디바이스 또는 어플리케이션을 식별하거나, 또는 특정 속성을 가지는 배리언트만을 위해 데이터를 필터하려는 때에 배리언트 속성을 사용합니다.