8 (800) 550-13-29
Заказать звонок
Связь с директором
  • Контакты
  • Доставка
  • Оплата
  • База знаний
  • Блог
  • Акции
  • Видео
  • О 3DiY
  • Гос. закупки
  • ...
    3DIY
    3D принтеры
    Всё для 3D принтеров
    • Электроника
      Электроника
    • Механика
      Механика
    • Экструдеры
      Экструдеры
    • Пластик
      Пластик
    • 3D принтеры
      3D принтеры
    • 3D ручки
      3D ручки
    • Сопутствующие
      Сопутствующие
    Arduino/робототехника
    • Arduino
      Arduino
    • Raspberry Pi
      Raspberry Pi
    • Orange Pi
      Orange Pi
    • Одноплатники
      Одноплатники
    • Модули (Shield)
      Модули (Shield)
    • Датчики / Сенсоры
      Датчики / Сенсоры
    • Дисплеи
      Дисплеи
    • Механика
      Механика
    • Макетные платы (Breadboard)
      Макетные платы (Breadboard)
    • Светодиоды
      Светодиоды
    • Провода и кабели
      Провода и кабели
    • Источники питания
      Источники питания
    • Радиодетали
      Радиодетали
    ЧПУ
    • Электроника
      Электроника
    • Электротехника
      Электротехника
    • Электропривод
      Электропривод
    • Направляющие
      Направляющие
    • Передачи
      Передачи
    • Механика
      Механика
    • Конструкционный профиль
      Конструкционный профиль
    • Лазерная резка и аксессуары
      Лазерная резка и аксессуары
    Услуги
    • 3D печать
    • Ремонт 3D принтеров
    Ещё
      3DIY
      3D принтеры
      Каталог
      • 3D принтеры и комплектующие
        3D принтеры и комплектующие
        • Электроника
        • Механика
        • Экструдеры
        • Пластик
        • 3D принтеры
        • 3D ручки
        • Сопутствующие
      • Arduino и робототехника
        Arduino и робототехника
        • Arduino
        • Raspberry Pi
        • Orange Pi
        • Одноплатники
        • Модули (Shield)
        • Датчики / Сенсоры
        • Дисплеи
        • Механика
        • Макетные платы (Breadboard)
        • Светодиоды
        • Провода и кабели
        • Источники питания
        • Радиодетали
      • ЧПУ комплектующие
        ЧПУ комплектующие
        • Электроника
        • Электротехника
        • Электропривод
        • Направляющие
        • Передачи
        • Механика
        • Конструкционный профиль
        • Лазерная резка и аксессуары
      Услуги
      • 3D печать
      • Ремонт 3D принтеров
      Блог
      • 3D-печать
      • 3D-принтеры
      База знаний
      • Датчики
      • Модули
      • Платы
      • 3D-принтеры
      • Дисплеи
      • Механика
      • Сопутствующие
      • ЧПУ
      • Проекты
      • Компоненты
      Информация
      • Акции и Скидки
      • Условия доставки
      • Условия оплаты
      • Сashback
      • О нас
        • Наши партнеры
        • Наши клиенты
        • Вакансии
      • Гос. закупки
      Контакты
      • Как до нас добраться
      Ещё
        3DIY
        • 3D принтеры
        • Каталог
          • Назад
          • Каталог
          • 3D принтеры и комплектующие
            • Назад
            • 3D принтеры и комплектующие
            • Электроника
            • Механика
            • Экструдеры
            • Пластик
            • 3D принтеры
            • 3D ручки
            • Сопутствующие
          • Arduino и робототехника
            • Назад
            • Arduino и робототехника
            • Arduino
            • Raspberry Pi
            • Orange Pi
            • Одноплатники
            • Модули (Shield)
            • Датчики / Сенсоры
            • Дисплеи
            • Механика
            • Макетные платы (Breadboard)
            • Светодиоды
            • Провода и кабели
            • Источники питания
            • Радиодетали
          • ЧПУ комплектующие
            • Назад
            • ЧПУ комплектующие
            • Электроника
            • Электротехника
            • Электропривод
            • Направляющие
            • Передачи
            • Механика
            • Конструкционный профиль
            • Лазерная резка и аксессуары
        • Услуги
          • Назад
          • Услуги
          • 3D печать
          • Ремонт 3D принтеров
        • Блог
          • Назад
          • Блог
          • 3D-печать
          • 3D-принтеры
        • База знаний
          • Назад
          • База знаний
          • Датчики
          • Модули
          • Платы
          • 3D-принтеры
          • Дисплеи
          • Механика
          • Сопутствующие
          • ЧПУ
          • Проекты
          • Компоненты
        • Информация
          • Назад
          • Информация
          • Акции и Скидки
          • Условия доставки
          • Условия оплаты
          • Сashback
          • О нас
            • Назад
            • О нас
            • Наши партнеры
            • Наши клиенты
            • Вакансии
          • Гос. закупки
        • Контакты
          • Назад
          • Контакты
          • Как до нас добраться
        • 8 (800) 550-13-29
        Контактная информация
        Москва, Духовской пер. 17с3   |  Пн-Пт 11.00-19.00 | Сб-Вс Выходные
        info@3d-diy.ru
        • Facebook
        • Вконтакте
        • Instagram
        • YouTube

        Wi-Fi модуль ESP-32

        База знаний
        -
        Модули
        -
        Беспроводная связь
        -Wi-Fi модуль ESP-32
        Поделиться
        • Wi-Fi модуль ESP-32

        Содержание

        • Обзор
        • Установка ПО
        • Пример использования
        • FAQ

        Обзор беспроводного Wi-Fi модуля ESP-32

        WiFi модули ESP8266 за время своего существования стали поистине народными и получили широкое распространение в любительской разработке устройств Интернета вещей. Но жизнь не стоит на месте и компания-разработчик Espressif выпускает новый микроконтроллер – ESP32. ESP32 получил значительный прирост в производительности, по сравнению c ESP8266. Вычислительная мощность возросла в четыре раза. У ESP32 есть два ядра, каждый из которых работает на частоте 160 МГц (ESP8266 имеет 1 ядро, работающее на частоте 80 МГц). Контроллер имеет 520 Кб оперативной памяти, 448 Кб flash-памяти. Поддерживает не только Wi-Fi (802.11n с максимальной скоростью 150 Мбит в секунду), но и Bluetooth 4.2 BR/EDR и Low Energy.

        Основным недостатком плат ESP8266 было очень малое количество контактов, в ESP32 этот недостаток устранен, выводов гораздо больше и они многофункциональные, блок ввода-вывода имеет специальный мультиплексор, который позволяет назначать различные функции на один вывод микроконтроллера. Значительно увеличено количество аналоговых входов (18 АЦП (12-бит) и 2 ЦАП (8-бит)), поддержка PWM на всех контактах, 10 портов в режиме сенсорных кнопок. ESP32 имеет три UART, два I2C, четыре SPI, два I2S. Также имеется инфракрасный контроллер (прием-передача), шина CAN 2.0. Еще есть датчик температуры и датчик Холла. Для шифрования при передаче данных по WiFi в ESP32 имеются криптографические модули AES и SHA.

        wifi-module-esp-32-01.jpg

        Рисунок 1. Блок-схема периферии ESP32

        Для удобной работы с микроконтроллером ESP32 был выпущен модуль WROOM-32 (рис. 2, 3), и теперь появилось множество отладочных плат на этом модуле, например FireBeetle от DFRobot (см. рис. 4, 5).

        wifi-module-esp-32-02.jpg wifi-module-esp-32-03.jpg

        Рисунок 2,3. Модуль ESP-WROOM32

        wifi-module-esp-32-04.jpg wifi-module-esp-32-05.jpg

        Рисунок 4,5. Отладочная плата FireBeetle от DFRobot на ESP-WROOM32

        Немаловажный вопрос в свете использования модулей для устройств Интернета вещей – энергопотребление. Питание модуля Максимальный ток потребления в режиме передачи WiFi или Bluetooth 160-260 мА, без включенных WiFi или Bluetooth – 20 мА, в спящем режиме – 10 мкА.

        Установка программного обеспечения

        Изначально модули ESP32, как и ESP8266,  поставляется с прошивкой, позволяющей работать с этим микроконтроллером с помощью AT-команд. Но данный метод нас не устраивает. Будем программировать нашу плату в Arduino IDE. Для этого скачиваем ESP32 CORE для Arduino IDE с сайта https://github.com/espressif/arduino-esp32 (zip-архив) и распаковываем его в папку C:\Program Files\Arduino\hardware\espressif. Заходим в Arduino IDE и видим, что в панели инструментов появились платы ESP32 (рис. 6).

        wifi-module-esp-32-06.jpg

        Рисунок 6. Плата ESP32 в списке плат в Arduino IDE

        Но в списке портов платы нет. Необходимо установить драйвер. Заходим по ссылке https://git.oschina.net/dfrobot/FireBeetle-ESP32/raw/master/FireBeetle-ESP32.inf и копируем содержимое страницы в файл FireBeetle-ESP32.inf. Затем в Диспетчере устройств (Прочие устройства) правой кнопкой выбираем плату FireBeetle-ESP32 и нажимаем Обновить драйверы à Выполнить поиск драйверов на этом компьютере и указываем папку, где сохранен файл FireBeetle-ESP32.inf. Подтверждаем установку и плата FireBeetle-ESP32 появляется в списке COM-портов (рис. 7).

        wifi-module-esp-32-07.jpg

        Рисунок 7. Плата FireBeetle-ESP32 в Диспетчере устройств (драйвер установлен).

        Теперь и в Arduino IDE появляется данный порт. Плата готова к загрузке скетчей.

        И список библиотек, поддерживаемых на данный момент (рис. 8).

        wifi-module-esp-32-08.jpg

        Рисунок 8. Список библиотек для ESP32 в Arduino IDE


        Пример использования wifi модуля ESP8266

        Попробуем подключить плату ESP32 к WiFi точке доступа. Загружаем на плату скетч из листинга 1.


        Листинг 1

        #include 
        
         
        
        // выставите свои данные для точки доступа
        
        const char* passwifi = "************";
        
        const char* ssidwifi     = "*********";
        
         
        
         
        
        void setup()
        
        {
        
            Serial.begin(115200);
        
            delay(10);
        
         
        
            // Коннект к точке доступа
        
            Serial.print("Connecting to ");
        
            Serial.println(ssidwifi);
        
         
        
            WiFi.begin(ssidwifi, passwifi);
        
         
        
            while (WiFi.status() != WL_CONNECTED) {
        
                Serial.print(".");
        
                delay(1000);
        
            }
        
         
        
            Serial.print("WiFi connect ok!");
        
            Serial.print("Your IP address is ");
        
            Serial.println(WiFi.localIP());
        
        }
        
         
         
        
        void loop(){
        
            ;
        
        }

        Но компиляция не проходит (см. рис. 9)!!! Не находит xtensa-esp32elf.

        wifi-module-esp-32-09.jpg

        Рисунок 9. Ошибка компиляции скетча для ESP32

        Заходим в папку Files\Arduino\hardware\espressif\esp32\tools и запускаем файл get.exe(рис. 10).

        wifi-module-esp-32-10.jpg

        Рисунок 10. Загрузка и установка xtensa-esp32-elf

        Теперь компиляция и загрузка скетча на плату проходит успешно (рис. 11).

        wifi-module-esp-32-11.jpg

        Рисунок 11. Компиляция и загрузка скетча на плату ESP32

        Открываем монитор последовательного порта и видим, что подключение платы ESP32 к сети WiFi успешно (рис. 12).

        wifi-module-esp-32-12.jpg

        Рисунок 12. Работа скетча подключения платы ESP32 к WiFi


        Часто задаваемые вопросы FAQ


           1. В Arduino IDE не видна плата ESP32
        • Установите ESP32 CORE для Arduino IDE согласно инструкции
           2. В Arduino IDE в списке портов нет подключенной платы ESP32
        • Установите драйвер для вашей платы ESP32
           3. Компиляция скетча проходит с ошибкой "Cannot run program…"
        • Запустите файл get.exe в папке Files\Arduino\hardware\espressif\esp32\tools для скачивания и установки необходимого программного обеспечения.


        Назад к списку Следующий проект
        Компания
        О компании
        Политика
        Услуги
        Партнеры
        Клиенты
        Информация
        Акции и скидки
        Условия оплаты
        Условия доставки
        Гарантия на товар
        Кэшбэк
        Как купить
        Вопрос-ответ
        Блог
        База знаний
        Производители
        Будьте всегда в курсе!
        Узнавайте о скидках и акциях первым
        Оставайтесь на связи
        • Вконтакте
        • Facebook
        • Instagram
        • YouTube
        Наши контакты
        8 (800) 550-13-29
        info@3d-diy.ru
        Москва, Духовской пер. 17с3   |  Пн-Пт 11.00-19.00 | Сб-Вс Выходные
        2021 © 3DiY (Тридиай) - интернет-магазин комплектующих для 3D принтеров, ЧПУ станков и робототехники