Hello Guest it is March 28, 2024, 05:35:53 AM

Author Topic: Trispokedovetiles: CNC code to cut tiles  (Read 12023 times)

0 Members and 1 Guest are viewing this topic.

Trispokedovetiles: CNC code to cut tiles
« 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  ...
« Last Edit: June 30, 2017, 02:12:29 AM by Tweakie.CNC »

Offline Tweakie.CNC

*
  • *
  •  9,196 9,196
  • Super Kitty
    • View Profile
Re: Trispokedovetiles: CNC code to cut tiles
« Reply #1 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.
« Last Edit: December 24, 2016, 06:13:05 AM by Tweakie.CNC »
PEACE

Offline Tweakie.CNC

*
  • *
  •  9,196 9,196
  • Super Kitty
    • View Profile
Re: Trispokedovetiles: CNC code to cut tiles
« Reply #2 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.
PEACE
Re: Trispokedovetiles: CNC code to cut tiles
« Reply #3 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.

Offline Tweakie.CNC

*
  • *
  •  9,196 9,196
  • Super Kitty
    • View Profile
Re: Trispokedovetiles: CNC code to cut tiles
« Reply #4 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.
« Last Edit: December 27, 2016, 01:54:24 AM by Tweakie.CNC »
PEACE
Re: Trispokedovetiles: CNC code to cut tiles
« Reply #5 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: [Select]
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
« Last Edit: June 30, 2017, 02:19:03 AM by Tweakie.CNC »

Offline Tweakie.CNC

*
  • *
  •  9,196 9,196
  • Super Kitty
    • View Profile
Re: Trispokedovetiles: CNC code to cut tiles
« Reply #6 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.
PEACE
Re: Trispokedovetiles: CNC code to cut tiles
« Reply #7 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: [Select]
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?
« Last Edit: December 28, 2016, 07:58:42 AM by Peter Dow »

Offline Tweakie.CNC

*
  • *
  •  9,196 9,196
  • Super Kitty
    • View Profile
Re: Trispokedovetiles: CNC code to cut tiles
« Reply #8 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.
PEACE
Re: Trispokedovetiles: CNC code to cut tiles
« Reply #9 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%