Перейти к содержимому


Фотография

Как работают параметры 3601~3610 и как через них присвоить М-коду макру


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 6

#1 OFFLINE   Siver

Siver

    Абитуриент

  • Пользователи
  • Pip
  • 3 сообщений
  • Из:Ульяновск

Отправлено 10 Ноябрь 2014 - 19:30

Приветствую всех!

Уважаемые форумчане, у меня такой вопрос. Станок Beaver 25AVLT8 стойка Sintec MB6, как работают параметры 3601~3610 и как через них присвоить какому то М-коду макру.

    Дело в том что до этого станка стоял Beaver 25AVLT стойка Sintec 900EZ у него машинные координаты не совпадают с новым станком. Воспользовавшись G68 мы повернули систему координат на 90 градусов и все вроде бы хорошо, только вот во всех существующих до этого написанных программах нужно вручную вставлять G68, а это около 2000 программ :-( . Идея такая написать макру с поворотом координат и вызывать ее по М-коду и точно также написать выключение поворота координат также его отключать в конце программы по М-коду вот только никак не могу разобраться как через вышеописанные параметры присвоить к М-коду нужную макру и куда ее выгрузить в станок.


Сообщение отредактировал Siver: 10 Ноябрь 2014 - 19:36

  • 0

#2 OFFLINE   lkbyysq

lkbyysq

    Гуру CNC

  • Cтарожил
  • PipPipPipPipPipPipPipPipPipPip
  • 9 526 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург
  • Из:Санкт-Петербург

Отправлено 10 Ноябрь 2014 - 20:31

...нужно вручную вставлять G68, а это около 2000 программ :-( . Идея такая написать макру с поворотом координат и вызывать ее по М-коду...

А написать скрипт, который прошерстит один раз все программы в заданных директориях и воткнет туда строку с G68?

А изменить настройки станка так, чтобы повернуть оси, как на старом станке? G коды для этого не нужны.


Сообщение отредактировал lkbyysq: 10 Ноябрь 2014 - 20:36

  • 0

Станислав Ерофеев
Beaver 9A (2007), Beaver 9AT2 (2011), KingCut X6 (2005), WoodPecker 1224 (2006), Roland EGX-300 (2004), Roland EGX-20 (2003), ZeldeR 0613TP (2014).


#3 OFFLINE   courage

courage

    Доктор CNC

  • Пользователи+
  • PipPipPipPipPip
  • 544 сообщений
  • Пол:Мужчина
  • Город:Новосибирск, Россия
  • Из:Новосибирск

Отправлено 10 Ноябрь 2014 - 23:18

Приветствую всех!

Уважаемые форумчане, у меня такой вопрос. Станок Beaver 25AVLT8 стойка Sintec MB6, как работают параметры 3601~3610 и как через них присвоить какому то М-коду макру.

    Дело в том что до этого станка стоял Beaver 25AVLT стойка Sintec 900EZ у него машинные координаты не совпадают с новым станком. Воспользовавшись G68 мы повернули систему координат на 90 градусов и все вроде бы хорошо, только вот во всех существующих до этого написанных программах нужно вручную вставлять G68, а это около 2000 программ :-( . Идея такая написать макру с поворотом координат и вызывать ее по М-коду и точно также написать выключение поворота координат также его отключать в конце программы по М-коду вот только никак не могу разобраться как через вышеописанные параметры присвоить к М-коду нужную макру и куда ее выгрузить в станок.

 

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

В вашем варианте надо вставлять вызов подпрограммы кодом M98 P1050 например, он вызывает подпрограмму O1050 которую надо сохранить в стойке, там же где макрос смены инструмента лежит, в ней прописать нужные действия, у вас по идее как-то так: G68 X0 Y0 R90

После этого поставить M99, то есть в программу вместо одной вышеприведенной строчки придется вставить

M98 O1050

M99

и в конце также если вы хотите поворот обратно делать перед переходом в точку возврата в машинных координатах станка.

 

Как рекомендует lkbyysq, Встроить в нужное место нужные коды можно при помощи например вот этих программ:

AutoTrimCut

Powergrep

Funduc Search and Replace

 

Можно также и вызов макросов вписать в файлы  :)

 

Изменить "ориентацию" станка (что-то мне это напомнило другую тему по Ncstudio).

Как минимум есть возможность изменить названия осей, переподключить кабели сервопривод-ЧПУ, перепрограммировать положение гнезд с инструментом, задать нулевую точку.

 

К сожалению не видел новых Beaver'ов, в каком углу у них машинный ноль? В правом ближнем? Концевик на балке для обнуления тоже справа расположен?

 

Я так понимаю вы хотели бы использовать как базовую точку левый ближний угол, ну так можно это сделать и работать как раньше, просто ноль заготовки будет слева, а машинный ноль справа.


  • 0
Опыт прямопропорционален количеству испорченного оборудования.
Сертифицированный инженер по обслуживанию источников механизированной резки и система автоматизации Hypertherm.
Представитель и инженер сервисной и техподдержки компании Weihong (Ncstudio, NK105, NK260, NK300) на территории России.

#4 OFFLINE   Siver

Siver

    Абитуриент

  • Пользователи
  • Pip
  • 3 сообщений
  • Из:Ульяновск

Отправлено 11 Ноябрь 2014 - 12:01

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

В вашем варианте надо вставлять вызов подпрограммы кодом M98 P1050 например, он вызывает подпрограмму O1050 которую надо сохранить в стойке, там же где макрос смены инструмента лежит, в ней прописать нужные действия, у вас по идее как-то так: G68 X0 Y0 R90

После этого поставить M99, то есть в программу вместо одной вышеприведенной строчки придется вставить

M98 O1050

M99

и в конце также если вы хотите поворот обратно делать перед переходом в точку возврата в машинных координатах станка.

 

Как рекомендует lkbyysq, Встроить в нужное место нужные коды можно при помощи например вот этих программ:

AutoTrimCut

Powergrep

Funduc Search and Replace

 

Можно также и вызов макросов вписать в файлы   :)

 

Изменить "ориентацию" станка (что-то мне это напомнило другую тему по Ncstudio).

Как минимум есть возможность изменить названия осей, переподключить кабели сервопривод-ЧПУ, перепрограммировать положение гнезд с инструментом, задать нулевую точку.

 

К сожалению не видел новых Beaver'ов, в каком углу у них машинный ноль? В правом ближнем? Концевик на балке для обнуления тоже справа расположен?

 

Я так понимаю вы хотели бы использовать как базовую точку левый ближний угол, ну так можно это сделать и работать как раньше, просто ноль заготовки будет слева, а машинный ноль справа.

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

 

Машинный ноль на новом станке дальний слева угол возле вилок с инструментом при этом ось X идет теперь по длинной стороне, а ось Y по короткой стороне. Концевик находится на месте с левой стороны.

 В документации к станку в таблице описания параметров есть следующая строка "3601-3610 register M code to call makro" .  Исходя из этой строки я понял, что к любому М-коду можно прикрепить вызов какой либо макры. А так как у нас в каждой программе есть M03  и M05, вот к ним то и хотелось прикрепить вызов необходимой макры M03-поворот координат, а М05-возврат к нормальному положению. И соответственно после этого можно было бы использовать программы со старого станка на новом. 

 

 

А написать скрипт, который прошерстит один раз все программы в заданных директориях и воткнет туда строку с G68?

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

 

P.S. На Фануках есть такая возможность чтобы к любому М-коду присвоить вызов макры .


Сообщение отредактировал Siver: 11 Ноябрь 2014 - 13:01

  • 0

#5 OFFLINE   lkbyysq

lkbyysq

    Гуру CNC

  • Cтарожил
  • PipPipPipPipPipPipPipPipPipPip
  • 9 526 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург
  • Из:Санкт-Петербург

Отправлено 11 Ноябрь 2014 - 15:18

Это конечно можно но с каким расширением они сохранятся

С тем, с которым Вы захотите.

 

Хотите изменить команды М03 и М05? Т.е. хотите, чтобы по этим стандартным командам станок совершал нестандартные действия? Не боитесь запутаться с постпроцессорами? Получится, что для Вашего станка нужно будет применять нестандартный постпроцессор, который будет учитывать, что координатная система меняется при запуске программы.

 

Это как видео на боку смотреть. Хотим снять ролик, повернув камеру набок, и смотрим, поворачивая голову набок.

Шея затекает. Поворачиваем монитор набок и с удовольствием смотрим. Вот что Вы хотите сделать.

А потом вдруг Вы сняли ролик не поворачивая камеру...

 

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

 

Либо.

Приведите координатную систему станка к той, к которой ВСЕ ПРИВЫКЛИ. И никто ничего не заметит. Вероятность появления ошибок в налаженной производственной цепочке будет минимальна.

 

Но не стоит стандартным командам задавать нестандартное поведение. Аукнется в самый не подходящий момент.


  • 0

Станислав Ерофеев
Beaver 9A (2007), Beaver 9AT2 (2011), KingCut X6 (2005), WoodPecker 1224 (2006), Roland EGX-300 (2004), Roland EGX-20 (2003), ZeldeR 0613TP (2014).


#6 OFFLINE   courage

courage

    Доктор CNC

  • Пользователи+
  • PipPipPipPipPip
  • 544 сообщений
  • Пол:Мужчина
  • Город:Новосибирск, Россия
  • Из:Новосибирск

Отправлено 12 Ноябрь 2014 - 00:17

При таком раскладе дело становится интереснее :-) 

Вот так примерно выглядят параметры:

 

3601       351    *M code macro call registry No.1
3602         0    *M code macro call registry No.2
3603         0    *M code macro call registry No.3
3604         0    *M code macro call registry No.4
3605         0    *M code macro call registry No.5
3606         0    *M code macro call registry No.6
3607         0    *M code macro call registry No.7
3608         0    *M code macro call registry No.8
3609         0    *M code macro call registry No.9
3610         0    *M code macro call registry No.10
3701         0    *G code macro call registry No.1
3702         0    *G code macro call registry No.2
3703         0    *G code macro call registry No.3
3704         0    *G code macro call registry No.4
3705         0    *G code macro call registry No.5
3706         0    *G code macro call registry No.6
3707         0    *G code macro call registry No.7
3708         0    *G code macro call registry No.8
3709         0    *G code macro call registry No.9
3710         0    *G code macro call registry No.10
 
Соответственно вам надо создать в папке C:\CNC\MACRO макрос без расширения например с названием M0003
 
Примерно такой:
 %@MACRO
G68 X0 Y0 R-90;
M99;
 
В 3602 вписать каким-то образом цифру кода или имя файла и попробовать это отработать.
 
Такой же попробовать создать на M5
 
Правда я очень не уверен что можно вызвать макрос именно для определенного М-кода, особенно если это код являющийся предопределенным в системе ЧПУ.
По хорошему для вызова макроса потребуется всё-таки использовать именно вызов макроса, но я буду рад если ошибаюсь.
 
В вашем случае можно сделать всё в 3 шага:
1)Изменить названия осей
2)Переставить калибрующую пластину вперед.
Поменять направление движения к датчику через параметры
861         0    X axis homing direction(0:pos;1:neg)
862         1    Y axis homing direction(0:pos;1:neg)
 

На крайний случай можно изменить просто названия осей и задать сдвиг нулевой точки от датчика:

 881         0    X axis home offset(BLU)
 882         0    Y axis home offset(BLU)
Задаете например -2500000 и получаете что датчик у вас находится в позиции 2500000 (опять же может быть сюда надо вписать позицию датчика относительно машинного нуля, то есть 2500000)
Получите, разворот осей и нулевую точку где привычно, а оси переименовать также можно.
 
Siver, Станислав предложил вам несколько решений решений, и заметьте это всё гораздо проще чем навешивать вызовы макросов для поворота СК, так как каждый из нас представив себе такой расклад для себя уж точно выбрал бы один из предложенных вариантов, а не ваш, потому что в отдаленном будущем с такими доработками могут выплыть разные нюансы )
 
 
Как говорят в пословице: У всего есть конец и только у сосиски два.
Закругляюсь.
 
Вариантов на выбор масса, лично мне интересно получится ли что-либо сотворить с макросом, был бы рад поучаствовать в эксперименте для саморазвития.
 
P.S. Ками пока не предлагают общего решения данной проблемы, но я думаю, что китайцам вставят пистона за такую разработку и следующая партия будет опять с привычным расположением осей, либо будут менять по запросу :)

  • 0
Опыт прямопропорционален количеству испорченного оборудования.
Сертифицированный инженер по обслуживанию источников механизированной резки и система автоматизации Hypertherm.
Представитель и инженер сервисной и техподдержки компании Weihong (Ncstudio, NK105, NK260, NK300) на территории России.

#7 OFFLINE   ViktorSwild

ViktorSwild

    Абитуриент

  • Пользователи+
  • Pip
  • 7 сообщений
  • Пол:Мужчина
  • Из:Пятигорск

Отправлено 05 Октябрь 2021 - 12:52

В вашем варианте надо вставлять вызов подпрограммы кодом M98 P1050

А как в этом случае повернуть координаты осей при вызове подпрограммы? 
 

G52X267.1347Y487.6575Z0.0000R45.0000 - так? (без  G68)
 
G68X267.1347Y487.6575R45.0000 M98 P0002 - или так? (не работает поворот в итого)
 
G69
G52X0.0000Y0.0000Z16.0000


Нашел выход:
Подсказал prod


Записывать надо так:
 

G52 X205.000 Y147.700 Z0.000       (Локальная система координат G52 для позиционирования подпрограммы)
G68 X0.000 Y0.000 R0.000              (Поворот оси в лск G68)
M98 P0210                                        (вызов пп M98 (уже работает в лск и повороте))
G52 X0.000 Y0.000 Z0.000               (Возврат лск в нормальный ноль G52 0)
G54 G69                                            (Переход в стандартный 0 G54 и отмена поворота G69)

Сообщение отредактировал ViktorSwild: 05 Октябрь 2021 - 15:51

  • 0




Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных