oscillation during welding

More
28 Oct 2022 15:20 #255302 by Lindi
oscillation during welding was created by Lindi
I intend to weld with a 3-axis kinematics, but it must oscillate. How can I realize this with linuxcnc?

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

More
28 Oct 2022 15:36 #255305 by tommylight
Replied by tommylight on topic oscillation during welding
Weave is the term used for that type of welding, and it is done in CAM software.
LinuxCNC is a machine controller, it takes the gcode outputted from CAM and uses that to control and move the machine.
-
There are several ways of doing this, from writing gcode directly with a text editor, to using Inkscape with the included path2gcode plugin, to writing a bit of code that would use "external offsets" to do the waving and adjustments of the amplitude and frequency in real time while the machine is working.
If it is an industrial machine, i would choose the last option as it would be the most flexible and versatile of them all al would not require any other software. Also, the ability to have all the required parameters adjustable and settable on the main screen makes for enjoyable machine use.
linuxcnc.org/docs/stable/html/motion/external-offsets.html

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

More
28 Oct 2022 16:13 #255309 by Lindi
Replied by Lindi on topic oscillation during welding
thank you for the quick reply, even if I did not fully understand.
I have also been programming robots for 30 years and here I only specify the movement type and the pendulum parameters.
But if I have now understood correctly, I must specify each point on the pendulum path individually. I can't imagine that, that would be stone age.

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

  • rodw
  • rodw's Avatar
  • Away
  • Platinum Member
  • Platinum Member
More
28 Oct 2022 20:42 #255333 by rodw
Replied by rodw on topic oscillation during welding
Its not really necessary to do the weave in cam.
You could use external offsets and calculate an appropriately scaled sine wave with siggen and apply it as an external offset.
the external offset is applied outside the motion controller so a straight line in CAM can be made to weave. (a Sine wave oscillates from -1 to 1)
Linuxcnc is really just designed for normal CNC machines .Welding is  special case. The tools are there, you just need to implement it.
Good luck!

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

More
28 Oct 2022 22:05 #255344 by tommylight
Replied by tommylight on topic oscillation during welding

I have also been programming robots for 30 years and here I only specify the movement type and the pendulum parameters.

I was sure it is for something like robots, plenty of experience with those, also, mostly Kuka, they use the term "weave" for that.

But if I have now understood correctly, I must specify each point on the pendulum path individually. I can't imagine that, that would be stone age.

Yes, one of the methods is exactly that, writing every move in gcode using a text editor. For short stuff, this is sometimes the fastest thing, especially while testing.
The second method is to use Inkscape, it is a vector drawing software that outputs directly gcode usable in LinuxCNC. It is easy to use and there are no other steps involved.
The third method is using external offsets, it is a feature included in LinuxCNC allowing to move the axis in real time from external effectors, be it siggen as Rod mentioned or a slider on the GUI or an external button.
This is by far the best method, it does require a bit of coding/editing, but would enable changing all the parameter even while the machine is working.
Basically, you give it a straight line to move, then the external offsets take over and do the weaving across that line based on the set parameters, and those parameters and be changed and adjusted while the machine is working.

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

  • rodw
  • rodw's Avatar
  • Away
  • Platinum Member
  • Platinum Member
More
28 Oct 2022 23:27 - 28 Oct 2022 23:28 #255356 by rodw
Replied by rodw on topic oscillation during welding
For 3 axis welding, External offsets and siggen ( linuxcnc.org/docs/devel/html/man/man9/hm...FACE%20CONFIGURATION ) are pretty easy and for x and Y  directions, it would just involve some hal components and a couple of variables on the console for frequency and amplitude. Travelling diagonally would be harder as the weave needs to be apportioned between the X & Y axes. Linuxcnc lacks a heading value which tells you the angle of travel.
Last edit: 28 Oct 2022 23:28 by rodw.

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

More
30 Oct 2022 20:13 #255483 by andypugh
Replied by andypugh on topic oscillation during welding

Linuxcnc lacks a heading value which tells you the angle of travel.

I wonder what the best way to represent this would be? Maybe the projection of the current motion on the currently selected plane? Or a direction cosine for each axis? (what about the angular axes? Is there a useful interpretation of the idea of "heading" there?)
The following user(s) said Thank You: tommylight

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

More
02 Nov 2022 09:29 #255768 by Lindi
Replied by Lindi on topic oscillation during welding
unfortunately not quite satisfactory so far. I can't really do anything with the oscillation of an axis, since the system works three-dimensionally in space and thus must also oscillate with all axes at the same time.
I know from a robot manufacturer that the path interpreter is used a second time to generate the pendulum movement, where any pendulum patterns are possible.
Furthermore, I need the possibility to influence the path via a sensor. In welding, the arc values are used as sensor variables. But also a displacement by operator intervention must be possible.
I assume that there are variables in LinuxCNC which contain the path tangent etc.?
Who deals with the path interpreter?

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

  • rodw
  • rodw's Avatar
  • Away
  • Platinum Member
  • Platinum Member
More
02 Nov 2022 12:30 #255781 by rodw
Replied by rodw on topic oscillation during welding
From my understanding, for normal kinematics, headings if they were supported could only be expressed in the xy, xz and yz planes.
The trajectory planner is deep witin the internals and does not have any  tangential parameters that can be read. They could be added and passed back via the state tags structure so they could be used. I did some work on this but the project was shelved.
My thought is the external offsets on the x,y,z axes would all need to be calculated to create the desired oscillation along the direction of travel.
This would likely be calculated in a custom component. This component would additionally receive your sensor variables and operator controls.

As an aside, Linuxcnc allows you to write custom components that once installed are treated as if they are part of the linuxcnc core.
linuxcnc.org/docs/devel/html/hal/comp.html
There are plenty of source examples in the /src/hal/components folder pick some easy ones like and2 and review some code
If voltage was a required input, this could be measured using a Mesa THCAD as used to monitor plasma torch voltage.
Actually dealing with the inputs will probably the easy bit!

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

More
02 Nov 2022 12:51 #255783 by tommylight
Replied by tommylight on topic oscillation during welding

My thought is the external offsets on the x,y,z axes would all need to be calculated to create the desired oscillation along the direction of travel.
This would likely be calculated in a custom component. This component would additionally receive your sensor variables and operator controls.

This has a nice explanation of how to calculate the stuff from a players heading, somewhere after the 9'th minute:

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

Time to create page: 0.099 seconds
Powered by Kunena Forum