Hello Guest it is April 19, 2024, 02:39:03 AM

Author Topic: LazyCam Pro 2.47 Errors  (Read 5091 times)

0 Members and 1 Guest are viewing this topic.

LazyCam Pro 2.47 Errors
« on: October 16, 2007, 05:42:59 AM »
Using the latest version of LazyCam (2.47) I have discovered the following error conditions.  Since I was unable to find a
list of known bugs, I will post all of the errors that I noticed within the last day or so while trying to generate pocketing
paths.

1. If the outermost feature has an entity in the lower left corner aligned with the origin, it isn't possible the place an entry
point at that spot.  The workaround is to temporarily move all of the graphics such that the origin stands alone, and place
the entry point (arrow head).  Resetting the origin after this aligns the graphics with the origin again.

2. When moving a chain to a new layer, the default layer name is one higher than it should be. e.g. If the highest existing
layer number is N, the default layer name is always N+2 instead of N+1. Thus, using the default layer names results in Layer
1 being labeled "Layer 2", Layer 2 being labeled "Layer 3", etc.

3. The "optimise" function always horribly complicates my tool paths with a huge number of diagonal rapid moves. It is not
obvious to me what this function is supposed to be optimizing.  Repeated applications of "optimise" alters the rapids but it
does not significantly improve the huge number of (unnecessary) rapids. The cause of so many rapids is that the entity paths
are not aligned in the same direction, causing the number of chains to approximately match the number of entities.

4. I have some intricate tool paths that LazyCam simply can't handle in any sensible way. As an example, a design that should
have only four contour paths (i.e. 4 chains) turns out to have over 250 chains. It has been impossible to completely fix this by
altering the tolerance before reading the DXF file or even by manually altering the ordering and direction of each chain. Chains
oftentimes have segments that are in conflicting directions.  This causes a huge number of unnecessary rapids. Applying any
pocketing with islands to this pattern produces junk tool paths.

5. I have seen where four symmetrically placed milled holes (one per quadrant) produces valid pocketing paths for the two
holes on the right (quadrants 1 and 4) and nonsense for the holes on the left (quadrants 2 and 3).

JPEG images showing the most severe of these problems:

SevenLayers.jpg       All 7 layers shown with rapids turned off (they would otherwise obscure the contours).  Note
                              that the 5 innermost contours work fine, with one chain per contour and when pocketing with
                              islands.  Only the second from outermost contour has problems.
Layer01Rapids.jpg     Only the outermost 2 contours are shown and the rapids are shown.
Layer01Clean.jpg      Only the outermost 2 contours are shown and a single "Clean" operation has been performed.
                              LazyCam can not handle this correctly since it can never reduce the number of extraneous rapids
                              below what you see.  Repeated applications of "Clean" only makes it worse than this.  Attempting
                              to perform pocketing with islands between the 2 contours produces junk.  Likewise, attempting to
                              pocket the innermost contour produces junk tool paths.
Layer01Optimize.jpg  Only the outermost 2 contours are shown and a single "Clean" operation followed by an "optimise"
                              have been performed.  Note the strong diagonalization of the extraneous rapids.  Adjacent entities
                              are not being chained together.

I tried attaching the named files but I get a Can't Find File / Invalid Path error message. Apparently the
attachment Browse function doesn't provide sufficient path information to include the attachments.
How do I get past this?

Offline Chaoticone

*
  • *
  •  5,624 5,624
  • Precision Chaos
    • View Profile
Re: LazyCam Pro 2.47 Errors
« Reply #1 on: October 16, 2007, 06:27:36 AM »
They are doing a swap and fixing bugs as they pop up. This should straighten out soon.

Brett
;D If you could see the things I have in my head, you would be laughing too. ;D

My guard dog is not what you need to worry about!
Re: LazyCam Pro 2.47 Errors
« Reply #2 on: October 17, 2007, 07:31:10 PM »
Zetopan,

I agree with all you've noted. Often times, one must place origin again. Moving chains causes numbering problems. Optimize does not really optimize. Complicated curves just are not for LazyCAM yet. Pocketing of holes can generate bad toolpath. All is true.

My question is: Do you do much pocketing and offsetting of your drawings? I can't get 2.47 to pocket or offset correctly. I generate crazy toolpath that isn't usable. The 2.02 version of LazyCAM does work better for me, but maybe I didn't try to use 2.47 hard enough. In the old version, I can find work-arounds for most difficulties. If you can get usable offset and pocket paths, I'll give 2.47 another shot.

Thanks much,
Ergoman

Offline Chip

*
  • *
  •  2,055 2,055
  • Gainesville Florida USA
    • View Profile
Re: LazyCam Pro 2.47 Errors
« Reply #3 on: October 17, 2007, 11:46:33 PM »
Hi, All

Download MachR2.55, newer LC in there LC2.55 or Download LazyCam 2.49 it's really 2.55 now.

There are still issues with arc's, rapids dashed lines though it seems better.

When offsetting and pocketing, Zoom in to the drawing on one of the red lines, There's  an issue with the sensitivity in the prosessing rutine.

Art has them listed for some tweekiing

Hope this Helps, Chip.   
Re: LazyCam Pro 2.47 Errors
« Reply #4 on: October 18, 2007, 08:38:09 AM »
Greetings everybody,

I've tried the new LazyCAM 2.55. It is good! Thank you Art! Thank you Brian! You gentlemen are getting close to a lockdown here. I've advocated using LazyCAM 2.02 in the past. No more. Now it is LazyCAM 2.55, a hard working program that isn't lazy at all. Excellent work!

I found some minor problems with pocketing. Sometimes LazyCAM wanted to pocket around a shape instead of inside it. I worked around that problem by first offsetting the shape and then pocketing it. LazyCAM didn't like my lines, but had no problems with its own. I have no problem with that.

As for all the rapids, I can move cut starts and optimize the files I use the most. I guess extra rapids are a big issue if you are only cutting one of a thing. For the complex shapes I am cutting repeatedly, I have to re order everything anyway. I want to always cut the profile so I make sure that I am on wood, before I cut detailed pockets and islands.

Great work programmers! Great work ArtSoft Controls! Happy cutting everybody!
 



Re: LazyCam Pro 2.47 Errors
« Reply #5 on: October 19, 2007, 04:04:22 PM »
Ergoman:

"My question is: Do you do much pocketing and offsetting of your drawings?
 ... If you can get usable offset and pocket paths, I'll give 2.47 another shot."

I have been successfully using pocketing but it really requires jumping through multiple hoops to get reliable G-code output.
I have created a DXF design with multiple pockets within pockets that (ideally) requires 13 total chains.  LazyCam 2.47 simply
can not handle this in any reasonable way. Note that LazyCam 2.55 works FAR better on this design, but it still can't handle
it correctly. Using "Clean: a large number of times results in LazyCam toggling between perhaps 3 unique results, 2 of which
are completely worthless (diagonally located distal segments are being stitched together rather than proximal segments) and
the 3rd result is much better - but still totally useless. To get LazyCam 2.47 (and 2.55) to handle this design I split it apart into
7 DXF files, with only immediately adjacent chains being in each file.  This reduces the complexity to only a single outer and
1 to 4 immediately inner chains, with no more than a single level of chain nesting in each file.

Doing this and then pocketing with LazyCam resulted in the largest file being 2MB in size with about 60,000 lines of G-code.
The next largest file had about 40,000 lines of G-code and the remaining 5 files were much smaller at a few thousand lines
each.

However, while the resulting LazyCam pocketing for each of the 7 patterns looked fine within LazyCam, importing them into
Mach 3 showed that there were numerous circular path artifacts that were not visible in LazyCam. These extra circular paths
would destroy the resulting machined shape, since they cut channels that were not in the design.  The nature of these extra
circular paths was identical to when you manually move the starting point of a circular arc within LazyCam such that the two
endpoints of the arc cross over.  i.e. A small circular arc of +15 degrees turns into a circular arc of -345 degrees due to the
start point crossing over the end point and the arc gets generated backwards relative to the original intent.

To locate these few dozen extra circular arcs within the G-code file I edited the G-code text while moving through the G-code
with Mach 3 by using the scrolling button capability on the right side of the Mach 3 G-code display window, while examining
the 3D plot. As you step through each G-code line the current segment lights up white in the 3D display so that you can fairly
quickly scroll through (in this case up to 60,000 lines) to get near the offending path and then single step by using the up and
down arrows on the scroll bar until the bad path turns white. Reading the G-code line number allows you to go to that line with
the editor and then you need to perform a search on the line contents (ignoring the embedded line number) to delete all of the
occurrences of that line.  You will get multiple occurrences of that line whenever the pocketing requires more than one pass to
get to the final depth.

I also noticed that there were a HUGE number of unnecessary Z axis moves which greatly slows down the machining.  I was
able to remove these by manually editing the LazyCam G-code output file. Believe it of not this alone reduced the machining
time by more than a factor of 2X.

So, by doing all of the above I was able to generate and then manually clean up and get reliable G-code files for this design.
My testing indicates that the Clean function is using a deeply flawed algorithm for stitching together segments (entities) to
form a chain.  It usually takes one or two dozen successive “Clean” operations to get to the best, but not necessarily correct,
chain formations.  Correct chains would be doable with only a single “Clean” operation with a robust algorithm.  The fact that
Clean toggles between better and worse chains and converges very slowly to most often an incorrect result indicates that it
needs serious work.  I say this as someone who does specialized image processing involving data files exceeding 100 GB
in size.

If any of the LazyCam developers want a copy of this DXF test file, I am willing to email it - since it apparently represents
something that exposes a number of LazyCam flaws.  Likewise (since I have a vested interest) I will provide free algorithm
support to any of the developers for making LazyCam more robust. It is currently a good start, but I would personally call
it as being in alpha phase rather than beta phase.

Additional useful LazyCam features (which should not even be considered until it is made much more robust) would include:
1.   Using the same mouse/keyboard keys for 3D display zooming, panning, and rotation that Mach 3 uses.  Currently, it
         has some differences.
2.   Recognizing that some of use use trackballs instead of mice. The “inverted mouse” trackball makes many operations
         easier but some of the simultaneous mouse button pushes are made more difficult because you may not have free
         digits left over to move the ball.
3.   Generating an estimated total machining time for the operations being performed.  This should be very easy to do
         since LazyCam knows all of the paths and their respective velocities.