ADC(아날로그-디지털 변환기)란 무엇이며 어떻게 작동합니까?
주요 시사점
- ADC는 소리나 빛과 같은 아날로그 신호를 다양한 애플리케이션에서 사용할 수 있는 디지털 값으로 변환하는 데 널리 사용됩니다.
- ADC의 샘플링 속도는 초당 수행되는 판독 횟수를 결정하며, 샘플링 속도가 높을수록 보다 정확한 신호 표현이 가능합니다.
- ADC의 비트 전송률은 획득된 샘플의 품질에 영향을 미치며, 비트가 많을수록 더 부드럽고 정확한 측정이 가능합니다. 다양한 유형의 ADC는 속도, 정밀도, 전력 소비 측면에서 다양한 장단점을 제공합니다.
아날로그-디지털 변환기(ADC)는 실제 현상을 프로그래밍 프로젝트에서 사용할 수 있는 값으로 바꾸는 데 매우 유용합니다. 하지만 ADC가 아날로그 신호를 어디에서나 사용할 수 있는 디지털 신호로 변환하려면 어떻게 해야 할까요?
ADC는 무엇을 위해 사용됩니까?
ADC는 거의 모든 곳에서 찾을 수 있습니다. 그들은 당신의 전화에 있어 당신의 음성을 이진 값의 문자열로 변환합니다. 그들은 당신의 차 안에 있어서 바퀴의 회전을 측정합니다. 오실로스코프에 들어 있어 신호를 포착하고 표현하는 데 도움을 줍니다. 그러나 대부분의 사람들이 이를 사용하게 될 곳은 비디오와 오디오의 세계이며, 디지털 공간에 빛과 소리를 담는 것이 기본입니다.
샘플링 속도란 무엇입니까? 샘플링 속도는 ADC에 어떤 영향을 미칩니까?
ADC의 가장 중요한 헤드라인 지표 중 하나는 샘플링 속도, 즉 초당 읽은 판독 수입니다.
최고급 오실로스코프는 초당 100억 개의 샘플을 수집할 수 있습니다. 용감하고 작은 MCP3008 ADC는 상대적으로 적당한 20만 시간이 소요될 수 있습니다. 오디오 세계에서는 초당 44,100(44.1kHz)의 샘플링 속도가 일반적입니다.
더 많은 샘플을 수집할수록 신호를 더 정확하게 표현할 수 있습니다. 때로는 이것이 필수적입니다. 때로는 그렇지 않습니다. 수십 개의 전위차계를 사용하여 페이더 뱅크(조명이나 오디오 데스크에서 볼 수 있는 것처럼 전자 장치를 제어하도록 설계됨)를 구축한다고 가정해 보겠습니다. 이 경우 우리가 측정해야 하는 값은 손가락이 그렇게 빨리 움직일 수 없기 때문에 초당 수백만 번 변경될 가능성이 없습니다. 결과가 원활하고 반응이 좋도록 하려면 충분한 샘플이 필요합니다.
비트레이트란 무엇입니까? 비트 전송률이 ADC 품질에 영향을 줍니까?
우리가 얻고 있는 샘플의 품질에 대해서도 생각해야 합니다. 이는 주로 전압을 디지털 방식으로 표현하는 데 사용할 수 있는 켜기-끄기 상태 수를 알려주는 비트 전송률에 의해 결정됩니다. 비트가 많을수록 특정 샘플에 기록할 수 있는 값이 많아지고 최종 결과가 더 부드럽고 정확해집니다.
우리는 바이너리와 그 작동 방식에 대해 썼 으므로 확실하지 않은 경우 시작하기 좋은 곳입니다. 몇 비트가 필요합니까? 다시 말하지만, 이는 우리가 달성하려는 목표에 따라 다릅니다. 때로는 우리가 사용하는 프로토콜에 의해 제한될 수도 있습니다. 예를 들어, MIDI 1.0 프로토콜은 7비트(경우에 따라 14비트) 값으로 제한됩니다. 다른 경우에는 인간의 인식이 제한 요인이 될 수 있습니다. 충실도를 높여도 결과가 눈에 띄게 개선되지 않으면 가치가 없을 수도 있습니다.
멀티플렉싱은 ADC 품질을 어떻게 향상시킵니까?
ADS1115 및 MCP3008 과 같은 널리 사용되는 ADC 칩은 다양한 입력을 제공합니다. 하지만 내부적으로는 실제로 ADC가 하나만 포함되어 있습니다. 이는 이러한 장치에 내장된 멀티플렉서 때문에 가능합니다. 멀티플렉서는 전자 및 통신 분야의 모든 곳에 존재합니다. 이는 ADC의 트래픽 제어 역할을 하는 디지털 스위치입니다. ADC는 한 채널을 샘플링한 후 다음 채널, 다음 채널을 샘플링할 수 있습니다. 따라서 8개의 채널이 있고 샘플링 속도가 200,000인 경우 모든 채널을 회전하여 채널당 25,000개의 샘플을 가져올 수 있습니다.
ADC에는 어떤 유형이 있나요?
ADC는 필요한 비용과 기능에 따라 다양한 방식으로 작동합니다.
플래시 ADC는 매우 복잡한 전압 분배기를 통해 작동합니다. 저항기 뱅크는 기준 전압을 증분 단위로 나눈 다음 비교기 뱅크를 통해 입력에 대해 테스트합니다. 플래시 ADC는 매우 빠르지만 필요한 비교기 수로 인해 비트 심도가 제한됩니다. 그들은 또한 같은 이유로 권력에 굶주려 있습니다.
하위 범위 ADC는 작업을 두 개의 개별 장치로 분할하여 이러한 약점을 상쇄하려고 합니다. 하나는 전압을 대략적으로 계산하고 다른 하나는 전압을 정확하게 계산합니다. 항목을 분할하면 비교기 수를 줄일 수 있습니다. 일부 범위 조정 ADC는 작업을 세 단계로 나누고 그 과정에서 오류 수정 기능이 내장됩니다.
SAR( Successive Approximation Register ) ADC는 일종의 이진 검색을 통해 작업을 수행합니다 . 채울 비트가 8개 있다고 가정합니다. SAR은 중간 값인 10000000부터 시작합니다(00000000이 맨 아래이고 11111111이 맨 위임). 전압이 이 중간점을 초과하면 SAR은 가장 왼쪽 숫자를 1로 유지합니다. 그렇지 않은 경우 SAR은 가장 왼쪽 숫자를 0으로 설정합니다. 다음 숫자 등을 사용하여 프로세스를 반복적으로 반복할 수 있습니다. 이렇게 하면 추측된 값이 점차 실제 값으로 이동하게 됩니다.
이런 식으로 우리는 지속적으로 검색 범위를 좁혀 가능성을 절반으로 나누고 결과가 중간 지점보다 높은지 낮은지 묻습니다. 이 경우 값은 0에서 255 사이입니다. 몇 번의 반복 후에 ADC는 약 77이라는 것을 알아냈습니다.
시그마-델타 변환기는 아마도 가장 이해하기 어려울 것입니다. 고정밀 음악 및 신호 측정 애플리케이션에 사용됩니다. 그들은 신호를 오버샘플링하고 엄청나게 복잡한 필터링과 수학을 사용하여 결과를 정제하는 방식으로 작업합니다. 이 프로세스는 정밀도를 높이는 동시에 샘플링 속도를 효과적으로 줄입니다. 이 ADC는 속도보다 잡음과 정밀도가 더 중요한 경우에 적합합니다.
마지막으로 시그마-델타보다 훨씬 느린 ADC 통합이 있습니다 . 그들은 입력 전압을 결정하는 데 충전 속도를 사용할 수 있는 커패시터의 도움으로 작동합니다. 여기서 샘플링 속도는 종종 전원 공급 장치 주파수와 동기화되는데, 이는 잡음을 절대 최소로 유지하는 데 사용할 수 있습니다.
나이퀴스트-섀넌 이론이란 무엇입니까?
아날로그 신호를 디지털 방식으로 설명한다고 가정해 보겠습니다. 이를 위해서는 주어진 주기마다 최소한 두 개의 점이 필요합니다. 하나는 상단에, 다른 하나는 하단에 있습니다. 따라서 샘플링 주파수는 측정할 것으로 예상되는 가장 높은 주파수의 두 배 이상이어야 합니다.
이는 스웨덴계 미국인 물리학자 Harry Nyquist의 이름을 따서 Nyquist 주파수로 알려져 있습니다. 이 이론은 Nyquist와 Claude Shannon(뛰어난 수학자이자 암호학자)의 이름을 따서 명명되었지만 두 사람보다 먼저 아이디어를 생각해낸 Edmund Whittaker의 이름을 따서 명명된 것은 아닙니다.
우리가 그 이론을 누구에게 믿든 거기에는 문제가 있습니다. 파형의 상단과 하단이 언제 도착할지 미리 아는 것은 불가능합니다. 들어오는 파형의 중간에서 샘플을 취하면 어떻게 될까요? 수신 신호의 변화로 인해 캡처된 결과가 어떻게 완전히 평탄화되는지 관찰하십시오.
또는 이전에는 존재하지도 않았던 새로운 파형을 환각적으로 볼 수도 있습니다.
이러한 환각을 별칭 이라고 합니다 .
앨리어싱 문제
회전하는 물체를 촬영할 때 가끔 나타나는 ‘수레바퀴’ 환상에 대해 여러분은 아마도 익숙할 것입니다. 자동차의 바퀴나 헬리콥터의 블레이드는 아주 천천히 뒤로 돌아가는 것처럼 보입니다. 어떤 경우에는 블레이드가 완전히 멈출 수도 있습니다(솔직히 이상한 결과가 나타납니다. 아래 비디오를 확인하십시오!).
오래된 비디오 게임을 플레이하는 동안 평행선이 때때로 이상한 뒤틀림 현상을 생성하는 것을 발견했을 수도 있습니다. 울타리, 계단, 줄무늬 점퍼가 정말 특이해 보이기 시작합니다. 아니면 품질이 좋지 않은 디지털 연결을 통해 누군가가 말하는 것을 들을 때 가끔 들리는 이상한 휘파람 소리는 어떻습니까? 그것은 왜곡이지만 특정한 종류의 왜곡입니다. 소음에서 나타나는 추악한 주파수는 모두 무엇입니까? 드럼킷과 같이 화음이 풍부한 콘텐츠를 듣는 경우 효과는 더욱 분명해집니다. 특히 고음역에서 더욱 그렇습니다.
이들 중 하나의 원인을 이해한다면, 모든 것을 이해하게 되는 것입니다. 수레바퀴의 경우 고정된 프레임 속도로 인해 모션을 제대로 캡처할 수 없습니다. 프레임마다 무언가가 350° 회전하면 실제로는 10° 뒤로 이동한 것으로 인식하는 것이 당연합니다. 즉, 현재 일어나고 있는 일을 충실하게 표현하기에는 정보가 충분하지 않습니다. 우리가 채취한 샘플은 우리가 측정하려는 샘플과 잘못 정렬되어 있습니다.
이는 아날로그-디지털 변환에만 나타나는 문제는 아닙니다. 이러한 경우 대부분의 경우 한 종류의 디지털 신호를 다른 종류의 디지털 신호로 변환합니다.
그렇다면 해결책은 무엇입니까? 여러 가지가 있습니다. 이러한 아티팩트를 처리하기 위해 특수 필터를 적용할 수 있는데, 이는 많은 ADC가 내부적으로 수행하는 작업입니다. 또는 필요한 것보다 훨씬 더 많은 샘플을 채취할 수도 있습니다. 더 많은 샘플을 채취할수록 파동에 대한 그림이 더 정확해집니다.
최상의 결과를 위한 더 높은 품질의 샘플
이런 종류의 일이 흥미롭다면 좋은 소식은 우리가 이 주제에 거의 발을 담그지 않았다는 것입니다. 여기서 깊이 파고들어야 할 부분이 있습니다. ADC는 매우 복잡합니다.
그러나 최종 사용자나 일반 Arduino 애호가의 관점에서 보면 매우 간단합니다. 전압이 들어가고 숫자가 나옵니다. 따라서 토양의 수분 함량, 인간 음성 상자의 진동, 렌즈를 통해 굴절되는 광자 흐름 등 측정하려는 모든 것이 무엇이든 상관없이 ADC가 이를 수행할 가능성이 높습니다. 직업.
답글 남기기