Смена инструмента на токарнике

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
freeform
Кандидат
Сообщения: 83
Зарегистрирован: 30 июн 2011, 00:02
Репутация: 7
Откуда: Москва
Контактная информация:

Смена инструмента на токарнике

Сообщение freeform »

Здравствуйте!
Я долго и нудно модернизирую токарный 16А20Ф3, заменил привода, ЧПУ соответственно ЕМС2, сейчас наконец дошло дело до настроек. Застрял на вопросе смены инструмента, не понимаю как ее реализовать. На станке стоит револьверная головка на 8 позиций, крутиться умеет только в одну сторону, фиксация в позиции происходит реверсом мотора. В ЕМС у меня заведены следующие пины: Tool_1 ..... Tool_8, Turret_CW, Turret_CCW и Toolchange_complete. Последний сигнал приходит, когда мотор головки на реверсе упирается.
Вроде бы логика работы очень простая, но я уже всю голову сломал, как это сделать. Насколько я понимаю, надо писать ладдер под это дело, но я в него никак не могу въехать :( . Последнее, что я писал, было на С и почти 10 лет назад..
Есть идеи?
Аватара пользователя
Nick
Мастер
Сообщения: 22731
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1693
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение Nick »

Щас разберемся :). Вот тут есть пример по автоматической смене инструмента на токарнике: http://wiki.linuxcnc.org/emcinfo.pl?Cla ... ool_Turret
Минут через 15 напишу комментарии.
Аватара пользователя
Nick
Мастер
Сообщения: 22731
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1693
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение Nick »

Нужно уточнить, что твои пины означают:
Tool_1 ..... Tool_8 - на этих пинах появляется значение, если соответствующий инструмент на нужном месте? Т.е. это пины ввода?
Turret_CW - вертеть барабан с инструментов почасовой, это смещение на один инструмент или нет?
Turret_CCW - вертеть против, т.е. фиксация инструмента?
Toolchange_complete - это пин ввода, что можно продолжать выполнение программы?
freeform
Кандидат
Сообщения: 83
Зарегистрирован: 30 июн 2011, 00:02
Репутация: 7
Откуда: Москва
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение freeform »

Nick писал(а):Tool_1 ..... Tool_8 - на этих пинах появляется значение, если соответствующий инструмент на нужном месте? Т.е. это пины ввода?
Да.
Nick писал(а):Turret_CW - вертеть барабан с инструментов почасовой, это смещение на один инструмент или нет?
Нет, это просто команда вращения. Т.е крутим по часовой и ждем нужного инструмента, при появлении сигнала нужного инструмента включаем реверс для затяжки. Когда мотор на реверсе встает, появляется сигнал Toolchange_complete, смена завершена, реверс надо выключить.
Аватара пользователя
Nick
Мастер
Сообщения: 22731
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1693
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение Nick »

Значит так. Нам понадобится:
1. пин на старт вращения, на него заводим iocontrol.0.tool-change. В ladder logic он должен выглядеть примерно как верхняя строчка на этой картинке:

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

 --+----[ ]---+----[\]----( )
   |   start |    stop   run   
   |         |                 
   +----[ ]--+                 
        run       
run нужно вывести на turret_ccw или turret_cw, какой там у тебя в нужную сторону вращает?

2. Заводим пин iocontrol.0.tool-prep-number на вход ladder logic.
3. Потом нам нужно будет создать восемь строчек для каждого инструмента, на вход подается пин от tool_n, такого вида:

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

                        +----------------------+           
 ------[ ]---------------+ compare req_num = n  +------+----( )
    tool_n              +----------------------+      |   stop   
                                                      |
                                                      +----( )
                                                          finish
Т.е. смотрим, если на входном пине появился сигнал, сравниваем номер пина и номер требуемого инструмента, тогда включаем stop и finish. Stop остановит run в первой строке, а finish должен зафиксировать карусель и подать сигнал к дальнейшей обработке.
4. И в конце на finish можно повесить включение реверса и вывод в iocontrol.0.tool-prepared и iocontrol.0.tool-changed.
freeform
Кандидат
Сообщения: 83
Зарегистрирован: 30 июн 2011, 00:02
Репутация: 7
Откуда: Москва
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение freeform »

Спасибо большое, завтра попробую.
Аватара пользователя
Nick
Мастер
Сообщения: 22731
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1693
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение Nick »

Как результат? Получилось или на чем-то застрял?
freeform
Кандидат
Сообщения: 83
Зарегистрирован: 30 июн 2011, 00:02
Репутация: 7
Откуда: Москва
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение freeform »

Nick писал(а):Как результат? Получилось или на чем-то застрял?
Застрял, но по железным причинам. Клинит головку, решаем чего с ней делать. Новая стоит дофига, а в этой все потроха менять надо, тоже куча денег :(
Аватара пользователя
Nick
Мастер
Сообщения: 22731
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1693
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение Nick »

Жаль... как появятся результаты пиши...
freeform
Кандидат
Сообщения: 83
Зарегистрирован: 30 июн 2011, 00:02
Репутация: 7
Откуда: Москва
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение freeform »

Ну что же.. Все заработало! :) Программа правда не совсем такая вышла, завтра спишу со станка и выложу. Ладдер оказался совсем нестрашной вещью :)
Аватара пользователя
Nick
Мастер
Сообщения: 22731
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1693
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение Nick »

Поздравляю! Ждем конфигов :)!
freeform
Кандидат
Сообщения: 83
Зарегистрирован: 30 июн 2011, 00:02
Репутация: 7
Откуда: Москва
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение freeform »

Ну собственно вот ладдер:
ladder.jpg (11424 просмотра) <a class='original' href='./download/file.php?id=1927&sid=ebb7afd6cf7fe5737a747e8e62fec0c3&mode=view' target=_blank>Загрузить оригинал (283.88 КБ)</a>
На вид кривенько слегка, но работает как часы. Таймер ТМ2 для дозатяжки головки после сигнала от концевика, ТМ1 для четкой выдачи сигнала о завершении смены, без него сигнал слишком быстро проскакивал и ЕМС его не видела.
Аватара пользователя
Nick
Мастер
Сообщения: 22731
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1693
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение Nick »

Так ты можешь ставить вместо простого вывода типа --( )--, вывод с запоминанием значения --(S)--, и тогда таймер будет не нужен. А перед стартом процедуры скидывать значение при помощи --(R)--Хммм.. странно, по идее по пину start, он должен "мигнуть" CW_Rot и вырубиться. Или у тебя еще где-то цикл спрятан?
freeform
Кандидат
Сообщения: 83
Зарегистрирован: 30 июн 2011, 00:02
Репутация: 7
Откуда: Москва
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение freeform »

Nick писал(а):Так ты можешь ставить вместо простого вывода типа --( )--, вывод с запоминанием значения --(S)--, и тогда таймер будет не нужен.

Угу. Наверное можно и так, я просто не вдавался особо, что это за тип выхода.
Nick писал(а):Хммм.. странно, по идее по пину start, он должен "мигнуть" CW_Rot и вырубиться. Или у тебя еще где-то цикл спрятан?
Неа, все работает, больше нигде ничего не спрятано :) . А с чего ему вырубаться собственно?
На картинке сейчас кстати странная ситуация, команд смены не было никаких, T_req не задано, почему нижняя строчка активна не очень понятно..
freeform
Кандидат
Сообщения: 83
Зарегистрирован: 30 июн 2011, 00:02
Репутация: 7
Откуда: Москва
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение freeform »

Все, понял, что тебя смутило. При подаче команды на смену T_req меняется на реальное число, и нижняя строчка выключается (или ,если задан уже стоящий инструмент, ничего не крутится, сразу Done выдается).
Аватара пользователя
Nick
Мастер
Сообщения: 22731
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1693
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение Nick »

Не, я не о том. Просто по идее, когда ты выставляешь пин start в true, то сигдал доходит до CW_Rot. И барабан начинает вращаться, но как только пин старта исчезнет, сразу же вырубится и пин CW_Rot. И все остановится так и не сменившись.

Или я не прав?
freeform
Кандидат
Сообщения: 83
Зарегистрирован: 30 июн 2011, 00:02
Репутация: 7
Откуда: Москва
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение freeform »

Ну и соответственно
T_req это iocontrol.0.tool-prep-number
Done это iocontrol.0.tool-changed
Start это iocontrol.0.tool-change
freeform
Кандидат
Сообщения: 83
Зарегистрирован: 30 июн 2011, 00:02
Репутация: 7
Откуда: Москва
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение freeform »

Nick писал(а):Или я не прав?
Не прав :)
Пин старта никуда не исчезает до установки iocontrol.0.tool-changed в 1, где-то в каком-то мануале это описано.
Аватара пользователя
Nick
Мастер
Сообщения: 22731
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1693
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение Nick »

Тогда все отл :)! Спасибо за инфу!!! Теперь буду всех сюда отправлять :hehehe:!

А можешь еще свой файл ladder прикрепить, чтобы не надо было самому составлять :roll:?
(возможно придется запаковать, чтобы прикрепился... )
freeform
Кандидат
Сообщения: 83
Зарегистрирован: 30 июн 2011, 00:02
Репутация: 7
Откуда: Москва
Контактная информация:

Re: Смена инструмента на токарнике

Сообщение freeform »

Прикрепил. Остальные конфиги пока не буду выкладывать, там стыдный срач, надо причесать.
custom.rar
(1.59 КБ) 932 скачивания
Ответить

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