Живая картина своими руками, лучший подарок

Приветствую! У меня, как и у большинства мужчин есть небольшие проблемы с выбором подарков, дарю деньги либо то, что сам именинник пожелает. Тут у моей мамы был юбилей на носу, 60-летие. Я на тот момент вынашивал в голове идею хорошего подарка, это картина с имитацией жизни, то есть, в темноте на изображённом здании, в окнах рандомно должен зажигаться свет.

Вроде ничего сложного, заказать распечатку холста, купить ардуино и светодиодную ленту, но потом я решил, что картина должна быть ещё и полезной (нужно установить датчик CO2) чтобы картина сигнализировала, когда нужно проветривать помещение. Тем более во время коронавируса это важно делать.

Со временем я захотел ещё добавить пасхалку в картину (приложив ладонь в каком-то месте картины, должны мигать все окна разными цветами), этого можно было и не делать, но мне очень понравилась идея.

В интернете я нашёл красивую фотографию, автор Габриэль Пуйяна, если кому-то важно, она прям идеально подошла под мои требования. На фотографии изображены два здания, а между ними красивый закат или рассвет, кто как видит. Закат/рассвет будем подсвечивать, а в зданиях сделаем окна, которые в темноте будут включаться и там же где-то спрячем сенсор касания.

Фотография
@Габриэль Пуйяна

В итоге было решено, делаю картину с подсветкой, цвет которой зависит от содержания CO2 в воздухе, если в помещении, где висит эта картина темно — в зданиях, изображённых на холсте должен включаться и выключаться свет в окнах. И ко всему, в холсте нужно спрятать сенсор касания для пасхалки.

Размещение элементов

Процесс изготовления

Вот список всего необходимого:

  1. Холст 60х40 см.
  2. Картон (желательно найти тот, который не пропускает свет).
  3. Ватманы А2 — 5 шт.
  4. Прозрачные пластиковые папки формата А4 2 шт.
  5. Адресная светодиодная RGB-лента (мне хватило 34 светодиода).
  6. Arduino NANO.
  7. Датчик MQ-135.
  8. Фоторезистор.
  9. Сенсорный датчик TTP223 TOUCH KEY.
  10. Двусторонний скотч.
  11. Провод 5-жильный, 3 м.
  12. Паяльник, припой, канифоль (паяльная кислота намного упростит пайку, но это по желанию).
  13. Зарядное устройство.
  14. Mini USB кабель (зависит от разъёма в Arduino).

Всё брал с запасом на всякий случай, я даже умудрился во время изготовления спалить одну ардуинку.

Заказал распечатку на холсте 60х40 см с установкой на рамку.

Создание шаблона

Для начала я разделил ватман на две части и вставил во внутреннюю сторону холста. Холст приставил к окну и на ватмане во внутренней части виднелся рисунок, я перерисовал очертания и теперь у меня был шаблон изображения двух зданий на ватмане. Вырезаем так, чтобы у нас остались очертания этих зданий, они как раз не должны пропускать свет.

Чтобы проверить, всё ли правильно вырезано — прикладываем шаблоны к внутренней стороне холста и смотрим на лицевую часть картины через свет, все очертания шаблона должны совпадать с изображением на холсте.

Шаблон зданий с окнами

Готовые шаблоны зданий

Вид сзади

Имитация окон

Это самая сложная часть, я трижды всё переделывал. Тут я просто представил, какие и в каком месте должны быть окна и повырезал каждое окно. Потом для каждого окна нужно сделать коробочку, в которой будем прятать светодиод. Вырезал коробочки, пронумеровал их, так как окна не были одинаковыми.

Вырезание окон

Приступаем к светодиодной ленте. Нужно отрезать каждый светодиод и припаять 6 пинов, 3 на вход и 3 на выход.

Важно! Адресная светодиодная лента имеет направление, возле каждого светодиода указана стрелка, это нужно учитывать при пайке, если спаять неправильно, светодиоды работать не будут.

Направление светодиодной ленты

В итоге у меня получилась гирлянда из проводов и коробочек. После проверки работоспособности этой гирлянды я приступил к поклейке окон к вырезанному шаблону.

Вырезанные окна

Гирлянда из светодиодов

Шаблон под окна

Окна вид сзади

Для проверки светодиодов я использовал этот скетч.

#define PIN 11        // пин DI
#define NUM_LEDS 34   // число диодов
#include "Adafruit_NeoPixel.h"
Adafruit_NeoPixel strip = Adafruit_NeoPixel (NUM_LEDS, PIN, NEO_GRB + NEO_KHZ800);
void setup () {
  strip.begin ();
  strip.setBrightness(255);    // яркость, от 0 до 255
  strip.clear();               // очистить
  strip.show();                // отправить на ленту
}
void loop () {
  // заливаем белым
  for (int i = 0; i < NUM_LEDS; i++ ) {   // всю ленту
    strip.setPixelColor (i, 0xffffff);
    strip.show();                         // отправить на ленту
    delay (20);
  }
  delay (100);
}

Очень важно! Для приклеивания коробочек со светодиодами к шаблону я использовал клей ПВА, это норм, но не используйте клей ПВА для склеивания больших участков картона. Из-за этой ошибки мне пришлось всё переделывать. После высыхания клея картон скручивается, важно этого не допускать, так как шаблоны с окнами должны быть максимально ровными, чтобы плотно прилегать к холсту.

Подсветка картины

Подсветка состоит из 7 светодиодов, их целой лентой приклеиваем по центру в нижней части рамки. Эта подсветка будет подключена к окнам картины, в целом у нас получится одна светодиодная лента на всей картине, а разделять её будем в скетче.

Я решил, что у картины будет 4 цвета подсветки:

  • синий (свежий воздух);
  • белый (свежий воздух);
  • жёлтый (желательно проветрить помещение);
  • красный (нужно проветрить помещение).

На каждом этапе работ проверяем работоспособность всех узлов, чтобы сразу находить и устранять неполадки.

Подсвечиваться должна только центральная часть холста и, чтобы не терять в яркости света, я сделал из картона отсек, внутри обклеил всё белой бумагой для отражения света, а на лицевую часть клеевым пистолетом приклеил прозрачный пластик (из прозрачной пластиковой папки). Этот отсек выполняет две функции:

  1. Не даёт распространяться свету дальше отсека.
  2. Прижимает изображённые балконы к холсту.

Отсек для подсветки

Отсек подсветки в сложенном виде

Изначально я приклеивал шаблоны к холсту на двусторонний скотч и это было моей ошибкой. Во-первых, двусторонний скотч плохо клеится к холсту. Во-вторых, трудно с первого раза всё ровно приклеить. Поэтому все внутренности просто прижимаются к холсту и при необходимости их можно снять.

Датчик CO2

В задней части холста, с одной стороны, снизу доверху должно быть пустое пространство для циркуляции воздуха. MQ-135 во время работы немного нагревается, от этого тёплый воздух подымается, создавая циркуляцию. Сам датчик я спрятал в картонке, так как у него есть светодиод, а нам не нужно подсвечивать заднюю часть картины.

Датчик MQ-135

Пасхалка

Тут всё просто, сенсорную кнопку нужно приклеить на двусторонний скотч в удобном для вас месте с внутренней стороны холста. Я выбрал большое пустое место на картине.

TTP223 TOUCH KEY

Завершение

В итоге заднюю стенку я закрыл картоном. Сделал небольшие углубления для хранения блока и кабеля питания. Эта картонная стенка прижимается между рамками.

Вид сзади
Arduino я потом спрятал под картон

По итогу всех работ несколько дней картина была включённой для проверки перехода цветов подсветки и включения окон в ночное время. Было несколько доработок в коде скетча.

Схема подключения электроники

Важно! Все голые контакты закрывайте чем-то (скотчем, например). Я не придерживался этого правила и случайно замкнул пины на включённом ардуино 5V и GND, в итоге пришлось покупать новый микроконтроллер.

К информационному пину адресной ленты нужно подключить резистор, в противном случае большая вероятность спалить пин на Arduino.

Схема подключения

Скетч

Тоже важная часть проекта, код я писал с нуля, а так как я неспециалист в программировании, мне помогала моя девушка, она изучала C++ в университете.

Скетч писался под нужные задачи и не претендует на правильность, возможно программисты будут делать фэйспалм, но мы делали как могли и главное, что всё работает.

Код получился очень длинным, поэтому я загрузил файл на Google диск, в комментариях кода я постарался указать, что за что отвечает.

Скачать скетч

Для понимания, что в коде написано: вначале мы проверяем показатели датчика газа, если значения от 0 до 30 — включаем синий цвет, от 31 до 150 — белый свет, от 151 до 300 — жёлтый свет, от 301 до бесконечности — красный. В каждом цвете прописаны циклы для плавного перехода цветов и в этих же циклах делаем проверку на нажатие сенсорной кнопки (если нажата, рандомно включаем и выключаем разные цвета на всех светодиодах). В завершение, в каждом цикле проверяем фоторезистор, если его показатели ниже 200 (темно) — хаотично включаем и выключаем окна.

Итог

Вид в темноте шикарен, жаль фотография этого не передаёт.

Картина в темноте

Окна включаются и выключаются хаотично с длинной задержкой, думаю, имитация жизни в картине успешна.

Работа пасхалки
Работа пасхалки
Выключенная картина
Выключенная картина
Включённая картина
Включённая картина

Результатом очень доволен, всё работает как надо, получилось даже лучше, чем я себе представлял. Мама была довольна подарком, все гости интересовались картиной, а когда я прикладывал ладонь к картине и окна в ней начинали мигать, это вызывало много эмоций.

Стоит ли этот подарок потраченных сил и времени? Конечно! Я намерен ещё такие картины делать, это лучший подарок, сделанный своими руками и относительно недорогостоящий.

Спасибо за внимание! Если возникнут вопросы — пишите в комментарии, буду рад помочь.

Понравилась статья? Поделиться с друзьями:
Комментарии : 12
  1. Виталий

    Интересная статья. Не знал, что живая картина так делается. Пошел пробовать :idea:

  2. Валерия

    Это шедевр! И ещё своими руками 🔥

  3. Михаил

    Вау, крутая идея! Спасибо большое!

  4. Polina

    Это самый крутая задумка и воплощение своими руками, которые я когда-либо видела! Вот, что значит талант, креатив и руки из правильного места )

    1. Владислав Столец (Автор)

      Спасибо Полина)

  5. Юлия

    Прекрасная идея! Интересно, а женщина справится?

    1. Владислав Столец (Автор)

      Здравствуйте Юлия! Думаю да, главное всё делать по инструкции.

  6. Наталья

    Нужно срочно подключать мужа!

  7. Татьяна

    Шикарная идея и для подарка, и для декорации собственной комнаты. Для умелых рук. ;-)

  8. Евгения

    Отличная работа! Всегда удивляют люди которые в силах такое придумать! Я б купила такую себе :idea:

  9. Гульфия

    Замечательная идея! Но такое изготовить я все равно не смогу! Хотя завидки берут!

  10. Алексей

    Это отличная идея. Имитация жизни на картине. Здорово! Спасибо, попробую скопировать идею!

Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

Вставить формулу как
Блок
Строка
Дополнительные настройки
Цвет формулы
Цвет текста
#333333
Используйте LaTeX для набора формулы
Предпросмотр
\({}\)
Формула не набрана
Вставить