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

FAQ/Unigraphics/POST


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

Здравствуйте, может кто пояснит как работает команда uplevel в tcl, все перерыл и всё равно не понял, мне нужно чтобы в процессе постпроцессирования до записывалась переменная что по ходу программы находиться выше, кто-то знает как это делать? 

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


Здравствуйте коллеги. Работаю приводным инструментом, в плоскости ZX. Но вывод постпроцессора странный, дуга ПрЧС и должно быть G18G3, но выводит G18G2. Я для эксперимента покрутил систему координат вдоль оси Z и получил два правильных вывода и два нет. В чем может быть проблема ?

 

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

1.jpg

2.jpg

3.jpg

4.jpg

 

 

 

 

 

Изменено пользователем Noavatar
Изображения убраны в спйлер
Ссылка на сообщение
Поделиться на других сайтах
  • 1 месяц спустя...

Господа, профессионалы! Подскажите как сделать так что бы постпроцессор выдавал координату Z умноженную на 2.  Есть в постбилдере галдочка X=2X но мне нужно именно Z. Может какую команду кастомную надо дописать в перемещения? 

я попробовал написать такое . if [info exists mom_pos(2)] {set mom_pos(2) [expr $mom_pos(2)*2]} 

но видимо это ерунда какая то, т.к ничего не работает. как и прежде координата Z=Z а не 2*Z.

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

Здравствуйте, не гнобите, застрял на одном месте, стирается изменения, которые записываю/копирую в файл "свой пост".tcl при переоткрытии PostBuilder-а. Причём стирается вся внесённая процедура (proc PB_CMD_ ...), а изменения которую вношу внутрь существующей остаётся.

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

стирается изменения, которые записываю/копирую в файл "свой пост".tcl при переоткрытии PostBuilder-а.

А как вы в файл *.tcl пишете? Если просто из файла в файл в текстовом редакторе с помощью ctrl+c и ctrl+v, то не получится. Открывайте свой и чужой пост в генераторе постпроцессоров и уже в нём копируйте команды, которые вам нужны.

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

if [info exists mom_pos(2)] {set mom_pos(2) [expr $mom_pos(2)*2]} 

 

global mom_pos 

- строка сначала, а потом все что описали выше. 

И все это стоит написать в PB_CMD_before_motion

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

Подскажите как написать проверку чтоб при постпроцессировании проверять включился корректор на радиус при G41 G01 или на G41 G03/G02 последнее естественно не допустимо. 

При генерации NX выдает ошибку что не может включить и выводит с допустимыми значениями но иногда забываю это поправить. 

 

Изменено пользователем 5axisCNC
Ссылка на сообщение
Поделиться на других сайтах
1 час назад, 5axisCNC сказал:

Подскажите как написать проверку чтоб при постпроцессировании проверять включился корректор на радиус при G41 G01 или на G41 G03/G02 последнее естественно не допустимо. 

При генерации NX выдает ошибку что не может включить и выводит с допустимыми значениями но иногда забываю это поправить. 

А если просто убрать из кругового движения включение коррекции?

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

А если просто убрать из кругового движения включение коррекции?

99% программ как раз такие и есть G41 G01, но бывает что забываю(человеческий фактор) поправить и чтобы это исключить как раз проверку и хочу сделать чтоб пост напомнил о косяке.  Так то кучку проверок написал на включение оборотов на не соответствие номера инструмента и корректора на длину или радиус и т.п., тут как бы просто сравниваешь переменные и выводишь сообщение, а как сделать так чтоб прочитал прогу и нашел есть ли связка G41/G42 G03/G02 вот этого не знаю как сделать...

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

@5axisCNC в before_output читайте mom_o_buffer и проверяйте встречается ли в выводимой строке одновременно G2/G3 и G41/G42/G40

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

Коллеги, всем доброго времени суток!

 

В ходе настройки CSE драйвера станка возникла проблема:

Станок - токарно-фрезерный вертикальный, оси XZC

Контроллер - Sinumerik840D

 

Описание проблемы:

Возникает ошибка при отработке круговой интерполяции G2 G3 при активированной полярной трансформации:

ошибка.png

 

Данная ошибка происходит при отработке метода SetCircleParameter, при назначении любого из параметров отрабатываемой дуги. Как я понял, система ругается на отсутствие оси Y в плоскости G17, в которой производится обработка.  Линейные перемещения по G0 и G1 с включенной полярной интерполяции отрабатываются корректно. 

 

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

 

За ранее спасибо за любую информацию.

 

 

 

 

Изменено пользователем FCLM
Ссылка на сообщение
Поделиться на других сайтах
1 час назад, mr_Voden сказал:

@5axisCNC в before_output читайте mom_o_buffer и проверяйте встречается ли в выводимой строке одновременно G2/G3 и G41/G42/G40

Спасибо! Работает в PB_CMD_before_output! 

if {[string match "*G41 G03*" $mom_o_buffer ]} {
MOM_display_message "Korrektor na radius ne vkl " "warning" "W"
}

Но есть один минус сообщение появляется столько раз сколько раз он находит такое соответствие в итоге я раз 10 жал кнопку ОК :) 

Как заставить его выводить однажды а не 10 раз?

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

@5axisCNC Используйте неинициализированную переменную (до этого) или счётчик в качестве флага. Если будет нужно, немного позже смогу написать как это может выглядеть. 

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

set korrektoroff "*G41 G03*"
if {[string match $korrektoroff $mom_o_buffer ]} {
MOM_display_message "Korrektor na radius ne vkl ($mom_operation_name)" "warning" "W"
}

Тоже самое 10 раз. Или я вас не правильно понял?

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

@5axisCNC Как-то так (не проверял)

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

global flag
if { [string first "G41" $mom_o_buffer]!=-1 || [string first "G42" $mom_o_buffer]!=-1 } {
    if { [string first "G03" $mom_o_buffer]!=-1 || [string first "G02" $mom_o_buffer]!=-1 } {
        if { ![info exist flag] } {
            set flag 1
            MOM_display_message "Korrektor na radius ne vkl " "warning" "W"            
        }
    }
}

Хотя, наверное, надежнее движение по окружности отлавливать через mom_motion_event, а не искать G02/G03

Ссылка на сообщение
Поделиться на других сайтах
21.07.2022 в 19:02, 5axisCNC сказал:

Спасибо! Работает в PB_CMD_before_output! 

if {[string match "*G41 G03*" $mom_o_buffer ]} {
MOM_display_message "Korrektor na radius ne vkl " "warning" "W"
}

Но есть один минус сообщение появляется столько раз сколько раз он находит такое соответствие в итоге я раз 10 жал кнопку ОК :) 

Как заставить его выводить однажды а не 10 раз?

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

работаю в кам ныкса более 5ти лет и я не разу не умудрился этого сделать , а вы даже проверку прикрутить собрались

Изменено пользователем museok
Ссылка на сообщение
Поделиться на других сайтах
23.07.2022 в 11:37, museok сказал:

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

 а вы даже проверку прикрутить собрались

1.Легко и не принужденно. Поиграйтесь с величиной мин. перемещения корректора и например радиусом врезания из точки. Или как вариант периодически выскакивает на Zlevel при обработке формы.

2. Не собрался, а уже работает.

з.ы. 22 года работаю в NX

 

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

Вопрос, как назначить/поменять кодировку выходного файла. Нужно чтобы кодировка была кириллица 1251. Ну или чтобы нужные строки были с кодировкой ANSI (1251).

Что бы правильно отображались русские символы.

По команде системная кодировка "encoding system"  ответ "identity" , всего выдает три кодировки по команде "encoding names" :  identity;   UTF-8 ;  unicode .

ни одна из этих кодировок нужного результата не дает, хотя вид иероглифов меняется.

Есть ли еще какие том методы или способы работать с кодировкой.

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

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

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

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

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

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

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

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

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

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

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




×
×
  • Создать...