Homebrewing an XYZ CNC Router

If making such a device, there is a distinct possibility of the main frame being twisted, misaligned, or bent in any of the three axes, despite the care that we would obviously take in its manufacture

It seems to me that with the power of computers that we all now have at our disposal, that it should be a relatively straightforward matter to employ some form of correction map, together with the calibration procedures to set up the map, so that whatever we mill will come out the correct shape independently of the geometry of the mill.

The integrated printer/scanners that are now available do this, so it should be feasible for us.

What do the market leaders such as Mach3 do in this respect?

Reply to
Phil O. Sopher
Loading thread data ...

Printers work (!) in a very benign environment, with very predictable and uniform materials. A 3-axis CNC will twist, warp and flex by different amounts, in different directions depending on all manner of environmental changes. Not the least of which are the speed of the cutter, it's particular characteristics (sharpness, shape, varying profile), the speed it's being used, the hardness and elasticity of the material being machined and loads of other factors that you'd only find out about by trial and error.

Reply to
pete

I think "Phil" meant manufacturing (static) errors, not run-time errors.

BugBear

Reply to
bugbear

So what you are saying is that there is scope for a more sophisticated correction mapping than that which I posited?

Taking my cure from the VLT (very large telescope) which, ISTR, fires lasers at the sky to evaluate random shifts in the "seeing", and taking the cheap and getting-cheaper-by-the-day digital measuring systems at our disposal, and continuing to bear in mind the extensive computing facilities at our disposal, could we even conceive of a dynamic correction procedure based, say, on laser pointers?

Compare with the electronic correction in the EMU/ECU of your car, as opposed to the previous and crude vacuum and centrifugal advance/retard mechanisms for spark timing.

Reply to
Phil O. Sopher

Indeed I did, in the first instance, but Pete has widened my train of thought; for which see my reply to him.

Reply to
Phil O. Sopher

The logical conclsion of which would be a CNC machine with no steppers or servos as we know them now, but withmotion determined only be the detection of the current cutting point, together with a machine vision system to assess the geometry and positioning of whatever has been cut so far (To take into account warping and toughness of the article being machined)

Reply to
Phil O. Sopher

When you're done writing the software & developing the control system to do all this, let me know...but I won't hold my breath in the meantime ;-)

Regards, Tony

Reply to
Tony Jeffree

I believe Mach 3 has the ability to correct for non-linearity in the leadscrews, but that's about it.

Regards, Tony

Reply to
Tony Jeffree

Pete,

I think Mach3 has a feature to correct for leadscrew errors, not that I have used it. Look on the Mach3 toolbar at the top of the page clickon "Function Cfig's", then "screwmapping" and have a look.

Assuming you are using stepping motors another way to correct for leadscrew errors only if the leadscrews have linear errors, eg say you had a consistant error of say +0.45 mm in 300mm you can reduce the step count per mm to help compensate for it. It can be even more effective if you your motor controller has a lot of micro stepping options, eg if it is 2000 steps per mm, make it 1997 steps per mm and now your error for this example is virtually zero.

Hope this helps.

Mike

Reply to
Mike

Phil O. Sopher It is inevitable that software will be developed to cater for machine deficiencies. The software available now caters for mechanical backlash in the system etc. I just wonder if the end result will be machines that are so flimsy ( and cheap) will rely on such software to achieve even the minimum of accuracy and performance. Software is already king even though Tony is holding his breath in defiance. Alan

Reply to
jackary

Isn't that already the principle upon which modern fighter planes stay in the air? They're as aerodynamic as a house brick but made safe by the software in fly-by-wire systems.

My approach to such a form of correction would be first to apply a couple of 3D matrices to the required co-ordinates to counteract errors of displacement and non-orthogonality (axes not at right angles or not vertical despite the care that one might have taken in construction) and then, with the availability of cheap (gigabytes of it!) memory, have a correction for each cubic centimetre of the base plate, and linearly interpolate for motion between each cc.

The software people at my place of work always spun a web of intrigue about themselves, perhaps to justify their higher salaries, but I've been alerted to Excel macros, where we've all got access to a very sophisticated programming language in Visual Basic, and all for nothing (except for purchase price of Microsoft Office).

I'd still opt for a very rigid construction, though.

Tony is known to be a software person and might be trying for a bit of job protection, or trying to stifle discussion on a project that he's hoping to make a bob or two on! :-) . But I don't see why this group could not be used just to have a discussion about possibilities even if nothing were to result in the end, without the need to sneer.

Reply to
Gary

Not an attempt at job protection (my job isn't in software development any more), or sneering for that matter; simply an honest assessment of realities from my own experience of building complex software and hardware control systems. Yes it is all possible. However, turning that possibility into reality would be (a) very expensive (don't even bother thinking in units of less than 6 figures) and (b) very time/resource-consuming. Maybe if you had the resources available to the guys that develop "fly by wire" aircraft, then it would be a breeze...but lets be clear about this, we are not talking DIY here, unless Bill Gates decides he wants a hobby.

And yes, there are lots of wonderful things that you can do with Visual Basic, but frankly, machine control isn't one that readily springs to my mind. But YMMV.

Getting back to reality, I suspect that the OP's implied objectives (of producing acceptable accuracy from his router) would be better (and cheaper, and faster) served by (a) using heavier gauge materials to keep the structure acceptably rigid and (b) building it with sufficient accuracy.

Regards, Tony

Reply to
Tony Jeffree

I'm sorry if I misjudged you

Reply to
Gary

Some people have strong opinions on how sophisticated a programming language Visual Basic is!

BugBear

Reply to
bugbear

I slightly disagree. It seems to me that (over)building a *rigid* machine is quite easy. Just use bigger I beams :-)

Subsequently, if you (even temporarily) have access to accurate measuring equipment you can calibrate the accuracy, in terms of "attempted absolute position" against "actual absolute position".

Applying this, as an interpolated correction lookup to a given cut is not killingly difficult.

I agree whole-heartedly that using software to deal with stuff like lash (hysteresis) would be hard enough considered as a static problem, let alone a dynamic one (e.g. accounting for resonance and spring).

BugBear

Reply to
bugbear

If we, as an amateur hobby group without the restrictions of time and money alluded to by Tony were to come up with a basic algorithm between ourselves, then it seems to me that once such an algorithm were itself debugged, then it could be advanced to deal with further problems, (such as the resonance and spring that you identify) as such problems became apparent in our work.

Reply to
Gary

I am informed that it has more sophistication than Ansii C which is the lingua franca of engineering these days.

Reply to
Gary

Don't confuse "sophistication" (however you choose to define it) with "capability". After all, the machines that these "sophisticated" languages run on are actually programmed in a primitive instruction set.

Also, as you note, ANSII C (and C++,...etc.) is the lingua franca of engineering these days for a very good reason - it was *designed* to do that job, and that design is sound. VB wasn't, and isn't, which is why, whatever you might believe about how sophisticated or otherwise it might be, VB isn't ever going to be the lingua franca of engineering.

Regards, Tony

Reply to
Tony Jeffree

This is a statement of the form "If we could design a flying pig, then pigs could fly". I can't fault your logic - however, as I have said, I'm not going to hold my breath.

Regards, Tony

Reply to
Tony Jeffree

I don't disagree with that - Mach 3's leadscrew calibration is an example of what can be done there - I just don't believe it is remotely necessary (a) for the kinds of uses that a 3-axis router is likely to be put to and (b) given careful construction technique.

Absolutely.

Regards, Tony

Reply to
Tony Jeffree

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.