Hello Guest it is June 29, 2022, 03:05:33 PM

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - lthall

Pages: 1
Thanks Art!

Thanks for your reply Art.

You are correct that my formulae makes a couple of assumptions.
1. Accelerations are equal in all axis,
2. Mach3 only uses acceleration limiting and does not do jerk limiting. This should result in a circular arc (or near circular depending on the precise algorithm used) joining the two lines that cuts the corner.
3. This formulae is the worst case where the feedrate is as high as possible given the CV settings for that intersection.

I assume based on your statement "except in certain circumstances" we are on the same page given these constraints.

I have seen similar statements made numerous times when talking about the CV mode but general statements don't help optimise the surface finish or surface tolerance for a given machine. In some circumstances these settings will break tool bits as the CV setting cuts the corner and suddenly increases the chip load. I don't believe this is acceptable or professional and I would like to provide Mach3 (maybe 4 too) users with a more precise way of characterising these tradeoffs.

For example, assuming my understanding is correct. Increasing the "Stop CV on angles" from 5 to 45 degrees increases the error from ~50um to ~500um (~1mm at 90 degrees). This is the difference between an acceptable finish and a junked part or broken bit. Correcting the problem using feedrate as you suggest can quickly turn a 3 hour job into a 20 hour job (personal experience here).

Ideally Mach 4 (I understand it is too late for Mach 3) would not use "CV Dist Tolerance" and  "Stop CV on angles" but instead use a value for maximum path deviation and adjust the "CV Dist Tolerance" depending on the angle of the corner and acceleration settings on each axis.

Yeh, I hope one of the developers can confirm my calculation or at least my understanding.

Hi all,

I thought this would be a helpful post as it has been messing with my CNC quality, time, and my sanity.

I am doing large 3D carving of aircraft fuselages. My last job took approximately 20 hours on the machine to finish when it should have taken closer to 6 or 8. The reason for this was the machine was effectively running in "Exact Stop" mode because of my settings. The reason for this was my "CV Dist Tolerance" setting of 0.1mm combined with mildly conservative acceleration settings of 300mm/s/s.

The reason I set the "CV Dist Tolerance" to 0.1mm was because I wanted to ensure the surface tolerance would not be worse than 0.1mm and even this was larger than I would like. This resulted in the characteristic jerky start-stop-start motion and a very low average speed. The other annoying side effect is the delay where the tool slows to almost a stop causes a small indentation that is a lot of work to remove with the sandpaper afterwards.

My mistake was my understanding of "CV Dist Tolerance". I thought it was the maximum distance from the desired path that Mach3 would go to maximise the feed rate while limiting the acceleration to the requested values. This does not appear to be correct and I was alerted to this by the jerky motion on lines that differ by only a very small angle or the performance over large arcs made up of multiple lines.

This is the part of the explanation I missed when I read through the "Mach-3CVsettings V2.doc" : "This is the distance from the end of the line that it is cutting to where the arc starts rounding" The problem with using this definition is it results in a variable surface following tolerance. For very low angle corners the error is very small but for a 90 degree angel the error can be extremely large.

So my question was, how do I maintain feedrate and small errors and the answer is "Stop CV on angles". This variable drops back to "Exact Stop" mode if the angle is greater than this value from a straight line.

The surface tolerance can be calculated using this formulae:

error = dist/cosd((180-theta)/2) - dist*tand((180-theta)/2)

where dist is "CV Dist Tolerance" and theta is "Stop CV on angles".

So what this does is ensure that for small angles we use Constant Velocity mode where the maximum error will be small despite a large "CV Dist Tolerance". Then any time we approach a line segment with anything other than a small angle we drop back to "Exact Stop" mode.

My settings are 2.5mm for "CV Dist Tolerance" and 5 degrees for "Stop CV on angles". This results in fast smooth curves on my machine and a surface tolerance of almost 0.05mm and I am happy for the machien to come to a complete stop for any angles larger than 5 degrees.

I hope this helps as I wasted a lot of machining time before I sat down and worked this out.

Pages: 1