Кому лень делать самому, можна скачать готовый скринсет с вылеченой паузой (там же и текст скрипта): drive.google.c... ==================================== Скачать редактор шкурок тут: kd-dietz.com/
Идея хорошая, но есть некоторые минусы. Во первых если включить и отключить паузу даже не во время выполнения УП включится шпиндель. Это не хорошо. Во вторых коррекция скорости в любом случае возвращается на 100%. Это тоже не всегда удобно. Вдруг там было 50% или 150%. В третьих (но это я еще не проверял) скорость резко падает до нуля, а успеет ли портал остановиться без пропуска шагов из за инерции? В четвертых нет визуального контроля нажата пауза или нет. В общем ниже привожу рабочий скрипт где все эти недочеты устранены. Шпиндель если был включен во время нажатия на паузу, то он включится после отжатия паузы. Если он не был включен, то но и не включится, а пауза будет работать в штатном режиме. Коррекция скорости. Сколько процентов стояло до нажатия на паузу, столько вернется после отжатия. Замедление скорости остановки портала можно регулировать. В скрипте до полной остановки 1 секунда. Для работы скрипта необходимо создать 2 светодида Разместить их около кнопки пауза. Один будет показывать нажата ли кнопка, второй будет показывать запустится ли шпиндель после отжатия паузы. Создать ЦИ (DRO) и поместить где нибудь в рамке коррекции скорости. ' Создать: пауза включена - GetUserLED (1022) Шпиндель был включен при нажатии паузы - GetUserLED (1024) Промежуточное ДРО - GetOEMDRO(1022) ' Как и что регулировать думаю понятно из комментариев в скрипте. If GetUserLED (1024) Then 'Если шпиндель был включен ' a=1 Else End If If GetUserLED (1022) Then 'Если пауза нажата ' b=10 Else End If If a+b=11 Then ' ' DoSpinCW() 'Включить шпиндель' Sleep 4000 'время задержки после включения шпинделя 4 секунды' Call SetOEMDRO(223, Abs(GetOEMDRO(1022))) 'Вставить данные коррекции из промежуточного DRO' Call SetUserLED (1022, 0) Call SetUserLED (1024, 0) Else End If If a+b=1 Then ' ' Call SetOEMDRO(1022, Abs(GetOEMDRO(223))) 'Сохранить данные коррекции в промежуточное DRO' Call SetOEMDRO(223, Abs(GetOEMDRO(223)/2)) 'Коррекция скорости разделить на 2' Sleep 300 'время между убавлением скорости 1' Call SetOEMDRO(223, Abs(GetOEMDRO(223)/2)) 'Коррекция скорости разделить на 2' Sleep 200 'время между убавлением скорости 2' Call SetOEMDRO(223, Abs(GetOEMDRO(223)/2)) 'Коррекция скорости разделить на 2' Sleep 200 'время между убавлением скорости 3' Call SetOEMDRO(223, Abs(GetOEMDRO(223)/2)) 'Коррекция скорости разделить на 2' Sleep 200 'время между убавлением скорости 4' Call SetOEMDRO(223, Abs(GetOEMDRO(223)/2)) 'Коррекция скорости разделить на 2' Sleep 100 'время между убавлением скорости 5' Call SetOEMDRO(223,0) 'Коррекция скорости ноль' If GetOEMLED (11) Then 'если шпиндель включен ' Call SetUserLED (1024, 1) Else Call SetUserLED (1024, 0) End If Sleep 1000 'Задержка перед выключением шпинделя 1 сек' DoSpinStop() 'Выключить шпиндель' Call SetUserLED (1022, 1) Else End If If a+b=10 Then ' ' Call SetOEMDRO(223, Abs(GetOEMDRO(1022))) Call SetUserLED (1022, 0) Else End If If a+b=0 Then ' ' Call SetOEMDRO(1022, Abs(GetOEMDRO(223))) Call SetOEMDRO(223, Abs(GetOEMDRO(223)/2)) 'Коррекция скорости разделить на 2' Sleep 300 'время между убавлением скорости 1' Call SetOEMDRO(223, Abs(GetOEMDRO(223)/2)) 'Коррекция скорости разделить на 2' Sleep 200 'время между убавлением скорости 2' Call SetOEMDRO(223, Abs(GetOEMDRO(223)/2)) 'Коррекция скорости разделить на 2' Sleep 200 'время между убавлением скорости 3' Call SetOEMDRO(223, Abs(GetOEMDRO(223)/2)) 'Коррекция скорости разделить на 2' Sleep 200 'время между убавлением скорости 4' Call SetOEMDRO(223, Abs(GetOEMDRO(223)/2)) 'Коррекция скорости разделить на 2' Sleep 100 'время между убавлением скорости 5' Call SetOEMDRO(223,0) 'Коррекция скорости ноль' If GetOEMLED (11) Then 'светодиод шпинделя ' Call SetUserLED (1024, 1) Else Call SetUserLED (1024, 0) End If Sleep 1000 'Задержка перед выключением шпинделя 1 сек' DoSpinStop() 'Выключить шпиндель' Call SetUserLED (1022, 1) Else End If
День добрый, можно для не особо продвинутых просто скрип который можно скопировать и вставить, а то не могу разобрать что именно тут скопировать, заранее благодарю.
Чет не замечал такого. Обычно при нажатии на паузу, оно всегда продолжало с того места откуда остановилось. Минусы скрипта. Паузу обычно я нажимаю, что-бы на "лету" что-то подправить. Например ту же высоту инструмента, или ещё чего-то для чего мне надо уехать будет от точки останова. При родной паузе, оно приезжает обратно в координаты точки останова. Причем Z уезжает в хому, дабы не поломать заготовку.
ПРИВЕТ ПОДСКАЖИ еще если код больше 150000 то если тебе надо на строку 884400 то мач прекидует на начало 222222 как быть7 ГДЕ БАК В МАЧЕ КАК ИСПРАВИТЬ ТЧТОБЫ ДРУГИЕ ДЕЙСВТИЯ НЕДЕЛАТЬ
В принципе можно, я так и хотел. Но до конца не разобрался. Фактически тут не пауза, а скорость движения = 0. А при движении станка оси нельзя двигать ни вручну, ни скриптами. Но все же как-то можно это обойти.
Доброго дня , питания не по темі відео, як може бути так що коли запускаєш програми фрезерувати коло потім квадрат потім знову коло станок не потрапляє на свої координати поХ тобто фрезерує зі зміщенням поХ десь 0.5 мм?
спасибо за исправление. сделал как по инструкции. но заметил такую штуку: после того как нажмеш паузу - станок останавливается(как положено) , но естли нажать "RESET" в колонке "Feed Rate" станок ТУТЖЕ!!!!! начинает продолжение роботы (правда с тойже точки что остановился, как положено)
@@volidol Перешел на 62 версию от 2019 года полет тоже нормальный. На данный момент это последняя версия стабильно работающая с контроллером ESS. А так самая последняя версия 66
С праздником! Скажите, если я установлю вашу мач3 с русским скином, настройки нужно заново вводить? Или есть шанс, что моя версия просто обновиться, а настройки станка остануться.
@@CNC_machines Правильно ли я понял - если есть подключение по ЛПТ, то не нужна плата вообще? Стабильно ли работает МАЧ3 в этом случае? Бывают ли какие-то сбои не по вине пользователя, компьютера и станка? И еще вопрос - как тогда подключаются драйвера?