Kinematics Module for ijk Gcode
01 Sep 2019 19:59 #143810
by jaxonusa
That's what a wasted most of the last two days figuring out. :-P I think I'm almost close to something. I managed to hack up src/hal/user_comps/vismach/hbmgui.py/hbmgui.py to get some of my models to show up in the tkinter window. Adding
to my hal wasn't easy to figure out. It seems like most of the answer are "out there," but, sheesh, sometimes they are hard to find.
How's this for a strategy:
Use a custom interpreter to define G06. It doesn't look like that code isn't being used. I'd like to start by copying whatever is currently used for G01. Where can I find that? I'm no good at going through github to find anything. The "output" of the G06 code could be to "call" G01 with absolute machine coordinates. I'd have to do my math inside of the interpreter to construct the G01 output.
Also, something really fun would be to define something like a G54 work offset, but include an orientation. Imagine fixturing 3 or 4 work pieces on one of those 5 axis vise trees. Want the same part cut on all the work pieces? Just change your G54 offset and hit run. Just like 3 axis, but now with 5 axes. I don't think the math for that would be very difficult. Another way to say it is, I could mount multiple work pieces in *different orientations*, on the same machine, and run the same code for all parts.
Replied by jaxonusa on topic Kinematics Module for ijk Gcode
It is probably as much work again to make the Vismach as it is to get the real machine working
That's what a wasted most of the last two days figuring out. :-P I think I'm almost close to something. I managed to hack up src/hal/user_comps/vismach/hbmgui.py/hbmgui.py to get some of my models to show up in the tkinter window. Adding
net j0 axis.0.joint-pos-fb => my_machine_gui.table
net j1 axis.1.joint-pos-fb => my_machine_gui.saddle
net j2 axis.2.joint-pos-fb => my_machine_gui.head
net j3 axis.3.joint-pos-fb => my_machine_gui.quill
net j4 axis.4.joint-pos-fb => my_machine_gui.tool-length
net j5 axis.5.joint-pos-fb => my_machine_gui.tool-radius
to my hal wasn't easy to figure out. It seems like most of the answer are "out there," but, sheesh, sometimes they are hard to find.
How's this for a strategy:
Use a custom interpreter to define G06. It doesn't look like that code isn't being used. I'd like to start by copying whatever is currently used for G01. Where can I find that? I'm no good at going through github to find anything. The "output" of the G06 code could be to "call" G01 with absolute machine coordinates. I'd have to do my math inside of the interpreter to construct the G01 output.
Also, something really fun would be to define something like a G54 work offset, but include an orientation. Imagine fixturing 3 or 4 work pieces on one of those 5 axis vise trees. Want the same part cut on all the work pieces? Just change your G54 offset and hit run. Just like 3 axis, but now with 5 axes. I don't think the math for that would be very difficult. Another way to say it is, I could mount multiple work pieces in *different orientations*, on the same machine, and run the same code for all parts.
Please Log in or Create an account to join the conversation.
01 Sep 2019 22:35 #143815
by andypugh
I would have expected the sim/axis/vismach/5axis/table-rotary-tilting to be closer?
linuxcnc.org/docs/2.8/html/remap/remap.h...xample_remapped_code
That would very trivially allow you to make a G06 I J K look like G01 A B C.
But you still need to alter your input G-code, so still need the filter...
G54 (and other) offsets already accept ABC axes (and UVW). And also a "R" for rotating the coordinates around Z for 3-axis machines.
Replied by andypugh on topic Kinematics Module for ijk Gcode
That's what a wasted most of the last two days figuring out. :-P I think I'm almost close to something. I managed to hack up src/hal/user_comps/vismach/hbmgui.py/hbmgui.py to get some of my models to show up in the tkinter window.
I would have expected the sim/axis/vismach/5axis/table-rotary-tilting to be closer?
No need for a custom interpreter if that works for you. Just remap G06:Use a custom interpreter to define G06.
linuxcnc.org/docs/2.8/html/remap/remap.h...xample_remapped_code
That would very trivially allow you to make a G06 I J K look like G01 A B C.
But you still need to alter your input G-code, so still need the filter...
Also, something really fun would be to define something like a G54 work offset, but include an orientation..
G54 (and other) offsets already accept ABC axes (and UVW). And also a "R" for rotating the coordinates around Z for 3-axis machines.
Please Log in or Create an account to join the conversation.
Time to create page: 0.057 seconds