이 LED DIMMER 는 일정한 전압에서 가변 전압을 얻기 위해 개발 된 Arduino Uno 기반 PWM (Pulse Width Modulation) 회로입니다. PWM 방식은 아래와 같습니다. 1W LED 조광기 회로 구축을 시작하기 전에 먼저 아래 그림과 같은 간단한 회로를 고려하십시오.
이제 그림의 스위치가 일정 시간 동안 지속적으로 닫히면 해당 시간 동안 전구가 계속 켜집니다. 스위치가 8ms 동안 닫히고 10ms주기 동안 2ms 동안 열리면 전구는 8ms 시간에만 켜집니다. 이제 10ms에 걸친 평균 단자 = Turn ON 시간 / (Turn ON 시간 + Turn OFF 시간), 이것을 듀티 사이클 이라고 하며 80 % (8 / (8 + 2))이므로 평균 출력 전압은 배터리 전압의 80 %입니다.
두 번째 경우 스위치는 5ms 동안 닫히고 10ms 동안 5ms 동안 열리므로 출력의 평균 단자 전압은 배터리 전압의 50 %가됩니다. 배터리 전압이 5V이고 듀티 사이클이 50 %이므로 평균 단자 전압은 2.5V가됩니다.
세 번째 경우 듀티 사이클은 20 %이고 평균 단자 전압은 배터리 전압의 20 %입니다.
이제이 기술이이 LED 조광기에 어떻게 사용 됩니까? 이 자습서의 후속 섹션에서 설명합니다.
그림에서 볼 수 있듯이 Arduino UNO에는 6PWM 채널이 있으므로이 6 개 핀 중 하나에서 PWM (가변 전압)을 얻을 수 있습니다. 이 장에서는 PIN3을 PWM 출력으로 사용할 것입니다.
필수 구성 요소
하드웨어: ARDUINO UNO, 전원 공급 장치 (5v), 100uF 커패시터, LED, 버튼 (2 개), 10KΩ 저항 (2 개).
소프트웨어: arduino IDE
회로도 및 설명
회로는 회로도에 따라 브레드 보드에 연결됩니다. 그러나 LED 단자를 연결할 때주의해야합니다. 이 경우 버튼이 튀는 효과를 나타내지 만 큰 오류가 발생하지 않으므로 이번에는 걱정할 필요가 없습니다.
UNO의 PWM은 매우 쉽습니다. PWM 신호용 ATMEGA 컨트롤러를 설정하는 것은 쉽지 않지만 정확한 신호를 위해 많은 레지스터와 설정을 정의해야하지만 ARDUINO에서는 이러한 모든 사항을 다룰 필요가 없습니다.
기본적으로 모든 헤더 파일과 레지스터는 ARDUINO IDE에 의해 미리 정의되어 있으므로 단순히 호출하기 만하면 적절한 핀에 PWM 출력이 제공됩니다.
이제 적절한 핀에서 PWM 출력을 얻으려면 두 가지 작업을해야합니다.
|
먼저 6 개의 핀에서 PWM 출력 핀을 선택해야합니다. 그런 다음 해당 핀을 출력으로 설정해야합니다.
다음으로 "analogWrite (pin, value)"함수를 호출하여 UNO의 PWM 기능을 활성화해야합니다. 여기서 'pin'은 PWM 출력이 필요한 핀 번호를 나타내며 '3'으로 표시합니다. 그래서 PIN3에서 우리는 PWM 출력을 얻고 있습니다. 값은 0 (항상 꺼짐)과 255 (항상 켜짐) 사이의 켜기 듀티 사이클입니다. 버튼을 눌러이 숫자를 늘리거나 줄일 것입니다.
Arduino Uno에서 PWM 핀을 사용하는 방법은 아래의 C 코드에 설명되어 있습니다.