Gentlemen,
for a long time I was missing the familar singing or humming sound of 
stepper motors due to my using stepconfig - "test this axis" program for 
their setup. I learned that there are faults in it so the 5/4 beat can't be 
eliminated.
Now I'm working with Axis, although it takes more time aunloading an 
reloading. Here are the values that had made me dance on the table (if 
there were any space left on any table).
I used a regular default .ini file generated by stepconf to start with.
Then I edited it until Axis produced an acceptable behaviour on my PCB 
drilling machine.

The basic values are:

[EMCMOT]
EMCMOT = motmod
SHMEM_KEY = 111
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
BASE_PERIOD = 120000

[TRAJ]
AXES = 3
COORDINATES = X Y Z
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 500
MAX_LINEAR_VELOCITY = 1000.00


[AXIS_0]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 100.0
MAX_ACCELERATION = 300.0
STEPGEN_MAXACCEL = 325.0
SCALE = 20.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -4000.0
MAX_LIMIT = 4000.0
HOME_OFFSET = 0.0

I chose a giant area between limits to guarantee no collision for model size.
Most important were the changes I made in the .hal file:

loadrt trivkins
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD 
servo_period_nsec=[EMCMOT]SERVO_PERIOD 
traj_period_nsec=[EMCMOT]SERVO_PERIOD key=[EMCMOT]SHMEM_KEY 
num_joints=[TRAJ]AXES
loadrt probe_parport
loadrt hal_parport cfg="0x378"
# setp parport.0.reset-time 50000
# the .reset lines were all commented out like Jeff Epler told me in Febr.
loadrt stepgen step_type=0,0,0

addf parport.0.read base-thread
addf stepgen.make-pulses base-thread
addf parport.0.write base-thread
addf parport.0.reset base-thread
# this could also be commented out but is of
# no meaning as long as not used (?)


addf stepgen.capture-position servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf stepgen.update-freq servo-thread

net estop-out => parport.0.pin-01-out
net xstep => parport.0.pin-02-out
# setp parport.0.pin-02-out-reset 1
net xdir => parport.0.pin-03-out
net ystep => parport.0.pin-04-out
# setp parport.0.pin-04-out-reset 1
net ydir => parport.0.pin-05-out
net zstep => parport.0.pin-06-out
# setp parport.0.pin-06-out-reset 1
net zdir => parport.0.pin-07-out
net astep => parport.0.pin-08-out
# setp parport.0.pin-08-out-reset 1
net adir => parport.0.pin-09-out

setp stepgen.0.position-scale [AXIS_0]SCALE
setp stepgen.0.steplen 200000
setp stepgen.0.stepspace 200000
setp stepgen.0.dirhold 215000
setp stepgen.0.dirsetup 215000

# the other axis' look likewise.

With these values the motors run perfectly up to 2.2 kHz which is about the 
limit my little machine will tolerate (it takes 10 steps/mm, direct gear 
belt driven). The pulse time at max.speed is about 1/2 cycle which my 
driver board likes best.

BTW: I had to learn that, even if in a hurry, all the parport pins, even 
the unused ones, have to taken care of. Today, I spent half a day sleuthing 
after a miraculous limit error on all axis'...;-))) because the default is 
"both limit switches" and the current limiting resistors of my LED test 
plug gave them ground potential.

Thank you all for the help and patience you gave me those weeks. Now I can 
finally go on with what I actually wanted!

Best regards
Peter Blodow 
------------------------------------------------------------------------------
This SF.net email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
http://p.sf.net/sfu/www-ibm-com
_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to