When emc shows the "following error on joint" message for a
step&direction system, that means the system is misconfigured.  There
are two main causes for this error:

Cause 1: Insufficient "headroom" for acceleration and/or velocity.

Emc2 defines velocity and acceleration limits in both the trajectory
planner and in the step generator.  It's necessary to make the step
generator's limits just a bit higher than the trajectory planner's, or
you get a following error.

If you used stepconf to generate your configuration file, then you have
encountered a bug that will be fixed in the next release when you re-run
stepconf and regenerate your configuration files.

Until then, or if you did not use stepconf to generate your
configuration files, simply open up the .ini file in a text editor,
find the [AXIS_2] section, and for any line that starts "STEPGEN_MAXVEL"
or "STEPGEN_MAXACCEL", increase that number by 10%.  If this fixes the
problem, then you're done.  If not, maybe you have the second cause of
"following error"


Cause 2: Your step rate in steps per second is too high

There is a top limit to the number of steps per second that emc can
produce.  This is directly related to the BASE_PERIOD, which is the time
in nanoseconds between updates to the parallel port.  Unless you have
really large "step length" or "step space" values, then the maximum
number of steps per second is either 1000000000/BASE_PERIOD or
500000000/BASE_PERIOD, depending whether the "doublestep" technique is
used.  (If you used stepconf to generate your configuration file, then
your configuration file uses the "doublestep" technique)

If you used stepconf to generate your configuration file, then you have
encountered a bug that will be fixed in the next release when you re-run
stepconf and regenerate your configuration files.

Until then, if you used stepconf, run it again and on the "basic machine
information" page note the value shown for "max step rate" in Hz.  On
the Z Axis Configuration page, note the value shown for "Pulse rate at
max speed".  Change the Maximum Velocity until this number is 10% below
the "max step rate" from the earlier page.

If you did not use stepconf, then in your inifile find the
[AXIS_2]MAX_VELOCITY line and decrease the value until you no longer
encounter the error.  Or you can do it based on the calculation 
    MAX_VELOCITY = .90 * 500000000 / SCALE / BASE_PERIOD
using the SCALE value from the [AXIS_2] section and the BASE_PERIOD
value from the [EMCMOT] section.



The other problem you mention is that emc doesn't detect that the servo
amp has tripped out due to an error.  If your servo drive has a fault or
error output suitable for connection to a parall port input pin, you can
make emc aware of these errors.  For example, if you arrange to have a
HIGH logic level on parallel port pin 10 when the Z-axis amplifier is in
an error condition and a LOW logic level otherwise, then you can add a
line like the following to your .hal file:
    net Zfault parport.0.pin-10-in => axis.2.amp-fault-in
If you generated your configuration file with stepconf, then put this in
your 'custom.hal' file.  When the fault signal is seen, emc will go to
"machine off" mode.

Jeff

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Emc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to