4.3.8. Управление питанием мотора

4.3.8.1. Снижение тока потребления

Для уменьшения энергопотребления шагового двигателя в режиме ожидания контроллер позволяет задавать уровень потребляемого тока в состоянии остановки ниже номинального значения. Этот режим по умолчанию активирован. Он повсеместно используется для снижения нагрева шагового двигателя в режиме удержания при сохранении точности нахождения в заданной позиции. Уровень тока удержания задаётся в процентах от номинального уровня тока в обмотках. Также определяется время в миллисекундах, через которое ток будет снижен. Опцию снижения тока можно отключить специальным флагом. Для настройки функции снижения тока удержания смотрите функцию set_power_settings (см. раздел Руководство по программированию) или вкладку настроек XiLab - Настройка параметров энергопотребления. Установка номинального тока шагового двигателя осуществляется командой set_engine_settings (см. Руководство по программированию или раздел Настройка кинематики движения (Шаговый двигатель)).

Разумным значением уровня сниженного тока удержания является 40-70%. Это снижает энергопотребление в 2-4 раза, а сила удержания обычно остаётся достаточной. Время, через которое ток снижается разумно выбирать в диапазоне 50-500 мс. Это время окончания низкочастотных колебаний механической системы, которые могут сбить позицию удержания в некоторых системах.

4.3.8.2. Отключение питания мотора

Также для уменьшения энергопотребления шагового двигателя существует режим отключения питания мотора по таймеру. Это необходимо в основном для предотвращения траты энергии на удержание позиции, когда работа с установкой закончена и никаких движений не происходит долгое время. Этот режим по умолчанию активирован, но может быть отключен пользователем. Время от остановки до отключения настраивается в секундах. Разумным временем является 3600 секунд (один час). Для настройки функции отключения питания мотора смотрите функцию set_power_settings (см. раздел Руководство по программированию) или вкладку настроек XiLab - Настройка параметров энергопотребления.

4.3.8.3. Специфика расчёта временных задержек

Все временные задержки работают следующим образом: при каждом переходе в состояние остановки двигателя запоминается время с точностью до миллисекунды. Далее, при достижении заданных пользователем таймаутов и включенности функций PowerOff/CurrentReduce происходит отключение питания двигателя или снижение тока в обмотках. Все настройки можно менять онлайн. Например, если увеличить время таймаута PowerOff после того, как он уже случился, то обмотки запитаются и функция PowerOff сработает снова по достижению таймаута от момента остановки двигателя. То же самое касается включения и отключения флагов использования режимов PowerOff/CurrentReduce. Отсчёт таймаутов останавливается и функции PowerOff/CurrentReduce отменяются при любом начале движения.

4.3.8.4. Функция Jerk free

Иногда необходимо плавно менять ток в обмотках двигателя для устранения вибраций механической системы. Для этого в контроллере предусмотрена опция Jerk free, где можно задать скорость выхода тока через обмотки с нуля на номинальное значение с точностью до миллисекунды. Опция включается соответствующим флагом. При этом все изменения тока стабилизации или отключения обмоток будут проходить с предварительным плавным набором или сбросом тока удержания. Например, если установлена скорость набора тока 100 мс и происходит событие снижение тока удержания до \(50\%\), то он будет снижен плавно за 50 мс (а не 100 мс, ведь 100 мс нужно чтобы полностью сбросить ток до нуля). Также за 50 мс ток будет снова набран до номинального при новом движении. Для настройки функции Jerk free смотрите функцию set_power_settings (см. раздел Руководство по программированию) или вкладку настроек XiLab - Настройка кинематики движения (Шаговый двигатель).

Функция плавного набора тока работает при любом изменении амплитуды тока в обмотках, например при смене номинального тока удержания. При этом скорость увеличения или уменьшения тока рассчитывается на основе максимального из введённых токов удержания: старого или нового. Если обмотки нужно отключить, то ток снижается до нуля, а только затем силовые выходные цепи контроллера обесточиваются. Если обмотки нужно запитать номинальным током, то они запитываются нулевым током и далее ток растёт до номинального.

Существуют исключения, когда ток мгновенно сбрасывается до нуля и обмотки отключаются, даже когда функция Jerk free включена. Это события опасности и попадание в состояние Alarm (см. Критические параметры), а также моменты перезагрузки контроллера для обновления программного обеспечения. Все эти события редки и не должны происходить во время работы с позиционером.

Разумным значение времени Jerk free будет 50-200 мс, так как это приведёт лишь к низкоэнергетичным вибрациям на частоте 3-10 Гц, которые будут значительно меньше вибраций от бытовых шумов (шагов, сквозняка). Установка большого времени Jerk free и функции снижения тока для экономии электроэнергии и снижения нагрева мотора приведёт к постоянным задержкам для сброса и набора тока. Поэтому время Jerk free не стоит делать большим.