LabVIEW에서 클러스터를 통한 인덱싱 방법

업데이트 됨 Aug 8, 2019

해당 제품

Software

  • LabVIEW Full
  • LabVIEW Professional
  • LabVIEW Base

문의사항

For 루프에서 배열과 같이 각 클러스터 원소를 프로그래밍 적으로 반복 수정하는 방법이 무엇입니까?

해결책

프로퍼티 노드를 사용하면 클러스터의 각 원소에 대한 참조가 포함 된 참조 번호 배열을 얻을 수 있습니다. 배열을 사용하여 클러스터의 각 원소의 속성과 메서드에 액세스 할 수 있습니다. 이렇게하려면 다음 단계를 따르십시오.
  1. 클러스터의 프로퍼티 노드를 작성하십시오. 클러스터 컨트롤이나 인디케이터를 오른쪽 클릭하고 생성(Create) » 프로퍼티 노드(Property Node)를 선택 하십시오.
  1. 클러스터 프로퍼티 노드의 컨트롤[](Control[]) 프로퍼티를 선택하십시오. 컨트롤[] 속성은 클러스터 순서의 클러스터 원소에 대한 참조 배열입니다.
  2. 클러스터 프로퍼티 노드의 컨트롤[] 터미널을 For 루프에 연결합니다. 배열에는 기본적으로 자동 색인 터널이 있습니다.
  3. 컨트롤[] 배열에 대한 프로퍼티 노드를 생성하십시오. 블록 다이어그램에서 마우스 오른쪽 버튼으로 함수 팔레트를 엽니다. 어플리케이션 컨트롤 서브 팔레트를 찾고 프로퍼티 노드 VI를 선택하십시오. 프로퍼티 노드 VI를 For 루프 내부에 놓고 참조 입력 터미널을 컨트롤[] 배열에 의해 생성 된 루프 터널에 연결합니다.
  • 컨트롤[] 배열 프로퍼티 노드를 확장하면 두 개의 프로퍼티에 액세스 할 수 있습니다. 첫 번째 속성을 클래스 이름(ClassName)으로 변경하십시오. 클래스 이름 프로퍼티는 특정 클러스터 요소의 데이터 클래스 (디지털, 부울, 문자열 등)입니다. 두 번째 속성을 값(Value)으로 변경하십시오. 값 프로퍼티는 특정 클러스터 원소의 데이터 값입니다.
  • 클래스 이름 프로퍼티를 케이스 구조의 케이스 선택자에 연결하여 클래스를 기반으로 클러스터 원소에 대한 연산을 수행 할 수 있습니다.
  • 배리언트를 데이터로 VI(Variant to Data VI)를 사용하십시오. 특정 클러스터 원소의 프로퍼티를 적절한 데이터 형식으로 변환합니다. 최종 결과는 아래 이미지를 참조하십시오.



    Note: 전달할 데이터 형식과 일치하도록 케이스의 이름을 변경해야합니다. 배리언트를 데이터로 VI에서 Error 91을 받으면 강조 표시를 실행하여 클래스 이름 문자열을 조사하고 값이 올바르게 라벨링 되었는지 확인하십시오. 숫자 값은 "디지털"로 표시 되어야 합니다.
  • 클러스터에 배열이 포함되어있는 경우 보다구체적인 클래스로 VI를 사용하여 배열 데이터 구조와 관련된 프로퍼티에 액세스합니다. 그런 다음 프로퍼티 노드를 사용하여 배열 원소 참조 번호에 액세스 할 수 있습니다. 그러면 배열의 각 원소에 대한 참조 번호가 반환됩니다. 그런 다음 다른 프로퍼티 노드를 사용하여 해당 배열 원소의 클래스 이름에 액세스 할 수 있습니다. 위의 4 단계와 마찬가지로 이 정보를 사용하여 배리언트 데이터를 올바르게 읽을 수있는 특정 케이스를 활성화 할 수 있습니다.

이 글이 도움이 되셨습니까?

도움 안됨