2017-03-02 21:47 GMT+02:00 Charles Steinkuehler:
> Thanks for the hints, it would have taken me quite a while to figure
> all that out. Now I'll start plugging in numbers and toggling between
> world and joint coordinates to see what's happening.
>
Well, I think I missed the fact that
On 3/2/2017 1:26 PM, Andrew wrote:
> What this means for genserkins: everything is defined in genser_kin_fwd.
> Tweaking it will tweak both forward and inverse kins.
>
> OK, first it uses go_link_joint_set for each joint and then
> go_link_pose_build to get the robot pose... which uses
2017-03-02 18:01 GMT+02:00 Charles Steinkuehler:
> Hmm...I see your point, but commanding an AB orientation in world
> space via gcode would then require knowing the position of the first
> joint (the base rotation of the whole arm), which is generated from
> the commanded position via
On 3/1/2017 12:09 PM, Andrew wrote:
> 2017-02-25 23:46 GMT+02:00 Charles Steinkuehler:
>
>> Is anyone else doing 5-axis machining with genserkins?
>>
>
> Not exactly machining... but I'm building a 3D printed stepper driven
> 6-axis robot arm. So I hope that I'm going to need genserkins soon.
>
2017-02-25 23:46 GMT+02:00 Charles Steinkuehler:
> Is anyone else doing 5-axis machining with genserkins?
>
Not exactly machining... but I'm building a 3D printed stepper driven
6-axis robot arm. So I hope that I'm going to need genserkins soon.
The AB behavior you describe (if I get it
The kinematics in the control have very little or nothing to do with the
code interpretation. It is only used to tie the machine components together
with the control.
The kinematics in the post processor (CAM System) have very little or
nothing to do with the control nor the kinematics in the
i think...
On 03/01/17 09:16, Charles Steinkuehler wrote:
> On 2/28/2017 5:52 PM, andy pugh wrote:
>> On 26 February 2017 at 22:46, Charles Steinkuehler
>> wrote:
>>> The A and B Axis has no
>>> dependency on the rotation of the base of the robot arm (joint-0).
>>>
>>>
Maybe I can help a little on this subject.
In 5-axis machining the 4th and 5th axes are controlled in coordinated
moves with the x, y, and z axes.
For both configurations, tilting and rotating spindle or tilting and
rotating tables, the CAM program must create the correct GCODE for all the
axes
On 1 March 2017 at 02:16, Charles Steinkuehler wrote:
>
> Perhaps a different way of asking my question:
>
> Given two types of 5-axis machine, one with A and B pivots on the
> spindle, and one with A and B pivots on the table, would identical
> gcode be expected to
The method used to generate the gcode program almost always needs to have
knowledge of the kinematics and use that knowledge to calculate the numbers
in the gcode program.
On Feb 28, 2017 8:20 PM, "Charles Steinkuehler"
wrote:
> On 2/28/2017 5:52 PM, andy pugh wrote:
>
On 2/28/2017 5:52 PM, andy pugh wrote:
> On 26 February 2017 at 22:46, Charles Steinkuehler
> wrote:
>> The A and B Axis has no
>> dependency on the rotation of the base of the robot arm (joint-0).
>>
>> Is this the expected behavior?
>
> I don't know.
>
> I did notice
On 26 February 2017 at 22:46, Charles Steinkuehler
wrote:
> The A and B Axis has no
> dependency on the rotation of the base of the robot arm (joint-0).
>
> Is this the expected behavior?
I don't know.
I did notice that the C axis value changes when you rotate the
On 2/25/2017 3:46 PM, Charles Steinkuehler wrote:
>
> Further investigation shows that the A and B coordinates are being
> applied to something relative to the end of the robot arm. Regardless
> of the XYZ position of the arm, A and B moves always do the same thing
> relative to the robot arm.
I am having some issues with genserkins running a robot arm (this is
the ST R-17 I brought with me to Wichita running LinuxCNC with
joints-axis running on Debian Wheezy with RTAI).
Coordinated moves in XYZ seem to work as expected. All the joints
working together to keep the end of the arm
andy pugh wrote:
It may be that the joint lengths in the DH parameters are slightly
wrong. It is less likely to be the stepgen scales, but that would have
a similar effect.
I checked the d-h parameters many many times and they should be correct. Also
if I don't understand why in world mode the
On 6 December 2011 12:48, Francesca Sca fancy_...@yahoo.it wrote:
I checked the d-h parameters many many times and they should be correct.
I might still be tempted to tune them. (ie, forget the science, just
make small changes and see what happens).
How far out are the distances?
Also if I
Andy pugh wrote:
I might still be tempted to tune them. (ie, forget the science, just
make small changes and see what happens).
How far out are the distances?
The distances are far5 or 6 cm more on z and 4 or 5 cm less on x and y!!
And then the movement aren't linearfor example the
Andy pugh wrote:
I think the HAL will work, I don't know if the function of that code
is correct.
If it doesn't work, then what it needs is some of the signals
inverting (scale by -1) before going in to the offset function.
I set the offset function like you have suggested me and I tried
On 5 December 2011 09:38, Francesca Sca fancy_...@yahoo.it wrote:
I set the offset function like you have suggested me and I tried every
combinations of signals (parport.0.pin-X-out-invert) but I have always 2
rotation or 2 elevation and ever 1 rotation and 1 elevation. I tried also to
set
Andy pugh wrote:
The problem is that I didn't explain properly. I was meaning that you
might need to pass one or both the position signals though a HAL
scale function with a value of -1 to get the required effect (this
means that the offset becomes subtract rather than add)
Andy pugh wrote:
How I should write the commands and then link to the function
offset?
Just like any other HAL function, loadrt / addf / net.
http://www.linuxcnc.org/docview/html/hal_basic_hal.html
ok I tried with these lines for see what happen:
loadrt scale count=1
loadrt offset count=2
On 5 December 2011 13:51, Francesca Sca fancy_...@yahoo.it wrote:
add scale.0 servo-thread
addf
net elevation axis.4.motor-pos-cmd = scale.0.in
net scal scale.0.out = offset.0.in offset.1.offset
That has the same effect as inverting axis.4. I think you need to
break the symmetry, so
net
You might need two scale functions, then, combined with inverting the
stepper directions you have 16 combinations to play with. One of them
ought to work :-)
I have changed the command how you suggest me and I have got what I wanted with
the first combination!! I'm very lucky!!! :p
I would
On 5 December 2011 14:34, Francesca Sca fancy_...@yahoo.it wrote:
I would like to ask you some help with the my last problem. When I use the
world mode (inverse kinematics) my robot isn't accurate. For example if I
write G01 z100, the robot doesn't move 100mm on z but every time more mm. The
Andy pugh wrote:
I think that needs a custom HAL component, using comp.
Part of the problem is that you need to get the feedback back the other way.
It is just possible that you might be able to do it all with two
offset functions:
http://www.linuxcnc.org/docview/html/man/man9/offset.9.html
On 3 December 2011 12:40, Francesca Sca fancy_...@yahoo.it wrote:
loadrt offset count=2
So, I should just add these command to my file .hal? Right? Or I should
compilate a particular module?
That is something to try in the HAL file.
It sounds like you are not 100% familiar with HAL yet, and
2011/12/3 Francesca Sca fancy_...@yahoo.it:
Or:
Motor.4-cmd = joint.4-cmd + joint.5-cmd
Motor.5-cmd = joint.4-cmd - joint.5-cmd
To get correct feedback value, use last 2 equations and derive
feedback positions:
joint.4-fb = (motor.4-fb + motor.5-fb) / 2
joint.5-fb = (motor.4-fb - motor.5-fb) /
On 3 December 2011 21:39, Viesturs Lācis viesturs.la...@gmail.com wrote:
With all due respect to Andy, I did not have time to go through his
suggested solution in HAL. AFAIK he knows HAL very well, so that
solution should work well.
I think the HAL will work, I don't know if the function of
2011/12/1 Francesca Sca fancy_...@yahoo.it:
Viesturs wrote:
It is more than just simple: put 2 stepgens in the receiving end of signal.
net J0pos-cmd axis.0.motor-pos-cmd = stepgen.0.position-cmd
stepgen.1.position-cmd
Ok, I can do in this way, But I should change something also
to
On 2 December 2011 10:16, Francesca Sca fancy_...@yahoo.it wrote:
I don't konw. I said that because the combination of two motors should give
the rotation of wirst:
Do you have a picture/diagram? I can imagine designs where two motors
in parallel drive a wrist joint, in which case you do not
Andy pugh wrote:
Do you have a picture/diagram? I can imagine designs where two motors
in parallel drive a wrist joint, in which case you do not have a
serial kinematics, but a part-serial, part-parallel one.
http://mecatronicaeajm.blogspot.com/2010_05_01_archive.html
For the roll of the
On 2 December 2011 11:21, Francesca Sca fancy_...@yahoo.it wrote:
http://mecatronicaeajm.blogspot.com/2010_05_01_archive.html
For the roll of the wirst, the two side gears must move in opposite direction
and this is realized by the moviment of two motors. For the pitch just the
moviment of
Hmm, yes. I see the problem.
It's quite a neat mechanism, you turn both gears the same direction
for up-down and in different directions for rotate.
The solution is probably to abstract the two movements into basic
angles as far as the DH parameters go, so that you have an elevation
and a
On 2 December 2011 13:52, Francesca Sca fancy_...@yahoo.it wrote:
Hmm...I don't understand very well what this means. You suggest me to create
an HAL component or some maths in HAL to pass the Joints pos values
(calculated by genserkins?) to stepgen 4 and 5. Right?
Yes. Genserkins rather
Andy pugh wrote:
It isn't any harder than other things you have already done. The first
thing to work out is how the two stepgen positions correlate to wrist
positions. You can figure that out by jogging in joint mode while
looking at the stepgen-pos-cmd pins in Machine-Show HAL config (use
the
On 2 December 2011 16:33, Francesca Sca fancy_...@yahoo.it wrote:
When I looking at stepgen-pos-cmd pins in Show HAL config, I see only a
series of numbers.
Yes. What did you expect to see?
So I can link each stepgen to only one step and one direction pin.
No, you can link each stepgen
Andy pugh wrote:
I still think it seems a shame not to use all the degrees of freedom though.
Infact I don't want loose a DOF. I would like to find a solution for have in
the joint mode both the rotation of the wirst and the up and down, setting in
the right way stepgen and pins. There are
On 2 December 2011 17:35, Francesca Sca fancy_...@yahoo.it wrote:
Infact I don't want loose a DOF. I would like to find a solution for have in
the joint mode both the rotation of the wirst and the up and down, setting
in the right way stepgen and pins. There are this solution? Or I should
2011/12/2 andy pugh bodge...@gmail.com:
On 2 December 2011 17:35, Francesca Sca fancy_...@yahoo.it wrote:
Infact I don't want loose a DOF. I would like to find a solution for have in
the joint mode both the rotation of the wirst and the up and down, setting
in the right way stepgen and
Andy pugh wrote:
What I was suggesting was adding:
world-u = joint[6];
world-v = joint[7];
world-w = joint[8];
In the forward kins, and
joint[6] = world-u;
joint[7] = world-v;
joint[8] = world-w;
In the inverse kins. and then controlling the gripper with U, V or W
in the G-code and linking
On 1 December 2011 14:58, Francesca Sca fancy_...@yahoo.it wrote:
I tried to do how you have suggest me but when i recompiled genserkins.c many
errors appear!
What errors?
I have another problem with axis and joints. In the puma configuration the
wirst can rotate and go up and down. Two
Andy pugh wrote:
What errors?
the same error of this user
http://www.mail-archive.com/emc-developers@lists.sourceforge.net/msg03964.html
A, B and C control the angle of the end-effector, you don't have an A
motor, you have joint motors with numerical indices. (joint.7 for
example)
On 1 December 2011 15:33, Francesca Sca fancy_...@yahoo.it wrote:
the same error of this user
http://www.mail-archive.com/emc-developers@lists.sourceforge.net/msg03964.html
I take it that the changes don't work? Those are all warnings, and the
new version of the kensrkins module is created and
Andy pugh wrote:
Possibly a bit of both. The joints are numbered from the base to the
tip, in the physical sequence of the robot. However, you can pass the
joint-pos-cmd value in HAL to any stepgen or PWM that you want to,
though that is an easy route to confusion.
You can explain me better
On 1 December 2011 16:59, Francesca Sca fancy_...@yahoo.it wrote:
You can explain me better this? To the rotation of wirst should corrispond to
the moviment of 2 stepper motor. This doesn't create problem with the inverse
kinematics of genserkins?
As long as it is a true serial kinematics,
2011/12/1 Francesca Sca fancy_...@yahoo.it:
Andy pugh wrote:
What errors?
the same error of this user
http://www.mail-archive.com/emc-developers@lists.sourceforge.net/msg03964.html
It turned out that genserkins was too complicated for comp, so that
is why it is complaining about these
Andy Pugh wrote:
However, you are more of an expert than me on Genserkins, you are
actually using it...
I am not so expert
Possibly a bit of both. The joints are numbered from the base to the
tip, in the physical sequence of the robot. However, you can pass the
joint-pos-cmd value in HAL
2011/12/1 Francesca Sca fancy_...@yahoo.it:
How I can pass a joint-pos-cmd value to stepgen and so to two different
motors?
It is more than just simple: put 2 stepgens in the receiving end of signal.
net J0pos-cmd axis.0.motor-pos-cmd = stepgen.0.position-cmd
stepgen.1.position-cmd
Viesturs
Viesturs wrote:
It is more than just simple: put 2 stepgens in the receiving end of signal.
net J0pos-cmd axis.0.motor-pos-cmd = stepgen.0.position-cmd
stepgen.1.position-cmd
Ok, I can do in this way, But I should change something also to stepgen.0.step
or stepgen.0.dir?
2011/12/1 Francesca Sca fancy_...@yahoo.it:
Viesturs wrote:
It is more than just simple: put 2 stepgens in the receiving end of signal.
net J0pos-cmd axis.0.motor-pos-cmd = stepgen.0.position-cmd
stepgen.1.position-cmd
Ok, I can do in this way, But I should change something also
to
Andy pugh wrote:
I think that the easiest solution might be to use M67 to send position
commands out of the G-code to a HAL pin, and link that direct to a
stepgen in HAL.
I have the version 2.4.6. This could be a problem with that command? However
the command is
M67 E Q . You can me explain
2011/11/18 Francesca Sca fancy_...@yahoo.it:
I have the version 2.4.6. This could be a problem with that command? However
the command is
M67 E Q . You can me explain better what are E and Q?
http://www.linuxcnc.org/docview/html/gcode_main.html#sec:M67-Analog-Output
You mean that for
On 18 November 2011 10:51, Francesca Sca fancy_...@yahoo.it wrote:
I think that the easiest solution might be to use M67 to send position
commands out of the G-code to a HAL pin, and link that direct to a
stepgen in HAL.
I have the version 2.4.6. This could be a problem with that command?
Yes,
2011/11/16 Francesca Sca fancy_...@yahoo.it:
Andrew wrote:
If you want to completely control the fingers angle, you can assign another
axis for them. It might be W if you already have XYZABC.
I guess, you should add the axis to your HAL file and genserkins. It
requires no kinematic
Viesturs wrote:
Genserkins will treat C as a rotary axis. It is binded into all those
matrix conversions, jacobian functions and other stuff that I do not
fully understand.
IMHO, if You want to control the gripper, it should be anything but XYZABC.
I agree with Andrew that adding U, V or W might
2011/11/17 Francesca Sca fancy_...@yahoo.it:
Viesturs wrote:
Genserkins will treat C as a rotary axis. It is binded into all those
matrix conversions, jacobian functions and other stuff that I do not
fully understand.
IMHO, if You want to control the gripper, it should be anything but XYZABC.
I
Viesturs wrote:
Yes, that is correct. Genserkins does calcs for 6 joints. If the
actual robot has fewer, then dummy joints need to be defined to make
up 6 joints for genserkins.
How I can make an axis dummy? for example the C one?
If You need some extra joint, then it has to be added
2011/11/17 Francesca Sca fancy_...@yahoo.it:
Viesturs wrote:
Yes, that is correct. Genserkins does calcs for 6 joints. If the
actual robot has fewer, then dummy joints need to be defined to make
up 6 joints for genserkins.
How I can make an axis dummy? for example the C one?
I think -
Viesturs wrote:
Then there is very nice way to solve it:
Use mux2 and limit3 components:
Mux2.sel pin should be the open/close command (can be driven from
g-code, if linked to spindle or coolant on/off HAL pins), mux2.in0 and
mux2.in1 should be stepgen positions, when gripper is closed and open.
On 17 November 2011 09:59, Francesca Sca fancy_...@yahoo.it wrote:
Yes, that is correct. Genserkins does calcs for 6 joints. If the
actual robot has fewer, then dummy joints need to be defined to make
up 6 joints for genserkins.
How I can make an axis dummy? for example the C one?
This is one
2011/11/17 Francesca Sca fancy_...@yahoo.it:
Viesturs wrote:
Then there is very nice way to solve it:
Use mux2 and limit3 components:
Mux2.sel pin should be the open/close command (can be driven from
g-code, if linked to spindle or coolant on/off HAL pins), mux2.in0 and
mux2.in1 should be
I solved the problem with the world mode when I'm using genserkins module. The
main problems were the latency of my computer and some home setting wrong. But
now I have another problem. I have set the D-H parameters of my robot but
unlike Puma my robot has a hand and a stepper motor that
2011/11/16 Francesca Sca fancy_...@yahoo.it
I solved the problem with the world mode when I'm using genserkins module.
The main problems were the latency of my computer and some home setting
wrong. But now I have another problem. I have set the D-H parameters of my
robot but unlike Puma my
Andrew wrote:
If you want to completely control the fingers angle, you can assign another
axis for them. It might be W if you already have XYZABC.
I guess, you should add the axis to your HAL file and genserkins. It
requires no kinematic transformation, just add the direct
connection.
My
Viesturs Lacis wrote:
Hello, Franscesca!
I have a question about genserkins that is unrelated to Your problem:
The thing is that I tried to add also linear joints in it, but it
seems that it is not working correctly.
Please let me know, if You have a chance and spare time to test it -
either in
On 9 November 2011 09:44, Francesca Sca fancy_...@yahoo.it wrote:
I don't find the parameter genserkin.max-iterations in Hal Config.
It should be under parameters is that where you looked?
If I put this line setp ganserkin.max-iterations 100 in hal file, Emc2
gives an error because It isn't
are there any quite simple objective premises that form a basis for evaluating
statements?
--- On Wed, 11/9/11, andy pugh bodge...@gmail.com wrote:
From: andy pugh bodge...@gmail.com
Subject: Re: [Emc-users] problem with genserkins
To: Francesca Sca fancy_...@yahoo.it, Enhanced Machine
andy pugh wrote:
ERR kI - compute_jinv (joints: %f %f %f %f %f %f), (iterations=0)
Looking at the source-code that error indicates that the inversion of
the matrix has failed.
It might mean that your DH parameters are in some way
inconsistent, or
possibly just that the motor position is
On 8 November 2011 09:44, Francesca Sca fancy_...@yahoo.it wrote:
could be mean that I didn't set the number of iterations that were used to
compute the inverse kinematics. The genserkins module request a pin for this.
It is correct? How I can set this?
It looks like a parameter is created
andy pugh wrote:
Odd.
Seb tried the 560 config in a Sim version and got a number of errors
but none in a realtime installation. This is odd, as things are
expected to work just the same.
Was this a fresh install from the LiveCD?
My LiveCD is the version 2.4.3. I tried to run EMC2 from LiveCd
On Oct 7, 2011, at 09:35 , Francesca Sca wrote:
andy pugh wrote:
Odd.
Seb tried the 560 config in a Sim version and got a number of errors
but none in a realtime installation. This is odd, as things are
expected to work just the same.
Was this a fresh install from the LiveCD?
My
andy pugh wrote:
I tried the puma560 config and it appeared to work for me.
Are you running in a sim or a realtime installation? What version of EMC2?
I have a realtime installation and the version of EMC2 is 2.4.6
--
On 6 October 2011 19:02, Francesca Sca fancy_...@yahoo.it wrote:
I tried the puma560 config and it appeared to work for me.
Are you running in a sim or a realtime installation? What version of EMC2?
I have a realtime installation and the version of EMC2 is 2.4.6
Odd.
Seb tried the 560 config
andy pugh wrote:
Looking at the source-code that error indicates that the inversion of
the matrix has failed.
It might mean that your DH parameters are in some way inconsistent, or
possibly just that the motor position is ambiguous.
Is that the actual error message? All those %f entries should
On 5 October 2011 10:59, Francesca Sca fancy_...@yahoo.it wrote:
I don't know if this is the actual error. I have the same problem also with
puma560 configuration that uses genserkins! In puma example the d-h
parameters are correct then I don't think that the parameters are the
problem.
Hi Emc users,
I have a 6dof robot and I would like to use genserkins module for the
kinematics of my robot. I set up the D-H parameters but the robot doesn't work
in world mode. Also the puma 560 configuration (that uses genserkins module)
doesn't work while I have no problem with puma
On 3 October 2011 10:00, Francesca Sca fancy_...@yahoo.it wrote:
ERR kI - compute_jinv (joints: %f %f %f %f %f %f), (iterations=0)
Looking at the source-code that error indicates that the inversion of
the matrix has failed.
It might mean that your DH parameters are in some way inconsistent, or
77 matches
Mail list logo