[Coco] George's CNC Machine (WAS: Something else)

Gene Heskett gene.heskett at verizon.net
Fri Sep 26 07:16:13 EDT 2008


On Friday 26 September 2008, George Ramsower wrote:
>>>> On Wednesday 24 September 2008, Chuck Youse wrote:
>>>>>Is it not possible to precompute the math?  I.e., do something akin to
>>>>>compilation - take the time up front to do all the calculations, before
>>>>>the CNC machine gets any commands at all?  Or does it require feedback
>>>>>from the machine?
>
> The math HAS to be done first, before the actual stepping occurs. However,
>the bottle neck is the little bit of math done in the routine that steps the
>motors. Keep in mind the stepping of the motors, the math and the program is
>all in B09. This program does EVERYTHING to step those motors.
>
>>>And Gene Heskett replied with this:
>>>> The output files used as cache would be quite large, and the bandwidth
>>>> from
>>>> the disk to the driver interface could still limit things.  The main
>>>> loop
>>>> in
>
><snip>
>
>>>> With steppers, there is no feedback to the program, so if the stepper
>>>> misses a
>>>> step, it doesn't know about it, and the part may well be wrecked if the
>>>> operator doesn't hear it.  Usually, if it misses a step, it will stop,
>>>> and
>>>> is
>>>> not able to accelerate enough to get back to speed, so its stalled, and
>>>> the
>>>> operator can't miss hearing that unless the spindle is screaming too
>>>> loud.
>
> Nah! The dremmel slows or stops turning(this I can hear) then the steppers
>start straining and finally, something breaks or bends. This only happens
>when I dive into a part too deep amd start cutting.
> This ends up with a restart. There wasn't much cutting done after a failure
>when the dremmel isn't spinning.
> However, the gentle way I do this(the coco is too slow!), there's not much
>chance that I could lose steps on any of the motors
> My problem is making mistakes that send the dremmel to the wrong place.
> The coco is so slow, it's difficult to bend or break things because of
>speed. It just makes the cut in the wrong direction and then the part is
>ruined. Not likely. I test with  paper and pen on the table to get the X and
>Y correct, then I work with the depth of the Z before I make an actual cut
>on the stock I intend to make a part from.
>
>We stay on top of the thing until we know it works!
>
>> And how many bits are you using per axis?  One simplification I would make
>> would be to through some money into a driver board, which needs only
>> direction and step, 2 bits to run one axis, so a single 8 bit wide port
>> can
>> run 4 axis's.  I don't think you could go wrong with the xylotex board,
>> which
>> among other things can be programmed for the number of steps it microsteps
>> to
>> make one whole step.
>
> Okay!
>
>  I'm glad you asked. I originally started with combining two axis on a
>single, eight bit latch. There are only four coils on each motor and two
>motors can be operated from one, eight bit port. The MATH to figure the bits
>takes time.
>  Having a seperate address for each stepper is faster.

Yes, since basic09 doesn't do the bit shifting required to make one port do it 
all.

> On using an external board to step the motors would save me the time it
>takes to keep track of which coil I'm on.
> This is just a fraction of the time it takes to do everything else. This
>fraction is so small, it's totally out of the question for improving speed.
>The coco is too darned busy doing everything else.
> I've thought of using TWO cocos to do this and I can't think of any way
>this would help much. Everything is too slow.
>
> So, I keep plugging away.
>
> Chug, chug, chug.
>
:)

>Git 'er DONE!
>
> Of course, machine code could help too. However, the motors and the dremmel
>couldn't handle it. This coco goes as fast as the dremmel is capable of
>going to cut metal except, when I'm drawing with pen and paper.
> More speed would be nice there. Perhaps engraving could use aome more
>speed.
> I've been Half stepping the motors fo allr this. I'm considering full steps
>tonight. This could speed things a little.
>
> The thing is, I"m not in that much of a hurry except, when I'm trying to
>get that "First Article"
>
> Soon, I'm going to ask for help with making lines that aren't vertical or
>horizonal.  I can't figure a way to get the XY starts and XY ends to work
>properly.
>
And that leads to the next question. How much table motion is a full step?

emc does this very nicely, and can draw a straight line at any angle to 
submicron accuracy, the accuracy of course helped by the drivers cards 
ability to do microstep by breaking each step into 8 increments by adjusting 
the actual current through the coils, done by chopper current regulation 
reference voltage diddling.

About the only way I can imagine is to increment the two (3?) axis's imaginary 
positions by the sin and cos (where both are normalized to the 0 to 1 scale) 
amount of a steps motion so each will be moved an imaginary amount that is 
the desired direction (like x gets moved .66 of a step, and y gets moved .33 
of a step for a 30 degree angle, then compare that to where you want it to be 
(this is going to need a lot of trig math calls=slow) and step that axis only 
that has accumulated a 1 step position error.  Save this new position for the 
next comparison, and go back to increment the imaginary position.  Repeat the 
comparisons, and step that motor which will get you closer to the desired 
position.  Sometimes it will step both, but the slower moving axis will get 
skipped some fraction of the time.  So you'll have two sets of variables, one 
set being the imaginary perfect line, the other set the actual position.  
When the differences are sufficient to equal a steps motion, step that motor 
in the direction to reduce the error.

I think you'll need a surveyor, it is going to be slow.  And I imagine you are 
seeing premature bit wear now because the motion isn't at a high enough rate 
to keep it cutting, and once the edge slides past the material w/o cutting, 
friction heat quickly destroys the cutting edge.  The dremel should probably 
be running as slow as it can just to keep the heat down.  The Machinist's 
Handbook has a chapter on this because it has a direct bearing on the costs 
of doing the machining.  The chip flying away is also carrying the huge 
majority of the cutting generated heat away with it.  They like to see the 
bits cutting ten thou or more per flute edge passing the work for best bit 
life.  The spindle motor should be running at or nearly at, its maximum 
torque, and table speeds should be enough to make a cut that deep.  Dull bits 
break.

I can't do that with my machine either as to do so would require a couple of 
magnitudes stiffer a frame than my little micromill has, and about 10x the 
torque in the spindle.  So I'm making dangerously thin chips, dangerous cuz 
I'm always picking the nearly invisible things out of my fingers.  And that's 
one of the reasons why I'm looking at & drooling over the Seig X3 as my next 
machine.  Grizzly sells it in 2 different models from just under a thou to 
about $1300, the higher priced one having a tilt head.  Nearly 500 pounds of 
cast iron in a table topper.  Obviously it needs a good table.  If I live 
that long, maybe.

I'm working as hard now as I did before I retired. I think its keeping me 
going. :)

And I'm still waiting for pix of that steam engine.

-- 
Cheers, Gene
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
A general leading the State Department resembles a dragon commanding ducks.
		-- New York Times, Jan. 20, 1981



More information about the Coco mailing list