이 글에서는 NI 제품군(DAQmx, VISA, 488.2, RFmx, FGEN, DMM, HSDIO, DCPower, Scope, Switch, NI-IMAQ와 IMAQdx)를 사용할 때 .NET 개발 환경에서 어플리케이션 개발의 가능성에 대해서 설명을 드리고자 합니다. 1. Measurement Studio에 대해서 National Instruments(이하 NI)는 데이터 수집, PXI 장비, 시리얼, USB, GPIB등을 사용하는 Third Party 장비에 대한 .NET 드라이버 API를 지원하고 있습니다. .NET 개발자들을 위해서 NI는 NI Measurement Studio를 통해서 Native .NET API를 제공하고 있습니다. NI Measurement Studio는 .NET 개발 툴..
웨이팅 필터는 인간의 청각을 고려한 청감보정을 위하여 주파수응답 특성에 따라 가중치를 부여한 필터를 의미하는데, 한개 채널 혹은 N개 채널에 대한 신호를 평균화 하여 선형(Linear), 지수(Exponential), 최대값(Peak Hold)을 연산합니다. AC 커플링과 소프트웨어 하이패스 필터를 이용하여 DC 신호를 감쇠시킬 수도 있으며, A, B, C 웨이팅을 적용할 수도 있습니다. 측정시 웨이팅 필터 옵션 선택할 수도 있습니다. 웨이팅 필터는 소음/음향 측정을 위해 각종 오디오 미터류에서 필요에 따라 설정이 가능합니다. 웨이팅 필터는 A, B, C로 구분이 되며 이를 정리하면 아래와 같습니다. A 웨이팅필터 : 음압레벨 55 dB 이하에 주로 사용, 저주파 성분을 크게 감소시켜서 보정함, 인간의 ..
NI Scope를 이용하여 .NET Framework에서 사용하고자는 분들이 많아서 관련 내용을 정리해봅니다. 기본적으로 NI Scope는 LabVIEW, CVI/LabWindows, VB에서 사용할 수 있는 라이브러리를 제공하고 있습니다. 기본적으로는 C#은 제공을 하고 있지 않죠. 따라서 NI Scope 라이브러리를 설치할 때 .NET Framework에 대한 내용을 설치할 수 없습니다. 하지만 NI Scope 4.1 이후 버전부터 추가적으로 라이브러리를 지원하고 있기에, 이 드라이브를 설치하게 되면 .NET 에서도 Scope에 대한 프로그래밍이 가능해집니다. 본 드라이버는 IVI driver-compliant .NET Class Library를 통해서 Scope에 대한 .NET Framework 개..
NI MAX의 장비에 대한 리스트를 가져오기 위해서는 NI System Configuration API를 이용해야 합니다. 아래의 자료를 보시면 아시겠지만, NI System Configuration API는 LabVIEW, CVI, .NET(C#)만 지원하고 있습니다. 따라서 C언어에 대한 API를 바로 사용할 수는 없습니다. 관련 예제는 아래의 그림과 같이 본 경로에서 확인할 수 있습니다. C:\Users\Public\Documents\National Instruments\CVI\Samples\nisyscfg\ShowAllHardware 그럼 정말 C, MFC에서는 NI 장비 리스트를 받을 수 없는 것일까요? 방법이 없는것은 아닙니다.LabVIEW, CVI 혹은 C#을 이용하여 C 언어에 대한 Lib..
PID제어는 비례(Proportional), 비례적분(Integral), 비례미분(Differential) 제어를 조합한 제어방식으로 기존의 제어의 85%이상을 차지하는 유명하면서 많이 쓰이는 제어방식입니다. 흔히 PID 제어라고 하면 아래의 그림을 많이 볼 수 있습니다. Kp, Ki, Kd의 값을 이용해서 특정한 연산을 하고 이에 대한 Output을 낸다고 볼 수 있겠네요. PID 제어는 제어하고자는 대상의 출력값을 측정하여, 이 값을 바탕으로 목표값(SetPoint)와 비교한 뒤 오차를 계산하여 이를 바탕으로 다시 제어값을 결정하는 알고리즘입니다. PID 제어의 공식을 먼저 살펴보겠습니다.공식은 아래와 같습니다. 적분도 있고, 미분도 있네요. 위의 공식은 아래와 같이도 표현이 될 수 있습니다. 왜 P..