반응형
반응형

프로그래밍/랩뷰 기술자료 39

랩뷰 프로젝트 탐색기를 사용하여 어플리케이션을 관리하기

응용 프로그램 파일 정의 및 식별 파일 저장 및 관리에 대한 지침을 설정하려면 응용 프로그램의 구성 방식, 기능 분할 방법, 추적해야 할 소스 코드 이외의 파일 형식에 대한 선견지명이 필요합니다. 코드 간에 기능을 나누는 방법을 결정하고 파일 저장소 위치 및 제대로 작동하는 데 필요한 추가 파일 또는 리소스에 대해 개발자와 협력하는 데 시간을 할애합니다. 다음 섹션에서 이 정보를 사용하여 디스크에서 파일을 그룹화하는 기준을 결정합니다. 파일 구성 파일 구성은 나중에 고려해서는 안 됩니다. 대규모 응용 프로그램을 잘못 계획하면 개발 중에 파일을 이동하고 이름을 바꾸는 데 추가 시간이 소요됩니다. 많은 수의 파일을 처리할 때, 이러한 작업은 LabVIEW 내의 링크 무결성과 어플리케이션의 동작에 상당한 위험..

랩뷰 수식노드

LabVIEW 소프트웨어의 수식 노드 는 C 구문 구조를 사용하여 블록 다이어그램에서 복잡한 수학 연산을 수행하는데 사용할 수있는 편리한 텍스트 기반 노드입니다. 변수가 많거나 복잡한 방정식에 가장 유용합니다. 텍스트 기반 코드는 블록 다이어그램을 단순화하고 가독성을 높입니다. 또한 기존 코드를 그래픽으로 다시 만드는 대신 수식 노드에 직접 복사하여 붙여 넣을 수 있습니다. 수식 노드는 LabVIEW의 모든 개발 버전에서 사용할 수 있으며 추가 툴킷이나 애드온이 필요하지 않습니다. 1. 파일 » 새 VI를 선택하여 빈 VI를 엽니 다. 2. 블록 다이어그램에 수식 노드를 놓습니다. - 다이어그램을 마우스 오른쪽 버튼으로 클릭하고 프로그램밍 » 구조 » 수식 노드로 이동합니다. - 수식 노드 를 선택하려면..

NI MAX에서 NI-DAQmx 디바이스 태스크 생성하기

NI Measurement and Automation Explorer(MAX)에서 시뮬레이션 또는 물리적 NI-DAQmx 장치를 사용하여 태스크를 생성하는 방법을 설명합니다. 장치가 시뮬레이션 장치인지 실제 장치인지를 구분하는 방법은 아이콘 색상을 확인하는 것입니다. 시뮬레이션 된 NI-DAQmx장치인 경우 아이콘 색상은 노란색으로 될 것이고 실제 장치의 아이콘 색상은 녹색, 검정색 또는 회색 일 수 있습니다. 1. 물리적 DAQ 디바이스가 제대로 연결되어 있으며 그에 호환된 드라이버 도 설치되어 있고 NI MAX에서 디바이스를 볼 수 있는지 확인합니다. 또는 시뮬레이션 디바이즈를 사용할 경우 MAX에서 사용 가능한 시뮬레이션 된 NI-DAQmx 디바이스를 생성했는지 확인하십시오. 2. NI MAX를 실..

랩뷰에서 DLL (Dynamic Link Library) 호출

DLL을 호출하려면 먼저 라이브러리가 C / C ++ DLL인지 Microsoft .NET Assembly / .NET DLL인지 식별해야합니다. 가지고있는 라이브러리 유형을 확인하려면 DLL 파일에 대한 PE (Portable Executable) 헤더를 확인할 수 있습니다. DLL이 C / C ++ DLL일 경우 헤더 파일 (* .h) 또는 함수 프로토 타입 정의를 찾습니다. 호출하려는 기능을 식별하십시오. 함수의 매개 변수에 원시 데이터 유형 매개 변수 (예 : int, char, double 등)가 포함되어 있는지 또는 복잡한 데이터 유형 (예 : 구조체, 배열 또는 벡터)이 포함되어 있는지 확인하십시오. 함수에 복잡한 데이터 타입이없고 헤더 파일 (* .h)이있는 경우, 공유 라이브러리 가져 오..

NI MAX에서 시뮬레이션 디바이스 생성 방법

시뮬레이션된 디바이스는 NI Measurement and Automation Explorer (MAX)의 NI-DAQmx Simulated Device 옵션을 사용하여 생성됩니다. 시뮬레이션된 장치로 작업하는 동안 몇 가지 중요한 고려 사항은 다음과 같습니다. 일부 NI-DAQmx 디바이스는 NI MAX에서 시뮬레이션할 수 없습니다. 이러한 상황에서는 시뮬레이션할 수 있고 여전히 테스트의 중요한 대표자가 될 수 있는 유사한 장치를 찾으려고 할 수 있습니다. NI-DAQmx 디바이스 또는 모듈형 계측기만 시뮬레이션할 수 있습니다. 시뮬레이션할 수 있는 장치의 경우 시뮬레이션 모드에서 지원되지 않는 일부 장치와 관련된 몇 가지 메서드와 속성이 있습니다. 아래 단계에 따라 NI-DAQmx 시뮬레이션 디바이스를..

랩뷰 개발 및 유지보수를 위한 고려사항

소프트웨어 개발과 유지 보수의 효율성을 극대화하려면 LabVIEW 어플리케이션을 잘 설계해야 합니다. 이 문서에서는 특히 LabVIEW의 소프트웨어 설계와 관련된 기본 구조, 설계 패턴, 아키텍처를 소개합니다. 이 내용은 포괄적이지는 않지만 LabVIEW 소프트웨어 설계를 시작할 때 고려해야 할 일반적인 요소를 설명합니다. 기본 구조 다음의 각 섹션은 LabVIEW 프로그래밍에서 특정 작업을 위해 사용되는 일반적인 구조를 설명합니다. 이러한 기본 구조에 익숙해지면 LabVIEW 어플리케이션 내 사용을 더 쉽게 파악하고고 이해하는 데 도움이 됩니다. 타입 정의 타입 정의 (종종 "typedefs"로도 씀)를 사용하면 어플리케이션 전체에서 일관되게 정의될 데이터 타입을 지정할 수 있습니다. 예를 들어, 다음..

랩뷰 런타임 엔진 다운로드 및 설치방법

LabVIEW Development System이 설치되면 LabVIEW Runtime Engine이 자동으로 설치되므로 하나의 컴퓨터에서 실행 파일을 개발하고 테스트하는 데 유용합니다. 그러나 코드를 배포 한 후 개발 기능을 원하지 않는 경우 여러 방법을 사용하여 자체적으로 LabVIEW 런타임 엔진을 설치할 수 있습니다. ni.com 다운로드에서 LabVIEW Runtime Engine은 LabVIEW Runtime Download 페이지의 NI 웹 사이트에서 다운로드 할 수 있습니다. LabVIEW Runtime Engine 다운로드는 일반 LabVIEW 다운로드 페이지에 옵션으로 포함되어 있습니다. LabVIEW 다운로드 페이지에서 아래와 같이 런타임 옵션을 선택합니다. 필요한 OS , Bitne..

랩뷰 While 루프 생성 및 구성하기

While 루프는 주어진 조건이 충족될 때까지 코드 블록을 반복적으로 실행하는 데 사용하는 구조입니다. VI가 실행되면 While 루프 내부의 코드가 실행되고 조건 터미널이 평가됩니다. While 루프 만들기 LabVIEW를 시작하고 새 VI를 엽니다. 파일»새 VI를 선택하여 빈 VI를 열 수 있습니다. 블록 다이어그램을 마우스 오른쪽 버튼으로 클릭하여 함수 팔레트의 임시 버전을 표시합니다. 선택 사항: 함수 팔레트의 왼쪽 상단 모서리에있는 압정을 클릭하여 더 이상 임시가 아닌 팔레트를 고정할 수 있습니다. 구조로 이동하여 While 루프를 선택합니다 . 블록 다이어그램에 루프를 배치하려면 루프가 원하는 크기가 될 때까지 마우스 왼쪽 버튼을 클릭하고 드래그합니다. 전면 패널에 정지 버튼을 추가합니다. ..

랩뷰 엑셀보고서 만들기

LabVIEW에서 Excel 파일 형태로 보고서를 작성하기 위한 Report Generation Toolkit에 대해서 소개해 드리겠습니다. LabVIEW 특정 버전까지는 관련 Toolkit을 별도로 다운로드해서 설치해 주어야 했지만, 최근 버전부터는 LabVIEW 설치할 때 default로 함께 설치됩니다. 관련 Toolkit이 설치되면 아래와 같은 경로에 lvlib 파일이 생기게 됩니다. 그리고 예제 탐색기에서 아래와 같은 위치에 "Excel 리포트" 예제 코드가 생깁니다. 관련 소스코드 위치는 아래와 같습니다. 참고로 ActiveX를 사용하여 Excel 데이터를 LabVIEW에서 사용할 수 있지만 개인적으로는 Report Generation Toolkit을 사용하는 게 좀 더 효율적이라고 생각합니다..

랩뷰 공유 라이브러리(Dll-Dynamic Link Library) 호출하기

DLL(Dynamic Linking Library) 파일 형태로 제공하는 API를 LabVIEW에서 호출하는 여러가지 방법들에 대해서 살펴보겠습니다. 이를 설명하기 위하여 Axsun사의 Laser를 USB 통신으로 전원 On/Off 해주는 프로그램 및 "user32.dll"을 이용하여 모니터 전원을 On/Off 해주는 프로그램을 구현해 보겠습니다. Axsun사에서는 자사의 Laser를 원격으로 제어할 수 있도록 "AxsunOCTControl.dll"을 제공합니다. 관련 DLL을 LabVIEW에서 호출할 때 프론트 패널 상에서 호출하는 방법을 살펴보겠습니다. 아래 그림에서와 같이 ".NET & Activex >> .NET 컨테이너"를 클릭합니다. 생성된 .NET 컨테이너 위에서 마우스 오른쪽을 클릭해서 "..

랩뷰 데이터 구조

문자열 데이터 타입 문자열은 디스플레이할 수 있거나 또는 디스플레이할 수 없는 일련의 ASCII 문자입니다. 문자열의 정보 및 데이터 포맷은 플랫폼에 의존적이지 않습니다. 일반적으로 문자열은 다음과 같은 작업에 사용됩니다: 단순 텍스트 메시지 생성. 인스트루먼트에 텍스트 명령을 보내 인스트루먼트를 통제하고, ASCII 또는 2진 문자열 형식으로 데이터 값을 반환한 후 이를 숫자형 값으로 변환. 숫자형 데이터를 디스크에 저장. ASCII 파일에 숫자형 데이터를 저장하려면, 디스크 파일에 데이터를 쓰기 전에 반드시 숫자형 데이터를 문자열로 변환해야 합니다. 대화 상자를 사용하여 사용자에게 지시 또는 입력요청. 프런트패널에서 문자열은 테이블, 문자 입력 박스 및 라벨로 나타납니다. LabVIEW에는 문자열 포..

랩뷰의 배열 및 클러스터

배열은 여러 원소와 차원으로 구성되며 컨트롤이나 인디케이터 둘 중 하나입니다. 배열 안에는 컨트롤과 인디케이터가 동시에 포함될 수 없습니다. 원소는 배열에 들어 있는 데이터 또는 값입니다. 차원은 배열의 길이, 높이 또는 폭입니다. 배열은 유사한 데이터의 모음을 다룰 때와 반복 수행한 계산 결과를 저장할 때 매우 유용합니다. 배열의 원소에는 순서가 있습니다. 배열의 각 원소에는 대응되는 인덱스 값이 있는데, 배열 인덱스를 사용해 그 배열의 특정 원소에 접근할 수 있습니다. NI LabVIEW 소프트웨어에서 배열 인덱스는 0을 기준으로 합니다. 즉, 1차원 (1D) 배열에 n개의 원소가 들어 있는 경우 인덱스 범위는 0에서 n – 1까지라는 뜻이며, 여기서 인덱스 0은 배열의 첫 번째 원소를 가리키고, 인..

랩뷰 시프트 레지스터 (Shift Register)

프로그래밍에서 루프를 사용할 때, 종종 이전에 LabVIEW에서 이미 실행된 루프 반복의 데이터를 사용해야 할 경우가 있습니다. 예를 들어 루프의 각 반복에서 데이터를 하나씩 수집하면서 가장 최근에 수집된 데이터 5 개의 평균을 계산해야 할 때, 루프의 이전 반복에서 나온 데이터를 간직하고 있어야 합니다. 시프트 레지스터 루프를 사용하여 이전 반복의 값을 다음 반복으로 전달하고자 할 때 시프트 레지스터를 사용합니다. 시프트 레지스터는 하나의 터미널 쌍으로 표시됩니다. 이 터미널 쌍은 루프 경계의 좌우의 세로선 상에서 정반대로 마주보며 위치하게 됩니다. 루프 오른쪽의 터미널에는 윗방향 화살표가 있고, 반복이 한 번 끝날 때마다 데이터를 저장합니다. 시프트 레지스터 오른쪽에 연결된 데이터는 LabVIEW에서..

랩뷰의 실행구조

실행 구조에는 그래픽 코드의 일부가 포함되어 있으며, 구조의 내부에서 코드가 실행되는 시기나 방법을 컨트롤합니다. 가장 일반적인 실행 구조는 While 루프, For 루프, 케이스 구조로써, 코드의 동일한 부분을 여러 번 실행하거나 일부 조건에 기반하여 코드의 다른 부분을 실행할 때 사용할 수 있습니다. 루프 While 루프 텍스트 기반 프로그래밍 언어의 Do 루프 또는 Repeat-Unitl 루프와 유사하게, While 루프는 그림 1에서 볼 수 있는 것과 같이 조건이 발생할 때까지 서브다이어그램을 실행합니다. (1) LabVIEW While 루프 | (2) 순서도 | (3) 유사 코드 그림 1은 LabVIEW의 While 루프, While 루프 기능을 나타내는 순서도와 While 루프와 유사한 기능을..

랩뷰의 디버깅 도구

LabVIEW에는 문제 코드 영역을 살펴보고 적절한 변경을 적용하기 위한 강력한 디버깅 도구가 포함되어 있습니다. 일반적으로 소프트웨어 버그에는 프로그램 실행을 중단시키는 버그와 나쁜 결과 또는 부정확한 동작을 발생시키는 두 가지 유형의 버그가 있습니다. 본 모듈은 두 가지 에러의 유형을 파악하고 문제를 해결하는 방법을 설명합니다. LabVIEW가 사용자의 VI를 실행할 수 없는 경우, LabVIEW는 실행 화살표를 깨진 아이콘으로 바꾸고 에러 리스트 윈도우에 VI가 깨진 특정한 이유를 나열합니다. 두번째 타입의 버그는 찾기가 더 어려지만, LabVIEW에는 사용자의 코드가 실행되는 것을 살펴볼 수 있는 여러 가지 도구가 제공되므로 보다 쉽게 확인 프로세스를 수행할 수 있습니다. 깨진 VI 수정하기 VI..

랩뷰의 기본적인 도구

LabVIEW 소프트웨어와 같은 그래픽 기반 프로그래밍 언어에서 마우스는 프로그래밍 환경과 연동할 수 있는 주요 수단입니다. 따라서 마우스 포인터는 선택, 와이어 연결, 텍스트 하이라이트 등 여러가지 작업을 수행해야 합니다. 본 모듈은 LabVIEW에서 마우스의 여러 기능 뿐 아니라 마우스로 태스크를 완성하는 방법에 대해 살펴봅니다. 또한 본 모듈에서는 VI를 변경할 수 있는 몇 가지 중요한 방법인 바로 가기 메뉴, 프로퍼티 대화 상자, 도구 모음 등을 설명합니다. 도구 선택하기 LabVIEW에 있는 도구를 사용하여 VI를 생성, 수정 및 디버깅할 수 있습니다. 마우스 커서의 특정한 작업 모드를 도구라고 함. 커서의 작업 모드는 선택한 도구의 아이콘 모양으로 표시됩니다. LabVIEW는 마우스의 현재 위..

그래픽기반 프로그래밍 언어 랩뷰

LabVIEW는 데이터 흐름 모델에 따라 VI를 실행합니다. 블록다이어그램 노드는 필요한 모든 입력을 받아야 실행될 수 있습니다. 노드가 실행되면, 출력 데이터를 생성한 후 이를 데이터 흐름 경로에 따라 다음 순서에 있는 노드로 전달합니다. 노드를 통과하는 데이터의 흐름은 블록다이어그램에 있는 VI 및 함수의 실행 순서를 결정합니다. Visual Basic, C++, Java 및 대부분의 텍스트 기반 프로그래밍 언어에서는 프로그램 실행에 있어 흐름 제어 모델을 따릅니다. 흐름 제어 모델에서는 프로그램 원소의 순서가 프로그램의 실행 순서를 결정합니다. 데이터 흐름 프로그래밍의 예로 그림 1과 같이 두 숫자를 더한 후에 그 합에서 50.00을 빼는 블록다이어그램의 경우를 생각해 보도록 합니다. 이 경우 블록..

LabVIEW 랩뷰 환경의 기본 사항

LabVIEW 프로그램이 버추얼 인스트루먼트 또는 VI로 불리는 이유는 오실로스코프 및 멀티미터와 같은 물리적인 인스트루먼트의 외형과 기능을 프로그램 내에서 구현하기 때문입니다. LabVIEW에는 데이터 수집, 분석, 디스플레이, 저장에 필요한 도구와 사용자가 작성한 코드의 문제를 해결하는데 도움이 되는 도구가 포괄적으로 들어있습니다. 새로운 VI를 생성하면 두 개의 윈도우 즉, 프런트패널 윈도우와 블록다이어그램이 나타납니다. 프런트패널 새 VI 또는 기존 VI를 열면 VI의 프런트패널 윈도우가 나타납니다. 프런트패널 윈도우는 VI의 사용자 인터페이스입니다. 그림 1은 프런트패널 윈도우의 예입니다. (1) 프런트패널 윈도우 | (2) 도구 모음 | (3) 컨트롤 팔레트 그림 1. 프런트패널의 예 컨트롤 ..

랩뷰를 이용하여 시리얼 통신하기

시리얼 통신은 RS-232, RS-485, RS-422등 다양한 종류가 있습니다. LabVIEW에서 제공하는 시리얼 통신을 하기 위한 VISA 함수를 이용하여 시리얼 통신 프로그램을 함께 구현해보겠습니다. VISA (Virtual Instrument Software Architecture)는 계측 시스템의 설정, 프로그래밍 및 문제 해결하기 위한 표준입니다. NI-VISA는 National Instruments에서 개발한 것으로, GPIB, VXI, PXI, 시리얼 (RS232/RS485), 이더넷/LXI, USB 및/또는 IEEE 1394 계측기와의 통신을 단일화하고 인스트루먼트 컨트롤 프로그램을 간소화시켜줍니다. 따라서 LabVIEW로 시리얼 통신을 하려면 반드시 NI-VISA 드라이버를 설치해야 합..

NI DAQ와 랩뷰를 이용한 구적 엔코더 측정 방법

엔코더는 동작이나 위치를 측정할 수 있는 전자 기계 장치입니다. 대부분의 엔코더는 광학 센서를 사용하여 펄스 트레인의 형태로 전기 신호를 제공하며, 이는 모션, 방향 또는 위치로 변환 될 수 있습니다. 로터리 엔코더는 샤프트의 회전 운동을 측정하는데 사용됩니다. 그림 1은 LED(Light-Emitting Diode), 디스크 및 디스크 반대쪽에 있는 광 감지기로 구성된 회전식 엔코더의 기본 구성 요소를 보여줍니다. 회전축에 장착된 디스크에는 디스크에 코딩된 불투명하고 투명한 섹터 패턴이 있습니다. 디스크가 회전하면 불투명 부분이 빛을 차단하고 유리가 투명한 곳에서는 빛이 통과 할 수 있습니다. 이것은 구형파 펄스를 생성하여 위치 또는 모션으로 해석할 수 있습니다. 엔코더는 일반적으로 회전당 100~6,..

반응형
반응형