Machsupport Forum

G-Code, CAD, and CAM => G-Code, CAD, and CAM discussions => Topic started by: Peter Dow on December 21, 2016, 08:02:48 AM



Title: Trispokedovetiles: CNC code to cut tiles
Post by: Peter Dow on December 21, 2016, 08:02:48 AM
I'm developing Computer Aided Design (CAD) / Computer Aided Manufacturing (CAM) software for CNC plasma, laser, waterjet, router etc cutting of tiles shaped like this.

(see attached image - trispokedovetiles_3x3D.png)

Someone else, but not using my CNC code, cut these first examples out

(see attached image - IMG_1953.jpg)

My software is available for testing, (please see post #17 for links).

(see attached image - trispokedovetiles_CNC_snapshot.png)

One of the applications I have in mind would be to manufacture armour tiles, so strong sheet materials that the tiles might be cut out of could be tough metals, such as steel or titanium, or ballistic ceramics, such as silicon carbide.

I've no manufacturing facilities of my own, so I've been testing my software on my home PC and using CNC simulation software.

(see attached image - routersimulation.jpg)

So I would welcome anyone who has a CNC cutting machine experimenting to test my CNC code out (at your own risk and cost) and let me know how you get on  ...


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Tweakie.CNC on December 24, 2016, 03:43:49 AM
Hi Peter,

Thank you for posting the link your free online CAD/CAM software which looks most interesting.

I think there are perhaps one or two changes which may need to be made to make it more Mach3 / Mach4 friendly and I will post more details once I have tested the generated code on my machine.

Tweakie.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Tweakie.CNC on December 24, 2016, 06:17:02 AM
Couldnít resist trying this before meeting friends for lunch.

I had to make a few changes (some essential & some desirable) to the generated Gcode file to make it compatible with Mach3 Laser use and these were as follows:-

M00 deleted (it cannot share the same line as another command in the same modal group (M23) and it is not really necessary).
G4 P100 deleted (a plasma start delay is not necessary for CO2 laser).
G91.1 added (to ensure Incremental Arcs mode).
G21 added (to ensure operation in metric units).
F600 added at start of file (a feed-rate must be specified for feed-rate moves).
M22 replaced with M11P1 (laser on).
M23 deleted (laser off must be followed by an axis movement).
G00 replaced with G00 M10P1 (turns laser off prior to rapid moves).
% added at end of file (all files must end with a Carriage Return and a null character forces the CR).

Havenít actually cut any yet but this was laser drawn at low power on a spoil board just to verify the code.

You have indeed produced an excellent piece of software my friend.

Tweakie.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Peter Dow on December 25, 2016, 10:15:32 AM
Hi Peter,

Thank you for posting the link your free online CAD/CAM software which looks most interesting.
Hi Tweakie. Nice to meet you and your interest is most welcome.


I think there are perhaps one or two changes which may need to be made to make it more Mach3 / Mach4 friendly and I will post more details once I have tested the generated code on my machine.

Tweakie.
Definitely changes are needed to offer full compatibility with Mach controllers but your helpful reply has sparked off some interest in me in developing such a compatibility.

Couldnít resist trying this before meeting friends for lunch.
Friends in real life? Lucky you! Mine seem to be all on line. Otherwise I suppose I might be spending Christmas day with them instead of with my PC, wishing everyone on the internet "Happy Christmas"!

I had to make a few changes (some essential & some desirable) to the generated Gcode file to make it compatible with Mach3 Laser use and these were as follows:-

M00 deleted (it cannot share the same line as another command in the same modal group (M23) and it is not really necessary).
I've made that change to my webpage - to the BASIC code option only - the MACRO is a whole other can of worms to fix which I will need to take time over.

There was no particular reason to put both M commands on the same line but CNC Simulator Pro didn't seem to mind.

G4 P100 deleted (a plasma start delay is not necessary for CO2 laser).
I've left that in for now. Are you sure that even for thick sheets the CO2 laser doesn't ever need some dwell time to get a cut started? 

G91.1 added (to ensure Incremental Arcs mode).
I've put that in. Incremental IJ values for arcs seems to be the default on CNC Simulator Pro.

G21 added (to ensure operation in metric units).
I've added that.

F600 added at start of file (a feed-rate must be specified for feed-rate moves).
I've not done that yet on the webpage. It is easy enough to add manually meanwhile. Since feed-rate could be different for different jobs, it probably warrants an input option for feed-rate on my webpage.

M22 replaced with M11P1 (laser on).
M23 deleted (laser off must be followed by an axis movement).
G00 replaced with G00 M10P1 (turns laser off prior to rapid moves).
% added at end of file (all files must end with a Carriage Return and a null character forces the CR).
Not done any of those yet. I was happy enough for this initial reply to you just to get the toolpath displaying correctly when I load up the gcode, see attached image.

I was pleased to get it working at all because I am running windows 8.1 - on a 64-bit machine and Mach3 is not supposed to work here. There is a windows version compatibility troubleshooter which I used and maybe that made all the difference?

Havenít actually cut any yet but this was laser drawn at low power on a spoil board just to verify the code.
Very nice. I'd like to post your laser drawing elsewhere as proof of concept of my webpage if that's OK?

You have indeed produced an excellent piece of software my friend.

Tweakie.
That's kind of you to say so Tweakie, especially after all the tedious editing to my code you must have had to do to allow it to draw 29 tiles. Ideally, I'd like to develop the software so that it generates code that can work without (a lot of) additional editing.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Tweakie.CNC on December 26, 2016, 03:48:42 AM
Hi Peter,

Your change to the M23 position in the generated code is good and makes the editing easier - the M10P1/M11P1 commands I use are specific to Mach3 ( http://hobbycncart.com/publ/cikkek/mach3_temaju_cikkek/switching_a_laser_under_mach_control/8-1-0-29 )
I had to remove an M00 (not quite sure why it is there) and add the % character to the end of file and (because I am using a laser) remove the dwell commands but the editing is quick and easy to do and your code works extremely well.

Mach3 will run just fine on your 64 bit machine it is just the parallel port drivers which donít work.

You are welcome to use my posted pictures (if I had known, I would have used a clean piece of stock).  :D


Tweakie.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Peter Dow on December 27, 2016, 06:59:04 PM
Hi Peter,

Your change to the M23 position in the generated code is good and makes the editing easier - the M10P1/M11P1 commands I use are specific to Mach3 ( http://hobbycncart.com/publ/cikkek/mach3_temaju_cikkek/switching_a_laser_under_mach_control/8-1-0-29 )
I had to remove an M00 (not quite sure why it is there) and add the % character to the end of file and (because I am using a laser) remove the dwell commands but the editing is quick and easy to do and your code works extremely well.
I've added another line of inputs at the foot of my webpage to allow for those changes to be made (please see post#17 for links).

With these selections of inputs ...

Feed-rate - 600
Cutting on - M11P1
Dwell -
Cutting off -
Fast traverse - G00 M10P1
Optional stops -
End of file - %

and other options
X,Y ticked (which is the default)
Other defaults, apart from -

Simulator? unticked
(...)? unticked
#Rows - 1
#Tiles per row - 1

... my webpage generates the following gcode -

Code:
G21
G91.1
F600
G00 M10P1 X88.82 Y317.50
M11P1
G03 X76.17 Y317.50 I-6.33 J0.00
G03 X88.82 Y317.50 I6.33 J0.00

G00 M10P1 X101.13 Y345.00
M11P1
G03 X95.63 Y345.00 I-2.75 J0.00
G03 X101.13 Y345.00 I2.75 J0.00

G00 M10P1 X101.13 Y290.00
M11P1
G03 X95.63 Y290.00 I-2.75 J0.00
G03 X101.13 Y290.00 I2.75 J0.00

G00 M10P1 X53.50 Y317.50
M11P1
G03 X48.00 Y317.50 I-2.75 J0.00
G03 X53.50 Y317.50 I2.75 J0.00

G00 M10P1 X34.87 Y345.00
M11P1
G01 X34.87 Y338.56
G03 X39.58 Y334.17 I4.40 J0.00
G03 X89.52 Y363.00 I-4.71 J65.83
G03 X88.08 Y369.28 I-3.64 J2.47
G01 X82.50 Y372.50
G01 X82.50 Y378.94
G02 X87.21 Y383.33 I4.40 J0.00
G02 X137.15 Y354.50 I-4.71 J-65.83
G02 X135.71 Y348.22 I-3.64 J-2.47
G01 X130.13 Y345.00
G01 X124.55 Y348.22
G03 X118.39 Y346.33 I-2.20 J-3.81
G03 X118.39 Y288.67 I59.37 J-28.83
G03 X124.55 Y286.78 I3.96 J1.92
G01 X130.13 Y290.00
G01 X135.71 Y286.78
G02 X137.15 Y280.50 I-2.20 J-3.81
G02 X87.21 Y251.67 I-54.65 J37.00
G02 X82.50 Y256.06 I-0.31 J4.39
G01 X82.50 Y262.50
G01 X88.08 Y265.72
G03 X89.52 Y272.00 I-2.20 J3.81
G03 X39.58 Y300.83 I-54.65 J-37.00
G03 X34.87 Y296.44 I-0.31 J-4.39
G01 X34.87 Y290.00
G01 X29.29 Y286.78
G02 X23.13 Y288.67 I-2.20 J3.81
G02 X23.13 Y346.33 I59.37 J28.83
G02 X29.29 Y348.22 I3.96 J-1.92
G01 X34.87 Y345.00

G00 M10P1 X0.00 Y400.00
M30
%

However, I have no way of testing to see if that gcode, as is, will control a mach laser controller OK or not.  ???

Mach3 will run just fine on your 64 bit machine it is just the parallel port drivers which donít work.
Well Mach3 draws the toolpath OK when I load up the gcode file but beyond that, without a CNC machine to test the gcode on, "running fine" and not "running fine" are hard for me to tell apart.

You are welcome to use my posted pictures (if I had known, I would have used a clean piece of stock).  :D
Oh I love your Christmas trispokedovetiles jigsaw puzzle.  ;D
Jigsaw puzzles don't have holes in the pieces though. :-\
If one sets the centre and spokes holes diameter to "0" % there will be no holes cut.  

I've created a Gallery webpage featuring your photos. Those photos will really help to prove my concept so thanks very much for your help Tweakie!  ;D


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Tweakie.CNC on December 28, 2016, 02:50:23 AM
Hi Peter,

Excellent work sir, your generated Gcode works just fine without any editing at all.

Tweakie.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Peter Dow on December 28, 2016, 07:54:16 AM
Hi Peter,

Excellent work sir, your generated Gcode works just fine without any editing at all.

Tweakie.

Ah progress!  8)

Now I wonder if it is possible to simplify my inputs, as follows?

Cutting off - M10P1
Fast traverse - G00


in other words substituting M10P1 for M23 and leaving G00 as is.

giving this gcode -

Code:
G21
G91.1
F600
G00 X88.82 Y317.50
M11P1
G03 X76.17 Y317.50 I-6.33 J0.00
G03 X88.82 Y317.50 I6.33 J0.00
M10P1
G00 X101.13 Y345.00
M11P1
G03 X95.63 Y345.00 I-2.75 J0.00
G03 X101.13 Y345.00 I2.75 J0.00
M10P1
G00 X101.13 Y290.00
M11P1
G03 X95.63 Y290.00 I-2.75 J0.00
G03 X101.13 Y290.00 I2.75 J0.00
M10P1
G00 X53.50 Y317.50
M11P1
G03 X48.00 Y317.50 I-2.75 J0.00
G03 X53.50 Y317.50 I2.75 J0.00
M10P1
G00 X34.87 Y345.00
M11P1
G01 X34.87 Y338.56
G03 X39.58 Y334.17 I4.40 J0.00
G03 X89.52 Y363.00 I-4.71 J65.83
G03 X88.08 Y369.28 I-3.64 J2.47
G01 X82.50 Y372.50
G01 X82.50 Y378.94
G02 X87.21 Y383.33 I4.40 J0.00
G02 X137.15 Y354.50 I-4.71 J-65.83
G02 X135.71 Y348.22 I-3.64 J-2.47
G01 X130.13 Y345.00
G01 X124.55 Y348.22
G03 X118.39 Y346.33 I-2.20 J-3.81
G03 X118.39 Y288.67 I59.37 J-28.83
G03 X124.55 Y286.78 I3.96 J1.92
G01 X130.13 Y290.00
G01 X135.71 Y286.78
G02 X137.15 Y280.50 I-2.20 J-3.81
G02 X87.21 Y251.67 I-54.65 J37.00
G02 X82.50 Y256.06 I-0.31 J4.39
G01 X82.50 Y262.50
G01 X88.08 Y265.72
G03 X89.52 Y272.00 I-2.20 J3.81
G03 X39.58 Y300.83 I-54.65 J-37.00
G03 X34.87 Y296.44 I-0.31 J-4.39
G01 X34.87 Y290.00
G01 X29.29 Y286.78
G02 X23.13 Y288.67 I-2.20 J3.81
G02 X23.13 Y346.33 I59.37 J28.83
G02 X29.29 Y348.22 I3.96 J-1.92
G01 X34.87 Y345.00
M10P1
G00 X0.00 Y400.00
M30
%

It seems to me that your method ...

M23 deleted (laser off must be followed by an axis movement).
G00 replaced with G00 M10P1 (turns laser off prior to rapid moves).

may be unnecessarily complicated?


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Tweakie.CNC on December 28, 2016, 08:01:43 AM
Quote
Now I wonder if it is possible to simplify my inputs, as follows?

Cutting off - M10P1
Fast traverse - G00

in other words substituting M10P1 for M23 and leaving G00 as is.



Indeed, that works exactly the same as the previous code.

Tweakie.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Ya-Nvr-No on December 28, 2016, 08:10:01 AM
I did a quick test in Auggie's Simulator to see if it would run.

notice I removed the start and stop of the laser control as Auggie takes care of it with movement.

Does need a provision for adding Mcodes for my Air Blow On/Off Mcodes M103/M104

be an added bonus if it recognized "\n" the end of line command, so we could input multiple commands example: M104\n%



Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Tweakie.CNC on January 22, 2017, 03:34:04 AM
Still thinking about this design for use as a jigsaw puzzleÖ

The puzzle would need to be round or hexagonal in shape to provide the maximum number of identical pieces but assuming the puzzleís picture was printed both sides then each piece could have just one of 6 x the number of complete dovetiles as a possible position.

Just taking a snapshot of one dovetile bounded by a circle perhaps illustrates the possibility.

Tweakie.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Jammerm on June 25, 2017, 03:16:36 PM
I'm trying to cut these with a .0312" router bit and am having trouble with the fit up. The pieces are loose an not fitting tight. I've tried to offset the cut and it's worse. I guess I don't quite understand the way offsets work. I also have some new 1mm bits I could try out. I guess they are about .0394".


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Tweakie.CNC on June 26, 2017, 12:48:22 AM
Hi Jammerm,

If itís any help, here is the CAD/CAM generated toolpath (which includes the tool  radius offset) to use with a 1mm diameter cutter.
The datum is the centre, material thickness 1.5mm and overall the dovetile is approx. 50mm diameter.

Tweakie.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Jammerm on June 27, 2017, 10:43:03 AM
Thanks Tweakie, I give it a shot. I suppose this would all change if I increased or decreased the size?


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Tweakie.CNC on June 28, 2017, 12:46:09 AM
Quote
I suppose this would all change if I increased or decreased the size?

Yes it would.

tweakie.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Jammerm on June 28, 2017, 08:20:10 AM
50 mm is actually a good size. I want to make some simple puzzles for the grandkids, maybe 10 or 12 pieces. They can put it together right or go a little Picasso. :D


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Jammerm on June 29, 2017, 10:55:43 AM
I did try to go to this fellows website but I think it's been hacked. He had a tutorial for routing the parts. All I got was a phishing scam.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Peter Dow on June 29, 2017, 11:08:04 AM
Quote
I did try to go to this fellows website but I think it's been hacked. He had a tutorial for routing the parts. All I got was a phishing scam.
Sorry about the dead-links.
 
You are the first person who has complained (about the missing trispokedovetiles pages) even though I lost my website hosting in January. I was not "hacked" but the gcehosting administrator seems to have gone out of business and the hosting company he was using (godaddy who are responsible for any scams) is serving various spurious adverts whenever anyone clicks one of my old links.

I have got the following pages back on-line with a different hosting company now so try these links.

Trispokedovetiles: Three-spoke dovetailing tiles by Peter Dow (http://scot.tk/trispokedovetiles/trispokedovetiles.htm)

Trispokedovetiles: CNC code to cut tiles by Peter Dow (http://scot.tk/trispokedovetiles/trispokedovetiles-CNC.htm)   

Trispokedovetiles Gallery (http://scot.tk/trispokedovetiles/trispokedovetiles_gallery.htm)


I can't edit my earlier posts to correct the old links, sorry.

I've not done anything with this project since January.



Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Jammerm on June 29, 2017, 05:43:33 PM
Well, thank you Mr. Dow. I did not mean cause problems, I just hoped someone would take off the earlier links. The last one I clicked on nearly shut down my computer. A nasty Trojan, I think I caught it before any damage. No ransom demands yet anyway.
I just like these interlocking puzzles and have been trying to cut some. I have tried some that were fish or lizards, I can't remember what these are called. And,I'm not very good at code or CAD.
Thank you for these new links and I would warn everyone of the old links.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Tweakie.CNC on June 30, 2017, 01:15:35 AM
Hi guys,

I have removed the dead / hacked links from this thread.

Tweakie.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Jammerm on June 30, 2017, 10:24:24 AM
Thanks Tweakie. The word I was looking for is Tessellation or Escher Tessellations. A lot of interlocking puzzles that would be fun to cut out.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Jammerm on July 01, 2017, 04:25:09 PM
Tweakie, the code you sent worked great. The pieces fit together very well. I'll get a few more cut and post some pictures.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Tweakie.CNC on July 02, 2017, 12:21:28 AM
Hi Jammerm,

Pleased to hear that they fit OK, looking forward to the pictures.

Tweakie.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Jammerm on July 06, 2017, 09:18:54 AM
I'm having some trouble with the cut. I'm using 3mm plywood from the hobby shop. It must have hard spots or knots on the inside layer. I've broken 3 bits. I'll have to go back to the store and get some thin basswood.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Peter Dow on July 06, 2017, 10:30:15 AM
I'm having some trouble with the cut. I'm using 3mm plywood from the hobby shop. It must have hard spots or knots on the inside layer. I've broken 3 bits. I'll have to go back to the store and get some thin basswood.


I'm trying to cut these with a .0312" router bit and am having trouble with the fit up. The pieces are loose an not fitting tight. I've tried to offset the cut and it's worse. I guess I don't quite understand the way offsets work. I also have some new 1mm bits I could try out. I guess they are about .0394".

I've never used a CNC router myself but I've done a fair bit of DIY in my time and have broken many a 1mm drill bit. Even 2mm drill bits are quite easy to break unless you are careful.

I suggest that rather than break some more 1mm bits you use a thicker router bit. Maybe about diameter 3mm or 1/8th inch - 0.125" maybe.

My webpage - (which is taking a few minutes to load up because the free hosting server is overloaded)
http://scot.tk/trispokedovetiles/trispokedovetiles-CNC.htm

(Once you get it loaded up it might be an idea to "save page as.." and run the webpage locally in future)

Anyway that "Trispokedovetiles: CNC code to cut tiles" webpage has got an option to generate CNC code for router cutting for any size of router bit, though you must input the dimensions in mm.






Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Peter Dow on July 06, 2017, 11:01:31 AM
Anyway that "Trispokedovetiles: CNC code to cut tiles" webpage has got an option to generate CNC code for router cutting for any size of router bit, though you must input the dimensions in mm.
Correction. You must input the size of the HEXAGON in mm and all other dimensions such as tool path diameter as a percentage of the HEXAGON size.
(https://s25.postimg.org/vzvr2lszz/trispokedovetiles_hexagon.jpg)

Adjust TOOL PATH diameter equal to the rotary tool diameter minus the tolerance.

So if your HEXAGON was say 50mm then your "tool" percentage for a 3mm diameter router bit with say 0.2mm tolerance would be
Tool path diameter = 3mm - 0.2 mm = 2.8mm
2.8/50 x 100 = 5.6%




Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Peter Dow on July 06, 2017, 01:33:52 PM
If you find a problem with scot.tk pages, like this

https://scot.tk/trispokedovetiles/trispokedovetiles-CNC.htm

(while I try to switch web hosting services to a better host) use instead this

https://scottishnationalstandardbearer.000webhostapp.com/trispokedovetiles/trispokedovetiles-CNC.htm (even though that's the old dead slow host that's not working well)

Or try this one

http://peterdow.scienceontheweb.net/trispokedovetiles/trispokedovetiles-CNC.htm

Look sorry about this lack of service at the moment but there's a lot of mucking about with free web hosts until you find something that works.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Jammerm on July 06, 2017, 05:52:47 PM
Thanks Peter, I have the page and have been playing with it. I bought the 1mm bits to cut wax patterns for lost wax castings, so I don't want to break anymore.


Title: Re: Trispokedovetiles: CNC code to cut tiles
Post by: Peter Dow on July 06, 2017, 06:25:34 PM
OK. Keep me posted.