I have a question regarding the subject. We have a discussion regarding this over on mycncuk forum and what I wrote last night was this:
Here is how I calculate this for my machine:
In my case, my machine is capable of 8000mm/min on each axis, though I limited the Z to 6000 mm/min. If all axes are moved at the top speed, that means a total of 22000 mm/min, which is equal to 366.7 mm/sec. Each mm requires 400 pulses (2000 per rev), so that speed requires 146666 pulses for all axes at maximum speed, which is OK, since my drivers are capable of maximum 200 kHz. BUT... if I had dual screw on one axis I'd be driving with a total of 30000 mm/min, which is 500 mm/sec which would in my case require 200000 pulses and which is the maximum limit of my drivers. OK, I could change micro stepping to solve that, but never the less, it would make a huge difference.
The pulsing (kernel) frequency means that the (positive or negative) pulse width is equal (1/f)/2 => 2.5us for each pulse, regardless of the speed, if the frequency is set to 200 kHz. Of course, if I'd set my UC300ETH to 400 kHz kernel then I'd get 1.25 us pulses, and the opto couplers may not be able to cope with such short pulses, which is what I noticed. when I tested it out.
Now, after a night's sleep I am not sure this is calculated right because basically it would limit the speed as the number of axes increase, so with 6 axis it would present a problem. So, here is what I think is right, please correct me if I am wrong.
The UC300ETH is capable of handling 6 motors and the maximum kernel frequency is 400kHz (1.25us pulses). This means that the motion controller is capable of outputting the 400kHz for each of the six motors in parallel at the same time to produce a synchronized motion at that speed. If my system would have no limitations at all (theoretical system) then it would give me a maximum of 60000 mm/min (1000 mm/sec) speed on all six motors. For my real system, with the obvious limitations, it means that I should use 8000 mm/min (maximum speed of one axis) as base of my calculation and should set 100kHz kernel frequency (the calculated need is 53.3kHz) and if I set 100kHz I could still use all six axes (if I had six) and keep that speed constantly.
Thanks for clarifying this.