4.2.5. Компенсация люфта

В любом механическом устройстве, например редукторе или червячной передаче, существует люфт, наличие которого приводит к тому, что при подходе к одной и той же позиции с разных сторон реальное положение позиционера будет отличаться, при том, что ось мотора находится точно в заданном положении.

Для устранения такой неоднозначности используется режим компенсации люфта, активация которого позволяет пользователю выбрать, с какой стороны нужно приближать позиционер к заданной точке. В дальнейшем при любых движениях позиционер будет подходить к точке останова только с выбранной стороны, устраняя механический люфт. Если естественное направление подхода к заданной точке не совпадает с выбранным направлением подхода, то контроллер заводит двигатель на некоторое расстояние, определяемое пользователем, за заданную точку, разворачивает двигатель и завершает подход к заданной точке с требуемой стороны.

При движении нагруженной механической системы в зоне люфта её динамические характеристики отличаются от обычного движения. Поэтому движение в зоне люфта выполняется с задаваемой пользователем скоростью.

Пользователь может настраивать следующие параметры системы компенсации люфта:

  • Флаг включения/выключения компенации люфта.
  • Скорость движения при выполнении компенсационного движения.
  • Расстояние, на которое достаточно проехать, чтобы коомпенсировать люфт. Знак этой настройки определяет направление подхода. Положительный знак означает подход слева, а отрицательный - справа.

Контроллер сигнализирует о моментах, когда происходит отработка компенсации люфта в структуре состояния с помощью флага MOVE_STATE_ANTIPLAY. Он также выводится на главное окно XiLab.

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

Примечание

Режим компенсации люфта не предусматривает никакой коррекции положения оси, он только позволяет пользователю выбрать, с какой стороны нужно приближать позиционер к заданной точке и всегда придерживаться указанного направления подхода.

Настройка компенсации люфта в программе XILab описана в настройках кинематики движения шагового двигателя. Команды включения и определения параметров компенсации люфта описаны в руководстве по программированию.

Люфт будет минимальным в том случае, если подход к заданной точке осуществляется с одинаковыми параметрами движения, поэтому оптимальными будут являться следующие значения параметров: скорость в зоне люфта должна быть равна номинальной, расстояние компенсации антилюфта должно быть таково, чтобы устройство успевало набрать номинальную скорость.

По умолчанию в профилях двигателей компенсация люфта задаётся по формуле:

\[S = \frac{U^2}{2} \Big[ \frac{1}{Ac} + \frac{1}{Dc} \Big] + 0.2 U\]

где S - компенсация люфта, U - номинальная скорость, Ac, Dc - ускорение и замедление, 0.2 - время, в течение которого двигатель будет ехать с постоянной скоростью.