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

FAQ/Unigraphics/POST


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

Подскажите. Если я вывожу список токарного инструмента в начало УП в формате:

T1/D1

T2/D1

T3/D1

То, если в токарном инструменте есть второй корректор D2, то выводится только T3/D2, а T3/D1, нет.

Как сделать чтобы выводилось и T3/D1 и T3/D2?

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


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

Добавить в список 2 инструмента с разными корректорами

Зачем создавать два инструмента, если физически в станке только один инструмент будет у которого два корректора?

Как "объяснить" постпроцессору, что если он встречает D2, то на до выводить и D1 тоже?

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

Что значит "объяснить" постпроцессору? вы сами список или массив формируете и сами его читаете как вам надо

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

Что значит "объяснить" постпроцессору? вы сами список или массив формируете и сами его читаете как вам надо

Просто я не в полной мере владею этим. Сделал по примеру. Подскажите куда копать дальше?

 

Сформировал массив  

#инициализация массива

set tool_index_max 8

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

#наполнение массива данными

set tool_str "; $mom_tool_number / D$mom_tool_adjust_register"

set tool_str [string toupper $tool_str]
set array_tool_name($mom_tool_number) $tool_str

Hide  
Прочитал массив  

#вариант_1

foreach id [array names array_tool_name] {
puts $ofile $array_tool_name($id)
}

 

#вариант_2

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

}

Hide  

 

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

@artem-nafanya

 

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

 

 

запись

 

global list_tool

set row_tool "; $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 }
}

 

Это всего лишь один из как минимум десятка  решений

Учите матчасть!

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

@lexincton

Спасибо за помощь, но этот код тоже не выводит T3/D1 и T3/D2 одновременно.

5a589a3037ccc_.JPG.2a3ae21d04f12de8337f9601649107ab.JPG

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

@lexincton

Спасибо за помощь, но этот код тоже не выводит T3/D1 и T3/D2 одновременно.

5a589a3037ccc_.JPG.2a3ae21d04f12de8337f9601649107ab.JPG

Значит T3D1 не используется, я написал формирование используемого инструмента

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

@lexincton

Используется. Если я убираю траекторию с D2, то начинает выводиться D1.

В похоже что в массиве значение D2 перезаписывает значение D1.

 

 5a589ba6d129e_.JPG.fe9f62bb10c2a6f67fdae34ffaf54b37.JPG

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

Процедура была изменена в верхнем сообщении, сначала случайно неполное отправилось, пришлось изменять, вы наверно не заметили

все нормально работает

postprocessort_D2.rar

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

@lexincton 

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

Процедура была изменена в верхнем сообщении, сначала случайно неполное отправилось, пришлось изменять, вы наверно не заметили

все нормально работает

postprocessort_D2.rar

Большое человеческое Вам спасибо за помощь!

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

Это всего лишь один из как минимум десятка  решений

Учите матчасть!

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

Ну это очевидно и понятно, что надо учить матчасть, гуглить, RTFM, этим и занимаюсь. Или вы какой-то иной смысл в это вкладываете?

Все мы с чего-то начинали. 

Чтобы написать мало мальски годный пост надо знать: NX, PostBuilder, TCL, специфику станка ЧПУ. Если где-то накосячил, то не всегда понятно где. Если спросить не у кого, то идёшь гуглить, гугл приводит на форум...

Я ещё не нашёл годных платных курсов чтобы из тебя сделали аттестованного специалиста по созданию постпроцессоров, они же себе конкурентов не будут готовить.

Буду признателен, если посоветуете что-то полезное в деле изучения созданию постпроцессоров.

Ещё раз спасибо.

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

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

Ну это очевидно и понятно, что надо учить матчасть, гуглить, RTFM, этим и занимаюсь. Или вы какой-то иной смысл в это вкладываете?

Все мы с чего-то начинали. 

Чтобы написать мало мальски годный пост надо знать: NX, PostBuilder, TCL, специфику станка ЧПУ. Если где-то накосячил, то не всегда понятно где. Если спросить не у кого, то идёшь гуглить, гугл приводит на форум...

Я ещё не нашёл годных платных курсов чтобы из тебя сделали аттестованного специалиста по созданию постпроцессоров, они же себе конкурентов не будут готовить.

Буду признателен, если посоветуете что-то полезное в деле изучения созданию постпроцессоров.

Ещё раз спасибо.

Hide

Никто ни из кого не сделает специалиста, пока человек не захочет саморазвиваться! Максимум можно дать направление. Почитайте Уэлша Джонса "Практическое программирование на tcl" для начала, будет полезным, если хотите развиваться в области постпроцессоров.

PS: правильно подметили, конкурентов никто не будет себе создавать

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

PS: правильно подметили, конкурентов никто не будет себе создавать

Судя по количеству грамотных программистов ЧПУ на рынке труда на сегодняшний день, ближайших конкурентов мы получим, при благоприятном стечении обстоятельств, лет через десять. IMHO.

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

Судя по количеству грамотных программистов ЧПУ на рынке труда на сегодняшний день, ближайших конкурентов мы получим, при благоприятном стечении обстоятельств, лет через десять. IMHO.

Каждый сам решает куда и как ему двигаться, я вот здесь года 3 вообще не появлялся

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

Судя по количеству грамотных программистов ЧПУ на рынке труда на сегодняшний день, ближайших конкурентов мы получим, при благоприятном стечении обстоятельств, лет через десять. IMHO.

 

Подготовку и переподготовку спецов надо ставить на поток, иначе это суета перед поражением.

А без конкуренции, при нынешней экономической ситуации, это ещё более усугубляется.

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

 

Подготовку и переподготовку спецов надо ставить на поток, иначе это суета перед поражением.

А без конкуренции, при нынешней экономической ситуации, это ещё более усугубляется.

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

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

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

Помощь это хорошо!

А при всей сложности создания постпроцессора, просто тупо скопировать не всегда выйдет.

Если человек хочет тупо скопировать, то это сразу видно по уровню задаваемых им вопросов.

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

@lexincton

10 часов назад, lexincton сказал:

@artem-nafanya

 

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

запись

global list_tool

set row_tool "; $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  

Подскажите, что в данном коде отвечает за порядок вывода значений переменных?

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

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • eljer0n
      Большое спасибо! Посмотрю. Но, судя по всему, даже если удастся заставить его сохранять чертеж с трехзначным исполнением, видимо, в той же спецификации правильного отображения не добиться. У Леона с товарищем был об этом разговор, что солид вроде как не воспринимает исполнения дальше двузначного. Хотя, может и я неправильно понял. Вернусь к этому вопросу чуть позже. Еще раз спасибо за совет.
    • mrVladimir
      @gudstartup @Viktor2004 спасибо Вам за такое участие.  Я вот тоже в maintenance manual заглянул (наконец-то ). А вот фраза "при замене FROM/SRAM необходимо ..." (под пунктом 3 во вложении) не подразумевает, что появление ps5523 произойдет только если мы решим на нашей чпу поменять именно FROM/SRAM. А при замене других печатных плат (в том числе и материнской ) необходимо только как написано в пункте 2 восстановить данные памяти SRAM и, при необходимости, файлы пользователя. Нет?
    • maxx2000
      @davidovka это же очевидно. Вдруг нужного размера не окажется  как в анекдоте  
    • davidovka
      А для чего и сотни исполнений в таблице и гибкость одновременно?
    • ak762
      в СВ есть встроенный калькулятор для расчета балок при различных сценариях нагружения если ваш профиль монорельса совпадает с предопределенными профилями то можно прикинуть поведение монорелься без анализа на картинке 2 расчета двутавровой балки в качестве теста    
    • Viktor2004
      @mrVladimir не спешите отчаиваться. Вопрос спорный Я завел новую тему в которой мы это выясним  
    • Viktor2004
      Уважаемые специалисты. У кого был опыт замены фануковских плат? Именно на ЧПУ. Пожалуйста напишите какое ЧПУ и какую плату меняли И результат. Подошла или не подошла  
    • gudstartup
      @mrVladimir к сожалению с вашей платой все не так просто вам придется приобрести ее клон то есть она должна быть подготовлена продавцом и в нее должен быть записан серийный номер вашей старой платы он на штрихкоде а так готовить умеют не все или готовьтесь к сертификации опций также есть еще один аппаратный вариант но не каждый будет на новую плату м\сх перепаивать с риском превратить ее в кирпич.   если бы у вас был отдельный модуль процессора то вы бы просто переставили его в новую плату и все а с этой платой из-за ее не модульности намучаешься
    • SAPRonOff
      в окне состава изделия снять замочки у колонки позиция, тогда генератор колонки состава изделия не будет им присваивать свои значения автоматически, а запомнит то - что вы поставили или стояло до изменений проекта: 
    • Kelny
      Смотреть надо процедуру main, почти в самом конце: Слева от этих строк на сером поле ставите красные точки (клик мышкой) и запускаете макрос, когда макрос дойдёт до обозначенных строк можно будет наводить мышку на перменные, например, sPathName и смотреть значения, что бы определить где сбой: Для продолжения выполнения макроса нажимаем зелёный треугольничек (как кнопка Play).      
×
×
  • Создать...