Оглавление:

Ночник Moonlamp: 13 шагов (с изображениями)
Ночник Moonlamp: 13 шагов (с изображениями)

Видео: Ночник Moonlamp: 13 шагов (с изображениями)

Видео: Ночник Moonlamp: 13 шагов (с изображениями)
Видео: Ночник Луна Moon Lamp см голубая 2024, Ноябрь
Anonim
Moonlamp Nightlight
Moonlamp Nightlight
Moonlamp Nightlight
Moonlamp Nightlight
Moonlamp Nightlight
Moonlamp Nightlight

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

www.instructables.com/id/Progressive-Detai…

Он использует недорогую плату ESP8266 для создания фантастического ночника, который использует светодиод RGB мощностью 3 Вт от Future Eden и может отображать любой из семи цветов, а также красивый режим «мерцания», в котором цвет постоянно меняется.

Глобус Луны вращается - если вы предпочитаете смотреть на «темную сторону Луны», просто поверните земной шар.

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

Если у вас есть ребенок, интересующийся программированием, ночник управляется MicroPython. Так что это также отличный способ вовлечь кого-то в компьютерное программирование !.

Запасы

Плата WeMos D1 Mini ESP8266.

На ebay много поставщиков. Я бы предложил купить 10 или около того у китайского поставщика, как показано ниже. Они невероятно дешевы, и вы, несомненно, найдете им множество применений в проектах IoT.

www.ebay.co.uk/itm/ESP8266-ESP-12-WeMos-D1…

BC337 транзистор

www.ebay.co.uk/itm/25-x-BC337-40-NPN-Trans…

Ферритовые фильтры

www.ebay.co.uk/itm/10Pcs-Black-Clip-On-Cla…

Резисторы 2Вт

www.ebay.co.uk/itm/0-1-100ohm-Various-Valu…

Доска прототипа

www.ebay.co.uk/itm/Double-Sided-Prototypin…

Светодиод RGB 3 Вт

futureeden.co.uk/products/3w-rgb-red-green…

Разъем постоянного тока 2,5 мм

www.ebay.co.uk/itm/2-5mm-x-5-5mm-METAL-PAN…

Радиатор 40 мм

www.ebay.co.uk/itm/Aluminium-Heatsink-Radia…

Поворотный энкодер

Есть много поставщиков ebay, продающих их. Я использовал датчик вала D 15 мм.

www.ebay.co.uk/itm/Rotary-Shaft-Encoder-EC…

Ручка (для установки на вал D)

www.ebay.co.uk/itm/5-Colours-D-Shaft-270-P…

Шаг 1. Распечатайте лунную лампу

Вы хотите распечатать 5-дюймовую лунную лампу по ссылке на инструкции, о которой я упоминал ранее. Я напечатал это на Ender 3, используя белый PLA со 100% заполнением и высотой слоя 0,15 дюйма с опорами. Затем я посветил фонариком на отпечаток и острым ножом удалил весь оставшийся поддерживающий материал. Результат был абсолютно идеальным. Общее время печати составило около 15 часов.

Шаг 2: Распечатайте верх и основание лунной лампы

Распечатать верх и основание лунной лампы
Распечатать верх и основание лунной лампы
Распечатать верх и основание лунной лампы
Распечатать верх и основание лунной лампы

Используйте прилагаемые STL для печати верха и основания. Я напечатал их черным PETG, чтобы получить красивое глянцевое покрытие, но PLA тоже подойдет.

Шаг 3: Распечатайте подставку для луны

Распечатать лунную поддержку
Распечатать лунную поддержку

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

Шаг 4: прошейте ESP8266 с помощью MicroPython

Загрузите последнюю версию Micro Python, подключите ESP8266 к USB-порту на вашем ПК, а затем используйте диспетчер устройств, чтобы определить, к какому COM-порту он подключен.

Затем запрограммируйте подсистему Micro Python с помощью поставляемого flash-инструмента. В приведенных ниже примерах команд используется последняя версия, которую я обнаружил на момент написания, при условии, что COM4 - это порт, которому сопоставлено устройство, и что Python 2.7 установлен в c: / python27.

c: / python27 / scripts / esptool.py --port COM4 --baud 115200 erase_flash

c: / python27 / scripts / esptool.py --port COM4 --baud 115200 write_flash --flash_size = обнаруживать 0 micropython / esp8266-20190529-v1.11.bin

Вам нужно только один раз прошить Micro Python.

Шаг 5: Установите систему WebRepl

WebRepl - это система на основе браузера, которая позволяет вводить команды Micro Python, а также передавать файлы на ESP8266 и обратно. Он подключается через Wi-Fi напрямую к ESP8266, поэтому вам не нужно подключать плату ESP к компьютеру.

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

docs.micropython.org/en/latest/esp8266/tut…

Перенесите два вышеуказанных файла Python в ESP8266 с помощью пользовательского интерфейса браузера WebRepl.

Также перенесите файлы из этого проекта github - есть два файла python, которые вместе управляют поворотным кодировщиком.

github.com/miketeachman/micropython-rotary

Убедившись, что Micro Python работает нормально на ESP8266, вы можете перейти к следующему шагу, на котором вы создадите плату контроллера.

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

Шаг 6: Подключите печатную плату

Подключите монтажную плату
Подключите монтажную плату
Подключите монтажную плату
Подключите монтажную плату
Подключите монтажную плату
Подключите монтажную плату

Я использовал прототип платы, как показано в ссылке на расходные материалы. Компоненты просто подключены по схеме точка-точка.

Светодиод RGB крепится на 40-миллиметровом радиаторе с помощью термоленты Akasa.

Клоны WeMOS поставляются с выводами заголовка; Я припаял их к плате, а затем к макетной плате.

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

Поскольку 40-миллиметровый радиатор находится на верхней части печатной платы, убедитесь, что в области, покрытой радиатором, нет слишком высоких компонентов, иначе они будут мешать радиатору.

Шаг 7. Распечатайте прокладку и соберите опорную плиту

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

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

Теперь соберите печатную плату и опорную пластину.

Шаг 8: прикрепите светодиод к радиатору, а затем подключите его к печатной плате

Я использовал термоленту Akasa. Просто вырежьте квадрат 20 мм x 20 мм и прикрепите светодиод. Обратите внимание на инструкции относительно того, какая цветная сторона идет к радиатору, а какая - к светодиоду.

Я использовал стандартный компьютерный ленточный кабель, чтобы подключить шесть проводов от светодиода к печатной плате.

Шаг 9: сделайте шнур питания

Сделайте силовой кабель
Сделайте силовой кабель

Кабель питания просто сделан из дешевого USB-кабеля. Отрежьте USB-разъем, оставив около 1-2 дюймов кабеля, чтобы его можно было зачистить и подключить какой-нибудь двухжильный кабель питания (я использовал двухжильный кабель общей шириной примерно 5 мм, так что стандартный 5-миллиметровый ферритовый подавитель будет на нем зажиматься). Используйте термоусадочную трубку, чтобы подключить красный и черный провода от USB-разъема к источнику питания и заземлению, затем припаяйте вилку питания 2,5 мм на другом конце.

Обратите внимание, что изображенный на картинке кабель короче, чем вы бы хотели - он был для другого проекта, но проводка была такой же. Для удобства вам, вероятно, понадобится около 2 м кабеля.

Почему бы просто не подключиться напрямую к порту micro USB ?. Что ж, есть две проблемы. Падение напряжения по стандартному USB-кабелю довольно велико, потому что при высоких токах на крошечных проводах действительно немного падает напряжение, и это может вызвать проблемы с ESP8266. Кроме того, эти платы не предназначены для подачи значительного тока - следы на плате довольно тонкие, поэтому я бы подавал питание отдельно.

Примечание: на этом кабеле не показан ферритовый фильтр с защелкой. Я рекомендую добавить один из них на случай, если через кабель питания излучается электрический шум. Помните, что вы переключаете ток около 500 мА через три светодиода, и это может создать радиопомехи.

Шаг 10: проверьте это

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

Если вы продолжите вращать энкодер, вы увидите изменение цвета. Всего семь цветов, и последний режим - «мерцание». В режиме мерцания цвет постоянно меняется. Эффект довольно тонкий и очень красивый.

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

Шаг 11: приклейте пластину лунного фонаря к луне и соедините все вместе

Приклейте пластину лунного фонаря к Луне и соедините все вместе
Приклейте пластину лунного фонаря к Луне и соедините все вместе

Убедитесь, что все правильно совмещено. Затем приклейте опорную пластину для лунного фонаря к луне, расположив луну одним из «полюсов» вниз - обычно это основание 3D-печати. Я использовал эпоксидную смолу, как показано на картинке выше.

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

Шаг 12: Примечание о безопасности

Поскольку это устройство предназначено для детской комнаты, безопасность важна. Он работает от безопасного стандартного зарядного устройства для телефона на 5 В, если вы используете надежное зарядное устройство, которое будет вполне безопасным. Значения силового резистора выбраны таким образом, чтобы температура внутреннего радиатора оставалась примерно на 10-15 градусов выше температуры окружающей среды. Они также выбраны так, чтобы в крайне маловероятном случае короткого замыкания светодиода рассеиваемая мощность на каждом резисторе оставалась в пределах его номинальной мощности 2 Вт.

Шаг 13: код Python

Основная программа управления на Python довольно проста. Это не очень элегантный код - его можно было бы преобразовать в отдельные подпрограммы - но он действительно работает.

Код должен иметь дело с неожиданной проблемой, которую я обнаружил - во время тестирования меня раздражало случайное мерцание. Оказывается, когда вы меняете рабочий цикл ШИМ канала, вы не можете изменять несколько каналов одновременно. Если вы это сделаете, вы получите мерцание время от времени - поэтому я установил короткую временную задержку, а затем изменения ШИМ выполняются на каждом канале в «циклической» манере, чтобы избежать мерцания.

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