Как прочитать ID текущего инструмента?
Как прочитать ID текущего инструмента?
Здравствуйте всем. Пишу скрипт смены инструмента. Столкнулся с такой проблемой. Ни как не найду способ прочитать номер текущего инструмента. Нужно для того, что бы пропускать алгоритм смены инструмента при совпадении номеров нового и старого. Пока вышел из ситуации сохраняя номер инструмента при последней замене в persist.UserData. Работать работает, но это не правильно. Должен же быть какой то способ для чтения номера текущего инструмента. Подскажите кто в теме. Спасибо.
Re: Как прочитать ID текущего инструмента?
Вообщем написал. Использовались наработки ukr-sasha. Получилось вроде не плохо. Во всяком случае меня полностью устраивает.
Станок в основном для печатный плат. Шпиндель будет другой, по всем осям линейные магнитные энкодеры на основе AS5311. Лидшайновские сервы BLM57050. Винты 1605, ось зет 1204. Направляющие круглые валы 20 мм, ось зет 16 мм. Рабочее поле 310х220, ход по зет 100 мм. Еще много работы, но в принципе с написанием этого скрипта уже можно что то сверлить.
[youtube]https://youtu.be/KT46SXPokEw[/youtube]
Станок в основном для печатный плат. Шпиндель будет другой, по всем осям линейные магнитные энкодеры на основе AS5311. Лидшайновские сервы BLM57050. Винты 1605, ось зет 1204. Направляющие круглые валы 20 мм, ось зет 16 мм. Рабочее поле 310х220, ход по зет 100 мм. Еще много работы, но в принципе с написанием этого скрипта уже можно что то сверлить.
[youtube]https://youtu.be/KT46SXPokEw[/youtube]
- ridirt
- Мастер
- Сообщения: 675
- Зарегистрирован: 24 июл 2013, 23:52
- Репутация: 275
- Настоящее имя: Живописцев Андрей Викторович
- Откуда: Спб
- Контактная информация:
Re: Как прочитать ID текущего инструмента?
У меня кстати та же проблема. Вроде скрипт написан ровно, но алгоритм пропускается через раз, по настроению мача, иногда пропускает , а иногда едет и меняет этот инструмент на этот же)). Чем лечить эти лаги не знаю.
Re: Как прочитать ID текущего инструмента?
Кто знает - подскажите.
Суть в чем. Скрипт работает отлично при просто его запуске. Все измеряет, записывает в таблицу инструмента длину, и в соответствии с этой длиной корректирует зетку. Хоть 20 раз измерь к ряду, плюс минус сотка. Если же отрабатываем скрипт уже в G коде при выполнении УП, то происходит такая хрень. Скрипт по коду М6 отрабатывает, но KFlop почему то берет не свежие данные, а как я понял данные которые были в таблице до этого. Станок у меня для сверления печатных плат, сверла каждый раз ставяться по разному. Может даже плюс минус пару мм. Ну короче в результате получается некорректная длина инструмента. В настройках М6 стоит выполнение/ожидание/синхронизация. Что делать, ума не приложу. Пока решил вопрос создав отдельную УП для каждого диаметра. Предварительно, перед запуском замеряю скриптом длину. Так работает на ура. Ну и заказал кольца на сверла, что бы вставлять в шпиндель всегда одинаково, причем для всех. Другого решения пока в голову не приходит.
Суть в чем. Скрипт работает отлично при просто его запуске. Все измеряет, записывает в таблицу инструмента длину, и в соответствии с этой длиной корректирует зетку. Хоть 20 раз измерь к ряду, плюс минус сотка. Если же отрабатываем скрипт уже в G коде при выполнении УП, то происходит такая хрень. Скрипт по коду М6 отрабатывает, но KFlop почему то берет не свежие данные, а как я понял данные которые были в таблице до этого. Станок у меня для сверления печатных плат, сверла каждый раз ставяться по разному. Может даже плюс минус пару мм. Ну короче в результате получается некорректная длина инструмента. В настройках М6 стоит выполнение/ожидание/синхронизация. Что делать, ума не приложу. Пока решил вопрос создав отдельную УП для каждого диаметра. Предварительно, перед запуском замеряю скриптом длину. Так работает на ура. Ну и заказал кольца на сверла, что бы вставлять в шпиндель всегда одинаково, причем для всех. Другого решения пока в голову не приходит.
Re: Как прочитать ID текущего инструмента?
В общем дело было не в бобине. Раньше я использовал Planet CNC MK2. Там в ПО скрипт измерения длины инструмента встроен. Ни каких дополнительных телодвижений не требуется. KFlop же использует классический G-код. Соответственно, что бы применить длину инструмента из таблицы, туда длину прописывает мой скрипт после измерения, нужно использовать команду G43 H-номер инструмента. Я совсем забыл про его существование. Прописал эту команду в постпроцессоре. Теперь при генерации G-кода в CAM, эта команда встраивается отдельным кадром после Tx M6. И все работает отлично. Вот такие дела. А сколько инструмента поломал пока разобрался...