Электронные проекты на основе ESP8266 и ESP32: Создание приложений и устройств с поддержкой Wi-Fi
Покупка
Тематика:
Микроэлектроника. Наноэлектроника
Издательство:
ДМК Пресс
Автор:
Кэмерон Нил
Перевод:
Ревич Юрий Всеволодович
Год издания: 2022
Кол-во страниц: 456
Дополнительно
Вид издания:
Практическое пособие
Уровень образования:
Дополнительное образование
ISBN: 978-5-93700-141-2
Артикул: 817222.01.99
Микроконтроллеры ESP8266 и ESP32 необычайно популярны во всем мире как основа для построения интернета вещей и систем умного дома. Они сочетают простоту применения и дешевизну с достаточно высокими возможностями, характерными для 32-разрядных платформ. Популярность их в значительной мере обусловлена наличием легкодоступного и бесплатного ПО, совместимого с уже ставшей стандартом в любительских кругах средой разработки Arduino IDE. В книге делается акцент на практических проектах — начиная от создания мобильных приложений для удаленного управления устройствами с распознаванием речи до GPS-трекинга с использованием Google Maps.
Книга адресована всем любителям DIY, умеющим работать с Arduino и заинтересованным в создании настоящих IoT-устройств и интеграции их в систему умного дома.
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 02.03.02: Фундаментальная информатика и информационные технологии
- 11.03.04: Электроника и наноэлектроника
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Нил Кэмерон Электронные проекты на основе ESP8266 и ESP32 Создание приложений и устройств с поддержкой Wi-Fi
Electronics Projects with the ESP8266 and ESP32 Building Web Pages, Applications, and WiFi Enabled Devices Neil Cameron
Электронные проекты на основе ESP8266 и ESP32 Создание приложений и устройств с поддержкой Wi-Fi Нил Кэмерон Москва, 2022
УДК 621.3 ББК 32.85 К98 Нил Кэмерон К98 Электронные проекты на основе ESP8266 и ESP32: Создание приложений и устройств с поддержкой Wi-Fi / пер. с англ. Ю. В. Ревича. – М.: ДМК Пресс, 2022. – 456 с.: ил. ISBN 978-5-93700-141-2 Микроконтроллеры ESP8266 и ESP32 необычайно популярны во всем мире как основа для построения интернета вещей и систем умного дома. Они сочетают простоту применения и дешевизну с достаточно высокими возможностями, характерными для 32-разрядных платформ. Популярность их в значительной мере обусловлена наличием легкодоступного и бесплатного ПО, совместимого с уже ставшей стандартом в любительских кругах средой разработки Arduino IDE. В книге делается акцент на практических проектах – начиная от создания мобильных приложений для удаленного управления устройствами с распознаванием речи до GPS-трекинга с использованием Google Maps. Книга адресована всем любителям DIY, умеющим работать с Arduino и заинтересованным в создании настоящих IoT-устройств и интеграции их в систему умного дома. Дизайн обложки разработан с использованием ресурса freepik.com. УДК 621.3 ББК 32.85 Copyright First published in English under the title Electronics Projects with the ESP8266 and ESP32. This edition has been translated and published under licence from APress Media, LLC, part of Springer Nature. APress Media, LLC, part of Springer Nature takes no responsibility and shall not be made liable for the accuracy of the translation. Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. © Neil Cameron, 2021 © Оформление, издание, перевод, ДМК Пресс, 2022 ISBN (анг.) 978-1-48426-335-8 ISBN (рус.) 978-5-93700-141-2
Оглавление Предисловие от издательства ........................................................ 10 Об авторе ........................................................................................... 11 О техническом рецензенте ............................................................. 12 Предисловие ...................................................................................... 13 Глава 1. Интернет-радио .................................................................. 15 Выбор и отображение станции ........................................................................20 Простейшее интернет-радио ...........................................................................28 Итоги ................................................................................................................29 Перечень компонентов ....................................................................................29 Глава 2. Сетевая фотокамера .......................................................... 30 Загрузка изображений на веб-страницу .........................................................36 Потоковая передача изображений на веб-страницу .....................................39 Потоковая передача изображений на веб-страницу по сигналу PIR-датчика ....................................................................................41 Итоги ................................................................................................................45 Перечень компонентов ....................................................................................45 Глава 3. Международная метеостанция ....................................... 46 Сенсорный дисплей ILI9341 SPI TFT LCD .......................................................46 Калибровка сенсорного экрана .......................................................................49 Рисование на экране ........................................................................................51 Особенности ESP8266 при калибровке сенсорного экрана и рисовании .....52 Данные о погоде для различных городов .......................................................56 Итоги ................................................................................................................65 Перечень компонентов ....................................................................................65 Глава 4. Интернет-часы .................................................................... 66 Светодиодная RGB-лента WS2812, управляемая звуком ...............................69 ESP8266 и мультиплексор ................................................................................72 Часы на светодиодных кольцах ......................................................................75 Протокол NTP (Network Time Protocol) ...........................................................79 Интернет-часы и ESP32 ...................................................................................81 Итоги ................................................................................................................82 Перечень компонентов ....................................................................................82 Глава 5. MP3-плеер ........................................................................... 83 Команды управления для MP3-плеера ...........................................................84 Управление MP3-плеером с помощью микроконтроллера ...........................85
Инфракрасный пульт дистанционного управления MP3-плеером ....................................................................................................91 Создание треков и две системы сигнализации ..............................................94 Сигнализация с обнаружением перемещения ...............................................98 Говорящие часы ..............................................................................................100 Диктофон ........................................................................................................104 Итоги ...............................................................................................................106 Перечень компонентов ..................................................................................106 Глава 6. Bluetooth-динамик ...........................................................107 Итоги ...............................................................................................................111 Перечень компонентов ..................................................................................111 Глава 7. Беспроводная локальная сеть ........................................112 HTTP-запрос ...................................................................................................114 HTML-код ........................................................................................................118 XML HTTP-запросы, JavaScript и AJAX ..........................................................120 Итоги ...............................................................................................................125 Перечень компонентов ..................................................................................125 Глава 8. Обновление веб-страницы .............................................126 XML HTTP-запросы, JavaScript и AJAX ..........................................................130 JSON .................................................................................................................132 Доступ к данным WWW ..................................................................................135 MQTT-брокер и IFTTT .....................................................................................139 Парсинг текста ................................................................................................148 Ведение логов консоли ...................................................................................149 Подключение к Wi-Fi ......................................................................................150 Файл с информацией о доступе .....................................................................151 Итоги ...............................................................................................................152 Перечень компонентов ..................................................................................152 Глава 9. WebSocket ..........................................................................153 Дистанционное управление и связь через WebSocket .................................156 WebSocket и AJAX ............................................................................................161 Доступ к изображениям, времени и показаниям датчиков через интернет ................................................................................................165 Итоги ...............................................................................................................173 Перечень компонентов ..................................................................................173 Глава 10. Создаем мобильное приложение ...............................174 Приложение для управления с обратной связью .........................................175 Установка приложения ...................................................................................184 Приложение для управления сервороботом ................................................185 Приложение для распознавания речи ..........................................................191 Итоги ...............................................................................................................195 Перечень компонентов ..................................................................................195 6 Оглавление
Глава 11. Приложение базы данных и Google Maps .................196 База данных MIT App Inventor ......................................................................196 MIT App Inventor и Google Maps ....................................................................201 Итоги ...............................................................................................................207 Перечень компонентов ..................................................................................207 Глава 12. Приложение для GPS-трекинга с использованием Google Maps ....................................................208 Передача GPS-данных о местоположении ...................................................215 Получение GPS-данных о местоположении ................................................219 Проверка передачи GPS-данных о местоположении ..................................220 Улучшение GPS-сигнала .................................................................................227 Итоги ...............................................................................................................232 Перечень компонентов ..................................................................................233 Глава 13. Связь через USB OTG .....................................................234 Приложение для приема данных ..................................................................235 Приложение для передачи данных ...............................................................239 Приложение для приема и передачи данных ...............................................243 Итоги ...............................................................................................................244 Перечень компонентов ..................................................................................245 Глава 14. Обмен данными через ESP-NOW и LoRa ..............................................................................246 ESP-NOW .........................................................................................................246 LoRa .................................................................................................................256 Итоги ...............................................................................................................265 Перечень компонентов ..................................................................................265 Глава 15. Радиочастотная связь....................................................266 Передача и прием текста ...............................................................................269 Декодирование сигналов дистанционного управления ..............................273 Управление сервоприводами поворота и наклона с помощью RF-связи ...... 277 Управление реле по RF-связи ........................................................................282 Реле ..................................................................................................................285 Твердотельное реле ........................................................................................288 Итоги ...............................................................................................................289 Перечень компонентов ..................................................................................290 Глава 16. Генерация сигналов .......................................................291 Генерация колебаний .....................................................................................294 Цифроаналоговый преобразователь .............................................................296 Генерация колебаний ....................................................................................300 8-разрядный ЦАП ESP32 ................................................................................305 12-разрядный ЦАП .........................................................................................305 Оглавление 7
Итоги ..............................................................................................................309 Перечень компонентов ..................................................................................310 Глава 17. Генерация сигнала с помощью микросхемы таймера 555 .............................................................311 Микросхема таймера 555 ...............................................................................311 Моностабильный режим ................................................................................314 Бистабильный режим .....................................................................................316 Режим генерации ............................................................................................317 Переменный коэффициент заполнения .......................................................320 50%-ный коэффициент заполнения..............................................................322 Режим ШИМ ....................................................................................................325 Функциональный генератор ..........................................................................326 Преобразование прямоугольного колебания в синусоидальное ................330 Биполярный транзистор в качестве ключа ...................................................332 Приложение с MP3-плеером и PIR-датчиком...............................................334 Итоги ...............................................................................................................337 Перечень компонентов ..................................................................................338 Глава 18. Электрические измерения............................................339 Делитель напряжения ....................................................................................339 Аналого-цифровой преобразователь ............................................................341 Измеритель напряжения ................................................................................342 Измеритель напряжения с нагрузкой ...........................................................345 Измеритель сопротивления (омметр) ...........................................................348 Измеритель емкости ......................................................................................350 Измеритель тока (амперметр) .......................................................................353 Датчик тока .....................................................................................................358 Датчик тока и напряжения ............................................................................360 Измеритель для солнечной панели с аккумулятором .................................362 Измеритель индуктивности ...........................................................................369 Итоги ...............................................................................................................373 Перечень компонентов ..................................................................................373 Глава 19. Поворотный энкодер ....................................................375 Устранение дребезга контактов.....................................................................378 Прерывания ....................................................................................................378 Подсчет состояний ..........................................................................................380 Переключение состояний ..............................................................................385 Увеличение значения .....................................................................................386 Итоги ...............................................................................................................389 Перечень компонентов ..................................................................................390 Глава 20. OTA и сохранение данных в EEPROM, SPIFFS и Microsoft Excel ..............................................................................391 OTA-обновление .............................................................................................391 Сохранение данных ........................................................................................394 8 Оглавление
Сохранение в EEPROM ....................................................................................395 Сохранение в SPIFFS .......................................................................................398 Загрузка файлов из SPIFFS .............................................................................402 Сохранение данных в Excel ............................................................................404 Итоги ...............................................................................................................407 Перечень компонентов ..................................................................................407 Глава 21. Микроконтроллеры .......................................................408 Arduino Uno .....................................................................................................412 Arduino Nano ...................................................................................................412 Arduino Pro Micro ............................................................................................413 Модули ESP8266 .............................................................................................414 Аналоговый вход ESP8266 ..............................................................................417 Прерывания ESP8266 .....................................................................................417 Сторожевой таймер ESP8266 .........................................................................419 Модули ESP32 ..................................................................................................419 Цифровой вход ESP32 .....................................................................................422 Аналоговый вход ESP32 .................................................................................422 Широтно-импульсная модуляция в ESP32 ....................................................423 Вход последовательного порта ESP32 ...........................................................424 Связь по Wi-Fi и веб-сервер ...........................................................................424 Прерывания ESP8266 и ESP32 ........................................................................425 ESP8266, ESP32 и OLED-экран ........................................................................425 ESP32 и сервопривод ......................................................................................425 Итоги ...............................................................................................................426 Перечень компонентов ..................................................................................426 Глава 22. Особенности микроконтроллера ESP32 ....................427 Процессор и память .......................................................................................427 Ядра ESP32 ......................................................................................................428 Связь по Bluetooth ..........................................................................................434 Связь Bluetooth Low Energy ............................................................................436 Таймеры ..........................................................................................................445 RTC и спящий режим .....................................................................................447 Цифроаналоговый преобразователь .............................................................449 Емкостный сенсорный датчик .......................................................................449 Датчик Холла ...................................................................................................450 Итоги ...............................................................................................................451 Перечень компонентов ..................................................................................451 Приложение .....................................................................................452 Оглавление 9
Предисловие от издательства Отзывы и пОжелания Мы всегда рады отзывам наших читателей. Расскажите нам, что вы думаете об этой книге – что понравилось или, может быть, не понравилось. Отзывы важны для нас, чтобы выпускать книги, которые будут для вас максимально полезны. Вы можете написать отзыв на нашем сайте www.dmkpress.com, зайдя на страницу книги и оставив комментарий в разделе «Отзывы и рецензии». Также можно послать письмо главному редактору по адресу dmkpress@gmail.com; при этом укажите название книги в теме письма. Если вы являетесь экспертом в какой-либо области и заинтересованы в написании новой книги, заполните форму на нашем сайте по адресу http://dmkpress.com/authors/publish_book/ или напишите в издательство по адресу dmkpress@gmail.com. СпиСОк ОпечатОк Хотя мы приняли все возможные меры для того, чтобы обеспечить высокое качество наших текстов, ошибки все равно случаются. Если вы найдете ошибку в одной из наших книг – возможно, ошибку в основном тексте или программном коде, – мы будем очень благодарны, если вы сообщите нам о ней. Сделав это, вы избавите других читателей от недопонимания и поможете нам улучшить последующие издания этой книги. Если вы найдете какие-либо ошибки в коде, пожалуйста, сообщите о них главному редактору по адресу dmkpress@gmail.com, и мы исправим это в следующих тиражах. нарушение автОрСких прав Пиратство в интернете по-прежнему остается насущной проблемой. Издательство «ДМК Пресс» очень серьезно относится к вопросам защиты авторских прав и лицензирования. Если вы столкнетесь в интернете с незаконной публикацией какой-либо из наших книг, пожалуйста, пришлите нам ссылку на интернет-ресурс, чтобы мы могли применить санкции. Ссылку на подозрительные материалы можно прислать по адресу dmkpress@gmail.com. Мы высоко ценим любую помощь по защите наших авторов, благодаря которой мы можем предоставлять вам качественные материалы.