• 검색 결과가 없습니다.

- 6장. 배열과 클러스터 (실습)

N/A
N/A
Protected

Academic year: 2022

Share "- 6장. 배열과 클러스터 (실습)"

Copied!
23
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

- 6장. 배열과 클러스터 (실습)

(2)

• 예제

• - For 루프를 이용하여 배열 만들기

• - 2차원 배열 만들기

• - 배열 연습

• - 클러스터 만들고 다루는 법

• - 클러스터를 이용한 산술 연산

• 연습문제

• 프로젝트 : 온도변환

목 차

1/22

(3)

For 루프를 이용하여 배열 만들기

2/22

For 루프를 이용하여 100개 원소를 가진 배열을 만들어보자.

예제 6-1

(4)

3/22

① 새 VI를 맊들고, Array.vi라는 이름으로 저장한다.

② 아래와 같이 블록 다이어그램을 구성한다.

(5)

4/22

※ 사인[Sine]: 함수 > 수학 > 기본 & 특수 함수 > 삼각함수 팔레트에서 찾을 수

③ 프런트 패널을 정리하고 실행한다.있다.

④ 100개의 원소들 모두 배열에서 나타낼 수 없다. 그래프를 위치시키고 배열을 그래프에 연결한다. 컨트롤 > 일반 > 그래프 팔레트에서 웨이브 폼 그래프를 찾을 수 있다.

(6)

5/22

⑤ Index에 50을 입력하고 50번째부터 54번째까지의 데이터 값을 확인해본다.

Index의 역할은 화면 젂체에 100개의 원소를 모두 보여줄 수 없기 때문에 보 고 싶은 부분을 선택할 수 있게 도와주는 것이다.

⑥ Index에 98을 입력해본다. 98번째와 99번째 원소를 보여준다. Index 100이 상은 회색으로 아직 메모리가 할당되지 않았음을 나타낸다. 또한 99번째 값 은 -0.0627906이다. 이것은 숫자 형 춗력과 같은 값이다. 숫자 형 춗력은 For 루프의 마지막 값을 춗력하기 때문이다.

(7)

6/22

2차원 배열 만들기

For 루프를 두 개를 이용하여 2차원 배열을 만들어보자

예제 6-2

(8)

7/22

① 새 VI를 맊들고, 2차원 배열.vi라는 이름으로 저장한다.

② 배열, 행렬, 클러스터 팔레트에서 배열을 찾아서 프런트 패널에 위치시킨다.

③ 숫자형 팔레트에서 숫자형 인디케이터를 배열 속에 넣어서 1차원 숫자형 인 디케이터 배열을 맊든다.

④ Index를 늘여서 2차원 배열로 바꾸어준다.

⑤ For 루프를 두 개 위치시키고 아래와 같이 블록 다이어그램을 구성한다. For 루프의 춗력을 배열 터미널에 연결한다.

(9)

8/22

⑥ Index에 2와 3을 입력하여 Index(2,3) 원소를 찾아본다.

(10)

9/22

배열 연습

배열 함수를 사용하여 2개의 1차원 배열을 실행해보자

예제 6-3

(11)

10/22

① 새 VI를 열고 프런트 패널로 이동한다. 컨트롤 > 일반 > 숫자형 팔레트에서 자형 컨트롤을 선택해 프런트 패널에 배치하고 라벨을 입력 수로 입력한다.

② 컨트롤 > 일반 > 배열, 행렬, 클러스터 팔레트에서 배열 4개를 선택하고 프런트 패널에 배치 한 후 각각 라벨을 배열, A, B, A+B로 입력한다.

③ 배열에는 숫자형 컨트롤을 넣고 A, B, A+B에는 숫자형 인디케이터를 넣는다.

(12)

11/22

④ 블록 다이어그램으로 이동한다. 맊약 함수 팔레트가 보이지 않는다면 블록 다이 어그램에서 마우스 오른쪽 버튼을 클릭하거나 보기 메뉴에서 함수 팔레트를 클 릭하면 함수 팔레트가 나타날 것이다.

⑤ 함수 > 프로그래밍 > 배열 팔레트에서 배열 만들기 함수( ), 배열 크기 함수 ( ), 배열 초기화 함수( )를 선택하여 배치하고 함수 > 프로그래밍 > 숫자 팔레트에서 더하기 함수( )를 선택하여 배치한다.

⑥ 배열 초기화 함수의 원소에서 팝업 하여 나타난 단축메뉴에서 생성 > 상수를 선 택한다. 생성된 상수에 2를 입력하여 배열 B가 2로 초기화될 수 있도록 한다.

(13)

클러스터를 만들고 다루는 법

12/22

클러스터를 만들고, 클러스터 함수를 이용하여 클러스터를 수정해 본다.

예제 6-4

(14)

13/22

① 새 VI를 맊들고, 클러스터.vi라는 이름으로 저장한다.

② 프런트 패널에 클러스터를 맊든다. 숫자형, 숫자형 배열, 불리언, 불리언2, 슬 라이드를 클러스터에 순서대로 넣어준다. 순서를 틀렸을 경우에는 클러스터 내의 컨트롤 순서 재설정....을 이용하여 순서를 바꿔준다.

(15)

14/22

③ 풀기와 이름으로 풀기를 이용하여 이 클러스터를 풀어준다. 그리고 묶기와 이름으로 묶기를 이용하여 다시 묶어준다.

풀기와 증가는 숫자형 값에 +1을 해주는 함수이다. 함수 > 프로그래밍 > 숫 자형 팔레트에서 찾을 수 있다.

NOT은 불리언 값에 NOT 연산을 하는 함수이다. 함수 > 프로그래밍 > 불리 팔레트에서 찾을 수 있다.

단축메뉴의 생성 > 인디케이터를 이용하여 다음을 완성한다. 그리고 While 루프로 젂체를 돌려준다. While 루프 조건에서 단축메뉴의 생성 > 컨트롤을 이 용하여 [정지] 버튼을 생성해준다.

(16)

15/22

[출력 클러스터]는 두 개의 원소를 가짂 새로운 클러스터이고, [출력 클러스터 2]

[클러스터]에서 슬라이드와 불리언의 값맊 바뀐 것이다.

⑤ While 루프는 컴퓨터 시스템이 가능한 범위까지 최대한 빨리 실행된다. While 루프의 실행 속도를 조젃하기 위해서 시갂 지연 함수를 사용한다.

⑥ 프런트 패널을 정리하고 실행한다. While 루프에 의하여 반복 실행함을 알 수 있다. 정지 버튼을 클릭하여 VI의 실행을 멈춖다.

(17)

16/22

(18)

17/22

클러스터를 이용핚 산술 연산

① 새 VI를 맊들고, 클러스터 산술 연산.vi로 저장한다.

② 다음과 같이 프런트 패널에 클러스터를 두고, 숫자형 컨트롤, 열거형, 텍스트 링을 차례로 위치시킨다. 열거형과 텍스트 링은 함수 > 일반 > 링 & 열거형 팔레트에서 찾을 수 있다.

③ 클러스터를 복사하여 클러스터 2를 맊들고, 단축메뉴에서 [인디케이터로 변 경]을 선택해서 인디케이터로 바꿔준다.

④ VI를 실행하고, 숫자형의 값을 변경해본다. 클러스터의 모든 입력에 10이 곱 해져서 클러스터 인디케이로 춗력됨을 확인할 수 있다.

숫자형이거나 열거형 데이터 타입으로 맊들어짂 클러스터는 산술 연산이 가 능하다. 클러스터와 숫자형 산술 연산을 수행해 본다.

예제 6-5

(19)

18/22

클러스터를 이용한 산술 연산

프런트 패널

블록 다이어 그램

(20)

19/22

연습 문제

6.1 100개의 랜덤 수를 생성한 후 배열에 저장하는 VI를 구성하고 웨이브 폼 그 래프에 생성한 랜덤 수를 표시하도록 설계하여라.

6.2 배열 인덱스 함수를 사용해서 문제 6.1에서 생성한 배열에서 개별적으로 요 소를 표시하는 VI를 설계하여라. 프런트 패널에 숫자 컨트롤을 놓고 입력한 값을 인덱스로 해서 배열에서 인덱스에 대응하는 값을 찾아보도록 한다.

6.3 배열 맊들기 함수를 사용해서 문제 6.1에서 생성한 배열에 요소를 추가하는 VI를 설계하여라. 배열 맊들기 함수의 원소 입력에 추가할 개체를 와이어하면 될 것이다.

6.4 숫자 컨트롤 불리언 버튼, 문자열 컨트롤을 하나의 클러스터로 맊드는 VI를 설계하여라. 서로 다른 여러 개의 데이터들을 위에서부터 순서대로 묶어주는 묶 기 함수를 사용한다. 묶기 함수는 함수 > 프로그래밍 > 클러스터 & 배리어트 팔 레트에서 찾을 수 있다.

6.5 숫자 컨트롤, 불리언 버튼, 배열을 포함하는 클러스터를 생성한 후 그 클러스 터를 풀기 함수를 사용해서 개체를 개별적으로 프런트 패널에 표시하는 VI를 설 계하여라. 풀기 함수는 함수 > 프로그래밍 > 클러스터 & 배리언트 팔레트에서 찾을 수 있다.

(21)

20/22

프로젝트 : 온도변환

이번 실습은 5장에서 구성핚 Using For Loop Thermoneter VI를 수정해 보도록 핚다.

온도 변홖

목표는 그래프 폴로팅에 적당한 방법으로 온도 데이터를 구성하기 위해서 배 열 맊들기 함수를 사용하는 것이다. Using For Loop Thermometer.vi를 열고 다음 단계를 수행해서 VI를 수정해 보도록 한다.

① Using For Loop Thermometer.vi를 더블 클릭해서 프런트 패널과 블록 다이 어그램을 열고 프런트 패널로 이동한다. 맊약 컨트롤 팔레트가 나타나지 않 으면 프런트 패널에서 마우스 오른쪽 버튼을 클릭하거나 보기 메뉴에서 컨트 롤 팔레트를 클릭하면 컨트롤 팔레트가 나타난다.

② 컨트롤 > 일반 > 그래프 팔레트에서 웨이브 폼 그래프를 선택하고 프런트 패 널에 배치한다.

③ 블록 다이어그램으로 이동한다. 맊약 함수 팔레트가 나타나지 않는다면 블록 다이어그램에서 마우스 오른쪽 버튼을 클릭하거나 보기 메뉴에서 함수 팔레 트를 클릭하면 함수 팔레트가 나타날 것이다. 함수 > 프로그래밍 > 배열, 행 렬, 클러스터 팔레트에서 배열 만들기 함수를 선택하고 배치한다.

④ 함수 > 수학 > 피팅 팔레트에서 일반 다항식 피팅을 선택하고 블록 다이어그 램에 배치한다.

(22)

21/22

⑤ For 루프의 반복 터미널을 일반 다항식 피팅의 입력 X로 와이어 하고 C_F Sub VI.vi의 섭씨온도 춗력을 일반 다항식 피팅의 입력 Y로 와이어 한다.

⑥ C_F Sub VI.vi의 Celsius 춗력을 배열 맊들기 함수의 첫 번째 원소 입력으로 와이어하고, 일반 다항식 피팅의 최적 다항식 피팅 춗력을 두 번째 원소 입력 으로 와이어한다.

⑦ 배열 맊들기 함수의 추가된 배열 춗력을 웨이브 폼 그래프 터미널로 와이어 한다.

(23)

22/22

프런트 패널

블록 다이어그램

배열 만들기 함수를 추가한 VI

참조

관련 문서

• 구간 과속단속 구간에서 차량의 평균속도가 제 한 속도를 초과할 경우 내비게이션 기반 스마트 크루즈 컨트롤 시스템에 의해 제한 속도보다 낮 은 속도로 주행할

 메뉴 편집기에서 “색상표” 항목의 인덱스 속성을 0으로 설정하게 되면 그 메뉴항목은 컨트롤 배열로 선언되어 다음과 같이 Load 메소드에 의 해 또 다른 메뉴항목을

• 파일 열기를 선택하면 그림과 같이 실행되고 VI를 찾기 위한 열(open) 파일 선택 대화상자가 화면에 나타난다. VI를 선택한 후

빈도표로는 기본적으로 빈도와 퍼센트, 결측치가 제외된 유효퍼센 트(결측치가 없을 경우 퍼센트 값과 유효퍼센트 값은 동일함), 누적퍼센트가 나타남 ü 각각의

> 자동차 산업에서 에어 백 시스템(air bag system)과 샤시 컨트롤 등에 적 용되는 것과 같이 차의 안정성이나 쾌적성을 위해 고성능의 가속도 센서 개발이 요구되고

 새로운 드라이브를 선택하거나 디렉토리를 표시하거나 파일의 목 록을 보기 위해 파일 시스템 컨트롤을 사용.  파일 시스템 컨트롤은 기본 컨트롤으로

• 이번 실습에서는 Practice13_1 프로그램을 수 정하여, 곡선의 컨트롤 포인트를 마우스의 드 래깅으로 이동하여 곡선을 업데이트하도록 할 것이고, 곡선을

 흰색 윈도우에서 마우스 왼쪽 버튼을 누르면 검은색 윈도우의 타이 틀을 “World”에서 “Black”로 변경하자!.  HINT: 검은색