[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
Это незавершенный раздел, Вы можете помочь в его оформлении.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение Serg »

Она уже работает.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
ScrewDriver
Мастер
Сообщения: 1942
Зарегистрирован: 06 сен 2016, 01:44
Репутация: 498
Настоящее имя: Василий
Откуда: Москва
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение ScrewDriver »

UAVpilot писал(а):Она уже работает.
Тоесть?
Линукс просто мне говорит смени на инструмент такой-то. Отбиться по Z не дает.
Можешь популярно объяснить? Может я чего не понимаю?
Промышленная автоматика, ПЛК, приводы, SCADA системы
Мой Ютуб канал.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение Serg »

"ручная автосмена, без автоматического измерения длины" работает изначально.
ручное измерение длины при любом способе смены инструмента решается несколькими способами, один из них - софт от Версера.
Лично я пользуюсь набором подпрограммок-макросов MXXX которые постпроцессоры вставляют в нужные места. Мне так удобнее и работает на любых станках.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
verser
Мастер
Сообщения: 1875
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1275
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение verser »

Подскажите, пожалуйста :)
Можно ли как-то увеличить размер Toolbar buttons в Axis? вот этих
axis.JPG (10888 просмотров) <a class='original' href='./download/file.php?id=149780&sid=18558fb6a76b460dcc0d7174d8743bcb&mode=view' target=_blank>Загрузить оригинал (19.37 КБ)</a>
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение nkp »

когда то кнопки увеличивал:
Выделение_129.png (10878 просмотров) <a class='original' href='./download/file.php?id=149781&sid=18558fb6a76b460dcc0d7174d8743bcb&mode=view' target=_blank>Загрузить оригинал (45.78 КБ)</a>
Аватара пользователя
verser
Мастер
Сообщения: 1875
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1275
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение verser »

Смысл понятен. Спасибо.
А может у кого есть готовый axis.tcl с увеличенными toolbar в классическом стиле? :oops:
taraskin
Новичок
Сообщения: 30
Зарегистрирован: 31 мар 2018, 09:23
Репутация: 2
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение taraskin »

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

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение nkp »

taraskin писал(а):Когда-то я использовал контакт Estop , но было б лучше привязать к другой функции.
почему?
rashpel777
Новичок
Сообщения: 3
Зарегистрирован: 06 мар 2019, 19:16
Репутация: 0
Настоящее имя: макар рашпельбаум
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение rashpel777 »

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

Re: [WIKI] FAQ по EMC2 LinuxCNC

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

rashpel777 писал(а):У меня такой вопрос, можно что-то сделать в настройках LinuxCNC, чтобы круг вырезался без остановов одним махом? Если возможно, то где и как?
Покажите G-код.
А вообще - G64
Чудес не бывает. Бывают фокусы.
Аватара пользователя
evgenymcp
Мастер
Сообщения: 1418
Зарегистрирован: 23 апр 2017, 05:37
Репутация: 326
Настоящее имя: Евгений
Откуда: Абакан,Хакасия
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение evgenymcp »

Движение по окружности #1
Так же интересует решение этой проблемы.
rashpel777
Новичок
Сообщения: 3
Зарегистрирован: 06 мар 2019, 19:16
Репутация: 0
Настоящее имя: макар рашпельбаум
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение rashpel777 »

Сергей Саныч писал(а):Покажите G-код.
А вообще - G64
(Post processor: LinuxCNC plasma.scpost)
(Date: 10.03.2019)
G21 (Units: Metric)
G40 G90
F1 S1
G61
(Part: Пятка под ногу)
(Operation: Outside Offset, Layer_1, T1: Plasma, 1,5 Мьянма kerf)
G00 Z10.0000
X31.6342 Y17.9157
Z1.5000
M03
G02 X28.0172 Y17.7587 I-1.8870 J1.7300 F2200.0
X24.7408 Y25.2091 I6.8288 J7.4486
X34.5771 Y35.3122 I10.1034 J0.0032
X44.9488 Y25.5479 I0.2695 J-10.1043
G01 X44.9544 Y25.2025 F2200
G02 X34.8474 Y15.1021 I-10.1051 J0.0047 F2200.0
X26.1369 Y20.0822 I-0.0014 J10.1052
M05
G04 P0.5
G00 Z10.0000
X37.6860 Y118.2421
Z1.5000
M03
G02 X35.1256 Y115.6825 I-2.5600 J0.0003
G01 X15.3659 Y115.6850 F2200
X15.2218 Y115.6844
G03 X-0.7432 Y99.9426 I0.1294 J-16.0978 F2200.0
G01 X-0.7434 Y99.9261 F2200
X-0.7500 Y15.3634
X-0.7493 Y15.2183
G03 X14.9925 Y-0.7458 I16.0975 J0.1300 F2200.0
G01 X15.0090 Y-0.7460 F2200
X54.6278 Y-0.7500
X54.7717 Y-0.7494
G03 X70.7243 Y14.6205 I-0.1269 J16.0953 F2200.0
G01 X70.7251 Y14.6542 F2200
X70.7437 Y99.5716
X70.7430 Y99.7146
G03 X55.0012 Y115.6797 I-16.0977 J-0.1292 F2200.0
G01 X54.9848 Y115.6799 F2200
X35.1256 Y115.6825
X32.1256 Y115.6829
M05
G04 P0.5
G00 Z10.0000
X0.0000 Y0.0000
Z0.0000
M05 M30
a321
Мастер
Сообщения: 563
Зарегистрирован: 03 дек 2016, 00:30
Репутация: 65
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение a321 »

Вопрос - вот, допустим, в g-code используем функцию SIN. Очевидно, LnCNC вызывает подпрограмму, модуль, реализующую этот функционал. Я не нашел где что и как. А хотел бы найти, посмотреть, и добавить свою функцию.
Сам вопрос - где, в каком виде, хранится реализация функций вида sin?
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение Serg »

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

linuxcnc-2.7.14/src$ grep -r -e '\WSIN\W'
emc/rs274ngc/interp_read.cc:      *operation = SIN;
emc/rs274ngc/interp_execute.cc:ROUND, SIN, SQRT, TAN
emc/rs274ngc/interp_execute.cc:  case SIN:
emc/rs274ngc/interp_internal.hh:#define SIN 11
linuxcnc-2.7.14/src$
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
a321
Мастер
Сообщения: 563
Зарегистрирован: 03 дек 2016, 00:30
Репутация: 65
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение a321 »

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

find / -name interp_execute.cc
пустота
коли так, то только в исходниках? - я из пакета ставил.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение Serg »

Если нет в документации, то в исходниках. :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
nau
Новичок
Сообщения: 33
Зарегистрирован: 02 фев 2020, 11:10
Репутация: 11
Настоящее имя: Антон
Откуда: Алматы
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение nau »

Всем привет!

Подскажите, пожалуйста, исполняется программа, на фрезу что-то налипло, я хочу поставить на паузу, почистить фрезу и продолжить. Но пауза не останавливает шпиндель. А если остановить программу, и начать с нужной строки, то нужно как-то точно вернуть фрезу в нужное положение, и запустить шпиндель. Но как?
Аватара пользователя
sima8520
Почётный участник
Почётный участник
Сообщения: 4501
Зарегистрирован: 24 ноя 2016, 23:35
Репутация: 1615
Настоящее имя: Илья
Откуда: Беларусь, Гомель
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение sima8520 »

подымаешь шпиндель, чистишь все что надо, запускаешь через MDI шпиндель командой M3 S10000, где 10000 - это обороты шпинделя, выбираешь нужную строку и правой кнопкой мыши запустить отсюда
nau
Новичок
Сообщения: 33
Зарегистрирован: 02 фев 2020, 11:10
Репутация: 11
Настоящее имя: Антон
Откуда: Алматы
Контактная информация:

Re: [WIKI] FAQ по EMC2 LinuxCNC

Сообщение nau »

sima8520 писал(а): 25 дек 2020, 22:28 подымаешь шпиндель, чистишь все что надо, запускаешь через MDI шпиндель командой M3 S10000, где 10000 - это обороты шпинделя, выбираешь нужную строку и правой кнопкой мыши запустить отсюда
плюс еще нужно вернуть на прежнее положение Z. Может кнопку какую-то можно придумать?
Ответить

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