labview 기반의 데이터 수집...

Post on 08-Mar-2018

259 Views

Category:

Documents

7 Downloads

Preview:

Click to see full reader

TRANSCRIPT

ni.com/korea

LabVIEW 기반의 데이터 수집 프로그래밍 기법

한국내쇼날인스트루먼트

전략마케팅

권오훈 과장

2

개요

• LabVIEW 란?

• LabVIEW 기반의 데이터 수집 프로그래밍 • DAQ 어시스턴트

• DAQmx API

• 템플릿 및 샘플 프로젝트

• 요약

3

데이터 수집 하드웨어

DAQmx 드라이버 및 MAX 유틸리티

데이터 수집 소프트웨어

프로그래밍 언어

4

LabVIEW란?

“엔지니어를 위한 그래픽 기반의 프로그래밍 언어”

엔지니어를 위한

그래픽 기반

프로그래밍 언어

: 모든 사람이 아닌 엔지니어를 위한

: Flow Chart 형식의 개발 환경

: 컴파일러를 가진 프로그래밍 언어

5

LabVIEW 환경

“VI” = 프로그램 또는 함수

“프런트 패널” = 사용자 인터페이스 “블록 다이어그램” = 코드

6

객체 및 라이브러리의 활용 : 팔레트

• 마우스 오른쪽 클릭으로 팔레트 호출 • 객체 계층별으로 구분되어 있음

컨트롤 팔레트 함수 팔레트

7

NI LabVIEW – 그래픽 기반 프로그래밍

1 데이터 흐름의 시작

2 VI는 모든 입력이 입력되었을때 실행

8

• LabVIEW는 각 어플리케이션을 여러 개의 실행 스레드로 자동 분리

• 멀티스레딩 적용 (1998년)

LabVIEW의 자동 멀티스레딩

스레드

스레드

스레드

9

와이어와 데이터의 유형

• 와이어를 통해 객체 간의 데이터 전송

• 데이터 유형에 따라 다른 색상, 스타일, 두께

• 깨진 와이어는 중앙에 빨간색 X 표시가 된 검은색 점선

스칼라 1D 배열 2D 배열

DBL 숫자형 정수형 문자형

10

텍스트 기반의 언어와의 비교

LabVIEW 코드 C 코드

11

LabVIEW C

* does not include code to generate UI

텍스트 기반의 언어와의 비교

12

다형성 VIs

프로퍼티 노드

고급 유틸리티 함수 DAQ 어시스턴트

DAQmx 태스크 및 채널 상수

데이터 수집 프로그래밍 함수

13

설정 기반 프로그래밍

데이터 수집 프로그래밍 방법

14

설정 기반 프로그래밍

데이터 수집 프로그래밍 방법

15

설정 기반 : DAQ 어시스턴트

• 설정기반의 데이터 수집 프로그래밍 함수

데이터 측정 값 미리 보기

측정 채널 설정

측정 타이밍 설정

16

데모

• DAQ 어시스턴트를 통한 프로그래밍

17

분석 관련 익스프레스 VI

오더 분석 함수

주파수 도메인 측정 함수 시간 도메인 측정 함수

신호 로딩/저장 함수

리미트 검사 함수

신호 전처리 함수

18

•신호 처리 & 분석 – 파형 생성 – 파형 컨디셔닝 – 파형 모니터링 – 파형 측정 – 신호 생성 – 신호 운영 – 윈도우 – 디지털 필터 – 스펙트럼 분석 – 변형 – 점 대 점(Point-by-Point)

•수학 – 숫자 – 기본/특별 함수 – BLAS/LAPAC 기반 선형 대수 – 커브 피팅 – 보간 / 외삽 – 확률 및 통계 – 최적화 – 상미분 방정식 – 기하학 – 다항식 – 포뮬러 파싱(Formula Parsing) – 1D & 2D 평가 – 미적분

신호 처리, 분석 및 연산 함수

19

파일 입출력

측정 파일에 쓰기

측정 파일로부터 읽기

20

데모 : 데이터 수집에서 분석, 저장까지

• 사인파 수집, 주파수 분석, 파일 저장 프로그래밍

21

데이터 수집의 3 단계

Acquire Analyze Present

22

DAQmx 함수

• NI DAQ 하드웨어를 제어하는 함수

• 다형성 함수 : 하나의 함수에 다양한 옵션 존재, 필요에 따라 설정하여 사용

DAQmx 함수

H/W 드라이버 소트프웨어

DAQ 하드웨어

23

DAQmx 함수

DAQmx 버추얼 채널 생성

DAQmx 읽기

DAQmx 쓰기

DAQmx 완료할 때까지 기다림

DAQmx 타이밍

DAQmx 트리거

DAQmx 태스크 시작

DAQmx 태스크 정지

DAQmx 태스트 지우기

24

채널 설정

타이밍 설정

트리거링 설정

작업 시작

데이터 읽기

작업 해제

NI-DAQmx LabVIEW API

Transducer Signal Signal Conditioning DAQ Software

25

아날로그 입력 프로그래밍 비교

26

코드 생성

• DAQ 어시스턴트를 DAQmx API 프로그램으로 자동생성

27

예제의 활용 : 예제 탐색기

28

데모

• 코드 생성과 예제 활용을 통한 편리한 코드 개발 • Voltage – Continuous Input.vi 사용

29

템플릿 및 샘플 프로젝트 : LabVIEW 2012

효율성 향상

에러 감소

재사용성 극대화

배우는 기간 단축

템플릿 및 샘플 프로젝트란 ?

템플릿 기본적인 프로젝트, 코드, 문서 및 폴더 구조

샘플 프로젝트 사용자 정의를 위한 시작점이 되는 동작하는 어플리케이션, 일반적으로 템플릿에 기반

왜 템플릿과 샘플프로젝트를 사용하는가?

30

샘플 프로젝트

키워드로 검색

어플리케이션에 따른 샘플 프로젝트 선택

타입 또는 타겟에 따른 선택

31

사례 : 유한 측정 샘플 프로젝트

32

초기화

이벤트 기다림

UI 업데이트

설정 수집 데이터

불러오기 데이터 삭제 분석

정지

데이터 저장

데이터 반출

그래프 복사

사례 : 유한 측정 샘플 프로젝트

33

초기화

이벤트 기다림

UI 업데이트

설정 수집 데이터

불러오기 데이터 삭제 분석

정지

데이터 저장

데이터 반출

그래프 복사

사례 : 유한 측정

이벤트 기다림

샘플 프로젝트

34

초기화

이벤트 기다림

UI 업데이트

설정 수집 데이터

불러오기 데이터 삭제 분석

정지

데이터 저장

데이터 반출

그래프 복사

사례 : 유한 측정

수집

샘플 프로젝트

35

초기화

이벤트 기다림

UI 업데이트

설정 수집 데이터

불러오기 데이터 삭제 분석

정지

데이터 저장

데이터 반출

그래프 복사

사례 : 유한 측정

설정

샘플 프로젝트

36

초기화

이벤트 기다림

UI 업데이트

설정 수집 데이터

불러오기 데이터 삭제 분석

정지

데이터 저장

데이터 반출

그래프 복사

사례 : 유한 측정

분석

샘플 프로젝트

37

데모 : 샘플 프로젝트의 활용

• 연속 측정 및 데이터 로깅에 대한 샘플 프로젝트의 사용

38

요약 : LabVIEW 데이터 수집 프로그래밍

1. DAQ 어시스턴트 : 편리한 프로그래밍

2. DAQmx 함수의 활용 : 세부적인 프로그래밍

3. 예제 및 샘플 프로젝트의 활용 : 편리한 시작, 빠른 개발

39

Mylv.net : LabVIEW 사용자 커뮤니티

- 모든 LabVIEW 사용자를 위한 커뮤니티 웹사이트

- Q&A 게시판

- 예제 코드 공유

- 최신 구인 및 이벤트 정보

자세한 정보는 mylv.net

40

top related