MSP430AFE253은 시그마-델타(SD) 방식의 아날로그 디지털 컨버터(ADC) 3채널이 내장되어 있어 학생들에[겐 조금은 특이하게 느껴 질 수 있는 마이크로컨트로러(MCU)입니다. 하지만 개발을 하는 회사 입장에선 고가의 ADC 전용 칩을 저가의 MCU($1 이하)와 소프트웨어 기술로 대체가 가능하다는 점에서 관심을 가질 수 밖에 없는 제품입니다.
그러다 보니 해당 제품을 사용하는 회사들이 생각보다 많고 저 역시 이 제품으로 개발을 하게 되었습니다. 그런데 주먹구구식으로 한참 개발하다 보니 교정기에서 나오는 전압을 선형적으로 받아 들이지 못한다는 느낌을 받게 되었습니다. 여기서 선형적이다라는 말은 0mV 부터 750mV 까지 1mV식 증가 시킬 때 ADC의 결과가 일정하게 증가하느냐 말합니다. 그런데 제가 구성한 회로에선 일정하게 증가하지 않고 특정 구간에서 너무 많은 차이를 보이면서 증가를 하더군요. 그래서 다음과 같은 실험을 하게 되었습니다.
실험환경은 다음과 같습니다.
1. 교정기는 YOGOKAYA사의 CA100을 가지고 하였습니다.
2. MSP430AFE253의 CH0을 이용하여 측정을 하였습니다.
3. Vref는 TI 사의 TLVH431을 이용하여 1.5V를 구성하였습니다.
4. 저항은 가급적 정밀급인 D급을 사용하였습니다.(일부 F급 존재)
5. 직접 설계한 SMD PCB 상에서 측정하였습니다.
6. 위 회로의 R을 바꿔가며 측정을 하였습니다.
실험 결과는 다음의 구글 스프레드시트로 정리가 되어 있습니다.
https://docs.google.com/spreadsheet/ccc?key=0Ahy59sLNIHx3dFl6aU84WmdaSzQ0RTkySFJKb0dxanc
실험 결과을 한 결과 다음과 같이 정리를 할 수 있었습니다.
1. MSP430AFE253 추세 선형성
2. MSP430AFE253 차동 선형성
그리고 마지막으로 위의 시스템에서 R을 제거 하고 바로 전압을 인가 하였을 때의 결과 입니다.
제가 전기전자 회로 이론을 잘 아는 것이 아니라서 이론적으로는 말씀 들릴 수는 없습니다. 하지만, 하루정도를 허비해서 실험한 결과를 정리하면 다음과 같습니다.
1. R을 100Kohm으로 바꾸면 위의 차동 선형성 그래프처럼 골짜기 형상이 나타나는 것이라 아니라 Z형 그래프를 그리게 됩니다.
2. R을 10Kohm부터 560ohm 까지 해보면서 저항값이 작아 질수록 자동 선형성 그래프가 좋아 짐을 확인 할 수 있습니다.
이는옴의 법칙인 전압=전류*저항(V=I*R)을 바탕으로 단순하게 생각을 해본다면, V와 R을 실험에서의 고정시켜서 관찰한 결 결과이므로 MCU의 ADC의 입력 전류가 일정 이하로 떨어지게 되면 이것이 ADC 결과에 영향을 미치는 것이라고 결론을 내릴 수 밖에 없다고 생각합니다.
이부분에 대해선 제가 마이크로프로세서를 가지고 먹고 살고 있지만 지식이 미천하여 더 이상의 상세한 설명은 불가능 하므로 추후 해당 문제에 대해서 알게 되면 다시 정리 하도록 하겠습니다.
회로 수정하면서 OPAMP로 버퍼 회로를 구성하여 테스트 한 결과 기존의 있던 비 선형성은 줄어 들게 되었습니다. 다만 OPAMP가 계측용이 아니라서 오차가 발생하는 데다, Zero Shift가 발생되면서, 또 다른 문제를 야기하게 되었습니다. 아무튼 이 테스트로 알수 있게 된 것은 MSP430AFE253의 ADC에 버퍼가 없음으로 인해서 발생한 문제로 여겨 집니다. 만약 해당 MCU를 사용하신다면 외부에 버퍼 회로를 구성하여 사용하시는 것을 고려 하시거나 경쟁사인 ADI의 ADuM36x 시리즈(ADuM360, ADuM361)를 이용하는 것을 고려해 볼만 하다고 여겨집니다.