본문 바로가기
아두이노

4.1 아두이노 아날로그 포트의 이해

by Beijing_KingGod 2019. 12. 18.

아두이노의 아날로그 포트

[아두이노 아날로그 포트]

아두이노에는 6개의 아날로그 출력 포트와 6개의 아날로그 입력 포트가 있다. 디지털출력 포트에서 ~표시가 있는 부분이 PWM 기능을 하며 아날로그 출력이 가능한 포트이고 하단의 A0~A5까지가 아날로그 입력만을 할 수 있는 포트이다.

 

아날로그 데이터

디지털 데이터는 모든 값이 0(LOW)또는 1(HIGH)로만 나타내어진다. 이와 달리 아날로그 데이터는 LOW HIGH 사이를 잘게 쪼개 여러 단계로 나타내어 질 수 있으며 연속적이고 가변적인 물리량의 변화를 나타내는데 유리하다.

[아날로그 신호와 디지털 신호]

위의 그림과 같이 아날로그 데이터는 연속적인 물리량의 변화 값을 나타내는 신호 이며 소리, , 온도, 기압 등이 이에 해당한다.

 아두이노에서 아날로그 값을 출력하기 위해서는 이해하고 넘어가야 할 몇가지가 있다. 다음 페이지에서 간단하게 이론만 살펴보고 넘어가도록 하자.

 

PWM(Pulse width Modulation)

 아두이노의 디지털핀은 오로지 0(LOW) 또는 1(HIGH) 두 가지 신호 밖에 출력하지 못하며 전압으로는 0V 또는 5V 값만을 출력한다는 의미이다. 그렇기 때문에 아날로그 값을 디지털 값으로 표현하기 위해서는 다른 별도의 기능이 필요한데 이 기능을 하는 것이 PWM이다,

PWM은 펄스 폭 변조 기능을 하고 이것을 이용하여서 디지털 값을 마치 아날로그 값처럼 흉내 낼 수 있다.

[PWM을 이용한 펄스 폭 조절]

*듀티비(Duty Rate): 0V(Low), 5V(HIGH)의 출력 비율 듀티비가 클수록 5V에 가까워 진다.

위 그림에서처럼 듀티비가 50% 경우 주기의 1/2 만큼만 5V 값을 출력한 다는 것을 의미한다.그렇기 때문에 LED로 예를 들면 펄스가 HIGH인 동안 LED가 켜지고 LOW되면 바로 꺼지게 되는데 이것이 눈에 보이지 않을 만큼 빠른 속도로 이루어 지기 때문에 LED의 밝기가 다르게 보이는 것이다.

쉽게 말해서 10초동안 5V 50%의 듀티비로 출력하였을 때 5V 0V를 번갈아 가며 받는다기 보다는 평균적으로 2.5V를 출력한다고 생각하면 될 것이다.

 

컨버터(Converter)

아두이노에서의 아날로그 출력은 위에서 본 것처럼 아날로그 값 그 자체를 출력하는 것이 아니라 디지털출력을 사용하되 그 비율을 조절하며 출력하는 것이다. 따라서 아날로그 값을 출력을 하기 위해선 디지털 값으로 변화 시켜줘야 하는데 이 기능을 하는 것이 컨버터이다.

컨버터는 ADC(Analog - Digital Converter)DAC(Digital - Analog Converter), 이 두 가지가 있으며 아두이노에서 사용되는 컨버터는 아날로그 값을 디지털 값으로 바꾸어 주는 ADC이다.

[아날로그 데이터를 디지털 신호로 변경하는 과정]

위 그림처럼 아날로그 데이터가 ADC를 거치면 디지털 신호로 바꾸어 지는 것을 알 수 있다.

댓글