Инструкция по Wemos D1 mini: вроде бы все тоже самое
Введение
Привет друзья, меня все еще зовут Алексей ;), и я решил написать небольшой курс статей, по использованию платы Arduino Nano и так называемой адресной ленты, на основе светодиодов ws2812b. На сегодня это уже седьмая статья. И, прежде чем браться за чтение конкретно этой статьи, я бы посоветовал прочитать предыдущие.
Сегодня мы поговорим о так называемой плате Wemos D1 mini. Вообще видов плат Wemos несколько, при чем есть и другие платы с практически такой же конфигурацией, но называющиеся иначе. Тут замешаны и авторские права, и желание производителей выделиться. Возможно, вы сейчас находитесь в замешательстве, типа: «Изучали одно, а потом резко переключились на другое?», но не волнуйтесь, мы все еще находимся в одной большой теме, в той самой, с которой начинали. Я не менял вектор движения, и по-прежнему пытаюсь дать вам азы цифровой электротехники, просто не стоит зацикливаться на плате Arduino Nano, ведь есть другие решения. А так как задачи бывают совсем разные, то переключиться на другую плату будет очень даже полезно.
Разбираемся в вопросе
Со стороны USB разъема можно увидеть знакомую микросхему CH340, которая позволяет «общаться» плате и компьютеру по USB проводу, также было и на Arduino Nano. Плата поставляется с различными гребенками контактов, чтобы была возможность удобного подключения к ней внешних устройств. Иногда гребенки уже впаяны, я покупал свою плату в интернет-магазине Giant4, и у меня были 3 варианта гребенок в одном наборе.
Также на фото видно, что, в отличие от Arduino Nano, где стоял разъем USB-mini, на Wemos у нас уже расположен USB-micro. Это просто удобно, так как провода с этим разъемом более распространены, хотя они уже тоже постепенно выходят из обихода.
Понятное дело, что у данной платы немного другой форм фактор и количество пинов определенного назначения, оно отличается от того, что мы с вами видели на Arduino Nano. Но так как мы работаем с адресной лентой, нас по-прежнему интересуют выводы типа digital. Это цифровые выводы, которые подписаны буквой D и номером. Тут таких девять штук, конечно, немного меньше, чем на Nano, но все равно немало.
Но, пожалуй, главной особенностью данной платы является то, что на борту есть Wi-Fi приемник и Wi-Fi передатчик. То есть, эту плату можно подключить к домашней локальной сети и отправлять команды как на нее, то есть управлять платой, так и сама плата может отправлять команды на другие устройства. На данный момент уже все домашние локальные сети имеют доступ к мировой информационной паутине (у всех есть интернет), а это значит, что мы не ограничены рамками и при настройке определенной маршрутизации можем управлять данной платой из любой точки мира. На самом деле это просто фантастика. А что если я вам скажу, что делать это крайне просто? Наравне с тем, что плата может подключиться к вашей домашней сети, плата также может выступать в качестве источника данной сети. То есть Wemos сама раздаст свой собственный Wi-Fi, к которому смогут одновременно подключиться сразу несколько устройств. Я не буду долго обсуждать возможности данной платы, потому что на это уйдет очень много времени и тут уже вопросы даже не к плате, а к сетевым технологиям, но расскажу в общих чертах. Суть в том, что можно организовать TCP/IT сервер или же просто, как клиент, отправлять пакеты. Можно поднять FTP сервер (кстати на плате есть память под хранилище данных, немного, но для всяких «цифровых дел» с избытком). Можно организовать WEB сервер, хранить тут же свой сайт и через него управлять Wemos, к примеру, выводами. В общем, возможностей действительно много: почтовый сервер, сервер сайтов и можно даже проводить хакерские атаки, но, конечно же, для этого придется подучиться и в рамках данных статей мы этого делать не будем ;) Мы организуем простое управление через интернет.
Но, справедливости ради, я хочу заметить, что все, что я перечислял выше, по возможностям платы, - это заслуга не Wemos. Если присмотреться к этой плате, то можно обратить внимание на то, что это «бутерброд». Так как на этой плате находится еще одна плата, на основе МК ESP8266. И все перечисленные возможности – это заслуга именно этого микроконтроллера.
И получается, что Wemos – это не что иное, как просто удобная развязка. Она организует подключение с компьютера до МК. Она позволяет более удобно работать с выводами, тут уже предусмотрена кнопка Reset (хотя я лично не представляю ситуации, чтобы я побежал нажимать кнопку сброса на своей самоделке именно на плате, конечно же, ее необходимо выносить, поэтому обычно сброс происходит по питанию). Также имеются стабилизаторы питания и пара защит. Сказать, что Wemos бесполезна, конечно же, нельзя, она очень удобна, особенно для новичка, но лично я уже давно перешел на использование самой платы ESP8266, она достаточно мала и позволяет сэкономить место, а также я вправе организовать только ту развязку, которая мне действительно необходима (то есть мое устройство может быть и проще, чем Wemos, но может быть и гораздо сложнее). Плат с ESP8266, кстати, тоже огромное количество видов. Я, как правило, использую 12-E или 12-F. Посмотрите на фото, как это все выглядит.
И таких плат по типу Wemos, на самом деле, немало. Например, еще одна из них, под названием NodeMCU. Как обычно, такие платы бывают разных видов, но смысл от этого не меняется и всегда в основе лежит ESP8266. Именно этот МК и объединяет все эти платы. На следующей иллюстрации Вы можете ее увидеть и понять, что выводов у нее больше, чем на Wemos, но цифровых входов и выходов такое же количество. При выборе нужно исходить от задачи, стоящей перед разработчиком. В рамках данной статьи, мой выбор пал на Wemos.
Также отмечу, что Arduino – это не единственная платформа, с помощью которой можно вести разработки под эти платы, как и не единственная платформа для разработки на Arduino Nano. Но на данный момент – это лучший выбор дня новичка.
Как это использовать? - Готовим IDE Arduino
Для начала придется кое-что настроить в самой IDE Arduino. Кстати, мы будем использовать тот скетч, который мы написали в прошлой статье.
Теперь заходим в Файл -> Настройки.
И у нас появляется следующее окно. В поле «Дополнительные ссылки на менеджера плат» необходимо вписать следующую ссылку: http://arduino.esp8266.com/stable/package_esp8266com_index.json
А затем нажать на кнопку «Ok».
Теперь заходим в Инструменты -> Плата -> Менеджер плат.
Откроется менеджер плат. В появившемся окне нужно в поисковую строку вписать «Wemos». И установить компонент под названием – «ESP8266 Community». После этого будет не лишним перезагрузить IDE Arduino.
Теперь осталось выбрать тип платы и порт, остальные настройки оставим без изменений.
На этом все. Если подключить плату и нажать кнопку записи скетча, то наша программа попадет в МК. Но перед тем, как мы перейдем к подготовке физической части, нам нужно немного изменить код. Данное изменение связанно с самой интеграцией платформы Arduino на ESP8266. Не будем разбирать это подробно, это достаточно большая тема и сейчас говорить об этом еще рано. Просто примем как данность. В третей строке, где мы задаем номер управляющего вывода, нужно значение «5» заменить на «D5». Думаю, дальнейшая логика самостоятельной работы уже понятна и останавливаться на этом я не буду.
Аппаратная часть
С программной частью мы разобрались. Теперь необходимо подключить к плате Wemos блок питания и адресную ленту. Подключение будет происходить полностью по аналогии с Arduino Nano. Управление с D5 (не забываем про токоограничивающий резистор), питание на 5V и общий (тут необходимо поставить конденсатор). Схема подключения представлена ниже.
Смотрим итоговое фото. Также, как и в случае с Arduino Nano, я просто припаял провода.
Результат
После того, как все подключено и настроено, соединяем USB проводом компьютер с платой. Выставляем в настройках необходимый порт и записываем программу на Wemos. Если до этого все было сделано правильно, то в конце мы увидим надпись – «Загрузка завершена». Отключаем плату от USB и включаем блок питания в розетку. Как результат, видим на адресной ленте тот же эффект, что и в прошлой статье. Только в этот раз мы управляем цветами пикселей с помощью совершенно другого МК. Смотрим результат на видео.
Заключение
Я понимаю, что в начале статьи очень много рассказывал про Wemos, Wi-Fi, ESP8266 и возможности всего этого, а в заключении мы просто подключили ленту и построили такой же простой эффект, как и в прошлый раз. Но вы должны понимать: чтобы что-то реализовать, необходимо подготовить почву и получить хотя бы минимальные представления о предметной области. Этим мы сегодня и занимались. Но в следующей статье, которая скорее всего уже будет заключительной, мы займемся управлением ленты через интернет по средством смартфона.
Я хочу обратить Ваше внимание на то, что мы смогли с помощью одной и той же IDE, используя один и тот же программный код, запрограммировать два совершенно разных по архитектуре микропроцессора. При этом мы вообще ничего не знали про устройства этих МК. В этом и заключается сила платформы Arduino – простой одинаковый код и возможность работать с разными системами. На самом деле это дорогого стоит и это нужно ценить. Желаю вам удачи в ваших DIY проектах и встретимся в следующей статье.
Товары
- Комментарии