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

Вопросы по Pm-post.


dtsyplov

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

Доброго времени суток всем, прошу помощи!!! Я уже не знаю что делать, начал изучать обработку по 4-ой оси вдоль оси Х в Powermill (Обработать с одной стороны, а после перевернуть на 180 градусов и обработать с другой стороны). Но каждый раз получаю сообщение "Направление оси Z траектории изменилось." Изучал по видео уроку сия процесс, там делали все просто, а это меняли направление оси Z на противоположный, а у меня он ругается на такие действия. Помогите кто чем может, прошу!(

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


Подскажите пожалуйста как через постпроцессор можно вывести в карту наладки на какой угол повернется ось В или допустим какой цикл будет работать (например haidenhain Q202-сверление) или включена коррекция на радиус или нет?

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

Вопрос знатокам можно ли создать файл карты наладки в самом постпроцессоре? Если можно то как это сделать?

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

Всем день добрый кому то вечер добрый! Приобрели чпу фрейзер ручного изготовления рабочим полем 205 по Х и 305 по Y, шильдик на нем Авиор-15М. и вот дошла очередь работать на 4 оси, расположили ее вдоль оси Y. Четвертая ост полноценная, УП делал в PowerMill 2019. Дошла очередь до записи НЦ и понял что нету постпроцессора под 4 ось повермил со станком была папка с файлами но там постпроцессоры для арткам. Второй день ползаю по интернету скачиваю разные файлы которые предлогают на форумах но при записи выдает ошибку!) кто нибуть может помоч, с чего начать куда плясать может быть как то можно написать свой! Я уверен каждый из вас это проходил!)

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

Всем день добрый кому то вечер добрый! Приобрели чпу фрейзер ручного изготовления рабочим полем 205 по Х и 305 по Y, шильдик на нем Авиор-15М. Плата кправления матч3!и вот дошла очередь работать на 4 оси, расположили ее вдоль оси Y. Четвертая ост полноценная, УП делал в PowerMill 2019. Дошла очередь до записи НЦ и понял что нету постпроцессора под 4 ось повермил со станком была папка с файлами но там постпроцессоры для арткам. Второй день ползаю по интернету скачиваю разные файлы которые предлогают на форумах но при записи выдает ошибку!) кто нибуть может помоч, с чего начать куда плясать может быть как то можно написать свой! Я уверен каждый из вас это проходил!)

 

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

скинь пост, посмотрим что делать . Мы не знаем что там переделал )))

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

скинь пост, посмотрим что делать . Мы не знаем что там переделал )))

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

за пост-файлик спасибо,но это совсем не то,он под капризный Deckel Maho, 15 летней давности ...так вся загвоздка,в том ,что это SIEMENS ,тут все гораздо сложнее ...

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

за пост-файлик спасибо,но это совсем не то,он под капризный Deckel Maho, 15 летней давности ...так вся загвоздка,в том ,что это SIEMENS ,тут все гораздо сложнее ...

И насколько это сложно??

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

siemens (SINUMERIK) сама по себе очень навороченная система (для начала стоит только взглянуть в мануал по программированию с командами и тут многое проясняется) сравнивать ее не буду,так как сильно с ней не знаком ,но те кто работал в fanuc , затем переходил на sinumerik ( все как один говорят , система сложнее ,но не менее интересна )

для меня сейчас ,на данном этапе это сделать правильно цикл глубокого сверления, cycle 83

post-43918-0-18157500-1454827135_thumb.jpg

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

Ну да. По количеству параметров для одного цикла сверления, представляю что они там с остальным наворотили)))

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

скинь пост, посмотрим что делать . Мы не знаем что там переделал )))

Ширина поля для вывода значения параметра ID слишком мала для фразы "4 axis FANUC SIEMENS 810D 4A R2"

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

Всем привет.

Хочу организовать вывод пользовательского блока команд по срабатыванию условия в скрипте и что-то не получается...

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

post-443-0-29481400-1456999892_thumb.jpg

https://drive.google.com/file/d/0B5158W-XfF4WR1E0aUVMY19Yd1U/view?usp=sharing

 

 

Создал скприпт, который должен выводить этот блок при условии когда номер текущего инструмента ==1 следующий ==2:

 

post-443-0-99503500-1456999902_thumb.jpg

https://drive.google.com/file/d/0B5158W-XfF4WZExSS3BBbDlheGs/view?usp=sharing

 

Не выводит ничего...

 

И второй вопрос - как сделать вывод этого блока в конкретный момент времени, например после вывода команды Load Tool?

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

Всем привет.

Хочу организовать вывод пользовательского блока команд по срабатыванию условия в скрипте и что-то не получается...

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

Создал скприпт, который должен выводить этот блок при условии когда номер текущего инструмента ==1 следующий ==2:

 

Не выводит ничего...

 

И второй вопрос - как сделать вывод этого блока в конкретный момент времени, например после вывода команды Load Tool?

Ну а скрипт-то к какой команде подключен? Вы создали функцию, которая управляет командой и вызывается этой же командой. Вот и не работает. Читайте справку, там все вопросы, которые вы задаете, уже объяснены.

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

Удалось подключить скрипт к команде Unload Tool, она была неактивированна  и пустая. 

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

А скрипт выглядит так:

function ToolChange_moving ()
{ 
var res;
if (GetParam("%p(Tool Number)%")==1 && GetParam("%p(Tool Number Next)%")==2) { res = AdvancedResponse("%b(Tool_change_1-2)%");}
 
return res;
}

При смене с первого на второй инструмент вывести блок команд Tool_change_1-2. 

 

Всем спасибо за внимание ).

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

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

А скрипт выглядит так:

Нормально все команда выводит, со скриптом и без. Читайте справку про StandardResponse и AdvanceResponse

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

Kinematik к этому у меня вопрос . Если идет смена с первого на второй инструмент то выведет блок команд Tool_change_1-2 а если выведет с второго на третий то что будет ? разьве не надо написать еще это условие и как его написать ? спс заранее

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

Kinematik к этому у меня вопрос . Если идет смена с первого на второй инструмент то выведет блок команд Tool_change_1-2 а если выведет с второго на третий то что будет ? разьве не надо написать еще это условие и как его написать ? спс заранее

Скрипт ToolChange_moving вызовет команду Tool_change_1-2 в случае, если номер актуального инструмента - 1, а номер последующего - 2. Во всех остальных случая ничего не произойдет, в том числе не сработает команда Unload Tool, даже если в ней что-то есть. Для того, чтобы обеспечить работу команды Unload Tool, нужно достаточно немного преобразовать скрипт, н-р так:

function ToolChange_moving ()
{ 
var res=StandardResponse();
if (GetParam("%p(Tool Number)%")==1 && GetParam("%p(Tool Number Next)%")==2) { res += AdvancedResponse("%b(Tool_change_1-2)%");}
 
return res;
}
Ссылка на сообщение
Поделиться на других сайтах

Kinematik ,еще глупый у меня вопрос . Почему начинаешь var res=StandardResponse(); и потом вдруг res += AdvancedResponse("%b(Tool_change_1-2)%");} ? Мне нужно это объяснить более просто как малому ребенку )) спс заранее

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

Kinematik ,еще глупый у меня вопрос . Почему начинаешь var res=StandardResponse(); и потом вдруг res += AdvancedResponse("%b(Tool_change_1-2)%");} ? Мне нужно это объяснить более просто как малому ребенку )) спс заранее

 

Комбинация выражений var res=StandardResponse() и res += AdvancedResponse("%b(Tool_change_1-2)%") позволяет скрипту сначала выполнить до конца команду Upload Tool (т.е. ту команду, из которой вызван скрипт), а потом запустить команду Tool_change_1-2. Если просто указать res = AdvancedResponse("%b(Tool_change_1-2)%"), то скрипт не позволит выполнение команды Upload Tool до конца.

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

Комбинация выражений var res=StandardResponse() и res += AdvancedResponse("%b(Tool_change_1-2)%") позволяет скрипту сначала выполнить до конца команду Upload Tool (т.е. ту команду, из которой вызван скрипт), а потом запустить команду Tool_change_1-2. Если просто указать res = AdvancedResponse("%b(Tool_change_1-2)%"), то скрипт не позволит выполнение команды Upload Tool до конца.

Спасибо за разъяснения, очень полезно.

Возник ещё вопрос.

В конце программы нужно сделать пустую строку (перенос каретки).

Обычным способом решить не удалось.

 

Обычный - это номер кадра + комментарий. Номер кадра не выводим , комментарий пустой. Но, если комментарий пустой, то постпроцессор ничего и не выводит, даже если повесить условия выводить всегда и независим если не изменился. Пришлось пока что поставить пробел и всем технологам объяснить, что пробел нужно удалить руками.

 

Без пустой строки или со строкой только с пробелом станок не работает.

 

Как сделать?

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

Привет.

Опять вопрос по скриптам.

Возможно ли через скрипты организовать нормальные диалоговые окна с вводом данных?

Допустим, ввод пользователем каких-то переменных?

 

Попробовал сделать через VBscript - ругается:

Function  Loading_variables()
    Dim Name 
    'объявляем переменную Name

    Name = InputBox("Введите свое имя:", "") 
    'присваиваем Name имя введенное пользоваетелем

    MsgBox "Привет " & Name + " !" 
    'выводим приветствие
  Loading_variables = ""

End Function

Внизу висит сообщение "Ошибок не найдено", но когда вешаешь этот скрипт на какую либо команду - пишет в окне просмотра кода следующее:

 
script error: Разрешение отклонено: 'InputBox'
Location:
    script: line 4, col 4
Ссылка на сообщение
Поделиться на других сайтах

Вопрос насчёт диалоговых окон снят. 

Удалил бы вопрос, но почему-то запрещено изменение.

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

Привет всем поклонникам PowerMill!

Хочу поделиться с вами постами 3-4axis  для фрезерного станка HAAS TM-2P! По причине переезда на другое место жительства (CAM) из за некоторых причин ! И  чтоб они не пылились в архиве выкладываю здесь,  возможно кому то пригодятся! Спасибо!

 

HAAS TM-2P PowerMill.rar

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • maxx2000
      @Artas28так надо рецепт в массы нести, а то Ванёк ничему не научится
    • Orchestra2603
      Выкидываем не в смыле, что мы ее вырезаем.. Простите мне эту вольность)) Просто там две одинаковые строки. Достаточно рассмотреть только одну. Нет смысла хранить вторую строку в матрице, поскольку она ничего не привносит. Вы можете совершенно формально взять полученный i-й собственный вектор, умножить на матрицу K-lambda_i*M и получиь нулевой вектор.   На самом деле.. Мне прям пришлось прям подумать над аналогией с включением закрепления в статике. И это было полезно и интересно. Так что вам спасибо за "подгон", что называется )) Но все-таки разница есть ...   Вот у вас в статике:   И здесь действительно получается, что если мы зафиксируем, например, положив a=0, то это будет эквивалентно "выкидыванию" 1-го стобца и 2-й строки, и решению уже такой модифицированной невырожденной системы *в данном случае вообще тривиальной). При этом f2 просто станет узловой реакцией и определится как -f1 автоматически: К слову, можно положить любой a, не только нулевой. Результат будет такой же для сил, но прогибы, ясное дело, поменяются.   Но это отличается от нашей задачи на собственные значения. У нас нет внешних сил {f}.  А знaчит и упругие силы [K]{x} в системе должны быть равны нулю. И для нулевой собственной частоты мы по сути ищем такой набор перемещений, при которых в системе отсутствуют упругие силы.  И таких наборов перемещений бесконечно много. Вообще говоря, для трехмерных более сложных систем оказывается, что существует до 6-ти базисных векторов (понятно, что связанных с движениями как твердого целого), и любая линейная комбинация из этих векторов будет решением такой задачи. Но нам не нужно само решение! Нам нужен как раз сам базис пространства решений! Причем, сами вектора в этом базисе нас интересуют с точностью до множителя, ь.е. таких базисов можно напридумывать бесконечно много. Но нам нужен толкьо какой-то один базис, и всего-то. В этой простейшей задачке - это просто один вектор  {1, 1}. Можно взять {2,2} или {e,e} - не имеет значения, нас любой из них строит. И нам этого достаточно.    Обратите внимание, что этот вектор нельзя получить из задачи статики, где {f} ≠ {0}, положив какое-то значение для a, т.е. внедрив какое-то "закрепление" в вашей интерпретации.  Пожтому я убежден, что это другая задача, т дело тут не в закреплениях.   Не понимаю, про какую вы матрицу
    • Viktor2004
      Туда вроде наоборот заносится значение какое-то, но не считывается Смотрю чужие программы, там вроде только 8549 используют. При чем у них в программах циклы поболее моих, которыми я круги чертил O4198 ; #500=#8549 ; IF[ #8549 EQ 0 ] THEN ; #10409=0 ; ENDIF ; IF[ #8549 EQ 134 && #10409 EQ 0 && #10422 NE 0 ] THEN ; #10409=1 ; #10422=FIX[#10422 / 10] ; #10427=1 ; ENDIF ; IF[ #8549 EQ 48 && #10409 EQ 0 ] THEN ; #10409=1 ; #10422=#10422 * 10 + 0 ; #10427=1 ; ENDIF ; IF[ #8549 EQ 49 && #10409 EQ 0 ] THEN ; #10409=1 ; #10422=#10422 * 10 + 1 ; #10427=1 ; ENDIF ; IF[ #8549 EQ 50 && #10409 EQ 0 ] THEN ; #10409=1 ; #10422=#10422 * 10 + 2 ; #10427=1 ; ENDIF ; IF[ #8549 EQ 51 && #10409 EQ 0 ] THEN ; #10409=1 ; #10422=#10422 * 10 + 3 ; #10427=1 ; ENDIF ; IF[ #8549 EQ 52 && #10409 EQ 0 ] THEN ; #10409=1 ; #10422=#10422 * 10 + 4 ; #10427=1 ; ENDIF ; IF[ #8549 EQ 53 && #10409 EQ 0 ] THEN ; #10409=1 ; #10422=#10422 * 10 + 5 ; #10427=1 ; ENDIF ; IF[ #8549 EQ 54 && #10409 EQ 0 ] THEN ; #10409=1 ; #10422=#10422 * 10 + 6 ; #10427=1 ; ENDIF ; IF[ #8549 EQ 55 && #10409 EQ 0 ] THEN ; #10409=1 ; #10422=#10422 * 10 + 7 ; #10427=1 ; ENDIF ; IF[ #8549 EQ 56 && #10409 EQ 0 ] THEN ; #10409=1 ; #10422=#10422 * 10 + 8 ; #10427=1 ; ENDIF ; IF[ #8549 EQ 57 && #10409 EQ 0 ] THEN ; #10409=1 ; #10422=#10422 * 10 + 9 ; #10427=1 ; ENDIF ; IF[ #10422 GT 9999 ] THEN ; #10422=FIX[#10422 / 10] ; ENDIF ; IF[ #500 EQ 249 && #8500 EQ 4170 ] THEN ; #8500=4601 ; M99 ; ENDIF ; IF[ #500 EQ 240 ] THEN ; IF[ #8500 EQ 4174 || #8500 EQ 4173 || #8500 EQ 4177 ] THEN ; #8500=4170 ; M99 ; ENDIF ; IF[ #8500 EQ 4178 ] THEN ; #8500=4170 ; M99 ; ENDIF ; ENDIF ; IF[ #500 EQ 248 && #8500 EQ 4170 && D34.0 NE 0 ] THEN ; #8500=4174 ; M99 ; ENDIF ; IF[ #500 EQ 247 && #8500 EQ 4170 && D30.4 EQ 1 && D29.6 EQ 0 ] THEN ; #8500=4175 ; M99 ; ENDIF ; IF[ #500 EQ 246 && #8500 EQ 4170 && D35.0 EQ 1 && D35.4 EQ 1 ] THEN ; #8500=4178 ; M99 ; ENDIF ; IF[ #8549 EQ 152 && #10409 EQ 0 && #10422 EQ 5656 ] THEN ; #8500=4177 ; M99 ; ENDIF ; M99 ;  
    • nicomed
      Как победить проблему с блокированием сегментов эскиза не знаю. Поэтому пока полумеры... Ввел активацию чертежного листа после разрыва линии. Для разблокирования сегментов после закрытия программы двойным кликом активировать чертежный вид, где надо двигать сегменты эскиза. Добавил настройки. Можно настроить величину генерируемого зазора в  файле options.xml. По толщине и стилю линии, если кто подскажет как прочитать стиль и толщину выбранной кромки ( силуэтной кромки), то тогда можно будет "напосмотреть".   Пару раз натыкался на такой глюк - остается только один сегмент эскиза, грешу на рассинхронизацию работы солида и приложения. EdgeTrim_v3.3.zip
    • si-64
      да, это работает. спасибо. но как то особо не работал со слоями, нужно прямо заморачиваться(
    • nicomed
    • Stanislav
      Фрезеровка и токарка ЧПУ. Территориально Нижний Новгород, отправка в регионы ТК. Фрезеровка Алюминия и его сплавов, Латунь, Текстолиты, Сталь в небольших объемах. Токарка как цветные так и черный металлов и неметаллов. Габариты деталей для фрезеровки порядка 400мм*600мм. Оплата, пока что, наличные или на карту. Чертежи и модели отправлять на почту 0563506@mail.ru там же все согласования и обсуждения.
    • Александр1979
      Можно попробовать код считывать из переменной #8501. В руководстве написано что значение сохраняется в переменной до тех пор, пока не будет произведено чтение из неё.
    • si-64
      Можно ли сделать так чтобы в чертеже все размеры были черные, а в эскизе детали цвета управляемых и управляющих различались? настройка меняет цвет как в чертеже так и в эскизах: Зачем это нужно? В чертеже есть элементы, отличные от черного, поэтому вариант печати (сохранения в PDF) в ч/б не устраивает.
    • Artas28
      Шота получилось. Всё равно. Жду ответа от гуру NX, как сделать фаску красиво в 5 осях, что бы вектор инструмента менялся.  
×
×
  • Создать...