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

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

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

Screenshot-EMC2 Stepper Mill Configuration-2.png (340559 просмотров) <a class='original' href='./download/file.php?id=782&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 (340559 просмотров) <a class='original' href='./download/file.php?id=783&mode=view' target=_blank>Загрузить оригинал (99.1 КБ)</a>
Настройка LPT для EMC2
Настройка LPT для EMC2 (340559 просмотров) <a class='original' href='./download/file.php?id=784&mode=view' target=_blank>Загрузить оригинал (88.29 КБ)</a>
Настройка LPT для EMC2

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

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

Настройка осей станка в EMC2 LinuxCNC (340559 просмотров) <a class='original' href='./download/file.php?id=785&mode=view' target=_blank>Загрузить оригинал (66.88 КБ)</a>
Настройка осей станка в EMC2 LinuxCNC
Проверка настроек осей LinuxCNC (340559 просмотров) <a class='original' href='./download/file.php?id=786&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 (340559 просмотров) <a class='original' href='./download/file.php?id=787&mode=view' target=_blank>Загрузить оригинал (32.67 КБ)</a>
Настройка управления шпинделем в EMC2

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

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

Дополнительные настройки EMC2 (340559 просмотров) <a class='original' href='./download/file.php?id=788&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 (340559 просмотров) <a class='original' href='./download/file.php?id=789&mode=view' target=_blank>Загрузить оригинал (74.23 КБ)</a>
Окончание настройки EMC2

Заключение


См. также

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

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

Сообщение Nick »

А как ты хочешь? :)

У тебя датчик есть?

Вообще там кнопочка должна быть что-то типа touch off. Либо можно приехать в нужное место и ее нажать или в этом месте в MDI написать G92 X0 Y0 Z0
alik04
Кандидат
Сообщения: 66
Зарегистрирован: 17 май 2012, 13:51
Репутация: 0
Контактная информация:

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

Сообщение alik04 »

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

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

Сообщение Nick »

Смотря для чего :).

Какие у тебя максимальные скорсти перемещения и какое значение шагов/мм?
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

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

Сообщение Serg »

PKM писал(а):Я немного слежу за рассылкой... они не собирают новое ядро, а берут его в другом месте. И как раз в этом месте RTAI и не собираются еще делать для 3 ядра.
Потому сейчас (похоже, весьма неторопливо) ищутся варианты типа PREEMPT_RT и т.д.
И правильно делают, что не собираются - давно пора закопать труп этого костыля (RTAI) и пользовать нормальные механизмы.
Глядишь появится возможность запускать EMC2 на промышленных дистрибутивах линукса и появятся на его основе профессиональные станки.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

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

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

Сообщение Serg »

Ещё б пояснил про что "про это" - про realtime или про ядра, ну и про уровень. :D
Попробуй вот это:
http://www.linuxfocus.org/Russian/May19 ... cle44.html
http://www.ibm.com/developerworks/ru/li ... ime-linux/
Вот здесь можно покопаться https://www.osadl.org/Realtime-Linux.pr ... nux.0.html
Про RTAI на самом сайте https://www.rtai.org/ Честно говоря я даже был сильно удивлён, что EMC использует RTAI, похоже это единственный большой проект на RTAI.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
alik04
Кандидат
Сообщения: 66
Зарегистрирован: 17 май 2012, 13:51
Репутация: 0
Контактная информация:

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

Сообщение alik04 »

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

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

Сообщение Nick »

alik04 писал(а):Что опять не хватает программе "Программа превышает нижний предел значения по оси Х и Y а Z нижние предел".
Это значит, что твой Gкод вылазит за пределы осей станка.
Скинь скриншот.
alik04 писал(а):И ещё с концевиками правельно у меня или не, точка ноль по каждой аксе возле концевика.
Концевик может быть в любом месте, но обычно концевики home ставят около 0, но лучше не в самом 0, а в -1, т.е. вне рабочей области LinuxCNC, чтобы на него ненароком не заехать.
alik04 писал(а):Тот пункт возле заготовки не фиксируется, просит найти начало оси.
Да, сначала надо найти начала, как перед исполнением программы.
alik04
Кандидат
Сообщения: 66
Зарегистрирован: 17 май 2012, 13:51
Репутация: 0
Контактная информация:

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

Сообщение alik04 »

Nick, с нулём разобрался, ещё проблема, акса Z пропускает шаги на погружение, как настроить?
Как я уже писал у меня в конфигурации не могу делать "Test" на аксах Y и Z, можно что нибудь сделать. Что бы скорость и ускорение проверить.
вот конфиг
Meine-CNC.rar
(3.29 КБ) 435 скачиваний
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

alik04 писал(а):Как я уже писал у меня в конфигурации не могу делать "Test" на аксах Y и Z, можно что нибудь сделать.
Чтобы сделать тест, можешь на пинах enable осей YZ поставить invert и погонять их в stepconf, а потом поменять назад...

А при каких условиях он шаги начинает пропускать?
Кстати, что у тебя за станок, какие движки/драйверы/питание/передачи/вес? Сделай фотки :).
alik04
Кандидат
Сообщения: 66
Зарегистрирован: 17 май 2012, 13:51
Репутация: 0
Контактная информация:

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

Сообщение alik04 »

Cтанок три аксы с рабочим полем X-310,Y-410 и Z-80мм
IMG_6658.JPG (3778 просмотров) <a class='original' href='./download/file.php?id=5766&mode=view' target=_blank>Загрузить оригинал (174.52 КБ)</a>
резьба на винтах "трапец 14х4"
IMG_6720.JPG (3778 просмотров) <a class='original' href='./download/file.php?id=5767&mode=view' target=_blank>Загрузить оригинал (158.87 КБ)</a>
Шриттмоторы фирмы Powermax
motor-1.jpg (3778 просмотров) <a class='original' href='./download/file.php?id=5763&mode=view' target=_blank>Загрузить оригинал (77.59 КБ)</a>
драйвер 4 axis TB6560 driver
steuerung.jpg (3778 просмотров) <a class='original' href='./download/file.php?id=5764&mode=view' target=_blank>Загрузить оригинал (194.69 КБ)</a>
питание "24 Вольт 15 Ампер"
Netzteil.jpg (3778 просмотров) <a class='original' href='./download/file.php?id=5765&mode=view' target=_blank>Загрузить оригинал (148.99 КБ)</a>
alik04
Кандидат
Сообщения: 66
Зарегистрирован: 17 май 2012, 13:51
Репутация: 0
Контактная информация:

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

Сообщение alik04 »

Поставил я галочки invert, контроль включился.
Nick, я установил Maximum Velocity-17 и 17 это мало,а Maximum Acceleration пробовал от 30 до 500 и никаких изменений,как правильно зделоть Нахождение максимальной скорости и ускорения станка
Последний раз редактировалось alik04 07 июн 2012, 17:06, всего редактировалось 1 раз.
Аватара пользователя
PKM
Почётный участник
Почётный участник
Сообщения: 4263
Зарегистрирован: 31 мар 2011, 18:11
Репутация: 705
Настоящее имя: Андрей
Откуда: Украина
Контактная информация:

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

Сообщение PKM »

s3301 писал(а):Честно говоря я даже был сильно удивлён, что EMC использует RTAI, похоже это единственный большой проект на RTAI
Из обсуждений я понял, что RTAI обеспечивает наилучшие показатели latency.
Альтернативные реалтайм ядра пока годятся только сервосистем.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

alik04 писал(а):Nick, я установил Maximum Velocity-17 и 17 это мало,
А что так мало? Больше не тянет?
alik04 писал(а):а Maximum Acceleration пробовал от 30 до 500 и никаких изменений,как правильно зделоть
Ну это нормально. Можешь и еще больше попробовать. Если конечно нужны такие ускорения.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

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

Сообщение Serg »

PKM писал(а):Из обсуждений я понял, что RTAI обеспечивает наилучшие показатели latency.
Латентность не от этого зависит.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
alik04
Кандидат
Сообщения: 66
Зарегистрирован: 17 май 2012, 13:51
Репутация: 0
Контактная информация:

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

Сообщение alik04 »

Nick, что то в программе мне кажется не так.
Когда я ставлю в Maximum Velocity-120мм/с а в Maximum Acceleration-100мм/с² и включаю "EMC" передвигая аксу кнопками на клавиатуре всё нормально, нет пропусков шагов.
Потом ставлю что бы станок что нибудь вырезал, и там начинаются потери шагов, не при обработке какого либо участка а когда фреза подымается в верх и начинает перемещаться ко второму пункту обработки детали,что может быть?
xentaur
Опытный
Сообщения: 178
Зарегистрирован: 09 ноя 2010, 02:29
Репутация: 1
Откуда: Украина Харьков
Контактная информация:

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

Сообщение xentaur »

Вот это покажи (нажать Alt+PrintSceen)
Снимок-Конфигурация LinuxCNC для фрезера на шаговых моторах.png (3732 просмотра) <a class='original' href='./download/file.php?id=5830&mode=view' target=_blank>Загрузить оригинал (46.38 КБ)</a>
И как драйвера настроил микрошаг, ток, decay mode.
alik04
Кандидат
Сообщения: 66
Зарегистрирован: 17 май 2012, 13:51
Репутация: 0
Контактная информация:

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

Сообщение alik04 »

дреивер мне помогали настраивать под MACH3 и он работал там вроди бы нормально,а данные от драйвера утеряны после форматирования жоского диска.
В конфигурацион контроль можно зделать только по аксе-X а Y-Z не включается, может с этим связано что-то?

Bildschirmfoto-EMC2 Stepper Mill Configuration.png (3723 просмотра) <a class='original' href='./download/file.php?id=5833&mode=view' target=_blank>Загрузить оригинал (55.25 КБ)</a>
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

Может все таки скорость слишком большая.. При обработке он наверное не едет на максимальной скорости.
ЗЫ 120 мм/с это 7200м/мин - это очень приличная скорость.

ЗЫ а при тестах оси он шаги на такой скорости не пропускал?
alik04
Кандидат
Сообщения: 66
Зарегистрирован: 17 май 2012, 13:51
Репутация: 0
Контактная информация:

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

Сообщение alik04 »

почему уменя в ХАЛ КОНФЕГУРИРЕН стоят все три пина на X-enable
Bildschirmfoto-HAL konfigurieren.png (3719 просмотров) <a class='original' href='./download/file.php?id=5834&mode=view' target=_blank>Загрузить оригинал (37.5 КБ)</a>
Ответить

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