Оглавление:
Видео: Интерактивное освещение двора, освещение пешеходной дорожки: 3 шага
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Я хотел построить какие-то интерактивные садовые фонари для своего заднего двора. Идея заключалась в том, что когда кто-то идет в одну сторону, это вызывает анимацию в том направлении, в котором вы идете. Я начал с солнечных фонарей Dollar General за $ 1,00.
Шаг 1: потрошите Solor Lights
Первым шагом было потушить свет, чтобы освободить место для более забавных вещей. Я начал с вырезания оригинального светодиода и аккумулятора. Обязательно сохраните эти детали, так как они будут полезны в другом проекте. Я также удалил хромированный купол, который был внизу солнечного светильника, и приклеил его к верху, как показано на фотографиях.
Шаг 2: Установка Better Lights
для светодиода я использовал водонепроницаемый ws2811b, который можно найти здесь
www.ebay.com/itm/50-X-12mm-LED-Module-RGB-…
Изначально я планировал разместить датчики PIR внутри солнечных фонарей. но это оказалось несколько проблематичным, потому что датчик практически не мог видеть сквозь пластик. у него должна быть какая-то фильтрация УФ-излучения. так что я выбрал что-то подобное
www.thingiverse.com/thing:2590216
Шаг 3. Кодирование
Если вы хотите, чтобы свет не использовал датчик или просто работал все время, просто найдите место, которое отмечено как «изменение состояния флага», и установите его в эфир 1 или 0, я добавлю больше фотографий, когда я закончу это для себя, поэтому работа над ним все еще продолжается, но я думаю, что это слишком аккуратно, чтобы не поделиться им сразу. спасибо, что посмотрели
void setup () {
// поместите сюда свой установочный код для однократного запуска: FastLED.addLeds (leds, NUM_LEDS); Serial.begin (9600); pinMode (buttonPin1, ВХОД); pinMode (buttonPin2, ВХОД); }
void loop () {
Serial.println (FlagState);
если (FlagState == 0) {ForwardLeds (); } если (FlagState == 1) {RevLeds (); } если (FlagState == 2) {Ожидание (); }}
void ForwardLeds () {
FirstLed = -1; LastLed = 16; для (int я = 0; я <8; я ++) {LastLed--; FirstLed ++; светодиоды [LastLed] = CRGB:: Белый; светодиоды [FirstLed] = CRGB:: Белый; задержка (750); FastLED.show (); Serial.print («белый пропуск»); Serial.print (i); Serial.println («из 8»); } FirstLed = -1; LastLed = 16; для (int я = 0; я <8; я ++) {LastLed--; FirstLed ++; светодиоды [LastLed] = CRGB:: Синий; светодиоды [FirstLed] = CRGB:: Синий; задержка (250); FastLED.show (); Serial.print («Синий пропуск»); Serial.print (i); Serial.println («из 8»); } FirstLed = -1; LastLed = 16; для (int я = 0; я <8; я ++) {LastLed--; FirstLed ++; светодиоды [LastLed] = CRGB:: Purple; светодиоды [FirstLed] = CRGB:: Purple; задержка (250); FastLED.show (); Serial.print («Красный пропуск»); Serial.print (i); Serial.println («из 8»); } FirstLed = -1; LastLed = 16; для (int я = 0; я <8; я ++) {LastLed--; FirstLed ++; светодиоды [LastLed] = CRGB:: Черный; светодиоды [FirstLed] = CRGB:: Черный; задержка (250); FastLED.show (); Serial.print («Выключение светодиода»); Serial.print (i); Serial.println («из 8»); } FlagState = 2; // изменение состояния флага} void RevLeds () {Serial.println ("в обратном направлении"); FirstLed = 8; LastLed = 7; для (int я = 0; я <8; я ++) {LastLed ++; FirstLed--; светодиоды [LastLed] = CRGB:: Белый; светодиоды [FirstLed] = CRGB:: Белый; задержка (750); FastLED.show (); Serial.print («Белый пропуск»); Serial.print (i); Serial.println («из 8»); } FirstLed = 8; LastLed = 7; для (int я = 0; я <8; я ++) {LastLed ++; FirstLed--; светодиоды [LastLed] = CRGB:: Синий; светодиоды [FirstLed] = CRGB:: Синий; задержка (250); FastLED.show (); Serial.print («Синий пропуск»); Serial.print (i); Serial.println («из 8»); } FirstLed = 8; LastLed = 7; для (int я = 0; я <8; я ++) {LastLed ++; FirstLed--; светодиоды [LastLed] = CRGB:: Purple; светодиоды [FirstLed] = CRGB:: Purple; задержка (250); FastLED.show (); Serial.print («Красный пропуск»); Serial.print (i); Serial.println («из 8»); }
FirstLed = 8;
LastLed = 7; для (int я = 0; я <8; я ++) {LastLed ++; FirstLed--; светодиоды [LastLed] = CRGB:: Черный; светодиоды [FirstLed] = CRGB:: Черный; задержка (250); FastLED.show (); Serial.print («Выключение светодиода»); Serial.print (i); Serial.println («из 8»); } FlagState = 2; // изменение состояния флага} void Waiting () {buttonState1 = digitalRead (buttonPin1); buttonState2 = digitalRead (buttonPin2); if (buttonState1 == HIGH) {Serial.println ("запускается вперед"); FlagState = 0; } else if (buttonState2 == HIGH) {Serial.println ("Rev triggered"); FlagState = 1; } Serial.println ("цикл завершен в ожидании"); }
Рекомендуемые:
Интерактивное акриловое ночное небо: 6 шагов
Интерактивное акриловое ночное небо: великолепный рисунок ночной сцены может улучшить ваш дизайн интерьера, будь то ваша комната или гостиная. Этот проект предлагает вам на выбор дизайн своей комнаты своими руками. Собери свой художественный талант и следуй моим шагам, чтобы закончить
Интерактивное яйцо - звуковая реакция и детонация: 4 шага
Интерактивное яйцо - реакция на звук и на удар: я создал «Интерактивное яйцо». как проект для школы, где нужно было сделать концепт и прототип. Яйцо реагирует на громкий шум птичьим шумом, и если по нему достаточно сильно постучать 3 раза, оно откроется на несколько секунд. Это первое
Использование приводного двигателя постоянного тока беговой дорожки и ШИМ-регулятора скорости для электроинструментов: 13 шагов (с изображениями)
Используйте приводной двигатель постоянного тока беговой дорожки и ШИМ-контроллер скорости для электроинструментов: для электроинструментов, таких как металлорежущие станки и токарные станки, сверлильные станки, ленточные пилы, шлифовальные машины и многое другое, могут потребоваться двигатели мощностью от 5 до 2 л.с. с возможностью точной настройки скорости при сохранении крутящего момента. По совпадению, в большинстве беговых дорожек используется двигатель 80-260 В постоянного тока с
Знак охранного двора, активируемый движением: 4 шага (с изображениями)
Дорожный знак, активируемый движением: традиционные знаки для двора системы безопасности ничего не делают. На самом деле они не сильно изменились за последние 30 лет. Тем не менее, они являются ценным сдерживающим фактором, если они размещены на видном месте во дворе и выглядят ухоженными. Я люблю
Бутылка с водой - освещение дорожки, 5 шагов
Бутылка с водой - трековое освещение: некоторое время назад я начал работать с бутылками с водой и превратил их в отражатель для светодиодного освещения. https://www.instructables.com/id/Water_Bottle_Hack_LED_Booklight/. Это было всего лишь в последнюю минуту и начало большой идеи. Этот поучительный я