Взламывем MACH3. Что внутри? Лечим паузу.

แชร์
ฝัง
  • เผยแพร่เมื่อ 25 พ.ย. 2024

ความคิดเห็น • 56

  • @РукМастер-ы9ъ
    @РукМастер-ы9ъ 2 ปีที่แล้ว +11

    Идея хорошая, но есть некоторые минусы.
    Во первых если включить и отключить паузу даже не во время выполнения УП включится шпиндель.
    Это не хорошо.
    Во вторых коррекция скорости в любом случае возвращается на 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

    • @nsk5288
      @nsk5288 2 ปีที่แล้ว +1

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

  • @volidol
    @volidol ปีที่แล้ว +2

    Чет не замечал такого. Обычно при нажатии на паузу, оно всегда продолжало с того места откуда остановилось.
    Минусы скрипта.
    Паузу обычно я нажимаю, что-бы на "лету" что-то подправить. Например ту же высоту инструмента, или ещё чего-то для чего мне надо уехать будет от точки останова. При родной паузе, оно приезжает обратно в координаты точки останова. Причем Z уезжает в хому, дабы не поломать заготовку.

  • @ivantut9210
    @ivantut9210 5 หลายเดือนก่อน

    Спасибо, благодаря вам вспомнил, то что делал еще в 2017 году))) Правда несколько по-другому....

  • @sergatmel8242
    @sergatmel8242 3 ปีที่แล้ว

    Спасибо.
    Паузой не пользовался ранее из-за глюков. Теперь испробую.

  • @ros2ras
    @ros2ras 3 ปีที่แล้ว

    респект, аж захотілось собі налаштувати

  • @TheHobro42
    @TheHobro42 7 หลายเดือนก่อน

    Спасибо

  • @AndreyS1977
    @AndreyS1977 3 ปีที่แล้ว

    Спасибо !!!

  • @sanyatsibulskyy6718
    @sanyatsibulskyy6718 3 ปีที่แล้ว

    спасибо за исправление. сделал как по инструкции. но заметил такую штуку: после того как нажмеш паузу - станок останавливается(как положено) , но естли нажать "RESET" в колонке "Feed Rate" станок ТУТЖЕ!!!!! начинает продолжение роботы (правда с тойже точки что остановился, как положено)

    • @CNC_machines
      @CNC_machines  3 ปีที่แล้ว

      Ну да, фактически это не пауза, а замедление работы до нуля. Кнопкой ресет это замедление убираем.

  • @oleggashuk59
    @oleggashuk59 หลายเดือนก่อน

    Здравствуйте,не работает кнопка ref all home в мач 3,станок не реагирует.

  • @Nicolai-z9w
    @Nicolai-z9w 2 ปีที่แล้ว

    Дякую за відео

  • @РукМастер-ы9ъ
    @РукМастер-ы9ъ 2 ปีที่แล้ว

    Еще желательно Led добавить на кнопку пауза, что бы точно знать что она нажата.

  • @81DGEKA
    @81DGEKA 3 ปีที่แล้ว

    Спасибо за информацию

  • @neapolitanskiy125
    @neapolitanskiy125 2 ปีที่แล้ว

    добрый день, можно пожалуйста поделиться дистрибутивом, тк в прошлом видео не было возможности оставить запрос)Благодарю вас за ваши знания и время

    • @CNC_machines
      @CNC_machines  2 ปีที่แล้ว

      Пишіть на viber
      0989035826

  • @ПавелНиколаевич-ш3ь
    @ПавелНиколаевич-ш3ь 3 ปีที่แล้ว +2

    Спасибо, а можно сделать так чтоб пауза работала как на нс студио , когда нажимаешь на паузу или на стоп ось Z подымается на 10мм , очень удобно.

    • @CNC_machines
      @CNC_machines  3 ปีที่แล้ว +1

      В принципе можно, я так и хотел. Но до конца не разобрался. Фактически тут не пауза, а скорость движения = 0. А при движении станка оси нельзя двигать ни вручну, ни скриптами. Но все же как-то можно это обойти.

  • @rafaelsuleymanov7956
    @rafaelsuleymanov7956 3 ปีที่แล้ว

    класс ! спасибо за видео

  • @81DGEKA
    @81DGEKA ปีที่แล้ว

    Доброго дня , питания не по темі відео, як може бути так що коли запускаєш програми фрезерувати коло потім квадрат потім знову коло станок не потрапляє на свої координати поХ тобто фрезерує зі зміщенням поХ десь 0.5 мм?

    • @АлександрМ-н8б
      @АлександрМ-н8б หลายเดือนก่อน

      Скорее всего пропуски шагов. Основные проблемы могут быть 2: большая динамика при малом токе драйвера или помехи по линиям управления драйвера (step/dir).

  • @Nikki_Vik
    @Nikki_Vik 2 ปีที่แล้ว

    Здравствуйте! Крутой update. С вами возможно, связаться для консультации в ином вопросу по ЧПУ?

  • @ziedoniszimecs6383
    @ziedoniszimecs6383 2 ปีที่แล้ว

    Добрый день .Неподскажите пожалуйста как масh3 установить 5ю.осс штоби она была видно на экране?

  • @серыйкуб-ш4н
    @серыйкуб-ш4н 7 หลายเดือนก่อน

    ПРИВЕТ ПОДСКАЖИ еще если код больше 150000 то если тебе надо на строку 884400 то мач прекидует на начало 222222 как быть7 ГДЕ БАК В МАЧЕ КАК ИСПРАВИТЬ ТЧТОБЫ ДРУГИЕ ДЕЙСВТИЯ НЕДЕЛАТЬ

  • @АлексейЩукин-к1м
    @АлексейЩукин-к1м 2 ปีที่แล้ว

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

  • @artberesta
    @artberesta 3 ปีที่แล้ว

    Спасибо за идею. А когда у шпинделя падает скорость до 0,и он секунду еще получается работает, ничего не будет шпинделю за эту секунду?

    • @CNC_machines
      @CNC_machines  3 ปีที่แล้ว +1

      Ничего не будет ни фрезе ни шпинделю -- движение станка в этот момент уже прекратилось.

  • @НиколайКравченко-ф6б
    @НиколайКравченко-ф6б 2 ปีที่แล้ว

    С праздником! Скажите, если я установлю вашу мач3 с русским скином, настройки нужно заново вводить? Или есть шанс, что моя версия просто обновиться, а настройки станка остануться.

  • @baurjan.traider
    @baurjan.traider 2 ปีที่แล้ว

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

    • @volidol
      @volidol ปีที่แล้ว

      Там где-то в настройках биндятся кнопки клавиатуры.

  • @artberesta
    @artberesta 3 ปีที่แล้ว

    Подскажите у вса сейчас данный mash3 подключон к станку или просто установлен на компе?

    • @CNC_machines
      @CNC_machines  3 ปีที่แล้ว +1

      Просто установлен на компе.

    • @sanyatsibulskyy6718
      @sanyatsibulskyy6718 3 ปีที่แล้ว

      @@CNC_machines а как он без платы работает? у меня нехочет. розкажите что к чему. плиз

    • @CNC_machines
      @CNC_machines  3 ปีที่แล้ว +1

      @@sanyatsibulskyy6718
      У меня управление по LPT порту; наличие платы не обязательно.

    • @avexoidavex3577
      @avexoidavex3577 ปีที่แล้ว

      @@CNC_machines Правильно ли я понял - если есть подключение по ЛПТ, то не нужна плата вообще? Стабильно ли работает МАЧ3 в этом случае? Бывают ли какие-то сбои не по вине пользователя, компьютера и станка? И еще вопрос - как тогда подключаются драйвера?

  • @SupersonicHeart
    @SupersonicHeart ปีที่แล้ว

    Есть решение проще, поставить версию Mach3Version3.043_2018 там все нормально работает

    • @volidol
      @volidol ปีที่แล้ว

      А, так вот почему у меня нормально работает)

    • @SupersonicHeart
      @SupersonicHeart 3 หลายเดือนก่อน

      @@volidol Перешел на 62 версию от 2019 года полет тоже нормальный. На данный момент это последняя версия стабильно работающая с контроллером ESS.
      А так самая последняя версия 66

  • @Wisky00
    @Wisky00 3 ปีที่แล้ว

    Почему то скрипт с гуглдиска не скачивается. Пишет, что нет доступа. Расшарьте файл.

  • @Unikus777
    @Unikus777 2 ปีที่แล้ว

    Видим FRO , а говорим DRO ...🤔

  • @ВячеславСмирнов-й4н
    @ВячеславСмирнов-й4н 3 ปีที่แล้ว

    У меня таких пропусков не бывает

    • @CNC_machines
      @CNC_machines  3 ปีที่แล้ว

      А как у вас пауза работает на прямых линиях, к примеру:
      Х0
      Х1000
      ?
      Все корректно продолжает работать?

  • @НурНур-й1н
    @НурНур-й1н 2 ปีที่แล้ว +1

    Доброго времени суток подскажите можно змломать мач 3 что бы работал без лицензии?

    • @CNC_machines
      @CNC_machines  2 ปีที่แล้ว

      Добый день.
      Без лицензии он и так работает. Только ограничение по управляющей программе 300 строк.

    • @НурНур-й1н
      @НурНур-й1н 2 ปีที่แล้ว +1

      @@CNC_machines да но он работал полноценно ?

    • @CNC_machines
      @CNC_machines  2 ปีที่แล้ว

      @@НурНур-й1н
      зайдите на rutracket.org и скачайте МАСН3 с лицензией.

  • @SinedWOLF
    @SinedWOLF ปีที่แล้ว

    Мне одному тихо???)

  • @Londannak
    @Londannak 3 ปีที่แล้ว

    что это?

    • @CNC_machines
      @CNC_machines  3 ปีที่แล้ว

      Наверное вы сюда случайно попали.

    • @Londannak
      @Londannak 3 ปีที่แล้ว

      @@CNC_machinesчерез рекомендацию от ютуб...

  • @ВячеславСмирнов-й4н
    @ВячеславСмирнов-й4н ปีที่แล้ว

    Легче лицензию купить и не мучатся!

    • @CNC_machines
      @CNC_machines  ปีที่แล้ว

      Купив файл *.lic за 200$ с паузой все как біьло так и останется.