Настройка поворотной оси Stepconf

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Настройка поворотной оси Stepconf

Сообщение Nick »

Это уже хитрее...
можно как сделать: делаем два различных stepgen, один для шагового режима, другой для "шпинделя". И при необходимости переключаемся между ними. Но будет проблема - при переключении в шаговый режим придется заново искать нулевую точку... (хотя наверное и это можно обойти...)

Расскажы по подробнее про свою, ось и как ты планируешь переключать режимы? В какой программе пишешь Gкод?
Bmax77
Мастер
Сообщения: 400
Зарегистрирован: 13 авг 2013, 11:05
Репутация: 39
Контактная информация:

Re: Настройка поворотной оси Stepconf

Сообщение Bmax77 »

Да что там подробнее то, обычный шаговик + патрон. Я планирую переключать как тут подскажут, для меня пока процессы происходящие за интерфейсом LCNC трудно постижимы.
Там по ссылке сделали две М команды, одна запускает щаговый мотор А оси с нужной скоростью бесконечно крутиться, а вторая возвращает в обычный режим вращения по углу.
Но я не доконца понял, вроде какието проблемы там еще остались.
Смысл в том что хочу сделать деталь цилиндрической формы с отверстием в поверхности. Для Gкода на выбор есть Арткам, Визуалмилл и Солидкам но с ним еще не разбирался.
Bmax77
Мастер
Сообщения: 400
Зарегистрирован: 13 авг 2013, 11:05
Репутация: 39
Контактная информация:

Re: Настройка поворотной оси Stepconf

Сообщение Bmax77 »

Nick писал(а):придется заново искать нулевую точку
Да кстати об этом, у меня XYZ по концевикам обнуляются, а не придется ли и для А делать концевик? Ее как то можно исключить из процедуры обнуления?
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Настройка поворотной оси Stepconf

Сообщение Nick »

Bmax77 писал(а):Но я не доконца понял, вроде какието проблемы там еще остались.
Смысл в том что хочу сделать деталь цилиндрической формы с отверстием в поверхности. Для Gкода на выбор есть Арткам, Визуалмилл и Солидкам но с ним еще не разбирался.
Бесконечное вращение на большой скорости нужно воосновном для токарной обработки. Ты собираешься резать что-то резцом?
Одной из самых сложных задач будет сделать для всего этого Gкод... Попробуй сначала сделать его, потом сделаем под этот Gкод конфиг... Может окажется, что проще не заморачиваться с бесконечной осью и 2миллиарда градусов в каждую сторону тебе хватит :)
Bmax77 писал(а):Да кстати об этом, у меня XYZ по концевикам обнуляются, а не придется ли и для А делать концевик? Ее как то можно исключить из процедуры обнуления?
лучше конечно сделать концевик (проще всего наверное будет с оптопарой, чтобы она не мешала бесконечно крутиться).
Bmax77
Мастер
Сообщения: 400
Зарегистрирован: 13 авг 2013, 11:05
Репутация: 39
Контактная информация:

Re: Настройка поворотной оси Stepconf

Сообщение Bmax77 »

Нет резцом резать не буду, силенок у моторки не хватит, а вот пройтись фрезой аккуратно вдоль поверхности, кстати может быть такого количества градусов и хватит вполне.
Люблю я сразу в дебри лезть, отбрасывая простые варианты которыми можно обойтись в каждом конкретном случае.
Дома поэкспериментирую. Думаю что ручками будет куда проще написать код для такой операции.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Настройка поворотной оси Stepconf

Сообщение Nick »

Если надо сделать просто цилиндр - то это
G01 X100 A10000 (координаты условные :) )
Если надо сделать какую-то кривую траекторию - тогда сложнее... но тоже можно ручками попробовать, в принципе можно просто считать длинну перемещения ...

Или можно сделать вообще хитро:
делаем функцию:

Код: Выделить всё

#<_step> = 0.1
O<rotary> SUB
  (Параметры - X Y Z)
  O<rotary-if> IF [#<_incremental> EQ 1]
    G01 X#<1> Y#<2> Z#<3> A[ABS[#<1>/#<_step>]]
  O<rotary-if> ELSE
    G01 X#<1> Y#<2> Z#<3> A[#<_a>+ABS[#<1>-#<_x>]/#<_step>]
  O<rotary-if> ENDIF
O<rotary> ENDSUB
И потом вызываем ее типо такого:
O<rotary> CALL [10] [0] [5]
O<rotary> CALL [100] [0] [4]
Ответить

Вернуться в «LinuxCNC»