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

George Ramsower georgeramsower at gmail.com
Fri Sep 26 01:16:35 EDT 2008


>>> 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.

 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.


 George 




More information about the Coco mailing list