Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
main:upgkits:wifibotuart [2020/06/12 13:58] smartadmin [Дополнительные модули] |
main:upgkits:wifibotuart [2025/01/21 14:35] (текущий) |
||
---|---|---|---|
Строка 5: | Строка 5: | ||
++++ В чём отличия от прошлого урока? | | ++++ В чём отличия от прошлого урока? | | ||
- | В уроке [[main:upgkits:wifibot|]] мы заметили неудобство связанное с медленным откликом интернет-страницы. Это связано в том числе с использованием программной эмуляции Serial соединения, ведь скорость обмена данными при таком соединении сильно ограничена. В отличие от прошлого урока, где сервером выступал контроллер Smart UNO, в данном уроке Web-сервером будет сам Wi-Fi модуль. Ведь он имеет свой контроллер на плате (под металлическим корпусом), который как раз и возьмёт на себя функции отображения интернет-страницы и обработки http-запросов. Это и позволит разгрузить контролер UNO, и выполнять запросы быстро. Результат запросов в свою очередь будет передан контроллеру UNO, и тот будет управлять движением робота. | + | В уроке [[main:upgkits:wifibot|]] мы заметили неудобство связанное с медленным откликом интернет-страницы. Это связано в том числе с использованием программной эмуляции Serial соединения, ведь скорость обмена данными при таком соединении сильно ограничена. В отличие от прошлого урока, где сервером выступал контроллер Smart UNO, в данном уроке Web-сервером будет сам Wi-Fi модуль. Ведь он имеет свой контроллер на плате (под металлическим корпусом), который как раз и возьмёт на себя функции отображения интернет-страницы и обработки https-запросов. Это и позволит разгрузить контролер UNO, и выполнять запросы быстро. Результат запросов в свою очередь будет передан контроллеру UNO, и тот будет управлять движением робота. |
В свою очередь, есть и небольшое неудобство. Так как в прошлом уроке мы использовали эмуляцию Serial - соединения, то мы могли выводить отладочную информацию. То есть модуль был подключен к контроллеру и одновременно к компьютеру. В этом уроке, мы будем программировать Wi-Fi модуль и контроллер по очереди. И после их подключения друг к другу, монитор Serial-порта никакой информации не выведет. | В свою очередь, есть и небольшое неудобство. Так как в прошлом уроке мы использовали эмуляцию Serial - соединения, то мы могли выводить отладочную информацию. То есть модуль был подключен к контроллеру и одновременно к компьютеру. В этом уроке, мы будем программировать Wi-Fi модуль и контроллер по очереди. И после их подключения друг к другу, монитор Serial-порта никакой информации не выведет. | ||
Строка 14: | Строка 14: | ||
^ Что нужно ^ Кол-во, шт ^ | ^ Что нужно ^ Кол-во, шт ^ | ||
- | | [[https://smartelements.ru/collection/svyaz/product/wifi-modul-esp-12|Wi-Fi модуль ESP-12 (5 В)]] | 1 | | + | | [[httpss://smartelements.ru/collection/svyaz/product/wifi-modul-esp-12|Wi-Fi модуль ESP-12 (5 В)]] | 1 | |
===== Библиотеки ===== | ===== Библиотеки ===== | ||
- | * [[http://files.smartelements.ru/know_libs/robotSE.zip|Библиотека robotSE (для робота)]] | + | * [[https://files.smartelements.ru/know_libs/robotSE.zip|Библиотека robotSE (для робота)]] |
Строка 28: | Строка 28: | ||
Установите пакет для работы с ESP8266, он нужен для работы с платами из семейства ESP8266 (wi-fi модулями) прямо из Arduino IDE. Для этого откройте Arduino IDE, и перейдите в меню **Файл -> Настройки**. В поле **"Дополнительные ссылки для менеджера плат"** добавьте строку: | Установите пакет для работы с ESP8266, он нужен для работы с платами из семейства ESP8266 (wi-fi модулями) прямо из Arduino IDE. Для этого откройте Arduino IDE, и перейдите в меню **Файл -> Настройки**. В поле **"Дополнительные ссылки для менеджера плат"** добавьте строку: | ||
<file> | <file> | ||
- | https://arduino.esp8266.com/stable/package_esp8266com_index.json | + | httpss://arduino.esp8266.com/stable/package_esp8266com_index.json |
</file> | </file> | ||
Строка 121: | Строка 121: | ||
Serial.println("F"); //отправка команды в Serial-порт | Serial.println("F"); //отправка команды в Serial-порт | ||
}); | }); | ||
- | server.on("/L", [](){ //обработка запроса /F | + | server.on("/L", [](){ //обработка запроса /L |
server.send(200, "text/html", webPage); //отправка ответа "ОК" и веб-страницы | server.send(200, "text/html", webPage); //отправка ответа "ОК" и веб-страницы | ||
Serial.println("L"); //отправка команды в Serial-порт | Serial.println("L"); //отправка команды в Serial-порт | ||
Строка 138: | Строка 138: | ||
}); | }); | ||
server.begin(); //запуск сервера | server.begin(); //запуск сервера | ||
- | Serial.println("HTTP server started"); //вывод отладочной информации | + | Serial.println("https server started"); //вывод отладочной информации |
} | } | ||
Строка 202: | Строка 202: | ||
</file> | </file> | ||
- | //Примечание: Из-за особенностей загрузки через плату UNO, при загрузке может не сразу находиться COM порт, или долго выполняться подключение. Попробуйте отключить кабель USB и подключить его снова, или попробовать другой порт. (Не забываете после этого переводить модуль в режим загрузки). Если у Вас не получается загрузить скетч на Wi-Fi модуль через контроллер UNO, вы всегда можете воспользоваться быстрым и надёжным способом: [[https://smartelements.ru/collection/moduli/product/usb-uart-bridge|Модуль USB-UART на базе чипа CP2102]]// | + | //Примечание: Из-за особенностей загрузки через плату UNO, при загрузке может не сразу находиться COM порт, или долго выполняться подключение. Попробуйте отключить кабель USB и подключить его снова, или попробовать другой порт. (Не забываете после этого переводить модуль в режим загрузки). Если у Вас не получается загрузить скетч на Wi-Fi модуль через контроллер UNO, вы всегда можете воспользоваться быстрым и надёжным способом: [[httpss://smartelements.ru/collection/moduli/product/usb-uart-bridge|Модуль USB-UART на базе чипа CP2102]]// |
==== Шаг 5. Определение IP-адреса ==== | ==== Шаг 5. Определение IP-адреса ==== | ||
Строка 216: | Строка 216: | ||
Connected to SmartElements | Connected to SmartElements | ||
IP address: 192.168.1.182 | IP address: 192.168.1.182 | ||
- | HTTP server started | + | https server started |
</file> | </file> | ||
Строка 228: | Строка 228: | ||
==== Шаг 7. Загрузка скетча управления роботом на контроллер ==== | ==== Шаг 7. Загрузка скетча управления роботом на контроллер ==== | ||
Настало время загрузить скетч для управления роботом. | Настало время загрузить скетч для управления роботом. | ||
+ | |||
+ | <WRAP center round important 80%> | ||
+ | Перед загрузкой скетча на контроллер, отсоедините Wi-Fi модуль от контроллера! (Если Вы забудете это сделать, при загрузке скетча будет появляться ошибка, и скетч загружен не будет! | ||
+ | </WRAP> | ||
<file Arduino> | <file Arduino> |