emcmot
-
- Кандидат
- Сообщения: 47
- Зарегистрирован: 25 июн 2013, 20:26
- Репутация: 1
- Контактная информация:
emcmot
Нужна помощь, сейчас разбираюсь с исходниками linuxcnc, наверняка уже кто нибудь это проделывал,интересует модуль emcmot который в папке emc/motion/ как он получает данные от интерпретатора в каком файле это обрабатывается, может какая документация есть по этому модулю. спасибо.
- Nick
- Мастер
- Сообщения: 22767
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1716
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: emcmot
Может nkp подскажет - он с интерпретатором возился...
А что хочешь сделать?
Там вроде четыре файла по emcmot, все на пару страничек и в основном определение констант...
А что хочешь сделать?
Там вроде четыре файла по emcmot, все на пару страничек и в основном определение констант...

-
- Кандидат
- Сообщения: 47
- Зарегистрирован: 25 июн 2013, 20:26
- Репутация: 1
- Контактная информация:
Re: emcmot
emcmot разбираю, этот модуль получает команды от интерпретатора, в нем планировщик траектории пид... на выходе только слой hal и железо. Если не ошибаюсь.
- Nick
- Мастер
- Сообщения: 22767
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1716
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: emcmot
Планировщик использует еще tp и tc из emc/kinematics - там по крайней мере считается дистанция до остановки и выдается маскимальная текущая скорость, при этом наверное еще синхронизуются оси...
-
- Кандидат
- Сообщения: 47
- Зарегистрирован: 25 июн 2013, 20:26
- Репутация: 1
- Контактная информация:
Re: emcmot
Понятно, Можете подбросить gcod какой нибудь детали, только проверенный для 3 координат?
- Nick
- Мастер
- Сообщения: 22767
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1716
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: emcmot
А какой именно детали?
-
- Кандидат
- Сообщения: 47
- Зарегистрирован: 25 июн 2013, 20:26
- Репутация: 1
- Контактная информация:
Re: emcmot

- Nick
- Мастер
- Сообщения: 22767
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1716
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: emcmot
- Вложения
-
- output.ngc
- (48.54 КБ) 861 скачивание
-
- Мастер
- Сообщения: 934
- Зарегистрирован: 23 фев 2011, 01:50
- Репутация: 32
- Контактная информация:
Re: emcmot
Работает функция emcmotController() (файл control.c) работающая в потоке реального времени. Данные берет из массива структур emcmot_joint_t. Эти структуры заталкиваются в в очередь интерпретатором в пользовательском режиме.asv-lab писал(а): как он получает данные от интерпретатора в каком файле это обрабатывается,
-
- Кандидат
- Сообщения: 47
- Зарегистрирован: 25 июн 2013, 20:26
- Репутация: 1
- Контактная информация:
Re: emcmot
понятно. буду дальше копать, если еще есть gcod киньте, этот вроде нормально работает.
http://youtu.be/BiqVjdjmccM
http://youtu.be/BiqVjdjmccM
-
- Кандидат
- Сообщения: 47
- Зарегистрирован: 25 июн 2013, 20:26
- Репутация: 1
- Контактная информация:
Re: emcmot
Еще вопросик код который выполняет круговую интерполяцию в каком файле реализован?
-
- Мастер
- Сообщения: 934
- Зарегистрирован: 23 фев 2011, 01:50
- Репутация: 32
- Контактная информация:
Re: emcmot
Класс "Interp" методы "arc_data_..." файл \rs274ngc\intep_arc.cc
-
- Мастер
- Сообщения: 8286
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1559
- Контактная информация:
Re: emcmot
а где можно посмотреть исходники ASVCNC ??asv-lab писал(а):понятно. буду дальше копать, если еще есть gcod киньте, этот вроде нормально работает. http://youtu.be/BiqVjdjmccM
-
- Кандидат
- Сообщения: 47
- Зарегистрирован: 25 июн 2013, 20:26
- Репутация: 1
- Контактная информация:
Re: emcmot
На днях выложу ссылку сброшу. Может что добавите, хотелось бы что бы для windows тоже была программка с открытыми исходниками.
-
- Кандидат
- Сообщения: 47
- Зарегистрирован: 25 июн 2013, 20:26
- Репутация: 1
- Контактная информация:
Re: emcmot
Вопросик по g02. Функция
точка ouble axis_end_point is the Z coordinate of the end of the arc. abc двигаются линейно
g01 x0 y1
g02 x1.2803 y1.5303 R-.750 z2 a10 b10 c10
Код: Выделить всё
ARC_FEED (double first_end, double second_end,
double first_axis, double second_axis, int rotation,
double axis_end_point, double a, double b, double c)
g01 x0 y1
g02 x1.2803 y1.5303 R-.750 z2 a10 b10 c10
- Nick
- Мастер
- Сообщения: 22767
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1716
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: emcmot
ммм где вопрос?
(Так и должно быть, Z тоже линейно (зависит от G17-19))
(Так и должно быть, Z тоже линейно (зависит от G17-19))
-
- Кандидат
- Сообщения: 47
- Зарегистрирован: 25 июн 2013, 20:26
- Репутация: 1
- Контактная информация:
Re: emcmot
Это и был вопрос ) все уже понял, Пока разбирался с исходником появилась сомнения что если g01 то все координаты должны перемещаться линейно а тут подумал что g02 то все должны перемещаться по радиусу. Прочитал описание g02 понял что я ошибался/
-
- Кандидат
- Сообщения: 47
- Зарегистрирован: 25 июн 2013, 20:26
- Репутация: 1
- Контактная информация:
Re: emcmot
Исходники заготовки можно взять тут https://bitbucket.org/bitplusplus, вдруг кто захочет поучаствовать 4 пользователя в команду можно бесплатно присоединить, или можно ответвление сделать, только не знаю возможно следить за изменениями в ответвленных проектах может кто знает?