반응형
SMALL

안녕하세요! Choi GPT 입니다.

이번 시간에 알아볼 내용은 RGB LED 모듈에 대해 설명하겠습니다.

출처 : https://arduinomodules.info/ky-016-rgb-full-color-led-module


KY-016 RGB LED 모듈은 빨강, 초록, 파랑 세 가지 색상의 LED를 포함하고 있으며, 

각 LED의 밝기를 독립적으로 제어할 수 있습니다.

이를 통해 다양한 색상을 생성할 수 있습니다.


핀 구성은 다음과 같습니다.

핀맵 정보 핀맵 설명
R (Red) 빨간색 LED의 핀
G (Green) 초록색 LED의 핀
B (Blue) 파란색 LED의 핀
GND 공통 접지 핀

다음은 아두이노와 RGB LED의 연결방법은 다음과 같습니다.


기본예제소스는 아래를 참고 바랍니다.(각각 색상별 제어 및 기타 색상-임의의 색상 제어)

int redPin = 9;    // 빨간색 LED 핀
int greenPin = 10; // 초록색 LED 핀
int bluePin = 11;  // 파란색 LED 핀

void setup() {
  pinMode(redPin, OUTPUT);
  pinMode(greenPin, OUTPUT);
  pinMode(bluePin, OUTPUT);
}

void loop() {
  // 빨간색
  analogWrite(redPin, 255);
  analogWrite(greenPin, 0);
  analogWrite(bluePin, 0);
  delay(1000);
  
  // 초록색
  analogWrite(redPin, 0);
  analogWrite(greenPin, 255);
  analogWrite(bluePin, 0);
  delay(1000);
  
  // 파란색
  analogWrite(redPin, 0);
  analogWrite(greenPin, 0);
  analogWrite(bluePin, 255);
  delay(1000);
  
  // 기타 색상 예제
  analogWrite(redPin, 255);
  analogWrite(greenPin, 255);
  analogWrite(bluePin, 0);
  delay(1000);
}


추가 색상에 대한 PWM 신호값은 윈도우 기본 프로그램인 "그림판" 실행 후
오른쪽 상단 "색 편집" 클릭

 


원하는 색상을 선택 후 해당 색상에 대한

빨강 / 녹색 / 파랑을 확인 후

소스를 해당 값으로 수정하면 지정된 색이 표현 됩니다.


감사합니다.

 

반응형
LIST
반응형
SMALL

안녕하세요! Choi GPT 입니다.

오늘 소개해드릴 자료는 아두이노 시리얼 통신을 테스트 하기위한 기본 프로그램 파일 입니다.

아래 파일을 다운로드 받으시면 됩니다.

COMTEST.exe
0.25MB


혹시 다운로드가 안되시면 아래 압축된 파일을 다운로드 받으신 후 압축 해제 및 사용하시면 됩니다.

COMTEST.zip
0.24MB


그리고 앱인벤터 블루투스 블럭코딩 시 장치목록(리스트)가 보이지 않는 경우
안드로이드 버전이 업데이트 되면서 보안이 강화되어 나타나는 문제입니다.

해결 방법은 하단의 블럭코딩을 추가해서 작성하면 해결 됩니다.

최종 교육자료 업데이트 합니다.

다운 받으셔서 활용하시면 됩니다.

압축파일 내용은 아두이노 소스(4색 LED 제어 프로그램) 앱인벤터 소스와 설치파일이 포함되어 있습니다.

LED_CONTROL.zip
3.01MB


이 파일은 오프라인 교육 중 앱인벤터 소스파일 입니다.
필요하신 분은 다운로드 후 앱인벤터 사이트에서 불러오기를 하시면 됩니다.
해당 파일은 압축해제 후 사용하시면 됩니다.

car.zip
0.00MB

감사합니다.

 

반응형
LIST
반응형
SMALL

녕하세요! Choi GPT 입니다.

오늘은 팅커캐드(Tinkercad)의 TMP36 온도센서를 활용하여 LED를 연동하는 프로그램을 소개하고자 합니다.

int sensor = A0;
int RLED = 9;
int YLED = 10;
int BLED = 11;

void setup()
{
  Serial.begin(9600);
  pinMode(RLED, OUTPUT);
  pinMode(YLED, OUTPUT);
  pinMode(BLED, OUTPUT);
}

void loop()
{
  int sensing = analogRead(sensor);
  float voltage = sensing*5.0/1024.0;
  float temperture = voltage *100-50;
  Serial.print("temperture: ");
  Serial.println(temperture);
  delay(100);
  if(temperture >=-40 && temperture <=20)
  {
    digitalWrite(RLED, 1);
    digitalWrite(YLED, 0);
    digitalWrite(BLED, 0);
  }
   else if(temperture >=21 && temperture <=100 )
  {
    digitalWrite(RLED, 0);
    digitalWrite(YLED, 1);
    digitalWrite(BLED, 0);
  }
   else if(temperture >=101 && temperture <=125 )
  {
    digitalWrite(RLED, 0);
    digitalWrite(YLED, 0);
    digitalWrite(BLED, 1);
  }
  else
  {
    digitalWrite(RLED, 0);
    digitalWrite(YLED, 0);
    digitalWrite(BLED, 0);
  }
}

TMP36_r2.txt
0.00MB

반응형
LIST
반응형
SMALL

안녕하세요! Choi GPT 입니다.

오늘 소개해드릴 내용은 팅커캐드에 있는 TMP36 이라는 온도센서를 소개하고자 합니다.

 

int sensor = A0;

void setup()
{
  Serial.begin(9600);
}

void loop()
{
  int sensing = analogRead(sensor);
  float voltage = sensing*5.0/1024.0;
  float temperture = voltage *100-50;
  Serial.print("temperture = ");
  Serial.println(temperture);

  delay(100);
}

TMP36_r1.txt
0.00MB

반응형
LIST

+ Recent posts