임베디드 설계 노트 (4/6) — AO(Analog Output) 설계: 물리적 한계를 소프트웨어로 보완
DAC 출력을 신뢰할 수 있는 제어 신호로 만들기까지의 설계 판단
핵심 요약
- MCU DAC 핀을 직접 출력단에 연결하면 안 된다 — Op-Amp 버퍼링이 필수
- 부품 오차는 소프트웨어 보정(y = ax + b)으로 잡고, 급격한 출력 변화는 소프트 램핑으로 제어한다
- 전원 기동 시 글리치와 온도 드리프트까지 고려해야 현장에서 신뢰할 수 있는 AO가 된다
배경
AO 설계에서 가장 흔한 실수는 MCU의 DAC 핀을 직접 출력단에 연결하는 것이다. MCU 출력은 임피던스가 높고 전류 구동 능력이 약해서, 작은 부하에도 전압이 흔들린다. 회로와 소프트웨어 양쪽에서 이를 보완해야 한다.
본문
하드웨어: 신호 증폭과 보호
전압 증폭: MCU의 0~3.3V 출력을 산업 현장 표준인 0~10V로 맞추기 위해 비반전 증폭 회로를 사용한다. Op-Amp(Operational Amplifier, 연산 증폭기)의 높은 입력 임피던스와 낮은 출력 임피던스를 활용해 부하 변동에 강한 출력을 만든다.
출력 보호: 외부 단자에서 유입되는 서지나 단락 대비로 직렬 저항 + TVS 다이오드 배치는 필수다.
노이즈 필터링: DAC의 계단식 출력이나 내부 스위칭 노이즈 제거를 위해 LPF(Low Pass Filter, 저역 통과 필터)를 구성한다. 차단 주파수는 제어 응답 속도와 노이즈 제거 효율 사이에서 타협점을 찾아야 한다.
소프트웨어: 보정과 안전 제어
스케일링 보정: 이론상 0~4095(12-bit)가 0~10V에 매핑되지만, 부품 오차로 오프셋과 게인 오차가 발생한다. y = ax + b 형태의 보정 수식을 적용하고, 보정 계수는 생산 시 EEPROM에 저장해 개별 기기마다 최적화한다.
소프트 램핑: 출력이 0V에서 10V로 급변하면 인버터, 밸브 등에 무리가 가거나 전원 노이즈가 발생한다. 목표값까지 한 번에 쓰지 않고, 일정 증분량씩 단계적으로 변화시키는 램핑 로직을 미들웨어 계층에 구현한다.
시행착오 / 주의사항
전원 기동 시 글리치: MCU 리셋이나 부팅 순간에 DAC 핀에서 원치 않는 전압 펄스가 튈 수 있다. 출력단에 Mute 회로(TR 또는 FET)를 구성해, SW가 완전히 초기화된 후 출력을 Enable하도록 설계해야 한다.
온도 드리프트: 현장 온도 변화에 따라 Op-Amp나 전압 기준원(Vref)의 값이 미세하게 변한다. 정밀 제어가 필요하면 외부 Vref IC를 사용하거나, 내부 온도 센서로 소프트웨어 보정 테이블을 적용한다.
마무리
AO 제어는 레지스터에 숫자를 쓰는 작업이 아니다. 회로의 물리적 특성(임피던스, 노이즈)을 이해하고, 소프트웨어의 논리적 구조(보정, 램핑)로 보완할 때 비로소 신뢰할 수 있는 제어기가 완성된다.
시리즈 전체 안내: 시리즈 목차
댓글
댓글 쓰기