3D (surface) scanning with nomad

Hello all, I’m seriously considering purchasing a Nomad - looks like a great desktop machine for CNC.

One of the things I’d like to be able to do with it is sample a relief surface. Based on my current research it looks like it might be possible, but I’d need to use a different GCode sender?

Basically, I’d have to GCode a 2D grid in X&Y, stop at each point and slowly move Z while sensing some sort of probe. The probe could be something I make or something purchased - not really concerned about that at this point.

I’ve got plenty of software experience, including motion control, but have never worked with GCode.

Would it be possible to use the Nomad in this way?

I guess that what I’m asking is, is what are the machine limitations in respect to what I can send it with GCode? I did find the supported Gcode list but it doesn’t mean much to me as I’m not familiar with Gcode.

Any input / advice appreciated.
Thanks.

See: https://wiki.shapeoko.com/index.php/Upgrade_Overview#Touch_.2F_digitizer_Probe and https://github.com/martin2250/OpenCNCPilot

EstlCAM has a built in surface scanning feature, although I haven’t tried it. I saw an example of using it on a part covered in aluminum foil tape since a touch probe wasn’t available.

https://forum.shapeoko.com/viewtopic.php?t=7692

Ah, thanks both of you.

I have virtually no practical experience with CNC/Gcode - so it’s mostly that I don’t know how to ask the questions at this point.

It looks like GRBL is an open source “engine” for CNC and other machines that use Gcode to define toolpaths.

Do nomad & shapoko both use this in their controllers??

I’m guessing yes. In that case all I need is any number of tools or code that can send Gcode to GRBL. Looks like there are a number of python apps/packages/modules for doing this. Enough to get me on the right track.

And presumably there is Gcode that will wait for a digital input signal. Does the nomad have a spare DIO input or is it just a matter of using the tool height sensor?

The software you guys suggested is windows only, I’d really be looking for a python solution that could be run on either Mac or Linux.

-Dave

Correct, Grbl is an opensource G-Code interpreter, see http://bengler.no/grbl and https://github.com/gnea/grbl

Yes, Grbl is used by Carbide 3D for all of its machines

I believe you’d want to connect something to the Probe input. See the links which have plans up above. I believe bCNC has some support for Probing.

Awesome!
I’ve already got a couple of projects in mind for this machine. Thanks.

-Dave

It just takes serial data - you send it strings describing how you want it to move - G1 X100 Y100 Z50 F150 brings you to a point of 100 units X and 100 units Y and 50 units Z at moving at 150 units per minute in a straight line from wherever the carriage is right now - (you also send commands to tell it what unit to use, mm or inches, how fast to move, and many other motion parameters) . Here’s a useful reference: http://linuxcnc.org/docs/html/gcode.html

2 Likes