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

FAQ/Unigraphics/POST


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

14 минуты назад, artem-nafanya сказал:

Нумеруется так же первая строка, но теперь через одно значение массива. 

Я просто не стал опять писать 

{

global mom_sys_seqnum_start mom_sys_seqnum_incr
set mom_seqnum $mom_sys_seqnum_start

}

 

Полный вариант:

global mom_sys_seqnum_start mom_sys_seqnum_incr
set mom_seqnum $mom_sys_seqnum_start

set i 1
foreach number [lsort -ascii $list_tool] {
        set seq_temp ""
        if { $i < 2 } {

                set seq_temp "N$mom_seqnum " 

                incr mom_seqnum  $mom_sys_seqnum_incr
                incr i
        } else { set i 1 }
        puts $ofile "$seq_temp$number"       
}

 

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


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

Я просто не стал опять писать 

{

global mom_sys_seqnum_start mom_sys_seqnum_incr
set mom_seqnum $mom_sys_seqnum_start

}

Эти переменные я объявил, но всё равно не так.

 

 

Сейчас код выглядит так:  

#ВЫВОД СОДЕРЖИМОГО МАССИВА С ПОМОЩЬЮ ЦИКЛА
global mom_sys_seqnum_start mom_sys_seqnum_incr
set mom_seqnum $mom_sys_seqnum_start

set i 1
foreach number [lsort -ascii $list_tool] {
        set seq_temp ""
        if { $i < 2 } {
                set seq_temp "N$mom_seqnum "
                incr mom_seqnum  $mom_sys_seqnum_incr
                incr i
        } else { set i 1 }
        puts $ofile "$seq_temp $number"
}

 

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
 

Hide  

И выводит номера кадров отмеченные на фото жёлтым.

Надо чтобы номера кадров были на месте красных отметок.

Снимок.JPG

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

И выводит номера кадров отмеченные на фото жёлтым.

Надо чтобы номера кадров были на месте красных отметок

Пост надо с проектом

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

Пост надо с проектом

Пожалуйста:@lexincton

 

project.7z

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

Автор постпроцессора засунул данные по инструменту в текстовые блоки, которые выводил ПОСЛЕ постпроцессирования в начало файла УП процедурой reprocess. Так как "вклиниться" в эти текстовые блоки не так просто, надо голову ломать как эти блоки разбить на ; T2 / D1, потом номер кадра, потом R00 =  - могу подсказать как в этих текстовых блоках изменить место вывода ; T2 / D1 и нумерация начнется с R00

; **********************
; * DANNIE INSTRUMENTA *
; **********************
N80 CDI001 ; NACHALO DANNIH INSTRUMENTA
;
N10000   R00=2 R01=1 R02=3 R03=0.000 R04=0.000 R05=0.800
     R06=-2.5 R07=42.5 R10=500
     R20=200 R21=5 R22=2
     CWZ001 ; WERKZEUGDATEN ERSTWERKZEUG EINTRAGEN
     ; T2 / D1
;
  R00=3 R01=1 R02=2 R03=0.000 R04=0.000 R05=0.400
     R06=0. R07=0. R10=500
     R20=200 R21=5 R22=3
     CWZ001 ; WERKZEUGDATEN ERSTWERKZEUG EINTRAGEN
     ; T3 / D1
;
N10100   R00=6 R01=1 R02=3 R03=0.000 R04=0.000 R05=0.800
     R06=-2.5 R07=42.5 R10=500
     R20=200 R21=5 R22=6
     CWZ001 ; WERKZEUGDATEN ERSTWERKZEUG EINTRAGEN
     ; T6 / D1
;
 ; T3 / D2
     R00=3 R01=2 R02=3 R03=0.000 R04=0.000 R05=0.400
     R06=0. R07=0. R10=500
     CWZ001 ; WERKZEUGDATEN ERSTWERKZEUG EINTRAGEN
;
N120 CDI002 ; OKONCHANIE DANNIH INSTRUMENTA
N130 STOPRE
N140 R199=0
N150 

В чужих плодах воспаленных мозгов копаться - небольшое удовольствие.......

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

Пожалуйста:@lexincton

 

project.7z

Можно было сделать красивее через списки, но результат необходимый есть (последующие номера тоже можно отформатировать по порядку)

project.rar

 

Как видите, как раз он не гибкий

 

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

Можно было сделать красивее через списки, но результат необходимый есть (последующие номера тоже можно отформатировать по порядку)

project.rar

 

Как видите, как раз он не гибкий

 

Большое спасибо Вам за труд!

Ссылка на сообщение
Поделиться на других сайтах
В 18.01.2018 в 14:51, lexincton сказал:

Потому что ее нет и к тому же ничего не добавляется

 

global list_tool double_tools

if { ![info exists list_tool] } { set list_tool {} }
set row_tool  $mom_tool_number
set bsearch 0
foreach tool $list_tool {
    if { $tool == $row_tool } {
        set bsearch 1
        break
    }
}

if { !$bsearch } {

    lappend list_tool $row_tool

} elseif { ![info exists $double_tools($row_tool)] } { set double_tools($row_tool) 0 }

Если есть смена инструмента с одним и тем же номером, то этот код считает, что это дубликат.

Подскажите как сделать что бы он на это не реагировал?

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

Если есть смена инструмента с одним и тем же номером, то этот код считает, что это дубликат.

Подскажите как сделать что бы он на это не реагировал?

Без учета номера регистра?

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

Без учета номера регистра?

Тут регистр не отслеживается, только номер инструмента.

Так получается если инструменты в операциях расположены так:

Т2

Т2

Т2

Т6

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

А если так:

Т2

Т2

Т6

Т2

то код находит одинаковые номера инструментов, хотя это один и тот же инструмент Т2.

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

Тут регистр не отслеживается, только номер инструмента.

Так получается если инструменты в операциях расположены так:

Надо смену инструмента отслеживать? И выводить порядок этой смены?

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

Надо смену инструмента отслеживать? И выводить порядок этой смены?

Если отработал инструмент 1) Т1 и потом произошла смена инструмента на Т2, а потом смена на Т1,

то последний Т1 может быть как новым инструментом с номером совпадающим 1) Т1,так и снова сам первый инструмент 1) Т1.

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

Если отработал инструмент 1) Т1 и потом произошла смена инструмента на Т2, а потом смена на Т1,

то последний Т1 может быть как новым инструментом с номером совпадающим 1) Т1,так и снова сам первый инструмент 1) Т1.

И?

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

Надо смену инструмента отслеживать? И выводить порядок этой смены?

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

И?

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

Как отследить сей момент?

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

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

 

Т.е. при 

Т2
Т2
Т2
Т6

в списке T2 и Т6, при

Т2

Т2

Т6

Т2

3 инструмента?

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

 

Т.е. при 

Т2
Т2
Т2
Т6

в списке T2 и Т6, при

Т2

Т2

Т6

Т2

3 инструмента?

И там и там 2 инструмента. Но в варианте, когда Т6 находится между Т2, в NX возникает смена инструмента и код:

КОД  

global double_list_tool
global double_tools mom_tool_number
#ПРОВЕРКА НА ОДИНАКОВЫЕ НОМЕРА ИНСТРУМЕНТОВ (ВЫВОД ПРЕДУПРЕЖДЕНИЯ В РЕПРОЦЕССЕ)
if { ![info exists double_list_tool] } { set double_list_tool {} }
set row_tool $mom_tool_number
set bsearch 0
foreach tool $double_list_tool {
    if { $tool == $row_tool } {
        set bsearch 1
        break
    }
}
if { !$bsearch } {
    lappend double_list_tool $row_tool
} elseif { ![info exists double_tools($row_tool)] } { set double_tools($row_tool) 0 }
 

foreach number [array names double_tools]  {
MOM_display_message "ОБНАРУЖЕНЫ ОДИНАКОВЫЕ НОМЕРА ИНСТРУМЕНТОВ T$number"
MOM_output_to_listing_device "ОБНАРУЖЕНЫ ОДИНАКОВЫЕ НОМЕРА ИНСТРУМЕНТОВ T$number"
}

Hide  

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

Но может быть случай что человек ошибся и реально создал два разных инструмента с одинаковым номером "2".

Вариант с ошибкой человека код отрабатывает верно, а вариант со сменой инструмента -- нет.

 

Поясняющее видео: https://yadi.sk/d/8w8GnWmN3RghEz

 

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

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

Но может быть случай что человек ошибся и реально создал два разных инструмента с одинаковым номером "2".

Вариант с ошибкой человека код отрабатывает верно, а вариант со сменой инструмента -- нет.

Событие смены инструмента в билдере работает через одно место, чтобы отслеживать смену надо самому писать процедуру

project.rar

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

Событие смены инструмента в билдере работает через одно место, чтобы отслеживать смену надо самому писать процедуру

project.rar

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

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

Поясняющее видео: https://yadi.sk/d/5LlLstRJ3RirXA

POST_TOOL_LIST.rar

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

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

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

10 часов назад, artem-nafanya сказал:

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

Вариантов масса, можно и так попробовать

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

Вариантов масса, можно и так попробовать

Что-то пока не удаётся объединить TOOL_LIST и проверку на дубли. Не совсем понятно где там массив с номерами инструментов?

Какие есть ещё варианты?

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Ветерок
      "увеличение оптимизации". Оптимизацию невозможно ни увеличить, ни уменьшить.
    • gudstartup
      @boomeeeer может от страны зависит
    • david1920
      нет время нет заниматься да и информации новой нет Это я на других станках делал
    • gudstartup
      @david1920 имеется ввиду платы на системах с сертификацией опций фалом oprminf старые в расчет не принимаются вы свой 18i восстановили?
    • gudstartup
      очень даже спрашивают как обязательную информацию для проверки вашей компании налоговый идентификатор должен быть указан. на myfanuc не спрашивают а вот на портале к сожалению просто так не зарегаться. 
    • david1920
      На 0I-TC mate менял плату управления приводами На 18i-TB менял для диагностики платы процессоров (один был от Spinner другой простой) процы были одинаковые Всё работает
    • brigval
      Браком 1.04В версии 1.04Добавлено: Автоуменьшение высоты шрифта многострочного наименования в ОН чертежа.Добавлено: Переименование поверхностей, баз, размеров в порядке их следования на чертеже.Добавлено: Переименование изображений по ГОСТ: сначала виды, затем разрезы, сечения, выносные элементы.Добавлено: Выравнивание неассоциативных видов.Добавлено: Ручной ввод шага и угла наклона штриховки.Добавлено: Перемещаются в макроэлемент компоненты, исключаемые из спецификации.Добавлено: Выбор количества значащих цифр в значении площади поверхности детали для вставки в ТТ.Добавлено: Возможность не авторазмещать ТТ перед конвертацией чертежа в PDF.Добавлено: Добавлены кнопки «Выделить все включенные в расчет» и Выделить все исключенные из расчета».Добавлено: Версия КОМПАС-3D Home показывается в программе со словом Home.Добавлено: Улучшен алгоритм считывания и вставки ТТ чертежа.Добавлено: При конвертации чертежа в PDF удаляется старый файл с таким же обозначением в начале имени, как обозначение в начале имени нового файла.Добавлено: Улучшено считывание номеров позиций из 3D-модели сборки.Исправлено: Иногда скрытые и потом показанные объекты чертежа отображались не серым цветом.Исправлено: Иногда после ручного заполнения графы «Масса» ОН чертежа в окне программы масса могла отображаться не правильно.Исправлено: В некоторых случаях из ОН чертежа могла не считываться литера.Исправлено: В некоторых окнах программы неправильно показывался заголовок окна программы.Исправлено: Другие замеченные мелкие ошибки и неточности кода.Скачать
    • boomeeeer
      Не помню чтобы у меня такое спрашивали при регистрации.
    • Snake 60
      @eljer0n  Откройте макрос SaveDRW.swp редактором VBA Найдите вот эти строки: Поменяйте выделенную цифру на нужную вам 3 или 4 - это количество символов которое останется от имени конфигурации. PS При сохранении в PDF тоже ругается на неправильное название чертежа, т.к. тоже обрезает название конфигурации до двух знаков, там тоже надо править при желании...
    • eljer0n
      @malvi.dp в общем порядок следующий (на каждое исполнение свой чертеж и позиция в спецификации):   Для исполнения с 2мя знаками. 1. Есть деталь с именем формата ХХ-01.01-01 (последнее -01 это исполнение) 2. В Мпроп детали назначается исполнение из конфигурации (как у вас на картинке). Отображается корректно 3. Создается чертеж по модели, исполнение в основной надписи чертежа детали отображается корректно. 4. Сохраняется через SaveDRW с корректным именем. 5. В спецификации сборки все отображается корректно.     Для исполнения с 3мя знаками. 1. Есть деталь с именем формата ХХ-01.01-011 (последнее -011 это исполнение) 2. В Мпроп детали назначается исполнение из конфигурации. Отображается корректно 3. Создается чертеж по модели, исполнение в основной надписи чертежа детали отображается корректно. 4. Сохраняется через SaveDRW с некорректным именем, а именно - с обрезанным до двух знаков исполнением (-01). 5. В спецификации сборки шифр отображается (внезапно! может какой глюк был: у солида или у меня ) корректно, как и у вас на рисунке.     Выходит, загвоздка все-таки только в сохранялке чертежа.
×
×
  • Создать...