전자회로 입문 — 센서 입력 검증 · 필터 차수·부하·주파수 응답 · 이론
같은 2차 필터가 다른 결과를 만드는 이유
한 줄 요약
필터가 두 단이라고 같은 2차 응답이 되는 것은 아닙니다. 연결 부하와 극점 배치를 구별하고, 주파수 응답과 계단 응답을 함께 확인해야 설계를 선택할 수 있습니다.
왜 이게 필요했나
앞 단원에서 온실 팬의875Hz 방해를 줄이면서125Hz 신호를 보존할 단일 RC는 없다는 결론을 얻었습니다. 이제 설계 회의에서 세 제안이 나옵니다. 같은 RC를 하나 더 붙이자, 중간에 버퍼를 넣자, 아예 다른2차 필터를 쓰자입니다. 모두 커패시터 두 개를 쓰는데 결과도 같을까요?
조건을 바꾸어 성공 숫자를 만드는 대신 회로 구조가 전달함수를 어떻게 바꾸는지 확인하겠습니다. 원하는125Hz 이득은0.9 이상, 방해875Hz 이득은0.1 이하라는 기존 요구를 유지합니다. 여기에1V 계단 입력의 초과 전압≤0.05V, 관측된2% 정착 시간≤10ms라는 시간 요구를 추가합니다. 정상적인 급격한 변화에 너무 크게 반응하는 센서는 주파수 두 점만 보고 채택하기 어렵기 때문입니다.
이 실험은 이상 선형 필터입니다. 버퍼는 ngspice의 제어 전압원이며 실제 연산증폭기의 대역폭·전원·출력 제한·슬루율을 갖지 않습니다. 이번 단계에서 선택한 회로를 실물 회로의 부품값 추천이나 동작 보증으로 확대하지 않습니다.
어떻게 동작하나
AC 분석의 숫자는 시간 파형이 아니다
AC 분석은 주파수마다 입력과 출력의 복소 전압을 구합니다. 실수부와 허수부는 서로 다른 센서의 값이 아니라 한 전압의 크기와 위상을 표현하는 두 성분입니다. 전달함수 H=Vout/Vin을 먼저 계산한 뒤, 이득은 |H|, 전압 이득의 dB는20log10|H|, 위상은 atan2(Im H,Re H)를 도 단위로 변환한 값입니다.
[ngspice 제어 언어 튜토리얼](https://ngspice.sourceforge.io/ngspice-control-language-tutorial.html)은 AC 출력에서 복소 벡터가 실수부·허수부 열로 기록되는 형식을 보여 줍니다. 이번 파일은 주파수, 입력 실수부, 입력 허수부, 출력 실수부, 출력 허수부의5열입니다. 헤더에 v(in)과v(out)이 각각 두 번 나오는 것은 중복 오류가 아닙니다.
제공 입력은 AC 진폭0.5·1·2V와 위상23도입니다. 입력을 나누지 않으면 진폭을 바꿀 때 이득까지 변하고 입력의 위상도 필터 위상에 섞입니다. 1V 입력의 출력 크기만 우연히 맞는 구현을 피하려고 다른 진폭도 검사합니다. 10log10은 여기서 전압비에 적용할 식이 아닙니다. 또 atan(Im/Re)만 쓰면 실수부가 음수인 구간의 사분면을 잃습니다.
관측은10Hz~10kHz, decade당80구간의241점입니다. 125Hz와875Hz는 별도의 작은 선형 관측으로 정확히 포함합니다. 로그 스윕에서 가장 가까운 점을 요구 주파수라고 바꾸지 않습니다. 출력이 정확히0이면 이득은0이지만 로그와 위상은 의미 있는 유한 숫자가 아니므로 보고서에서 null로 남깁니다.
두 RC를 붙일 때 생기는 새로운 항
R=1kΩ, C=1/(2πRf₀), p=jf/f₀로 놓습니다. 하나의 RC는 H=1/(1+p)입니다. 이상 버퍼로 분리한 같은 RC 두 개는 H=1/(1+p)²이고, 분모를 펴면1+2p+p²입니다. 각 단이 다른 단의 부하를 보지 않기 때문에 두 전달함수를 곱할 수 있습니다.
버퍼 없이 바로 연결하면 두 번째 R과C가 첫 번째 출력의 부하가 됩니다. 중간 노드 전압을 따로 놓고 전류 합을 세우면 H=1/(1+3p+p²)를 얻습니다. 추가된p 항이 감쇠와 시간 응답을 바꿉니다. [Analog Devices의 RC 직렬 연결 실험](https://ez.analog.com/adiacademy/university-program/a/studentzone-articles/SA1008/adalm1000-smu-training-topic-14-cascaded-rc-filters)도 이 부하 효과 때문에 개별 응답의 단순 곱이 실제 연결과 다를 수 있음을 설명합니다.
f=f₀에서는 세 회로의 이득이 각각1/√2,1/2,1/3입니다. 뒤의 두 회로는 모두2차이고 이 주파수에서 위상도−90도이지만 진폭은 같지 않습니다. 차수만으로 통과대역의 모양이나 감쇠 속도를 모든 주파수에서 결정할 수는 없습니다. 높은 주파수에서 접근하는 기울기와 전이 대역의 실제 값은 구분해야 합니다.
Sallen–Key는 차수뿐 아니라 Q도 고른다
이번 unity-gain Sallen–Key는 입력에서 중간 노드로R1, 그 노드에서 버퍼 입력으로R2, 중간 노드에서 버퍼 출력으로C1, 버퍼 입력에서 접지로C2를 연결합니다. 버퍼는 입력을 읽어 출력에 그대로 내는 이상 모델입니다. R1=R2=R, C1=2QC, C2=C/(2Q)로 설정하면 H=1/(1+p/Q+p²)입니다.
Q=1/√2일 때2차 Butterworth 응답입니다. [Analog Devices의 위상 응답 설명](https://www.analog.com/en/resources/analog-dialogue/articles/phase-relations-in-active-filters.html)은 Q에 따라2차 응답의 모양과 위상 전이가 달라지는 점을 다룹니다. 또한 같은1차 필터 두 개를 연결한 응답을 Butterworth2차와 혼동하지 않도록 구분합니다. 이번 수업에서는 이를 같은f₀의 회로 파일로 비교합니다.
여기서 f₀는 모든 회로의−3dB 주파수를 뜻하지 않습니다. rc1과2차 Butterworth에서는 그 의미가 맞지만 다른Q나 부하 있는 RC에는 그대로 적용할 수 없습니다. 그래서 설정 필드도 cutoff_hz가 아니라 f0_hz입니다. 이름부터 구분하면 보고서에서 잘못된 물리적 의미를 붙이는 일을 줄일 수 있습니다.
f₀=220Hz에서 직접 계산하고 시뮬레이션으로 대조할 대표 값은 다음과 같습니다. 다음 실습은 표를 그대로 반환하는 함수가 아니라 실제 파일을 읽는 함수를 요구합니다.
| 회로 | 125Hz 이득 | 875Hz 이득 | 1V 계단 초과량 |
| --- | --- | --- | --- |
| RC 하나 | 약0.869 | 약0.244 | 약0V |
| RC 둘, 직접 연결 | 약0.545 | 약0.053 | 약0V |
| RC 둘, 이상 버퍼 | 약0.756 | 약0.059 | 약0V |
| Sallen–Key, Q=1/√2 | 약0.952 | 약0.063 | 약0.043V |
| Sallen–Key, Q=1.4 | 약1.267 | 약0.066 | 약0.301V |
높은Q는 원하는 주파수의 이득이1보다 커집니다. 이번 AC 요구가 최솟값만 정했으므로 두 주파수 조건만 보면 이를 통과시킬 수 있습니다. 하지만 계단 입력의5% 초과 제한에서는 탈락합니다. 이것은 시험을 속이는 예외가 아니라 요구 목록에서 무엇을 빠뜨렸는지 보여 주는 사례입니다. 평탄도나 이득 상한이 중요하다면 그것도 별도 요구로 선언해야 합니다.
처음 대역에 들어왔다고 정착한 것은 아니다
입력은1ms까지0V, 다음1µs 동안1V로 상승하고50ms까지 유지됩니다. 계단 상승이 끝난1.001ms부터10µs 간격으로4900개 표본을 선형 보간합니다. 이 격자에서1V를 넘은 최대량이 overshoot_v입니다. 0.98~1.02V 밖에 있는 마지막 표본을 찾고, 그다음 표본의 시각을 상승 완료 기준 상대 시간으로 기록합니다.
처음1V를 지나간 시각을 고르면 링잉이 뒤에서 다시 대역 밖으로 나가는 것을 놓칩니다. 마지막 표본까지 밖이면 settled_at_s는null이며, 모든 표본이 안이면0입니다. 2% 대역의 경계는 포함합니다. 관측은 절대 시간49.991ms까지만 이어지므로 이 보고는 그 유한 관측 구간과10µs 격자 안에서의 정착입니다. 그 뒤 영원히 안정하다는 증명이나 연속 시간 최대값의 인증이 아닙니다.
회로 계산의 최대 시간 간격은5µs와2.5µs로 각각 실행합니다. 같은10µs 관측 시각에서 두 결과의 최대 차이가10µV 이하인지 대조합니다. AC 전달함수는 모든241점과 요구 주파수 두 점에서 해석 모델과 복소수로 비교합니다. 진폭만 같고 위상이 틀린 회로는 이 검사에서 거절됩니다. 수렴과 모델 일치와 설계 요구가 모두 만족해야 최종 후보에 넣습니다.
현장에서 만나는 모습
아날로그 검증 직무의 자동화는 숫자를 예쁘게 그리는 작업만이 아닙니다. 어떤 입력을 넣었고, 실제 회로가 무엇이었으며, 사양의 어떤 항목에 대해 어떤 여유가 있었는지를 다시 찾을 수 있어야 합니다. AC 결과와 과도 응답을 함께 남기면 잡음 제거용 필터가 정상 신호의 급격한 변화에 어떻게 반응하는지도 설명할 수 있습니다.
[NXP의 아날로그 검증 직무 공고](https://nxp.wd3.myworkdayjobs.com/en-US/careers/job/Senior-Lead-analog-post-silicon-validation-engineer_R-10062167)에서 확인한 Python 자동화·기본 아날로그량·검증 계획·데이터 분석 요구를 이 과제의 파일 처리와 조건 판정에 연결했습니다. 실제 계측기 운용이나 온도·공정별 실물 검증까지 이 실습으로 대체하는 것은 아닙니다.
다음 실습에서 할 것
설정 검증 → 복소 AC 파일 읽기 → Bode 수치 → 전달함수 → 계단 관측 → 종합 요구 판정 → 파일 분석 → 비교 CLI의8단계를 작성합니다. 마지막에는 원 넷리스트·설정·로그·AC 파일·계단 파일을 그대로 보관한 채 선택 이유를 보고합니다. 실패 조건을 지워 최종 후보를 만드는 대신 후보에서 빠진 이유를 각 필드에 남기세요.