Конфигурация EMC2 LinuxCNC

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Конфигурация EMC2 LinuxCNC

Сообщение Nick »

После того как Вы произвели установку EMC2, можно переходить к конфигурации.
Начнем с простого пути, использования утилиты Stepconf. Sterconf это графическая утилита для настройки EMC2 для различных станков. Конечно она не реализует все возможности EMC2, но подойдет для большинства станков со step-dir контроллерами управляемыми через lpt порт. Stepconf устанавливается вместе с EMC2 и его можно запустить из меню Приложения -> EMC2 -> Stepconf.
Это незавершенный раздел, Вы можете помочь в его оформлении.
Нужны исправления, комментарии. Публикуйте их в этой теме.

Содержание


Настройка EMC2 (316975 просмотров) <a class='original' href='./download/file.php?id=781&sid=c31602c8866769fd737ecbbb41035109&mode=view' target=_blank>Загрузить оригинал (41.24 КБ)</a>
Настройка EMC2
Конфигурация ЕМС2 (316975 просмотров) <a class='original' href='./download/file.php?id=780&sid=c31602c8866769fd737ecbbb41035109&mode=view' target=_blank>Загрузить оригинал (44.23 КБ)</a>
Конфигурация ЕМС2

Выбор конфигурации

В первом окне Stepconf есть выбор: создать новую конфигурацию или изменить старую. Выбираем создать новую. Также можно проставить галки напротив Create shortcut, чтобы в последствии запускать EMC2 с созданной конфигурацией в один клик.

Screenshot-EMC2 Stepper Mill Configuration-2.png (316975 просмотров) <a class='original' href='./download/file.php?id=782&sid=c31602c8866769fd737ecbbb41035109&mode=view' target=_blank>Загрузить оригинал (95.31 КБ)</a>

Параметры станка, контроллера и быстродействия

Настройки станка
Вводим название станка, в документации говорится, что можно использовать заглавные и строчные буквы, цифры и знаки "-" и "_".
Выбираем конфигурацию осей. XYZ (Фрезер), XYZA (4-х осевой фрезер) или XZ (Токарный станок). Названия только для примера. Если у Вас двух осевой станок, то можете выбрать XYZ, и ось Z оставить не настроенной.
Единицы измерения станка: дюймы или миллиметры.

Настройки контроллера
Можно выбрать из набора предустановленных параметров если Ваш контроллер в список. Или настроить все самому.
Параметры Step time, Step space, Direction hold, Direction setup смотрите в документации к вашему контроллеру.

Настройки lpt
Если у Вас только один lpt, то можно ничего не трогать по умолчанию стоит установка стандартного адреса lpt порта.

Настройки быстродействия
Base period - это одна из основных величин быстродействия, она определяет максимальную скорость работы с контроллером. Она определяет так называемый heartbeat (сердцебиение системы в целом) от которого зависит время для генерации сингала Step. Фактически, чем меньше base period тем больше максимальная частота генерации шагов (например, при Base period = 30 000 ns максимальная частота генерации шагов равна 33333Гц, что при 200 шагах на оборот в режиме микрошага 1:8 дает максимум 20 оборотов в секунду).

Base period зависит от параметров компьютера. Правильно определить base period можно при помощи утилиты Latency test, она тоже входит в состав EMC2. Latency это задержка с которой компьютер может остановить процесс работы для обработки внешнего запроса. В нашем случае, запросом является периодичный "heartbeat" (стук сердца) на основе которого вычисляется нужное время для следующего шага. Для того, чтобы контроллер работал правильно и не пропускал шаги минимальный base period должен быть равным длительность direction setup+direction hold+step space+maximum latency.

Итак, запускаем Latency test, и пытаемся нагрузить компьютер разными задачами, чтобы наверняка получить максимальную задержку. Можно запустить проигрываться фильм, полазить по интернету, скопировать большой файл, перемещать окна. Через несколько минут смотрим значение Base thread Max jitter (максимальное дрожание base period) и вставляем это значение в соответствующую строку в Stepconf.

Onscreen prompt for tool change - уведомление о смене инструмента. Если эта опция включена, то EMC2 будет останавливаться и выдавать сообщение о смене инструмента, каждый раз, когда в управляющей программе будет встречаться код M6. Оставьте эту опцию включенной, только если Вы не собираетесь делать автоматическую смену инструмента.

Настройка LPT для EMC2 (316975 просмотров) <a class='original' href='./download/file.php?id=783&sid=c31602c8866769fd737ecbbb41035109&mode=view' target=_blank>Загрузить оригинал (99.1 КБ)</a>
Настройка LPT для EMC2
Настройка LPT для EMC2 (316975 просмотров) <a class='original' href='./download/file.php?id=784&sid=c31602c8866769fd737ecbbb41035109&mode=view' target=_blank>Загрузить оригинал (88.29 КБ)</a>
Настройка LPT для EMC2

Настройки пинов LPT

На этой странице мы можем настроить значения всех пинов параллельного порта.
Значения для этих настроек смотрите в документации к контроллеру.

Настройка осей станка в EMC2 LinuxCNC (316975 просмотров) <a class='original' href='./download/file.php?id=785&sid=c31602c8866769fd737ecbbb41035109&mode=view' target=_blank>Загрузить оригинал (66.88 КБ)</a>
Настройка осей станка в EMC2 LinuxCNC
Проверка настроек осей LinuxCNC (316975 просмотров) <a class='original' href='./download/file.php?id=786&sid=c31602c8866769fd737ecbbb41035109&mode=view' target=_blank>Загрузить оригинал (21.23 КБ)</a>
Проверка настроек осей LinuxCNC

Настройка осей станка

Далее настраиваем все оси станка:

Motor Steps Per Revolution - количество шагов двигателя на один оборот.

Driver Microstepping - настройка микрошага контроллера. Для микрошага 1:8 устанавливайте "8"

Pulley Ratio - значение редуктора, если между валом двигателя и ходовым винтом стоит редуктор установите передаточное число.

Leadscrew Pitch - шаг ходового винта. Можно поменять направление движения вдоль оси установив отрицательное значение шага винта.

Maximum Velocity - Максимальная скорость перемещения.

Maximum Acceleration - Максимальное ускорение по данной оси.

Home Location - положение начала оси. Это положение в котором станок остановится после поиска начала.

Table Travel - границы оси. Положение начала должно быть внутри table travel, причем оно не должно совпадать с границами оси.

Home Switch Location - Положение концевика начального положения. Если у Вас совмещены home switch и limit switch в одном концевике, то значение home location не должно быть равным home switch location иначе появится ошибка "joint limit error", т.е. станок не должен остановиться в точке срабатывания ограничительного концевика.

Home Search Velocity - скорость поиска начала оси. Если концевой датчик расположен рядом с концом оси это значение должно быть выбрано с учетом того, что станок должен будет успеть остановиться до того как он ударится о конец оси. Если концевик замыкается только когда ответная часть рядом с ним, то скорость должна быть выбрана таким образом, чтобы станок успел остановиться пока концевик не разомкнулся. Если станок движется в противоположную сторону от концевика при поиске начала установите отрицательную скорость.

Home Latch Direction - направление уточнения начала, после первоначальной установки начала, они уточняются на очень маленькой скорости. Если выбрана опция "Same" при повторном срабатывании концевика начала будут установлены, если "Opposite" станок будет медленно откатываться пока концевик не разомкнется.

Ниже будут приведены вычисления параметров оси:
  • Time to accelerate to max speed - время ускорения до максимальной скорости (время остановки)
  • Distance to accelerate to max speed - дистанция ускорения до максимальной скорости (дистанция остановки)
  • Pulse rate at max speed - частота сигналов на максимальной скорости
  • Axis SCALE - количество шагов в одной единице измерения шагов/мм (шагов/дюйм)
После введения всех параметров ось можно протестировать. Для этого нажимаем Test this axis.

Настройка управления шпинделем в EMC2 (316975 просмотров) <a class='original' href='./download/file.php?id=787&sid=c31602c8866769fd737ecbbb41035109&mode=view' target=_blank>Загрузить оригинал (32.67 КБ)</a>
Настройка управления шпинделем в EMC2

Настройка шпинделя

Если шпиндель регулируется при помощи ШИМ:
Устанавливаем Carrier frequency (Несущая частота) согласно инструкции к Вашему контроллеру шпинделя.
Устанавливаем Speed 1, Speed 2, PWM 1, PWM 2 - значения скоростей в оборотах в минуту при заданном значении ШИМ. Эту информацию можно найти в инструкции к Вашему контроллеру, либо попробовать определить самостоятельно. Этими параметрами определяется линейная зависимость скорости шпинделя от значения PWM.

Дополнительные настройки EMC2 (316975 просмотров) <a class='original' href='./download/file.php?id=788&sid=c31602c8866769fd737ecbbb41035109&mode=view' target=_blank>Загрузить оригинал (70.45 КБ)</a>
Дополнительные настройки EMC2

Настройка дополнительного интерфейса

  • Include Halui - Добавить пользовательскую панель Halui.
  • Include PyVCP GUI panel - Добавить панель pyVCP.
    См. статью по настройке и применению pyVCP в EMC2
  • Include ClassicLadder PLC - Добавить программируемый контроллер на лестничной логике (Programmable Ladder Logic Controller).

Окончание настройки EMC2 (316975 просмотров) <a class='original' href='./download/file.php?id=789&sid=c31602c8866769fd737ecbbb41035109&mode=view' target=_blank>Загрузить оригинал (74.23 КБ)</a>
Окончание настройки EMC2

Заключение


См. также

Нахождение максимальной скорости и ускорения станка
PyVCP дополнительный интерфейс для EMC2 LinuxCNC
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение Lexxa »

tiaginalex писал(а):При задании переместиться на 20мм едут на 335мм.
а если 40 задать? или 10
:bender:
tiaginalex
Новичок
Сообщения: 5
Зарегистрирован: 12 мар 2012, 16:26
Репутация: 0
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение tiaginalex »

Сейчас только доперло.
Соотношение скорости и пробега в настройках и в программе одинаковое 1/17.
В настойках max скорость стоит 8мм/с.
В пр-ме нормальная скорость падает в 17 раз зато перемещение возрастает в 17 раз.
tiaginalex
Новичок
Сообщения: 5
Зарегистрирован: 12 мар 2012, 16:26
Репутация: 0
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение tiaginalex »

Lexxa писал(а):а если 40 задать? или 10
Реально двигается в диапазоне от 8 до 27.
Меньше - дергается - мало. Больше - дергается - много
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение Nick »

Скинь свой ini и hal, и параметры станка, передаточное число осей и настройки микрошага двигателей.
Аватара пользователя
Тима
Почётный участник
Почётный участник
Сообщения: 3162
Зарегистрирован: 01 мар 2012, 20:47
Репутация: 1089
Настоящее имя: Тимур
Откуда: КБР
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение Тима »

Имеется в наличии преобразователь частоты 0.75кВт с возможностью управлять по аналоговому сигналу 4..20мА. Возможно ли с ЕМС2 получить такой сигнал для управления шпинделем? Может получится как-то согласовать ЕМС2 с промышленным контроллером для этих целей?
Дорогу осилит идущий!
Я все пойму, Вы только дайте денег!!!
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение Nick »

Тима писал(а):с возможностью управлять по аналоговому сигналу 4..20мА.
Что за сигнал такой в мА? Может там что-то в вольтах?
Аватара пользователя
Тима
Почётный участник
Почётный участник
Сообщения: 3162
Зарегистрирован: 01 мар 2012, 20:47
Репутация: 1089
Настоящее имя: Тимур
Откуда: КБР
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение Тима »

нет это миллиамперы!
Дорогу осилит идущий!
Я все пойму, Вы только дайте денег!!!
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение Nick »

хм... а есть инструкция к этому частотнику? Вообще странно...

Но в принципе, можно попробовать прогнать ШИМ через сопротивление чтобы получить такие токи, наверное :monkey:
Аватара пользователя
Тима
Почётный участник
Почётный участник
Сообщения: 3162
Зарегистрирован: 01 мар 2012, 20:47
Репутация: 1089
Настоящее имя: Тимур
Откуда: КБР
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение Тима »

Nick писал(а): Вообще странно...
Ничего странного, обычный промышленный стандарт сигнала!
Вот ссылка на него :
http://www.kipservis.ru/delta/chastotny ... _VFD-L.htm
Управлял им по сигналу 4..20мА и забыл, что у него вход универсальный :oops: , т.е. можно управлять и по току и по напряжению!
И все же, раз вопрос задан, как с ЕМС2 можно получить 4..20мА ну и 0..10в тоже?
Дорогу осилит идущий!
Я все пойму, Вы только дайте денег!!!
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение Nick »

0..5 просто - делается компонент pwmgen и он генерирует ШИМ 0..5В, чтобы получить 0..10 Нужен какой-нибудь усилитель, можно взять такой от mesa.
Кстати ШИМ на шпиндель можно настроить через Stepconf, вверху темы это описано.


Про 4..20мА... я в электронике не силен, но если мы прогоним этот ШИМ по замкнутой цепи подобрав сопротивление так, чтобы I=U/R=20мА при U=5в, не получим ли мы искомое? Электронщики помогайте!
tiaginalex
Новичок
Сообщения: 5
Зарегистрирован: 12 мар 2012, 16:26
Репутация: 0
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение tiaginalex »

Nick писал(а):Скинь свой ini и hal, и параметры станка, передаточное число осей и настройки микрошага двигателей.
Спасибо за участие. Вроде все заработало на тех же настройках. Скорее всего где то был глюк.
Правда к проблеме я подошел кардинально. Т. к. все раньше работало в KCamе (при 100% загрузке пр-ра двигатели раз в секунду пропускали ходы)
и в Stepconf моторчик ездил нормально с нужной скоростью на заданное расстояние то я предположил что это был глюк.
Записал новый диск. Поменял винд с 4Гб(может в этом была проблема) на 50Гб. Установил EMC2. Обновил до 2.4.6. И все заработало. Ура!!!
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение Nick »

4Гб, не то, чтобы много, но должно быть достаточно, у меня вон на флешке 4Гб emc2 стоит и ничего вроде :).
Аватара пользователя
passer-by
Кандидат
Сообщения: 74
Зарегистрирован: 18 мар 2012, 14:16
Репутация: 0
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение passer-by »

Здравствуйте. Если не ошибаюсь, LinuxCNC позволяет контролировать до 9 осей, в Stepconf Wizard возможна настройка 4 осей. Как подключить и настроить большее количество осей , по 2 двигателя на осях X, Y, Z и две поворотные оси ? Возможно ли LinuxCNC использовать для управления станком с полноценной 5 осевой (не 3+2) конфигурацией ?
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение Lexxa »

passer-by писал(а):Здравствуйте. Если не ошибаюсь, LinuxCNC позволяет контролировать до 9 осей, в Stepconf Wizard возможна настройка 4 осей. Как подключить и настроить большее количество осей , по 2 двигателя на осях X, Y, Z и две поворотные оси ? Возможно ли LinuxCNC использовать для управления станком с полноценной 5 осевой (не 3+2) конфигурацией ?
Ручками описать, у тебя движки шаговые?
:bender:
Аватара пользователя
passer-by
Кандидат
Сообщения: 74
Зарегистрирован: 18 мар 2012, 14:16
Репутация: 0
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение passer-by »

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

Re: Конфигурация EMC2 LinuxCNC

Сообщение Nick »

Опиши точнее свой станок и конфигурацию осей.
LinuxCNC позволяет управлять 9 осями в базовой версии, можно добавить осей, но тогда придется перекомпилировать.

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

ЗЫ Чем отличается 5-осевой, от 3+2?
Аватара пользователя
passer-by
Кандидат
Сообщения: 74
Зарегистрирован: 18 мар 2012, 14:16
Репутация: 0
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение passer-by »

Станок находится в стадии изготовления .
Предпологается использовать по 2 шаговых двигателя на осях X, Y, Z, и по одному на двух поворотных осях, закрепленных на вертикальной оси , классическая компоновка .
Говоря о 5 осевой кинематеке имелось ввиду что в обработке заготовки участвуют в двигатели всех осей , в отличии от 3+2 конфигурации , где в процессе обработки участвуют оси X, Y, Z , а поворотные оси используются только для пространственной ориентации инструмента , в период обрабтки они неподвижны .
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение Nick »

EMC2 будет работать в 5-осевом режиме.
По спаренным двигателям, можно использовать кинематику gantrykins, она позволяет работать со спаренными двигателями как в синхронном режиме, так и по отдельности, это позволяет например автоматически выставлять портал.

В принципе с 3х2 двигатлями на линейных осях и 2х на поворотных - ты вроде вписываешься в стандартные ограничения.
vladimir74
Почётный участник
Почётный участник
Сообщения: 544
Зарегистрирован: 25 май 2011, 14:14
Репутация: 19
Откуда: Магнитогорск
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение vladimir74 »

Можно ли найти видео про 3+2 и 5 осей полноценные, для сравнения?, а то я как-то все слышу про это, а вот в математике понять не могу чем отличается. Или это только вопрос кинематики?
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Конфигурация EMC2 LinuxCNC

Сообщение Nick »

Насколько я понимаю 3+2 это просто 3-осевой станок, у которого есть еще две оси, но эти две оси работают не синхронно с остальными. Поэтому ими имеет смысл управлять только тогда, когда не производится обработка. Такое управление говорит о очень слабенькой УП. Возможно такое часто встречается на старых системах ЧПУ. Когда были слабые процессоры/компьютеры было очень сложно написать хорошую УП.
Ответить

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