Модернизация обрабатывающего фрезерного центра 2204вмф4

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение Serg »

N1X писал(а):Ну у нас конкретно Mazak QTN250 II MSY при падении давления в магистрали сжатого воздуха прикольно так всей линией становятся колом с резцами в деталях(может текущий проход и заканчивают, настолько подробно не знаю), а при его восстановлении едут дальше, даже без спроса... Понимаю, япошки извращенцы, но факт есть...
Ну если вы считаете это нормальным, то и станки у вас нормальные... :)
На некоторых материалах при таком старте запросто можно словить скол пластины или глубокий задир детали.
Lexxa писал(а):В #42 как описано, делать не надо.
Я например тоже считаю, что вопрос поставлен корректно. И если у LCNC нет таких возможностей, то так и надо говорить, а не то что ставь на аварию.
Больше докопаться было не к чему? :)
ТС задал вполне конкретный вопрос:
vko писал(а):Вопрос следующий, как запретить движение конкретной оси при наличии входного сигнала допустим "out0"?
Я ответил как это можно сделать в LinuxCNC описав все два возможных варианта. Причём я оказался единственным, кто это сделал...
А остальные бросились обсуждать всякую чепуху, которую вопервых никто из них не готов реализовать, а вовторых даже не представляют до конца как это правильно сделать.
Если считаете, что я здесь не прав, то лучшим способом это выразить будет описание реального способа реализации желания ТС, кроме способов описанных в #42, ну и в конце #77. :)
Lexxa писал(а):Полно станков, которые снимают тормоз при попытке двигаться с зажатой осью.
Ты этта, уже определись как-нибудь... В #42 во второй строчке предложен именно этот вариант, но ты сам в пределах одного поста сначала приводишь в пример такое решение и чуть ниже сам-же пищешь, что так нельзя делать... :thinking:

P.S. Я понимаю, что предпоследний вопрос в #77 несколько неудобен, но меня очень интересует ответ на него... :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6191
Откуда: Казахстан.
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение aftaev »

UAVpilot писал(а):А остальные бросились обсуждать всякую чепуху, которую вопервых никто из них не готов реализовать, а вовторых даже не представляют до конца как это правильно сделать.
Честно написал что не знаю как это делается в Lcnc, но знаю как это делается в Mach3 :)
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение Lexxa »

UAVpilot, где я пишу, что нельзя и нужно одновременно???
Я пишу, что производителю видней, где блокировать чтение, а где ось. Где авария, а где вполне штатная ситуация. Я и привел примеры,где и как делают люди, которые занимаются Только изготовлением промышленных станков.
Задача производителя станка обеспечить защиту от дурака в духе снятия тормоза при попытке движения. Или опять не согласен?

Я так понимаю, что ты про себя спрашиваешь? Ок, ты любишь отвечать в духе "это не нужно". И как пример твой пост про мазак - чудной станок. Да нет, это как раз вполне адекватный подход станкопроизводителя.
Ты же тут так и пишешь, что это не нужно, нужно правильный жкод. Да кто спорит, с тем, что жкод должен быть без ошибок, но что мешает защитить механику станка от человеческого фактора???? Кто не хочет,тот пусть не защищает, а кто хочет - не надо отговаривать.

#42 может иметь массу вариантов,например можно сетить feedhold, но, простите, аварийным остановом тут и не пахнет даже.
:bender:
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение Serg »

Lexxa писал(а):UAVpilot, где я пишу, что нельзя и нужно одновременно???
В одном месте ты пишешь:
Lexxa писал(а):В #42 как описано, делать не надо.
и тут-же рядом приводишь в пример:
Lexxa писал(а):Полно станков, которые снимают тормоз при попытке двигаться с зажатой осью.
Но ведь именно в #42 во второй строке описан этот вариант.
Lexxa писал(а):Я пишу, что производителю видней, где блокировать чтение, а где ось.
А в чём разница? При заблокированной оси можно читать/выполнять следующие кадры? :)
Lexxa писал(а):Задача производителя станка обеспечить защиту от дурака в духе снятия тормоза при попытке движения. Или опять не согласен?
Вот опять ты вынуждаешь менять в который раз повторять тебе одно и тоже:
UAVpilot писал(а):в #42 во второй строке описан этот вариант
Lexxa писал(а):Ок, ты любишь отвечать в духе "это не нужно".
Нет, ты неправильно понимаешь. В случае с заторможенной осью мало остановится и чего-то ждать, нужно предусмотреть сценарий безопасного выхода из этой ситуации. Или программа пытается двигать осью которой нельзя двигать, или программа пытается двинуть ось "забыв" её предварительно разблокировать - в любом случае это ошибка в программе. Надеюсь тут возражений нет? А что делают с программой, содержащей ошибку? - Правильно, исправляют и загружают в станок заново. Отсюда вытекает закономерный вопрос: зачем делать паузу в исполнении программы. если она всё равно будет заменена?..
Неужели это такая сложная для осознания логическая цепочка?..
Lexxa писал(а):#42 может иметь массу вариантов,например можно сетить feedhold, но, простите, аварийным остановом тут и не пахнет даже.
Не может! Там описаны лишь два возможных варианта.
А при активации feedhold разве не надо "тормозить по рампе"?..

На этот вопрос всётаки ответишь или я и тут был прав? :)
UAVpilot писал(а): Lexxa писал(а):
На счет имен. Я скажу так, вероятно, такие люди на форуме есть.

В этой теме есть? Ты ведь не ради пустозвонства именно в ней ты их помянул... :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
vko
Кандидат
Сообщения: 64
Зарегистрирован: 11 май 2015, 21:34
Репутация: 3
Настоящее имя: Василий
Откуда: Лобня
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение vko »

Столкнулся при настройке приводов со следующей проблемой, не могу выставить параметры по приводу так что бы в плюс и минус ошибка была одинакова (f-error) и стремилась к нулю. При выставлении параметра FF1 в нужном значении, что бы при постоянной скорости ошибка не росла, то при движении в другую сторону ошибка (f-error) возрастает при постоянной скорости. Параметрами FF0, FF1, FF2 добиться близкой к нулю ошибки в одну и вторую сторону не получается. Может кто ни будь ткнет пальцем где рыть, а то в документации на EMC2 не нашел этого.
И второй вопрос, который может тоже связан с первым, скорость исправления рассогласования привода, регулируется только параметром P или есть еще параметр, который за это отвечает?
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение Serg »

Слишком мало подробностей - сложно понять причину... Но рискну предложить попробовать пин pid.N.bias
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
vko
Кандидат
Сообщения: 64
Зарегистрирован: 11 май 2015, 21:34
Репутация: 3
Настоящее имя: Василий
Откуда: Лобня
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение vko »

Проблему решил загрубив параметр P. Двигатель немного начал рычать, но при уменьшении альфа все встало на место. Теперь ошибка постоянная. :)
vko
Кандидат
Сообщения: 64
Зарегистрирован: 11 май 2015, 21:34
Репутация: 3
Настоящее имя: Василий
Откуда: Лобня
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение vko »

Прошу помощи по настройки шпинделя. Никак не получается добиться что бы при стопе он стоял на одном месте. Идет небольшое вращение постоянно. Сигналы позиции и скорости по энкодеру в скопе просматриваются. Причем если перекидываю управление шпинделя и энкодер шпинделя на другую ось. Все нормально держится в заданной позиции. В чем может быть ошибка в конфигурации? На всякий случай hal и ini прикладываю.
Вложения
2204_VMF4.hal
(17.82 КБ) 753 скачивания
2204_VMF4.ini
(3.7 КБ) 694 скачивания
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение nkp »

может здесь поправить:
MIN_FERROR = 100.05

по идее MIN_FERROR - это ошибка расогласования на маленькой скорости
эта величина меньше FERROR

----------------------
что будет ,если написать вот так "наоборот" - не пробовал ;)
--------------
просто попробуй убрать эту строку
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение Serg »

Глядя по диагонали в конфиги нашёл несколько ошибок:
1. Для шпинделя в ini надо поставить:
FF0=1
это для управления по скорости. FF0=0 - это для управления по позиции.

OUTPUT_SCALE = NNNN
OUTPUT_MIN_LIMIT = -NNNN
OUTPUT_MAX_LIMIT = NNNN
где NNNN - максимальные обороты шпинделя.
это чтобы скорость соответствовала заданной.

2. по команде выключения шпинделя (M5) деактивируется сигнал pid.s.enable, т.е. PID-регулятор шпинделя выключается - это и есть причина вращения.
В этом варианте видимо надо заменить строчку
net spindle-on hm2_5i25.0.7i77.0.0.output-02
на
net spindle-enable hm2_5i25.0.7i77.0.0.output-02
но я сделал-бы иначе - для включения шпинделя использовал-бы логическое ИЛИ сингалов spindle-cw и spindle-ccw

Ну и не совсем понятно как управляется шпиндель - понимает-ли он правильно отрицательное напряжение на входе. Если нет, то реверс тут работать не будет.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
vko
Кандидат
Сообщения: 64
Зарегистрирован: 11 май 2015, 21:34
Репутация: 3
Настоящее имя: Василий
Откуда: Лобня
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение vko »

Спасибо. Шпиндель управляется так же как и другие привода. Он полностью понимает отрицательное напряжение. output-02 на данный момент уже убрали, он не используется. А как сделать так что бы pid.s.enable не отключался? Что бы постоянно был контроль положения? Был бы очень благодарен если бы кусок рабочего hal привели бы в пример, где управление шпинделем осуществляется так же как приводами.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение Serg »

vko писал(а):А как сделать так что бы pid.s.enable не отключался? Что бы постоянно был контроль положения?
net spindle-enable motion.motion-enabled
vko писал(а):Был бы очень благодарен если бы кусок рабочего hal привели бы в пример
Всё остальное в hal нормально.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
vko
Кандидат
Сообщения: 64
Зарегистрирован: 11 май 2015, 21:34
Репутация: 3
Настоящее имя: Василий
Откуда: Лобня
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение vko »

Спасибо. Буду пробовать.
vko
Кандидат
Сообщения: 64
Зарегистрирован: 11 май 2015, 21:34
Репутация: 3
Настоящее имя: Василий
Откуда: Лобня
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение vko »

Добрый вечер, очень требуется помощь в одном вопросе: Регулировка шпинделя и его ориентация. При задании команды М19 R10 Q100 P0 идет постоянное вращение шпинделя на небольшой скорости, при этом он отключается по ошибке TIME OUT. Запуск шпинделя идет через готовность привода и подача напряжения на привод. Прикладываю файлы конфигурации и значения различных сигналов на halscope. При выполнении команды М19 состояние сигналов следующее:
orint.0.enable - TRUE;
Spindle-cmd - 0;
pid.s.error - увеличивается;
orient.0.command - задается разными значениями, в зависимости от положения шпинделя;
orint.0.position - постоянно идет в сторону расхождения от orient.0.command.
Пробовал изменить в ини файле Р=1 и ставил FF0=0, так же ставил Р=10. Ситуация не менялась.
Mux2-out - значения меняются (в файлах отчета подробнее видно).
Motion.spindle-orietn-angle - 10;
orietn.0.angle - 10.
У меня такое ощущение, что не идет по каким то причинам непосредственно управлением на удержание шпинделя в заданном положении. По каким причинам не знаю! Так что прошу помощи в решении данной проблемы.
Вложения
2204-1.hal
(17.21 КБ) 818 скачиваний
2204-1.ini
(4.81 КБ) 643 скачивания
halscope.log
(563.05 КБ) 643 скачивания
halscope1.log
(563.12 КБ) 1186 скачиваний
halscope2.log
(551.08 КБ) 1018 скачиваний
vko
Кандидат
Сообщения: 64
Зарегистрирован: 11 май 2015, 21:34
Репутация: 3
Настоящее имя: Василий
Откуда: Лобня
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение vko »

Возник вопрос, возможно ли сделать независимое управление одной осью. Суть проблемы следующая: инструментальная головка настроена как отдельная ось, при этом в процессе выбора позиции инструмента, система ждет когда это произойдет, хотелось бы что бы она в фоновом режиме была. Как пример поступила команда из УП на выбор позиции, позиция ищется, а в это время происходят выполнения следующих кадров. Смена инструмента производиться только тогда когда в инструментальная головка находиться в заданном месте (ну это дополнительно в Ладдере прописал).
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение Serg »

vko писал(а):orint.0.position - постоянно идет в сторону расхождения от orient.0.command.
Так может направление неправильное?..
vko писал(а):Возник вопрос, возможно ли сделать независимое управление одной осью.
А зачем там вообще ось нужна?..
vko писал(а):хотелось бы что бы она в фоновом режиме была.
За несколько кадров до смены выполняйте Tn и пусть головка выбирает инструмент. Непосредственно смена происходе по команде M6.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Dmaster
Мастер
Сообщения: 1271
Зарегистрирован: 15 июл 2011, 13:36
Репутация: 476
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение Dmaster »

Я сталкивался с подобной проблемой. Дело в том, что linuxcnc при ,к примеру , комманде Т6 поедет подготавливать инструмент и не будет исполнять g код , пока на пине iocontrol.0.tool-prepared не будет единицы. Я лично соеденил prepare и prepared,а ограничение на смену сделал своё.
" Linux CNC - наше всё"
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение Serg »

Только что попробовал - всё работает как и задумано. v2.7.11.
Да и по команде T6 LinuxCNC никуда ездить не должен.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
jo_key
Почётный участник
Почётный участник
Сообщения: 262
Зарегистрирован: 19 сен 2011, 14:49
Репутация: 30
Настоящее имя: Евгений
Откуда: Украина, Харьков
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение jo_key »

vko писал(а):Возник вопрос, возможно ли сделать независимое управление одной осью. Суть проблемы следующая: инструментальная головка настроена как отдельная ось, при этом в процессе выбора позиции инструмента, система ждет когда это произойдет, хотелось бы что бы она в фоновом режиме была. Как пример поступила команда из УП на выбор позиции, позиция ищется, а в это время происходят выполнения следующих кадров. Смена инструмента производиться только тогда когда в инструментальная головка находиться в заданном месте (ну это дополнительно в Ладдере прописал).
Наверное сделать что-то типа:
net tool-prepare <= iocontrol.0.tool-prepare
net tool-prepare => iocontrol.0.tool-prepared => classicladder.00.вход_для_задания_поиска_кармана

Но что , если запрос на смену инструмента прийдет раньше, чем найдется позиция инструмента в барабане?
jo_key
Почётный участник
Почётный участник
Сообщения: 262
Зарегистрирован: 19 сен 2011, 14:49
Репутация: 30
Настоящее имя: Евгений
Откуда: Украина, Харьков
Контактная информация:

Re: Модернизация обрабатывающего фрезерного центра 2204вмф4

Сообщение jo_key »

Кстате, если нет, то могу поделиться алгоритмом (родной 2М42) поиска, смены и ориентацией шпинделя
Ответить

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