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

FAQ/Unigraphics/POST


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

10.03.2023 в 10:44, Artas28 сказал:

  а я вот так сделал, добавил ещё вывод длины инструмента. Поднять шапку на верх программы у меня не получилось, NX ругается на команду global mom_output_file_full_name

 

 

добавил некоторую модификацию, чтобы список инструмента был в начале программы, но появился нюанс - выводит все 24 строчки инструмента, и заполняет те позиции, которые есть в программе, а остальные оставляет пустыми. К примеру, если у нас будет в программе один инструмент с номером 7, то будет 6 пустых строк до него и 17 после, а седьмая строка будет с нашим инструментом и его параметрами. Возможно надо задать какое то условие для вывода в пункте 3, чтобы не было пустых строк?(скорее всего) или как то массив по другому формировать?

 

 

 

1) В событии начала программы инициируем массив, в который будем собирать необходимую информацию о применяемом инструменте

 

global array_tool_name;
global tool_index_max;
 set tool_index_max 24; # MAX KOL-VO INSTRUMENTOV V MAGAZINE
 for {set i 1} {$i<=$tool_index_max} {incr i} {
set array_tool_name($i) ""
}


2) В событии автоматической смены инструмента добавляем команду пользователя

 

global array_tool_name;
global mom_tool_name;
global mom_tool_number;
 
set tool_str "\(T$mom_tool_number\ $mom_tool_name\)";
set tool_str [string toupper $tool_str];
set array_tool_name($mom_tool_number) $tool_str;

 

 

3) В событии конца программы добавляем команду


global mom_output_file_full_name
global ptp_file_name
global mom_logname
global array_tool_name
global tool_index_max

set tmp_file_name "${ptp_file_name}_"

if {[file exists $tmp_file_name]} {
MOM_remove_file $tmp_file_name
}

MOM_close_output_file $ptp_file_name
file rename $ptp_file_name $tmp_file_name
set ifile [open $tmp_file_name r]
set ofile [open $ptp_file_name w]


#==============================================================
puts $ofile "(===============================)"
puts $ofile "(SPISOK INSTRUMENTA)"
for {set tool_index 1} {$tool_index<=$tool_index_max} {incr tool_index} {
puts $ofile "$array_tool_name($tool_index)"
}
puts $ofile "(===============================)"
#==============================================================

set buf ""

while { [gets $ifile buf] > 0 } {
       puts $ofile "$buf"
}

close $ifile
close $ofile

MOM_remove_file $tmp_file_name
MOM_open_output_file $ptp_file_name
 

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


11 минут назад, 5axisCNC сказал:

поищи на форуме уже писали как импортировать pb_cmd_tool_list.tcl

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

15 минут назад, 5axisCNC сказал:

поищи на форуме уже писали как импортировать pb_cmd_tool_list.tcl

все таки появилось, спасибо)) разобрался)

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

торописа нинннада :)

теперь другой вопрос - изменение данных в столбцах таблицы)) открыл эту команду и аж дурно стало... может проще в "моем" варианте как то убрать пустые строки?

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

тебе виднее что проще. Я разобрался  и доковырял вывод под фрезерную часть, добавил переменные в этот список и столбцы

 

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

тебе виднее что проще. Я разобрался  и доковырял вывод под фрезерную часть, добавил переменные в этот список и столбцы

 

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

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

for {set i 1} {$i<=$tool_index_max} {incr i} {
set array_tool_name($i) ""
}

по моему тут ты создаешь пустые строки сам. Нет?

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

for {set i 1} {$i<=$tool_index_max} {incr i} {
set array_tool_name($i) ""
}

по моему тут ты создаешь пустые строки сам. Нет?

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

27 минут назад, 5axisCNC сказал:

for {set i 1} {$i<=$tool_index_max} {incr i} {
set array_tool_name($i) ""
}

по моему тут ты создаешь пустые строки сам. Нет?

2.jpg1.jpgв обоих случаях меняется только концовка

31 минуту назад, 5axisCNC сказал:

for {set i 1} {$i<=$tool_index_max} {incr i} {
set array_tool_name($i) ""
}

по моему тут ты создаешь пустые строки сам. Нет?

если бы проблема была в этом месте, то и в конце были пустые строки

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

Здравствуйте! Подскажите, пожалуйста, по какому параметру лучше разделять наружнее точение от внутренней расточки? Это нужно для того, чтобы правильно назначить знак припуска U в цикле G71. Положительный для наружного точения и отрицательный для внутренней расточки. В старых версиях можно было использовать $mom_template_subtype, но в новых версиях они объединили шаблоны и этот способ уже не подходит.

Заранее спасибо!

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

Подскажите, пожалуйста, по какому параметру лучше разделять наружнее точение от внутренней расточки?

Здравствуйте. По направлению вершины резца не подойдёт? mom_tool_tracking_point.

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

Здравствуйте. По направлению вершины резца не подойдёт? mom_tool_tracking_point.

Спасибо большое за идею. Думал об этом варианте. Еще хочу посмотреть вариант по углу ориентации пластины. Сейчас только сел за ноут. Попробую оба варианта. Напишу потом, что получилось.

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

Спасибо большое за идею. Думал об этом варианте. Еще хочу посмотреть вариант по углу ориентации пластины. Сейчас только сел за ноут. Попробую оба варианта. Напишу потом, что получилось.

Идея с углом была правильная. Только использовал (HA) угол держателя. Соответственно, если угол 90*, то обработка внешняя и припуск U положительный, если угол 0*, то обработка внутренняя и припуск U отрицательный. 

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

Как  сделать, что бы пост выводил Фрезеровку в XC а не X I J. Фрезеровка торца. (токарно-фрезерная)

 

N0050 G12.1
N0060 G00 G90 X25. Y0.0 C188.712 S10610 M03
N0070 G43 Z10. H00
N0080 Z-2.
N0090 G01 Z-5. F250. M08
N0100 G17 G02 X22. I.7 J-3.938
N0110 G03 I-22. J0.0
N0120 X25. I4. J0.0

N0130 G01 Z-2. C171.288
N0140 G00 Z10.

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

Есть у кого пример, как сделать нормальную интерполяцию через G12.1 ? На токарно-фрезерном? Мне что брать обычный фрезерный 3х осевой, и делать 2Х и Y заменять на С? А без костылей NX не работает? Стандартный ZXC нормально не настроить?

Программа нормального человека.

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

%
O0000
T0405
G54 M35
G98 G97 S637 M33
G00
M90
C0.
G12.1 
M89 
G01 X44.238 C-4.688 Z10. F2000. M08
Z-5.
Z-10. F200.
G03 X25.114 C-7.25 R7.
G01 X18.186 C-13.25
G02 X13.856 C-14.5 R2.5
G01 X-13.856
G02 X-18.186 C-13.25 R2.5
G01 X-32.042 C-1.25
G02 X-32.042 C1.25 R2.5
G01 X-18.186 C13.25
G02 X-13.856 C14.5 R2.5
G01 X13.856
G02 X18.186 C13.25 R2.5
G01 X32.042 C1.25
G02 X32.042 C-1.25 R2.5
G01 X25.114 C-7.25
G03 X30.238 C-16.812 R7.
G01 Z10. F2000.
G13.1 
M90 
M35 M09
M05
M01 
M30
%

 

 

Программа  курильщика NX  :bash:

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

%
N0010 G40 G17 G90 G71
N0020 G91 G28 Z0.0
N0030 T00 M06
N0040 G12.1
N0050 G00 G90 X25. Y0.0 C-43.74 S1061 M03
N0060 G43 Z10. H01
N0070 Z-7.
N0080 G01 Z-10. F250. M08
N0090 X23.459 C-43.013
N0100 X21.886 C-43.178
N0110 X20.372 C-44.348
N0120 X19.26 C-46.226
N0130 X19.016 C-46.673
N0140 X18.233 C-49.146
N0150 X17.928 C-50.204
N0160 X17.423 C-53.343
N0170 X17.217 C-54.787
N0180 X17.046 C-58.543
N0190 X17. C-60.
N0200 X17.038 C-63.845
N0210 X17.153 C-67.647
N0220 X17.34 C-71.371
N0230 X17.598 C-74.984
N0240 X17.924 C-78.473

 

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

@Artas28 почему не настроить? В чём проблема сделать кинематику ZXC и указать что круговая интерполяция у тебя XC в полярных координатах? И чем тебя не устраивает программа курилищика, она что не делает годную деталь?

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

И чем тебя не устраивает программа курилищика, она что не делает годную деталь?

В симке она не читабельна. На станке ещё не проверял. Занимаем больше места. Как настроить ZXC ?

В первом варианте всё просто и понятно.

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

@Artas28 обычно это настройки файла станка, указывается перечень осей и их взаимное расположение. Конкретнов в твоём случае, линейные Z и X взаимоперпендикулярны, а поворотная С вдоль Z. Затем настраиваешь пост на вывод дуг используя XC. Но опять же вывод может быть как в декартовых, так и полярных координатах.

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

Как  сделать, что бы пост выводил Фрезеровку в XC а не X I J. Фрезеровка торца. (токарно-фрезерная)

1. При выборе Шаблона обработки нужно выбрать Токарно-фрезерную обработку.

2. В Настройках траектории - Метод нужно выбрать MILL_FINISH_POLAR (или MILL_ROUGH_POLAR).

3. Необходимо иметь адекватный пост, выдающий эту самую обработку в полярных координатах.

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

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

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

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

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

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

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

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

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

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

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




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