Jump to content

Переменная для номера инструмента который стоит в преднаборе


mikityuk2402@gmail.com

Recommended Posts

mikityuk2402@gmail.com

Здравствуйте!  Я работаю на фрезерных станках HAAS, осваиваю макропрограммирование.! У меня возникла идея, но у меня не получается воплотить ее в жизнь. На станке VF-3YT/50 смена инструмента происходит УСИ (устройством смены инструмента «лапа») . В программе после блока «T1 M06» идет блок «Т2» для подготовки следующего инструмента в очереди Т2 к смене. Если вылет инструмента будет слишком большой при смене инструмента и стол не отъедет в безопасное положение может произойти столкновение! У меня идея составить макропрограмму с условием «если офсет инструмента который находится в преднаборе больше 250мм, то отъезд стола на безопасное расстояние»! Единственная трудность с которой я столкнулся это как получить значение инструмента который стоит в преднаборе! К примеру номер инструмента который стоит в шпинделе, это переменная #3026. Не подскажете нет ли подобной переменной для инструмента который стоит в преднаборе? Заранее огромное спасибо!!!

Link to post
Share on other sites


UnPinned posts
Ishimtcev
4 часа назад, mikityuk2402@gmail.com сказал:

Здравствуйте!  Я работаю на фрезерных станках HAAS, осваиваю макропрограммирование.! У меня возникла идея, но у меня не получается воплотить ее в жизнь. На станке VF-3YT/50 смена инструмента происходит УСИ (устройством смены инструмента «лапа») . В программе после блока «T1 M06» идет блок «Т2» для подготовки следующего инструмента в очереди Т2 к смене. Если вылет инструмента будет слишком большой при смене инструмента и стол не отъедет в безопасное положение может произойти столкновение! У меня идея составить макропрограмму с условием «если офсет инструмента который находится в преднаборе больше 250мм, то отъезд стола на безопасное расстояние»! Единственная трудность с которой я столкнулся это как получить значение инструмента который стоит в преднаборе! К примеру номер инструмента который стоит в шпинделе, это переменная #3026. Не подскажете нет ли подобной переменной для инструмента который стоит в преднаборе? Заранее огромное спасибо!!!

Ячейки для новой стойки. все эти ячейки есть в мануале к станку Haas (Macro Variables)

 

Скрытый текст

image.png

  • Нравится 1
Link to post
Share on other sites
mikityuk2402@gmail.com
15 часов назад, Ishimtcev сказал:
  Показать содержимое

image.pngimage.pngimage.png

Я знаю про этот список переменных, но в нем нет того что мне нужно! К примеру код программы:

Т1М06

Т2

.....

Где Т2 это инструмент который подготавливается к замене, следующий в очереди! Что нужно чтобы номер инструмента который подготавливается записался в какую либо переменную чтобы потом прописать условие!

К примеру

Т1 М06

Т2

IF [T2 GT 250.] THEN G0G53Z0.Y0.X-900

 

 

 

Я знаю про этот список переменных, но в нем нет того что мне нужно! К примеру код программы:

 

Т1М06

 

Т2

 

.....

 

Где Т2 это инструмент который подготавливается к замене, следующий в очереди! Что нужно чтобы номер инструмента который подготавливается записался в какую либо переменную чтобы потом прописать условие!

 

К примеру

 

Т1 М06

 

Т2

 

IF [T2 GT 250.] THEN G0G53Z0.Y0.X-900

Link to post
Share on other sites
Ishimtcev

1. если вы пишете в ручную код.... то никто вам не мешает руками ячейку записать.

2. если вы генерируете код с помощью CAM.... то открываете свой пост процессор и ищете там часть где реализован вывод преднабора. (next_tool) и там уже добовляете что то подобное

#800 = #[2000 + next_tool_number]  (значения ячеек взял и старого мануала, следующий инструмент придумал просто так... не знаю как у вас там реализована предподготовка инструмента)

Этой строчкой вы заносите в ячейку 800 офсет на длинну инструмента который предподготавлиется.

В дальнейшем вам надо будет поставить условие как вы и писали только с значением это переменной которую мы добавили (800)

 

Если программа состоит из большого количества смены инструмента.... то после каждой предподготовки значение ячейки будет перезаписываться.

Edited by Ishimtcev
Link to post
Share on other sites
Ishimtcev

P/s Вам надо просто посмотреть какие операторы применяются при работе с макропеременными. и посмотрите сразу для чего я занес формулу в квадратные скобки без решетки.

 

пишите больше вводной информации. 

Link to post
Share on other sites
mikityuk2402@gmail.com

Я не хочу нарушать конструкцию программы! Я наладчик. Программы для меня пишет программист который не особо горит желанием корректировать постпроцессор! В день по 3-4 программы отрабатываю по 10-15 инструментов в программе и вручную редактировать каждую нет времени. Если знать переменную которая отвечает за преднабор инструмента то можно было б не нарушать структуру программы! Куда еще больше вводной информации! Мне нужна переменная которая бы записала номер инструмента который будет следующий по программе допустим в переменную #100=#"номер инструмента который стоит в преднаборе"! Все!!! Если Вы ее не знаете, то так и скажите!  

Link to post
Share on other sites
mr_Voden

@mikityuk2402@gmail.com Если следовать тому, что вы пишите, а именно:

T1M6

...

T2

где T1 - текущий инструмент, а Т2 - инструмент, вызванный для преднабора, тогда вам просто нужно проверять последнее значение адреса Т. Проверьте переменные с #4101-#4126. Предположу, что последнее значение Т будет содержать переменная #4120.

  • Нравится 1
Link to post
Share on other sites
mikityuk2402@gmail.com
1 час назад, mr_Voden сказал:

@mikityuk2402@gmail.com Если следовать тому, что вы пишите, а именно:

T1M6

...

T2

где T1 - текущий инструмент, а Т2 - инструмент, вызванный для преднабора, тогда вам просто нужно проверять последнее значение адреса Т. Проверьте переменные с #4101-#4126. Предположу, что последнее значение Т будет содержать переменная #4120.

Это более похоже на правду! Я думаю теперь у меня все получится! Завтра попробую! По результату отпишусь! Огромное спасибо!!!

  • Нравится 1
Link to post
Share on other sites
mikityuk2402@gmail.com
11.04.2021 в 13:52, mr_Voden сказал:

@mikityuk2402@gmail.com Если следовать тому, что вы пишите, а именно:

T1M6

...

T2

где T1 - текущий инструмент, а Т2 - инструмент, вызванный для преднабора, тогда вам просто нужно проверять последнее значение адреса Т. Проверьте переменные с #4101-#4126. Предположу, что последнее значение Т будет содержать переменная #4120.

Спасибо огромное добрый человек!!! Все работает! Благодаря Вам у меня все получилось! Вы все правильно предположили переменная #4120 номер последнего запрограммированного инструмента! Как же прекрастно когда есть такие люди которые могут помочь Огромное огромное спасибо!!!!!!!

  • Нравится 2
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    No registered users viewing this page.



  • Сообщения

    • Windic
      У мебельщиков обратил внимание на то что им не нужно сильно универсального продукта - все производство основано на небольшом кол-ве технологий. Стал делать не большие блоки из которых собираются шкафы, антрисоли и т.д.На выходе от проектировщика требуется карта кроя т.е. список деталей мебели с длиной, шириной, кол-вом и материалом. У меня затык случился с формированием такого списка для Сборки. Структуру в каждом отдельном блоке прописываю, а из них собрать большой для всего шкафа или даже гардеробной мозгов не хватает.Проект делаю так: создаю файл "Дом" в котором черчу комнату для мебели и прописываю все переменные для всей мебели. Затем беру заготовку Корпуса шкафа (например), цепляю к нему как фрагмент Дом (делаю его невидимым) и заимствую из него переменные. Затем к Шкафу цепляю как фрагмент блок выдвижных ящиков. Сам Шкаф снабжён массивом из полок и фасадов. Какие то полки в массиве пропускаются. Далее в файл Сборка комнаты собираю Дом и файлы шкафов. Вот тут мне бы и получить Отчёты со всеми деталями.Могу выслать пример такой гардеробной.
    • Ветерок
      Если ты считаешь себя страдиварей, то должен владеть инструментом как Страдивари. В данном случае инструмент - Флекс. А если ты не можешь даже настроить инструмент, то ты не Страдивари. Это я к тому, что если ты делаешь мебель в Флексе в "ручном" режиме, то понятно как ставить задачу автоматизации этого процесса. А если ты во Флексе вообще не работал, тогда всё становится очень неопределенным.
    • Viktor2004
      Посмотрите по электросхеме. Там два контактора должно быть которые переключают скорости шпинделя. У этих контакторов с NO допконтактов сигналы идут в ЧПУ на входы. Хорошо бы Вы нашли на какие именно входы. Просто если ваш ладдер окажется без комментариев, нам сложно будет их там найти. Ведь именно этот сигнал надо будет перенаправить на G54.0 G54.1 (если они конечно уже чем-нибудь не задействованы и надо будет искать другие
    • Windic
      В корпусной мебели все сильно унифицировано и под 90 градусов. Страдивари здесь не выживают ))) Напоминаю что VV купил RR, а не наоборот )))
    • aiden57
      Пока нет возможности скинуть ладдер, ибо пока не на работе...
    • Viktor2004
      Что бы поймать через тысячные переменные, надо что бы сигнал там сначала появился. Для этого его туда надо отправить через PMC. Давайте сюда ваш ладдер, посмотрим.  
    • aiden57
      1. Переключение скоростей шпинделя. 2. Для пользовательской программы. Нужно считать информацию на какой скорости шпиндель в данный момент... Спасибо за ответ. Попробую поймать через тысячные переменные...
    • Viktor2004
      данные команды формируются в ладдере. И для каждого станка им можно задать свою функцию. Что они означают у вас? Переключение скоростей шпинделя? Так что в программе которую вы пишете можно использовать тег PMC который назначем для этой команды именно в вашем ладдере. Там как правило есть импульс начала исполнения М-команды, а так же импульс завершения выполнения команды. И куча промежуточных Для какой программы нужно знать состояние М41 М42? Для дистанционного мониторинга с помощью FOCAS2 или для пользовательской программы? Если для пользовательской, то там нельзя просто так посмотреть состояние тегов PMC. Что бы его можно было посмотреть, нужный тэг надо в PMC перенаправить в тэг G54-G57 в тот бит который еще не задействован, а уже в пользовательской программе ловить его через переменные #1000 - #1031
    • Ветерок
      Тогда уж давай полный список. Наверное, Флекс более приспособлен для всяких праметрических извращений, в том числе и мебельных. Но придется учесть ряд мебельных нюансов, и если понадобится добавить что-то новое или неучтенное заранее, то опять придется просить помощи. Причем помощи срочной, поскольку уже сидишь на Флексе. Стоит ли всё это какой-то "другой концепции" - вопрос спорный. Может быть, имеет смысл принять "неудобную концепцию" работающих решений. Тем более, что многие производители уже требуют проекты в том или ином специализированном софте (если делать не только для себя самого).
    • aiden57
      Привет всем. Вопрос близкий по теме. Может знает кто, через какую системную переменную можно считать установленную в данный момент передачу (M41, M42 и т.д.)? В мануалах не нашел ничего. Нужно для условия if-then
×
×
  • Create New...