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

Макросы в Power Mill


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

В 09.08.2018 в 15:04, Chester сказал:

 

я достаточно давно уже делаю обработку деталей по схеме: делаю 1 слой обработки нижней плоскости. например щас делаю деталь - обработка по контуру. делаю 1 слой на (в данном случае) Z= -15 mm. потом нажимаю волшебную кнопку (стрелка 2) и там все раскидываю. то есть делаю перемещение на 14,75 мм вверх, потом 69 копий по -0,25 мм. до Z= - 17,5 мм. высота данной детали 17 мм.

   При таком стиле написания увеличивается вероятность ошибки и перегенерация программы для корректировки  это время, для изучения макросов конечно полезно)))

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


25 минут назад, sssdos сказал:

При таком стиле написания увеличивается вероятность ошибки и перегенерация программы для корректировки  это время, для изучения макросов конечно полезно)))

не очень понял мысль. это черновая. у меня фрезы черновые 10мм уже точеные-переточеные. я после них даже не меряю. знаю, что допуск + 0.2 +0.3 мм. 

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

инструмент и планер.mac

 

прям тащусь. эти 2 фрезы - черновая и чистовая за ней. в 98% случаев они всегда стоят так. 

 

а щас воюю с обдиркой по контуру на всю глубину.... код, который дали выше - завтра посмотрю, щас уже домой уезжаю.

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

string scname = " c какой высоты?"
REAL $workz = input $scname
EDIT ZHEIGHTS AUTOMATIC OFF
EDIT ZHEIGHTS MODEVALUE $workz
PROCESS ZHEIGHTS

ZHEIGHTS ACCEPT

не работает. ругается на real. если написать int - тоже ругается. если без них, то не подставляет число. я так понял, проблема с типами переменных. если удалить real, то вылетает с ошибкой "переменная не задана или не определена".

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

5b72b53a1eb04_.JPG.0738595ae3881a98fe009d758d42cf89.JPG5b72b5683910f_1.JPG.98014f06f9f50a9a74b46c78b1eb6212.JPG

 

IMPORT TEMPLATE ENTITY TOOLPATH TMPLTSELECTORGUI
"3D-Area-Clearance\Model-Profile.002.ptf"
FORM ZHEIGHTS
EDIT ZHEIGHTS MODE VALUE

string scname = "c какой высоты?"
string $workz = input $scname

EDIT ZHEIGHTS AUTOMATIC OFF
EDIT ZHEIGHTS MODEVALUE $workz  // сюда должно подставиться число, введенное выше.


DELETE ZHEIGHTS ALL
PROCESS ZHEIGHTS
ZHEIGHTS ACCEPT

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

Ну не знаю. Я сейчас не дома, проверить и посмотреть нет возможности.У меня это выражение используется для ввода названия задания. И всё работает. Милл2018.

У вас походу милл 2012?

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

Всегда думал что нельзя открыть готовый NC файл в повермилле и запустить его симуляцию.

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

С циклами сверления не получилось - получалась немного неправильная траектория.

А с траекторией фрезерования всё ок.

 

Вводим вот эту команду -

SIMULATE TAPEFILE FILEOPEN

 

Появится окно :

TAP.png.37287a7ee7bf649af97ab1aa5ef32ebf.png

 

И после выбора NC файла создастся траектория по шаблону.

Её симуляция будет как у родной.

Единственное - СК конечно должна быть заранее создана в нужном месте.

 

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

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

Откуда познания недокументированных возможностей?) Заморские форумы?

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

Откуда познания недокументированных возможностей?) Заморские форумы?

они самые )

причём нашёл в вообще странной теме, - этот вариант там предложили как альтернативный

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

Дополнил макрос для проверки на зарезы и столкновения:

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

ECHO OFF DCPDEBUG UNTRACE COMMAND ACCEPT
DIALOGS ERROR OFF
DIALOGS MESSAGE OFF

//объявление массива
string list $Strings={}

int $i = 0
int $j = 0
string $Msbox=''
INT Pos1 =''
INT Pos2 =''

real $ShankLength = size(ENTITY('tool', '').ShankSetValues) //длина хвостовика

string $path = macro_path(0) + "\COLLISION.txt" //путь

tracefile open $path  //открытие файла COLLISION.txt для записи
//Проверка на зарезы и / или столкновения

//Если хвостовик не равен нулю
If $ShankLength != 0 {
//Вызов функции
CALL COLLISION_1()
} else {
//Вызов функции
CALL COLLISION_2()
}

tracefile close      //закрытие файла COLLISION.txt для записи

//открытие файла для чтения $infile
File Open $path for read as infile

//чтение массива строк $infile
File Read $Strings from infile

// Закрытие $infile
File close infile

int $SizeString = size($Strings)-1


STRING $pointName = ''
STRING  $Name = ''

While i<=$SizeString {
if position($Strings[i], "Информация",0) >= 0 {
$pointName = substring($Strings[i], 0, (position($Strings[i], "Информация"))+12 )
$Name = replace($Strings[i], pointName, "") //убирает со строки $Name указанные символы в переменной $pointName
$Msbox= Msbox +crlf+ $Name
} else {
$Msbox= Msbox +crlf+ $Strings[i]
}
$Pos1 = Position($Strings[i],"НЕ ")
$Pos2 = Position($Strings[i],"не ")
$i=i+1
if $Pos1!=-1 or $Pos2 !=-1 {
$j=j+1
} else {
}
}

if $j==2 and $i==2  {
Message info $Msbox
} ELSEIF $j==2 and $i>=3 {
Message Warn $Msbox
} ELSEIF $j<2 {
Message ERROR $Msbox
}


DIALOGS ERROR On
DIALOGS MESSAGE On

}


FUNCTION COLLISION_1 () {
EDIT COLLISION TYPE GOUGE
EDIT COLLISION SPLIT_SEGMENT N
EDIT COLLISION SPLIT_TOOLPATH N
EDIT COLLISION APPLY
EDIT COLLISION TYPE COLLISION
EDIT COLLISION ADJUST_TOOL N
EDIT COLLISION SPLIT_TOOLPATH N
EDIT COLLISION APPLY
}

FUNCTION COLLISION_2 () {
EDIT COLLISION TYPE GOUGE
EDIT COLLISION SPLIT_SEGMENT N
EDIT COLLISION SPLIT_TOOLPATH N
EDIT COLLISION APPLY
}

 

Hide  
Я отключил показ сообщений и объединил их в одно, которое вывожу сам. Если всё хорошо, то сообщение типа Info, если всё хорошо, но врезание ниже заготовки, то сообщение типа Warn, если всё плохо, то сообщение типа Error.

 

Скрины  

Безымянный.png

Hide  

 

 

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

Устал расширение и точку убирать в NC файлах для фанука чтоб стойка видела... вот, пользуйтесь

Точки к имени NC файла.mac

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

Тоже замучался с точкой на стойке Фанук.

Сначала нашел такое решение 

Цитата

FORM OPTIONS
EDIT OPTIONS TREE OPTTREEFILEMGMT
EDIT NCPROGRAM PREFERENCES OPT_EXTENSION "cms_ares_fanuc_mdf"
EDIT NCPROGRAM PREFERENCES EXTENSION "cms_ares_fanuc_mdf" "."

Потом в инструкции вычитал, что можно задавать как "M198 P5001", так и "M198 <O5001.tap>"

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

Потом в инструкции вычитал, что можно задавать как "M198 P5001", так и "M198 <O5001.tap>"

Бит 4 параметра 13115 на 1 чтобы символы < и > вводить можно было с экранной клавы пульта, .tap прописывать .TAP

Ссылка на сообщение
Поделиться на других сайтах
В 24.05.2017 в 15:59, eksodus сказал:

если добавить в настройках Панели состояния в пользовательские поля функцию


limits('toolpath','')[4]

то получим минимальное Z активной траектории

если 4 заменить на 5 - максимальное Z

мне удобно, может и ещё кому пригодится...

 

Zmin.png.d8fc6a6de587667393377803bd188f59.png

 

Ребят, а можно ли добавить такую же функцию, только чтобы отображалась статистика траектории?

Ссылка на сообщение
Поделиться на других сайтах
В 09.09.2018 в 09:37, k.sema сказал:

Ребят, а можно ли добавить такую же функцию, только чтобы отображалась статистика траектории?

Statistics.CuttingMoves.Times.Arcs+Statistics.CuttingMoves.Times.Linear+Statistics.LeadsAndLinks.Times.Others+Statistics.LeadsAndLinks.Times.Plunge+Statistics.LeadsAndLinks.Times.Ramp+Statistics.LeadsAndLinks.Times.Rapid

Ссылка на сообщение
Поделиться на других сайтах
В 10.09.2018 в 12:52, dd22 сказал:

Statistics.CuttingMoves

Спасибо !

Только почему то показывает время чуть больше чем в милле

56.png.d3ba60ca99f7d21b39fc83c5e1977d98.png

 

а можно сделать, чтобы вывод был в часах-минутах-секундах ?

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

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

Господа,подскажите, как удалить папку ncprograms в папке проекта? Бывает, если похожие детали, тупо копирую проект, меняю модель детали и пересчитываю траектории под новую модель. При сохранении проекта под новым именем сохраняются и карты наладки и предыдущие НЦ-файлы. Мне нужно снести все это перед процессированием .

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

Ссылка на сообщение
Поделиться на других сайтах
В 16.09.2018 в 13:23, scorpion1007 сказал:

Господа,подскажите, как удалить папку ncprograms в папке проекта? Бывает, если похожие детали, тупо копирую проект, меняю модель детали и пересчитываю траектории под новую модель. При сохранении проекта под новым именем сохраняются и карты наладки и предыдущие НЦ-файлы. Мне нужно снести все это перед процессированием .

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

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

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • gudstartup
      это неправильно разделите м коды на 2 кадра иначе будет вышеописанная ошибка а так программа нормально выполняется
    • malvi.dp
      Допилил. Поддерживает многолистовые чертежи Начинает работу при нажатии на кнопку макроса: -при нахождении измененных (установлена галочка "Измененное значение") размеров окрашивает их в красный цвет; -если с измененного размера снята галочка "Измененное значение", т.е. он стал обычным - цвет становится обычным; -по окончании работы в сообщении выводится статистика найденных измененных размеров, если они есть. Тестировался на sw2016 и sw2020.   ChangeColorForOverridedDimensions.zip   Да, что-то прошло не так... Уже поправил.
    • maxx2000
      Я скорее согласен с Надеждой Януарьевной
    • Koels
      Мотора 54 градуса, что на 6 градусов больше соседнего станка, вентеляторы в норме да. Ещё хочу сравнить нагрузку координаты с соседним станком, но пока не дают. У этих двух станков проблемы с охлаждением, на соседнем стоит автомобильный радиатор для охлаждения масла. xD
    • Bot
      Dassault Systèmes Reports Solid First Quarter Results And Reaffirms Full-Year Objectives Просмотр полной статьи
    • Ninja
    • Ninja
      В зимнее время водители устанавливают на колёса специальные цепи против скольжения. В мире разработано множество видов цепей и способов их установки. Японцы применяют "цепи Абэ". Кто этот великий инженер? Это знаменитый японский писатель Кобо Абэ. Для уединенного писательского труда Абэ купил домик в горах. А в горах зима ранняя, снежная, затяжная. Без цепей на колёсах можно и улететь с обрыва. Абэ периодически заводил машину и спускался в долину. Почту получить/отправить, в магазине продукты купить, ящик рисовой водки. (Известное дело: насухую великую книгу не напишешь). В долине приходилось цепи снимать. По правилам цепи запрещается применять при отсутствии на дороге снежного покрова. В те времена для установки/снятия цепи требовалось домкратом поднимать каждое колесо. В машине 4 колеса. Товарищу Абэ приходилось корячиться с домкратом. При этом в самых нелитературных выражениях комментируя политику правящей партии и все домкраты в мире. Купил в магазине бухлишко-закусь. Поехал домой в горы. А там снег, скользко. Цепи требуются. Опять писатель и драматург Абэ домкрат крутит. Всё это насмерть надоело Абэ. Обратился к компаниям-производителям: придумайте способ установки цепей без домкрата! Но производители ничего не придумали. Или не захотели. Тогда Абэ сам придумал способ установки цепей без необходимости поднимать колесо. Послал изобретение на конкурс. И неожиданно получил призовое место и патент. Новый способ установки цепей быстро завоевал популярность. Так и пошло у японцев - "цепи Абэ". Кобо Абэ не получил Нобелевскую премию по литературе. Уже выдвигался, уже все были уверены в том, что он её получит. Но не успели, писатель умер. А это всё дурацкие цепи виноваты. Сколько времени он потерял в установке/снятии цепей? Сколько времени, вместо того чтобы писать, он крутил домкрат? Вот и не успел. https://ru.ruwiki.ru/wiki/Абэ,_Кобо
    • gudstartup
      приемлимо. температуру мотора посмотрите. если вентилятор нормально вращается и его скорость соответствует оригинальному а также контакт в разъеме нормальный а F все равно появляется то даже не знаю что у вас может быть так как привод у вас новый
    • Koels
      Хмм, я думал раз она вылазит даже в простое, то Z координата висит на тормозе и дело не в этом. Спасибо за мысль, щас узнаю. Вообще у нас рядом стоит точно такая же макина, точь в точь и там таким проблем нет. Много заказов и отсутствие специалистов сделало свое дело. :) @gudstartup, 58% нагрузка на координату
    • mrVladimir
      Что-то я немного засомневался. Если решим брать новое ЧПУ, то искать точно такое же необходимо по номеру сзади корпуса (пластикового пластмассового) - так? А если брать только плату (материнскую или как ее лучше назвать...), на которой установлена (запаена) микросхема 1 на моих фото выше, то искать плату необходимо по номеру, который указан на самой плате - так? В моем случае : ЧПУ : A02B-0321-B520. Код на плате : A20B-8201-0081/01A. Если, допустим, мы покупаем ЧПУ A02B-0321-B520 - будет ли это гарантией того, что в нем установлена плата A20B-8201-0081/01A. И можно ли будет его считать таким же. И с отдельно приобретаемой платой тоже самое - если номер на ней полностью совпадает с нашим, значит ли это, что она полностью идентична. P.S. : извиняюсь за , возможно, навязчивые вопросы. Просто не хотелось бы попасть впросак из-за своей некомпетентности. такой файл есть, но мне говорили, что после снятия архивов, его лучше вообще никогда нигде ни использовать. А на каком этапе он нам может понадобиться?. Если, как говорил Виктор, мы зальем архив SRAM на старый модуль (ROM-SRAM), установленный в новое ЧПУ, то и файл OPRMINF не нужен. Правильно же?
×
×
  • Создать...