LabHub
배우기 러닝패스 코스

전자회로 입문 — 센서 입력 검증 · ADC와 고장 가설 · 이론

그럴듯한 코드와 검증된 입력은 다르다

LabHub 에서 이어서 보기

한 줄 요약

디지털 숫자가 출력됐다는 사실만으로 입력 전압이나 고장 원인이 검증되지는 않습니다.

왜 이게 필요했나

전압을 읽는 프로그램이 항상 최댓값을 반환합니다. 계산 범위를 잘라 표시하도록 코드를 썼다면 입력이 약간 넘쳐도 숫자는 멀쩡합니다. 그러나 소프트웨어의 포화 처리는 물리 핀을 보호하지 않습니다. 정상 입력 범위, 절대 최대 정격, 과전압 보호 조건은 구분해서 데이터시트를 읽어야 합니다. 이 코스는 실제 회로에 전압을 인가하지 않는 계산 실습입니다.

어떻게 동작하나

12비트 무부호 코드에는 0부터 4095까지 4096개 상태가 있습니다. 이번 가상 ADC는 floor(Vin/3.3*4096)을 0~4095로 제한합니다. 이것은 명시한 교육용 변환 규약이지 모든 ADC의 실제 전달함수가 아닙니다. 데이터시트에 따라 코드 경계, 오프셋, 포화 처리와 보정식은 달라집니다. 특히 4095로 나누는 양 끝점 보정식과 여기서 사용하는 코드 폭 3.3/4096 V를 혼용하지 마세요.

분해능을 높여도 앞단의 부하 오차는 사라지지 않습니다. 이상적인 양자화 오차, 기준전압 오차, 저항 공차, 충분히 기다리지 않은 오차를 서로 다른 항목으로 기록해야 원인을 좁힐 수 있습니다. 보드 값을 AI 모델에 넣더라도 입력이 잘못 측정된 문제는 모델 크기로 해결되지 않습니다.

현장에서 만나는 모습

고장 가설은 예측을 포함해야 합니다. 출력이 2.49 V라는 교육용 합성 관측이 있고 허용 관측 구간이 ±0.02 V라면, 정상·하단 단선·부하 단락 세 모델의 예측을 각각 계산해 비교합니다. 일치하는 후보가 하나여도 ‘세 후보 중 모순이 없다’는 뜻입니다. 센서 고장, 연결 오류, 저항 값 착오처럼 처음 목록에 없는 원인은 아직 배제하지 않았습니다.

다음 행동은 가설을 구별할 추가 확인이어야 합니다. 실제 장비에서 저항 확인은 전원을 제거하고 잔류 에너지를 처리한 뒤 회로의 병렬 경로 영향을 분리해야 합니다. 이 실습에서는 그 절차를 실행하지 않고 다음 확인 항목으로 기록합니다. 전원이 들어온 회로에 저항 측정 모드를 사용하도록 안내하지 않습니다.

단위가 있는 값과 코드 사이의 계약

시험용으로 4비트, 범위 0~4 V인 같은 방식의 ADC를 생각해 보세요. 코드 폭은 0.25 V입니다. 0.62 V는 floor(0.62/4×16)=2로 갑니다. 코드 2라는 숫자만 저장하면 나중에 어느 기준전압과 비트 수로 바꿨는지 잃게 됩니다. 데이터 파이프라인에서는 원시 코드, 변환 규약, 기준전압과 단위를 함께 보관해야 다시 해석할 수 있습니다.

가상 규약에서 입력이 정확히 4 V이면 계산 중간값은 16이지만 표시 상한은 15입니다. 반대로 음수는 0으로 잘립니다. 이 둘을 정상 범위 내부의 값과 구별하려면 코드와 별도로 입력 유효성 플래그가 필요합니다. 실제 ADC에 이런 플래그가 있는지는 제품마다 다르므로 이 교재의 JSON 필드를 하드웨어 레지스터라고 해석하지 마세요.

저항 부하 오차는 방향이 있는 체계적 오차일 수 있습니다. 이런 경우 같은 값을 백 번 평균내도 올바른 전압으로 돌아오지 않습니다. 반복 측정은 무작위 변동을 살피는 데 도움을 주지만 모델의 잘못된 분압비를 바꾸지는 않습니다. ‘평균을 늘린다’와 ‘잘못된 연결을 수정한다’는 해결하는 문제가 다릅니다. 기록할 때 표본 수를 크게 쓰는 것보다 어떤 오차를 줄이려 했는지를 먼저 적어야 합니다.

보고서에 들어가야 할 네 가지

첫째는 조건입니다. 전원, 저항, 부하, 초기 상태, 시간, ADC 규약을 명시합니다. 둘째는 증거입니다. 계산식과 출력 파일을 보관하고 실측이 아닌 값에는 합성 또는 모델 예측이라는 출처를 남깁니다. 셋째는 판단입니다. 어떤 허용 구간으로 후보를 포함하거나 제외했는지 설명합니다. 넷째는 아직 모르는 것입니다. 실제 부품의 온도 특성이나 계측기 오차를 이번 계산에 넣지 않았다면 빈칸을 성공으로 채우지 않습니다.

이번 관측의 ±0.02 V는 확률분포의 표준편차가 아니라 교육용으로 지정한 일치 구간입니다. 그래서 2.49 V를 중심으로 [2.47, 2.51] V 안인지 비교합니다. 이를 ‘95% 신뢰구간’이라고 부를 통계적 근거는 없습니다. 실제 측정 보고서라면 장비의 정확도 사양, 분해능, 교정 상태와 측정 방식에 근거해 불확도를 별도로 구성해야 합니다.

후보를 하나 제외할 때도 계산 조건을 확인합니다. 이상적 단락에서는 출력이 0 V로 예측되지만, 실제 배선 저항이나 보호 소자가 있으면 정확히 0이 아닐 수 있습니다. 이번 실습은 명목 저항과 이상적인 고장만 허용하므로 조건 안에서 판정합니다. 현실의 관측이 모든 후보와 어긋나면 가장 가까운 후보를 억지로 정답으로 택하지 말고 모델이나 측정을 다시 조사해야 합니다.

실습의 JSON 채점은 이러한 장부의 계산값을 확인합니다. 정답 파일을 복사했다는 사실만으로 회로 해석 능력 전체가 입증되는 것은 아닙니다. 스스로 입력 전원을 다른 값으로 바꿔 예측이 선형으로 변하는지, 부하를 크게 했을 때 무부하값에 가까워지는지 다시 계산해 설명해 보세요. 이 추가 연습은 자동 채점 점수와 별개이며, 포트폴리오에는 사용한 조건과 스스로 만든 반례를 함께 싣는 편이 좋습니다.

다음 실습에서 할 것

정상상태·시간 응답·코드·고장 후보를 일곱 JSON 파일로 제출합니다. 각 파일은 값의 재현성을 확인하는 계산 산출물입니다. 실물 보드 검증 역량을 입증하려면 추후 계측기 설정, 원시 파형, 측정 불확도, 반복 결과와 부품 데이터시트 검토가 추가로 필요합니다.