Stepconf works but Axis dont move - Speed Error

More
09 Oct 2015 18:07 - 09 Oct 2015 18:33 #63609 by Kolbi
You are right, i meant less steps/revision is lower torque.

But there isnt a mechanical or electical problem, it is the software or step pulse lenght!!!

Z is a leadscrew without ball bearings, but it doesnt matter cause i can drive it with fully 20khz in stepconf, and mechanic would go even faster.

emc.nml:
# Note: emcsvr is the master for all NML channels, and therefore is the
# first to start.

# Buffers
# Name                  Type    Host            size    neut?   (old)   buffer# MP ---

# Top-level buffers to EMC
B emcCommand            SHMEM   localhost       8192    0       0       1       16 1001 TCP=5005 xdr
B emcStatus             SHMEM   localhost       10240   0       0       2       16 1002 TCP=5005 xdr
B emcError              SHMEM   localhost       8192    0       0       3       16 1003 TCP=5005 xdr queue

# These are for the IO controller, EMCIO
B toolCmd               SHMEM   localhost       1024    0       0       4       16 1004 TCP=5005 xdr
B toolSts               SHMEM   localhost       8192    0       0       5       16 1005 TCP=5005 xdr

# Processes
# Name          Buffer          Type    Host            Ops     server? timeout master? cnum

P emc           emcCommand      LOCAL   localhost       RW      0       1.0     0       0
P emc           emcStatus       LOCAL   localhost       W       0       1.0     0       0
P emc           emcError        LOCAL   localhost       W       0       1.0     0       0
P emc           toolCmd         LOCAL   localhost       W       0       1.0     0       0
P emc           toolSts         LOCAL   localhost       R       0       1.0     0       0

P emcsvr        emcCommand      LOCAL   localhost       W       1       1.0     1       2
P emcsvr        emcStatus       LOCAL   localhost       R       1       1.0     1       2
P emcsvr        emcError        LOCAL   localhost       R       1       1.0     1       2
P emcsvr        toolCmd         LOCAL   localhost       W       1       1.0     1       2
P emcsvr        toolSts         LOCAL   localhost       R       1       1.0     1       2
P emcsvr        default         LOCAL   localhost       RW      1       1.0     1       2

P tool          emcError        LOCAL   localhost       W       0       1.0     0       3
P tool          toolCmd         LOCAL   localhost       RW      0       1.0     0       3
P tool          toolSts         LOCAL   localhost       W       0       1.0     0       3

P xemc          emcCommand      LOCAL   localhost       W       0       10.0    0       10
P xemc          emcStatus       LOCAL   localhost       R       0       10.0    0       10
P xemc          emcError        LOCAL   localhost       R       0       10.0    0       10
P xemc          toolCmd         LOCAL   localhost       W       0       10.0    0       10
P xemc          toolSts         LOCAL   localhost       R       0       10.0    0       10

P keystick      emcCommand      LOCAL   localhost       W       0       10.0    0       10
P keystick      emcStatus       LOCAL   localhost       R       0       10.0    0       10
P keystick      emcError        LOCAL   localhost       R       0       10.0    0       10
P keystick      toolCmd         LOCAL   localhost       W       0       10.0    0       10
P keystick      toolSts         LOCAL   localhost       R       0       10.0    0       10


emc.var:
5161	0.000000
5162	0.000000
5163	0.000000
5164	0.000000
5165	0.000000
5166	0.000000
5167	0.000000
5168	0.000000
5169	0.000000
5181	0.000000
5182	0.000000
5183	0.000000
5184	0.000000
5185	0.000000
5186	0.000000
5187	0.000000
5188	0.000000
5189	0.000000
5211	0.000000
5212	0.000000
5213	0.000000
5214	0.000000
5215	0.000000
5216	0.000000
5217	0.000000
5218	0.000000
5219	0.000000
5220	1.000000
5221	74.278086
5222	218.224125
5223	43.687397
5224	0.000000
5225	0.000000
5226	0.000000
5227	0.000000
5228	0.000000
5229	0.000000
5241	0.000000
5242	0.000000
5243	0.000000
5244	0.000000
5245	0.000000
5246	0.000000
5247	0.000000
5248	0.000000
5249	0.000000
5261	0.000000
5262	0.000000
5263	0.000000
5264	0.000000
5265	0.000000
5266	0.000000
5267	0.000000
5268	0.000000
5269	0.000000
5281	0.000000
5282	0.000000
5283	0.000000
5284	0.000000
5285	0.000000
5286	0.000000
5287	0.000000
5288	0.000000
5289	0.000000
5301	0.000000
5302	0.000000
5303	0.000000
5304	0.000000
5305	0.000000
5306	0.000000
5307	0.000000
5308	0.000000
5309	0.000000
5321	0.000000
5322	0.000000
5323	0.000000
5324	0.000000
5325	0.000000
5326	0.000000
5327	0.000000
5328	0.000000
5329	0.000000
5341	0.000000
5342	0.000000
5343	0.000000
5344	0.000000
5345	0.000000
5346	0.000000
5347	0.000000
5348	0.000000
5349	0.000000
5361	0.000000
5362	0.000000
5363	0.000000
5364	0.000000
5365	0.000000
5366	0.000000
5367	0.000000
5368	0.000000
5369	0.000000
5381	0.000000
5382	0.000000
5383	0.000000
5384	0.000000
5385	0.000000
5386	0.000000
5387	0.000000
5388	0.000000
5389	0.000000



tsegi1.hal:
# Erstellt von stepconf am Mon Sep 28 21:34:35 2015
# Änderungen an dieser Datei werden beim nächsten
# Aufruf von stepconf überschrieben.
loadrt trivkins
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  "
loadrt stepgen step_type=0,0,0
loadrt pwmgen output_type=0

addf parport.0.read base-thread
addf stepgen.make-pulses base-thread
addf pwmgen.make-pulses base-thread
addf parport.0.write base-thread

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

net spindle-cmd <= motion.spindle-speed-out => pwmgen.0.value
net spindle-enable <= motion.spindle-on => pwmgen.0.enable
net spindle-pwm <= pwmgen.0.pwm
setp pwmgen.0.pwm-freq 480.0
setp pwmgen.0.scale 58000.0
setp pwmgen.0.offset 0.28275862069
setp pwmgen.0.dither-pwm true
net spindle-cw <= motion.spindle-forward

setp parport.0.pin-01-out-invert 1
net estop-out => parport.0.pin-01-out
net xstep => parport.0.pin-02-out
net xdir => parport.0.pin-03-out
net ystep => parport.0.pin-04-out
setp parport.0.pin-05-out-invert 1
net ydir => parport.0.pin-05-out
net zstep => parport.0.pin-08-out
net zdir => parport.0.pin-09-out
setp parport.0.pin-14-out-invert 1
net spindle-cw => parport.0.pin-14-out
net spindle-pwm => parport.0.pin-16-out
setp parport.0.pin-17-out-invert 1
net xenable => parport.0.pin-17-out


net min-home-x <= parport.0.pin-10-in-not
net min-home-y <= parport.0.pin-11-in-not
net max-home-z <= parport.0.pin-12-in-not


setp stepgen.0.position-scale [AXIS_0]SCALE
setp stepgen.0.steplen 1
setp stepgen.0.stepspace 1
setp stepgen.0.dirhold 19500
setp stepgen.0.dirsetup 29500
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
net min-home-x => axis.0.home-sw-in
net min-home-x => axis.0.neg-lim-sw-in

setp stepgen.1.position-scale [AXIS_1]SCALE
setp stepgen.1.steplen 1
setp stepgen.1.stepspace 1
setp stepgen.1.dirhold 19500
setp stepgen.1.dirsetup 29500
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
net min-home-y => axis.1.home-sw-in
net min-home-y => axis.1.neg-lim-sw-in

setp stepgen.2.position-scale [AXIS_2]SCALE
setp stepgen.2.steplen 1
setp stepgen.2.stepspace 1
setp stepgen.2.dirhold 19500
setp stepgen.2.dirsetup 29500
setp stepgen.2.maxaccel [AXIS_2]STEPGEN_MAXACCEL
net zpos-cmd axis.2.motor-pos-cmd => stepgen.2.position-cmd
net zpos-fb stepgen.2.position-fb => axis.2.motor-pos-fb
net zstep <= stepgen.2.step
net zdir <= stepgen.2.dir
net zenable axis.2.amp-enable-out => stepgen.2.enable
net max-home-z => axis.2.home-sw-in
net max-home-z => axis.2.pos-lim-sw-in

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

loadusr -W hal_manualtoolchange
net tool-change iocontrol.0.tool-change => hal_manualtoolchange.change
net tool-changed iocontrol.0.tool-changed <= hal_manualtoolchange.changed
net tool-number iocontrol.0.tool-prep-number => hal_manualtoolchange.number
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
Last edit: 09 Oct 2015 18:33 by Kolbi.

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

More
09 Oct 2015 18:41 #63611 by Kolbi
I will try to measure the pulses with an oscilloscope later, maybe stepconf and axis use different pulse lenghts.

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

Time to create page: 0.072 seconds
Powered by Kunena Forum