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

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

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

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

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

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

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

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

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

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

Заключение


См. также

Нахождение максимальной скорости и ускорения станка
PyVCP дополнительный интерфейс для EMC2 LinuxCNC
Аватара пользователя
passer-by
Кандидат
Сообщения: 74
Зарегистрирован: 18 мар 2012, 14:16
Репутация: 0
Контактная информация:

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

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

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

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

Сообщение Nick »

В sepconf делаются самые простые конфигурации станков на шаговиках, есть еще один "мастер" настройки pncconf - он позволяет настраивать серво оси и знает конфигурации использующие MESA. Для более сложных конфигураций нужно менять файлы hal и ini.

Обычно сначала делается "рыба" при помощи stepconf или pncconf, и потом она подгоняется под свои нужды.

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

На данный момент нет "мастеров" которые могут настроить все конфигурации, их нет потому, что гибкость настройки через ini и hal файлы гораздо выше _любого_ "мастера". Поэтому под linux очень часто приходится выполнять настройку через конфигурационные файлы. По началу это может показаться сложным, но на самом деле это один из самых удобных и сильных способов. Также упрощается поддержка, т.к. не надо говорить "нажми туда, потом туда, потом туда ...", а просто напиши вот такую строчку "..." в ini и все ;).
alik04
Кандидат
Сообщения: 66
Зарегистрирован: 17 май 2012, 13:51
Репутация: 0
Контактная информация:

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

Сообщение alik04 »

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

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

Сообщение Nick »

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

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

Сообщение alik04 »

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

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

Сообщение Nick »

А есть инструкция к контроллеру?
Меня смущает, что среди пинов на которые подается сигнал enable:
4- пин не инвертирован,
net xenable => parport.0.pin-04-out
а 5 и 17 инвертированны.
setp parport.0.pin-05-out-invert 1
setp parport.0.pin-17-out-invert 1
alik04
Кандидат
Сообщения: 66
Зарегистрирован: 17 май 2012, 13:51
Репутация: 0
Контактная информация:

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

Сообщение alik04 »

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

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

Сообщение Nick »

Значит, либо в hal файле сотри вот эти две строки:
setp parport.0.pin-05-out-invert 1
и
setp parport.0.pin-17-out-invert 1
либо в stepconf на этапе настройки пинов сними галку invert рядом с этими пинами.

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

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

Сообщение alik04 »

Сходил попробовал убрал ети галочки, задвигались все три аксы от тастатуры.
Но теперь почемуто двигаются по 8мм, потом надо отпустить кнопку и после нажатия еще 8мм.
Что теперь ему нехвотает?
И вот такая ошыбка "unexpected realtime delay: chek dmesg for details"
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

alik04 писал(а):Но теперь почемуто двигаются по 8мм, потом надо отпустить кнопку и после нажатия еще 8мм.Что теперь ему нехвотает?
Это стоит режим передвижения по 8 мм, посмотри, там на панельке должен быть выбор. Только там обычно 10, 5, 1, 0,1, 0,01 мм и непрерывный режим. В непрерывном будет ехать пока держишь кнопку.
alik04 писал(а):И вот такая ошыбка "unexpected realtime delay: chek dmesg for details"
А ты latency test запускал? Какие значения получились?
alik04
Кандидат
Сообщения: 66
Зарегистрирован: 17 май 2012, 13:51
Репутация: 0
Контактная информация:

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

Сообщение alik04 »

latency я запускал, как написано надо включить видео, я YouTube на двух страницах включил, в форуме страници листал и каждый раз разные покозания, один раз 18200 другой раз 12300.
Пробывал 19000 ставить, один раз открылся без ошибки,после следующей перезагрузки снова выдал ошибку. Также и с 13000 было.
Nick, что за понелька и где? в программе я пробовал, там ниче неменяется.
2cme
Почётный участник
Почётный участник
Сообщения: 1043
Зарегистрирован: 24 янв 2012, 13:18
Репутация: -209

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

Сообщение 2cme »

alik04 писал(а):Nick, что за понелька и где? в программе я пробовал, там ниче неменяется.
Панелька на рисунке выделена зеленым. Но пока не обнулены оси, должен двигаться вне зависимость от значения, то есть пока нажата соответствующая кнопка.
Вложения
axis.png (4969 просмотров) <a class='original' href='./download/file.php?id=5415&sid=f765e8b19b85c90f707d14e886d419cf&mode=view' target=_blank>Загрузить оригинал (13.68 КБ)</a>
Последний раз редактировалось 2cme 21 май 2012, 22:13, всего редактировалось 1 раз.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

alik04 писал(а):один раз 18200 другой раз 12300.
В stepconf надо указывать самое большое значение и лучше округлить его вверх. Т.е. минимум 20000. Кстати, сколько по времени выполнялся latency test&
alik04 писал(а):Nick, что за понелька и где?
Вот тут:
Continius - длительный режим, или выбираешь приращения.

---------
О, меня уже опередили :)
Вложения
axis jogging.png (4968 просмотров) <a class='original' href='./download/file.php?id=5416&sid=f765e8b19b85c90f707d14e886d419cf&mode=view' target=_blank>Загрузить оригинал (98.71 КБ)</a>
alik04
Кандидат
Сообщения: 66
Зарегистрирован: 17 май 2012, 13:51
Репутация: 0
Контактная информация:

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

Сообщение alik04 »

Вот там и стоит Continius .
И ещё, после того как снял галочки с 17 и 5 пинов в конфигурациях неработает "тест", только в программе можно потестиповать работу двиготелей.

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

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

Сообщение Nick »

В файле ini тыркаешь на него два раза он откроется в текстовом редакторе. Там будет секция [TRAJ] просто в нее вставляешь эту строчку и все.

Важно! Потом нельзя будет редактировать эту конфигурацию при помощи stepconf!
alik04 писал(а):И ещё, после того как снял галочки с 17 и 5 пинов в конфигурациях неработает "тест", только в программе можно потестиповать работу двиготелей.
Да, был с ней когда-то такой глюк. Хотя, возможно ты не правильно настроил пины, какой параметр ты установил в пины 17 и 5? (судя по конфигурации туда заводится один и тот же пин включения оси X, тогда при тесте другие оси не включаются, а если ты поставишь галочки, то оси будут включены пока выключена ось Х)
alik04 писал(а):Вот там и стоит Continius .
И ты нажимаешь стрелку вправо и станок едет 8мм и останавливается? Никаких ошибок при этом не появляется?
alik04
Кандидат
Сообщения: 66
Зарегистрирован: 17 май 2012, 13:51
Репутация: 0
Контактная информация:

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

Сообщение alik04 »

При нажатии стрелки на лево или на право не ошибок, но двигается только 8мм.
На пин 5- включить усилитель и на 17- включить усилитель.
Dok1.rar
(118.78 КБ) 654 скачивания
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

alik04 писал(а):На пин 5- включить усилитель и на 17- включить усилитель.
угу понятно... это глюк stepconf, а какая у тебя сейчас версия? Вроде это когда-от исправляли. Хотя это не критично.
alik04 писал(а):При нажатии стрелки на лево или на право не ошибок, но двигается только 8мм.
А я понял почему у тебя так. У тебя в настройках размер осей всего 8мм. Поэтому EMC2 и останавливается.

Если ты уже что-то менял к ini, то придется все делать в ручную, хотя не могу сказать, что это сложнее. В общем в ini в разделах [AXIS_N]
нужно настроить пределы осей
MIN_LIMIT = -0.001
MAX_LIMIT = 8.0

Какие у тебя размеры станка? И вообще, что за станок (есть описание, фотографии)?

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

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

Сообщение alik04 »

Nick, в ini я ещё ничго не менял, подскажи где эти цыфры в stepconf поставить.
Станочик с рабочим полем 450х300мм .фото поставлю попозже.
Последний раз редактировалось alik04 22 май 2012, 13:18, всего редактировалось 1 раз.
alik04
Кандидат
Сообщения: 66
Зарегистрирован: 17 май 2012, 13:51
Репутация: 0
Контактная информация:

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

Сообщение alik04 »

Вот станочик
Вложения
IMG_6658.JPG (4936 просмотров) <a class='original' href='./download/file.php?id=5422&sid=f765e8b19b85c90f707d14e886d419cf&mode=view' target=_blank>Загрузить оригинал (174.52 КБ)</a>
IMG_6659.JPG (4936 просмотров) <a class='original' href='./download/file.php?id=5423&sid=f765e8b19b85c90f707d14e886d419cf&mode=view' target=_blank>Загрузить оригинал (188.73 КБ)</a>
Последний раз редактировалось alik04 22 май 2012, 13:29, всего редактировалось 1 раз.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

alik04 писал(а):Nick, в ini я ещё ничго не менял, подскажи где эти цыфры в stepconf поставить.
На странице настройки каждой оси - Home travel и два значения. Чего ты так боишься ini - там это гораздо проще, тупо цифры меняешь и все :).
alik04 писал(а):Вот станочик
Сам делал или покупной? А что по осям стоит, винт-гайка или ШВП?

ЗЫ одиночные файлы лучше не запаковывай, особенно картинки - так они сразу на форуме будут отображаться ;).
Ответить

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