PNCCONF Spindle Issue - Linuxcnc 2.7

More
11 years 1 month ago #63103 by MacGalempsy
I am curious if anyone else is having issues with PNCCONF not putting out a correct HAL file when dealing with a PWM spindle?

When using PNCCONF, I can get the spindle to operate perfectly correct when doing the live test on the Spindle page. However, after finalizing the settings and exporting the files, the spindle does not get above 0.024V when the spindle is enabled. It will not increase speed when manually increasing the speed with the + button in AXIS. Noticeably, the settings for the GS2 vfd needed to be deactivated after the first attempt to run the configured HAL file, even though those selections were skipped in the setup phase... After about a week of trying to figure this one out, I need some help getting it going. This is the last thing needed to make first cuts on the machine. Any chance anyone else has had this problem? Can I get some help figuring out what PNCCONF is not putting in the output file?

The link has the basic HAL and INI files. Any help will be much appreciated.

Please Log in to join the conversation.

More
11 years 1 month ago #63108 by PCW
pncconf has a couple errors with spindle setup

one is connecting the hardware spindle enable to machine on instead of spindle on
and the other is that the spindle speed from motion is not connected to the correct signal

Please Log in to join the conversation.

More
11 years 1 month ago #63111 by cmorley

Please Log in to join the conversation.

More
11 years 1 month ago #63112 by PCW
Yes those are the errors that I (sort of) recall

Please Log in to join the conversation.

More
11 years 1 month ago #63131 by MacGalempsy
Those corrections still did not fix the problem. I tried setting up a new basic xyz & s, but now the open-loop test errors for the spindle when it is attempted to be opened.

Please Log in to join the conversation.

More
11 years 1 month ago #63145 by cncbasher
could you post your configuration files as a archive to your post

have you set the max and min spindle voltages in your ini file under [spindle]?

Please Log in to join the conversation.

More
11 years 1 month ago #63151 by PCW
Whats was the error message? (and hal line with the error)

Most likely there is a typo somewhere

Please Log in to join the conversation.

More
11 years 1 month ago #63168 by MacGalempsy
Code:
# Generated by PNCconf at Mon Sep 14 12:03:23 2015 # Edited by Aaron Laubhan # 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=" num_encoders=6 num_pwmgens=0 num_stepgens=0 sserial_port_0=200xxx" setp hm2_5i25.0.watchdog.timeout_ns 5000000 loadrt pid names=pid.x,pid.y,pid.z,pid.a,pid.s loadrt abs names=abs.spindle loadrt lowpass names=lowpass.spindle loadrt scale names=scale.spindle loadrt classicladder_rt numPhysInputs=15 numPhysOutputs=15 numS32in=10 numS32out=10 numFloatIn=10 numFloatOut=10 numBits=50 numWords=50 loadrt toggle2nist count=2 addf hm2_5i25.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.y.do-pid-calcs servo-thread addf pid.z.do-pid-calcs servo-thread addf pid.a.do-pid-calcs servo-thread addf pid.s.do-pid-calcs servo-thread addf classicladder.0.refresh servo-thread addf scale.spindle servo-thread addf abs.spindle servo-thread addf lowpass.spindle servo-thread addf hm2_5i25.0.write servo-thread addf toggle2nist.0 servo-thread addf toggle2nist.1 servo-thread #******************* # 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 # ---Amplifier Signals--- net x-reset => hm2_5i25.0.7i77.0.0.output-00 net x-enable => hm2_5i25.0.7i77.0.0.output-04 net x-fault-indicator <= hm2_5i25.0.7i77.0.0.input-24 # ---PWM Generator signals/setup--- setp hm2_5i25.0.7i77.0.1.analogout0-scalemax [AXIS_0]OUTPUT_SCALE setp hm2_5i25.0.7i77.0.1.analogout0-minlim [AXIS_0]OUTPUT_MIN_LIMIT setp hm2_5i25.0.7i77.0.1.analogout0-maxlim [AXIS_0]OUTPUT_MAX_LIMIT net x-output => hm2_5i25.0.7i77.0.1.analogout0 net x-pos-cmd axis.0.motor-pos-cmd net x-enable axis.0.amp-enable-out # enable _all_ sserial pwmgens net x-enable hm2_5i25.0.7i77.0.1.analogena # ---Encoder feedback signals/setup--- setp hm2_5i25.0.encoder.00.counter-mode 0 setp hm2_5i25.0.encoder.00.filter 1 setp hm2_5i25.0.encoder.00.index-invert 0 setp hm2_5i25.0.encoder.00.index-mask 0 setp hm2_5i25.0.encoder.00.index-mask-invert 0 setp hm2_5i25.0.encoder.00.scale [AXIS_0]ENCODER_SCALE net x-pos-fb <= hm2_5i25.0.encoder.00.position net x-vel-fb <= hm2_5i25.0.encoder.00.velocity net x-pos-fb => axis.0.motor-pos-fb net x-index-enable axis.0.index-enable <=> hm2_5i25.0.encoder.00.index-enable net x-pos-rawcounts <= hm2_5i25.0.encoder.00.rawcounts # ---setup home / limit switch signals--- net x-home-sw => axis.0.home-sw-in net min-x => axis.0.neg-lim-sw-in net x-pos-limit => axis.0.pos-lim-sw-in #******************* # AXIS Y #******************* setp pid.y.Pgain [AXIS_1]P setp pid.y.Igain [AXIS_1]I setp pid.y.Dgain [AXIS_1]D setp pid.y.bias [AXIS_1]BIAS setp pid.y.FF0 [AXIS_1]FF0 setp pid.y.FF1 [AXIS_1]FF1 setp pid.y.FF2 [AXIS_1]FF2 setp pid.y.deadband [AXIS_1]DEADBAND setp pid.y.maxoutput [AXIS_1]MAX_OUTPUT setp pid.y.error-previous-target true setp pid.y.maxerror .0005 net y-index-enable <=> pid.y.index-enable net y-enable => pid.y.enable net y-pos-cmd => pid.y.command net y-vel-cmd => pid.y.command-deriv net y-pos-fb => pid.y.feedback net y-output => pid.y.output # ---Amplifier Signals--- net y-reset => hm2_5i25.0.7i77.0.0.output-01 net y-enable => hm2_5i25.0.7i77.0.0.output-05 net y-fault-indicator <= hm2_5i25.0.7i77.0.0.input-25 # ---PWM Generator signals/setup--- setp hm2_5i25.0.7i77.0.1.analogout1-scalemax [AXIS_1]OUTPUT_SCALE setp hm2_5i25.0.7i77.0.1.analogout1-minlim [AXIS_1]OUTPUT_MIN_LIMIT setp hm2_5i25.0.7i77.0.1.analogout1-maxlim [AXIS_1]OUTPUT_MAX_LIMIT net y-output => hm2_5i25.0.7i77.0.1.analogout1 net y-pos-cmd axis.1.motor-pos-cmd net y-enable axis.1.amp-enable-out # ---Encoder feedback signals/setup--- setp hm2_5i25.0.encoder.01.counter-mode 0 setp hm2_5i25.0.encoder.01.filter 1 setp hm2_5i25.0.encoder.01.index-invert 0 setp hm2_5i25.0.encoder.01.index-mask 0 setp hm2_5i25.0.encoder.01.index-mask-invert 0 setp hm2_5i25.0.encoder.01.scale [AXIS_1]ENCODER_SCALE net y-pos-fb <= hm2_5i25.0.encoder.01.position net y-vel-fb <= hm2_5i25.0.encoder.01.velocity net y-pos-fb => axis.1.motor-pos-fb net y-index-enable axis.1.index-enable <=> hm2_5i25.0.encoder.01.index-enable net y-pos-rawcounts <= hm2_5i25.0.encoder.01.rawcounts # ---setup home / limit switch signals--- net max-home-y => axis.1.home-sw-in net min-y => axis.1.neg-lim-sw-in net max-home-y => axis.1.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 # ---Amplifier Signals--- net z-reset => hm2_5i25.0.7i77.0.0.output-02 net z-enable => hm2_5i25.0.7i77.0.0.output-06 net z-fault-indicator <= hm2_5i25.0.7i77.0.0.input-26 # ---PWM Generator signals/setup--- setp hm2_5i25.0.7i77.0.1.analogout2-scalemax [AXIS_2]OUTPUT_SCALE setp hm2_5i25.0.7i77.0.1.analogout2-minlim [AXIS_2]OUTPUT_MIN_LIMIT setp hm2_5i25.0.7i77.0.1.analogout2-maxlim [AXIS_2]OUTPUT_MAX_LIMIT net z-output => hm2_5i25.0.7i77.0.1.analogout2 net z-pos-cmd axis.2.motor-pos-cmd net z-enable axis.2.amp-enable-out # ---Encoder feedback signals/setup--- setp hm2_5i25.0.encoder.02.counter-mode 0 setp hm2_5i25.0.encoder.02.filter 1 setp hm2_5i25.0.encoder.02.index-invert 0 setp hm2_5i25.0.encoder.02.index-mask 0 setp hm2_5i25.0.encoder.02.index-mask-invert 0 setp hm2_5i25.0.encoder.02.scale [AXIS_2]ENCODER_SCALE net z-pos-fb <= hm2_5i25.0.encoder.02.position net z-vel-fb <= hm2_5i25.0.encoder.02.velocity net z-pos-fb => axis.2.motor-pos-fb net z-index-enable axis.2.index-enable <=> hm2_5i25.0.encoder.02.index-enable net z-pos-rawcounts <= hm2_5i25.0.encoder.02.rawcounts # ---setup home / limit switch signals--- net max-home-z => axis.2.home-sw-in net min-z => axis.2.neg-lim-sw-in net max-home-z => axis.2.pos-lim-sw-in #******************* # AXIS A #******************* setp pid.a.Pgain [AXIS_3]P setp pid.a.Igain [AXIS_3]I setp pid.a.Dgain [AXIS_3]D setp pid.a.bias [AXIS_3]BIAS setp pid.a.FF0 [AXIS_3]FF0 setp pid.a.FF1 [AXIS_3]FF1 setp pid.a.FF2 [AXIS_3]FF2 setp pid.a.deadband [AXIS_3]DEADBAND setp pid.a.maxoutput [AXIS_3]MAX_OUTPUT setp pid.a.error-previous-target true setp pid.a.maxerror .0005 net a-index-enable <=> pid.a.index-enable net a-enable => pid.a.enable net a-pos-cmd => pid.a.command net a-vel-cmd => pid.a.command-deriv net a-pos-fb => pid.a.feedback net a-output => pid.a.output # ---A-AXIS Install Loop--- net a-axis-installed <= hm2_5i25.0.7i77.0.0.input-29 # ---Amplifier Signals--- net a-reset => hm2_5i25.0.7i77.0.0.output-03 net a-enable => hm2_5i25.0.7i77.0.0.output-07 net a-fault-indicator <= hm2_5i25.0.7i77.0.0.input-27 # ---PWM Generator signals/setup--- setp hm2_5i25.0.7i77.0.1.analogout3-scalemax [AXIS_3]OUTPUT_SCALE setp hm2_5i25.0.7i77.0.1.analogout3-minlim [AXIS_3]OUTPUT_MIN_LIMIT setp hm2_5i25.0.7i77.0.1.analogout3-maxlim [AXIS_3]OUTPUT_MAX_LIMIT net a-output => hm2_5i25.0.7i77.0.1.analogout3 net a-pos-cmd axis.3.motor-pos-cmd net a-enable axis.3.amp-enable-out # ---Encoder feedback signals/setup--- setp hm2_5i25.0.encoder.04.counter-mode 0 setp hm2_5i25.0.encoder.04.filter 1 setp hm2_5i25.0.encoder.04.index-invert 0 setp hm2_5i25.0.encoder.04.index-mask 0 setp hm2_5i25.0.encoder.04.index-mask-invert 0 setp hm2_5i25.0.encoder.04.scale [AXIS_3]ENCODER_SCALE net a-pos-fb <= hm2_5i25.0.encoder.04.position net a-vel-fb <= hm2_5i25.0.encoder.04.velocity net a-pos-fb => axis.3.motor-pos-fb net a-index-enable axis.3.index-enable <=> hm2_5i25.0.encoder.04.index-enable net a-pos-rawcounts <= hm2_5i25.0.encoder.04.rawcounts # ---setup home / limit switch signals--- net max-home-a => axis.3.home-sw-in net a-neg-limit => axis.3.neg-lim-sw-in net max-home-a => axis.3.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 setp pid.s.maxerror .0005 setp pid.s.index-enable 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 # ---VFD Signals--- # net spindle_current <= hm2_5i25.0.7i77.0.0.analogin0 net spindle-fault-indicator <= hm2_5i25.0.7i77.0.0.input-28 net spindle-enable => hm2_5i25.0.7i77.0.0.output-08 net spindle-reset => hm2_5i25.0.7i77.0.0.output-09 # net <CONNECTED-NOT-SET-VFD-IN1> => hm2_5i25.0.7i77.0.0.output-10 # net <CONNECTED-NOT-SET-VFD-IN3> => hm2_5i25.0.7i77.0.0.output-12 # ---PWM Generator signals/setup--- setp hm2_5i25.0.7i77.0.1.analogout5-scalemax [SPINDLE_9]OUTPUT_SCALE setp hm2_5i25.0.7i77.0.1.analogout5-minlim [SPINDLE_9]OUTPUT_MIN_LIMIT setp hm2_5i25.0.7i77.0.1.analogout5-maxlim [SPINDLE_9]OUTPUT_MAX_LIMIT net spindle-vel-cmd-rpm-abs => hm2_5i25.0.7i77.0.1.analogout5 net spindle-enable <= motion.spindle-on # ---Encoder feedback signals/setup--- setp hm2_5i25.0.encoder.05.counter-mode 0 setp hm2_5i25.0.encoder.05.filter 1 setp hm2_5i25.0.encoder.05.index-invert 0 setp hm2_5i25.0.encoder.05.index-mask 0 setp hm2_5i25.0.encoder.05.index-mask-invert 0 setp hm2_5i25.0.encoder.05.scale [SPINDLE_9]ENCODER_SCALE net spindle-revs <= hm2_5i25.0.encoder.05.position net spindle-vel-fb-rps <= hm2_5i25.0.encoder.05.velocity net spindle-index-enable <=> hm2_5i25.0.encoder.05.index-enable # ---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-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 # Use ACTUAL spindle velocity from spindle encoder # spindle-velocity bounces around so we filter it with lowpass # spindle-velocity is signed so we use absolute component to remove sign # ACTUAL velocity is in RPS not RPM so we scale it. setp scale.spindle.gain 60 setp lowpass.spindle.gain 1.000000 net spindle-vel-fb-rps => scale.spindle.in net spindle-fb-rpm scale.spindle.out => abs.spindle.in net spindle-fb-rpm-abs abs.spindle.out => lowpass.spindle.in net spindle-fb-rpm-abs-filtered lowpass.spindle.out #****************************** # 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-b halui.joint.1.select net y-is-homed halui.joint.1.is-homed net jog-y-pos halui.jog.1.plus net jog-y-neg halui.jog.1.minus net jog-y-analog halui.jog.1.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 joint-select-d halui.joint.3.select net a-is-homed halui.joint.3.is-homed net jog-a-pos halui.jog.3.plus net jog-a-neg halui.jog.3.minus net jog-a-analog halui.jog.3.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 jog-speed halui.jog-speed net MDI-mode halui.mode.is-mdi #****************************** # connect Control Panel signals #****************************** net sso <= hm2_5i25.0.7i77.0.0.analogin1 # Poteniometer- 0-24V; 50-150% net fro-raw halui.feed-override.scale <= hm2_5i25.0.7i77.0.0.analogin2 setp halui.feed-override.counts 200 # Potentiometer- 0-24V; 0-200% net on-button toggle2nist.0.in <= hm2_5i25.0.7i77.0.0.input-04-not net on-button-is-on toggle2nist.0.is-on <= halui.machine.is-on net on-button-on halui.machine.on <= toggle2nist.0.on # On = +24V, Off = +0V # 06 Signal Source- Toggle Button on the physical machine panel, shared with Off, net off-button toggle2nist.1.in <= hm2_5i25.0.7i77.0.0.input-05 # net off-button-is-on toggle2nist.1.is-on <= halui.machine.is-on # net off-button-on halui.machine.off <=toggle2nist.1.on # On = +0V, Off = +24V net estop-ext <= hm2_5i25.0.7i77.0.0.input-06 net pv1 <= hm2_5i25.0.7i77.0.0.input-07-not # "Platter Up/Down" toggle button opens PV1, Button Out = +24v, Button In = +0v net atc-index <= hm2_5i25.0.7i77.0.0.input-08-not # "Index Platter" momentary button, rotate ATC 1 tool, Button Out = +24v, Button In = +0v net open-drawbar <= hm2_5i25.0.7i77.0.0.input-09-not # "Drawbar Clamp/Unclamp" toggle button, Button Out = +24v, Button In = +0v net cycle-start halui.program.run <= hm2_5i25.0.7i77.0.0.input-12 # "Cycle Start" Momentary button, Button Out = +0v, Button In = +24v net abort halui.abort <= hm2_5i25.0.7i77.0.0.input-13-not # "Cycle Stop" momentary button, Button Out = +24v, Button In = +0v #************************************** # connect Electronic Door Lock signals #************************************** net door-locked-indicator <= hm2_5i25.0.7i77.0.0.input-14 # Door Locked = +24V, Door Unlocked = +0v, PYVCP, LOCKED = GREEN, UNLOCKED = RED <DOOR HAS TO BE CLOSED TO WORK> net door-closed-indicator hm2_5i25.0.7i77.0.0.input-15 # Door Closed = +24V, Door Open = +0V, PYVCP, DOOR CLOSED = GREEN, OPEN = RED net door-locked => hm2_5i25.0.7i77.0.0.output-11 # TRUE = DOOR LOCKED # --- ENDSTOPS --- net x-min-home <= hm2_5i25.0.7i77.0.0.input-16-not net x-max <= hm2_5i25.0.7i77.0.0.input-17-not net y-min-home <= hm2_5i25.0.7i77.0.0.input-18-not net y-max <= hm2_5i25.0.7i77.0.0.input-19-not net z-max-home <= hm2_5i25.0.7i77.0.0.input-20-not net z-min <= hm2_5i25.0.7i77.0.0.input-21-not #************************************** # connect ATC signals #************************************** net act1-a <= hm2_5i25.0.7i84.0.2.input-03 # Endstop 1 - Pneumatic Actuator 1 (CARRIAGE HOME/UP, PV1 = FALSE) net act1-b <= hm2_5i25.0.7i84.0.2.input-04 # Endstop 2 - Pneumatic Actuator 1 (CARRIAGE DOWN; PV1 = TRUE) net act2-a <= hm2_5i25.0.7i84.0.2.input-05 # Endstop 1 - Pneumatic Actuator 2 (CARRIAGE HOME/IN, PV2 = FALSE) net act2-b <= hm2_5i25.0.7i84.0.2.input-06 # Endstop 2 - Pneumatic Actuator 2 (CARRIAGE OUT = UNDER SPINDLE, PV2 = TRUE) net act3-a <= hm2_5i25.0.7i84.0.2.input-07 # Endstop 1 - Pneumatic Actuator 3 (TOOL HOLDER HOME/DOWN; PV3 = FALSE) net act3-b <= hm2_5i25.0.7i84.0.2.input-08 # Endstop 2 - Pneumatic Actuator 3 (TOOL HOLDER UP = LOAD TOOL; PV3 = TRUE) net PDB-hall-sensor <= hm2_5i25.0.7i84.0.2.input-09 # Hall Effect Sensor 1 - +24V = POWER DRAWBAR OPEN net spindle-hall-sensor <= hm2_5i25.0.7i84.0.2.input-10 # Hall Effect Sensor 2 - +24v = Spindle is in position for tool change #net low-air <= hm2_5i25.0.7i84.0.2.input-11 # LOW AIR PRESSURE SENSOR - LOW AIR = +24v net atc_motor => hm2_5i25.0.7i84.0.2.output-00 # Active rotates ATC CW net pv1 => hm2_5i25.0.7i84.0.2.output-01 # TRUE = ATC DOWN net pv2 => hm2_5i25.0.7i84.0.2.output-02 # TRUE = ATC UNDER SPINDLE net pv3 => hm2_5i25.0.7i84.0.2.output-03 # TRUE = TOOL HOLDER UP net open-drawbar => hm2_5i25.0.7i84.0.2.output-04 # TRUE = POWER DRAWBAR OPEN #************************************** # connect Extra signals #************************************** net light => hm2_5i25.0.7i84.0.2.output-05 net flood-coolant => hm2_5i25.0.7i84.0.2.output-06 net coolant-flood <= iocontrol.0.coolant-flood net zbrake => hm2_5i25.0.7i84.0.2.output-07 # TRUE = zbrake off # net probe-in <= hm2_5i25.0.7177.0.0.input-30 # ---motion control signals--- net in-position <= motion.in-position net machine-is-enabled <= motion.motion-enabled # ---estop signals--- net estop-out <= iocontrol.0.user-enable-out net estop-ext => iocontrol.0.emc-enable-in # ---toolchange signals for custom tool changer--- net tool-number <= iocontrol.0.tool-prep-number net tool-change-request <= iocontrol.0.tool-change net tool-change-confirmed => iocontrol.0.tool-changed net tool-prepare-request <= iocontrol.0.tool-prepare net tool-prepare-confirmed => iocontrol.0.tool-prepared # Load Classicladder without GUI (can reload LADDER GUI in AXIS GUI loadusr classicladder --nogui custom.clp
Code:
# Generated by PNCconf at Mon Sep 14 12:03:23 2015 # If you make changes to this file, they will be # overwritten when you run PNCconf again [EMC] MACHINE = BenchmanXTr_4axis DEBUG = 0 [DISPLAY] DISPLAY = axis POSITION_OFFSET = RELATIVE POSITION_FEEDBACK = ACTUAL MAX_FEED_OVERRIDE = 2.000000 MAX_SPINDLE_OVERRIDE = 1.500000 MIN_SPINDLE_OVERRIDE = 0.500000 INTRO_GRAPHIC = linuxcnc.gif INTRO_TIME = 5 PROGRAM_PREFIX = /home/aaron/linuxcnc/nc_files PYVCP = pyvcp-panel.xml INCREMENTS = 10in 5in 2in 1in .5in .1in .05in .01in .005in .001in .0005in .0001in POSITION_FEEDBACK = ACTUAL DEFAULT_LINEAR_VELOCITY = 0.41666675 MAX_LINEAR_VELOCITY = 3.333334 MIN_LINEAR_VELOCITY = 0.010000 DEFAULT_ANGULAR_VELOCITY = 6.0000012 MAX_ANGULAR_VELOCITY = 12.0000024 MIN_ANGULAR_VELOCITY = 0.010000 EDITOR = gedit GEOMETRY = xyza [FILTER] PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image PROGRAM_EXTENSION = .py Python Script png = image-to-gcode gif = image-to-gcode jpg = image-to-gcode py = python [TASK] TASK = milltask CYCLE_TIME = 0.010 [RS274NGC] PARAMETER_FILE = linuxcnc.var [EMCMOT] EMCMOT = motmod COMM_TIMEOUT = 1.0 COMM_WAIT = 0.010 SERVO_PERIOD = 1000000 [HOSTMOT2] # **** This is for info only **** # DRIVER0=hm2_pci # BOARD0=5i25 [HAL] HALUI = halui HALFILE = BenchmanXTr_4axis.hal HALFILE = custom.hal POSTGUI_HALFILE = postgui_call_list.hal SHUTDOWN = shutdown.hal [HALUI] [TRAJ] AXES = 4 COORDINATES = X Y Z A MAX_ANGULAR_VELOCITY = 360.00 DEFAULT_ANGULAR_VELOCITY = 36.00 LINEAR_UNITS = inch ANGULAR_UNITS = degree CYCLE_TIME = 0.010 DEFAULT_VELOCITY = 0.17 MAX_LINEAR_VELOCITY = 1.67 [EMCIO] EMCIO = io CYCLE_TIME = 0.100 TOOL_TABLE = tool.tbl TOOL_CHANGE_QUILL_UP = 1 #******************** # Axis X #******************** [AXIS_0] TYPE = LINEAR HOME = 0 FERROR = 12 MIN_FERROR = -12 MAX_VELOCITY = 3.333334 MAX_ACCELERATION = 4 P = 25 I = 0 D = 0.04 FF0 = 0 FF1 = 0.42 FF2 = 2e-05 BIAS = 0 DEADBAND = 0.000015 MAX_OUTPUT = 0.09215 ENCODER_SCALE = 50000 OUTPUT_SCALE = 0.097 OUTPUT_MIN_LIMIT = -0.097 OUTPUT_MAX_LIMIT = 0.097 MIN_LIMIT = -0.0 MAX_LIMIT = 12.0 HOME_OFFSET = 6.0 HOME_SEARCH_VEL = 3 HOME_LATCH_VEL = 1 HOME_USE_INDEX = NO HOME_IGNORE_LIMITS = YES #******************** # Axis Y #******************** [AXIS_1] TYPE = LINEAR HOME = 0.0 FERROR = 12 MIN_FERROR = -12 MAX_VELOCITY = 3.333334 MAX_ACCELERATION = 10 P = 30 I = 0 D = 0.04 FF0 = 0 FF1 = 0.042 FF2 = 2e-05 BIAS = 0 DEADBAND = 0.000015 MAX_OUTPUT = 0.09215 ENCODER_SCALE = 50000 OUTPUT_SCALE = 0.097 OUTPUT_MIN_LIMIT = -0.097 OUTPUT_MAX_LIMIT = 0.097 MIN_LIMIT = -0.001 MAX_LIMIT = 7.5 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -0.050000 HOME_LATCH_VEL = -0.016667 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO HOME_IGNORE_LIMITS = YES #******************** # Axis Z #******************** [AXIS_2] TYPE = LINEAR HOME = 0.2 FERROR = 12 MIN_FERROR = -12 MAX_VELOCITY = 3.333334 MAX_ACCELERATION = 10 P = 35 I = 0 D = 0.04 FF0 = 0 FF1 = 0.042 FF2 = 2e-05 BIAS = 0 DEADBAND = 1e-05 MAX_OUTPUT = 0.09215 ENCODER_SCALE = 50000 OUTPUT_SCALE = 0.097 OUTPUT_MIN_LIMIT = -0.097 OUTPUT_MAX_LIMIT = 0.097 MIN_LIMIT = -9.5 MAX_LIMIT = 0.201 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -0.050000 HOME_LATCH_VEL = -0.016667 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO HOME_IGNORE_LIMITS = YES #******************** # Axis A #******************** [AXIS_3] TYPE = ANGULAR HOME = 0.0 FERROR = 360 MIN_FERROR = -360 MAX_VELOCITY = 60 MAX_ACCELERATION = 240 P = 22 I = 0 D = 0 FF0 = 0 FF1 = 0.001 FF2 = 0.0003 BIAS = 0 DEADBAND = 0.000015 MAX_OUTPUT = 0.09215 ENCODER_SCALE = 2000 OUTPUT_SCALE = 0.097 OUTPUT_MIN_LIMIT = -0.097 OUTPUT_MAX_LIMIT = 0.097 MIN_LIMIT = -9999.0 MAX_LIMIT = 9999.0 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -2.000000 HOME_LATCH_VEL = -0.500000 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO HOME_IGNORE_LIMITS = YES #******************** # Spindle #******************** [SPINDLE_9] P = 200 I = 0.0 D = 0.0 FF0 = 0 FF1 = 0.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.000015 MAX_OUTPUT = 4900 ENCODER_SCALE = 8000.0 OUTPUT_SCALE = 5000 OUTPUT_MIN_LIMIT = -5000 OUTPUT_MAX_LIMIT = 5000

Please Log in to join the conversation.

More
11 years 1 week ago #63890 by MacGalempsy
In the end, the HAL file needed a line added:

net spindle-enable => hm2_5i25.0.7i77.0.1.spinena

That problem is solved! On to the next issue.

Thanks again guys!

Please Log in to join the conversation.

Time to create page: 0.108 seconds
Powered by Kunena Forum