본문으로 바로가기

클러스터에 대해 알아보자.

category Programming/LabVIEW 2024. 5. 18. 17:56
반응형

작성하려는 프로그램에 최적화된 데이터 타입을 사용자가 직접 정의할 때 배열만 사용하지는 않습니다. 
왜냐면 사용하려는 목적이나 성격이 같은 데이터들이 모두 같은 타입일 수는 없거든요. 
컨베이어를 제어하는 프로그램을 예로 들어서 생각해 보자면,
컨베이어의 전진이나 후진에 대한 명령의 경우 대체로 불리언 타입의 데이터로 표현하는 경우가 많고요. 
타깃 속도를 정의하는 경우에는 숫자형 데이터가 필요할 것입니다. 
그리고 여기에 동작 상태를 표시한다거나 폴트가 발생했을 때의 폴트 ID를 표시하는 경우에도
거기에 걸맞은 타입의 데이터들이 사용될 텐데요. 
타입이야 어쨌든, 컨베이어를 제어하는데 필요한 데이터라는 점에서는 동일한 목적을 가졌다고 볼 수 있습니다. 
물론, 기본 데이터 타입을 이용해서 각각의 데이터들을 처리할 수도 있지만,
이런 데이터들을 하나의 그룹으로 묶어서 관리할 수 있다면 프로그램 작성이 조금 더 수월해질 수 있는 것도 사실이구요.
이런 부분을 지원하기 위해 C나 JAVA, 그리고 IEC 표준 프로그래밍 언어에서는
구조체라는 이름의 사용자 정의형 데이터 타입을 제공하고 있습니다.

그렇다면 랩뷰에서도 이러한 데이터 타입의 정의가 가능한지를 생각해봐야 하는데요. 
클러스터라는 이름의 오브젝트가 여기에 해당합니다.

위 그림이 랩뷰에서 제공하는 클러스터 오브젝트인데요. 
전진이나 후진이라는 라벨의 푸시 버튼 2개와 속도라는 라벨의 숫자 입력 오브젝트가
프런트 패널에 배치되어 있습니다만,
블록 다이어그램에는 컨베이어 제어라는 라벨의 연분홍색의 오브젝트만 배치되어 있는데요. 
프런트 패널에서 이 오브젝트들이 컨베이어 제어라는 이름의 범위 안에 포함되어 있는 것을 볼 수 있습니다. 
다시 말해서, 프로그램 안에서는 컨베이어 제어라는 이름의 오브젝트로 사용이 되지만,
말씀드린 3개의 오브젝트가 컨베이어 제어 오브젝트 내부에 포함되어 있다는 말이구요. 
이렇게 서로 다른 타입의 데이터들을 하나로 묶어 놓은 컨베이어 제어 오브젝트가 바로 클러스터입니다.

클러스터도 배열의 경우와 마찬가지로, 프런트 패널에서 오브젝트를 추가하는 방법과
블록 다이어그램 안에서 생성하는 방법이 있는데요. 
블록 다이어그램에서 생성하는 방법은 다른 글에서 자세히 알아보기로 하고,
여기서는 프런트 패널에서 추가하는 방법에 대해 알아보겠습니다.

위 영상에서는 프런트 패널에서 클러스터 오브젝트를 어떻게 추가하는지 보여주고 있습니다. 
이 영상 또한 워낙 간단한 내용이기 때문에 영상 속의 내용을 같이 따라 해 보시면 금방 이해하실 수 있고요. 
정리하자면, 컨트롤 팔레트에서 일반 → 데이터 컨테이너 → 클러스터를 선택해서 적당한 위치에 먼저 추가해 주시고,
클러스터에 추가할 원소들과 같은 데이터 타입의 컨트롤 또는 인디케이터 오브젝트를 선택해서
클러스터 내부에 드롭하시면 됩니다.

반응형