Предыдущие подборки: Подбор компонентов, Введение
Предыдущие части: Бесколлекторный мотор, Полётный контроллер
Как мы выяснили в предыдущей части, бесколлекторному мотору для работы требуется электронный регулятор оборотов.
Регуляторы нужны и коллекторным, и бесколлекторным моторам, и соответственно бывают коллекторные и бесколлекторные.
Коллекторные моторы могут вращаться просто от того, что на них подали напряжение. То есть для этого регулятор не нужен. Но так как скорость вращения в полёте постоянно меняется, то и напряжение на моторе должно постоянно меняться. Этим и занимается электронный регулятор оборотов (ESC).
Управление регулятором
С одной стороны у бесколлекторного регулятора три силовых контакта – это выходы на обмотки мотора. С другой стороны два силовых контакта – это вход напряжения от батареи.
Если подать напряжение от батареи на вход регулятора, оно не появится на выходных контактах. Регулятор коммутирует выходы с помощью транзисторов, и по умолчанию они заперты.
Кроме силовых проводов, у регулятора есть на входе два тонких провода, чёрный и белый. Чёрный это земля, а белый – сигнальный (кстати, на картинке выше китайцы их перепутали). Именно через него регулятор получает команды, с какой скоростью нужно крутить мотор.
Протокол PWM
PWM означает "Pulse Width Modulation", а по-нашему это ШИМ (Широтно-Импульсная Модуляция).
Этот протокол применяется для передачи цифровых значений в аналоговом виде, или для регулировки напряжения, что, как мы дальше увидим, одно и то же.
Для начала определим понятие импульса. Это повышение напряжения на измеряемом проводе. На графике импульс выглядел бы как вертикальный скачок вверх на сколько-то вольт. При этом неважно на сколько, главное, чтобы этот скачок был чётко распознаваем.
Теперь, если напряжение повысилось и остаётся таким одну секунду, мы говорим, что длина импульса – 1 секунда. На графике это выглядело бы как скачок вверх и затем горизонтальная линия вправо в течение 1 сек.
Длина этой линии – длина импульса. Но мы называем её шириной.
Итак, мы получили ширину импульса длиной в 1 секунду :)
Если теперь некое устройство будет измерять импульсы, засекая время с точностью до 1/1000 секунды, оно сможет определить, в какую долю секунды импульс был высокий, а в какую низкий.
Теперь мы можем слать на это устройство импульсы с разной шириной. А измеряющее устройство сможет преобразовать ширину импульса в число.
Например, если в течение секунды импульса не было вообще, это 0. Если импульс длился целую секунду, это 1000. Если импульс длился полсекунды, это 500. Если импульс длился 1/500 секунды, это 2, и т.д.
Таким образом, мы можем передавать числа от 0 до 1000.
Это лишь принцип, так как в реальности всё происходит гораздо быстрее и в более широком диапазоне.
Полётный контроллер квадрокоптера в каждую микросекунду времени снимает показания с акселерометра и гироскопа и определяет, с какой скоростью должен вращаться каждый мотор, и отправляет на каждый из регуляторов своё число через сигнальный провод, кодируя их в виде PWM. Например, на первый регулятор приходит число 1500, на второй 800, на третий 1000 и на четвёртый 1300.
Регуляторы, получив свои числа, в свою очередь генерируют соответствующие напряжения на выходных контактах, и моторы вращаются с нужной скоростью.
Калибровка регулятора
Откуда берётся соответствие между числом PWM и скоростью мотора? Как говорилось выше, скорость мотора зависит от напряжения.
То есть регулятор на самом деле не задаёт скорость мотора, он задаёт только выходное напряжение. Нижняя граница это 0, а верхняя – сколько есть у батареи. А скорость мотора получается такая, какая получается, так как у моторов разные параметры KV.
Диапазон значений PWM (например 0–2000) регулятор преобразует в диапазон напряжений (например 0–12 вольт). Это простая пропорция.
На деле же регуляторы работают не в полном диапазоне PWM. У них есть нижняя и верхняя граница, например 950 и 1855.
Эти границы не являются константой и в разных регуляторах настроены по-разному.
Предположим, что полётный контроллер выдаёт диапазон PWM от 1100 до 1900, а у регулятора он настроен как 900–2100. Тогда получится, что при максимальном значении от контроллера 1900 регулятор не выдаст полной мощности, так как верхняя граница у него 2100. И также не выдаст минимальной мощности, т.к. минимальное значение от контроллера 1100 больше чем 900.
Чтобы избежать таких ситуаций, в регуляторах применяется калибровка. То есть, управляющее устройство (в нашем случае полётный контроллер) сообщает регулятору: нижняя граница PWM будет вот такая, а верхняя вот такая. Эти значения записываются в постоянную память регулятора и после этого он может работать адекватно.
Opto
Регуляторы исторически пришли на коптеры с самолётов. В самолётах для управления закрылками, элеронами и пр. используются сервомашинки или просто серво – маленькие моторчики с рычагами.
Для питания серво нужно напряжение 5 вольт, и его надо было откуда-то брать. Оказалось удобнее всего прямо с регулятора.
Поэтому все самолётные регуляторы имели также преобразователь напряжения на 5 вольт.
В коптере такой необходимости нет, так как питание 5 вольт он берёт из других мест.
Поэтому для коптеров стали делать регуляторы без преобразователя напряжения. Они получили маркировку Opto. Исторически это название, связанное с оптической развязкой электрической цепи, которое абсолютно не отвечает заложенному смыслу. Просто запомните.
Прошивки
Хорошая новость в том, что хотя существуют разные прошивки, базовый функционал всех регуляторов одинаков и все они совместимы при использовании протокола PWM.
Прошивки опять же пришли с самолётов, а потом появились версии специально для коптеров: SimonK, BLHeli, BLHeli_S, BLHeli_32.
SimonK и BLHeli уже сильно устарели, и в продаже их трудно найти. В основном используются BLHeli_S и BLHeli_32.
Их главные отличия – наличие дополнительных аналоговых и цифровых протоколов помимо PWM, которые по идее должны обеспечивать лучшую отзывчивость и более точное управление.
Кроме того, присутствует функционал вроде управления свечением светодиода, реверса вращения моторов, активное торможение, передача телеметрии и т.д.
Но подчеркну, что квадрокоптер будет летать даже с самой древней версией регулятора.
Направление вращения мотора
Моторы квадрокоптера должны вращаться в противоположные стороны. При подключении мотора к регулятору он может начать вращаться как по часовой стрелке, так и против. Чтобы изменить его вращение на противоположное, достаточно поменять любые два моторных провода местами.
Также это можно сделать, не меняя провода местами. Прошивки BLHeli_S и BLHeli_32 позволяют менять направление вращения прямо в настройках регулятора.
Мощностные характеристики
При выборе регулятора нужно обращать внимание на то, с каким напряжением он работает, и какой максимальный ток допускает. Всё это мы уже проходили. Например, если регулятор обозначен как 2-4S 20A, это значит, что он работает с напряжениями от 2S до 4S, и выдерживает ток до 20 ампер.
Соответственно, когда мы выбираем мотор и видим, что он потребляет до 30 ампер, то сразу понимаем, что регулятора на 20 ампер будет недостаточно.
Вполне можно брать регуляторы с запасом. Скажем, если потребление мотора 20 ампер, ничто не мешает взять регулятор на 35 ампер. Или если ваша батарея 3S, ничто не мешает взять регулятор с рабочим напряжением 2-6S.
4в1
Чисто квадрокоптерная фишка – появление регуляторов 4в1. Это 4 регулятора на одной плате. Такая компоновка позволяет сократить количество проводов и паек, имеет малый размер и вес, и практически всегда подключается к полётному контроллеру через шлейф, что делает сборку более аккуратной.
Есть и минусы: Регулятор 4в1 занимает место в стеке, что не всегда желательно. Также, при выходе из строя одного из регуляторов вся плата становится бесполезной (если у вас нет навыков ремонта электроники и нужных запчастей).
Читайте дальше: