ось twincat 2 - обновите целевую позицию - PullRequest
0 голосов
/ 31 мая 2018

У меня есть ось, которая должна следовать заданной позиции, которая постоянно меняется.проблема в том, что если я использую FB "MC_MoveAbsolute", я не могу обновить целевое положение.Мне нужно дождаться окончания движения (или остановить его), и как только оно закончится, я могу указать новое целевое местоположение.Проблема с этим заключается в том, что, если канал большой и / или в противоположном направлении, ось может быть немного позади.Мне нужно было бы обновить целевую позицию, как только она будет отличаться от текущей назначенной.у него также не должно быть резкой остановки, поэтому что-то вроде запуска, остановки, запуска нового не является решением.движение должно быть как можно более плавным и актуальным.

У меня есть 2 возможных решения:

1) я делаю много небольших движений, которые смешиваются с предыдущим, поэтому я могу, например, изменить целевое положение на каждый мм и быстро его обновить

2) я использую два разных FB для перемещения и использую в качестве режима mc_aborting, чтобы я мог перезаписать предыдущую команду перемещения.

какое решение является лучшим?

1 Ответ

0 голосов
/ 19 июня 2018

Лучшим вариантом будет изменить настройку так, чтобы ваш входной сигнал был связан с осью энкодера в системе ЧПУ.Затем вы можете использовать MC_GearIn для подключения вашей подчиненной оси к «энкодеру».

Если это невозможно, я считаю, MC_MoveAdditive - это то, что вы ищете.Позволяет изменить целевую позицию независимо от того, была ли достигнута позиция во время последнего цикла.

...