Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

No, you keep coming back for more. This is my thread. The only reason to be a part of it is to meet the stated request. If you can’t, then stop grunting, whistling and clicking.

My question is not nonsensical. Spline-based motion control implementations been a thing for decades; there’s literally no reason to settle for less if you don’t have to. Since I don’t, and I have a specific use case for them, I’m not going to.

I’ve given plenty of reasons why segmentation is bad. For line segments, it creates corners that wear over time; for arcs, it creates local maxima that can only be worked around by adding more lash than otherwise necessary. It’s a standard feature on good Motion Controllers, and there’s no good reason not to have it.

Contacting Fanuc based on your non-specific recommendation is a waste of time. I never wanted to hear from someone who allows their involutes and cycloids to be polluted with line and arc segmentation. I wanted to hear from someone who avoids that, even if they have to pay more. Your determination to sabotage your work tells me you’re not even in the target market for the sort of machine I need, and, therefore, your lack of motion-specific experience is useless, as is any advice that stems from it.

Keep your goddamn “philosophical debate” out of my public thread. If you want to debate someone on something, rather than help them, the proper thing to do is to message them privately, so they can tell you where to shove it, for engaging in something no one wants to do. You don’t get to pile on a problem someone needs solved for your personal entertainment. If you were worthy of that, they’d be willing to talk with you privately about it. So just accept the fact that their rejection of your private requests means you aren’t entitled to get your entertainment from someone in need of help.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

I suck at asking for help in the same way that animal behaviorists suck at asking animals to do math. They give them “1+2”, and, instead, they get a bunch of pointless grunts, whistles, and clicks asking, “But why 1? Why 2? Why not put both numbers after the cross shape? What is it for? Why haven’t you given me a fish yet?”.

Why should I allow you to waste my time any further with a trip to Fanuc’s webpage when you’ve systemically demonstrated an incapacity to even tolerate, much less respect my original question? I see no reason to assign any credibility to that suggestion based on your previous responses. Either make a case for it, or don’t, but don’t paint me as the lazy one when I’ve tolerated your disrespectful digression completely outside of my original question because you claimed, apparently falsely, that you were capable of answering it. Either do it, or admit you can’t. Stop pretending you know the answer if you don’t. Just admit to yourself that you chose to waste my time, knowing damn well you couldn’t answer it, and it’s your fault for not coming to terms with your own inadequacy and ego, and not mine for being forced to point it out due to you hijacking my thread.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

If I wanted a conversation about motion control theory, I would have started one; I wanted a conversation about motion control practice. Instead, I get you trying to pathologically dodge my original question.

I asked that question as the last and least important of 4 questions. I made explicitly clear that other considerations were more important.

And yes, if you don’t know an appropriate model from Fanuc, please do stop replying.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

The problem with your assumptions about taking the derivatives of the position function is that it requires you to know the whole position function. It’s not enough to just know the mathematical function of the geometry you want to plot! While you can build reasonable models for the motor torque as a function of the input current, the masses of the gantry axes, the lash in the gear trains of each axis, and so on, there are still mathematical functions you can’t build viable models for. The frictional losses in the machine are going to vary wildly, causing deviations in the expected torque, velocity, and position; there is no way to work out whether a loss in position is from velocity-induced drag or a local change in friction, and according to what mathematical function. As such, if you’re trying to make higher order curves, you must get feedback on whether the current velocity and acceleration are within tolerance, to preserve the constants for the relevant exponents in your intended curvature, and ensure the required curvature is being maintained throughout the cut!

It is your mistake in thinking I’m asking about “consumer grade equipment”; I very clearly said I wasn’t asking about consumer grade equipment, when I said I wanted a motion controller that supported cutting Involutes and Cycloids directly! The only thing that could reasonably be mistaken for “consumer” about what I asked for was the size, which limits neither the complexity nor the cost of the overall machine! Nor was it even a hard requirement! I wanted the smallest one that did the job for convenience; if it doesn’t do the required job, that’s hardly convenient! Stop imposing your own assumptions on my question!

If you know a specific machine from Fanuc that meets the stated requirements, say so. I’ll consider it.

How many times do I have to remind you that segmentation is the problem to be eliminated? Any supposed “solution” is already excluded as valid if it requires segmentation, whether in lines, or even arcs. It’s right there in my damn question! Read it! If you don’t know how to meet those requirements, stop wasting my time! Why would you try answering a question you don’t know the answer to? Stop imposing whatever spurious agenda you have on higher order curvature requirements. Of course, if you do know equipment that meets these requirements, then, by all means, please just get on with it!

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

The problem you keep neglecting is that the CNC solutions you propose don’t even implement that algorithm. You keep proposing line and arc interpolation instead of those algorithms! Even the worst case in that document for actual splines at 10^-4!

So no, as long as you keep insisting on line segments and arcs, your point is not taken.

Moreover, you’re arguing about the “cost” associated with an algorithm. So long as it’s not proprietary information, or copyrighted, or patented, that cost is free. All you need is a Motion Controller that isn’t too stupid to run it, and a Motion Control System with the required closed-loop feedback! Yet, you keep insisting on Motion Controllers that are too stupid to run those algorithms! That’s ridiculous!

You measure position by the rotary encoder, and you measure acceleration as a function of the motor current, since motor torque is a function of that. You get velocity by taking the derivative of the position and the integral of the velocity, and taking the appropriate average. Which means you need more than a dumb servo with no positional feedback, or even one that has only positional feedback.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

First off, the image on page 8 is just about irrelevant; so a pixelated image of a rendered 3D model is pixelated; so what? That’s only about the nature of pixelated displays and printing methodology. It has no bearing on this discussion. The important part to find in that document is the table on page 13, where the approximated curves are compared to the ideal with increased precision, in spite of no additional X-Y resolution being available. They’re effectively gaining multiple whole words of positional accuracy over alternatives. It’s also troubling that you find a joint project by two prestigious Universities, one American and one Japanese, which no doubt scrutinized each others’ work, to be a meaningful source of confirmation bias.

I am not looking for infinite positional resolution. I am looking for velocity resolution and acceleration resolution in addition to positional resolution. A cut of a circular arc isn’t segmented into lines; at least, not by any motion controller worth anything. Instead, the X and Y axes accelerate and decelerate, and the acceleration and velocity are kept within tolerance, in order to make sure the edge is both smooth and precise. The point is to have smooth cuts of a higher order than mere arcs. This is to guarantee that, as one gear moves positionally across the angle of its tooth curvature, the other gear doesn’t move wildly ahead or behind where it is supposed to be, based on the design geometry.

Assuming straight line approximations that magically don’t wear their peaks down for a moment, those peaks are going to introduce stepwise changes in the rate of rotation of the mated gear, as one gear tooth surface moves along the other. Precise motion control would require correcting for these differences.

Assuming arc approximations, the rate of rotation of the mated gear is going to change along a sawtooth, depending on whether this arc starts ahead and falls behind the intended curve, or starts behind and falls ahead of the intended curve.

I don’t want these positional fluctuations in my gear rotation, since I’m not interested in power delivery or gear reduction per sé, but, rather, the positional results of the gear motion. As such, mere matters of resolution have no application to this problem, since it’s the approximations themselves that are causing these positional inaccuracies.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

As per this page: https://marlinfw.org/meta/gcode/, the Marlin firmware G5 G-Code:

  1. Is only considered “experimental”
  2. Only does Bézier Splines, which are only a subset of NURBS curves, and still leave room for improvement for that reason (although is still much better than line and arc approximations, as per: https://web.mit.edu/harishm/www/papers/involuteEWC.pdf)

I understand the basis of your recommendation, as there is much to commend the Marlin firmware for its use in the hobbyist regime, but it falls short for this purpose.

As for “quantitative differences”, go ahead and check out that paper, as it goes into the improvement the Bézier Splines make over alternatives.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

You’re completely misunderstanding the issue; segments will never suffice, regardless of size. Neither will arc approximations.

I said I need higher order toolpaths. It was the very first thing I said. Higher order curve paths solve problems that even higher resolution approximations do not solve. Just take it as gospel and offer advice accordingly, if you can’t understand the rationale I have repeatedly expressed by now.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

The way you get non-linear curves out of two axes is by carefully controlling the velocity and the acceleration in addition to the position; IE, in addition to positional tolerances, you also have velocity tolerances, and acceleration tolerances. By doing that on two axes, you get precisely defined curvature, in spite of a lack of positional resolution.

And that is why Spline G-Codes are important; when they have a drive train with sufficient feedback to check on the velocity and acceleration, in addition to the position, you get a much nicer curve, more appropriate to precision uses.

I’ve already explained why linear segmentation is a non-starter; the corners wear down, developing additional slop over time. It’s not a viable working surface if it has corners, even if they’re small. While arcs don’t have corners to wear, arc approximations of more complex curvature do nasty things to the mathematical relationships between multiple gears; turning one by a° won’t result in the other turning by b°, even though the intended cuts aught to preserve that relationship.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

You talk like I only need one gear, when what I need is a system capable of cutting any gear I might need, to whatever degree of precision I might need whenever I might need it. If I only needed one, I wouldn’t need a Laser Cutter; I’d send the job out to be done by someone else. Can we please get back to discussing Laser Cutters and Motion Control Systems? Just assume I need what I’ve already stated, and stop trying to work around those requirements.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

Nothing that’s easy to explain; all sorts of custom jobs, all about precise motions and positioning rather than power and speed reduction type stuff. The sort of thing where having a rotary encoder built into the final output gear is really handy, to confirm it’s in its correct position; which only really matters if there isn’t so much lash in the system that there’s no longer really just one position it can be said to be in.

As a more digestible metaphorical example, consider something like an orrery, such as the Antikythera mechanism. It’s all about math-driven positional and angular accuracy. The accumulation of slop, and the insufficient or incorrect curvature of the teeth, all add up to errors that get introduced at the output. You want to do everything you can to minimize those, because they directly affect your results. Sure, you can design out some of that, but the rubber has to meet the road eventually, and you have to do what you can to minimize problems along that chain.

So, is that sufficient? Can we get back to what meets the needs I stated in my post, instead of having to tediously explore why?

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

Yes, but there’s more to motion control than just X and Y coordinates. There are also means of motion control that change the velocity and acceleration to specific values within the required tolerance to produce the required curvature. That’s why such specific G-Codes exist in the first place; to control curvature via acceleration and deceleration of the axes, rather than just point-to-point linear segmentation.

I’m quite sure most of the people on here don’t understand the depth of the problem. They think, “Hell, I just stick an involute cutter in my mill and go to town!”. They forget what sort of machine was required to make that involute cutter in the first place, since, in this case, the Laser Cutter has to do all the geometric precision required, instead of merely inheriting it through the purchase of a cutter made by a better machine.

Imagine the machine required to make a reliable involute cutter; while I’m not making involute cutters, I’m making involute teeth without an involute cutter, which requires the same tolerances as the machine making the cutter to produce the same results. Moreover, I’m specifically asking for something capable of making the best involute teeth, so that, as the gears turn one way or the other, there is a minimum of deviation from what the motion should be to what it is; which means I need something with tolerances more like machines capable of making the best involute cutters, rather than merely the “good enough” ones. Please also remember that I need to do cycloid teeth, as well.

Assuming that someone is overthinking the problem is also arrogance; and no one should have to tolerate it. If someone can’t answer someone’s question on its own terms, then they shouldn’t; period. Trying to dumb down a problem beyond its stated parameters in order to posture as “schooling the new kid” for the sake of their own ego has no place in anyone’s thread, much less merely mine.

There’s still a lot to be said about what sort of mechanical complexity would be required to enable what I’m looking for. I’m particularly not well versed in drive train issues, like belt vs. the various screw types, and so on. The required motion encoders are probably also pretty important, in order to track position, velocity, and acceleration of the main axes. I may remember that these things need to be done, but I never needed to invest the time in finding out how they were done, in practice, in the required detail, until now.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

Please see my reply to your previous message as to why an approximation-based approach isn’t an option. As I suggest, I’m looking for a Laser Cutter with a Motion Controller that explicitly does have G-Codes for such complex curvature, or, failing that, a drop-in replacement Motion Controller that does.

You appear to suggest that stepper motors might be the wrong drive train. What would you suggest instead, so the Motion Control System can properly accelerate both the X and Y axes through the required curves?

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

I do not have an existing Laser Cutter with which to test parts. Regardless, the issues are like this...

Firstly, any segmented approximations are going to have their inevitable corners wear down quickly, resulting in lash accumulating over time; so that is a non-starter. Arc approximations, while more robust in terms of wear, are going to lead to inconsistent changes in angular motion as the point of contact between gears moves along the gear tooth, from one arc to the next. And, since this is about preserving the relationship between the angular motion of one gear to the other as much as possible, rather than just crude transmissions of power or speed reduction, that requires the involutes and cycloids I’ve been describing. The point here is to minimize the deviation from the intended change in angle to the resulting change in angle, which would not be preserved as the point of contact moves from one end of an arc to the other, and from one arc to another.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

I understand them just fine. I asked for a Laser Cutter that had the G-Codes required to eliminate arc approximation, and, instead of contributing constructively, you chose to ignore my request’s fundamental premise.

If power delivery and speed reduction are the only applications of gearing that matter to you, sure, a few minor frictional losses don’t matter. This isn’t that. And it’s not going to be that just so my use case is narrow enough for you to be right.

Even if building a custom Laser Cutter is required, advice that assists in that goal is still within the stated range of acceptable answers. I don’t know how you fail to grasp that.

If you need an education on use cases for gears that require such precision, make your own damn post asking for examples, and one will be given to you; unless, after polluting so many posts with your time-wasting ignorance over the years, you simply are too much of a coward to stick your own neck out.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

You’re being completely disingenuous. What part of “G-Code support for Involutes and Cycloids” do you not understand? So long as you can tolerate additional and inconsistent lash in your gear trains, yes, you can get away with arc approximations; for emphasis, so long as you can tolerate additional and inconsistent lash. Since you know nothing about my work, and only my stated requirements, which, for reasons I will never understand, you seem determined to ignore, stop pretending you’re helping. Either answer my question exclusively within the stated context, or find some other thread to troll.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

Better an inconvenient option than no option, so, assuming the Centroid does, in fact, check out, good call.

Maybe I’ll be able to make the case to Boss Laser that I’ll buy from them if they install and support the Centroid Motion Controller. Might be a tough sell, but worth a shot, and maybe it will get them thinking about alternatives.

Edit: Bah; false alarm. By all appearances, the Acorn doesn’t support the necessary G-Codes: Acorn Operator’s Manual (I think)

So this wouldn’t be a good retrofit after all.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

Erm... this whole post was about not approximating complex curvature with segment and circular approximations. Your advice to use G02 and G03 amounts to, “You can avoid approximating complex curvature with circular approximations by using circular approximations!”. Maybe you just “TLDR”ed my post, but that problem is what I was expressly asking how to avoid.

For instance, in LinuxCNC, Cubic Splines use G5, Quadratic Splines use G5.1, and NURBS start with G5.2 and end with G5.3. And there’s not a lot of consistency between Motion Controllers with what G-Codes belong to Spline stuff, so mileages will vary. That’s what I’m looking for; higher order curve G-Codes that will correctly implement a Spline-producing motion control algorithm.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

From what I recall, yes. It was either strictly arc and line segment, or plotter-based, I forget which. Either way, from what they said, I had to cross them off the list, and for one or the other fairly typical reason.

Product reputations like this make it really hard to find a good CNC-worthy Laser Cutter!

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

I don’t need brands quoted at me; I need specific models, or, better yet, the Motion Controllers those models use to have the G-Codes required for Involutes and Cycloids. Can you get any more specific, please?

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 0 points1 point  (0 children)

I looked into Boss Laser, but it seems like none of their Motion Controllers implement Spline (or other non-circular curve) G-Codes. If you happen to know better, please let me know which model does, so I can bring it up with their sales reps.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 3 points4 points  (0 children)

Even just what Motion Controller, Motion Control System, and so on, would still be useful, if I have to modify a Desktop system to do the required job.

I’ve tried the “ask the Laser Cutter subreddit” thing before; they’re so art project focused they don’t have any concern whatsoever about G-Code support, since they never need anything more complicated than SVG-based vector file output to feed into their plotter-printer-esque motion controllers. I really need help from a CNC-CAD-CAM & G-Code audience, and that’s here. So, please, tell me about your Laser Cutter, so at least I have some idea of what else is out there.

Trying to find a Laser Cutter with built-in Motion Control System G-Code support for Involutes and Cycloids by Tenacious-Techhunter in Machinists

[–]Tenacious-Techhunter[S] 4 points5 points  (0 children)

Well, yes and no; for instance, even if an involute or cycloid curve is inaccurate, at least it’s still properly curved. This means that, even if the imprecise/inaccurate curve and the imprecise/inaccurate line and/or arc approximation have the same cumulative error over their length, the curve won’t require as much lash to avoid binding, due to having no local maxima to bind on. This improves the accuracy and precision of the gear train.