Как заставить шпиндель остановиться по коду M30?

Post Reply
Blade
Posts: 31
Joined: Mon Jul 22, 2019 8:59 pm

Как заставить шпиндель остановиться по коду M30?

Post by Blade » Fri Jul 26, 2019 1:20 pm

Многие постпроцессоры в конце программы пишут M30. В результате программа отработала, а шпиндель дальше работает.
Я попробовал скопировать программу M5 и обозвать ее M30, но это ничего не решило. Как сделать правильно?

mycnc
Posts: 533
Joined: Thu May 10, 2018 2:42 pm

Re: Как заставить шпиндель остановиться по коду M30?

Post by mycnc » Fri Jul 26, 2019 4:35 pm

М30 это макрос, по умолчанию такой -

Code: Select all

(Set flag to rewind program pointer after finished)
G10 L80 P5526 Q1
(End program)
M2
Сначала ставится флаг, который говорит программе сбросить указатель в начало после завершения выполнения,
потом вызывается М2

Проще всего добавить М5 в начало этого макроса.

Blade
Posts: 31
Joined: Mon Jul 22, 2019 8:59 pm

Re: Как заставить шпиндель остановиться по коду M30?

Post by Blade » Fri Jul 26, 2019 6:22 pm

mycnc wrote:
Fri Jul 26, 2019 4:35 pm
М30 это макрос, по умолчанию такой -

Code: Select all

(Set flag to rewind program pointer after finished)
G10 L80 P5526 Q1
(End program)
M2
Сначала ставится флаг, который говорит программе сбросить указатель в начало после завершения выполнения,
потом вызывается М2

Проще всего добавить М5 в начало этого макроса.
У меня вообще нет этого макроса. Создать его с этим содержимым?

mycnc
Posts: 533
Joined: Thu May 10, 2018 2:42 pm

Re: Как заставить шпиндель остановиться по коду M30?

Post by mycnc » Fri Jul 26, 2019 8:40 pm

Вы выкладывали архив с вашим профилем - там все есть.

Или вы не внимательно посмотрели, или удалили файл макроса за эти дни.

Umnik
Posts: 12
Joined: Sun May 19, 2019 7:16 pm

Re: Как заставить шпиндель остановиться по коду M30?

Post by Umnik » Sun Aug 11, 2019 9:23 am

Сергей, доброго времени.
Вопрос такой - контроллер не отрабатывает М30 в тексте УП.
Т.е. курсор доходит до строчки, предшествующей М30 (это строка, отправляющая станок в машинный ноль X0Y0) и все, на строку М30 не переходит.
Такое чувство, что встаёт на паузу.
Если нажать стоп и плей два раза, то отрабатывает УП до конца и курсор встаёт в начало УП.
Как победить сей недуг?

Umnik
Posts: 12
Joined: Sun May 19, 2019 7:16 pm

Re: Как заставить шпиндель остановиться по коду M30?

Post by Umnik » Sun Aug 11, 2019 11:53 am

В общем, получается, что если есть строка м г28, то дальше нее курсор не идёт.
А М30 стоит как раз следующей строкой, вот до неё дело и не доходит...
Подправил пост, чтобы г28 не выдавал и вроде заработало...

mycnc
Posts: 533
Joined: Thu May 10, 2018 2:42 pm

Re: Как заставить шпиндель остановиться по коду M30?

Post by mycnc » Mon Aug 12, 2019 2:00 pm

У вас определены значения для положения по G28?
Если эти значения не корректные, то программа может останавливаться по ошибке, не дойдя до последней строки М30.

Umnik
Posts: 12
Joined: Sun May 19, 2019 7:16 pm

Re: Как заставить шпиндель остановиться по коду M30?

Post by Umnik » Thu Aug 15, 2019 4:06 am

Да, определены, все по нолям.
Пробовал отправлять его в машинный ноль по G53 - то же самое, доходит до строчки "G0G53X0Y0", ее отрабатывает, возвращается в ноль и на ней останавливается.
Т.е. на следующую строку "M30" не переходит....
Если отправлять в рабочий ноль (по G54) то все работает как надо.
А вот с машинным такая оказия вылазит....

mycnc
Posts: 533
Joined: Thu May 10, 2018 2:42 pm

Re: Как заставить шпиндель остановиться по коду M30?

Post by mycnc » Thu Aug 15, 2019 5:04 am

Машинные (0,0) может быть запрещенное положение по софт-лимитам и когда доходит до этой позиции происходит блокировка.
Попробуйте софт-лимиты определить например (-0.1, -0.1)
Или наоборот G28 задать (0.1, 0.1) чтобы точно оставаться в пределах рабочей зоны.

Umnik
Posts: 12
Joined: Sun May 19, 2019 7:16 pm

Re: Как заставить шпиндель остановиться по коду M30?

Post by Umnik » Thu Aug 15, 2019 10:22 am

понял, спасибо, попробую сегодня...

Post Reply