Contouring mode: G64 P- ----------------------- The P-number for G64 P- is a distance. This enables the "naive cam detector" and enables blending with a tolerance.
Naive cam detector ================== Successive G1 moves that involve only the XYZ axes that deviate less than P- from a straight line are merged into a single straight line. This merged movement replaces the individual G1 movements for the purposes of blending with tolerance. Blending with tolerance ======================= Between successive movements, the controlled point will pass no more than P- from the actual endpoints of the movements. The controlled point will touch at least one point on each movement. The machine will never move at such a speed that it cannot come to an exact stop at the end of the current movement (or next movement, if you pause when blending has already started) Contouring mode: G64 P0 ----------------------- If you program G64 P0, or G64 without a P-value specified, then you get just blending. The naive cam detector is not enabled. Blending without tolerance ========================== The controlled point will touch each specified movement at at least one point. The machine will never move at such a speed that it cannot come to an exact stop at the end of the current movement (or next movement, if you pause when blending has already started). The distance from the end point of the move is as large as it needs to be to keep up the best contouring feed. Make sure moves are "long enough" --------------------------------- Principally because of the rule that "the machine will never move at such a speed that it cannot come to a complete stop at the end of the current movement", there is a minimum movement length that will allow the machine to keep up a requested feed rate with a given acceleration setting. The acceleration and deceleration phase each use half the inifile MAX_ACCELERATION. In a blend that is an exact reversal, this causes the total axis acceleration to equal the inifile MAX_ACCELERATION. In other cases, the actual machine acceleration is somewhat less than the inifile acceleration To keep up feed rate, the move must be longer than the distance it takes to accelerate from 0 to the desired feed rate and then stop again. Using A as 1/2 the inifile MAX_ACCELERATION and F as the feed rate *in units per second*, the acceleration time is ta = F/A and the acceleration distance is da = (1/2) * F * ta the deceleration time and distance are the same, making the critical distance d = da + dd = 2*da = F^2 / A. For example, for a feed rate of 1 inch per second and an acceleration of 10 inch/sec^2, the critical distance is 1^2 / 10 = .1 inch. For a feed rate of .5 inch per second, the critical distance is .5^2 / 10 = .025 inch. Jeff ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users