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

FAQ/Unigraphics/POST


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

29 минут назад, lexincton сказал:

стр. 167

Не разбираюсь в tcl. Не нужно из меня делать специалиста. Просто скажи как получить значения этих переменных. Больше ничего не нужно. Пробовал их global объявить, не помогло. И еще вопрос, где взять все переменные, которые выдает nx с описанием?

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


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

Пробовал их global объявить, не помогло.

Может их и не существует

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

И еще вопрос, где взять все переменные, которые выдает nx с описанием?

Screenshot_5.png.2d8b8010fdb3b3afeecfbfe825ec5bc7.png

Но там не все

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

Больше ничего не нужно. Пробовал их global объявить, не помогло.

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

N0010 G40 G90 G71
N0020 ############## begin FINISH PASSES = 4 ###############
N0030 ############## begin ROUGH PASSES = 2 ###############
N0040 (*****   begin of operate  *****)
N0050 ############## oper FINISH PASSES = 4 ###############
N0060 ############## oper ROUGH PASSES = 2 ###############
N0070 M80
N0080 M82
N0090 M84
N0100 M90
N0110 M20
N0120 G01 X-2.895 Y10.6 U-1.051 V0.0 F0.0
N0130 (*****   prohod   begin *****)
N0140 ############## prohod FINISH PASSES = 4 ###############
N0150 ############## prohod ROUGH PASSES = 2 ###############
N0160 G41 X-1.395
N0170 X.105

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

@lexincton

Показать содержимое  

запись

 

global list_tool

set row_tool "; T$mom_tool_number\

D$mom_tool_adjust_register"

set bsearch 0
set last_index 0
for {set i 1} {$i<=99} {incr i} {
    
    if { [info exists list_tool($i)]  } { 

          if {  $list_tool($i) == $row_tool } {

              set bsearch 1
              break;    

         }
    }  else  {
        set last_index $i
    }
}

if { !$bsearch } { set list_tool($last_index) $row_tool

 

чтение 

 

for {set i 1} {$i<=99} {incr i} {    
    if { [info exists list_tool($i)]  } { 

      puts $ofile $tool_list($i)

     } else { break }
}

Hide  
Подскажите, каким образом в этот код можно вставить Mom_output_literal, чтобы только строка с  одной переменной, например, D$mom_tool_adjust_register, выводилась с номером кадра УП?
Изменено пользователем artem-nafanya
Ссылка на сообщение
Поделиться на других сайтах
33 минуты назад, artem-nafanya сказал:

@lexincton

Подскажите, каким образом в этот код можно вставить Mom_output_literal, чтобы только строка с  одной переменной, например, D$mom_tool_adjust_register, выводилась с номером кадра УП?

MOM_output_literal "[format "D%s" $mom_tool_adjust_register] или в лоб MOM_output_literal "D$mom_tool_adjust_register"

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

@lexincton

1 час назад, lexincton сказал:

MOM_output_literal "[format "D%s" $mom_tool_adjust_register] или в лоб MOM_output_literal "D$mom_tool_adjust_register"

В лоб не выйдет, а если так: 

set row_tool  [MOM_output_literal "D$mom_tool_adjust_register"]

set bsearch 0
set last_index 0
 

то в УП выводит какой-то набор цифр:

Показать содержимое  

2216
2028
1845
1671
1500
1331
1152
794
460
268
82

Hide  

 

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

@lexincton

В лоб не выйдет, а если так: 

set row_tool  [MOM_output_literal "D$mom_tool_adjust_register"]

Это что? Что вообще хотите получить?

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

Это что? Что вообще хотите получить?

N10 T1

D1

N20 T2

D1

...

 

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

N10 T1

D1

N20 T2

D1

...

 

Возьмите последний вариант, в нем чтение поменяйте на

global list_tool

foreach number [lsort -ascii $list_tool] {
    set t_num [expr int($number/100)]
    set d_num [expr $number-$t_num*100]

    MOM_set_seq_on

    MOM_output_literal "T$t_num"

    MOM_set_seq_off

    MOM_output_literal "D$d_num"
}

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

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


N0010 G40 G90 G71
N0020 ############## begin FINISH PASSES = 4 ###############
N0030 ############## begin ROUGH PASSES = 2 ###############
N0040 (*****   begin of operate  *****)
N0050 ############## oper FINISH PASSES = 4 ###############
N0060 ############## oper ROUGH PASSES = 2 ###############
N0070 M80
N0080 M82
N0090 M84
N0100 M90
N0110 M20
N0120 G01 X-2.895 Y10.6 U-1.051 V0.0 F0.0
N0130 (*****   prohod   begin *****)
N0140 ############## prohod FINISH PASSES = 4 ###############
N0150 ############## prohod ROUGH PASSES = 2 ###############
N0160 G41 X-1.395
N0170 X.105

 

 

 

Вот так прописываю в начале прохода.

 

 

222.jpg

 

после того как пытаюсь постпроцессировать выдает вот такую ошибку

 

 

111.jpg

 

 

Может где то еще что то нужно объявлять?

 

 

 

Как можно посмотреть какие вообще данные выдает nx в постпроцессор, допустим имена всех переменных и из значения.

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

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


N0010 G40 G90 G71
N0020 ############## begin FINISH PASSES = 4 ###############
N0030 ############## begin ROUGH PASSES = 2 ###############
N0040 (*****   begin of operate  *****)
N0050 ############## oper FINISH PASSES = 4 ###############
N0060 ############## oper ROUGH PASSES = 2 ###############
N0070 M80
N0080 M82
N0090 M84
N0100 M90
N0110 M20
N0120 G01 X-2.895 Y10.6 U-1.051 V0.0 F0.0
N0130 (*****   prohod   begin *****)
N0140 ############## prohod FINISH PASSES = 4 ###############
N0150 ############## prohod ROUGH PASSES = 2 ###############
N0160 G41 X-1.395
N0170 X.105

 

Разобрался, спасибо. Я не правильно объявлял переменную.

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

@lexincton

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

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

@lexincton

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

Если проверять в списке, что через lsearch, но у меня в предыдущем варианте не хотел искать, разбираться тоже не стал и написал через перебор списка циклом

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

Здравствуйте товарищи программисты. Возник вопрос как постпроцессору на токарный станок задать вывод точки безопасного подхода и отхода инструмента если используется один и тот же инструмент на всех операциях??? если я хочу поставить между 26 и 27 номером кадра. И можно ли сделать так, чтоб номера инструментов выводились если даже используются одни и те же.

В постах не очень понимаю, так что сильно не ругайте.

Точка подхода.png

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

Здравствуйте товарищи программисты. Возник вопрос как постпроцессору на токарный станок задать вывод точки безопасного подхода и отхода инструмента если используется один и тот же инструмент на всех операциях??? если я хочу поставить между 26 и 27 номером кадра. И можно ли сделать так, чтоб номера инструментов выводились если даже используются одни и те же.

В постах не очень понимаю, так что сильно не ругайте.

Предположу, что инструмент выводите адресом T, соотв-но перед выводом вставляете MOM_force once T, если делаете не программно, через интерфейс билдера можно в контестном меню адреса поставить принудительный вывод (в этом случае билдер за вас сам пропишет предыдущую команду)

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

Если проверять в списке, что через lsearch, но у меня в предыдущем варианте не хотел искать, разбираться тоже не стал и написал через перебор списка циклом

Не совсем понял посыл. Какая там логика должна быть и примерный код.

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

Не совсем понял посыл. Какая там логика должна быть и примерный код.

set bsearch 0
foreach tool $list_tool {
    if { $tool == $row_tool } {
        set bsearch 1
        break
    }
}
если bsearch == 0, значит элемент в списке не найден

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

MOM_force once T

Подскажите где ее искать. Пошагово плиз. 

1 минуту назад, 62Alex33 сказал:

Подскажите где ее искать. Пошагово плиз. 

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

 

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

Подскажите где ее искать. Пошагово плиз. 

 

9 минут назад, 62Alex33 сказал:

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

Не, вот где

Screenshot_1.png.847891c05d7d96f069eb44abd1555a44.png

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

set bsearch 0
foreach tool $list_tool {
    if { $tool == $row_tool } {
        set bsearch 1
        break
    }
}
если bsearch == 0, значит элемент в списке не найден

Не пойму почему код сравнивает несколько наборов значений $tool и $row_tool?

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

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

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

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

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

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

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

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

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

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

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

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




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