about scara joint 3 issue ...

More
14 Jul 2016 08:08 #77430 by bkt
in this old post talk about "8" trajectory of my scara robot .....
This is solved by right conf of servo drive and ini file because too hight vel and acc not permit the right trajectory .... but another issue was overshadowed ... joint 3 / C axis ...

If write my scarakins in these way:
int kinematicsForward(const double * joint,
                      EmcPose * world,
                      const KINEMATICS_FORWARD_FLAGS * fflags,
                      KINEMATICS_INVERSE_FLAGS * iflags)
{
    double a0, a1, a3;
    double x, y, z, c;

/* convert joint angles to radians for sin() and cos() */

    a0 = joint[0] * ( PM_PI / 180 );
    a1 = joint[1] * ( PM_PI / 180 );
    a3 = joint[3] * ( PM_PI / 180 );
/* convert angles into world coords */

    a1 = a1 + a0;
    a3 = a3 + a1;

    x = D2*cos(a0) + D4*cos(a1) + D6*cos(a3);
    y = D2*sin(a0) + D4*sin(a1) + D6*sin(a3);
    z = D1 + D3 - joint[2] - D5;
    /*c = a3;*/ /*(my kins without c=a3; .... standard kins with c=a3;)*/
	
    *iflags = 0;
    if (joint[1] < 90)
	*iflags = 1;
	
    world->tran.x = x;
    world->tran.y = y;
    world->tran.z = z;
    world->c = c * 180 / PM_PI;

and "adjust" C axis in hal file all go right .... if use standards kins c axis perform a little non desired moving when when I do a translation only on the x and y axes .... should not perform any rotation does not happen that rotates a while and then return to his post at the end of the translation .... I mean when I say no rotation relative rotation of course not absolute ... the c-axis during travel must move but should firmly maintain the value set by reasoning in terms of TeleOp mode on . ....

If use my kins and adjust c axis in hal file all go right ...

someone have some ideas?

regards
giorgio

Please Log in or Create an account to join the conversation.

More
18 Jul 2016 14:27 #77596 by andypugh
Are you saying that your modified kins file works properly or not?

If your robot does not use SCARA mechanics then SCARA kinematics won't work.

Please Log in or Create an account to join the conversation.

More
26 Jul 2016 17:09 #78051 by bkt
Replied by bkt on topic about scara joint 3 issue ...
not properly work ....





This is not scara mechanics?? :ohmy: :ohmy: :ohmy:
Why?
const int yes_is_scara = 0;
const int no_isnt_scara = 1;
...
...
case  yes_is_scara:
the joint3 has a strange fluctuation of 2-6 degrees during the translation of only X and Y axes in TeleOp .... while it should look completely still than Cartesian system ...;
break;
case no_isnt_scara:
ooopss .... 
break;
default:
 break;

:lol: :lol: :lol:


I do not understand why it can not be a SCARA configuration ...

Regards
Giorgio
Attachments:

Please Log in or Create an account to join the conversation.

More
27 Jul 2016 01:12 #78058 by andypugh

I do not understand why it can not be a SCARA configuration ...


Unless I am getting confused, you said that the C-axis was constrained by belts to not rotate when the arms rotate. That is not the case with a SCARA robot. So SCARA kins won't work. You need a simpler kins where the C-axis is independent of the arm angles.

Please Log in or Create an account to join the conversation.

More
05 Aug 2016 11:25 #78384 by bkt
Replied by bkt on topic about scara joint 3 issue ...
quiet , it is easier for me either I misspoke .

I meant that the C axis I do not move with the LCNC commands (#100 G61 C35 F15000 ...in ncg program for example ... no axis C command) but during rotation of joint0 and joint1 ... when LCNC not command axis C.... axis Cstill rotates (a little bit) .. .. I think to compensate for something that I do not understand ... is not a movement due to mechanical bad ..... it is a compensation that does LCNC but do not know why .....

regards
giorgio

Please Log in or Create an account to join the conversation.

More
05 Aug 2016 19:39 #78395 by andypugh
scarakins does not know about the belts that keep _your_ C-axis aligned when the other joints move.
So,scarakins is trying to do the job that the belts do, so you get a double correction.

You will need to stop it doing that.

This is what I mean when I say that your robot isn't a SCARA robot, it is a modified-SCARA robot on will need modified scarakins.
The following user(s) said Thank You: bkt

Please Log in or Create an account to join the conversation.

More
24 Aug 2016 17:12 #79364 by bkt
Replied by bkt on topic about scara joint 3 issue ...
so scarakins is designed for "direct drive" motion ... You must excuse me much ... I had not thought ... But of course what you say makes a lot of sense .... I'll try to change the kins properly .

regards
Giorgio

Please Log in or Create an account to join the conversation.

More
01 Sep 2016 17:11 #79850 by bkt
Replied by bkt on topic about scara joint 3 issue ...
@andy-pugh ... sorry I read today your past answer ... and I realize maybe I explained bad .... the C axis is not held in place by belt ... but it is driven by a servomotor and connected to the servomotor through belt + pulleys ..... so I think this is all right a case of kinematic scara ... the only difference is that the Z axis is not on end-effector but before the joint 0 .... so ok pulleys and belts have their backlash and their elasticity .... but it is this that causes the movement of the axis C when not required ?

Regards
Giorgio

Please Log in or Create an account to join the conversation.

More
01 Sep 2016 20:11 #79870 by andypugh
Doo you have a picture? Where is the motor?

I think you might have a system that is cleverly designed so that movement of the first two joints does not result in rotation of the third.
Scarakins assumes that rotation of the first two joints _does_ result in rotation of the end-effector.
The following user(s) said Thank You: bkt

Please Log in or Create an account to join the conversation.

More
02 Sep 2016 08:11 #79891 by bkt
Replied by bkt on topic about scara joint 3 issue ...

Doo you have a picture? Where is the motor?
Scarakins assumes that rotation of the first two joints _does_ result in rotation of the end-effector.


this is my case ... my world is referred to 3d space when move in x-y plane C axis in absolute quote must rotate ... but in relative quote ... It can only rotate if the G code I wrote something like "G1 F5000 C32" .... obviusly if I wrote "G1 F5000 X500 Y500" C axis must rotate for realize a "relative" 0 rotation of end effector ... ... In my case the C axis makes a small rotation at the beginning of the trajectory and then return to the correct quote at the end of trajectory....... I'm explain myself better ?

moreover I had the same problem with another machine .... with belt drive .... this one machine , however, has the gear drive ... both were made here in our workshop .

regards
Giorgio

Please Log in or Create an account to join the conversation.

Time to create page: 0.202 seconds
Powered by Kunena Forum