Kinematics Module for ijk Gcode

More
7 years 2 months ago #143507 by jaxonusa
Thanks Andy, I'll take a look at the demo you mentioned.

For arc moves, I think you don't. The code I'm used to seeing is small linear moves to the next point/orientation. You set how close or far apart these points are before you generate your toolpath in cam software. I don't have any handbooks or information about what Hurco or Fanuc does for 3d arcs. I've used 6 axis robots that have 3d arcs, but they never ever tell you how they do it. It's proprietary. What the user does, is set the starting point/orientation, the ending point/orientation, and some auxilliary point/orientation along the path. There's all kinds of notes to not "trust" what's going on between these points. There are some brilliant people over at robot forums that might know.

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

More
7 years 2 months ago #143693 by jaxonusa
With regard to filters, I have a spreadsheet I can paste xyzijk code on one side, and copy xyzbc code from the other side. Then I can paste it into a new file to run. I guess that's filter enough if I'm going the filter route. Looking at the filter page, it looks like I can use some python. I've put all the math I'd like to do in a python script. It has three functions. The first, input work xyzijk, the output is machine xyzbc. The second is, input machine xyzbc, the output is work xyzijk. The third is a type of tcp where the input is work xyz, machine bc, and the output is machine xyzbc. The script is 68 lines long. Not very big or complicated.

When you said "try the sim," I heard vismach :-P This might be a better place to try out my python maths. I read some forum and wiki things, but I'm still ignorant. Again, I don't mind doing the leg work, but I'm having a hard time figuring out vismach. What's the current path to understanding it? For example, one issue I have is, my machine config won't run unless it's hooked up to my Mesa, and all the stuff is powered up. Can I somehow get the Axis sim to run a vismach? I got to the point where it the wiki says

set up own script
Type in a Terminal (where "my_machine stands" for your deserved name):

sudo su
cp /usr/bin/5axisgui /usr/bin/my_machine_gui
chmod +x /usr/bin/my_machine_gui


But it won't work form me because LinuxCNC won't run my machine unless it's all physically plugged in and powered up. I tried to pncconf with no boards, thinking I would get a simulator, but that didn't work.

Does it make any sense to involve vismach? It might be possible to get it to understand my python. I'd like to learn it at some point anyhow. So, any help in understanding vismach would be greatly appreciated. In fact, I wouldn't mind "paying" for vismach help with giving back some Haas vismachs. They put a lot of cad of their machines online. If I knew vismach, I wouldn't mind getting it running for a Hass or two.

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

More
7 years 2 months ago #143729 by pl7i92
all you need to know is that it workes perfect for so many 5Axis and more with all the axis joint combos you can imagine
so its only up to you to get the G-code for the part to the mashine you build
This means your CAM and Cam output words in combination
Dont frear the build
it is easy if you can decide the Axis combination and posithon // sutch as Bottem Center zero
but the new master will also do main offsets

www.youtube.com/results?search_query=linuxcnc+5axis+offset

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

More
7 years 2 months ago #143801 by andypugh

jaxonusa wrote: Does it make any sense to involve vismach?


Only if you want a virtual machine to visualise what you are working on. It is probably as much work again to make the Vismach as it is to get the real machine working, but it cost less when it goes wrong.

The Vismach docs are here:
linuxcnc.org/docs/devel/html/gui/vismach.html
Though the basis if that page was pretty much just the notes I made, and the things I discovered, when making my own Vismach model to demonstrate the carousel component.
The following user(s) said Thank You: jaxonusa

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

More
7 years 2 months ago #143810 by jaxonusa
Code:
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
Code:
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.

More
7 years 2 months ago #143815 by andypugh
  • jaxonusa wrote: 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?

    Use a custom interpreter to define G06.

    No need for a custom interpreter if that works for you. Just remap 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.263 seconds
    Powered by Kunena Forum