G-code and driving robots.
20 Aug 2019 15:08 #142607
by Roiki
Replied by Roiki on topic G-code and driving robots.
I don't have a way to generate tcp gcode for the robot, ros does the simulations now and I only need a way to inject those values into linuxcnc(and capture into a file). ROS is the "cam" software in this case except it can be used to drive the robot directly. You can't achieve the same kind of control with linuxcnc alone. Nor can you integrate machine vision or obstacle avoidance etc into linuxcnc.
Thanks, I'll take a look at that.
Thanks, I'll take a look at that.
Please Log in or Create an account to join the conversation.
16 Sep 2019 19:34 #145338
by jaxonusa
This is exactly what I would like to do. Where can I read about it?
Replied by jaxonusa on topic G-code and driving robots.
LinuxCNC can work very well with what you are calling "vector control", so I am wondering why you are not following that approach?
This is exactly what I would like to do. Where can I read about it?
Please Log in or Create an account to join the conversation.
16 Sep 2019 22:37 #145344
by andypugh
Replied by andypugh on topic G-code and driving robots.
linuxcnc.org/docs/2.8/html/motion/5-axis-kinematics.html
(Though there is a lot of maths that you don't need to understand to use the kinematics modules)
Also:
linuxcnc.org/docs/2.8/html/man/man9/kins.9.html
And:
linuxcnc.org/docs/2.8/html/motion/kinematics.html
(Though there is a lot of maths that you don't need to understand to use the kinematics modules)
Also:
linuxcnc.org/docs/2.8/html/man/man9/kins.9.html
And:
linuxcnc.org/docs/2.8/html/motion/kinematics.html
Please Log in or Create an account to join the conversation.
17 Sep 2019 00:16 #145353
by jaxonusa
Replied by jaxonusa on topic G-code and driving robots.
Can I use the vectors from section 3 of
linuxcnc.org/docs/2.8/html/motion/5-axis-kinematics.html
in a way sort of like this:
G01 Qx Qy Qz Kx Ky Kz
Or maybe like this:
G01 XQx YQy ZQz IKx JKy KKz
linuxcnc.org/docs/2.8/html/motion/5-axis-kinematics.html
in a way sort of like this:
G01 Qx Qy Qz Kx Ky Kz
Or maybe like this:
G01 XQx YQy ZQz IKx JKy KKz
Please Log in or Create an account to join the conversation.
17 Sep 2019 00:23 #145358
by andypugh
Replied by andypugh on topic G-code and driving robots.
No. The G-code _has_ to use XYZABC. But the variables mean very much the same thing.
The following user(s) said Thank You: jaxonusa
Please Log in or Create an account to join the conversation.
17 Sep 2019 00:39 #145359
by jaxonusa
Replied by jaxonusa on topic G-code and driving robots.
I very much appreciate the honesty of your answer. I must disagree with you though. I mean to do so in the nicest possible terms. IJK an ABC "do the same thing," but are very different. It is a somewhat easy task to calculate ABC from IJK, but they are not the same. IJK are the same units of the part, inches, or mm, or something like that. ABC are rotations, in degrees or radians or something like that.
If Kx, Ky, and Kz can be left in the G code, and somehow passed in to the kinematics, it would unlock a whole lot wonderful functionality. All the math shown in the link would still hold true, be exactly the same, just split up a little bit differently.
If Kx, Ky, and Kz can be left in the G code, and somehow passed in to the kinematics, it would unlock a whole lot wonderful functionality. All the math shown in the link would still hold true, be exactly the same, just split up a little bit differently.
Please Log in or Create an account to join the conversation.
17 Sep 2019 09:12 - 17 Sep 2019 09:13 #145380
by andypugh
Replied by andypugh on topic G-code and driving robots.
They do the same thing, in that they define a position and direction in space.
The G-code interpreter does accept IJK. but they define the position of an arc centre from the current position. (and, sadly, only in 3 planes, though there was some work done some time ago on allowing 3D arcs)
It would be relatively easy to re-map an unused G-code (G1.1?) such that G1.1 Xx Yy Zz Ii Jj Kk was interpreted as a G1 Xx Yy Zz A(f(ijk)) B(f(ijk)) C(f(ijk))
Or you could add an input filter to LinuxCNC that converts files in a format convenient to you to a format that is compatible with the LinuxCNC interpreter.
Here is an example of a file filter: forum.linuxcnc.org/38-general-linuxcnc-q...r-me?start=10#120524
And then there is the possibility of writing a whole new LinuxCNC interpreter, there is provision for "pluggable" interpreters and there was at one point a project to write a STEP-NC interpreter.
The G-code interpreter does accept IJK. but they define the position of an arc centre from the current position. (and, sadly, only in 3 planes, though there was some work done some time ago on allowing 3D arcs)
It would be relatively easy to re-map an unused G-code (G1.1?) such that G1.1 Xx Yy Zz Ii Jj Kk was interpreted as a G1 Xx Yy Zz A(f(ijk)) B(f(ijk)) C(f(ijk))
Or you could add an input filter to LinuxCNC that converts files in a format convenient to you to a format that is compatible with the LinuxCNC interpreter.
Here is an example of a file filter: forum.linuxcnc.org/38-general-linuxcnc-q...r-me?start=10#120524
And then there is the possibility of writing a whole new LinuxCNC interpreter, there is provision for "pluggable" interpreters and there was at one point a project to write a STEP-NC interpreter.
Last edit: 17 Sep 2019 09:13 by andypugh.
Please Log in or Create an account to join the conversation.
Time to create page: 0.116 seconds