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

FAQ/Unigraphics/POST


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

02.08.2022 в 10:01, andromed сказал:

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

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

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

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

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

 

  fconfigure $ofile -encoding cp1251

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


Здравствуйте. Пытаюсь пилить стандартный фануковский пост под 5-осевой станок. Стойка Fanuc 0i-MF. Компоновка стол-стол (A-C). Поворот осей реализуется командой G68.2

Вот пример из УП

( 1FR32 UGOL7.53 ) 
Z200 
G0A0C0 
G68.2X0.Y0.Z0.I180.J7.53K0. (я правильно понимаю что это аналог CICLE800 ?)
G53.1
X29.179Y140.036
Z118.63
Z54.879
G01Z10.242F300 

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

Ссылка на сообщение
Поделиться на других сайтах
05.08.2022 в 00:15, Vladislav-dobrynin сказал:

 

  fconfigure $ofile -encoding cp1251

Ответ тот же самый, что и когда я пытался менять кодировку построчно "unknown encoding"  Как я говорил ранее по команде получить кодировку в ответ только три кодировки и в них нет cp1251.

Может дело в версии NX (тестирую в 10ке) или существует какая то возможность подгрузить системные кодировки, во всех примерах в сети по команде encoding names вылетает целый абзац кодировок. 

image.png

Ссылка на сообщение
Поделиться на других сайтах
05.08.2022 в 00:15, Vladislav-dobrynin сказал:

 

  fconfigure $ofile -encoding cp1251

Ответ тот же самый, что и когда я пытался менять кодировку построчно "unknown encoding"  Как я говорил ранее по команде получить кодировку в ответ только три кодировки и в них нет cp1251.

Может дело в версии NX (тестирую в 10ке) или существует какая то возможность подгрузить системные кодировки, во всех примерах в сети по команде encoding names вылетает целый абзац кодировок. 

image.png

 

Вопрос решен! Практически сам себе и ответил.  Действительно в NX10  только 3 кодировки,  начиная с 12шки  есть все нужные кодировки.  Но и тут важно место где разместить команду по смене кодировки.  Поставил сразу после  открытия/создания файла и все получилось.

set ofile [open $arhiv_file_name w]
fconfigure $ofile -encoding cp1251

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

Здравствуйте. Как сделать так чтобы вызов инструмента был в каждой операции?

На данный момент если в 4х операциях исп-ся один и тот же инструмент, то вызов инструмента происходит только в первой операции.

 

Пост использую стандартный Fanuc 30i advansed

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

Если операции идут подряд то это нормально - что вывод только в первой операции. А если разбросаны по установу то да вызов нужен. Тогда имхо нужно смотреть: первое есть ли вызов инструмента в поле автоматическая смена? Второе проверить галки стоят ли в поле обязательный вывод?

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

Если операции идут подряд то это нормально - что вывод только в первой операции. А если разбросаны по установу то да вызов нужен. Тогда имхо нужно смотреть: первое есть ли вызов инструмента в поле автоматическая смена? Второе проверить галки стоят ли в поле обязательный вывод?

Операции идут подряд. Нужен вывод инструмента в каждой операции.

Как можно реализовать?

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

Операции идут подряд. Нужен вывод инструмента в каждой операции.

Как можно реализовать?

 

в маркере события first move (событие происходит если смены инструмента нет) создаете новую PB_CMD или дописываете в существующую PB_CMD - команду вызова события смены инструмента, отдельной строкой пишете MOM_tool_change

По данной команде постпроцессор осуществит принудительно вызов события смены инструмента и все что записано в маркере события auto tool change будет выведено в управляющую программу с учетом модальности адресов 

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

 

в маркере события first move (событие происходит если смены инструмента нет) создаете новую PB_CMD или дописываете в существующую PB_CMD - команду вызова события смены инструмента, отдельной строкой пишете MOM_tool_change

По данной команде постпроцессор осуществит принудительно вызов события смены инструмента и все что записано в маркере события auto tool change будет выведено в управляющую программу с учетом модальности адресов 

Спасибо, помогло. Как тут плюсануть в репутацию?

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

Еще один вопрос

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

Накидал три операции. 

1я операция обработка при С90.

2я при С0

3я при С0

 

Почему-то если постить эти операции по отдельности, то углы в программе отображаются правильно. Т.е. сначала С90, затем С0 и затем С0.

Если постить целиком, то в первой операции устанавливается угол С90, во второй и третьей опрерациях тоже С90.

Как сделать так чтоб во второй и третьей операциях был угол С0?

Пост использую стандартный Fanuc 30i advansed

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

Почему-то если постить эти операции по отдельности, то углы в программе отображаются правильно. Т.е. сначала С90, затем С0 и затем С0.

Если постить целиком, то в первой операции устанавливается угол С90, во второй и третьей опрерациях тоже С90.

Как сделать так чтоб во второй и третьей операциях был угол С0?

Пост использую стандартный Fanuc 30i advansed

Кинематика реального станка какая и какая в постпроцессоре? В посте скорее всего кинематика 5 осей? 

У вас во второй и третьей операции 4 и 5 ось принимают альтернативные положения. Чтобы этого не было - если реальный станок 4 осевой - задавайте 4 осевую кинематику в постпроцессоре. Если реальный станок 5 осевой - сбрасывайте принудительно текущие повороты 4 и 5 осей в конце каждой операции - это можно сделать при помощи назначения событий Rotate с назначениями поворотов осей 0 в конце каждой операции. Или прописывая вызов событий Rotate в конце каждой операции, при помощи соответствующей команды в постпроцессоре MOM_rotate

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

Кинематика реального станка какая и какая в постпроцессоре? В посте скорее всего кинематика 5 осей? 

У вас во второй и третьей операции 4 и 5 ось принимают альтернативные положения. Чтобы этого не было - если реальный станок 4 осевой - задавайте 4 осевую кинематику в постпроцессоре. Если реальный станок 5 осевой - сбрасывайте принудительно текущие повороты 4 и 5 осей в конце каждой операции - это можно сделать при помощи назначения событий Rotate с назначениями поворотов осей 0 в конце каждой операции. Или прописывая вызов событий Rotate в конце каждой операции, при помощи соответствующей команды в постпроцессоре MOM_rotate

 

Станок токарно-фрезерный XYZC

Фрезерный инструмент можно устанавливать как в осевом положении так и в радиальном.

Какую кинематику выбрать при создании поста? Чтобы фрезеровка велась со стороны торца детали и со стороны цилиндрической части детали.

Интересует только фрезеровка.

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

XYZC

соответственно 4 осевую с поворотным столом - осью С

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

Здравствуйте. Как сделать, что бы при G0 формат значений был xxx.xx, а при G1, G2 формат значений xxx.xxx ? Пробовал создавать переменную, но тогда модальность неправильно работает.

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

@Denya101 Попробуйте в before_motion дописать следующее:

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

global mom_motion_event
global mom_pos
if { $mom_motion_event=="rapid_move" || $mom_motion_event=="initial_move" } {
    set mom_pos(0) [format "%.2f" $mom_pos(0)]
    set mom_pos(1) [format "%.2f" $mom_pos(1)]
    set mom_pos(2) [format "%.2f" $mom_pos(2)]
}

 

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

@Denya101 Должно было сработать. Тогда можете в лс мне кинуть свой пост, что-нибудь придумаю вечером. 

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

Должно было сработать. Тогда можете в лс мне кинуть свой пост, что-нибудь придумаю вечером. 

Лучше через def сделать, правда придётся отдельные X,Y,Z прописать и дополнительный FORMAT AbsCoord_1 "&__5.2_", ну поправить в rapid_move

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

Доброго дня. Можно ли сделать так, что бы mom_o_buffer вставлял значения не в конце кадра, а в середине? (т.е. примерно так: G G "значение из буфера" X Y Z)

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

Доброго дня. Можно ли сделать так, что бы mom_o_buffer вставлял значения не в конце кадра, а в середине? (т.е. примерно так: G G "значение из буфера" X Y Z)

Вопрос не актуален. Разобрался как работает буфер.

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

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

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

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

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

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

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

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

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

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

    • Centur5



  • Сообщения

    • Александр 36
    • Igor Lipin
      Доброва времени суток, помогите разобраться с неисправностью станка Hiperturn 65-dt на стойке Sinumerik 840 DSL.  После сервисного обслуживания подрядчиком периодически срабатывает ошибка 21612: Канал 1: Ось S1/C11 разрешение сброшено, причина 1. Сервомотор шпинделя оснащен датчиком на валу AMO, других энкодеров на валу не нашел. Неисправность возникает хаотично, на разных операциях программы обработки, но при вращении шпинделя. По рекомендации справки (Help) повышали параметр 36060, на какое-то время помогало, а потом опять ошибка. Пробовали при работе шевелить все соединения в КК двигателя и привода, SMC20, датчики температуры, энкодер AMO.Короче ничего не помогает. Кто встречался с такой ошибкой, посоветуйте.  
    • Jesse
      по штоку смотрите. Т.е. в миллиметрах. Ну , у нас так..))
    • clavr
      переменные одни и те же? не будет конфликта? 
    • Alexandr97
      Проблема кроется в следующем. После создания библиотеки стандартных изделий и создания конфигурации системы в tflex docs через cad, невозможно обновить библиотеку на других компьютерах. Вся библиотека была привязана к конфигурации формата tws. Пользователи Tflex cad через меню документов закрепляют у себя библиотеку с помощью выбранной конфигурации, но она автоматически сохраняется у них на диске. Таким образом, если начальный разработчик в библиотеке воспроизведет изменение, то остальные пользователи этого не увидят, данные не обновятся, так как все сохранено у них на компьютере почему-то, и с docs новые изменение не подтягиваются. Вопрос: подскажите, пожалуйста, как же все таки настроить библиотеку в docs так, чтобы при ее обновлении, вся библиотека у всех пользователей автоматически обновилась? Сейчас выходит так:разработчик делает изменение, сохраняет в докс, пользователи этого не видят, так как система не обновляется. Разработчику остается только создать заново конфигурацию и всем пользователям ее заново у себя прикрепить... Так же не должна работать система?
    • Snake 60
      @clavrНет, мои макросы самостоятельные, только делают тоже что и Мпроп заносят свойства в деталь/сборку. Плюс в том, что есть пакетный режим обработки
    • clavr
      там экзешник MProp.exe. его тоже запустит? или именно макрос нужен? p.s. сижу на макросах SWPlus.NET v.1.0
    • Snake 60
      @clavr Мой макрос делает это для сборки: https://snake-60.ru/blog/blog-list/84-onepage-blog/78-fromfilenametoproperties-vba-makros-paketnogo-zaneseniya-svojstv-v-detali-i-ili-podsborki А этот для папки с проектом: https://snake-60.ru/blog/blog-list/84-onepage-blog/80-makros-paketnogo-zaneseniya-svojstv-v-detali-sborki-nakhodyashchiesya-v-papke
    • Kelny
      Версия должна быть SW2014 и выше: https://help.solidworks.com/2014/RUSSIAN/SolidWorks/sldworks/c_3d_bounding_boxes.htm   Как вариант макросом (но не всегда корректно давал габарит на не прямые поверхности, например, сферы или кривые поверхности): https://kelnyproject.ucoz.ru/load/6-1-0-7 при желании можно поковываться и встроить макрос в документ модели, что бы обнавляло при запуске или обновлении модели.   А в последних версиях так же появилась ГРАНИЧНАЯ РАМКА (см. ссылку на справку выше), которая имеет габариты и эти габариты могут быть вставленны как ссылка на размер, как раз в том виде как вы приводите.
    • malvi.dp
      Стандартными средствами не получится, здесь обсуждали.
×
×
  • Создать...