naming of axes.



Hi,

I am trying to make a SCARA robot work with emc, and I
am confused about naming the axes.

A SCARA robot has 2 rotary axes, then a prismatic
(sliding, linear) axis and then another rotary axis.

Here's my problem:

We have two coordinate systems. One is the world
co-ordinate system, in to which my robot end effector
can move along the X,Y and Z axes, and orient itself
along the A axis. Hence, I'll say COORDINATES = X Y Z
A in the  [TRAJ] section of emc.ini. and TYPE = LINEAR
in the [AXIS_O] section (because the virtual (world) X
axis is linear. In this way, I can type G01 X10 Y12
Z15 A135, and expect the robot to move and orient to
those coordinates. Note that these axes are VIRTUAL.
My robot does NOT have an X or Y axis. The task of
determining the distance to be moved along these axes
(in world view) is done by a seperate kinematics file
I am writing. Now the problem I face is that when
specifying the gearing through INPUT_SCALE, what value
should I give ? I checked some docs, and I figured
that I should put in the value of steps/mm here. But
since the value of steps/mm along the X axis depends
on a combination of the first two actual rotary axes,
I cannot decide a value of step/mm for this axis.

Hence or otherwise, I have another option:

I say that I will deal with the _real_ axes in the
emc.ini file. In this case, since the 1st 2 axes of
the robot are rotary, the 3rd axis is linear and the
4th axis is again rotary, I'll have to say something
like COORDINATES = A B Z C or something similar to
this. In the [AXIS_O] section, I'll say TYPE =
ANGULAR, since this axis rotates in reality. Then I
can say INPUT_SCALE = 4000, because I have 400
steps/deg and a gearing of 10.
But the problem with this configuration is: If I have
specified the axes as A B Z C, then how can I write
G01  X10 Y12 Z15 Z135 and expect the robot to go to
those world axes? the emc has no knowledge of these
axes, since I have not mentioned them anywhere in the
emc.ini file.

----------------

So what should I set as COORDINATES in the [TRAJ]
section? and what should be the [AXIS_0] type? LINEAR
or ANGULAR?

I have a feeling that if I make a mistake here, my
kinematics functions will not get the input they
expect. For example, the kinmaticsForward() function
expects the angular movement values of axes 1,2, and 4
and the linear movement value of axis 3 as input. If
it does not get this, it'll spew nonsense into the
output, which is supposed to be the coordinates of the
world X,Y,Z and A axis.

Can anyone help me out?

Sagar

__________________________________
Do you Yahoo!?
The New Yahoo! Search - Faster. Easier. Bingo.
http://search.yahoo.com



Date Index | Thread Index | Back to archive index | Back to Mailing List Page

Problems or questions? Contact