아날로그 형태로 데이터를 전송하는 신호 컨디셔너에 구현된 센서 신호 컨디셔닝 알고리즘을 보정하는 방법을 알아본다.
센서 보정 시에는 감지소자가 비이상적일 뿐만 아니라 오프셋과 이득 오류와 같은 신호 컨디셔너의 비 이상성도 함께 보정한다는 점에 유의하자. 아울러 보정 계획에는 디지털 회로의 프론트/백 아날로그 회로의 아날로그 시그널 체인 오류도 고려해야 한다.
센서 신호 컨디셔닝을 위한 혼합 신호 집적회로(IC)는 압력, 온도 및 위치 모니터링과 같은 센서 애플리케이션에서 널리 사용되고 있다. 이러한 신호 컨디셔너의 감지소자에서 나온 출력 신호를 조정하는 작업은 아날로그와 디지털 회로가 조합된 혼합 신호 회로에서 이루어진다. 또한 감지소자 신호를 실제로 조정하는 과정은 디지털 도메인에서 구현된다.
조정한 신호는 센서 컨디셔너에서 출력되는데, 여기서 센서 출력은 아날로그나 디지털 형태로 제어장치나 모니터링 시스템으로 전송된다. 전송에 아날로그 방식을 사용한다면 처리한 디지털 신호를 다시 아날로그 형태로 변환해야 한다.
이 글에서는 아날로그 형태로 데이터를 전송하는 신호 컨디셔너에 구현된 센서 신호 컨디셔닝 알고리즘을 보정하는 방법에 대해 알아본다. 센서 보정 시에는 감지소자가 비이상적일 뿐만 아니라 오프셋과 이득 오류와 같은 신호 컨디셔너의 비 이상성도 함께 보정한다는 점에 유의해야 한다. 아울러 보정 계획에는 디지털 회로의 프론트/백 아날로그 회로의 아날로그 시그널 체인 오류도 고려해야 한다.
센서 신호 컨디셔너
감지소자의 전기적 출력은 대체로 값이 작은편이며, 오프셋이나 감도 오차, 비선형성과 같은 비 이상성을 지닌다. 이러한 비 이상성 때문에 측정에 오류가 생길 수 있는데, 센서 신호 컨디셔너는 이러한 비 이상성을 최소화해 준다.
혼합 신호 컨디셔너
그림 1은 아날로그 출력이 있는 혼합 신호 컨디셔너의 구성도를 나타낸 것이다. 혼합 신호 컨디셔너는 프론트엔드 아날로그 회로가 감지소자에 연결되어 있다. 감지소자의 출력은 대체로 매우 작기 때문에 프론트엔드는 이득 단계(이하, 이득단)와 아날로그-디지털 컨버터(ADC)로 구성되어 있다. ADC가 감지소자의 출력을 디지털화하는 역할을 하므로 유연한 디지털 신호 처리 기법을 이용하여 감지소자 신호를 조정할 수 있다. 또한 이득단은 단일 종단 차동 증폭기나 계측 증폭기로 구성할 수 있으며, 그 구성은 감지소자 핀 배치도로 결정된다.
그림 1. 혼합 신호 컨디셔너의 블록 다이어그램
프론트 엔드에서 나온 데이터는 디지털 회로에서 조정한 후에 백엔드로 보내져 제어장치나 모니터링 시스템으로 전송되며, 조정한 신호는 아날로그나 디지털 중 한 가지 형태로 전송된다.
조정된 디지털 신호를 아날로그 형식으로 전송하려면 버퍼나 이득단이 있는 디지털-아날로그 컨버터(DAC)가 디지털 값을 아날로그 형식으로 변환해야 한다.
아날로그 시그널 체인의 오류
감지소자 출력은 대체로 신호폭이 매우 협소한 신호로써 출력 신호 범위가 좁다. 따라서 감지소자의 출력 조정은 이득단에서 시작하게 된다. 결과적으로 감지소자 출력은 입력 오프셋, 이득, 비선형 오류와 같은 증폭기의 종류별 소스에 따른 오류에 의해 좌우된다. 덧붙여 오프셋과 비선형성 오류 외에도 감지소자 자체 오류도 있다.
여기에서 논한 신호 컨디셔너에도 DAC와 이득단으로 생성되는 아날로그 출력이 존재한다. 다시 말해, 조정한 신호도 아날로그 출력단의 입력 오프셋과 이득 및 비선형 오류와 같은 증폭기 오류의 영향을 받는다는 것이다.
이러한 센서 컨디셔너의 오류는 디바이스와 IC 내부 부품구성이 일치하지 않아 초래된다. 감지소자 출력 신호나 아니면 제어부나 모니터링 시스템으로 전송하기 전의 조정된 출력 신호에 어느 정도의 이득을 적용하였는지에 따라 오류가 악화되기도 한다.
감지소자의 신호는 비 이상성을 띠고 있다는 점에 유의한다. 그러므로 센서 제조 중에는 감지소자 출력의 비 이상성을 교정하는데, 주로 신호 컨디셔너의 도움을 받는다. 이런 보정 과정에서는 아날로그 시그널 체인의 오류를 고려해야 한다.
그림 2에 비보정 센서 신호 컨디셔너와 보정된 센서 컨디셔너의 기대 출력을 감지소자 입력 신호면에 나타냈다. 보정하지 않은 출력에는 감지소자와 신호 컨디셔너의 아날로그 회로가 신호 흐름 상에서의 비 이상성이 모두 포함되어 있다는 점에 주목한다.
그림 2. 보정 센서의 이상적인 출력 VS 감지소자의 신호
2단계 보정 과정
2단계 보정 과정은 아래와 같다.
① 백엔드 아날로그 회로의 오류 보정
디지털 회로에서 조정하고, 아날로그 형태로 되돌린 후에 신호에 생긴 오류를 보정한다.
② 프론트엔드 아날로그 회로의 오류 보정
디지털화 하기 전 감지소자 신호 상에 생긴 입력 오프셋과 이득, 비선형성 오류를 보정한다.
그림 3에 센서 컨디셔너 중 2단 보정과 관련이 있는 부분을 나타냈다. 백엔드 아날로그 회로 보정으로 감지소자와 프론트엔드 아날로그 회로 보정에 필요한 ‘기대’ 출력값으로 보정되므로 보정 과정은 매우 중요하다.
그림 3. 센서 보정 사항, 프론드엔드 및 백엔드 곡선 모두 조정 가능
백엔드 회로 보정
아날로그 시그널 체인의 비 이상성으로 인한 오류를 줄여 센서 출력의 정확도를 높인다는 점에서 백엔드 및 프론드엔드 아날로그 회로 보정의 목적은 비슷하다. 그러나 백엔드 회로 보정에 사용하는 데이터 지점은 감지소자가 아니라 센서 컨디셔너 내부에 있다.
실질적으로 백엔드 회로를 보정하기 위해서는 DAC와 출력 아날로그 회로의 다른 부분을 디지털 신호 컨디셔닝 회로와 분리하여야 한다. 그런 후 외부 보정 시스템으로 DAC에 데이터를 직접 쓰고 백엔드 아날로그 회로의 출력을 측정한다(신호 컨디셔너 출력 핀).
이후 표준 곡선 맞춤 알고리즘을 이용하여 데이터의 곡선을 맞춘다. 이 곡선으로 감지소자 출력 보정에 필요한 DAC 값을 정한다. 이 보정에 필요한 데이터 지점의 개수는 백엔드 아날로그 회로 상의 비 이상성에 달려 있다는 점에 유의한다.
데이터 지점은 감지소자가 아닌 사용자가 제어하는 부분이므로 보통은 몇 군데의 데이터 지점에서 보정된다. 덧붙여 온도 변화로 백엔드 아날로그 회로의 동작이 바뀌면 이 과정도 다른 온도에서 반복해야 한다.
백엔드 아날로그 회로의 연산을 전달하고 원하는 DAC 코드를 결정했으면, 이 DAC 코드를 프론드엔드의 보정 계산에 사용한다.
프론트엔드 보정
프론드엔드 보정은 감지소자 출력 신호의 선형성에 의해 크게 좌우된다. 게다가 센서는 제조업체에서 보정하므로 시간과 비용도 결정적인 인자로 작용한다. 앞서 언급했지만 센서에 기대하는 정확도에 따라 방법을 다르게 구현할 수 있다.
일반적으로 센서 컨디셔너는(예를 들어, 압력이나 온도 등) 애플리케이션과 관련한 특정 자극으로 감지소자가 여자되었을 때 수학적 알고리즘을 이용하여 센서 출력을 보정한다. 측정 횟수는 센서 컨디셔너가 데이터를 처리하는 능력뿐만 아니라, 센서 보정에 필요한 시간에 따라 결정된다. 예를 들어, 압력 센서의 프론드엔드라면 3개의 입력 신호 지점에서 ADC 출력을 측정하여 보정할 수 있다. 표준 곡선 맞춤 기법으로 ADC 출력에서 DAC 입력으로 보내기 위한 이전 함수를 결정할 수도 있다. ADC 데이터와 백엔드 회로 보정 중 계산한 DAC 코드를 사용하면 이 과정을 처리할 수 있다. 단, 같은 압력 측정 지점에서 온도를 다르게 하여 3회 측정을 해야 한다.
즉, 세 가지 온도와 세 가지 압력 값을 사용해 총 9회 측정을 해야 한다. 이렇게 센서 컨디셔너의 출력에 대한 수학적 2차 방정식이 나온다.
여기에서 h0, h1, h2, g0, g1, g2, n0, n1, n2는 감지소자의 출력과 센서 컨디셔너의 기대 출력을 일치시키기 위해 사용하는 계수이다. 백엔드 회로의 결과를 이 계수 계산에 사용하므로 먼저 백엔드 보정부터 해야 한다.
일반적으로 세 가지 온도에서 3회 압력을 측정하는 데에는(3P:3T) 한 가지 온도에서 3회 압력을 측정하는(3P:1T) 것보다 시간도 많이 걸리고 복잡하다. 하지만 후자에 비해 전자 쪽이 센서의 출력이 훨씬 정확하다. 센서 컨디셔너의 애플리케이션과 처리 능력에 따라 2가지 압력과 2가지 온도 조합(2P:2T)이나 4가지 압력과 4가지 온도 조합(4P:4T)처럼 다양한 조합 방식을 사용할 수 있다.
결론
아날로그 출력의 혼합 신호 센서 컨디셔너에는 2단계 보정 과정을 사용할 수 있다. 이 방법을 사용하면 아날로그 시그널 체인의 오류를 줄여 센서의 전반적인 정확도를 높일 수 있다.
<Arun T Vemuri _ TI / 시스템 아키텍처>
<Javier Valle-Mayorga _ TI / 애플리케이션 엔지니어>