Как прочитать ID текущего инструмента?

KFlop, KStep, KAnalog, KMotion...
mial
Новичок
Сообщения: 12
Зарегистрирован: 06 ноя 2019, 11:09
Репутация: 5
Контактная информация:

Как прочитать ID текущего инструмента?

Сообщение mial »

Здравствуйте всем. Пишу скрипт смены инструмента. Столкнулся с такой проблемой. Ни как не найду способ прочитать номер текущего инструмента. Нужно для того, что бы пропускать алгоритм смены инструмента при совпадении номеров нового и старого. Пока вышел из ситуации сохраняя номер инструмента при последней замене в persist.UserData. Работать работает, но это не правильно. Должен же быть какой то способ для чтения номера текущего инструмента. Подскажите кто в теме. Спасибо.
mial
Новичок
Сообщения: 12
Зарегистрирован: 06 ноя 2019, 11:09
Репутация: 5
Контактная информация:

Re: Как прочитать ID текущего инструмента?

Сообщение mial »

Вообщем написал. Использовались наработки ukr-sasha. Получилось вроде не плохо. Во всяком случае меня полностью устраивает.
Станок в основном для печатный плат. Шпиндель будет другой, по всем осям линейные магнитные энкодеры на основе AS5311. Лидшайновские сервы BLM57050. Винты 1605, ось зет 1204. Направляющие круглые валы 20 мм, ось зет 16 мм. Рабочее поле 310х220, ход по зет 100 мм. Еще много работы, но в принципе с написанием этого скрипта уже можно что то сверлить. :hehehe:
[youtube]https://youtu.be/KT46SXPokEw[/youtube]
Аватара пользователя
ridirt
Мастер
Сообщения: 660
Зарегистрирован: 24 июл 2013, 23:52
Репутация: 273
Настоящее имя: Живописцев Андрей Викторович
Откуда: Спб
Контактная информация:

Re: Как прочитать ID текущего инструмента?

Сообщение ridirt »

mial писал(а): Нужно для того, что бы пропускать алгоритм смены инструмента при совпадении номеров нового и старого.
У меня кстати та же проблема. Вроде скрипт написан ровно, но алгоритм пропускается через раз, по настроению мача, иногда пропускает , а иногда едет и меняет этот инструмент на этот же)). Чем лечить эти лаги не знаю.
mial
Новичок
Сообщения: 12
Зарегистрирован: 06 ноя 2019, 11:09
Репутация: 5
Контактная информация:

Re: Как прочитать ID текущего инструмента?

Сообщение mial »

Кто знает - подскажите.
Суть в чем. Скрипт работает отлично при просто его запуске. Все измеряет, записывает в таблицу инструмента длину, и в соответствии с этой длиной корректирует зетку. Хоть 20 раз измерь к ряду, плюс минус сотка. Если же отрабатываем скрипт уже в G коде при выполнении УП, то происходит такая хрень. Скрипт по коду М6 отрабатывает, но KFlop почему то берет не свежие данные, а как я понял данные которые были в таблице до этого. Станок у меня для сверления печатных плат, сверла каждый раз ставяться по разному. Может даже плюс минус пару мм. Ну короче в результате получается некорректная длина инструмента. В настройках М6 стоит выполнение/ожидание/синхронизация. Что делать, ума не приложу. Пока решил вопрос создав отдельную УП для каждого диаметра. Предварительно, перед запуском замеряю скриптом длину. Так работает на ура. Ну и заказал кольца на сверла, что бы вставлять в шпиндель всегда одинаково, причем для всех. Другого решения пока в голову не приходит.
mial
Новичок
Сообщения: 12
Зарегистрирован: 06 ноя 2019, 11:09
Репутация: 5
Контактная информация:

Re: Как прочитать ID текущего инструмента?

Сообщение mial »

В общем дело было не в бобине. Раньше я использовал Planet CNC MK2. Там в ПО скрипт измерения длины инструмента встроен. Ни каких дополнительных телодвижений не требуется. KFlop же использует классический G-код. Соответственно, что бы применить длину инструмента из таблицы, туда длину прописывает мой скрипт после измерения, нужно использовать команду G43 H-номер инструмента. Я совсем забыл про его существование. Прописал эту команду в постпроцессоре. Теперь при генерации G-кода в CAM, эта команда встраивается отдельным кадром после Tx M6. И все работает отлично. Вот такие дела. А сколько инструмента поломал пока разобрался... :hehehe:
Ответить

Вернуться в «KFlop»