Category: Basic Configuration
With Mesa hardware (and most external hardware step/dir interfaces
or even EtherCAT drives), the velocity (step rate in this case) is updated
every servo thread.
This means that there is a constant velocity between updates. This constant
velocity means that that you will have a small error (chord error) between a
desired curved path and the actual (linear interpolated) path.
Okay, that's interesting, and of course I have more questions.
First, does the Mesa know how many steps it should count? Will the longer period introduce greater error in the length of each chord? I.e., might it overshoot by 1ms worth of steps, vs. just 500ns worth of steps? Or is the command to the Mesa really just "start moving at N steps/second"? (rather than "start moving at N steps/second, for 10500 steps")
Second, the chord error you describe would only occur for a curved path. If the G-code is written completely using straight-line approximation (which of course introduces its own chord errors), it seems like the longer servo period wouldn't introduce any more error at all. True?
In any case, it sounds like I can stop worrying about my 2ms servo period for the time being.
paul