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

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

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

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

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

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

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

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

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

Дополнительные настройки EMC2 (316992 просмотра) <a class='original' href='./download/file.php?id=788&sid=58e27772139d135f7d90a4aa4151e57b&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 (316992 просмотра) <a class='original' href='./download/file.php?id=789&sid=58e27772139d135f7d90a4aa4151e57b&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 »

AlexTD писал(а):А я как раз наоборот делаю. Сначала клею на скотч заготовку, а потом уже ноль устанавливаю. Мне края заготовки не очень важны... по крайней мере пока.
Это как раз тоже самое - приклеил заготовку, приехал фрезой на нужное место, сказал "тут ноль".

Или ты сначала едешь в ноль, а потом под фрезу заготовку приклеиваешь? :)
AlexTD
Кандидат
Сообщения: 86
Зарегистрирован: 27 июн 2013, 22:53
Репутация: 40
Контактная информация:

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

Сообщение AlexTD »

Nick писал(а):Или ты сначала едешь в ноль, а потом под фрезу заготовку приклеиваешь? :)
Ха-ха! Пробовал пару раз, но терпения не хватает... :yawn:
maksimysian
Новичок
Сообщения: 7
Зарегистрирован: 19 авг 2013, 19:51
Репутация: 0
Контактная информация:

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

Сообщение maksimysian »

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

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

Сообщение Nick »

Ну это, скажем у тебя два двигателя на ось X. И их драйвера подключены к пинам LPT
Step первого на 2, dir первого на 4
Step второго на 5, dir второго на 7

Тогда просто для пинов 2 и 5 выбираешь Step X и для 4 и 7 Dir X.
maksimysian
Новичок
Сообщения: 7
Зарегистрирован: 19 авг 2013, 19:51
Репутация: 0
Контактная информация:

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

Сообщение maksimysian »

у меня чегото не получается!попробую объяснить. станочек 3х осевой.движки шаговые(все одинаковые)настраиваю в stepconf XYZ дальше в настройках параллельного порта X step 2 Xdir 14 дальше второй мотор step 6 dir5 называю их Xstep 6 Xdir 5 получается в настройках по два Xstep Xdir проверяю ось крутится один мотор который Х1 и то только в одном направлении нажимаю лево крутится в право нажимаю право крутится право.что это может быть?подскажите пожалуйста !
maksimysian
Новичок
Сообщения: 7
Зарегистрирован: 19 авг 2013, 19:51
Репутация: 0
Контактная информация:

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

Сообщение maksimysian »

ура все работает спасибо!просто в при проверки оси не работает .а когда включил станок с этими настройками все работает как надо !
Аватара пользователя
Ворон226
Мастер
Сообщения: 1922
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

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

Сообщение Ворон226 »

А как вы организовали сигнал E-STOP? И сами кнопки, и программно, и как снимаете его?

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

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

Сообщение Nick »

После того, как нажал Авост, пока не скинешь его в панели, Авост не снимется. Т.е. он и так должен программно залипать :).
Аватара пользователя
Ворон226
Мастер
Сообщения: 1922
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

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

Сообщение Ворон226 »

А он не скидывается повторным нажатием "Включение станка" (halui.machine.on)?
Хочешь быть счастливым? Будь им!
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6599
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

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

Сообщение NightV »

скидывается
Всё просто! если знаешь КАК!
Аватара пользователя
Ворон226
Мастер
Сообщения: 1922
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

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

Сообщение Ворон226 »

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

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

Сообщение Nick »

А у меня не скидывается, и вообще по halui.machine.on 1 не включается после авоста, пока его не скинешь...

Вот так делал:

Код: Выделить всё

nick@ltsp:~$ halcmd setp halui.machine.on 1
nick@ltsp:~$ halcmd setp halui.estop.activate 1
nick@ltsp:~$ halcmd setp halui.estop.activate 0
nick@ltsp:~$ halcmd setp halui.machine.on 1
Аватара пользователя
Ворон226
Мастер
Сообщения: 1922
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

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

Сообщение Ворон226 »

А если так:

Код: Выделить всё

net hal_button1 halui.machine.on
net hal_button2 halui.estop.activate
Нажали первую кнопку - включили станок.
Нажали вторую - АВОСТ

Далее достаточно нажать первую кнопку и станок включится? Или что-то ещё делать? (проверить сейчас не могу - утащил комп с имитатором станка на работу)

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

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

Сообщение Nick »

Сейчас проверил.

Нет не достаточно, надо сначала нажать halui.estop.reset и потом halui.machine.on, только тогда включится.
Причем halui.machine.on надо именно отпустить и нажать, если halui.machine.on будет в 1 то просто по halui.estop.reset станок не включится - надо отпустить и нажать.
Аватара пользователя
Ворон226
Мастер
Сообщения: 1922
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

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

Сообщение Ворон226 »

Хм... Ну, допустим, отпустить-то просто (ведь кнопка без фиксации):
1. Нажимаем "ВКЛ" станок - станок включается.
2. Кнопка "ВКЛ" отпускается.
3. Кнопка "АВАРИЯ" нажимается - станок встает в АВОСТ
4. Кнопка "АВАРИЯ" отпускается.
5. Кнопка "ВКЛ" нажимается после устранения неисправности - станок включается...

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

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

Сообщение Nick »

Нет, так не сработает, надо снять авост - это отдельная кнопка.
Обычно это кнопка F1 или крайняя левая в axis. Но там она работает как кнопка с залипанием - первое нажатие "залипание (хотя похоже может быть одноразовым срабатыванием - дальше просто индикация)" второе нажатие - reset.
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6599
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

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

Сообщение NightV »

нифига, все как ворон226 сказал, после отжима кнопки АВОСТ, просто включаеш и всё. (без повторных нажатий)
у меня так на двух станках работало... чет ты у себя намутил ;)
Последний раз редактировалось NightV 01 окт 2013, 23:41, всего редактировалось 1 раз.
Всё просто! если знаешь КАК!
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

А у тебя авост на какой пин заведен?
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6599
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

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

Сообщение NightV »

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

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

Сообщение Nick »

Я делал через консоль с пинами halui и там два разных пина на постановку и сброс Авоста... Может у тебя на другие пины estop заведена кнопка?
Пришли свои последние конфиги...
Ответить

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