Оглавление:

Сенсорные лампы с синхронизацией цвета: 5 шагов (с изображениями)
Сенсорные лампы с синхронизацией цвета: 5 шагов (с изображениями)

Видео: Сенсорные лампы с синхронизацией цвета: 5 шагов (с изображениями)

Видео: Сенсорные лампы с синхронизацией цвета: 5 шагов (с изображениями)
Видео: 8 настроек, которые УБИВАЮТ качество изображения на вашем телевизоре 2024, Июль
Anonim
Image
Image

Для этого проекта мы сделаем две лампы, которые могут изменять свой цвет на ощупь и могут синхронизировать этот цвет друг с другом через Интернет. Мы использовали это как рождественский подарок другу, который переехал в другой город. Она получила одну из ламп, а другая осталась у нас. Таким образом, у нас обоих есть красивая лампа, а также возможность передавать цвета друг другу. Это приятный и крутой способ общения друг с другом, даже если они находятся по отдельности, и гораздо более легкая форма общения, чем с помощью текста, голоса или изображений.

Этот проект вдохновлен проектом Syncenlight немецкого радиошоу Netzbasteln, хотя мы немного изменили программное обеспечение и создали более сложные лампы для нашего проекта. На видео вы можете увидеть, как это работает. В демонстрационных целях две лампы стоят прямо рядом друг с другом - но это сработало бы даже, если бы они были на противоположных сторонах планеты (при наличии Wi-Fi).

Шаг 1. Необходимые навыки, инструменты и детали

Основная идея и как она работает
Основная идея и как она работает

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

Детали, которые необходимы для лампы, можно увидеть на картинке выше. Если вы хотите построить его точно так же, как мы, то вам понадобится следующее:

  • резистор 100 кОм
  • Wemos D1 mini (или любая другая плата на базе ESP8266)
  • несколько светодиодов WS2812B (одиночные или полоски)
  • некоторые кабели
  • USB-кабель (тот же, что используется для большинства смартфонов, должен быть кабель для передачи данных)
  • металлический вазон
  • стеклянная ваза
  • баллончик со спреем для ледяных цветов (или что-то подобное)
  • две деревянные палки
  • небольшой кусок картона (размером с Wemos D1 mini)

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

Конечно, нам нужны не только детали, но и инструменты, чтобы собрать все воедино. Для этого нам потребуются следующие предметы:

  • паяльник (плюс припой)
  • немного наждачной бумаги
  • пара ножниц
  • термоклей
  • пила по дереву

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

Шаг 2: основная идея и как она работает

Основную идею можно увидеть в схеме подключения. В основе проекта - мини-плата Wemos D1 с микроконтроллером ESP8266. Преимущество ESP8266 в том, что он дешев и имеет Wi-Fi прямо на борту, что нам и нужно. Мы использовали мини-плату Wemos D1, потому что с этой платой вам не нужны какие-либо дополнительные инструменты для загрузки программного обеспечения на микроконтроллер (кроме стандартного USB-кабеля для передачи данных). Но для этого проекта подойдет любая плата на базе ESP8266.

Для управления лампой мы хотим использовать емкостной сенсорный датчик (так что тот же основной принцип используется в большинстве дисплеев смартфонов). Такой датчик касания можно создать, подключив резистор 100 кОм к двум контактам ESP8266 (в нашем случае контакты D2 и D5), а затем подключив дополнительный провод к контакту D5 и затем припаяв этот провод к металлической пластине. Куда припаять этот провод, зависит от конструкции лампы, которую вы выберете. В схеме подключения мы использовали обычную металлическую пластину, но для нашей конкретной конструкции лампы мы припаяли этот кабель к металлической части лампы. Если вам интересно, как именно это работает, на веб-сайте есть хорошее объяснение библиотеки Arduino, которую мы использовали для программирования емкостного сенсорного датчика.

Теперь, когда у нас есть что-то, к чему мы можем прикоснуться, чтобы управлять лампой, следующее, что нам нужно, - это источник света. Для этого мы использовали светодиоды WS2812B. Они широко используются в различных проектах, и их главное преимущество заключается в том, что вы можете управлять цветом множества светодиодов, используя всего одно соединение для передачи данных между первым светодиодом и микроконтроллером (в нашем случае подключенным к D8 ESP8266). В нашем проекте мы используем четыре светодиода WS2812B. На схеме подключения показаны два, но добавление дополнительных светодиодов работает точно так же, как добавление второго: вывод DOUT второго светодиода должен быть подключен к DIN третьего, а VSS и VDD должны быть подключены к контакту заземления и Вывод 5V соответственно. Эти светодиоды WS2812B можно легко запрограммировать, например с библиотекой Adafruit NeoPixel.

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

Шаг 3: Пайка электроники

Пайка электроники
Пайка электроники
Пайка электроники
Пайка электроники
Пайка электроники
Пайка электроники
Пайка электроники
Пайка электроники

Итак, в первую очередь нам нужно спаять все электронные части вместе. Мы начали со спайки отдельных светодиодов WS2812B вместе (как показано и описано в предыдущем шаге). Если бы мы снова занялись этим проектом, мы бы, вероятно, просто купили бы светодиоды WS2812B в виде полос. Эти полосы можно разрезать так, чтобы у вас было ровно столько светодиодов, сколько вам нужно, а затем вам просто нужно припаять разъемы DIN, VDD и VSS этой полосы к контактам D8, 5V и G ESP8266. Это было бы проще, чем сделать так, как мы, но пайка отдельных светодиодов WS2812B также возможна, как видно на рисунках (хотя наши паяльные соединения не очень красивые, но они работают)

Затем мы припаяли резистор между контактами D2 и D5. К контакту D5 нам также нужно припаять дополнительный провод, который позже будет припаян к той части лампы, которая должна функционировать как датчик касания. На фотографиях вы можете видеть, что мы не припаивали резистор непосредственно к плате, а вместо этого припаяли разъемы к плате, в которую затем вставляем резистор. Это было связано с тем, что мы хотели выяснить, какой резистор лучше всего подходит для этого проекта, но вы также могли припаять резистор непосредственно к плате.

В качестве последнего шага мы можем теперь подключить наш USB-кабель к USB-разъему Wemos D1 mini (убедитесь, что у вас есть USB-кабель для передачи данных - есть также кабели, которые работают только для зарядки, но не для передачи данных, но нам нужен данные для последующей прошивки программного обеспечения).

Шаг 4: сборка лампы

Строительство лампы
Строительство лампы
Строительство лампы
Строительство лампы
Строительство лампы
Строительство лампы

Теперь, когда электронные компоненты готовы, мы можем приступить к изготовлению самой лампы. Для этого мы хотим осветить вазу сверху нашими светодиодами, и мы хотим, чтобы свет лампы был рассеянным. Поскольку стекло вазе, которое мы нашли, очень прозрачное, мы использовали спрей Ice Flower Spray, чтобы придать стеклу более матовый вид. Доступно несколько версий спрея, которые могут придать стеклу более матовый или рассеянный вид, так что вы можете просто посмотреть, что сможете найти. Если вы используете этот спрей, убедитесь, что все хорошо высохло, прежде чем продолжить. Это может занять несколько часов в зависимости от используемого спрея.

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

Для этого мы сначала использовали пилу, чтобы получить деревянные палки нужного размера. Затем наждачной бумагой зашлифуем канавку в середине одной из палочек. Теперь приклеиваем в паз второй с помощью термоклея. Если бы мы поставили это на вазу, она бы не подошла, потому что палочки не на одном уровне. Итак, мы зашлифовали две новые канавки на концах палочки, которая находится на нижнем уровне, чтобы крест идеально подошел к вазе. Это хорошо видно на картинках.

Если все хорошо подходит, следующим шагом будет приклеить кусок картона поверх креста. Это должно быть на той стороне креста, где нет канавок. Затем мы приклеили мини-плату Wemos D1 на картон и светодиоды с другой стороны креста.

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

В качестве последнего шага мы можем теперь приклеить USB-кабель с помощью суперклея к вазе, чтобы все выглядело красиво и аккуратно. Теперь мы почти закончили.

Шаг 5: Начните работу

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

Но не волнуйтесь, вам не нужно ничего понимать о MQTT, как он работает или как настроить сервер MQTT, если вы просто хотите использовать лампу. Конечно, вы можете установить и настроить свой собственный сервер, если хотите. Но если вы не хотите этого делать, есть также несколько сервисов, где вы можете арендовать сервер MQTT, размещенный в облаке. Для этого мы использовали CloudMQTT, где вы можете получить очень ограниченный сервер даже бесплатно (но с достаточной функциональностью и пропускной способностью для наших целей). Бесплатный план называется Cute Cat, и если вы получите один из них, вам просто нужно заглянуть в Подробности → Информация об экземпляре, и там вы увидите сервер, пользователя, пароль и порт вашего экземпляра MQTT. Эти значения - все, что вам нужно, так что запишите их:-)

Теперь, чтобы загрузить программное обеспечение на лампу, вам необходимо подключить кабель USB к ноутбуку или компьютеру, а затем вы можете загрузить программное обеспечение с помощью программного обеспечения Arduino. Как установить и настроить программное обеспечение Arduino для использования с платами на базе ESP8266, хорошо объяснено в этом руководстве, поэтому нам не нужно повторять эти шаги здесь.

После того, как вы установили и настроили все необходимое, перейдите в Инструменты → Управление библиотеками в программном обеспечении Arduino и установите библиотеки, необходимые для этого проекта: Adafruit NeoPixel, CapacativeSensor, PubSubClient, WifiManager (в версии 0.11) и ArduinoJson (в версии 5, не бета-версия 6). Если они установлены, вы можете загрузить исходный код лампы из нашего репозитория Github для этого проекта и загрузить его в лампу с помощью программного обеспечения Arduino.

Если все прошло хорошо, лампа включится и будет готова к использованию:-) При запуске она загорится синим цветом и попытается подключиться к известному Wi-Fi. При первом запуске лампа, очевидно, не знает ни о каком Wi-Fi, поэтому она запустит свою собственную точку доступа (с именем, которое представляет собой комбинацию «Syncenlight» и уникального идентификатора ESP8266, который вы использовали). Вы можете подключиться, например, ваш смартфон к этому Wi-Fi, и вы будете перенаправлены на страницу конфигурации лампы, где вы можете настроить свои учетные данные WiFi, а также ввести необходимые настройки для сервера MQTT (те, которые вам нужно было записать несколькими абзацами ранее). Если вы закончите с этим, лампа перезагрузится и теперь полностью готова к использованию!

Сообщите нам, как вам понравился этот проект, или, если у вас есть какие-либо вопросы, мы надеемся, что вам понравилось это руководство:-)

Рекомендуемые: