Одновременный старт двух шаговых двигателей.
Добавлено: 25 янв 2020, 15:48
Доброго всем времени суток. Если тема была обсосана ранее - не пинайте, а пожалуйста подскажите где...
Суть вот в чем.
Проектирую автомат для промышленного применения, что подразумевает требование к надежности и стабильности размеров (допуск на размеры +/-0,02мм), но в месте с тем бюджет никто раздувать не хочет. Есть две оси - X и Z. По оси Z два элемента (пусть это будут фрезерные головки) должны симметрично подъезжать к заготовке, дабы получить симметричное изделие. Поиск одним ШД нуля или положения Home планирую реализовать прецизионным бесконтактным датчиком, но это хорошо, когда элемент по оси Z всего один. А если как в моем случае - пара и движутся на встречу? Задачка схожая с той, когда два двигателя толкают большой портал. Но в случае портала и длинного цикла фрезеровки это не так ощутимо, ведь хоумиться портал будет один раз за несколько часов, да к тому же у них есть механическая связь в виде общей рамы портала..
В моем случае перед каждым циклом обработки планируется, что все органы автомата переходят в положение Home, но в случае применения одного концевика для двух двигателей оси Z вижу проблему в рассинхронизации из-за выбегов двигателей после их отключения. Второй двигатель, который не имеет концевика может внести избыточную погрешность, особенно за пару сотен циклов к Home. Напрашивается самопальная плата как промежуточная между входами "мозгов" и концевиками, с элементом типа И, в которой отключается первый двигатель, чей концевик сработал (разрывается линия STEP от мозгов к драйверу), срабатывание второго датчика подает соответствующий сигнал на мозги...
В качестве мозгов - микроконтроллер, в качестве интерпретатора G-кода - GRBL. C GRBL ранее не работал, может есть альтернатива. Возможно есть решение как раз на стороне прошивки, которую я настроить еще смогу, а вот написать модуль уже увы, не профи.. да и времени на проект мало сталось..
Кто как из подобного положения выходил?
P.S. Движение двух органов по оси Z на встречу друг к другу можно реализовать и механикой: через одно ШВП основного ШД и второе ШВП пущенное в противоход зубчатой передачей или без второй ШВП через рычажную систему, но этого не хотелось бы из-за наличия зазоров, люфтов..
Суть вот в чем.
Проектирую автомат для промышленного применения, что подразумевает требование к надежности и стабильности размеров (допуск на размеры +/-0,02мм), но в месте с тем бюджет никто раздувать не хочет. Есть две оси - X и Z. По оси Z два элемента (пусть это будут фрезерные головки) должны симметрично подъезжать к заготовке, дабы получить симметричное изделие. Поиск одним ШД нуля или положения Home планирую реализовать прецизионным бесконтактным датчиком, но это хорошо, когда элемент по оси Z всего один. А если как в моем случае - пара и движутся на встречу? Задачка схожая с той, когда два двигателя толкают большой портал. Но в случае портала и длинного цикла фрезеровки это не так ощутимо, ведь хоумиться портал будет один раз за несколько часов, да к тому же у них есть механическая связь в виде общей рамы портала..
В моем случае перед каждым циклом обработки планируется, что все органы автомата переходят в положение Home, но в случае применения одного концевика для двух двигателей оси Z вижу проблему в рассинхронизации из-за выбегов двигателей после их отключения. Второй двигатель, который не имеет концевика может внести избыточную погрешность, особенно за пару сотен циклов к Home. Напрашивается самопальная плата как промежуточная между входами "мозгов" и концевиками, с элементом типа И, в которой отключается первый двигатель, чей концевик сработал (разрывается линия STEP от мозгов к драйверу), срабатывание второго датчика подает соответствующий сигнал на мозги...
В качестве мозгов - микроконтроллер, в качестве интерпретатора G-кода - GRBL. C GRBL ранее не работал, может есть альтернатива. Возможно есть решение как раз на стороне прошивки, которую я настроить еще смогу, а вот написать модуль уже увы, не профи.. да и времени на проект мало сталось..
Кто как из подобного положения выходил?
P.S. Движение двух органов по оси Z на встречу друг к другу можно реализовать и механикой: через одно ШВП основного ШД и второе ШВП пущенное в противоход зубчатой передачей или без второй ШВП через рычажную систему, но этого не хотелось бы из-за наличия зазоров, люфтов..