
Оглавление:
- Шаг 1: демонстрация
- Шаг 2. Используемые ресурсы
- Шаг 3: Wifi LoRa 32- Распиновка
- Шаг 4: ESC (электронная регулировка скорости)
- Шаг 5: Электронная регулировка скорости ESC (ESC)
- Шаг 6: управление серводвигателем с ШИМ
- Шаг 7: Аналоговый захват
- Шаг 8: Схема - Подключения
- Шаг 9: Исходный код
- Шаг 10: файлы
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:05



Сегодня мы обсуждаем двигатели для дронов, которые часто называют «бесщеточными». Они широко используются в авиамоделировании, в основном в дронах, из-за их мощности и высокой скорости вращения. Мы узнаем об управлении бесщеточным двигателем с помощью ESC и ESP32, выполнении аналогового срабатывания ESC с помощью внутреннего контроллера LED_PWM и использовании потенциометра для изменения скорости двигателя.
Шаг 1: демонстрация
Шаг 2. Используемые ресурсы

- Перемычки для подключения
- Wi-Fi LoRa 32
- ESC-30A
- Бесщеточный двигатель A2212 / 13t
- USB-кабель
- Потенциометр для управления
- Протоборд
- Источник питания
Шаг 3: Wifi LoRa 32- Распиновка

Шаг 4: ESC (электронная регулировка скорости)


- Электронный регулятор скорости
- Электронная схема для управления скоростью электродвигателя.
- Управляется стандартным сервоуправлением с ШИМ 50 Гц.
- Он изменяет скорость переключения сети полевых транзисторов (FET). Регулируя частоту переключения транзисторов, скорость двигателя изменяется. Скорость двигателя изменяется, регулируя синхронизацию импульсов тока, подаваемых на различные обмотки двигателя.
- Характеристики:
Выходной ток: 30 А непрерывный, 40 А в течение 10 секунд
Шаг 5: Электронная регулировка скорости ESC (ESC)

Шаг 6: управление серводвигателем с ШИМ

Мы создадим сервопривод PWM для воздействия на ввод данных ESC, направив канал 0 LED_PWM для GPIO13, и будем использовать потенциометр для управления модуляцией.
Для захвата мы будем использовать потенциометр 10k в качестве делителя напряжения. Захват будет производиться на канале ADC2_5, доступном через GPIO12.
Шаг 7: Аналоговый захват


Аналого-цифровое преобразование
Преобразуем значения AD в ШИМ.
ШИМ сервопривода составляет 50 Гц, поэтому период импульса составляет 1/50 = 0,02 секунды или 20 миллисекунд.
Нам нужно действовать как минимум за 1–2 миллисекунды.
Когда ШИМ находится на уровне 4095, ширина импульса составляет 20 миллисекунд, что означает, что мы должны достичь максимума на 4095/10, чтобы достичь 2 миллисекунд, поэтому ШИМ должен получить 410 *.
И, по крайней мере, через 1 миллисекунду, следовательно, 409/2 (или 4095/20), ШИМ должен получить 205 *.
* Значения должны быть целыми числами.
Шаг 8: Схема - Подключения

Шаг 9: Исходный код
Заголовок
#include // Необходимое условие для Arduino 1.6.5 и последующее # include "SSD1306.h" // или сообщение #include "SSD1306Wire.h" // OLED_SDA - GPIO4 // OLED_SCL - GPIO15 // OLED_RST - GPIO16 #define SDA 4 #define SCL 15 #define RST 16 Дисплей SSD1306 (0x3c, SDA, SCL, RST); // Установка и установка изображения для объекта "display"
Переменные
const int freq = 50; const int canal_A = 0; const int resolucao = 12; const int pin_Atuacao_A = 13; const int Leitura_A = 12; int Potencia = 0; int leitura = 0; int ciclo_A = 0;
Настраивать
void setup () {pinMode (pin_Atuacao_A, ВЫХОД); ledcSetup (canal_A, freq, resolucao); ledcAttachPin (pin_Atuacao_A, canal_A); ledcWrite (canal_A, ciclo_A); display.init (); display.flipScreenVertical (); // Выполнить вертикальное отображение display.clear (); // установить или изменить настройки display.setTextAlignment (TEXT_ALIGN_LEFT); // установить шрифт для Arial 16 display.setFont (ArialMT_Plain_16); }
Петля
void loop () {leitura = analogRead (Leitura_A); ciclo_A = карта (лейтура, 0, 4095, 205, 410); ledcWrite (canal_A, ciclo_A); Potencia = map (leitura, 0, 4095, 0, 100); display.clear (); // ограничить буфер do display display.drawString (0, 0, String ("AD:")); display.drawString (32, 0, String (leitura)); display.drawString (0, 18, String ("ШИМ:")); display.drawString (48, 18, String (ciclo_A)); display.drawString (0, 36, String ("Potência:")); display.drawString (72, 36, String (потенция)); display.drawString (98, 36, String ("%")); display.display (); // почти нет отображения}
Шаг 10: файлы
Скачайте файлы
Я НЕТ
Рекомендуемые:
Светодиод, управляемый через Интернет, с использованием веб-сервера на базе ESP32: 10 шагов

Светодиод, управляемый через Интернет с использованием веб-сервера на основе ESP32: обзор проекта В этом примере мы выясним, как настроить веб-сервер на основе ESP32 для управления состоянием светодиода, доступного из любой точки мира. Для этого проекта вам понадобится компьютер Mac, но вы можете запустить это программное обеспечение даже на i
ESP32 с модулем E32-433T LoRa Учебное пособие - Интерфейс LoRa Arduino: 8 шагов

ESP32 с модулем E32-433T LoRa Учебное пособие | Интерфейс LoRa Arduino: Привет, ребята, как дела! Акарш здесь из CETech. Этот мой проект связывает модуль E32 LoRa от eByte, который представляет собой модуль приемопередатчика высокой мощности 1 Вт, с ESP32 с использованием Arduino IDE. Мы поняли работу E32 в нашем последнем уроке
Управление бытовой техникой через LoRa - LoRa в домашней автоматизации - Пульт дистанционного управления LoRa: 8 шагов

Управление бытовой техникой через LoRa | LoRa в домашней автоматизации | LoRa Remote Control: управляйте и автоматизируйте свои электроприборы с больших расстояний (километров) без подключения к Интернету. Это возможно через LoRa! Эй, как дела, ребята? Акарш здесь от CETech. Эта печатная плата также имеет OLED-дисплей и 3 реле, которые
Как создать двумерный персонаж с помощью контроллера символов в Unreal Engine 4 с помощью Visual Script для ПК: 11 шагов

Как создать 2-мерный персонаж с помощью контроллера символов в Unreal Engine 4 с помощью Visual Script для ПК: Как создать 2-мерный персонаж с контроллером символов в Unreal Engine 4, используя визуальный скрипт для ПК Привет, я Джордан Стелц. Я занимаюсь разработкой видеоигр с 15 лет. В этом уроке вы узнаете, как создать базового персонажа с помощью
Катящийся робот с ESP32 Thing и драйвером TB6612FNG, управляемый Android через BLE: 11 шагов

Катящийся робот с ESP32 Thing и драйвером TB6612FNG, управляемый Android через BLE: Всем привет Это мое первое руководство. Катящийся робот (по прозвищу Райдо - от руны, связанной с движением), основанный на ESP32 Thing, TB6612 FNG и BLE. Одна часть, которая может показаться странной, заключается в том, что фотографии не из процесса изготовления