프로젝트
수납장 하부 조명은 방 분위기에 극적인 변화를 줄 수 있는 상대적으로 저렴한 방식이기 때문에 최근 이에 대한 관심이 높아졌습니다. 표준인 차가운 또는 따듯한 흰색이 누군가에겐 괜찮겠지만, 조금 색다른 것을 원한다면 어떻게 해야 할까요? Neopixel 제품을 사용해 보십시오! 표준 단색 조명보다는 설치가 조금 더 복잡하겠지만, 여러분의 기분에 맞춰 방의 색을 바꾸는 기능은 이런 추가적인 작업을 할 가치가 있게 만들 것입니다.
작업을 시작하기 위해서는 비추고 싶은 영역 폭에 맞는 충분히 긴 Neopixel 스트립(자르거나 이을 수 있으므로 전체 길이가 충분한지 확인하십시오), 제어 기판(아두이노 우노가 가장 쉽습니다), Neopixel 스트립에 전원을 공급하기 위한 전류 용량이 충분한 5VDC 전원 공급 장치(안전하게 LED당 60mA), 그리고 약간의 간단한 전자부품 조립 기술이 필요합니다.
Neopixel 스트립은 세 개의 선을 연결해야 합니다 - 5VDC, 접지 그리고 데이터. Adafruit에서는 Neopixel을 마이크로컨트롤러에 연결하는 방법을 설명하는 훌륭한 문서를 제공하고 있습니다 - 여기를 클릭해서 읽을 수 있으므로 해당 정보를 본 게시글에 적지는 않겠습니다. 목적에 맞게 전체 빛의 밝기 뿐만 아니라 빨강, 초록 그리고 파랑색의 밝기를 제어하기 위해 4개의 전위차계를 추가했습니다. 전위차계를 연결하는 것은 간단합니다. 5VDC에 한 핀을, 접지에 반대쪽 핀을, 그리고 중간 핀을 아두이노 아날로그 핀인 A0-A5에 연결하면 됩니다. 위에 언급한 가이드가 전원 공급 장치의 결선에 도움이 되겠지만, 중요한 부분은 아두이노와 LED 스트립의 전원은 별도로 공급해야 하지만 접지는 반드시 공통으로 연결되어야 한다는 것입니다. 아두이노와 LED용 전원 공급 장치를 하나만 사용할 수 있지만, 아두이노와 LED 스트립이 각자의 전용 5VDC 라인을 사용하고 접지는 함께 연결해야 합니다.
코드
전체를 동작 시키기 위한 코드는 상당히 기초적입니다. 이 간단한 스케치를 아두이노에 업로드해서 시작할 수 있습니다:
/현재 사용하고 있는 훌륭한 Neopixel 라이브러리를 제공해주는 Adafruit(www.adafruit.com)에 매우 감사합니다!/
#include <Adafruit_NeoPixel.h>
#ifdef __AVR__
#include <avr/power.h>
#endif
#define PIN 6 //what pin is your strip connected to?
#define NUMPIXELS 30 //how many pixels in your strip
int delayTime = 5; // delay for 5 milliseconds
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
void setup()
{
pixels.begin(); //initialize neopixel library
}
void loop()
{
int bright = map(analogRead(A5),0,1024,0,255); //value for brightness
int red = map(analogRead(A2),0,1024,0,255); //value for red
int green = map(analogRead(A3),0,1024,0,255); //value for green
int blue = map(analogRead(A4),0,1024,0,255); //value for blue
pixels.setBrightness(bright); //apply the brightness value to the led strip
// The following "for" loop sets the colors to each led, then turns them on.
for(int i=0;i<NUMPIXELS;i++){
pixels.setPixelColor(i, pixels.Color(red,green,blue));
pixels.show();
delay(delayTime);
}
}
확장
이 조명을 여러분의 경험과 원하는 바에 따라 확장할 수 있습니다. 음악에 맞춰 빛이 리듬을 타길 원하시나요? 마이크를 추가하십시오! 시간대에 따라 바뀌는건 어떤가요? 실시간 시계(RTC, Real Time Clock)는 저기 던져두고 컬러풀한 일출에 맞춰 일어나세요! 불꽃이나 불과 같은 이펙트를 만들어 캠핑 하는 느낌을 낼 수도 있습니다! 여러분 하기에 달려있습니다. 이 기본적인 하드웨어와 코드를 작성하는 약간의 시간으로, 여러분은 주방, 침실 또는 거실을 정말 멋지게 만들 수 있습니다.