LabVIEW에서 사용할 수 있는 반복문은 For와 While이 있습니다. 사용자가 반복이 되는 횟수동안 루프 안에서 계산된 결과를 반복마다 가져오기 위해서는 인덱싱 기능을 사용할 수 있습니다. 즉 루프가 반복이 될 때마다 사용자가 원하는 값을 루프가 종료되었을 때 배열로 가져올 수 있게 되는 것이지요. 인덱싱에 대한 내용은 아래의 링크에 상세히 설명을 해놓았으니 이 글을 참고하시길 바랍니다. 2014/09/05 - [National Instruments/LabVIEW] - 랩뷰 초급 강의 - 랩뷰(LabVIEW)에서 반복구문의 결과를 얻기 이 글에서는 인덱싱에 활용하는 방법에 대해서 이야기 해볼까 합니다. 인덱싱을 이용하면 루프내의 특정값을 1차 배열로 받아올 수 있습니다. 그러면 인덱싱을 이용하여 2..
LabVIEW를 이용하여 Vision 어플리케이션 개발시에 생산자-소비자 패턴을 적용하게 되면 소비자 패턴에서 원활히 데이터를 처리하지 못하여, 생산자와 소비자 간의 루프 동기화가 이루어지지 않게 됩니다. 이러한 문제가 발생하는 이유는 무엇일까요? 이 문제의 원인은 IMAQ 함수 처리 방식 때문입니다. IMAQ 함수에서 사용하는 Image Out 값은 실질적인 이미지의 Byte 값이 들어가 있는 배열 형태가 아니라, 이미지 값을 저장하고 있는 배열의 메모리 위치를 나타냅니다. 따라서 Queue 함수에 전달을 할때 IMAQ 함수에서 생성된 Image Out 값을 넣게 되면 메모리의 위치만을 알려주는 메모리 주소를 전달하게 됨으로써 처리가 원할하지 않게 되는 것입니다. 좀 더 유식하게 이야기 하면 IMAQ ..
학생 혹은 교수님께서 최근(?) 출시된 NI myRIO를 많이 쓰시는 분들이 많으신데요. myRIO에 대해서 간단히 설명을 하는 시간을 가져보도록 하겠습니다. 이번 글에서는 myRIO 제품을 이용하여 프로젝트를 쉽게 생성하는 방법을 알아보도록 하겠습니다. LabVIEW를 실행하면 프로젝트를 생성할 수 있는 메뉴가 있습니다. 그 메뉴는 아래와 같습니다. 프로젝트 생성을 누릅니다. 프로젝트 생성 창에서 myRIO Project를 선택하고 다음을 누릅니다. 자신이 원하는 프로젝트 Name을 선정하시고, 장비를 추가해야합니다. 만약 실제 장비가 있다면 장비 설정 방법이 3가지가 있습니다. Plugged into USB(USB로 연결된 상태), Connected over WIFI(WIFI로 장비에 접근), Spe..
파일 경로와 구조는 운영체제에 따라서 다르게 구성이 됩니다. 따라서 NI 제품군이 사용하는 Phar Lap, VxWorks, Linux RT의 파일 구조의 차이점에 대해서 알아보고, LabVIEW를 이용하여 경로를 구성하는 효율적인 방법에 대해서 설명을 드리도록 하겠습니다. 1. RT OS 옵션 National Instruments Real-Time 컨트롤러는 Parh Lap, VxWorks, NI Linux Real-Time OS로 불리는 서로 다른 3개의 운영체제를 기반으로 실행이 됩니다. Phar Lap 운영체제를 기반으로 실행되는 장비는 루트 디렉토리가 C:\이며, 이는 윈도우와의 파일 구조와 비슷한 장점을 가지고 있습니다. VxWorks는 Unix 스타일의 구조를 가지고 있으며, 루트는 /c/와..
티스토리 블로그를 보시면 자신의 글 혹은 페이지에 좋아요 버튼이 있는 것을 확인할 수 있습니다. 이번 글에서는 이러한 좋아요 버튼을 다는 방법을 알아보도록 하겠습니다. 페이스북 좋아요 버튼을 자신의 블로그에 달기 위해서는 먼저 Facebook 사이트에 접속해야 합니다. 주소 : https://developers.facebook.com/docs/plugins/like-button 위의 주소로 접속을 하시면 아래의 그림처럼 사이트가 뜨게됩니다. 위의 사이트에서 Like Button Configurator를 선택합니다. Configurator를 선택하면 아래와 같은 화면으로 전환됩니다. 여러가지 설정해야 하는 방법이 나와있는것 처럼(?) 보이지만 별거 없습니다. URL to Like는 Like할 사이트를 지정..
NI Vision Development Module 2014는 많은 새로운 기능과 성능 향상에 대한 부분을 포함하고 있습니다. 이 자료는 새로운 알고리즘과 향상점에 대해서 소개하고, 비전 어플리케이션을 개발할 때 어떠한 영향을 미치는지를 이야기 할 것입니다. 1. FPGA Image Processing IP 많은 이미지 프로세싱 알고리즘들은 병렬 FPGA의 이점을 가지며, 비전 어플리케이션의 프로세스 집약적 부분에 대한 짐을 덜어낼 수 있습니다. 따라서 프로세스는 다른 태스크에 대한 처리를 할 수가 있게 됩니다. Vision Development Module 2014(이하 VDM)는 효과적으로 Host와 FPGA 사이에 이미지를 전송할 뿐 아니라, 50개 이상의 FPGA 이미지 프로세싱 함수를 제공하고 ..
NI RIO 제품이나, R 시리즈 보드를 이용하면 FPGA 코딩을 할 때가 있습니다. FPGA 코드는 실질적으로 칩에 실려 프로그래밍된 칩을 이용하는 것이기 때문에 FPGA 코딩 이후에 컴파일 과정이 필요합니다. 따라서 이 글에서는 FPGA 컴파일에 대한 방법을 설명드릴 려고 합니다. 일반적으로 FPGA 코드에 대한 컴파일 방법은 3가지로 분류가 됩니다. 1. 개발 PC를 컴파일 서버로 이용하기(Use the local compile server) 1번 방법은 자신의 PC에 Xilinx Compile Tool을 설치하여 컴파일을 하는 방법입니다. 가장 간단한 방법이지만 컴파일시에 CPU의 점유율과 메모리를 사용하기 때문에 리소스를 사용한다는 단점을 가지고 있습니다. 2. 서버PC를 컴파일 서버로 이용하기..
LabVIEW FPGA 컴파일 서버를 설치하는 방법은 여러가지가 있습니다. 옵션1 – NI LabVIEW FPGA Compile Cloud Service를 사용한다. LabVIEW FPGA를 이용하여 LabVIEW FPGA Compile Cloud Service를 사용하는 것은 고성능, 고신뢰성을 가지는 클라우드 서비스를 이용하여 FPGA 코드를 컴파일 하는 것입니다. 이는 컴파일을 하고자는 PC의 유지보수에 대한 걱정을 할 필요가 없습니다. 컴파일 시간을 줄이기 위해서 이 서비스는 병렬 컴파일을 가능하게 도와줍니다. 옵션2 – LabVIEW FPGA Compile Farm Server를 로컬 컴퓨터에 설치한다. LabVIEW 2014 FPGA Module를 위해서 Xilinx 컴파일 툴 DVD를 이용하..
이번글에서는 NI CVS를 프로젝트 기반으로 설정하는 방법을 알아보도록 하겠습니다. 그럼 CVS가 먼지 부터 알아보도록 할까요. NI Compact Vision System(NI CVS)는 산업용 카메라 연결 및 FPGA 기반 IO 처리를 가능하게 하는 자동화 컨트롤러입니다. CVS를 통해서 사용자는 여러대의 카메라에서 이미지를 실시간으로 수집하고,, 처리할 수 있습니다. 이 시스템은 Intel Atom 프로세서를 탑재하며 기가비트 이더넷 또는 USB 3.0 카메라와 연동 할 수 있습니다. 실시간 디스플레이, 산업용 통신 포트 및 산업용 디지털 I/O가 있으며 LabVIEW FPGA Module을 사용하면 직접 설정할 수 있습니다. FPGA를 통해서 사용자가 원하는 알고리즘을 FPGA에 심어 처리하게 만..
cDAQ-913X 시리즈는 기존의 DAQ 장비와는 달리 Linux RT 혹은 Windows를 포함하고 있습니다. DAQ 장비에 Controller가 있어 자체적으로 OS를 가지고 있는 것이죠. 이로 인해 좀더 편리하고 독립적인 DAQ 시스템을 구성할 수 있습니다. 그럼 cDAQ-9134의 스펙을 간단히 살펴봅시다. OS를 보유하고 있는 cDAQ를 이용하게 되면, Embedded UI Panel을 사용할 수 있습니다. NI에서는 Desktop Interface (Xfce) for NI Linux Real-Time OS running on the controller를 추천합니다. 이와 관련된 자료는 아래의 링크를 참조하시기 바랍니다. http://xfce.org/ 이러한 Embedded UI를 이용하게 되면..