티스토리 뷰

[DAQmx] 아날로그 신호 기초 자료(Analog Signal Fundamentals)


이 글에서는 아날로그 신호에 대한 전반적인 이야기를 해볼까 합니다. 아날로그 신호는 전압, 온도, 압력, 유량등의 센서 전기적 신호를 컴퓨터에 입력을 받는것을 말합니다. 또는 어떠한 제어를 위해 사인파와 같은 파형 혹은 DC 전압을 출력하는 것도 아날로그 신호라고 볼 수 있습니다. 


1) 해상도


아날로그 신호의 해상도는 아날로그 신호를 컴퓨터가 인지할 수 있게 디지털신호로 변경하는데 사용되는 개념입니다. NI 제품은 12비트, 16비트등이 대부분인데, 여기에서 12비트라고 하는것은 입력되는 신호를 2의 N(여기의 경우 12)승 단계로 구분할 수 있다는 의미입니다.


이는 측정에 대한 정확도(Accuracy)를 나타냅니다. 해상도가 높으면 높을 수록 훨씬 높은 정확도를 가지는 측정을 할 수 있습니다. 8비트 ADC같은 경우는 256개로 입력받는 값을 구분할 수 있습니다. 10V에 대한 Range를 가진 전압을 측정받는다고 하였을 때 0.039V 단위로 전압을 측정할 수 있습니다. 따라서 8비트의 경우 10mV단위의 전압을 구분할 수 없습니다.


하지만 10비트의 경우 2.4mV단위로 전압을 구분할 수 있기 때문에 10mV단위의 전압차이를 판별해 낼 수 있습니다.



관련 링크 (Measurement Accuracy of a Data Acquisition Board)

http://www.ni.com/white-paper/4517/en/


2) 신호 입력 방식(차동, RSE 그리고 NRSE)


신호 입력을 받기 위해서는 신호를 어떻게 받을 것인가에 대한 입력모드를 결정해야 합니다. 입력모드는 크게 RSE, NRSE, 차동으로 구분을 할 수 있습니다. 


상세한 내용은 아래의 링크를 참조하세요.


관련 링크 (DAQmx에서 전압 측정시 입력 터미널 설정 방법(RSE, NRSE, 차동))  

http://guslabview.tistory.com/33


3) Gain이란?


Gain이란 아날로그 신호 입력 장치 내에서 입력 신호를 증폭하여 좀 더 정확하게 측정을 할 수 있는 기능을 말합니다.

대부분의 NI DAQ 보드에는 Gain에 대한 칩셋(PGIA)이 들어가 있습니다. 


DAQ 보드의 입출력 범위가 +10V ~-10V 짜리인 보드가 있다고 가정을 하였을때, 사용자가 입력 받는 신호가 5V~-5V라서 최대/최소를 이렇게 설정했다고 하면 PGIA에서 입력 받는 신호를 2배로 전압강화하여 전압에 대한 해상도를 측정하므로 측정할 수 있는 최소단위가 10V에 비해 5V가 더작아지게 됩니다. 따라서 좀 더 정확한 측정이 가능합니다. 



4) Clock


주기적인 디지털 엣지를 우리는 클럭이라 부릅니다. DAQ 보드내의 클럭은 샘플 타임베이스 클럭, 20MHz 타임베이스 클럭등 다양하게 존재합니다. 


아래의 클럭들은 NI DAQ 장비에서 사용되는 일반적인 클럭입니다. 




  • AI 샘플클럭 : 입력 받을 채널의 AI 신호를 한번씩 샘플링 하는데 사용되는 클럭입니다. DAQmx 사용시 ai/SampleClock이 이를 의미합니다. 프로그램 구현시 내부 소스는 물론 외부 클럭 지정이 가능합니다. 

  • AI 샘플클럭 타임베이스 : AI 샘플 클럭 타임베이스는 분할되어 AI 샘플클럭으로 사용할 수 있는 소스를 제공합니다. 아래의 소스들을 AI 샘플클럭 타임베이스로 설정할 수 있으며, 외부로 출력할 수는 없습니다. 
    • 20 MHz 타임베이스
    • 100 kHz 타임베이스
    • PXI_CLK10
    • RTSI <0..7>
    • PFI <0..15>
    • PXI_STAR
    • 아날로그 비교 이벤트 ( 아날로그 트리거 )

  • AI 변환 클럭 : 멀티플렉서 장비에서 발생하는 ADC Conversion에 사용되는 클럭입니다. 기본적으로 채널당 사용되는 AI 변환 클럭은 10us입니다. 

  • AI 변환 클럭 타임베이스 : AI 변환 클럭으로 사용할 수 있는 소스를 제공합니다. 아래의 소스들은 AI 변환 클럭 타임베이스로 설정할 수 있으며, 외부 출력이 불가합니다. 
    • AI 샘플 클럭 타임베이스
    • 20 MHz 타임베이스

  • 카운터 타임베이스 : 카운터의 소스 터미널에 연결된 클럭입니다. (예: Ctr0Source) 

  • 마스터 타임베이스 : 디바이스의 다른 카운터에 사용되는 온보드 클럭을 말합니다. 이는 AI 샘플클럭,  AO 샘플클럭, 카운터 타임베이스를 만드는 데 사용이 됩니다. 

  • 12.8 MHz와 13.1702MHz 타임베이스 : 샤시간의 동기화 태스크에 많이 사용되는 이 타임베이스는 마스터 타임베이스로 부터 분할되어 사용됩니다. 

  • 20 MHz 타임베이스 : 마스터 타임베이스로 부터 만들어지고, 다른 샘플클럭을 파생시키는 온보드 샘플 클럭 중 하나입니다. 80MHz를 지원하지 않는 보드이면, 마스터 타임베이스로 부터 생성이 됩니다.  

  • 80 MHz 타임베이스 : 마스터 타임베이스로 부터 만들어지고, 다른 샘플클럭을 파생시키는 온보드 샘플 클럭 중 하나입니다.

  • 100 MHz 타임베이스 : X 시리즈 보드의 온보드 클럭입니다. 

  • 100 kHz 타임베이스  : 20MHz 타임베이스를 20으로 나누어 사용하는 클럭입니다. 


아래의 그림은 M 시리즈 보드의 아날로그 입출력에 대한 타이밍을 구성하는 클럭을 보여줍니다. 




5) 샘플링 방식 - 멀티플렉서 방식(Multiplexed)과 동시샘플링 방식(Simultaneous)


데이터를 수집하는 장비는 멀티플렉서 방식 혹은 동시 샘플링 방식을 사용합니다. 멀티플렉서와 동시 샘플링의 가장 큰 차이점은 각 채널마다 ADC가 있느냐, 하나의 ADC를 여러 채널에서 같이 쓰느냐에 대한 내용입니다.


아래의 그림은 멀티플렉서 방식입니다. 멀티플렉서 방식은 하나의 ADC에 여러개의채널이 공유하여 사용합니다. 따라서  채널간 ADC 사용이 바뀌는 변환 시간이 필요합니다. 하나의 샘플클럭 발생시 모든 채널에서 입력을 받기는 하지만 샘플 클럭내에서 순차적으로 수집을 합니다.




반면 동시 샘플링 방식은 샘플 클럭이 발생하여 데이터 수집을 할때 동시 타이밍에 샘플을 수집합니다. 모든 입력 채널 마다 ADC가 달려있기 때문에 변환 시간에 대한 지연이 없습니다. 



이 글에서는 간략히 DAQ 장비 사용시 필요한 아날로그 입력에 대한 기본적 개념을 알아보았습니다.


이 글이 도움이 되셨나요?

그렇다면 아래의 그림을 클릭해주세요.



댓글