Настройка тангенциального ножа в ЕМС 2

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
AndreySv75
Новичок
Сообщения: 9
Зарегистрирован: 15 сен 2013, 17:36
Репутация: 0
Контактная информация:

Настройка тангенциального ножа в ЕМС 2

Сообщение AndreySv75 »

В Mach3 есть опция тангенциального ножа, то есть поворот ножа по отношению к траектории движения. Используется в раскройных станках для стекла.
Поскольку я использую EMC2, хотелось бы получить данную опцию здесь. Кто знает можно ли организовать данную опцию в ЕМС2, и если да то как? Заранее благодарен за ответ.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение nkp »

настраивали такой станок...
заюзали кинематику tangentkins.c
tangentkins.c
(2.52 КБ) 1080 скачиваний
ложим файл в домашнюю папку и в терминале командуем:
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

Сообщение nkp »

вот работа кинематики т.с. в железе:
https://www.youtube.com/watch?v=hU-u5Gpoccs
вместо ножа для настройки прикреплена "стрелка" ;) :
Выделение(001).jpg (2252 просмотра) <a class='original' href='./download/file.php?id=18641&mode=view' target=_blank>Загрузить оригинал (89.46 КБ)</a>
видны вышеупомянутые развороты...
(запрограммировано движение по окружности)
Аватара пользователя
NightV
Почётный участник
Почётный участник
Сообщения: 6610
Зарегистрирован: 30 дек 2011, 09:14
Репутация: 2279
Настоящее имя: Владимир Айрапетян
Откуда: Israel
Контактная информация:

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение NightV »

интересно, а на мой гравер по стеклу пойдет? :think: у меня нет ограничения на разворот

http://cnc-club.ru/forum/viewtopic.php?f=3&t=1494
Всё просто! если знаешь КАК!
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение nkp »

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
Последний раз редактировалось nkp 15 сен 2013, 19:08, всего редактировалось 1 раз.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение nkp »

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

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение NightV »

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

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение nkp »

NightV писал(а):так он не связан со скоростью подачи осей?
кинематика и построена на вычислении тангенса скоростей x,y
NightV писал(а):и как он знает в как в какую сторону поедем после врезания?
опять же - см.выше
или я не о том? ;)
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение nkp »

тут Ник написал 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) 
            {}     
}
это не оригинал - уже кто то поиздевался :hehehe:
его допилить - тот же эффект поимеем))
Последний раз редактировалось nkp 15 сен 2013, 19:15, всего редактировалось 1 раз.
Аватара пользователя
PKM
Почётный участник
Почётный участник
Сообщения: 4263
Зарегистрирован: 31 мар 2011, 18:11
Репутация: 705
Настоящее имя: Андрей
Откуда: Украина
Контактная информация:

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение PKM »

А эти кинематики учитывают время на поворот ножа при резких изменениях траектории?
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение nkp »

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

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение Nick »

PKM писал(а):А эти кинематики учитывают время на поворот ножа при резких изменениях траектории?
Скорее всего - нет, скорость поворота учитывает motion planner, и если он думает, то перемещает только 3 оси, про 4 он даже не будет думать... скорее всего :).
Аватара пользователя
PKM
Почётный участник
Почётный участник
Сообщения: 4263
Зарегистрирован: 31 мар 2011, 18:11
Репутация: 705
Настоящее имя: Андрей
Откуда: Украина
Контактная информация:

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение PKM »

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

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение Nick »

PKM писал(а):Хотя... для этого придется ее включать в G-код
Вот-вот :).

Хотя, для меня до сих пор пока остается загадкой, как работают кинематики, для чего-то там же есть функция обратного преобразования, может, если там все грамотно прописать, то эта ось будет учавствовать в планировке перемещений...
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение nkp »

она и есть "настоящая" ось...
и пид настраивали под нее...
эту кинематику начинал andy pugh , и с его слов по моему не собирается дорабатывать...
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение nkp »

Nick писал(а):функция обратного преобразования
kinematicsInverse - наскоолько я понял - задания перемещений
kinematicsForward - обратная связь по положению зачем кинематике ОС по положению ? есть же просто scale в том же encoder например...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение Nick »

nkp писал(а):зачем кинематике ОС по положению ? есть же просто scale в том же encoder например...
далеко не всегда scale поможет. Представь, что у нас кинематика CoreXY (http://corexy.com/theory.html). Просто так обратную связь с серв в планировщик не подать, надо ее сначала прогнать через обратные формулы, вот для этого и нужна обратная кинематика.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение nkp »

сейчас вот так прописал:

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

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;
задал ехать Y10 - реально проехала 5
добавил:

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

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];
опять же : задал ехать Y10 - реально проехала 2.5
флаги что то еще задают...
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение Nick »

nkp писал(а):задал ехать Y10 - реально проехала 5
ничегго не понимаю, ты поменял в кинематике обратную связь от Y на joints[1] = pos->tran.y / 2; и ось стала ездить в два раза меньше?
А как у тебя команды на привод выдаются?
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Настройка тангенциального ножа в ЕМС 2

Сообщение nkp »

Nick писал(а):А как у тебя команды на привод выдаются?
неее , приводов нет)))
просто в емс проверяю:
Ответить

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