pncconf bug

More
10 years 3 months ago #77366 by vre
pncconf bug was created by vre
If make a sample lathe configuration with pncconf and select
step-dir & encoder for Z axis and for step-dir only for X axis i get
(2 step generators & 1 encoder)
Code:
Found file(REL): ./test1.hal ./test1.hal:129: Signal 'z-pos-fb' can not add OUT pin 'hm2_5i24.0.encoder.00.position', it already has OUT pin 'hm2_5i24.0.stepgen.00.position-fb' Shutting down and cleaning up LinuxCNC... Running HAL shutdown script

there is some conflict in signals.

the auto generated hal file
Code:
# Generated by PNCconf at Wed Jul 13 05:14:30 2016 # If you make changes to this file, they will be # overwritten when you run PNCconf again loadrt trivkins loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES loadrt hostmot2 loadrt hm2_pci config="firmware=hm2/5i24/SVST4_8.BIT num_encoders=1 num_pwmgens=0 num_stepgens=2" setp hm2_5i24.0.watchdog.timeout_ns 5000000 loadrt pid names=pid.x,pid.z,pid.s addf hm2_5i24.0.read servo-thread addf motion-command-handler servo-thread addf motion-controller servo-thread addf pid.x.do-pid-calcs servo-thread addf pid.z.do-pid-calcs servo-thread addf pid.s.do-pid-calcs servo-thread addf hm2_5i24.0.write servo-thread # external output signals # external input signals #******************* # AXIS X #******************* setp pid.x.Pgain [AXIS_0]P setp pid.x.Igain [AXIS_0]I setp pid.x.Dgain [AXIS_0]D setp pid.x.bias [AXIS_0]BIAS setp pid.x.FF0 [AXIS_0]FF0 setp pid.x.FF1 [AXIS_0]FF1 setp pid.x.FF2 [AXIS_0]FF2 setp pid.x.deadband [AXIS_0]DEADBAND setp pid.x.maxoutput [AXIS_0]MAX_OUTPUT setp pid.x.error-previous-target true setp pid.x.maxerror .0005 net x-index-enable <=> pid.x.index-enable net x-enable => pid.x.enable net x-pos-cmd => pid.x.command net x-vel-cmd => pid.x.command-deriv net x-pos-fb => pid.x.feedback net x-output => pid.x.output # Step Gen signals/setup setp hm2_5i24.0.stepgen.01.dirsetup [AXIS_0]DIRSETUP setp hm2_5i24.0.stepgen.01.dirhold [AXIS_0]DIRHOLD setp hm2_5i24.0.stepgen.01.steplen [AXIS_0]STEPLEN setp hm2_5i24.0.stepgen.01.stepspace [AXIS_0]STEPSPACE setp hm2_5i24.0.stepgen.01.position-scale [AXIS_0]STEP_SCALE setp hm2_5i24.0.stepgen.01.step_type 0 setp hm2_5i24.0.stepgen.01.control-type 1 setp hm2_5i24.0.stepgen.01.maxaccel [AXIS_0]STEPGEN_MAXACCEL setp hm2_5i24.0.stepgen.01.maxvel [AXIS_0]STEPGEN_MAXVEL # ---closedloop stepper signals--- net x-pos-cmd <= axis.0.motor-pos-cmd net x-vel-cmd <= axis.0.joint-vel-cmd net x-output <= hm2_5i24.0.stepgen.01.velocity-cmd net x-pos-fb <= hm2_5i24.0.stepgen.01.position-fb net x-pos-fb => axis.0.motor-pos-fb net x-enable <= axis.0.amp-enable-out net x-enable => hm2_5i24.0.stepgen.01.enable # ---setup home / limit switch signals--- net x-home-sw => axis.0.home-sw-in net x-neg-limit => axis.0.neg-lim-sw-in net x-pos-limit => axis.0.pos-lim-sw-in #******************* # AXIS Z #******************* setp pid.z.Pgain [AXIS_2]P setp pid.z.Igain [AXIS_2]I setp pid.z.Dgain [AXIS_2]D setp pid.z.bias [AXIS_2]BIAS setp pid.z.FF0 [AXIS_2]FF0 setp pid.z.FF1 [AXIS_2]FF1 setp pid.z.FF2 [AXIS_2]FF2 setp pid.z.deadband [AXIS_2]DEADBAND setp pid.z.maxoutput [AXIS_2]MAX_OUTPUT setp pid.z.error-previous-target true setp pid.z.maxerror .0005 net z-index-enable <=> pid.z.index-enable net z-enable => pid.z.enable net z-pos-cmd => pid.z.command net z-vel-cmd => pid.z.command-deriv net z-pos-fb => pid.z.feedback net z-output => pid.z.output # Step Gen signals/setup setp hm2_5i24.0.stepgen.00.dirsetup [AXIS_2]DIRSETUP setp hm2_5i24.0.stepgen.00.dirhold [AXIS_2]DIRHOLD setp hm2_5i24.0.stepgen.00.steplen [AXIS_2]STEPLEN setp hm2_5i24.0.stepgen.00.stepspace [AXIS_2]STEPSPACE setp hm2_5i24.0.stepgen.00.position-scale [AXIS_2]STEP_SCALE setp hm2_5i24.0.stepgen.00.step_type 0 setp hm2_5i24.0.stepgen.00.control-type 1 setp hm2_5i24.0.stepgen.00.maxaccel [AXIS_2]STEPGEN_MAXACCEL setp hm2_5i24.0.stepgen.00.maxvel [AXIS_2]STEPGEN_MAXVEL # ---closedloop stepper signals--- net z-pos-cmd <= axis.2.motor-pos-cmd net z-vel-cmd <= axis.2.joint-vel-cmd net z-output <= hm2_5i24.0.stepgen.00.velocity-cmd net z-pos-fb <= hm2_5i24.0.stepgen.00.position-fb net z-pos-fb => axis.2.motor-pos-fb net z-enable <= axis.2.amp-enable-out net z-enable => hm2_5i24.0.stepgen.00.enable # ---Encoder feedback signals/setup--- setp hm2_5i24.0.encoder.00.counter-mode 0 setp hm2_5i24.0.encoder.00.filter 1 setp hm2_5i24.0.encoder.00.index-invert 0 setp hm2_5i24.0.encoder.00.index-mask 0 setp hm2_5i24.0.encoder.00.index-mask-invert 0 setp hm2_5i24.0.encoder.00.scale [AXIS_2]ENCODER_SCALE net z-pos-fb <= hm2_5i24.0.encoder.00.position net z-vel-fb <= hm2_5i24.0.encoder.00.velocity net z-pos-fb => axis.2.motor-pos-fb net z-index-enable axis.2.index-enable <=> hm2_5i24.0.encoder.00.index-enable net z-pos-rawcounts <= hm2_5i24.0.encoder.00.rawcounts # ---setup home / limit switch signals--- net z-home-sw => axis.2.home-sw-in net z-neg-limit => axis.2.neg-lim-sw-in net z-pos-limit => axis.2.pos-lim-sw-in #******************* # SPINDLE S #******************* setp pid.s.Pgain [SPINDLE_9]P setp pid.s.Igain [SPINDLE_9]I setp pid.s.Dgain [SPINDLE_9]D setp pid.s.bias [SPINDLE_9]BIAS setp pid.s.FF0 [SPINDLE_9]FF0 setp pid.s.FF1 [SPINDLE_9]FF1 setp pid.s.FF2 [SPINDLE_9]FF2 setp pid.s.deadband [SPINDLE_9]DEADBAND setp pid.s.maxoutput [SPINDLE_9]MAX_OUTPUT setp pid.s.error-previous-target true net spindle-index-enable <=> pid.s.index-enable net spindle-enable => pid.s.enable net spindle-vel-cmd-rpm => pid.s.command net spindle-vel-fb-rpm => pid.s.feedback net spindle-output <= pid.s.output # ---setup spindle control signals--- net spindle-vel-cmd-rps <= motion.spindle-speed-out-rps net spindle-vel-cmd-rps-abs <= motion.spindle-speed-out-rps-abs net spindle-vel-cmd-rpm <= motion.spindle-speed-out net spindle-vel-cmd-rpm-abs <= motion.spindle-speed-out-abs net spindle-enable <= motion.spindle-on net spindle-cw <= motion.spindle-forward net spindle-ccw <= motion.spindle-reverse net spindle-brake <= motion.spindle-brake net spindle-revs => motion.spindle-revs net spindle-at-speed => motion.spindle-at-speed net spindle-vel-fb-rps => motion.spindle-speed-in net spindle-index-enable <=> motion.spindle-index-enable # ---Setup spindle at speed signals--- sets spindle-at-speed true #****************************** # connect miscellaneous signals #****************************** # ---HALUI signals--- net joint-select-a halui.joint.0.select net x-is-homed halui.joint.0.is-homed net jog-x-pos halui.jog.0.plus net jog-x-neg halui.jog.0.minus net jog-x-analog halui.jog.0.analog net joint-select-c halui.joint.2.select net z-is-homed halui.joint.2.is-homed net jog-z-pos halui.jog.2.plus net jog-z-neg halui.jog.2.minus net jog-z-analog halui.jog.2.analog net jog-selected-pos halui.jog.selected.plus net jog-selected-neg halui.jog.selected.minus net spindle-manual-cw halui.spindle.forward net spindle-manual-ccw halui.spindle.reverse net spindle-manual-stop halui.spindle.stop net machine-is-on halui.machine.is-on net jog-speed halui.jog-speed net MDI-mode halui.mode.is-mdi # ---coolant signals--- net coolant-mist <= iocontrol.0.coolant-mist net coolant-flood <= iocontrol.0.coolant-flood # ---probe signal--- net probe-in => motion.probe-input # ---motion control signals--- net in-position <= motion.in-position net machine-is-enabled <= motion.motion-enabled # ---digital in / out signals---

Please Log in to join the conversation.

More
10 years 3 months ago #78089 by tommylight
Replied by tommylight on topic pncconf bug
You have 2 duplicate entries in the hal file for Z axis, so you need to comment one pair of them, use the "closed loop stepper" signals and comment out or delete the "encoder" part, or use the "encoder" part ane delete or comment out the entries with z-pos-fb in the "closed loop stepper" part.
Regards,
Tom

Please Log in to join the conversation.

Time to create page: 0.074 seconds
Powered by Kunena Forum