티스토리 뷰

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

이번 글에서는 DAQmx를 이용하여 아날로그 전압을 측정할 때 사용되는 입력 터미널 설정 방법에 대해서 알아보도록 하겠습니다. 


정확한 아날로그 신호를 측정하기 위해서 아날로그 신호를 DAQ 장비로 입력을 받을때 고려해야 하는 점은 접지 방식의 결정과 접지에 대한 입력 모드를 선택하는것이 있습니다. 


1) 접지 방식의 결정


입력되는 아날로그 신호가 신호가 접지인가? 플로팅인가에 대한 구분을 하셔야 합니다. 이에 대한 간단한 설명은 아래와 같습니다.


  • 접지 신호 : 신호가 시스템 접지(지면, 빌딩 접지)에 참조 되어 있는 신호 예) 빌딩
  • 플로팅 신호 : 신호가 시스템 접지(지면, 빌딩 접지)에 참조 되어 있지 않는 신호 예) 배터리, 열전쌍

2) 접지에 대한 입력 방식 결정

이러한 접지 방식이 결정이 되면, 이 신호를 어떻게 받을 것인가에 대한 입력모드를 결정하셔야 합니다. 입력모드는 크게 RSE, NRSE, 차동으로 구분을 할 수 있습니다. 


디바이스에서 접지가 제공되면, 본 설정은 "접지 참조된 싱글 엔드 모드 (RSE)"라고 불리며, 신호에 의해 접지가 제공되면 설정은 "참조되지 않은 싱글 엔드 모드 (NRSE)"라고 불립니다. 전압을 측정하는 또 다른 방법은 전기 회로에서 서로 다른 포인트간의 “차동” 전압을 이용하는 것입니다. 


접지 신호이든, 플로팅 신호이든 모두 RSE, NRSE, 차동을 사용할 수 있습니다. 하지만 접지 루프의 문제로 접지신호에서는 RSE를 권장하지 않습니다. 따라서 접지인 경우 NRSE, 차동을 사용하시고, 플로팅 신호인 경우 RSE, NRSE, 차동을 사용하시면 됩니다. 



RSE는 AI+와 AI GND를, NRSE는 AI+, AI Sense를, 차동은 AI+,AI-를 연결하여 전압의 차를 측정하는 방식입니다. 따라서 RSE, NRSE는 DAQ 장비의 모든 AI 채널 사용이 가능하고, 차동인 경우는 채널 갯수 / 2 개의 채널 사용이 가능합니다.


차동 방식의 결선 방법

차동 측정의 경우 결선 방법은 아래의 그림을 참조하시면 됩니다. 아날로그 입력 채널 0번 (AI+)은 아날로그 입력 채널 8번(AI-),아날로그 입력 채널 1번(AI+)은 아날로그 입력 채널 9번(AI-)번으로 연결을 하시면 됩니다. 즉 AI0~7번은 +가 AI8~15은 -로 결선이 됩니다. 추가적인 AI 채널이 있다고 한다면 똑같은 방식으로 결선을 하시면 됩니다.



그럼 실질적으로 입력 모드를 프로그래밍 상에서 어떻게 이러한 부분을 설정하는지에 대해서 알아보도록 하겠습니다. 


3) LabVIEW에서 입력 모드 설정하기


LabVIEW에서 입력 모드를 설정하기 위해서는 DAQmx 채널 생성이라는 vi를 사용하셔야 합니다. DAQmx 측정을 위해서는 Task 생성이 필요한데, 이러한 Task 생성을 해주는 VI가 DAQmx 채널 생성입니다. Task 생성시에 입력 터미널 설정을 하는 노드가 있습니다.


결선을 통해서 아날로그 신호 입력에 사용하는 입력 모드에 따라서 이부분의 값을 변경해 주시면 됩니다. 기본적으로 DAQmx는 기본값이 지정이 되어 있습니다. 이 기본값은 DAQmx 장비에 따라 다르므로, 자신의 장비가 어떠한 값을 기본으로 사용하는지 판단을 하셔야 합니다. 일반적으로 차동을 많이 사용합니다. 


각각의 값은 Enum 형식으로 되어 있어, 각 모드에 따라 특정 값이 지정이 되어 있음을 아래의 그림을 통해서 확인을 할 수 있습니다. 

4) 텍스트 언어에서 설정하기(C# 기준이나, C도 동일)


텍스트 언어에서 설정하는 방식은 LabVIEW와 동일합니다. Task를 생성하는 함수에서 입력 모드를 지정할 수 있습니다. 


아래의 그림은 C#에서 제공하는 입력 터미널 설정에 대한 Enum 값입니다. 동일한 방식으로 DAQmx에 대한 Task 생성에 사용되는 함수에서 이 부분이 설정이 가능합니다. Enum 값은 LabVIEW와 동일하게 기본값, RSE, NRSE, 차동, 유사차동(Pseudodifferential)으로 구분이 됩니다. 



C#에서는 CreateVoltageChannel 함수의 3번째 인자에서 설정이 가능합니다. 아래의 그림은 직접적으로 설정하는 방법을 보여주고 있습니다. C#의 기본 예제에서는 입력 모드 설정이 (AITerminalConfiguration) (-1)로 작성이 되어 있습니다. 이는 LabVIEW와 동일하게 기본값을 지정하고 있는 것입니다. 


수동으로 입력 모드를 변경하고자 한다면 (AITerminalConfiguration) (-1)를 삭제한뒤, AITerminalConfiguration.Rse (RSE의 경우)와 같이 기존의 enum을 사용하는 방식으로 입력을 하시면 됩니다. 


입력 모드의 경우는 실질적으로 하드웨어에서 아날로그 입력을 어떻게 받을 것인지 결정이 한 뒤에 프로그래밍 선택을 하는 것이므로, 하드웨어상 결선이 어떻게 되는지 파악을 하신뒤에 프로그래밍 하시면 됩니다.


이상 DAQmx를 이용한 아날로그 전압 측정시 입력 터미널 설정 방법(RSE, NRSE, 차동)에 대해서 살펴보았습니다. 


이글이 도움이 되셨나요.

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



댓글