Страница 2 из 2

Re: Некорректная работа оси Z на плазменном станке

Добавлено: 15 окт 2019, 22:12
Евжений
А в M3 у вас что? Просто DoSpin() (или как он там) или ещё что-то?

Re: Некорректная работа оси Z на плазменном станке

Добавлено: 15 окт 2019, 23:35
Shyher01
Евжений писал(а):А в M3 у вас что? Просто DoSpin() (или как он там) или ещё что-то?
не совсем понятен вопрос :(

Re: Некорректная работа оси Z на плазменном станке

Добавлено: 16 окт 2019, 08:53
ДНК
Посмотрел УП-шку, даже не знаю что сказать. Не мое дело говорить что делать другим людям, но как совет, почитать справочник G кодов. У вас никак не получится сделать правильно, не зная что вы меняете. Либо пригласить человека который это знает и на месте вам сделает. Советы, как на мой взгляд, максимально понятные писал. Вижу 3 варианта, как уже сказал, пригласить спеца к себе, второе долго тут общаться и когда-то что-то устраивающее получить или создать запрос на услугу, где взять ваш постпроцессор, описание станка (правильные значения хода датчика, 10мм это скорее всего не верно), макросы м3 м5 и сделать все комплексом. Убрать этот костыль с м5, который поставили при каждом поиске металла.
В постпроцессоре нужно править функции
function OnInit() начало программы, входные настройки
function OnPenDown() это действия при поиск-поджиг-пробивка М3
function OnPenUp() это действия при отключении дуги М5
function OnFinish() действия в конце программы М30
Удалить функции (на плазме они не нужны)
function OnToolChange() смена инструмента
function OnNewOperation() следующая операция
function OnNewPart() новая деталь
function OnComment() коментарии

Re: Некорректная работа оси Z на плазменном станке

Добавлено: 17 окт 2019, 17:42
Евжений
Shyher01 писал(а):не совсем понятен вопрос
Нужно текстовым редактором открыть файл m3.m1s, лежит в C:\Mach3\macros\название профиля.
По дефолту там DoSpin(). Если что-то ещё то сюда это.
Без имени-1.jpg <a class='original' href='./download/file.php?id=170602&sid=0dba6c856cb5a8033cc908a6d3b219c7&mode=view'>Загрузить оригинал (74.32 КБ)</a>

Re: Некорректная работа оси Z на плазменном станке

Добавлено: 18 окт 2019, 08:34
Shyher01
ДНК писал(а):Посмотрел УП-шку, даже не знаю что сказать. Не мое дело говорить что делать другим людям, но как совет, почитать справочник G кодов. У вас никак не получится сделать правильно, не зная что вы меняете. Либо пригласить человека который это знает и на месте вам сделает. Советы, как на мой взгляд, максимально понятные писал. Вижу 3 варианта, как уже сказал, пригласить спеца к себе, второе долго тут общаться и когда-то что-то устраивающее получить или создать запрос на услугу, где взять ваш постпроцессор, описание станка (правильные значения хода датчика, 10мм это скорее всего не верно), макросы м3 м5 и сделать все комплексом. Убрать этот костыль с м5, который поставили при каждом поиске металла.
В постпроцессоре нужно править функции
function OnInit() начало программы, входные настройки
function OnPenDown() это действия при поиск-поджиг-пробивка М3
function OnPenUp() это действия при отключении дуги М5
function OnFinish() действия в конце программы М30
Удалить функции (на плазме они не нужны)
function OnToolChange() смена инструмента
function OnNewOperation() следующая операция
function OnNewPart() новая деталь
function OnComment() коментарии
Евжений писал(а):Нужно текстовым редактором открыть файл m3.m1s, лежит в C:\Mach3\macros\название профиля.
По дефолту там DoSpin(). Если что-то ещё то сюда это
Попробуем сделать так, постпроцессор сложная штука все таки.
Может быть знаете, где можно скачать его, который настроен для плазмы? но сегодня постараюсь исправить, как написали.

Re: Некорректная работа оси Z на плазменном станке

Добавлено: 18 окт 2019, 09:17
ДНК
Потрачу немного времени, чтоб разжевать понятнее. Сам процесс заключается в такой последовательности:
1) в начале программы задать модальные команды (глобальные настройки работы)
2) при переходе на место врезки

Код: Выделить всё

G31 Z -100  -задаем движение вниз по Z на -100, с ожиданием срабатывания датчика (как только сработает или достигнем -100, переходим к следующей строчке)
G92 Z -2.0  -поменять текущее значение Z на -2 (перезаписать, без перемещения самого резака) эта цифра означает люфт, свободный ход от касания резаком металла до срабатывания датчика
G00 Z 3.0  -указываем высоту на которой происходит пробивка металла

DoSpinCW() - это из макраса М3, поджиг дуги

G04 P1000  -пауза, задержка на пробивку (зависит от толщины металла)
G00 Z 2.0  -переходим на высоту, на которой источник режет по траектории
этот код может быть как в постпроцессоре, так и в макросе М3. Я делал в макросе, т.к. в скрине добавил переменные вводимые оператором, которые сразу попадают в программу (высота пробивки, высота реза металла, время пробивки). Если этот код в постпроцессоре, то нужно задавать при создании УП и потом уже эта программа будет только под определенный металл. В моем случае, одну и туже прогу использовать для разных металлов.
3) команды движения по траектории
4) конец реза М5

Код: Выделить всё

DoSpinStop() -это из макроса М5, отключить дугу
G00 Z 20.0  -выхожу на безопасную высоту
этот код так же можно запихнуть в постпроцессор или в макрос М5. У меня это в макросе. Все по-тому же, могу высоту переноса задавать как переменную вводимую с экрана, в скрине мача.

В постпроцессоре, для М3, самый простой пример, без ввода переменных с настроек инструмента или обработки (кроме паузы)

Код: Выделить всё

function OnPenDown()
   post.Text (" G31 Z-100\n")
   post.Text (" G92 Z-2.0\n")
   post.Text (" G00 Z 3.0\n") 
   post.Text (" M03\n") 
   if (pierceDelay > 0.001) then
      post.Text (" G04 P")
      post.Number (pierceDelay,"0.###")
      post.Eol()
   end
   post.Text (" G00 Z2.0\n") 
end

Re: Некорректная работа оси Z на плазменном станке

Добавлено: 18 окт 2019, 10:54
ДНК
В постпроцессоре, для рабочей подачи у меня только X и Y координаты, Z выкинул, она для плазмы не нужна (работает тнс).

Код: Выделить всё

function OnMove()
 if(math.hypot(currentX - endX, currentY - endY) < 0.001) then return end
   post.ModalText (" G01")
   post.ModalNumber (" X", endX, "0.000")
   post.ModalNumber (" Y", endY, "0.000")
   post.ModalNumber (" F", feedRate, "0.0###")
   post.Eol()
end
аналогично и для холостой подачи G00 - function OnRapid()

Re: Некорректная работа оси Z на плазменном станке

Добавлено: 21 окт 2019, 09:48
Shyher01
Спасибо, сейчас это все испытаем, чувствуется будет не совсем легко :)