Станок канатной резки камня с ЧПУ
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
Только надо еще FERROR для этой оси сделать очень большой, чтобы не выскакивали постоянно ошибки. Или axis.2.motor-pos-cmd завести сразу обратно на axis.2.motor-pos-fb
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
попробую с пид настроить...
если не выйдет - то просто компонентами ...
если не выйдет - то просто компонентами ...
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
оказывается для такого случая есть готовая кинематика на linuxcnc.org
(сегодня пробовали - пока вылетает по ferror...
pid tuning не запускается на компе станка - еще завтра поразбираемся...
(сегодня пробовали - пока вылетает по ferror...
pid tuning не запускается на компе станка - еще завтра поразбираемся...
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
Ты специально название не написал, чтобы интригу затянуть?nkp писал(а):есть готовая кинематика на linuxcnc.org
А что ты имеешь в виду под словос pid tuning?nkp писал(а):pid tuning не запускается на компе станка - еще завтра поразбираемся...
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
Вот тема...Nick писал(а):Ты специально название не написал, чтобы интригу затянуть?
Nick писал(а):А что ты имеешь в виду под словос pid tuning?
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
tangentkins - а что, нормально. Все тоже самое, только в кинематике, и даже возможность управления осью через пин auto сделали.
А работать похоже будет 1 в 1 с нашим вариантом.
Так есть же Станок - Калибровка, я думал pid tuning после этого не актуален...
А работать похоже будет 1 в 1 с нашим вариантом.
А ты про это.nkp писал(а): (для просмотра содержимого нажмите на ссылку)
Так есть же Станок - Калибровка, я думал pid tuning после этого не актуален...
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5181
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
А есть описание сего процесса? А то я запустил, увидел что можно менять параметры, нажал "Тест" - ничего не произошло...Nick писал(а):Так есть же Станок - Калибровка, я думал pid tuning после этого не актуален...
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
работает -только поворачивает по длинному пути ...Nick писал(а):tangentkins - а что, нормально. Все тоже самое, только в кинематике, и даже возможность управления осью через пин auto сделали.
А работать похоже будет 1 в 1 с нашим вариантом.
надо обязательно доработать ее до нормальной...
==========
а по поводу atan2 - так сама концепция наверно не пройдет...
в кинематике мы задание (угол поворота) подаем в планировщик и далее на пид ...
если с atan подаем сразу на пид - так конечно работать не сможет...
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
вот кстатии исходник самой кинематики tangentkins.c:
Код: Выделить всё
#include "kinematics.h" /* these decls */
#include "hal.h"
#include "rtapi_math.h"
static PmCartesian old; // This structure stores the previous position
typedef struct { hal_bit_t *pin_auto ;} tangentkins_hal_t;
tangentkins_hal_t *data;
int kinematicsForward(const double *joints,
EmcPose * pos,
const KINEMATICS_FORWARD_FLAGS * fflags,
KINEMATICS_INVERSE_FLAGS * iflags)
{
pos->tran.x = joints[0];
pos->tran.y = joints[1];
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];
return 0;
}
int kinematicsInverse(const EmcPose * pos,
double *joints,
const KINEMATICS_INVERSE_FLAGS * iflags,
KINEMATICS_FORWARD_FLAGS * fflags)
{
static double dx = 0, dy = 0, A = 0;
dy = pos->tran.y - old.y;
dx = pos->tran.x - old.x;
if (*data->pin_auto){
if (dx != 0 || dy != 0) {
A = atan2(dx, dy)*(180.0/3.141592);
}
}else{
A=pos->a;
}
joints[0] = pos->tran.x;
joints[1] = pos->tran.y;
joints[2] = pos->tran.z;
joints[3] = A;
joints[4] = pos->b;
joints[5] = pos->c;
joints[6] = pos->u;
joints[7] = pos->v;
joints[8] = pos->w;
old.x = pos->tran.x; // store previous value here to exclude kins-based movements
old.y = pos->tran.y;
return 0;
}
/* implemented for these kinematics as giving joints preference */
int kinematicsHome(EmcPose * world,
double *joint,
KINEMATICS_FORWARD_FLAGS * fflags,
KINEMATICS_INVERSE_FLAGS * iflags)
{
*fflags = 0;
*iflags = 0;
return kinematicsForward(joint, world, fflags, iflags);
}
KINEMATICS_TYPE kinematicsType()
{
return KINEMATICS_BOTH;
}
#include "rtapi.h" /* RTAPI realtime OS API */
#include "rtapi_app.h" /* RTAPI realtime module decls */
#include "hal.h"
EXPORT_SYMBOL(kinematicsType);
EXPORT_SYMBOL(kinematicsForward);
EXPORT_SYMBOL(kinematicsInverse);
MODULE_LICENSE("GPL");
int comp_id;
int rtapi_app_main(void) {
comp_id = hal_init("tangentkins");
if(comp_id > 0) {
data = hal_malloc(sizeof(tangentkins_hal_t));
if(hal_pin_bit_new("tangentkins.auto", HAL_IN, &(data->pin_auto), comp_id) < 0 ){
rtapi_print("Failed to create pin in tangentkins");
return -EINVAL;
}
hal_ready(comp_id);
return 0;
}
return comp_id;
}
void rtapi_app_exit(void) { hal_exit(comp_id); }
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
nkp писал(а):работает -только поворачивает по длинному пути ...
надо обязательно доработать ее до нормальной...
Как я и говорил, надо сделать вывод по modnkp писал(а):в кинематике мы задание (угол поворота) подаем в планировщик и далее на пид ...
если с atan подаем сразу на пид - так конечно работать не сможет...
http://ru.wikipedia.org/wiki/Mod_(%D0%B ... %B8%D1%8F)
Блин, вот поэтому я и не люблю углы, сколько я с ними намучился с gcodetools....
В общем надо сравнивать A mod 360 и (A-360) mod 360, и смотреть, что будет по модулю меньше...
или как-то так...
больше смогу сказать завтра или позже - сейчас я
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
кроме "лишних разворотов" кинематики еще такой момент - оень большая ошибка при диаметральной смене направления движения оси:
"зарегулировать" ее до разумных величин не удается (пока?)
если бы немного растянуть команду планировщику (планировщика)- тогда можно пробовать ПИДить...))))
если бы немного растянуть команду планировщику (планировщика)- тогда можно пробовать ПИДить...))))
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
вот сейчас самым актуальным стал вопрос движения ножа при ручных перемещениях(от стрелочек)...
где то,что то нужно прописать в кинематике,
а что и где????
хееелп!
где то,что то нужно прописать в кинематике,
а что и где????
хееелп!
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
Так вроде в любом режиме должно работать, главное пин tangentkins.auto в 1 поставить, т.е. наверное что-то вроде
setp tangentkins.auto 1 должно сработать...
Диаметральной смене направления? Т.е. привод долго доворачивается? Кстати, сколько по времени? И насколько это критично, ведь у тебя машина по камню, она небось должна очень не быстро резать...
setp tangentkins.auto 1 должно сработать...
Диаметральной смене направления? Т.е. привод долго доворачивается? Кстати, сколько по времени? И насколько это критично, ведь у тебя машина по камню, она небось должна очень не быстро резать...
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
а вот не работает ...Nick писал(а):Так вроде в любом режиме должно работать
работает в MDI и auto ...
пин tangentkins.auto конечно активируется - но тщетно...
вопрос остается открытым
в том то и дело - что происходит моментально (точней не могу сказать))))Nick писал(а):Т.е. привод долго доворачивается? Кстати, сколько по времени?
но сегодня выяснилось - это больше фича чем баг
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
О попробуй переключиться в режим world если такой есть.... может он джоггит только joints а не оси, и поэтому кинематика не работает...nkp писал(а):работает в MDI и auto ...
пин tangentkins.auto конечно активируется - но тщетно...
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
- это где? в кинематике?Nick писал(а):переключиться в режим world
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
Незнаю , где-нибудь в linuxcnc, там вроде в gantry-kins было такое переключение...
может ну ее эту кинематику? Тем более ты уже пробовал, что там происходит при перескоке через 0?
может ну ее эту кинематику? Тем более ты уже пробовал, что там происходит при перескоке через 0?
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
неееее!Nick писал(а):может ну ее эту кинематику?
надо в этой разобраться)))
все пилькает нормально - только вот это поправить надо
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Станок канатной резки камня с ЧПУ
Я боюсь, что в режиме manual может идпи управление непосредственно joint-ами... О кcтати посмотри в halui что на этих пинах:
halui.mode.is-joint bit out
pin showing joint by joint jog mode is on
halui.mode.is-teleop bit out
pin showing coordinated jog mode is on
halui.mode.joint bit in
pin for requesting joint by joint jog mode
halui.mode.teleop bit in
pin for requesting coordinated jog mode
halui.mode.is-joint bit out
pin showing joint by joint jog mode is on
halui.mode.is-teleop bit out
pin showing coordinated jog mode is on
halui.mode.joint bit in
pin for requesting joint by joint jog mode
halui.mode.teleop bit in
pin for requesting coordinated jog mode