Введение
Ключевая проблема при управлении BLDC/PMSM — «рывки» (jerk, cogging) при запуске, реверсе и низких скоростях. Причины — неточная информация о фазовом угле ротора, задержки коммутации и некорректные настройки регуляторов. Цель статьи: технически сравнить датчики Холла и энкодеры и дать практический план действий для устранения рывков.
Краткое сравнение: Холл vs энкодер
- Датчики Холла
- Простая дискретная информация (обычно 3 сигнала). Хороши для простой комутации и стартов при невысокой точности.
- Плюсы: низкая стоимость, простая пайка/подключение, устойчивость к вибрации.
- Минусы: низкая угловая разрешающая способность, скачкообразная информация на переходах → рывки без интерполяции.
- Энкодер (инкрементальный/абсолютный)
- Даёт высокоточное угловое положение (от десятков до десятков тысяч CPR). Позволяет гладкий FOC на низких скоростях.
- Плюсы: точное позиционирование, поддержка анти-рывковых алгоритмов (таблицы против кручения, коррекция фазового сдвига).
- Минусы: выше цена, сложнее механическая интеграция, требуется совместимый интерфейс (SPI/SSI/ABZ/CAN).
Почему возникают рывки — технически
1. Неточная фаза: неправильный угол коммутации между током и магнитным потоком (коммутационный оффсет).
2. Дискретность Холлов: переходы ±60° электрических вызывают скачки момента.
3. Низкая частота обновления/задержки контроллера и ШИМ: сдвиг фазы при увеличенной задержке.
4. Неправильные PID/PI настройки: слишком узкая/широкая полоса регулятора скорости/тока.
5. Неправильное число пар полюсов, направление или инверсия фаз/датчиков.
Практическая методика: проверка и настройка (шаги)
1. Аппаратная проверка
- Проверьте правильность подключения фаз моторa и датчиков (Hall A/B/C; encoder A/B/Z). Ошибки порядка/фазы — частая причина.
- Измерьте сигнал Холлов осциллографом: должны быть четкие прямоугольные импульсы без дрейфа уровня.
- Для энкодера: проверьте стабильность сигнала на холостом ходу и при вращении.
2. Базовая настройка контроллера
- Установите корректное число пар полюсов (pole pairs). Ошибка = некорректная синхронизация фаз.
- Задайте разрешение энкодера (CPR) и направление в прошивке.
- Установите правильную инверсию фаз и датчиков: если при подаче тока мотор идёт не в том направлении — поменяйте порядок фаз или инвертируйте сигналы.
3. Настройка старта/калибровки
- Используйте фазовую калибровку: удержание статического тока в известной фазе и чтение нулевого угла (или индексной метки энкодера).
- Если доступен энкодер — используйте индекс Z для точной привязки угла.
- Для Холлов: выполните автоматическую подстройку смещения (hall offset) в контроллере или вручную выставьте угловой сдвиг (обычно в градусах электрических).
4. Настройка FOC/регуляторов
- Current loop bandwidth: 100–800 Hz в зависимости от силовой электроники; начинайте с ~200–400 Hz.
- Speed loop bandwidth: 5–50 Hz; слишком высокая полоса вызывает нестабильность и рывки.
- Применяйте фильтрацию измерения скорости: low-pass с fc = 5–20 Hz снижает реакцию на дискретные скачки.
- Если контроллер поддерживает PLL/observer (например, датчик+наблюдатель), включите fusion mode — это уменьшит влияние дискретных Холлов.
5. Компенсация задержек и опережение фазы
- Добавьте фазовый опережающий сдвиг (advance) 0–10° электрических для компенсации задержек ШИМ/инвертора. Подберите экспериментально.
- Для энкодера используйте коррекцию угла в прошивке (commutation offset).
6. Интерполяция Холлов и анти-рывковые меры
- Если энкодер недоступен, включите в контроллер функцию интерполяции по Холлам (если есть). Она аппроксимирует угол между переходами.
- Применяйте anti-cogging (таблица компенсации) при наличии энкодера — записать карту крутящего момента и применять в реальном времени.
Практические рекомендации по выбору
- Если задача — экономичный привод, невысокая точность, работа на средних/высоких скоростях: Холлы + FOC с интерполяцией.
- Если нужна точность на низкой скорости и запуск без рывков: энкодер (минимум 1024–2048 CPR для роторов с высокой парой полюсов; для высокоточных применений 4096+ CPR).
- Для электромобилей, скутеров и систем с рекуперацией рекомендуется комбинировать: Холлы для дешёвого позиционирования + энкодер для точной регулировки/калибровки.
Контроллеры и конкретные настройки
- Votol/Fardriver/Kelly: у большинства есть опции hall-offset, encoder-cpr, current/speed PID. Рекомендуется смотреть инструкцию конкретного контроллера и начинать с штатных профилей. Параметры и примеры настройки доступны в руководстве по Votol: https://dellerev.com/2026/01/nastroyka-votol-toki-rekuperaciya-start-zashchita-temperatury/
- FOC-алгоритмы: при переходе от холлов к энкодеру вы можете уменьшить полосу скорости и расширить current-loop для более мягкой реакции. Подробнее о принципах FOC и плавности — https://dellerev.com/2026/01/foc-upravlenie-edet-myagche/
- Выбор энкодера и интеграция: рекомендации по типам энкодеров и как они влияют на рывки — https://dellerev.com/2026/01/datchiki-holla-encoder-vybor-ryvkov/
Контрольный чек-лист (быстро)
1. Проверьте механическую посадку энкодера/холлов.
2. Подтвердите правильный порядок фаз и направление.
3. Настройте pole pairs и CPR в контроллере.
4. Проведите калибровку нулевого угла (статор-ротор).
5. Настройте current loop → speed loop по рекомендациям.
6. Включите фильтры скорости и, при необходимости, PLL/observer.
7. Подберите фазовое опережение и anti-cogging, если доступно.
Примеры типичных значений для начала
- Pole pairs: по спецификации мотора.
- Encoder CPR: минимум 1024–2048 для низких скоростей; 4096+ для точного позиционирования.
- Current loop BW: 200–400 Hz.
- Speed loop BW: 10–30 Hz.
- Velocity LPF fc: 5–15 Hz.
- Phase advance: 0–10° электрических.
Заключение
Выбор между датчиками Холла и энкодером определяется требуемой точностью на низких скоростях и бюджетом. Энкодер даёт наилучший результат против рывков, но корректная настройка контроллера (pole pairs, PID, фильтры, phase offset) критична в любом случае. Для практических примеров настройки контроллеров и подборов моторов смотрите материалы по Votol и FOC на сайте: https://dellerev.com/2026/01/nastroyka-votol-toki-rekuperaciya-start-zashchita-temperatury/, https://dellerev.com/2026/01/foc-upravlenie-edet-myagche/, https://dellerev.com/2026/01/datchiki-holla-encoder-vybor-ryvkov/.
Читайте также
- https://dellerev.com/2026/01/nastroyka-votol-toki-rekuperaciya-start-zashchita-temperatury/
- https://dellerev.com/2026/01/datchiki-holla-encoder-vybor-ryvkov/
- https://dellerev.com/2026/01/podbor-elektromotora-qs-motor/

Для простых стартов и при вибрации Холл‑сенсоры дешевле и устойчивы, но для плавности и точного устранения рывков лучше энкодер и корректная настройка коммутации/регуляторов. Практический план — калибровка угла, минимизация задержек и PID
Полезное и прагматичное сравнение: Холлы — для простых недорогих схем, энкодеры — для точного управления; предложенный план по настройке коммутации и регуляторов действительно поможет убрать
Холлы — дешёвый и надёжный вариант для простых приводов, энкодер нужен там, где критична плавность и точный угол ротора. Для устранения рывков часто достаточно правильной коммутации, компенсации задержек и тонкой настройки