Unfortunately a lot of CAM software doesn't do a great job of producing 
Gcode.

I was working with some very high end graphics art software used to make 
vinyl sign graphics and the Gcode code that they were outputting was 
simply horrendous.

When I asked why they were outputting line segments in the .001 to .003 
inch range they had no apologies..and felt to need to change it.  Some 
complicated sign cutouts would have more than 250,000 lines of gcode.   
Their solution was for me to create a filter program to remove the short 
segments with fitted arcs!
They didn't think they needed to fix their short segment issues since 
technically when the Gcode was run on a machine - slowly - the product 
created was correct as far as they were concerned.

Their software was priced over $25,000 per copy!   Crazy.

That was the end of that project.

The water jet machine I retrofitted was a Jet Edge 3 axis waterjet which 
was about 15 years old.   The original controls had been replaced 10 
years ago with an Allen Bradley 9 series control and when that began to 
fail we got the job of replacing the AB controls with
EMC2.    The machine is fed automatically via a conveyor.  The machine 
bed is actually a stainless steel chain conveyor so after the machine is 
done cutting, the chain conveyor moves the entire cut up sheet out of 
the waterjet to a downstream belt conveyor where the parts are removed 
from the scrap.   A new, un-cut sheet is conveyed into place and the 
machine automatically begins cutting the new sheet.

They love EMC2.   It runs faster than the AB 9 series and has the huge 
advantage of being PC based.   I replaced the existing AB servo drives 
with Automation Direct 1 KW brushless motors and drives.   We also 
replaced the ball screws and linear rails.  The control cabinet was 
gutted and all of the components were replaced.    All of the machine 
wiring on the frame was also replaced.  Other than the frame, the pump, 
and the carriage assembly, the machine is essentially all new.

It was an expensive retrofit but the customer has a virtually new 
machine now for less than 1/2 the price of a new replacement.

The customer is now considering having us put together two more waterjet 
machines from scratch.  Using EMC2 for the CNC control and using Jet 
Edge for the water pump system and water components.   The Jet Edge pump 
system is very robust.

The machine bed is about 5 feet x 9 feet in size but the machine has 4 
water jet nozzles on the carriage so it cuts 4 parts at once.   This is 
a high speed machine since it cuts softer materials like semi-rigid foam 
and they run very fine water jets in the .0005 inch range.    The cuts 
are extremely fine and look like they were made with a knife.    The 
machine cuts at speeds up to 1200 ipm on thinner materials.

Dave (Dave911 on the IRC)



They expected the CNC system to

On 8/20/2010 3:41 AM, Viesturs Lācis wrote:
> Hello, Dave!
>
> Thank You for Your insight! I totally agree that I should concentrate
> on the cad/cam process so that I eliminate the cause of the issue
> instead of fighting consequences...
> The thing is that I have to complete this pretty large order very
> quickly, so I thought that I could quickly resolve it in EMC. Seems
> like I will have to do it over again in the cam application, so it is
> going to be all-right.
>
> Out of curiosity and half-professional interest I would like to ask
> You to share some basic details about that waterjet machine that is
> running EMC. I have never heard about EMC on waterjet machines and I
> thought that I might be the first one doing this, but it turns out
> that it is not true :) Can You tell me, who originally produced that
> machine, how old is it and what is it's working envelope size? And is
> it 3 axis or 5 axis machine?
>
> Thank You in advance!
>
> Viesturs
>
> 2010/8/19 Dave<e...@dc9.tzo.com>:
>    
>> Viesturs,
>>
>> I think you need to work on the Cad to Cam to Gcode process. I put EMC2
>> on a production waterjet machine in June and it has been buzzing along
>> happily ever since.
>>
>> I had to convert about 80 existing Gcode programs so EMC2 could run the
>> code and I was amazed at some of the poor quality Gcode they had been
>> running, so I re-created many DXF files from Gcode via a DXF to Gcode
>> converter program,
>> put the DXFs into Autocad and then cleaned up heavily segmented dxfs by
>> using fitted arcs. I used Sheetcam to create the Gcode and that worked
>> out very nicely.
>>
>> Sheetcam has a definite learning curve but it is worth it. I couldn't
>> find anything that worked as well as Sheetcam for the waterjet.
>>
>> Lousy Gcode will drive you nuts no matter how smart EMC2 becomes.
>>
>> Dave (Dave911 on the IRC)
>>
>>
>>
>> On 8/19/2010 1:41 PM, Viesturs Lācis wrote:
>>      
>>> 2010/8/19 Chris Radek<ch...@timeguy.com>:
>>>
>>>        
>>>> Let me try to explain an example.  I really think the disconnect
>>>> between how I as a programmer think about it and how a user thinks
>>>> about it is our different understanding of what a "corner" is.  I
>>>> tried to explain this in my last message.
>>>>
>>>> Say you are cutting inside a bunch of square pockets.  If you use a
>>>> reasonable tool size for it the offset path is some smaller squares.
>>>> If you use a larger tool diameter, the offset path gets smaller.  At
>>>> some point, as you keep enlarging the tool, when the diameter of the
>>>> tool is larger than the side of the square, the offset path disappears
>>>> (it becomes a square with NEGATIVE side length).  At this point EMC
>>>> will give you an error because it can't make the tool follow inside
>>>> that path anymore.
>>>>
>>>> Note EMC doesn't know these pockets are squares.  But when it
>>>> calculates these endpoints generated by finding where the tool fits
>>>> inside the corner, and sees that they are connected by degenerate
>>>> lines, it errors.  (EMC considers two corners at a time because you
>>>> need to know two endpoints to make a compensated move.  These corners
>>>> are defined by the three nearby moves.  This is the extent of its
>>>> knowledge of your programmed motions as it moves along.)
>>>>
>>>> I understand you want it to keep going in some cases of degenerate
>>>> paths, and I do too.  But without knowing things it can't know (like
>>>> conceptually what the part looks like) it can't keep going without
>>>> guessing.  In your program that cuts a hundred square pockets, what
>>>> does it mean to keep going if the tool doesn't fit in them?
>>>>
>>>>          
>>> I think that I understand the explanation of programmer's point of
>>> view very well.
>>> So I have a question - how difficult is it to achieve following behavior:
>>> skip those lines of code in concave corner, which are smaller than
>>> tool, and continue, if there is any other G0 or G1/G2/G3 code to be
>>> executed.
>>> In Your example all the square pockets would be skipped and outside
>>> contour would be cut. In my example I would get, what I want.
>>>
>>> My idea, how to achieve this, is :
>>>
>>> 2010/8/19 Chris Radek<ch...@timeguy.com>:
>>>
>>>        
>>>> You are right - EMC does have handling for concave corners.  When two
>>>> moves come together to form a concave corner, EMC calculates where the
>>>> tool is tangent to both original moves and puts the offset corner
>>>> there.
>>>>
>>>>          
>>> If
>>> 1) tool is in situation, where it is a tangent to 2 lines - one, that
>>> has just been executed and the other - one that has not yet be done
>>>
>>> and
>>>
>>> 2) that "second tangent" line is not the next line in the queue
>>>
>>> then
>>> skip all the remaining G1/G2/G3 lines so that the line, which is
>>> tangent of the tool and which is not yet executed, is next in the
>>> queue and execution of the code is resumed from there.
>>>
>>> How hard is that from programmer's point of view?
>>>
>>> This would solve my problem that code consists of very small straight
>>> moves. I know that using some other CAM programm would solve the cause
>>> of the issue rather than trying to workaround the consequences like I
>>> am trying now...
>>>
>>> I understand that there might be other commands beside G1/G2/G3 and
>>> other special cases...
>>>
>>> Viesturs
>>>
>>> ------------------------------------------------------------------------------
>>> This SF.net email is sponsored by
>>>
>>> Make an app they can't live without
>>> Enter the BlackBerry Developer Challenge
>>> http://p.sf.net/sfu/RIM-dev2dev
>>> _______________________________________________
>>> Emc-users mailing list
>>> Emc-users@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/emc-users
>>>
>>>
>>>        
>>
>> ------------------------------------------------------------------------------
>> This SF.net email is sponsored by
>>
>> Make an app they can't live without
>> Enter the BlackBerry Developer Challenge
>> http://p.sf.net/sfu/RIM-dev2dev
>> _______________________________________________
>> Emc-users mailing list
>> Emc-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/emc-users
>>
>>      
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by
>
> Make an app they can't live without
> Enter the BlackBerry Developer Challenge
> http://p.sf.net/sfu/RIM-dev2dev
> _______________________________________________
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users
>    


------------------------------------------------------------------------------
This SF.net email is sponsored by 

Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev 
_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to