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

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

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

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

Заключение


См. также

Нахождение максимальной скорости и ускорения станка
PyVCP дополнительный интерфейс для EMC2 LinuxCNC
столяр
Новичок
Сообщения: 27
Зарегистрирован: 09 ноя 2015, 20:27
Репутация: 0
Настоящее имя: Елфимов Валерий Юрьевич
Контактная информация:

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

Сообщение столяр »

Здравствуйте. Я пытался запустить программу цнц 2.5.0 но у меня всё время выдает ошибку - программа выходит за максимум оси Z. в настройках устанавливал без концевых выключателей и датчиков, устанавливал с ними, ставил инверсию, но это ничего не дало. На экране (вид Х) переходы выше красной линии. Как опустить деталь, чтобы всё умещалось в параметры рабочего стола. Рабочий стол Х 0-1950мм, Y 0-400 мм, Z -75-0 мм. Заготовка 550х350х25мм. Устанавливаю 0 на все оси, включаю, в правом нижнем углу появляется надпись Linear move on line 9 would exceed joint 2*s positive limit. Как мне это исправить? Кнопка "игнорировать пределы" отсутствует.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

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

Сообщение nkp »

столяр писал(а):Как мне это исправить?
выложи .ini файл сюда (возможно неверные настройки)
столяр
Новичок
Сообщения: 27
Зарегистрирован: 09 ноя 2015, 20:27
Репутация: 0
Настоящее имя: Елфимов Валерий Юрьевич
Контактная информация:

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

Сообщение столяр »

не получается этот файл скопировать или отправить на юсб-флешку. У меня линукс не подключен к интернету.придется так переписывать. нужно всё или что-то конкретное в этом файле?
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

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

Сообщение nkp »

какие значения здесь?
#+ Third axis
[AXIS_2]

MIN_LIMIT =
MAX_LIMIT =
столяр
Новичок
Сообщения: 27
Зарегистрирован: 09 ноя 2015, 20:27
Репутация: 0
Настоящее имя: Елфимов Валерий Юрьевич
Контактная информация:

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

Сообщение столяр »

min_limit= -75.0 max_limit= 0.001
столяр
Новичок
Сообщения: 27
Зарегистрирован: 09 ноя 2015, 20:27
Репутация: 0
Настоящее имя: Елфимов Валерий Юрьевич
Контактная информация:

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

Сообщение столяр »

здравствуйте все. я не могу понять, почему деталь располагается на экране программы в верху рабочей области, хотя по идее должна быть внизу. в итоге безопасные переходы инструмента оказываются выше верхней границы по оси Z . как сделать чтобы деталь располагалась внизу?
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

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

Сообщение Сергей Саныч »

столяр писал(а):как сделать чтобы деталь располагалась внизу?
1. Подвести конец фрезы к поверхности заготовки, если ноль Z предполагается на ней.
2. Нажать "Задать отступ", ввести 0.
3. Перезагрузить УП.

Если не получается, выложите сюда УП.
Чудес не бывает. Бывают фокусы.
столяр
Новичок
Сообщения: 27
Зарегистрирован: 09 ноя 2015, 20:27
Репутация: 0
Настоящее имя: Елфимов Валерий Юрьевич
Контактная информация:

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

Сообщение столяр »

Здравствуйте. Сделал как вы подсказали. Запустился только после того как изменил конфигурацию - отключил все датчики . С датчиками и концевиками работать не желает. Всё время выдает программа выходит за максимум оси зет, требует выставить начало всех осей, при этом ось зет уходит в верх
Последний раз редактировалось столяр 30 ноя 2015, 20:58, всего редактировалось 1 раз.
столяр
Новичок
Сообщения: 27
Зарегистрирован: 09 ноя 2015, 20:27
Репутация: 0
Настоящее имя: Елфимов Валерий Юрьевич
Контактная информация:

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

Сообщение столяр »

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

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

Сообщение Nick »

столяр писал(а):rtai
RTAI - the RealTime Application Interface for Linux
столяр
Новичок
Сообщения: 27
Зарегистрирован: 09 ноя 2015, 20:27
Репутация: 0
Настоящее имя: Елфимов Валерий Юрьевич
Контактная информация:

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

Сообщение столяр »

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

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

Сообщение Nick »

Для станка хорошо. При загрузке пишется условно версия ядра. В общем это ядро с поддержкой процессов реального времени.
столяр
Новичок
Сообщения: 27
Зарегистрирован: 09 ноя 2015, 20:27
Репутация: 0
Настоящее имя: Елфимов Валерий Юрьевич
Контактная информация:

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

Сообщение столяр »

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

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

Сообщение Nick »

столяр писал(а):правда ось зет работает немного не в ту сторону но это поправимо.
поменяй знак SCALE.
столяр
Новичок
Сообщения: 27
Зарегистрирован: 09 ноя 2015, 20:27
Репутация: 0
Настоящее имя: Елфимов Валерий Юрьевич
Контактная информация:

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

Сообщение столяр »

Вопрос на засыпку имеет ли смысл обновлять до EMC2. В пакетах нашел емс2 но он не распаковался. Объяснение было на английском, так что не знаю почему.
столяр
Новичок
Сообщения: 27
Зарегистрирован: 09 ноя 2015, 20:27
Репутация: 0
Настоящее имя: Елфимов Валерий Юрьевич
Контактная информация:

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

Сообщение столяр »

поменял знак был + стал -. В итоге началась старая песня о главном ось зет выходит за максимум. выставлял ось на 0 конус на экране двигался вниз к детали нажимаю выставить 0 конус прыгает обратно в верх и всё пипец опять ось зет за максимум выходит. я в файле ини всё перепробовал но или ось за минимум выходит или за максимум или и то и другое. вот файл оси зет: typ=linear home= 0.0 max_velocety=19 max_acceleration= 100 stepgen_maxaccel=125.0 scale= -853.3333333 ferror=1 min_ferror= .25 min_limit=-75 max_limit=0 home_offset= 0.0 где у меня ошибка?
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

столяр писал(а): В итоге началась старая песня о главном ось зет выходит за максимум.
Когда выходит? При поиске нуля?
Ноль в какую сторону надо искать, в + или в -?
столяр
Новичок
Сообщения: 27
Зарегистрирован: 09 ноя 2015, 20:27
Репутация: 0
Настоящее имя: Елфимов Валерий Юрьевич
Контактная информация:

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

Сообщение столяр »

Nick агромаднейшее тебе СПАСИБО за эти вопросы. Я понял свою ошибку! Я делал всё правильно кроме одного - очерёдность выполнения действий. я сначала опускал ось зет до заготовки , потом нажимал найти начало оси и сразу нажимал задать отступ. А сейчас сначала поднимаю ось до упора в верх, нажимаю начало оси, опускаю вниз до заготовки и нажимаю задать отступ. И всё заработало так как и должно работать. Исчё раз спасибо тебе за помощь.
столяр
Новичок
Сообщения: 27
Зарегистрирован: 09 ноя 2015, 20:27
Репутация: 0
Настоящее имя: Елфимов Валерий Юрьевич
Контактная информация:

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

Сообщение столяр »

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

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

Сообщение Nick »

Или открыть конфиг в программе настройки (там на первом экране есть выбор).
Или в ini найти [AXIZ_2]
и там все, что связано с max velocity пропорционально увелиить.
Ответить

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