Lesson 17_1 큐 동작

안녕하세요. 알렉스 입니다. 오늘은 큐 함수에 대해서 알아보도록 하겠습니다.


개념에 대한 이해가 부족하시면 아래 링크를 참고해 주시기 바랍니다.

링크 : Queue(큐) 구조 및 원리



사진1) 큐 동작 기본

LabVIEW에서 큐함수를 사용할때 순차적으로 적용이 됩니다. 사진1과 같이 데이터가 쌓일때 1번,2번,3번 순으로 쌓이게 됩니다. 그리고 뺄때 또한 1번부터 3번까지 순차적으로 빠지게 됩니다.

 즉 빨간색 화살표는 데이터가 들어가는 방향이고 파란색은 데이터가 나가는 방향 입니다.



그럼 직접 코딩을 해보도록 하겠습니다.

사진2) LabVIEW의 기본 큐함수


 사진2에 나와있는 함수는 LabVIEW에서 사용하는 기본 큐 함수들 입니다. 그리고 블록 다이어 그램에 놓여져 있는 함수는 자주 사용하게 될 함수들 입니다. 그럼 이 함수들을 이용해서 블록다이어 그램에 코딩을 하도록 하겠습니다.


사진3) 큐 초기화 및 While루프 구성

 일단 가장먼저 큐를 초기화 해야 합니다. 큐 얻기 함수를 이용해서 큐의 이름과 원소타입을 정하면 됩니다. 원소타입을 정할때 기본으로 베이언트로 되어있지만 현재 예제에서는 직관적으로 확인하기 위해 문자열로 하도록 하겠습니다.

 사진3과 같이 While루프와 이벤트 케이스문을 만들어줍니다.


사진4) 이벤트 케이스문 추가(정지)
  프로그램을 종료할시 필요한 정지버튼을 프런트 패널에 만들어 줍니다. 그리고 이벤트 케이스 문에 정지 케이스를 만듭니다.


사진5) 정지 케이스문 구성
 이벤트 케이스문에 정지 케이스를 만들면 사진5와같이 While루프에 정지 버튼을 연결합니다. (이 케이스문이 활성화 될때 사용자한테 정말로 종료 할것인지 물어봐야 하지만 예제이기 때문에 간단히 코딩)

사진6) 프론트 다이어그램 디자인(확인버튼)

 사진6와 같이 프론트패널을 프로그래밍 하고 확인버튼을 추가한다. 향후 확인버튼을 누를시 사용자가 입력한 문자열을 인디게이터에 출력하는 역할을 한다.

사진7) 문자열 컨트롤 글씨 크기 조정
 문자열 컨트롤을 생성하고 글씨크기를 크게 조정합니다. (글씨의 폰트, 색상, 배경색도 설정 가능)


사진8) 문자열 컨트롤 복사

 방금 만든 문자열 컨트롤을 복사하여 그대로 아래에 만들어 줍니다.


사진9) 추가한 문자열 컨트롤을 인디게이터로 변경

아래에 만들어진 문자열 컨트롤을 우클릭 하여 인디게이터로 변경합니다.

사진10) 프론트패널 디자인 완성

위 프론트패널의 디자인이 완성이 되었습니다. 다음에는 블록다이어 그램의 코딩을 마무리 하도록 하겠습니다.

댓글

이 블로그의 인기 게시물

Lesson 12_1 프로퍼티 노드(Property Node)

DAQ로 전압 측정하기-2

Lesson 12_2 참조를 이용한 프로퍼티노드(Property Node)