CODEDRAGON ㆍDevelopment/IoT
PWM(Pulse Width Modulation, 펄스 폭 변조)
아두이노에서는 아날로그 값을 받을 수 있는 핀은 있지만, 아날로그 출력할 수 있는 핀은 없습니다. 그래서 디지털 핀을 이용해서 아날로그 출력 핀처럼 쓸 수 있는 방법을 PWM이 제공합니다.
전력을 주고 안주고를 빠르게 반복하여 디지털 출력을 아날로그 출력처럼 보이게 합니다.
디지털 핀에는 LOW와 HIGH만 출력할 수 있는 핀과 LOW와 HIGH상태의 시간을 조절해 아날로그 신호를 구현할 수 있는 PWM기능을 지원하는 핀이 있습니다.
5V출력을 on/off 상태로 유지하는 것으로 출력하는 게 아니라 빠르게 on/off 를 반복함으로써 전압을 조절하게 됩니다.
on/off 간격(Pulse Width)에 따라 평균전압이 낮아지는 효과가 납니다.
평균전압이 낮아져서 LED를 어둡게 만들 수 있습니다.
아두이노에서는 500Hz 주파수, 2ms (0.002초)간격으로 이런 작업을 수행합니다. 그리고 아두이노는 이 단계를 256 단계로 구분할 수 있습니다. 0V(0) ~ 5V (255)를 256 단계로 구분해서 입력할 수 있다는 뜻입니다. 이를 통해 on/off 출력이 아니라 단계적인 출력이 가능해지므로 아날로그 출력이라고도 합니다.
on/off 간격(Pulse Width)에 따라 평균전압이 낮아지는 효과가 납니다.
평균전압이 낮아져서 LED를 어둡게 만들 수 있습니다.
LED의 경우 전기를 주고 안주는 주기를 적게 하면 어두운 밝기를, 주기를 빠르게 하면 매우 밝은 밝기로 설정할 수 있습니다. 이를 통해 LED의 밝기는 물론 모터 속도를 조절할 수 있게 됩니다.
총 256단계(0~25) 표현이 가능하며 이를 통해 소리, 빛의 밝기, 모터 속도등을 제어할 수 있습니다.
'Development > IoT' 카테고리의 다른 글
Embeded 컴퓨터 작동 원리 (0) | 2018.05.21 |
---|---|
아두이노에 전원 공급 방법 (0) | 2018.05.21 |
아두이노 동작 과정 (0) | 2018.05.21 |
네스트 랩스(Nest Labs) (0) | 2018.05.21 |
사물인터넷과 빅데이터 - 거대한 정보 생산, 빅데이터의 성장, 거대 기업들의 기술 개발 (0) | 2018.05.21 |