On 01/25/2020 01:38 AM, John Dammeyer wrote:
I agree there are all sorts of ways of doing this.  Only Peter at MESA or 
perhaps Jon could explain what they do but I don't know if it's proprietary to 
their hardware.
Well, it is not real proprietary. I can only speak for the Pico Systems products. Yes, as John says, the .ini file tells the trajectory planner all it needs to know about max velocity and acceleration for each axis. So, (assuming correct configuration) it will never ask for moves the drives cannot do. Then, the TP feeds coordinated positions of all axes to the PID component (or stepgen component for software stepping) at the servo thread rate. Then, for all of my boards, the encoder counter counts encoders (or with my stepper controller in open-loop mode it can count the steps issued) and feeds this back to LinuxCNC at the servo rate. PID calculates a velocity and sends that to the appropriate device (step generator, PWM generator or DAC) and the drive moves at the desired rate. Repeat every millisecond.

With encoder feedback, you can examine the real drive/axis performance with Halscope and find the actual limits of speed and acceleration. You can then decide how much to back off of these limits and set the MAX_VELOCITY and MAX_ACCELERATION ini file parameters accordingly. This is harder to do in an open-loop system.

Jon


_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to