Two stepper controller difficulty

More
02 Sep 2013 04:20 - 02 Sep 2013 17:30 #38383 by cncjohn
Basically guys this post is to ask how to set linuxcnc up to send X and Y to a TB6560 chinese 4 axis stepper controller BUT then the Z to a separate 5 axis controller card.
I have been putting together an eight by four table with long gantry - its an XYYZ setup.

One of the axis died on the four axis controller so I thought to upgrade - I bought a five axis chinese controller but only one driver for Z. In time I will buy the other drivers and switch to using just the 5 axis board.

Anyone tried anything like this?

This is the hal file as things stand. You will see the problem quicker than me I'm just too close to it at least I hope someone can shed some ligtht - thanks guys John
# Kinematics
loadrt gantrykins

# Settings for gantrykins
setp gantrykins.joint-0 0
setp gantrykins.joint-1 1
setp gantrykins.joint-2 2
setp gantrykins.joint-3 3

loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
loadrt probe_parport
loadrt hal_parport cfg="0x378 out a800 out "
setp parport.0.reset-time 5000
setp parport.1.reset-time 5000
loadrt stepgen step_type=0,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

#addf parport.1.read base-thread 1
#addf stepgen.make-pulses base-thread 1
#addf parport.1.write base-thread 1
#addf parport.1.reset base-thread 1

addf stepgen.capture-position servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf stepgen.update-freq servo-thread
net spindle-cmd <= motion.spindle-speed-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.1.pin-07-out
setp parport.1.pin-07-out-reset 1
net zdir => parport.1.pin-08-out
#net astep => parport.1.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 1
setp stepgen.0.stepspace 0
setp stepgen.0.dirhold 40000
setp stepgen.0.dirsetup 40000
setp stepgen.0.maxaccel [AXIS_0]STEPGEN_MAXACCEL
net xpos-cmd axis.0.motor-pos-cmd => stepgen.0.position-cmd
net xpos-fb stepgen.0.position-fb => axis.0.motor-pos-fb
net xstep <= stepgen.0.step
net xdir <= stepgen.0.dir
net xenable axis.0.amp-enable-out => stepgen.0.enable

setp stepgen.1.position-scale [AXIS_1]SCALE
setp stepgen.1.steplen 1
setp stepgen.1.stepspace 0
setp stepgen.1.dirhold 40000
setp stepgen.1.dirsetup 40000
setp stepgen.1.maxaccel [AXIS_1]STEPGEN_MAXACCEL
net ypos-cmd axis.1.motor-pos-cmd => stepgen.1.position-cmd
net ypos-fb stepgen.1.position-fb => axis.1.motor-pos-fb
net ystep <= stepgen.1.step
net ydir <= stepgen.1.dir
net yenable axis.1.amp-enable-out => stepgen.1.enable

setp stepgen.2.position-scale [AXIS_2]SCALE
setp stepgen.2.steplen 1
setp stepgen.2.stepspace 0
setp stepgen.2.dirhold 40000
setp stepgen.2.dirsetup 40000
setp stepgen.2.maxaccel [AXIS_2]STEPGEN_MAXACCEL
net ypos-cmd axis.2.motor-pos-cmd => stepgen.1.position-cmd
net ypos-fb stepgen.2.position-fb => axis.1.motor-pos-fb
net ystep <= stepgen.1.step
net ydir <= stepgen.1.dir
net yenable axis.2.amp-enable-out => stepgen.1.enable

setp stepgen.3.position-scale [AXIS_3]SCALE
setp stepgen.3.steplen 1
setp stepgen.3.stepspace 0
setp stepgen.3.dirhold 40000
setp stepgen.3.dirsetup 40000
setp stepgen.3.maxaccel [AXIS_3]STEPGEN_MAXACCEL
net zpos-cmd axis.3.motor-pos-cmd => stepgen.3.position-cmd
net zpos-fb stepgen.3.position-fb => axis.3.motor-pos-fb
net zstep <= stepgen.3.step
net zdir <= stepgen.3.dir
net zenable axis.3.amp-enable-out => stepgen.3.enable

net estop-out <= iocontrol.0.user-enable-out
net estop-out => iocontrol.0.emc-enable-in

net tool-number <= iocontrol.0.tool-prep-number
net tool-change-loopback iocontrol.0.tool-change => iocontrol.0.tool-changed
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
Last edit: 02 Sep 2013 17:30 by BigJohnT. Reason: add code tags

Please Log in or Create an account to join the conversation.

More
02 Sep 2013 19:04 #38426 by andypugh

Basically guys this post is to ask how to set linuxcnc up to send X and Y to a TB6560 chinese 4 axis stepper controller BUT then the Z to a separate 5 axis controller card

This is purely a matter of physical wiring. If the signals from the parport go to the correct wires to the correct driver then it will just work.

Please Log in or Create an account to join the conversation.

Time to create page: 0.108 seconds
Powered by Kunena Forum