[WIKI] FAQ по EMC2 LinuxCNC

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

[WIKI] FAQ по EMC2 LinuxCNC

Сообщение Nick »

FAQ переехал в wiki: FAQ по LinuxCNC
Вы можете помочь нам в оформлении статьи. Для внесения изменений надо залогинится в вики (логин и пароль такие же, как на форуме).
Как внести изменения в статью в wiki
(для просмотра содержимого нажмите на ссылку)
Q: EMC2 выдает такую ошибку: "Unexpected realtime delay: chek dmesg for details.". Что делать?
A: Это означает, что один из интервалов задержки стал больше Base period. Нужно увеличить base period в настройках EMC2. Запустите Приложения -> EMC2 -> Latеncy Test, попробуйте нагрузить компьютер, откройте несколько окон веб-браузера, запустите фильм, поставьте копироваться большой файл, по-перемещайте окна по экрану. После всего этого смотрим в окно Latency Test и запоминаем параметр Max Jitter для Base thread (если вы используете серво двигатели, Вам понадобятся оба параметра). Запускаем Приложения -> EMC2 -> Stepconf и в окне настройки конфигурации указываем Base period Maximum Jitter.

Q: При выполнении поиска начал осей (homing) EMC2 выдает ошибку "joint limit error"
A: Наверняка Вы используете в качестве датчика начала (home) один из концевых переключателей оси. Для корректного выполнения поиска в этом случае нужно:
  • Чтобы Home Location не было равно Home Switch Location. Т.к. после процедуры поиска начала станок остановится в положении Home Location, и оно не должно вызывать срабатывания концевого датчика оси.
  • Чтобы в конфигурационном файле в разделе описания оси присутствовала строчка "HOME_IGNORE_LIMITS = YES".
Q: Как запустить станок избегая процедуру поиска начал (homing)? Возникает ошибка: "Не могу исполнить программу если не найдены начала" ("Can't run a program when not homed").
A: EMC2 отказывается выполнять программы до тех пор пока не найдены начала осей потому, что EMC2 должен точно знать в каком положении находится станок, чтобы не дать ему выехать за пределы осей. Настоятельно рекомендую установить концевики и делать поиск нулей при каждом запуске EMC2 (при наличии концевиков это делается нажатием одной клавиши). Если концевиков нет, начала оси можно выставлять вручную.

Если совсем не хочется выставлять начала, то можно в файле конфигурации в раздел [TRAJ] нужно добавить строчку: "NO_FORCE_HOMING = 1" и EMC2 не будет выдавать эту ошибку. Но в этом случае нужно быть особенно внимательным следя за работой станка, т.к. EMC2 не сможет контролировать пределы осей и появится вероятность их превышения, что может привести к поломке станка :attention:!

Q: LinuxCNC не запускается, выдает ошибку RTAI[hal]: ERROR, LOCAL APIC CONFIGURED BUT NOT AVAILABLE/ENABLED.
A: Проблема с установкой EMC2 #48
Это незавершенный раздел, Вы можете помочь в его оформлении.
Аватара пользователя
Ворон226
Мастер
Сообщения: 1923
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

Re: FAQ по EMC2 LinuxCNC

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

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

Re: FAQ по EMC2 LinuxCNC

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

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

Re: FAQ по EMC2 LinuxCNC

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

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

Re: FAQ по EMC2 LinuxCNC

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

Есть еще siggen - функциональный генератор, там частота просто задается. http://linuxcnc.org/docs/html/man/man9/siggen.9.html
Чудес не бывает. Бывают фокусы.
Аватара пользователя
Ворон226
Мастер
Сообщения: 1923
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

Re: FAQ по EMC2 LinuxCNC

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

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

Re: FAQ по EMC2 LinuxCNC

Сообщение Nick »

Да, siggen для тебя самое то.
Бери с него выход
siggen.N.clock bit out
The clock output. Bit type clock signal output at the commanded frequency.
Аватара пользователя
Ворон226
Мастер
Сообщения: 1923
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

Re: FAQ по EMC2 LinuxCNC

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

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

Re: FAQ по EMC2 LinuxCNC

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

Serg-tmn писал(а):Есть еще siggen - функциональный генератор, там частота просто задается. http://linuxcnc.org/docs/html/man/man9/siggen.9.html
Проверил. Работает. НА выходе при частотах в единицы Гц скважность равна 2. Это и нужно.

Но есть одно НО.
Если генератор "тормознуть", когда он в нуле, то он в этом нуле и остаётся, даже когда на входе 0 (генерации нет). Если же "тормознуть" в единице, то он и будет в единице.

А хочется реализовать следующую логику:
Включаю установку - запускаю CNC - фонарь не горит.
Включаю ПИТАНИЕ СТАНКА - фонарь горит.
Включаю ПУСК (ВЫПОЛНИТЬ) - фонарь моргает 1Гц.
ПАУЗА - 2Гц
АВОСТ - 4Гц

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

Re: FAQ по EMC2 LinuxCNC

Сообщение Serg »

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

Re: FAQ по EMC2 LinuxCNC

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

Похоже на то... Думал обойтись простой логикой в .hal

Но тогда придётся программировать частоту?
Хочешь быть счастливым? Будь им!
zilk
Опытный
Сообщения: 139
Зарегистрирован: 07 янв 2012, 19:05
Репутация: 1
Откуда: Украина, Харьков
Контактная информация:

Re: FAQ по EMC2 LinuxCNC

Сообщение zilk »

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

Re: FAQ по EMC2 LinuxCNC

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

Обошелся без программных триггеров и "реле времени". Два элемента ИЛИ и И решили всё дело ;)
С "фонарями" закончил. Но на следующих машинах буду использовать RGB-светодиоды и "кодировать" состояние станка ЦВЕТОМ. Это и проще в реализации, нагляднее и симпатичнее.
Хочешь быть счастливым? Будь им!
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: FAQ по EMC2 LinuxCNC

Сообщение nkp »

zilk писал(а):Так на простой логике hal это и делается - для такой задачи нужно пару компонентов oneshot и пару timedelay, дальше для электронщика не должно быть никаких проблем!
работающее решение у нас уже есть(на ладдере) - но почему бы не изучить возможность
пойти по иному пути ;)
это только расширяет познания !
Аватара пользователя
Ворон226
Мастер
Сообщения: 1923
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

Re: FAQ по EMC2 LinuxCNC

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

Прописал два порта LPT:
loadrt hal_parport cfg="0x1020 out 0x378 out "

addf parport.0.read base-thread
addf parport.1.read base-thread
addf parport.0.write base-thread
addf parport.0.reset base-thread
addf parport.1.write base-thread
addf parport.1.reset base-thread


Второй порт собираюсь использовать для управления внешними устройствами через электромагнитные пускатели (пысесосы, насосы и т.п.)

На первой плате использую
motion.digital-out-00 (bit, out) Эти пины (00, 01, 02, 03 и более, если настроены) контролируются M62-65.

А как прописать ("настроить") motion.digital-out , если их больше, чем четыре? Ведь в мануале прописано это -
"и более, если настроены"
Хочешь быть счастливым? Будь им!
zilk
Опытный
Сообщения: 139
Зарегистрирован: 07 янв 2012, 19:05
Репутация: 1
Откуда: Украина, Харьков
Контактная информация:

Re: FAQ по EMC2 LinuxCNC

Сообщение zilk »

Ворон226 писал(а):А как прописать ("настроить") motion.digital-out , если их больше, чем четыре?

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

loadrt motmod ... num_dio=[1-64]
Аватара пользователя
Ворон226
Мастер
Сообщения: 1923
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 181
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

Re: FAQ по EMC2 LinuxCNC

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

Работает! Мерси!
Хочешь быть счастливым? Будь им!
Аватара пользователя
solo
Мастер
Сообщения: 1374
Зарегистрирован: 20 окт 2011, 18:39
Репутация: 272
Настоящее имя: Юрий Соловьев
Откуда: Украина Харьков
Контактная информация:

Re: FAQ по EMC2 LinuxCNC

Сообщение solo »

Подскажите плиз
Хочу задать свой очередной глупый вопрос
Есть такой компонент "stepgen " у этого компонента есть параматры
--(FLOAT) stepgen.<chan>.maxvel – Максимальная скорость, в единицах измерения положения в секунду
--(FLOAT) stepgen.<chan>.maxaccel – Максимальная величина ускорения/торможения, в единицах измерения положения в секунду в квадрате
можно ли эти параматры превратить в пины?
Ведь тогда появится возможность оперетивно менять данные значения в этих компонентах в зависимости от потребительских третований
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: FAQ по EMC2 LinuxCNC

Сообщение Serg »

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

Re: FAQ по EMC2 LinuxCNC

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

В принципе правильнее сделать несколько конфигураций для разных целей. Ведь ОДИН станок имеет ОДНИ и те же ограничения в виде максимальных скоростей и ускорений. Если изменяется КОНСТРУКЦИЯ станка (например, навешивается тяжелая фрезерная головка взамен легкого гравёра), то правильнее загрузить конфигурацию фрезера со своими скоростями и ускорениями.
Остальное можно прописать в самой управляющей программе.
Хочешь быть счастливым? Будь им!
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: FAQ по EMC2 LinuxCNC

Сообщение nkp »

solo, думаю что так не получиться. Наверно все параметры в емс можно разделить на 2 группы: те,которые считываются при загрузке на весь сеанс,и те,которые постоянно обновляются в потоках. Вот из второй группы значения пинов и параметров.
Ответить

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