Слишком громкое название? Я так не думаю.
Всем привет! Несколько дней назад ко мне обратился владелец сети автомастерских. Задача была такова, что нужно было мониторить определенные состояния устройств и приборов и выводить все данные в красивом веб-интерфейсе, чтобы владелец мог мониторить производительность сотрудников, а посетители сайта могли видеть занятость и примерное время ожидания.
После всех формальностей я незамедлительно принялся к выполнению. В качестве связующего звена между датчиками и веб-сервером решил использовать ESP8266. Чем он так хорош? Да потому что это весьма неслабый процессор и вай-фай адаптер в одном маленьком устройстве.
Характеристики ESP8266 NodeMCU
Беспроводной интерфейс: Wi-Fi 802.11 b/g/n 2,4 ГГц
Режимы: P2P (клиент), soft-AP (точка доступа)
Максимальная выходная мощность: 19,5 дБ·мВт (89 мВт)
Номинальное напряжение: 3,3 В
Входное напряжение: 3,7–20 В
Максимальный потребляемый ток: 220 мА
Портов ввода-вывода свободного назначения: 11
Частота процессора: 80 МГц
Объём памяти для кода: 64 КБ
Объём оперативной памяти: 96 КБ
Габариты: 45×30 мм
P. S. заранее предупреждаю, что все описанные далее действия снесут родную прошивку. Но мне, например, она совершенно не нужна.
NodeMcu ESP8266 подключение
Итак, открываем Arduino IDE, заходим в File/Preferences и в поле Additional boards manager вставляем следующую строку:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Затем идем в Toolas/Boards/Board Manager и ищем esp8266, нажимаем на кнопку Install.
Отлично, все установилось.
Выбираем нашу борду. В моем случае это NodeMCU 1.0
Теперь настало время написать тестовую прошивку.
[cpp]
#define TESTPIN 16
void setup() {
pinMode(TESTPIN, OUTPUT);
}
void loop() {
digitalWrite(TESTPIN, HIGH);
delay(100);
digitalWrite(TESTPIN, LOW);
delay(100);
}
[/cpp]
Распиновка ESP8266 NodeMcu
Очень важно — обратите внимание на распиновку. Как видите, в коде мы работаем с 16 пином, а он соотвествует DO на плате NodeMcu.
Загружаем прошивку через Arduino IDE.
И вот результат, все работает.
Теперь база для дальнейшего создания проекта на ESP8266 на NodeMCU создана. Можно делать на этой маленькой штуке как веб сервер, так и любое другое устройство для IoT. И стоит оно всего лишь несколько долларов. Не удивлюсь, если скоро эта штука будет стоять в большинстве умных устройств.