아두이노 우노 R4 - RGB LED

이 튜토리얼은 Arduino를 사용하여 RGB LED를 제어하는 방법을 안내합니다. 자세히 배우게 될 내용은 다음과 같습니다:

아두이노 UNO R4 RGB LED

Hardware Preparation

1×Arduino UNO R4 WiFi Amazon
1×Arduino UNO R4 Minima (Alternatively) Amazon
1×USB Cable Type-C 쿠팡 | Amazon
1×RGB LED Module 쿠팡 | Amazon
1×(Alternative) RGB LED Amazon
1×Breadboard 쿠팡 | Amazon
1×Jumper Wires Amazon
1×(Recommended) Screw Terminal Block Shield for Arduino UNO R4 쿠팡 | Amazon
1×(Recommended) Breadboard Shield For Arduino UNO R4 쿠팡 | Amazon
1×(Recommended) Enclosure For Arduino UNO R4 Amazon
1×(Recommended) Power Splitter For Arduino UNO R4 Amazon
공개: 이 섹션에서 제공된 링크 중 일부는 제휴 링크입니다. 이 링크를 통해 구매한 경우 추가 비용없이 수수료를 받을 수 있습니다. 지원해 주셔서 감사합니다.

RGB LED에 대하여

RGB LED는 적색, 녹색 및 청색이라는 세 가지 기본 색상을 혼합하여 모든 색상을 만들 수 있습니다. 그것은 하나의 적색, 하나의 녹색 및 하나의 청색의 세 개의 개별 LED를 포함합니다. 모든 LED는 하나의 장치 안에 함께 있습니다.

핀아웃

RGB LED는 네 개의 핀이 있습니다.

  • 공통 (캐소드-) 핀을 GND (0V)에 연결하십시오.
  • R (빨간색) 핀은 빨간색을 제어합니다.
  • G (녹색) 핀은 녹색을 제어합니다.
  • B (파란색) 핀은 파란색을 제어합니다.
RGB LED 핀 배치

RGB LED를 Arduino UNO R4에 연결하려면, 전류를 제한하는 저항을 사용해야 하며 이는 설정을 다소 복잡하게 만듭니다. 그러나 이미 이러한 저항이 내장되어 있는 RGB LED 모듈을 사용할 수 있습니다.

RGB LED 모듈에도 핀이 네 개 있습니다.

  • 공통 (음극-) 핀은 GND(0V)에 연결해야 합니다.
  • R (빨간색) 핀은 빨간색을 제어합니다.
  • G (녹색) 핀은 녹색을 제어합니다.
  • B (파란색) 핀은 파란색을 제어합니다.
RGB LED 모듈 핀아웃

※ NOTE THAT:

이 튜토리얼에서는 공통 음극이 있는 RGB LED를 사용합니다. 이는 공통 핀이 음극임을 의미합니다. 공통 핀이 양극인 다른 RGB LED도 있을 수 있습니다.

작동 방식

물리학에서 색상은 세 가지 값으로 구성됩니다: 빨강 (R), 초록 (G), 파랑 (B). 각 값은 0에서 255 사이가 될 수 있습니다.

세 가지 다른 값을 결합하여 총 256 x 256 x 256 가지 색상이 만들어집니다.

PWM 신호(듀티 사이클이 0에서 255 사이)를 R, G, B 핀에 보내면, RGB LED가 원하는 색상을 표시할 수 있습니다. R, G, B 핀에 대한 PWM 신호의 듀티 사이클은 빨간색(R), 녹색(G), 파란색(B)의 색상 값에 일치합니다.

Wiring Diagram

  • Arduino UNO R4와 RGB LED 간의 배선도.
Arduino UNO R4 RGB LED 배선도

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.

RGB LED의 공통 핀에 하나의 저항을 사용하지 마십시오. 대신 위의 다이어그램과 같이 다른 핀에 세 개의 개별 저항을 사용하십시오. RGB 패키지의 서로 다른 LED는 정확히 같은 특성을 공유하지 않으므로 전류를 균등하게 분배하지 않습니다. 이는 불균일한 밝기를 유발할 수 있으며, 공통 핀에 단일 저항을 사용할 경우 LED가 손상될 수 있습니다.

  • Arduino UNO R4와 RGB LED 모듈 간의 배선도
아두이노 UNO R4 RGB LED 모듈 배선도

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.

RGB LED 제어 방법

RGB LED를 원하는 색상으로 변경하는 방법을 단계별로 배워봅시다. 예를 들어, 색상 #00979D.

  • 사용하고 싶은 색상을 선택하고 해당 색상의 코드 값을 찾으세요.
    • color picker에서 색상 코드를 선택할 수 있습니다.
    • 사진에서 색상이 필요하면 이 Colors From Image 도구를 사용하세요.
  • 도구를 사용하여 색상 코드를 RGB 값으로 변환하세요. 이 값을 기억하세요: R = 0, G = 151, B = 157.
RGB LED 색상 선택기
  • 아두이노 UNO R4 핀이 R, G, B 핀에 연결되는 것을 정의합니다. 예를 들어:
#define PIN_RED 9 // Arduino UNO R4 핀은 LED의 빨간 핀에 연결 #define PIN_GREEN 6 // Arduino UNO R4 핀은 LED의 초록 핀에 연결 #define PIN_BLUE 3 // Arduino UNO R4 핀은 LED의 파란 핀에 연결
  • 이 Arduino UNO R4 핀들을 출력으로 설정하세요.
pinMode(PIN_RED, OUTPUT); pinMode(PIN_GREEN, OUTPUT); pinMode(PIN_BLUE, OUTPUT);
  • 아두이노 핀을 프로그래밍하여 PWM 신호를 생성해 색상(#00979D; R = 0, G = 151, B = 157)을 표시합니다.
analogWrite(PIN_RED, 0); analogWrite(PIN_GREEN, 151); analogWrite(PIN_BLUE, 157);

아두이노 UNO R4 - RGB LED 예제 코드

아래 코드는 이 순서대로 LED 색상을 변경합니다:

  • #00C9CC (R = 0, G = 201, B = 204)
  • #F7788A (R = 247, G = 120, B = 138)
  • #34A853 (R = 52, G = 168, B = 83)
/* * 이 Arduino UNO R4 코드는 newbiely.kr 에서 개발되었습니다 * 이 Arduino UNO R4 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino-uno-r4/arduino-uno-r4-rgb-led */ #define PIN_RED 9 // Arduino UNO R4 pin connected to the LED's red pin #define PIN_GREEN 6 // Arduino UNO R4 pin connected to the LED's green pin #define PIN_BLUE 3 // Arduino UNO R4 pin connected to the LED's blue pin void setup() { pinMode(PIN_RED, OUTPUT); // 빨간색 LED 핀을 출력으로 설정 pinMode(PIN_GREEN, OUTPUT); // 초록색 LED 핀을 출력으로 설정 pinMode(PIN_BLUE, OUTPUT); // 파란색 LED 핀을 출력으로 설정 } void loop() { // RGB LED를 청록색으로 설정 #00C9CC (R = 0, G = 201, B = 204) analogWrite(PIN_RED, 0); analogWrite(PIN_GREEN, 201); analogWrite(PIN_BLUE, 204); delay(1000); // 색상을 1초 동안 유지 // RGB LED를 연어 핑크색으로 설정 #F7788A (R = 247, G = 120, B = 138) analogWrite(PIN_RED, 247); analogWrite(PIN_GREEN, 120); analogWrite(PIN_BLUE, 138); delay(1000); // 색상을 1초 동안 유지 // RGB LED를 구글 초록색으로 설정 #34A853 (R = 52, G = 168, B = 83) analogWrite(PIN_RED, 52); analogWrite(PIN_GREEN, 168); analogWrite(PIN_BLUE, 83); delay(1000); // 색상을 1초 동안 유지 }

많은 색상을 사용할 때, 함수를 만들어 코드를 줄일 수 있습니다:

/* * 이 Arduino UNO R4 코드는 newbiely.kr 에서 개발되었습니다 * 이 Arduino UNO R4 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino-uno-r4/arduino-uno-r4-rgb-led */ #define PIN_RED 9 // Arduino UNO R4 pin connected to the LED's red pin #define PIN_GREEN 6 // Arduino UNO R4 pin connected to the LED's green pin #define PIN_BLUE 3 // Arduino UNO R4 pin connected to the LED's blue pin void setup() { pinMode(PIN_RED, OUTPUT); // RED LED 핀을 출력으로 설정 pinMode(PIN_GREEN, OUTPUT); // GREEN LED 핀을 출력으로 설정 pinMode(PIN_BLUE, OUTPUT); // BLUE LED 핀을 출력으로 설정 } void loop() { // RGB 색상을 청록색으로 설정 setColor(0, 201, 204); delay(1000); // 1초 동안 대기 // RGB 색상을 연한 빨간색으로 설정 setColor(247, 120, 138); delay(1000); // 1초 동안 대기 // RGB 색상을 녹색으로 설정 setColor(52, 168, 83); delay(1000); // 1초 동안 대기 } void setColor(int R, int G, int B) { analogWrite(PIN_RED, R); // RED 값을 RED LED에 쓰기 analogWrite(PIN_GREEN, G); // GREEN 값을 GREEN LED에 쓰기 analogWrite(PIN_BLUE, B); // BLUE 값을 BLUE LED에 쓰기 }

추가 지식

  • 공통 애노드로 RGB LED를 설정하려면:
    • 공통 핀을 Arduino UNO R4의 3.3V 핀에 연결합니다.
    • analogWrite() 함수에서 R, G, B 값을 각각 255 - R, 255 - G, 255 - B로 조정합니다.
  • RGB LED들이 함께 연결된 시리즈는 RGB LED 스트립을 형성합니다. LED 스트립에는 주소 지정 가능과 비주소 지정 가능의 두 가지 유형이 있습니다. 우리는 각 유형에 대한 튜토리얼을 제공할 것입니다.

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!