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

Reply via email to