Настройка тангенциального ножа в ЕМС 2
-
AndreySv75
- Новичок
- Сообщения: 9
- Зарегистрирован: 15 сен 2013, 17:36
- Репутация: 0
- Контактная информация:
Настройка тангенциального ножа в ЕМС 2
В Mach3 есть опция тангенциального ножа, то есть поворот ножа по отношению к траектории движения. Используется в раскройных станках для стекла.
Поскольку я использую EMC2, хотелось бы получить данную опцию здесь. Кто знает можно ли организовать данную опцию в ЕМС2, и если да то как? Заранее благодарен за ответ.
Поскольку я использую EMC2, хотелось бы получить данную опцию здесь. Кто знает можно ли организовать данную опцию в ЕМС2, и если да то как? Заранее благодарен за ответ.
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
настраивали такой станок...
заюзали кинематику tangentkins.c ложим файл в домашнюю папку и в терминале командуем:
sudo comp --install tangentkins.c
далее в хал файле вместо :
loadrt trivkins
пропишем:
loadrt tangentkins
setp tangentkins.auto 0
====================
но эта кинематика не на все станки подойдет ...
все из-за разворотов на 360 гр...
из минусов - не работает при ручных перемещениях...
заюзали кинематику tangentkins.c ложим файл в домашнюю папку и в терминале командуем:
sudo comp --install tangentkins.c
далее в хал файле вместо :
loadrt trivkins
пропишем:
loadrt tangentkins
setp tangentkins.auto 0
====================
но эта кинематика не на все станки подойдет ...
все из-за разворотов на 360 гр...
из минусов - не работает при ручных перемещениях...
Последний раз редактировалось nkp 15 сен 2013, 18:50, всего редактировалось 1 раз.
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
вот работа кинематики т.с. в железе:
https://www.youtube.com/watch?v=hU-u5Gpoccs
вместо ножа для настройки прикреплена "стрелка"
:
видны вышеупомянутые развороты...
(запрограммировано движение по окружности)
https://www.youtube.com/watch?v=hU-u5Gpoccs
вместо ножа для настройки прикреплена "стрелка"
(запрограммировано движение по окружности)
- NightV
- Почётный участник

- Сообщения: 6610
- Зарегистрирован: 30 дек 2011, 09:14
- Репутация: 2279
- Настоящее имя: Владимир Айрапетян
- Откуда: Israel
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
интересно, а на мой гравер по стеклу пойдет?
у меня нет ограничения на разворот
http://cnc-club.ru/forum/viewtopic.php?f=3&t=1494
http://cnc-club.ru/forum/viewtopic.php?f=3&t=1494
Всё просто! если знаешь КАК!
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
setp tangentkins.auto 0 - этот параметр стоит ноль как раз для того, чтоб обнулить ось (Home)
после переключаем его в True
не помню точно - но вроде бы включал все это автоматом в зависимости от режима емс...
что то наподобие:
loadrt not
addf not.0 servo-thread
net not_in not.0.in halui.mode.is-manual
net tkins_auto not.0.out tangentkins.auto
после переключаем его в True
не помню точно - но вроде бы включал все это автоматом в зависимости от режима емс...
что то наподобие:
loadrt not
addf not.0 servo-thread
net not_in not.0.in halui.mode.is-manual
net tkins_auto not.0.out tangentkins.auto
Последний раз редактировалось nkp 15 сен 2013, 19:08, всего редактировалось 1 раз.
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
стекло - вещь хрупкаяNightV писал(а):интересно, а на мой гравер по стеклу пойдет? у меня нет ограничения на разворот
посмотри на видео - разворот очень быстрый , как оно с "хрусталём" будет - не знаю
- NightV
- Почётный участник

- Сообщения: 6610
- Зарегистрирован: 30 дек 2011, 09:14
- Репутация: 2279
- Настоящее имя: Владимир Айрапетян
- Откуда: Israel
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
так он не связан со скоростью подачи осей? или всеже разворачивается совместно с осями?
и как он знает в как в какую сторону поедем после врезания? получается должна заглядывать "вперед программы"
и как он знает в как в какую сторону поедем после врезания? получается должна заглядывать "вперед программы"
Всё просто! если знаешь КАК!
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
кинематика и построена на вычислении тангенса скоростей x,yNightV писал(а):так он не связан со скоростью подачи осей?
опять же - см.вышеNightV писал(а):и как он знает в как в какую сторону поедем после врезания?
или я не о том?
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
тут Ник написал atan2.comp - с тем же функционалом:
это не оригинал - уже кто то поиздевался 
его допилить - тот же эффект поимеем))
Код: Выделить всё
component atan2; // sudo comp --install atan2.comp
pin in float x;
pin in float y;
pin out float a;
function _;
license "GPL";
;;
#include <rtapi_math.h>;
FUNCTION(_) {
float a1;
a1 = atan2(x,y);
if (x>0 && y>0)
{a = a1*57,295779513;}
else if (y<0 && x>0)
{a = a1*57,295779513;}
else if (x>0 && y==0)
{a = 90;}
else if (x==0 && y>0)
{a = 0;}
else if (y<0 && x==0)
{a = 180;}
else if (x<0 && y<0)
{a = 360 + a1*57,295779513;}
else if (y==0 && x<0)
{a = 270;}
else if (y>0 && x<0)
{a = 360 + a1*57,295779513;}
else if (y==0 && x==0)
{}
}его допилить - тот же эффект поимеем))
Последний раз редактировалось nkp 15 сен 2013, 19:15, всего редактировалось 1 раз.
- PKM
- Почётный участник

- Сообщения: 4263
- Зарегистрирован: 31 мар 2011, 18:11
- Репутация: 705
- Настоящее имя: Андрей
- Откуда: Украина
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
А эти кинематики учитывают время на поворот ножа при резких изменениях траектории?
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
ВОТ - в чем их и недостаток...PKM писал(а):А эти кинематики учитывают время на поворот ножа при резких изменениях траектории?
на том станке , что на видео - это прокатило...
а на других -
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
Скорее всего - нет, скорость поворота учитывает motion planner, и если он думает, то перемещает только 3 оси, про 4 он даже не будет думать... скорее всегоPKM писал(а):А эти кинематики учитывают время на поворот ножа при резких изменениях траектории?
- PKM
- Почётный участник

- Сообщения: 4263
- Зарегистрирован: 31 мар 2011, 18:11
- Репутация: 705
- Настоящее имя: Андрей
- Откуда: Украина
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
Ну а если оформить как настоящую ось? По идее должно учитывать. Хотя... для этого придется ее включать в G-код 
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
Вот-вотPKM писал(а):Хотя... для этого придется ее включать в G-код
Хотя, для меня до сих пор пока остается загадкой, как работают кинематики, для чего-то там же есть функция обратного преобразования, может, если там все грамотно прописать, то эта ось будет учавствовать в планировке перемещений...
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
она и есть "настоящая" ось...
и пид настраивали под нее...
эту кинематику начинал andy pugh , и с его слов по моему не собирается дорабатывать...
и пид настраивали под нее...
эту кинематику начинал andy pugh , и с его слов по моему не собирается дорабатывать...
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
kinematicsInverse - наскоолько я понял - задания перемещенийNick писал(а):функция обратного преобразования
kinematicsForward - обратная связь по положению зачем кинематике ОС по положению ? есть же просто scale в том же encoder например...
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
далеко не всегда scale поможет. Представь, что у нас кинематика CoreXY (http://corexy.com/theory.html). Просто так обратную связь с серв в планировщик не подать, надо ее сначала прогнать через обратные формулы, вот для этого и нужна обратная кинематика.nkp писал(а):зачем кинематике ОС по положению ? есть же просто scale в том же encoder например...
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
сейчас вот так прописал:
задал ехать Y10 - реально проехала 5
добавил:
опять же : задал ехать Y10 - реально проехала 2.5
флаги что то еще задают...
Код: Выделить всё
int kinematicsInverse(const EmcPose * pos,
double *joints,
const KINEMATICS_INVERSE_FLAGS * iflags,
KINEMATICS_FORWARD_FLAGS * fflags)
{
static double A = 0;
A = pos->tran.y / 2;
joints[0] = pos->tran.x;
joints[1] = A;
joints[2] = pos->tran.z;
joints[3] = pos->a;
joints[4] = pos->b;
joints[5] = pos->c;
joints[6] = pos->u;
joints[7] = pos->v;
joints[8] = pos->w;
return 0;добавил:
Код: Выделить всё
int kinematicsForward(const double *joints,
EmcPose * pos,
const KINEMATICS_FORWARD_FLAGS * fflags,
KINEMATICS_INVERSE_FLAGS * iflags)
{
static double A = 0;
A = joints[1] / 2;
pos->tran.x = joints[0];
pos->tran.y = A;
pos->tran.z = joints[2];
pos->a = joints[3];
pos->b = joints[4];
pos->c = joints[5];
pos->u = joints[6];
pos->v = joints[7];
pos->w = joints[8];флаги что то еще задают...
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
ничегго не понимаю, ты поменял в кинематике обратную связь от Y на joints[1] = pos->tran.y / 2; и ось стала ездить в два раза меньше?nkp писал(а):задал ехать Y10 - реально проехала 5
А как у тебя команды на привод выдаются?
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка тангенциального ножа в ЕМС 2
неее , приводов нет)))Nick писал(а):А как у тебя команды на привод выдаются?
просто в емс проверяю:
