Перейти к публикации

FAQ/Unigraphics/POST


Рекомендованные сообщения

@artem-nafanya Примерно так:

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

 В функцию PB_CMD_before_output добавьте

 

global mom_motion_type
   if { [info exist mom_motion_type] } {
       if { [string first "X" $mom_o_buffer]!=-1 && [string first "Y" $mom_o_buffer]!=-1 && [string first "Z" $mom_o_buffer]!=-1 && $mom_motion_type=="RAPID" } {
            MOM_abort "Error!"
       }   
}  

 

Ссылка на сообщение
Поделиться на других сайтах


@artem-nafanya Хотя возможно лучше проверять не mom_motion_type, а mom_motion_event: mom_motion_event=="rapid_move".

 

Ссылка на сообщение
Поделиться на других сайтах
59 минут назад, mr_Voden сказал:

@artem-nafanya Хотя возможно лучше проверять не mom_motion_type, а mom_motion_event: mom_motion_event=="rapid_move".

 

Так?

 

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

 if { [info exist mom_motion_event] } {
       if { [string first "X" $mom_o_buffer]!=-1 && [string first "Y" $mom_o_buffer]!=-1 && [string first "Z" $mom_o_buffer]!=-1 && $mom_motion_event=="rapid_move" } {
            MOM_abort "!!!!!!!!!!!!!!!!Error!!!!!!!!!!!!!!!!"
       }
}

код в таком виде срабатывает, даже если ускоренные перемещения есть только в одном движении по осям XY?

Изменено пользователем artem-nafanya
Ссылка на сообщение
Поделиться на других сайтах

@artem-nafanyaЯ его не проверял, просто набросал. По идее он должен срабатывать если в строке будут встречены символы xyz и это будет ускоренной перемещение. Довольно топорный метод на самом деле. 

Ссылка на сообщение
Поделиться на других сайтах

я смотрю помогают в решение проблем , может и мне поможете все по старому вопросу

сделать проверку на изменение угла чтоб 800й цикл автоматически выводился тогда когда нужно , а то я термооправку отломил на днях ))

Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, museok сказал:

я смотрю помогают в решение проблем , может и мне поможете все по старому вопросу

сделать проверку на изменение угла чтоб 800й цикл автоматически выводился тогда когда нужно , а то я термооправку отломил на днях ))

 

А подробнее можно ? 

800 цикл обычно всегда выводиться должен в операцию, даже когда углы не меняются 

Ссылка на сообщение
Поделиться на других сайтах
19 часов назад, Vladislav-dobrynin сказал:

 

А подробнее можно ? 

800 цикл обычно всегда выводиться должен в операцию, даже когда углы не меняются 

да он выводиться , но как правило это не всегда нужно, если у меня нет изменения угла зачем мне выходить по Z вверх

да и если на это забить , это не программа будет а порнография ))

Ссылка на сообщение
Поделиться на других сайтах
7 часов назад, museok сказал:

да он выводиться , но как правило это не всегда нужно, если у меня нет изменения угла зачем мне выходить по Z вверх

да и если на это забить , это не программа будет а порнография ))

 

Выводите Cycle800 всегда в начале каждой операции, а в конце операции сбрасывайте его - Cycle800(). Параметр отскока по Z отключите в самом цикле, его мы обычно не используем. 

Отслеживайте изменение углов в конце предыдущей операции и в начале текущей и по данному условию, в начале операции, перед Cycle800, выводите маневрирование в машинной системе координат Supa Z «» D0 

Именно так будет правильно 

Ссылка на сообщение
Поделиться на других сайтах

Приветствую. Подскажите, как выводить mom_operator_message в нужном месте УП?

Даже если удаётся его вывести в другом месте, то оно всё равно остаётся ещё и на прежнем месте.

 

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, artem-nafanya сказал:

Даже если удаётся его вывести в другом месте, то оно всё равно остаётся ещё и на прежнем месте.

А Вам в каком месте нужно его выводить? Это событие, а событие можно выводить в начале или в конце операции или группы 

Ссылка на сообщение
Поделиться на других сайтах
Только что, Vladislav-dobrynin сказал:

А Вам в каком месте нужно его выводить? Это событие, а событие можно выводить в начале или в конце операции или группы 

В начале группы

Первая строчка %MPF

Вторая mom_operator_message 

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, artem-nafanya сказал:

В начале группы

Первая строчка %MPF

Вторая mom_operator_message 

 

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

Ссылка на сообщение
Поделиться на других сайтах
17 часов назад, Vladislav-dobrynin сказал:

 

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

Понятно. Можете более подробно объяснить как это происходит?

Ссылка на сообщение
Поделиться на других сайтах

Здравствуйте, столкнулся с такой проблемой, на токарно-фрезерном посте при выводе сверлильных операций вдоль оси Z вылезает ошибка, фото по ссылке: https://drive.google.com/file/d/1bLi_T5ZXQPuaWBJJ3RhVks-zQ_QsfJA2/view?usp=sharing ,

но при выводе сверления с какой-то токарной или фрезерной операцией при учете что они перед сверлением то ошибка не вылезает, может кто-то сталкивался с таким?

Ссылка на сообщение
Поделиться на других сайтах
17 минут назад, _vlad_ng_ сказал:

Здравствуйте, столкнулся с такой проблемой, на токарно-фрезерном посте при выводе сверлильных операций вдоль оси Z вылезает ошибка, фото по ссылке: https://drive.google.com/file/d/1bLi_T5ZXQPuaWBJJ3RhVks-zQ_QsfJA2/view?usp=sharing ,

но при выводе сверления с какой-то токарной или фрезерной операцией при учете что они перед сверлением то ошибка не вылезает, может кто-то сталкивался с таким?

Ошибка из за отсутствия инициализации переменной предыдущего угла 5 оси. Когда до этого есть операция - данная переменная инициализируется заранее, а когда нет, то видимо в том месте, где к ней обращение идет - ее значение равно пустой строке. Скорее всего это происходит при первом же вызове процедуры before_motion

Вообще можно попробовать открыть tcl файл в блокноте, найти инициализацию переменных в какой либо процедуре в событии start_of_program и добавить строки

global mom_prev_out_angle_pos

set mom_prev_out_angle_pos(0) 0

set mom_prev_out_angle_pos(1) 0

 

Но боюсь это не поможет и еще какие-либо переменные окажутся не инициализированными.

Не опытные разработчики часто городят алгоритмы которые вылетают в частных случаях.

Лучше обратитесь за технической поддержкой к автору постпроцессора

Ссылка на сообщение
Поделиться на других сайтах
3 минуты назад, Vladislav-dobrynin сказал:

Лучше обратитесь за технической поддержкой к автору постпроцессора

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

Ссылка на сообщение
Поделиться на других сайтах
12 минут назад, _vlad_ng_ сказал:

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

Создавайте 2 отдельных связанных постпроцессора через Link_post, один токарный другой фрезерный и через событие Head вызывайте тот или иной.

Эти стандартные алгоритмы из шаблонов они сырые

Ссылка на сообщение
Поделиться на других сайтах
52 минуты назад, Vladislav-dobrynin сказал:

Вообще можно попробовать открыть tcl файл в блокноте, найти инициализацию переменных в какой либо процедуре в событии start_of_program и добавить строки

global mom_prev_out_angle_pos

set mom_prev_out_angle_pos(0) 0

set mom_prev_out_angle_pos(1) 0

Огромное спасибо, заработало!!!

57 минут назад, Vladislav-dobrynin сказал:

Вообще можно попробовать открыть tcl файл в блокноте, найти инициализацию переменных в какой либо процедуре в событии start_of_program и добавить строки

global mom_prev_out_angle_pos

set mom_prev_out_angle_pos(0) 0

set mom_prev_out_angle_pos(1) 0

Только после сохранения поста в билдере - добавленые строчки удаляються(

Все, заработало, просто в начале операции создал отдельную пользовательскую команду...

Ссылка на сообщение
Поделиться на других сайтах
  • 3 недели спустя...

Здравствуйте. помогите, пожалуйста решить такую проблему. Нужно что бы при включении коррекции выводилась команда G13 и значения P, Q. Где P - предыдущее значение X, а Q - предыдущее значение Y. Выводить нужно только в том кадре, где выводится G41.

Изменено пользователем Denya101
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




  • Сообщения

    • EnKlL
      Станок Samsung Pl1600m, такарно-фрезерный, проблема с револьверной головой выдаёт ошибку "EX22831 SERVO TURRET AMP ALARM!" что это такое и что с ней делать? Невозможно сменить инструмент, не в ручную, не через MDA
    • Eng.Destructor
      Сделал так: Добавил новый формат fs2 25 0 4 0 3t #No decimal, absolute, 3 поменял  result = newfs (25, thddepth$) # изменил 16 на 25 result = newfs (25, thdfirst$) # изменил 16 на 25 result = newfs (25, thdlast$) # изменил 16 на 25 result = newfs (25, thdfinish$) # изменил 16 на 25 Спасибо за наводку
    • arsenev
    • teqn1c
      Есть динозавр stratos plus на io mb -  В нем всего 256 КБ памяти  есть ли возможность через режим rtm подгружать программу с ПК через rs 232 ? В шкафу ещё есть разъем под карту но с нее получается только считать и опять таки сохранить на память станка. Соединение ПК-станок настроил ,есть возможность отправлять на него через альфакам программы ,но они сохраняются в память станка. В альфакам есть непрерывная отправка - она отправляет - но в режиме rtm ничего не происходит 
    • Metal_Cutter
      @arsenev В FC такого нет.
    • Bot
      HCL CAMWorks 2024, новая версия программного обеспечения CAM, полностью интегрированного с SOLIDWORKS и Solid Edge включает в себя передовые технологии, позволяющие сократить время программирования, уменьшить время цикла обработки и увеличить срок службы инструмента. Смотреть полностью
    • Александр1979
      Руководство для дусь взял здесь: https://www.cnczone.com/forums/daewoo-doosan/413426-every-doosan-service-manual-currently-auto-updated.html
    • ss_162
      Может есть у кого оригинальные резцы на продажу? Нужен резец SFCC 50 - это маркировка D`Andrea, или Искаровский, он такой же, только маркировка у него другая.
    • Aveovar
      Подскажи, как ты сделал несколько экранов с разных ракурсов
    • Kaktusito
      Всем доброго времени суток! Только начал заниматься редактированием постпроцессоров и сразу же столкнулся с проблемой. Суть в том что я нашел по форумам постпроцессоры с SolidCAM 2015 года, ибо у меня в версии 2022 года их почти нет, а мне нужен был более менее адекватный пост под токарку.  Закинул все файлы Gpptool 2015 года в свою папку, выбрал подходящий мне станок и начал генерировать УП.  Как вы поняли ничего мне не сгенерировало. Пишет ошибку "please change the name "Bore" in the VMID. This name is reserved for use in the GPP"  Сделал то что просит ошибка и был уверен что это не поможет, так оно и вышло. По итогу начало долбить другие ошибки. Очень еще не понятно с файлами которые я кидал в папку Gpptool потому что вместо стандартных двух у меня их аж 4 штуки.: gpp с циклами, gpp обычный, PRP и vmid. Хотя я знаю что в версиях вроде после 2017 уже идет по 2 файла. Что я только не пробовал кидал только 2 файла, кидал все 4, кидал содержимое файла с циклами в основной gpp, шёл по пути ошибок и исправлял что меня просили. В общем ничего не помогает  От безисходности пишу сюда, вы моя последняя надежда понять что происходит и почему ничего не работает. Заранее благодарю за ответы!
×
×
  • Создать...