Help choosing a good card setup
- PCW
- Offline
- Moderator
Less
More
- Posts: 17912
- Thank you received: 4797
08 Oct 2019 20:42 #147496
by PCW
Replied by PCW on topic Help choosing a good card setup
That will have the driver included
man hm2_eth
Should give you the basic loading instructions
man hm2_eth
Should give you the basic loading instructions
Please Log in or Create an account to join the conversation.
- jonch919
- Offline
- Senior Member
Less
More
- Posts: 42
- Thank you received: 0
08 Oct 2019 21:37 #147500
by jonch919
LinuxCNC version 2.7.14
unama -a -->
Linux cortini 4.9.0-11-rt-amd64 #1 SMP PREEMPT RT Debian 4.9.189-3+deb9u1 (2019-09-20) x86_64 GNU/Linux
Hal and ini just created without real numbers for testing.
Also an error.txt for when I start linuxcnc with my profile.
It starts fine with just axis, but not with my own config. (which Tommy asked about above, sorry)
Replied by jonch919 on topic Help choosing a good card setup
I'm running linuxcnc-stretch-uspace-amd64.iso
What version linuxcnc are you using?
What is the output of uname -a
Show us your hal and ini files.
I'm running linuxcnc-stretch-uspace-amd64.iso
What version linuxcnc are you using?
What is the output of uname -a
Show us your hal and ini files.
LinuxCNC version 2.7.14
unama -a -->
Linux cortini 4.9.0-11-rt-amd64 #1 SMP PREEMPT RT Debian 4.9.189-3+deb9u1 (2019-09-20) x86_64 GNU/Linux
Hal and ini just created without real numbers for testing.
Also an error.txt for when I start linuxcnc with my profile.
It starts fine with just axis, but not with my own config. (which Tommy asked about above, sorry)
Please Log in or Create an account to join the conversation.
- bevins
- Offline
- Platinum Member
Less
More
- Posts: 1937
- Thank you received: 335
09 Oct 2019 00:56 - 09 Oct 2019 01:32 #147523
by bevins
Replied by bevins on topic Help choosing a good card setup
Should be posted something like this. These are your files. Cant read it the way you posted.
Your missing sserial port 1 entry in your loadrt.
Try something like this....
I guess networking is ok if linuxcnc starts, but can you ping 10.10.10.10?
Why do you have stepgens all over. Do you not have a 7i77?
post the hal file that you can start linuxcnc with.
Warning: Spoiler!
# Generated by PNCconf at Tue Oct 8 23:29:04 2019
# If you make changes to this file, they will be
# overwritten when you run PNCconf again
[EMC]
MACHINE = cortini
DEBUG = 0
[DISPLAY]
DISPLAY = axis
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 2.000000
MAX_SPINDLE_OVERRIDE = 1.000000
MIN_SPINDLE_OVERRIDE = 0.500000
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/jonas/linuxcnc/nc_files
INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm
POSITION_FEEDBACK = ACTUAL
DEFAULT_LINEAR_VELOCITY = 6.000000
MAX_LINEAR_VELOCITY = 25.000000
MIN_LINEAR_VELOCITY = 0.500000
DEFAULT_ANGULAR_VELOCITY = 12.000000
MAX_ANGULAR_VELOCITY = 180.000000
MIN_ANGULAR_VELOCITY = 1.666667
EDITOR = gedit
GEOMETRY = xyz
[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_eth
# BOARD0=7i92
[HAL]
HALUI = halui
HALFILE = cortini.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 = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 2.50
MAX_LINEAR_VELOCITY = 25.00
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl
#********************
# Axis X
#********************
[AXIS_0]
TYPE = LINEAR
HOME = 0.0
FERROR = 10.0
MIN_FERROR = 1.0
MAX_VELOCITY = 25.0
MAX_ACCELERATION = 750.0
# The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION
# If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger.
STEPGEN_MAXVEL = 31.25
STEPGEN_MAXACCEL = 937.50
P = 1000.0
I = 0.0
D = 0.0
FF0 = 0.0
FF1 = 1.0
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 0.0
# these are in nanoseconds
DIRSETUP = 10000
DIRHOLD = 10000
STEPLEN = 5000
STEPSPACE = 5000
STEP_SCALE = 200.0
MIN_LIMIT = -0.01
MAX_LIMIT = 200.0
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = -1.000000
HOME_LATCH_VEL = -0.500000
HOME_FINAL_VEL = 0.000000
HOME_USE_INDEX = NO
HOME_SEQUENCE = 1
#********************
# Axis Y
#********************
[AXIS_1]
TYPE = LINEAR
HOME = 0.0
FERROR = 10.0
MIN_FERROR = 1.0
MAX_VELOCITY = 25.0
MAX_ACCELERATION = 750.0
# The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION
# If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger.
STEPGEN_MAXVEL = 31.25
STEPGEN_MAXACCEL = 937.50
P = 1000.0
I = 0.0
D = 0.0
FF0 = 0.0
FF1 = 1.0
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 0.0
# these are in nanoseconds
DIRSETUP = 10000
DIRHOLD = 10000
STEPLEN = 5000
STEPSPACE = 5000
STEP_SCALE = 200.0
MIN_LIMIT = -0.01
MAX_LIMIT = 200.0
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = -1.000000
HOME_LATCH_VEL = -0.500000
HOME_FINAL_VEL = 0.000000
HOME_USE_INDEX = NO
HOME_SEQUENCE = 2
#********************
# Axis Z
#********************
[AXIS_2]
TYPE = LINEAR
HOME = 0.0
FERROR = 10.0
MIN_FERROR = 1.0
MAX_VELOCITY = 25.0
MAX_ACCELERATION = 750.0
# The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION
# If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger.
STEPGEN_MAXVEL = 31.25
STEPGEN_MAXACCEL = 937.50
P = 1000.0
I = 0.0
D = 0.0
FF0 = 0.0
FF1 = 1.0
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 0.0
# these are in nanoseconds
DIRSETUP = 10000
DIRHOLD = 10000
STEPLEN = 5000
STEPSPACE = 5000
STEP_SCALE = 200.0
MIN_LIMIT = -100.0
MAX_LIMIT = 0.01
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = -1.000000
HOME_LATCH_VEL = -0.500000
HOME_FINAL_VEL = 0.000000
HOME_USE_INDEX = NO
HOME_SEQUENCE = 0
#********************
# Axis A
#********************
[AXIS_3]
TYPE = ANGULAR
HOME = 0.0
FERROR = 0.5
MIN_FERROR = 0.05
MAX_VELOCITY = 360.0
MAX_ACCELERATION = 1200.0
# The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION
# If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger.
STEPGEN_MAXVEL = 450.00
STEPGEN_MAXACCEL = 1500.00
P = 1000.0
I = 0.0
D = 0.0
FF0 = 0.0
FF1 = 1.0
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 0.0
# these are in nanoseconds
DIRSETUP = 10000
DIRHOLD = 10000
STEPLEN = 5000
STEPSPACE = 5000
STEP_SCALE = 200.0
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_SEQUENCE = 3
#********************
# Spindle
#********************
[SPINDLE_9]
MAX_VELOCITY = 2000.0
MAX_ACCELERATION = 300.0
# The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION
# If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger.
STEPGEN_MAXVEL = 2500.00
STEPGEN_MAXACCEL = 375.00
P = 0.0
I = 0.0
D = 0.0
FF0 = 1.0
FF1 = 0.0
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 2000.0
# these are in nanoseconds
DIRSETUP = 10000
DIRHOLD = 10000
STEPLEN = 5000
STEPSPACE = 5000
STEP_SCALE = 200.0
Warning: Spoiler!
# Generated by PNCconf at Tue Oct 8 23:29:04 2019
# 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_eth board_ip="10.10.10.10" config=" num_encoders=2 num_pwmgens=0 num_stepgens=10 sserial_port_0=0000xx"
setp hm2_7i92.0.watchdog.timeout_ns 5000000
loadrt pid names=pid.x,pid.y,pid.z,pid.a,pid.s
addf hm2_7i92.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 hm2_7i92.0.write servo-thread
setp hm2_7i92.0.dpll.01.timer-us -50
setp hm2_7i92.0.stepgen.timer-number 1
# external output signals
# --- SPINDLE-ON ---
net spindle-on hm2_7i92.0.7i84.0.3.output-00
# external input signals
# --- HOME-X ---
net home-x <= hm2_7i92.0.7i84.0.3.input-00
# --- HOME-Y ---
net home-y <= hm2_7i92.0.7i84.0.3.input-01
# --- HOME-Z ---
net home-z <= hm2_7i92.0.7i84.0.3.input-02
# --- HOME-A ---
net home-a <= hm2_7i92.0.7i84.0.3.input-03
# --- ESTOP-EXT ---
net estop-ext <= hm2_7i92.0.7i84.0.3.input-04
#*******************
# 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_7i92.0.stepgen.00.dirsetup [AXIS_0]DIRSETUP
setp hm2_7i92.0.stepgen.00.dirhold [AXIS_0]DIRHOLD
setp hm2_7i92.0.stepgen.00.steplen [AXIS_0]STEPLEN
setp hm2_7i92.0.stepgen.00.stepspace [AXIS_0]STEPSPACE
setp hm2_7i92.0.stepgen.00.position-scale [AXIS_0]STEP_SCALE
setp hm2_7i92.0.stepgen.00.step_type 0
setp hm2_7i92.0.stepgen.00.control-type 1
setp hm2_7i92.0.stepgen.00.maxaccel [AXIS_0]STEPGEN_MAXACCEL
setp hm2_7i92.0.stepgen.00.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_7i92.0.stepgen.00.velocity-cmd
net x-pos-fb <= hm2_7i92.0.stepgen.00.position-fb
net x-pos-fb => axis.0.motor-pos-fb
net x-enable <= axis.0.amp-enable-out
net x-enable => hm2_7i92.0.stepgen.00.enable
# ---setup home / limit switch signals---
net home-x => 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 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
# Step Gen signals/setup
setp hm2_7i92.0.stepgen.01.dirsetup [AXIS_1]DIRSETUP
setp hm2_7i92.0.stepgen.01.dirhold [AXIS_1]DIRHOLD
setp hm2_7i92.0.stepgen.01.steplen [AXIS_1]STEPLEN
setp hm2_7i92.0.stepgen.01.stepspace [AXIS_1]STEPSPACE
setp hm2_7i92.0.stepgen.01.position-scale [AXIS_1]STEP_SCALE
setp hm2_7i92.0.stepgen.01.step_type 0
setp hm2_7i92.0.stepgen.01.control-type 1
setp hm2_7i92.0.stepgen.01.maxaccel [AXIS_1]STEPGEN_MAXACCEL
setp hm2_7i92.0.stepgen.01.maxvel [AXIS_1]STEPGEN_MAXVEL
# ---closedloop stepper signals---
net y-pos-cmd <= axis.1.motor-pos-cmd
net y-vel-cmd <= axis.1.joint-vel-cmd
net y-output => hm2_7i92.0.stepgen.01.velocity-cmd
net y-pos-fb <= hm2_7i92.0.stepgen.01.position-fb
net y-pos-fb => axis.1.motor-pos-fb
net y-enable <= axis.1.amp-enable-out
net y-enable => hm2_7i92.0.stepgen.01.enable
# ---setup home / limit switch signals---
net home-y => axis.1.home-sw-in
net y-neg-limit => axis.1.neg-lim-sw-in
net y-pos-limit => 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
# Step Gen signals/setup
setp hm2_7i92.0.stepgen.02.dirsetup [AXIS_2]DIRSETUP
setp hm2_7i92.0.stepgen.02.dirhold [AXIS_2]DIRHOLD
setp hm2_7i92.0.stepgen.02.steplen [AXIS_2]STEPLEN
setp hm2_7i92.0.stepgen.02.stepspace [AXIS_2]STEPSPACE
setp hm2_7i92.0.stepgen.02.position-scale [AXIS_2]STEP_SCALE
setp hm2_7i92.0.stepgen.02.step_type 0
setp hm2_7i92.0.stepgen.02.control-type 1
setp hm2_7i92.0.stepgen.02.maxaccel [AXIS_2]STEPGEN_MAXACCEL
setp hm2_7i92.0.stepgen.02.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_7i92.0.stepgen.02.velocity-cmd
net z-pos-fb <= hm2_7i92.0.stepgen.02.position-fb
net z-pos-fb => axis.2.motor-pos-fb
net z-enable <= axis.2.amp-enable-out
net z-enable => hm2_7i92.0.stepgen.02.enable
# ---setup home / limit switch signals---
net home-z => 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
#*******************
# 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
# Step Gen signals/setup
setp hm2_7i92.0.stepgen.03.dirsetup [AXIS_3]DIRSETUP
setp hm2_7i92.0.stepgen.03.dirhold [AXIS_3]DIRHOLD
setp hm2_7i92.0.stepgen.03.steplen [AXIS_3]STEPLEN
setp hm2_7i92.0.stepgen.03.stepspace [AXIS_3]STEPSPACE
setp hm2_7i92.0.stepgen.03.position-scale [AXIS_3]STEP_SCALE
setp hm2_7i92.0.stepgen.03.step_type 0
setp hm2_7i92.0.stepgen.03.control-type 1
setp hm2_7i92.0.stepgen.03.maxaccel [AXIS_3]STEPGEN_MAXACCEL
setp hm2_7i92.0.stepgen.03.maxvel [AXIS_3]STEPGEN_MAXVEL
# ---closedloop stepper signals---
net a-pos-cmd <= axis.3.motor-pos-cmd
net a-vel-cmd <= axis.3.joint-vel-cmd
net a-output => hm2_7i92.0.stepgen.03.velocity-cmd
net a-pos-fb <= hm2_7i92.0.stepgen.03.position-fb
net a-pos-fb => axis.3.motor-pos-fb
net a-enable <= axis.3.amp-enable-out
net a-enable => hm2_7i92.0.stepgen.03.enable
# ---setup home / limit switch signals---
net home-a => axis.3.home-sw-in
net a-neg-limit => axis.3.neg-lim-sw-in
net a-pos-limit => 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
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
# Step Gen signals/setup
setp hm2_7i92.0.stepgen.04.dirsetup [SPINDLE_9]DIRSETUP
setp hm2_7i92.0.stepgen.04.dirhold [SPINDLE_9]DIRHOLD
setp hm2_7i92.0.stepgen.04.steplen [SPINDLE_9]STEPLEN
setp hm2_7i92.0.stepgen.04.stepspace [SPINDLE_9]STEPSPACE
setp hm2_7i92.0.stepgen.04.position-scale [SPINDLE_9]STEP_SCALE
setp hm2_7i92.0.stepgen.04.step_type 0
setp hm2_7i92.0.stepgen.04.control-type 1
setp hm2_7i92.0.stepgen.04.maxaccel [SPINDLE_9]MAX_ACCELERATION
setp hm2_7i92.0.stepgen.04.maxvel [SPINDLE_9]MAX_VELOCITY
net spindle-enable => hm2_7i92.0.stepgen.04.enable
net spindle-vel-cmd-rps => hm2_7i92.0.stepgen.04.velocity-cmd
net spindle-vel-fb-rps <= hm2_7i92.0.stepgen.04.velocity-fb
# ---closedloop stepper signals---
net s-pos-cmd <= axis.9.motor-pos-cmd
net s-vel-cmd <= axis.9.joint-vel-cmd
net s-output => hm2_7i92.0.stepgen.04.velocity-cmd
net s-pos-fb <= hm2_7i92.0.stepgen.04.position-fb
net s-pos-fb => axis.9.motor-pos-fb
net s-enable <= axis.9.amp-enable-out
net s-enable => hm2_7i92.0.stepgen.04.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-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-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 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---
# ---estop signals---
net estop-out <= iocontrol.0.user-enable-out
net estop-ext => iocontrol.0.emc-enable-in
# ---manual tool change signals---
loadusr -W hal_manualtoolchange
net tool-change-request iocontrol.0.tool-change => hal_manualtoolchange.change
net tool-change-confirmed 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
Your missing sserial port 1 entry in your loadrt.
Try something like this....
loadrt hm2_eth board_ip="10.10.10.10" config=" num_encoders=6 num_pwmgens=0 num_stepgens=0 sserial_port_0=200xxx sserial_port_1=00000000"
I guess networking is ok if linuxcnc starts, but can you ping 10.10.10.10?
Why do you have stepgens all over. Do you not have a 7i77?
post the hal file that you can start linuxcnc with.
Last edit: 09 Oct 2019 01:32 by bevins.
Please Log in or Create an account to join the conversation.
- jonch919
- Offline
- Senior Member
Less
More
- Posts: 42
- Thank you received: 0
09 Oct 2019 16:16 #147574
by jonch919
I can connect and ping the 7i92. But I still get some errors. Maybe I should try more cables.
What still bothers me is the red LED CR6 being on, whick means field power fault.
Replied by jonch919 on topic Help choosing a good card setup
Thanks, will try that later.Should be posted something like this. These are your files. Cant read it the way you posted.
Warning: Spoiler!# Generated by PNCconf at Tue Oct 8 23:29:04 2019 # If you make changes to this file, they will be # overwritten when you run PNCconf again [EMC] MACHINE = cortini DEBUG = 0 [DISPLAY] DISPLAY = axis POSITION_OFFSET = RELATIVE POSITION_FEEDBACK = ACTUAL MAX_FEED_OVERRIDE = 2.000000 MAX_SPINDLE_OVERRIDE = 1.000000 MIN_SPINDLE_OVERRIDE = 0.500000 INTRO_GRAPHIC = linuxcnc.gif INTRO_TIME = 5 PROGRAM_PREFIX = /home/jonas/linuxcnc/nc_files INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm POSITION_FEEDBACK = ACTUAL DEFAULT_LINEAR_VELOCITY = 6.000000 MAX_LINEAR_VELOCITY = 25.000000 MIN_LINEAR_VELOCITY = 0.500000 DEFAULT_ANGULAR_VELOCITY = 12.000000 MAX_ANGULAR_VELOCITY = 180.000000 MIN_ANGULAR_VELOCITY = 1.666667 EDITOR = gedit GEOMETRY = xyz [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_eth # BOARD0=7i92 [HAL] HALUI = halui HALFILE = cortini.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 = mm ANGULAR_UNITS = degree CYCLE_TIME = 0.010 DEFAULT_VELOCITY = 2.50 MAX_LINEAR_VELOCITY = 25.00 [EMCIO] EMCIO = io CYCLE_TIME = 0.100 TOOL_TABLE = tool.tbl #******************** # Axis X #******************** [AXIS_0] TYPE = LINEAR HOME = 0.0 FERROR = 10.0 MIN_FERROR = 1.0 MAX_VELOCITY = 25.0 MAX_ACCELERATION = 750.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 31.25 STEPGEN_MAXACCEL = 937.50 P = 1000.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 200.0 MIN_LIMIT = -0.01 MAX_LIMIT = 200.0 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -1.000000 HOME_LATCH_VEL = -0.500000 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO HOME_SEQUENCE = 1 #******************** # Axis Y #******************** [AXIS_1] TYPE = LINEAR HOME = 0.0 FERROR = 10.0 MIN_FERROR = 1.0 MAX_VELOCITY = 25.0 MAX_ACCELERATION = 750.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 31.25 STEPGEN_MAXACCEL = 937.50 P = 1000.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 200.0 MIN_LIMIT = -0.01 MAX_LIMIT = 200.0 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -1.000000 HOME_LATCH_VEL = -0.500000 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO HOME_SEQUENCE = 2 #******************** # Axis Z #******************** [AXIS_2] TYPE = LINEAR HOME = 0.0 FERROR = 10.0 MIN_FERROR = 1.0 MAX_VELOCITY = 25.0 MAX_ACCELERATION = 750.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 31.25 STEPGEN_MAXACCEL = 937.50 P = 1000.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 200.0 MIN_LIMIT = -100.0 MAX_LIMIT = 0.01 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -1.000000 HOME_LATCH_VEL = -0.500000 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO HOME_SEQUENCE = 0 #******************** # Axis A #******************** [AXIS_3] TYPE = ANGULAR HOME = 0.0 FERROR = 0.5 MIN_FERROR = 0.05 MAX_VELOCITY = 360.0 MAX_ACCELERATION = 1200.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 450.00 STEPGEN_MAXACCEL = 1500.00 P = 1000.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 200.0 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_SEQUENCE = 3 #******************** # Spindle #******************** [SPINDLE_9] MAX_VELOCITY = 2000.0 MAX_ACCELERATION = 300.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 2500.00 STEPGEN_MAXACCEL = 375.00 P = 0.0 I = 0.0 D = 0.0 FF0 = 1.0 FF1 = 0.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 2000.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 200.0
Warning: Spoiler!# Generated by PNCconf at Tue Oct 8 23:29:04 2019 # 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_eth board_ip="10.10.10.10" config=" num_encoders=2 num_pwmgens=0 num_stepgens=10 sserial_port_0=0000xx" setp hm2_7i92.0.watchdog.timeout_ns 5000000 loadrt pid names=pid.x,pid.y,pid.z,pid.a,pid.s addf hm2_7i92.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 hm2_7i92.0.write servo-thread setp hm2_7i92.0.dpll.01.timer-us -50 setp hm2_7i92.0.stepgen.timer-number 1 # external output signals # --- SPINDLE-ON --- net spindle-on hm2_7i92.0.7i84.0.3.output-00 # external input signals # --- HOME-X --- net home-x <= hm2_7i92.0.7i84.0.3.input-00 # --- HOME-Y --- net home-y <= hm2_7i92.0.7i84.0.3.input-01 # --- HOME-Z --- net home-z <= hm2_7i92.0.7i84.0.3.input-02 # --- HOME-A --- net home-a <= hm2_7i92.0.7i84.0.3.input-03 # --- ESTOP-EXT --- net estop-ext <= hm2_7i92.0.7i84.0.3.input-04 #******************* # 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_7i92.0.stepgen.00.dirsetup [AXIS_0]DIRSETUP setp hm2_7i92.0.stepgen.00.dirhold [AXIS_0]DIRHOLD setp hm2_7i92.0.stepgen.00.steplen [AXIS_0]STEPLEN setp hm2_7i92.0.stepgen.00.stepspace [AXIS_0]STEPSPACE setp hm2_7i92.0.stepgen.00.position-scale [AXIS_0]STEP_SCALE setp hm2_7i92.0.stepgen.00.step_type 0 setp hm2_7i92.0.stepgen.00.control-type 1 setp hm2_7i92.0.stepgen.00.maxaccel [AXIS_0]STEPGEN_MAXACCEL setp hm2_7i92.0.stepgen.00.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_7i92.0.stepgen.00.velocity-cmd net x-pos-fb <= hm2_7i92.0.stepgen.00.position-fb net x-pos-fb => axis.0.motor-pos-fb net x-enable <= axis.0.amp-enable-out net x-enable => hm2_7i92.0.stepgen.00.enable # ---setup home / limit switch signals--- net home-x => 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 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 # Step Gen signals/setup setp hm2_7i92.0.stepgen.01.dirsetup [AXIS_1]DIRSETUP setp hm2_7i92.0.stepgen.01.dirhold [AXIS_1]DIRHOLD setp hm2_7i92.0.stepgen.01.steplen [AXIS_1]STEPLEN setp hm2_7i92.0.stepgen.01.stepspace [AXIS_1]STEPSPACE setp hm2_7i92.0.stepgen.01.position-scale [AXIS_1]STEP_SCALE setp hm2_7i92.0.stepgen.01.step_type 0 setp hm2_7i92.0.stepgen.01.control-type 1 setp hm2_7i92.0.stepgen.01.maxaccel [AXIS_1]STEPGEN_MAXACCEL setp hm2_7i92.0.stepgen.01.maxvel [AXIS_1]STEPGEN_MAXVEL # ---closedloop stepper signals--- net y-pos-cmd <= axis.1.motor-pos-cmd net y-vel-cmd <= axis.1.joint-vel-cmd net y-output => hm2_7i92.0.stepgen.01.velocity-cmd net y-pos-fb <= hm2_7i92.0.stepgen.01.position-fb net y-pos-fb => axis.1.motor-pos-fb net y-enable <= axis.1.amp-enable-out net y-enable => hm2_7i92.0.stepgen.01.enable # ---setup home / limit switch signals--- net home-y => axis.1.home-sw-in net y-neg-limit => axis.1.neg-lim-sw-in net y-pos-limit => 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 # Step Gen signals/setup setp hm2_7i92.0.stepgen.02.dirsetup [AXIS_2]DIRSETUP setp hm2_7i92.0.stepgen.02.dirhold [AXIS_2]DIRHOLD setp hm2_7i92.0.stepgen.02.steplen [AXIS_2]STEPLEN setp hm2_7i92.0.stepgen.02.stepspace [AXIS_2]STEPSPACE setp hm2_7i92.0.stepgen.02.position-scale [AXIS_2]STEP_SCALE setp hm2_7i92.0.stepgen.02.step_type 0 setp hm2_7i92.0.stepgen.02.control-type 1 setp hm2_7i92.0.stepgen.02.maxaccel [AXIS_2]STEPGEN_MAXACCEL setp hm2_7i92.0.stepgen.02.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_7i92.0.stepgen.02.velocity-cmd net z-pos-fb <= hm2_7i92.0.stepgen.02.position-fb net z-pos-fb => axis.2.motor-pos-fb net z-enable <= axis.2.amp-enable-out net z-enable => hm2_7i92.0.stepgen.02.enable # ---setup home / limit switch signals--- net home-z => 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 #******************* # 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 # Step Gen signals/setup setp hm2_7i92.0.stepgen.03.dirsetup [AXIS_3]DIRSETUP setp hm2_7i92.0.stepgen.03.dirhold [AXIS_3]DIRHOLD setp hm2_7i92.0.stepgen.03.steplen [AXIS_3]STEPLEN setp hm2_7i92.0.stepgen.03.stepspace [AXIS_3]STEPSPACE setp hm2_7i92.0.stepgen.03.position-scale [AXIS_3]STEP_SCALE setp hm2_7i92.0.stepgen.03.step_type 0 setp hm2_7i92.0.stepgen.03.control-type 1 setp hm2_7i92.0.stepgen.03.maxaccel [AXIS_3]STEPGEN_MAXACCEL setp hm2_7i92.0.stepgen.03.maxvel [AXIS_3]STEPGEN_MAXVEL # ---closedloop stepper signals--- net a-pos-cmd <= axis.3.motor-pos-cmd net a-vel-cmd <= axis.3.joint-vel-cmd net a-output => hm2_7i92.0.stepgen.03.velocity-cmd net a-pos-fb <= hm2_7i92.0.stepgen.03.position-fb net a-pos-fb => axis.3.motor-pos-fb net a-enable <= axis.3.amp-enable-out net a-enable => hm2_7i92.0.stepgen.03.enable # ---setup home / limit switch signals--- net home-a => axis.3.home-sw-in net a-neg-limit => axis.3.neg-lim-sw-in net a-pos-limit => 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 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 # Step Gen signals/setup setp hm2_7i92.0.stepgen.04.dirsetup [SPINDLE_9]DIRSETUP setp hm2_7i92.0.stepgen.04.dirhold [SPINDLE_9]DIRHOLD setp hm2_7i92.0.stepgen.04.steplen [SPINDLE_9]STEPLEN setp hm2_7i92.0.stepgen.04.stepspace [SPINDLE_9]STEPSPACE setp hm2_7i92.0.stepgen.04.position-scale [SPINDLE_9]STEP_SCALE setp hm2_7i92.0.stepgen.04.step_type 0 setp hm2_7i92.0.stepgen.04.control-type 1 setp hm2_7i92.0.stepgen.04.maxaccel [SPINDLE_9]MAX_ACCELERATION setp hm2_7i92.0.stepgen.04.maxvel [SPINDLE_9]MAX_VELOCITY net spindle-enable => hm2_7i92.0.stepgen.04.enable net spindle-vel-cmd-rps => hm2_7i92.0.stepgen.04.velocity-cmd net spindle-vel-fb-rps <= hm2_7i92.0.stepgen.04.velocity-fb # ---closedloop stepper signals--- net s-pos-cmd <= axis.9.motor-pos-cmd net s-vel-cmd <= axis.9.joint-vel-cmd net s-output => hm2_7i92.0.stepgen.04.velocity-cmd net s-pos-fb <= hm2_7i92.0.stepgen.04.position-fb net s-pos-fb => axis.9.motor-pos-fb net s-enable <= axis.9.amp-enable-out net s-enable => hm2_7i92.0.stepgen.04.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-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-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 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--- # ---estop signals--- net estop-out <= iocontrol.0.user-enable-out net estop-ext => iocontrol.0.emc-enable-in # ---manual tool change signals--- loadusr -W hal_manualtoolchange net tool-change-request iocontrol.0.tool-change => hal_manualtoolchange.change net tool-change-confirmed 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
Your missing sserial port 1 entry in your loadrt.
Try something like this....
loadrt hm2_eth board_ip="10.10.10.10" config=" num_encoders=6 num_pwmgens=0 num_stepgens=0 sserial_port_0=200xxx sserial_port_1=00000000"
I guess networking is ok if linuxcnc starts, but can you ping 10.10.10.10?
Why do you have stepgens all over. Do you not have a 7i77?
post the hal file that you can start linuxcnc with.
I can connect and ping the 7i92. But I still get some errors. Maybe I should try more cables.
What still bothers me is the red LED CR6 being on, whick means field power fault.
Please Log in or Create an account to join the conversation.
- PCW
- Offline
- Moderator
Less
More
- Posts: 17912
- Thank you received: 4797
09 Oct 2019 16:46 #147576
by PCW
Replied by PCW on topic Help choosing a good card setup
The red LED on a 7I77 or 7I84 is the generic fault light
It will be illuminated on any fault so will always be illuminated
when LinuxCNC is not communicating with the board
(so you have a watchdog timeout fault)
It will be illuminated on any fault so will always be illuminated
when LinuxCNC is not communicating with the board
(so you have a watchdog timeout fault)
Please Log in or Create an account to join the conversation.
- tommylight
- Online
- Moderator
Less
More
- Posts: 19434
- Thank you received: 6508
09 Oct 2019 17:01 #147577
by tommylight
Replied by tommylight on topic Help choosing a good card setup
Attachments:
The following user(s) said Thank You: chimeno
Please Log in or Create an account to join the conversation.
- jonch919
- Offline
- Senior Member
Less
More
- Posts: 42
- Thank you received: 0
09 Oct 2019 17:40 #147578
by jonch919
Replied by jonch919 on topic Help choosing a good card setup
Sorry, I meant on the 7i84.Working 7i92 and lights
Please Log in or Create an account to join the conversation.
- jonch919
- Offline
- Senior Member
Less
More
- Posts: 42
- Thank you received: 0
09 Oct 2019 17:41 #147579
by jonch919
Replied by jonch919 on topic Help choosing a good card setup
Aah, thanks. I must have misinterpreted the manual.The red LED on a 7I77 or 7I84 is the generic fault light
It will be illuminated on any fault so will always be illuminated
when LinuxCNC is not communicating with the board
(so you have a watchdog timeout fault)
Please Log in or Create an account to join the conversation.
- jonch919
- Offline
- Senior Member
Less
More
- Posts: 42
- Thank you received: 0
09 Oct 2019 18:55 - 09 Oct 2019 19:14 #147585
by jonch919
Not sure about those stepgens. How do I setup the second port on the 7i92 to communicate with the Leadshine MX4660 and send stepper signals etc properly? In pncconf there are limited options for firmwares.
What I've done now is to select the 7i84 as a sserial on port 1.
If I comment out all stepgen lines in HAL I can start LinuxCNC but with an error that can be closed:
When Axis start I galso get realtime error and a 7i92 error.
Under HAL configuration I see nothing about the 7i84, and also the red light CR6 is still on.
I can not ping the 7i92 on 10.10.10.10 while Axis is running. But it works fine when Axis is not running.
Current HAL:
Replied by jonch919 on topic Help choosing a good card setup
I've tried putting the extra sserial info in HAL, but it didn't do any difference. Should the it look exactly like that or are the numbers different for everyone? If so, how can I find out what to put there?Should be posted something like this. These are your files. Cant read it the way you posted.
Warning: Spoiler!# Generated by PNCconf at Tue Oct 8 23:29:04 2019 # If you make changes to this file, they will be # overwritten when you run PNCconf again [EMC] MACHINE = cortini DEBUG = 0 [DISPLAY] DISPLAY = axis POSITION_OFFSET = RELATIVE POSITION_FEEDBACK = ACTUAL MAX_FEED_OVERRIDE = 2.000000 MAX_SPINDLE_OVERRIDE = 1.000000 MIN_SPINDLE_OVERRIDE = 0.500000 INTRO_GRAPHIC = linuxcnc.gif INTRO_TIME = 5 PROGRAM_PREFIX = /home/jonas/linuxcnc/nc_files INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm POSITION_FEEDBACK = ACTUAL DEFAULT_LINEAR_VELOCITY = 6.000000 MAX_LINEAR_VELOCITY = 25.000000 MIN_LINEAR_VELOCITY = 0.500000 DEFAULT_ANGULAR_VELOCITY = 12.000000 MAX_ANGULAR_VELOCITY = 180.000000 MIN_ANGULAR_VELOCITY = 1.666667 EDITOR = gedit GEOMETRY = xyz [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_eth # BOARD0=7i92 [HAL] HALUI = halui HALFILE = cortini.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 = mm ANGULAR_UNITS = degree CYCLE_TIME = 0.010 DEFAULT_VELOCITY = 2.50 MAX_LINEAR_VELOCITY = 25.00 [EMCIO] EMCIO = io CYCLE_TIME = 0.100 TOOL_TABLE = tool.tbl #******************** # Axis X #******************** [AXIS_0] TYPE = LINEAR HOME = 0.0 FERROR = 10.0 MIN_FERROR = 1.0 MAX_VELOCITY = 25.0 MAX_ACCELERATION = 750.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 31.25 STEPGEN_MAXACCEL = 937.50 P = 1000.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 200.0 MIN_LIMIT = -0.01 MAX_LIMIT = 200.0 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -1.000000 HOME_LATCH_VEL = -0.500000 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO HOME_SEQUENCE = 1 #******************** # Axis Y #******************** [AXIS_1] TYPE = LINEAR HOME = 0.0 FERROR = 10.0 MIN_FERROR = 1.0 MAX_VELOCITY = 25.0 MAX_ACCELERATION = 750.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 31.25 STEPGEN_MAXACCEL = 937.50 P = 1000.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 200.0 MIN_LIMIT = -0.01 MAX_LIMIT = 200.0 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -1.000000 HOME_LATCH_VEL = -0.500000 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO HOME_SEQUENCE = 2 #******************** # Axis Z #******************** [AXIS_2] TYPE = LINEAR HOME = 0.0 FERROR = 10.0 MIN_FERROR = 1.0 MAX_VELOCITY = 25.0 MAX_ACCELERATION = 750.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 31.25 STEPGEN_MAXACCEL = 937.50 P = 1000.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 200.0 MIN_LIMIT = -100.0 MAX_LIMIT = 0.01 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -1.000000 HOME_LATCH_VEL = -0.500000 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO HOME_SEQUENCE = 0 #******************** # Axis A #******************** [AXIS_3] TYPE = ANGULAR HOME = 0.0 FERROR = 0.5 MIN_FERROR = 0.05 MAX_VELOCITY = 360.0 MAX_ACCELERATION = 1200.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 450.00 STEPGEN_MAXACCEL = 1500.00 P = 1000.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 200.0 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_SEQUENCE = 3 #******************** # Spindle #******************** [SPINDLE_9] MAX_VELOCITY = 2000.0 MAX_ACCELERATION = 300.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 2500.00 STEPGEN_MAXACCEL = 375.00 P = 0.0 I = 0.0 D = 0.0 FF0 = 1.0 FF1 = 0.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 2000.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 200.0
Warning: Spoiler!# Generated by PNCconf at Tue Oct 8 23:29:04 2019 # 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_eth board_ip="10.10.10.10" config=" num_encoders=2 num_pwmgens=0 num_stepgens=10 sserial_port_0=0000xx" setp hm2_7i92.0.watchdog.timeout_ns 5000000 loadrt pid names=pid.x,pid.y,pid.z,pid.a,pid.s addf hm2_7i92.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 hm2_7i92.0.write servo-thread setp hm2_7i92.0.dpll.01.timer-us -50 setp hm2_7i92.0.stepgen.timer-number 1 # external output signals # --- SPINDLE-ON --- net spindle-on hm2_7i92.0.7i84.0.3.output-00 # external input signals # --- HOME-X --- net home-x <= hm2_7i92.0.7i84.0.3.input-00 # --- HOME-Y --- net home-y <= hm2_7i92.0.7i84.0.3.input-01 # --- HOME-Z --- net home-z <= hm2_7i92.0.7i84.0.3.input-02 # --- HOME-A --- net home-a <= hm2_7i92.0.7i84.0.3.input-03 # --- ESTOP-EXT --- net estop-ext <= hm2_7i92.0.7i84.0.3.input-04 #******************* # 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_7i92.0.stepgen.00.dirsetup [AXIS_0]DIRSETUP setp hm2_7i92.0.stepgen.00.dirhold [AXIS_0]DIRHOLD setp hm2_7i92.0.stepgen.00.steplen [AXIS_0]STEPLEN setp hm2_7i92.0.stepgen.00.stepspace [AXIS_0]STEPSPACE setp hm2_7i92.0.stepgen.00.position-scale [AXIS_0]STEP_SCALE setp hm2_7i92.0.stepgen.00.step_type 0 setp hm2_7i92.0.stepgen.00.control-type 1 setp hm2_7i92.0.stepgen.00.maxaccel [AXIS_0]STEPGEN_MAXACCEL setp hm2_7i92.0.stepgen.00.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_7i92.0.stepgen.00.velocity-cmd net x-pos-fb <= hm2_7i92.0.stepgen.00.position-fb net x-pos-fb => axis.0.motor-pos-fb net x-enable <= axis.0.amp-enable-out net x-enable => hm2_7i92.0.stepgen.00.enable # ---setup home / limit switch signals--- net home-x => 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 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 # Step Gen signals/setup setp hm2_7i92.0.stepgen.01.dirsetup [AXIS_1]DIRSETUP setp hm2_7i92.0.stepgen.01.dirhold [AXIS_1]DIRHOLD setp hm2_7i92.0.stepgen.01.steplen [AXIS_1]STEPLEN setp hm2_7i92.0.stepgen.01.stepspace [AXIS_1]STEPSPACE setp hm2_7i92.0.stepgen.01.position-scale [AXIS_1]STEP_SCALE setp hm2_7i92.0.stepgen.01.step_type 0 setp hm2_7i92.0.stepgen.01.control-type 1 setp hm2_7i92.0.stepgen.01.maxaccel [AXIS_1]STEPGEN_MAXACCEL setp hm2_7i92.0.stepgen.01.maxvel [AXIS_1]STEPGEN_MAXVEL # ---closedloop stepper signals--- net y-pos-cmd <= axis.1.motor-pos-cmd net y-vel-cmd <= axis.1.joint-vel-cmd net y-output => hm2_7i92.0.stepgen.01.velocity-cmd net y-pos-fb <= hm2_7i92.0.stepgen.01.position-fb net y-pos-fb => axis.1.motor-pos-fb net y-enable <= axis.1.amp-enable-out net y-enable => hm2_7i92.0.stepgen.01.enable # ---setup home / limit switch signals--- net home-y => axis.1.home-sw-in net y-neg-limit => axis.1.neg-lim-sw-in net y-pos-limit => 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 # Step Gen signals/setup setp hm2_7i92.0.stepgen.02.dirsetup [AXIS_2]DIRSETUP setp hm2_7i92.0.stepgen.02.dirhold [AXIS_2]DIRHOLD setp hm2_7i92.0.stepgen.02.steplen [AXIS_2]STEPLEN setp hm2_7i92.0.stepgen.02.stepspace [AXIS_2]STEPSPACE setp hm2_7i92.0.stepgen.02.position-scale [AXIS_2]STEP_SCALE setp hm2_7i92.0.stepgen.02.step_type 0 setp hm2_7i92.0.stepgen.02.control-type 1 setp hm2_7i92.0.stepgen.02.maxaccel [AXIS_2]STEPGEN_MAXACCEL setp hm2_7i92.0.stepgen.02.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_7i92.0.stepgen.02.velocity-cmd net z-pos-fb <= hm2_7i92.0.stepgen.02.position-fb net z-pos-fb => axis.2.motor-pos-fb net z-enable <= axis.2.amp-enable-out net z-enable => hm2_7i92.0.stepgen.02.enable # ---setup home / limit switch signals--- net home-z => 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 #******************* # 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 # Step Gen signals/setup setp hm2_7i92.0.stepgen.03.dirsetup [AXIS_3]DIRSETUP setp hm2_7i92.0.stepgen.03.dirhold [AXIS_3]DIRHOLD setp hm2_7i92.0.stepgen.03.steplen [AXIS_3]STEPLEN setp hm2_7i92.0.stepgen.03.stepspace [AXIS_3]STEPSPACE setp hm2_7i92.0.stepgen.03.position-scale [AXIS_3]STEP_SCALE setp hm2_7i92.0.stepgen.03.step_type 0 setp hm2_7i92.0.stepgen.03.control-type 1 setp hm2_7i92.0.stepgen.03.maxaccel [AXIS_3]STEPGEN_MAXACCEL setp hm2_7i92.0.stepgen.03.maxvel [AXIS_3]STEPGEN_MAXVEL # ---closedloop stepper signals--- net a-pos-cmd <= axis.3.motor-pos-cmd net a-vel-cmd <= axis.3.joint-vel-cmd net a-output => hm2_7i92.0.stepgen.03.velocity-cmd net a-pos-fb <= hm2_7i92.0.stepgen.03.position-fb net a-pos-fb => axis.3.motor-pos-fb net a-enable <= axis.3.amp-enable-out net a-enable => hm2_7i92.0.stepgen.03.enable # ---setup home / limit switch signals--- net home-a => axis.3.home-sw-in net a-neg-limit => axis.3.neg-lim-sw-in net a-pos-limit => 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 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 # Step Gen signals/setup setp hm2_7i92.0.stepgen.04.dirsetup [SPINDLE_9]DIRSETUP setp hm2_7i92.0.stepgen.04.dirhold [SPINDLE_9]DIRHOLD setp hm2_7i92.0.stepgen.04.steplen [SPINDLE_9]STEPLEN setp hm2_7i92.0.stepgen.04.stepspace [SPINDLE_9]STEPSPACE setp hm2_7i92.0.stepgen.04.position-scale [SPINDLE_9]STEP_SCALE setp hm2_7i92.0.stepgen.04.step_type 0 setp hm2_7i92.0.stepgen.04.control-type 1 setp hm2_7i92.0.stepgen.04.maxaccel [SPINDLE_9]MAX_ACCELERATION setp hm2_7i92.0.stepgen.04.maxvel [SPINDLE_9]MAX_VELOCITY net spindle-enable => hm2_7i92.0.stepgen.04.enable net spindle-vel-cmd-rps => hm2_7i92.0.stepgen.04.velocity-cmd net spindle-vel-fb-rps <= hm2_7i92.0.stepgen.04.velocity-fb # ---closedloop stepper signals--- net s-pos-cmd <= axis.9.motor-pos-cmd net s-vel-cmd <= axis.9.joint-vel-cmd net s-output => hm2_7i92.0.stepgen.04.velocity-cmd net s-pos-fb <= hm2_7i92.0.stepgen.04.position-fb net s-pos-fb => axis.9.motor-pos-fb net s-enable <= axis.9.amp-enable-out net s-enable => hm2_7i92.0.stepgen.04.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-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-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 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--- # ---estop signals--- net estop-out <= iocontrol.0.user-enable-out net estop-ext => iocontrol.0.emc-enable-in # ---manual tool change signals--- loadusr -W hal_manualtoolchange net tool-change-request iocontrol.0.tool-change => hal_manualtoolchange.change net tool-change-confirmed 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
Your missing sserial port 1 entry in your loadrt.
Try something like this....
loadrt hm2_eth board_ip="10.10.10.10" config=" num_encoders=6 num_pwmgens=0 num_stepgens=0 sserial_port_0=200xxx sserial_port_1=00000000"
I guess networking is ok if linuxcnc starts, but can you ping 10.10.10.10?
Why do you have stepgens all over. Do you not have a 7i77?
post the hal file that you can start linuxcnc with.
Not sure about those stepgens. How do I setup the second port on the 7i92 to communicate with the Leadshine MX4660 and send stepper signals etc properly? In pncconf there are limited options for firmwares.
What I've done now is to select the 7i84 as a sserial on port 1.
If I comment out all stepgen lines in HAL I can start LinuxCNC but with an error that can be closed:
When Axis start I galso get realtime error and a 7i92 error.
Under HAL configuration I see nothing about the 7i84, and also the red light CR6 is still on.
I can not ping the 7i92 on 10.10.10.10 while Axis is running. But it works fine when Axis is not running.
Current HAL:
Warning: Spoiler!
# Generated by PNCconf at Wed Oct 9 03:20:59 2019
# 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_eth board_ip="10.10.10.10" config=" num_encoders=2 num_pwmgens=0 num_stepgens=10 sserial_port_0=200xxx sserial_port_1=00000000"
setp hm2_7i92.0.watchdog.timeout_ns 5000000
loadrt pid names=pid.x,pid.y,pid.z,pid.a,pid.s
addf hm2_7i92.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 hm2_7i92.0.write servo-thread
setp hm2_7i92.0.dpll.01.timer-us -50
# OBS!! setp hm2_7i92.0.stepgen.timer-number 1
# external output signals
# external input signals
# --- HOME-X ---
#net home-x <= hm2_7i92.0.7i84.0.3.input-00
#*******************
# 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
# OBS!! setp hm2_7i92.0.stepgen.00.dirsetup [AXIS_0]DIRSETUP
# OBS!! setp hm2_7i92.0.stepgen.00.dirhold [AXIS_0]DIRHOLD
# OBS!! setp hm2_7i92.0.stepgen.00.steplen [AXIS_0]STEPLEN
# OBS!! setp hm2_7i92.0.stepgen.00.stepspace [AXIS_0]STEPSPACE
# OBS!! setp hm2_7i92.0.stepgen.00.position-scale [AXIS_0]STEP_SCALE
# OBS!! setp hm2_7i92.0.stepgen.00.step_type 0
# OBS!! setp hm2_7i92.0.stepgen.00.control-type 1
# OBS!! setp hm2_7i92.0.stepgen.00.maxaccel [AXIS_0]STEPGEN_MAXACCEL
# OBS!! setp hm2_7i92.0.stepgen.00.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
# OBS!! net x-output => hm2_7i92.0.stepgen.00.velocity-cmd
# OBS!! net x-pos-fb <= hm2_7i92.0.stepgen.00.position-fb
net x-pos-fb => axis.0.motor-pos-fb
net x-enable <= axis.0.amp-enable-out
# OBS!! net x-enable => hm2_7i92.0.stepgen.00.enable
# ---setup home / limit switch signals---
net home-x => 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 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
# Step Gen signals/setup
# OBS!! setp hm2_7i92.0.stepgen.01.dirsetup [AXIS_1]DIRSETUP
# OBS!! setp hm2_7i92.0.stepgen.01.dirhold [AXIS_1]DIRHOLD
# OBS!! setp hm2_7i92.0.stepgen.01.steplen [AXIS_1]STEPLEN
# OBS!! setp hm2_7i92.0.stepgen.01.stepspace [AXIS_1]STEPSPACE
# OBS!! setp hm2_7i92.0.stepgen.01.position-scale [AXIS_1]STEP_SCALE
# OBS!! setp hm2_7i92.0.stepgen.01.step_type 0
# OBS!! setp hm2_7i92.0.stepgen.01.control-type 1
# OBS!! setp hm2_7i92.0.stepgen.01.maxaccel [AXIS_1]STEPGEN_MAXACCEL
# OBS!! setp hm2_7i92.0.stepgen.01.maxvel [AXIS_1]STEPGEN_MAXVEL
# ---closedloop stepper signals---
net y-pos-cmd <= axis.1.motor-pos-cmd
net y-vel-cmd <= axis.1.joint-vel-cmd
# OBS!! net y-output => hm2_7i92.0.stepgen.01.velocity-cmd
# OBS!! net y-pos-fb <= hm2_7i92.0.stepgen.01.position-fb
net y-pos-fb => axis.1.motor-pos-fb
net y-enable <= axis.1.amp-enable-out
# OBS!! net y-enable => hm2_7i92.0.stepgen.01.enable
# ---setup home / limit switch signals---
net y-home-sw => axis.1.home-sw-in
net y-neg-limit => axis.1.neg-lim-sw-in
net y-pos-limit => 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
# Step Gen signals/setup
# OBS!! setp hm2_7i92.0.stepgen.02.dirsetup [AXIS_2]DIRSETUP
# OBS!! setp hm2_7i92.0.stepgen.02.dirhold [AXIS_2]DIRHOLD
# OBS!! setp hm2_7i92.0.stepgen.02.steplen [AXIS_2]STEPLEN
# OBS!! setp hm2_7i92.0.stepgen.02.stepspace [AXIS_2]STEPSPACE
# OBS!! setp hm2_7i92.0.stepgen.02.position-scale [AXIS_2]STEP_SCALE
# OBS!! setp hm2_7i92.0.stepgen.02.step_type 0
# OBS!! setp hm2_7i92.0.stepgen.02.control-type 1
# OBS!! setp hm2_7i92.0.stepgen.02.maxaccel [AXIS_2]STEPGEN_MAXACCEL
# OBS!! setp hm2_7i92.0.stepgen.02.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
# OBS!! net z-output => hm2_7i92.0.stepgen.02.velocity-cmd
# OBS!! net z-pos-fb <= hm2_7i92.0.stepgen.02.position-fb
net z-pos-fb => axis.2.motor-pos-fb
net z-enable <= axis.2.amp-enable-out
# OBS!! net z-enable => hm2_7i92.0.stepgen.02.enable
# ---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
#*******************
# 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
# Step Gen signals/setup
# OBS!! setp hm2_7i92.0.stepgen.03.dirsetup [AXIS_3]DIRSETUP
# OBS!! setp hm2_7i92.0.stepgen.03.dirhold [AXIS_3]DIRHOLD
# OBS!! setp hm2_7i92.0.stepgen.03.steplen [AXIS_3]STEPLEN
# OBS!! setp hm2_7i92.0.stepgen.03.stepspace [AXIS_3]STEPSPACE
# OBS!! setp hm2_7i92.0.stepgen.03.position-scale [AXIS_3]STEP_SCALE
# OBS!! setp hm2_7i92.0.stepgen.03.step_type 0
# OBS!! setp hm2_7i92.0.stepgen.03.control-type 1
# OBS!! setp hm2_7i92.0.stepgen.03.maxaccel [AXIS_3]STEPGEN_MAXACCEL
# OBS!! setp hm2_7i92.0.stepgen.03.maxvel [AXIS_3]STEPGEN_MAXVEL
# ---closedloop stepper signals---
net a-pos-cmd <= axis.3.motor-pos-cmd
net a-vel-cmd <= axis.3.joint-vel-cmd
# OBS!! net a-output => hm2_7i92.0.stepgen.03.velocity-cmd
# OBS!! net a-pos-fb <= hm2_7i92.0.stepgen.03.position-fb
net a-pos-fb => axis.3.motor-pos-fb
net a-enable <= axis.3.amp-enable-out
# OBS!! net a-enable => hm2_7i92.0.stepgen.03.enable
# ---setup home / limit switch signals---
net a-home-sw => axis.3.home-sw-in
net a-neg-limit => axis.3.neg-lim-sw-in
net a-pos-limit => 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
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
# Step Gen signals/setup
# OBS!! setp hm2_7i92.0.stepgen.04.dirsetup [SPINDLE_9]DIRSETUP
# OBS!! setp hm2_7i92.0.stepgen.04.dirhold [SPINDLE_9]DIRHOLD
# OBS!! setp hm2_7i92.0.stepgen.04.steplen [SPINDLE_9]STEPLEN
# OBS!! setp hm2_7i92.0.stepgen.04.stepspace [SPINDLE_9]STEPSPACE
# OBS!! setp hm2_7i92.0.stepgen.04.position-scale [SPINDLE_9]STEP_SCALE
# OBS!! setp hm2_7i92.0.stepgen.04.step_type 0
# OBS!! setp hm2_7i92.0.stepgen.04.control-type 1
# OBS!! setp hm2_7i92.0.stepgen.04.maxaccel [SPINDLE_9]MAX_ACCELERATION
# OBS!! setp hm2_7i92.0.stepgen.04.maxvel [SPINDLE_9]MAX_VELOCITY
# OBS!! net spindle-enable => hm2_7i92.0.stepgen.04.enable
# OBS!! net spindle-vel-cmd-rps => hm2_7i92.0.stepgen.04.velocity-cmd
# OBS!! net spindle-vel-fb-rps <= hm2_7i92.0.stepgen.04.velocity-fb
# ---closedloop stepper signals---
#net s-pos-cmd <= axis.9.motor-pos-cmd
#net s-vel-cmd <= axis.9.joint-vel-cmd
#net s-output => hm2_7i92.0.stepgen.04.velocity-cmd
#net s-pos-fb <= hm2_7i92.0.stepgen.04.position-fb
#net s-pos-fb => axis.9.motor-pos-fb
#net s-enable <= axis.9.amp-enable-out
#net s-enable => hm2_7i92.0.stepgen.04.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-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-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 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---
# ---estop signals---
net estop-out <= iocontrol.0.user-enable-out
net estop-out => iocontrol.0.emc-enable-in
# ---manual tool change signals---
loadusr -W hal_manualtoolchange
net tool-change-request iocontrol.0.tool-change => hal_manualtoolchange.change
net tool-change-confirmed 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
Attachments:
Last edit: 09 Oct 2019 19:14 by jonch919.
Please Log in or Create an account to join the conversation.
- bevins
- Offline
- Platinum Member
Less
More
- Posts: 1937
- Thank you received: 335
10 Oct 2019 00:53 #147605
by bevins
First things first. You have a 7i77 which is a card for servo's not steppers. Do you have servos or steppers?
You have a lot going on there. Start with the config that linuxcnc starts. upload the hal and ini for that configuration.
Will start from a known good position.
Replied by bevins on topic Help choosing a good card setup
I've tried putting the extra sserial info in HAL, but it didn't do any difference. Should the it look exactly like that or are the numbers different for everyone? If so, how can I find out what to put there?Should be posted something like this. These are your files. Cant read it the way you posted.
Warning: Spoiler!# Generated by PNCconf at Tue Oct 8 23:29:04 2019 # If you make changes to this file, they will be # overwritten when you run PNCconf again [EMC] MACHINE = cortini DEBUG = 0 [DISPLAY] DISPLAY = axis POSITION_OFFSET = RELATIVE POSITION_FEEDBACK = ACTUAL MAX_FEED_OVERRIDE = 2.000000 MAX_SPINDLE_OVERRIDE = 1.000000 MIN_SPINDLE_OVERRIDE = 0.500000 INTRO_GRAPHIC = linuxcnc.gif INTRO_TIME = 5 PROGRAM_PREFIX = /home/jonas/linuxcnc/nc_files INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm POSITION_FEEDBACK = ACTUAL DEFAULT_LINEAR_VELOCITY = 6.000000 MAX_LINEAR_VELOCITY = 25.000000 MIN_LINEAR_VELOCITY = 0.500000 DEFAULT_ANGULAR_VELOCITY = 12.000000 MAX_ANGULAR_VELOCITY = 180.000000 MIN_ANGULAR_VELOCITY = 1.666667 EDITOR = gedit GEOMETRY = xyz [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_eth # BOARD0=7i92 [HAL] HALUI = halui HALFILE = cortini.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 = mm ANGULAR_UNITS = degree CYCLE_TIME = 0.010 DEFAULT_VELOCITY = 2.50 MAX_LINEAR_VELOCITY = 25.00 [EMCIO] EMCIO = io CYCLE_TIME = 0.100 TOOL_TABLE = tool.tbl #******************** # Axis X #******************** [AXIS_0] TYPE = LINEAR HOME = 0.0 FERROR = 10.0 MIN_FERROR = 1.0 MAX_VELOCITY = 25.0 MAX_ACCELERATION = 750.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 31.25 STEPGEN_MAXACCEL = 937.50 P = 1000.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 200.0 MIN_LIMIT = -0.01 MAX_LIMIT = 200.0 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -1.000000 HOME_LATCH_VEL = -0.500000 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO HOME_SEQUENCE = 1 #******************** # Axis Y #******************** [AXIS_1] TYPE = LINEAR HOME = 0.0 FERROR = 10.0 MIN_FERROR = 1.0 MAX_VELOCITY = 25.0 MAX_ACCELERATION = 750.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 31.25 STEPGEN_MAXACCEL = 937.50 P = 1000.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 200.0 MIN_LIMIT = -0.01 MAX_LIMIT = 200.0 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -1.000000 HOME_LATCH_VEL = -0.500000 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO HOME_SEQUENCE = 2 #******************** # Axis Z #******************** [AXIS_2] TYPE = LINEAR HOME = 0.0 FERROR = 10.0 MIN_FERROR = 1.0 MAX_VELOCITY = 25.0 MAX_ACCELERATION = 750.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 31.25 STEPGEN_MAXACCEL = 937.50 P = 1000.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 200.0 MIN_LIMIT = -100.0 MAX_LIMIT = 0.01 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -1.000000 HOME_LATCH_VEL = -0.500000 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO HOME_SEQUENCE = 0 #******************** # Axis A #******************** [AXIS_3] TYPE = ANGULAR HOME = 0.0 FERROR = 0.5 MIN_FERROR = 0.05 MAX_VELOCITY = 360.0 MAX_ACCELERATION = 1200.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 450.00 STEPGEN_MAXACCEL = 1500.00 P = 1000.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 200.0 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_SEQUENCE = 3 #******************** # Spindle #******************** [SPINDLE_9] MAX_VELOCITY = 2000.0 MAX_ACCELERATION = 300.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 2500.00 STEPGEN_MAXACCEL = 375.00 P = 0.0 I = 0.0 D = 0.0 FF0 = 1.0 FF1 = 0.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 2000.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 200.0
Warning: Spoiler!# Generated by PNCconf at Tue Oct 8 23:29:04 2019 # 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_eth board_ip="10.10.10.10" config=" num_encoders=2 num_pwmgens=0 num_stepgens=10 sserial_port_0=0000xx" setp hm2_7i92.0.watchdog.timeout_ns 5000000 loadrt pid names=pid.x,pid.y,pid.z,pid.a,pid.s addf hm2_7i92.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 hm2_7i92.0.write servo-thread setp hm2_7i92.0.dpll.01.timer-us -50 setp hm2_7i92.0.stepgen.timer-number 1 # external output signals # --- SPINDLE-ON --- net spindle-on hm2_7i92.0.7i84.0.3.output-00 # external input signals # --- HOME-X --- net home-x <= hm2_7i92.0.7i84.0.3.input-00 # --- HOME-Y --- net home-y <= hm2_7i92.0.7i84.0.3.input-01 # --- HOME-Z --- net home-z <= hm2_7i92.0.7i84.0.3.input-02 # --- HOME-A --- net home-a <= hm2_7i92.0.7i84.0.3.input-03 # --- ESTOP-EXT --- net estop-ext <= hm2_7i92.0.7i84.0.3.input-04 #******************* # 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_7i92.0.stepgen.00.dirsetup [AXIS_0]DIRSETUP setp hm2_7i92.0.stepgen.00.dirhold [AXIS_0]DIRHOLD setp hm2_7i92.0.stepgen.00.steplen [AXIS_0]STEPLEN setp hm2_7i92.0.stepgen.00.stepspace [AXIS_0]STEPSPACE setp hm2_7i92.0.stepgen.00.position-scale [AXIS_0]STEP_SCALE setp hm2_7i92.0.stepgen.00.step_type 0 setp hm2_7i92.0.stepgen.00.control-type 1 setp hm2_7i92.0.stepgen.00.maxaccel [AXIS_0]STEPGEN_MAXACCEL setp hm2_7i92.0.stepgen.00.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_7i92.0.stepgen.00.velocity-cmd net x-pos-fb <= hm2_7i92.0.stepgen.00.position-fb net x-pos-fb => axis.0.motor-pos-fb net x-enable <= axis.0.amp-enable-out net x-enable => hm2_7i92.0.stepgen.00.enable # ---setup home / limit switch signals--- net home-x => 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 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 # Step Gen signals/setup setp hm2_7i92.0.stepgen.01.dirsetup [AXIS_1]DIRSETUP setp hm2_7i92.0.stepgen.01.dirhold [AXIS_1]DIRHOLD setp hm2_7i92.0.stepgen.01.steplen [AXIS_1]STEPLEN setp hm2_7i92.0.stepgen.01.stepspace [AXIS_1]STEPSPACE setp hm2_7i92.0.stepgen.01.position-scale [AXIS_1]STEP_SCALE setp hm2_7i92.0.stepgen.01.step_type 0 setp hm2_7i92.0.stepgen.01.control-type 1 setp hm2_7i92.0.stepgen.01.maxaccel [AXIS_1]STEPGEN_MAXACCEL setp hm2_7i92.0.stepgen.01.maxvel [AXIS_1]STEPGEN_MAXVEL # ---closedloop stepper signals--- net y-pos-cmd <= axis.1.motor-pos-cmd net y-vel-cmd <= axis.1.joint-vel-cmd net y-output => hm2_7i92.0.stepgen.01.velocity-cmd net y-pos-fb <= hm2_7i92.0.stepgen.01.position-fb net y-pos-fb => axis.1.motor-pos-fb net y-enable <= axis.1.amp-enable-out net y-enable => hm2_7i92.0.stepgen.01.enable # ---setup home / limit switch signals--- net home-y => axis.1.home-sw-in net y-neg-limit => axis.1.neg-lim-sw-in net y-pos-limit => 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 # Step Gen signals/setup setp hm2_7i92.0.stepgen.02.dirsetup [AXIS_2]DIRSETUP setp hm2_7i92.0.stepgen.02.dirhold [AXIS_2]DIRHOLD setp hm2_7i92.0.stepgen.02.steplen [AXIS_2]STEPLEN setp hm2_7i92.0.stepgen.02.stepspace [AXIS_2]STEPSPACE setp hm2_7i92.0.stepgen.02.position-scale [AXIS_2]STEP_SCALE setp hm2_7i92.0.stepgen.02.step_type 0 setp hm2_7i92.0.stepgen.02.control-type 1 setp hm2_7i92.0.stepgen.02.maxaccel [AXIS_2]STEPGEN_MAXACCEL setp hm2_7i92.0.stepgen.02.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_7i92.0.stepgen.02.velocity-cmd net z-pos-fb <= hm2_7i92.0.stepgen.02.position-fb net z-pos-fb => axis.2.motor-pos-fb net z-enable <= axis.2.amp-enable-out net z-enable => hm2_7i92.0.stepgen.02.enable # ---setup home / limit switch signals--- net home-z => 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 #******************* # 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 # Step Gen signals/setup setp hm2_7i92.0.stepgen.03.dirsetup [AXIS_3]DIRSETUP setp hm2_7i92.0.stepgen.03.dirhold [AXIS_3]DIRHOLD setp hm2_7i92.0.stepgen.03.steplen [AXIS_3]STEPLEN setp hm2_7i92.0.stepgen.03.stepspace [AXIS_3]STEPSPACE setp hm2_7i92.0.stepgen.03.position-scale [AXIS_3]STEP_SCALE setp hm2_7i92.0.stepgen.03.step_type 0 setp hm2_7i92.0.stepgen.03.control-type 1 setp hm2_7i92.0.stepgen.03.maxaccel [AXIS_3]STEPGEN_MAXACCEL setp hm2_7i92.0.stepgen.03.maxvel [AXIS_3]STEPGEN_MAXVEL # ---closedloop stepper signals--- net a-pos-cmd <= axis.3.motor-pos-cmd net a-vel-cmd <= axis.3.joint-vel-cmd net a-output => hm2_7i92.0.stepgen.03.velocity-cmd net a-pos-fb <= hm2_7i92.0.stepgen.03.position-fb net a-pos-fb => axis.3.motor-pos-fb net a-enable <= axis.3.amp-enable-out net a-enable => hm2_7i92.0.stepgen.03.enable # ---setup home / limit switch signals--- net home-a => axis.3.home-sw-in net a-neg-limit => axis.3.neg-lim-sw-in net a-pos-limit => 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 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 # Step Gen signals/setup setp hm2_7i92.0.stepgen.04.dirsetup [SPINDLE_9]DIRSETUP setp hm2_7i92.0.stepgen.04.dirhold [SPINDLE_9]DIRHOLD setp hm2_7i92.0.stepgen.04.steplen [SPINDLE_9]STEPLEN setp hm2_7i92.0.stepgen.04.stepspace [SPINDLE_9]STEPSPACE setp hm2_7i92.0.stepgen.04.position-scale [SPINDLE_9]STEP_SCALE setp hm2_7i92.0.stepgen.04.step_type 0 setp hm2_7i92.0.stepgen.04.control-type 1 setp hm2_7i92.0.stepgen.04.maxaccel [SPINDLE_9]MAX_ACCELERATION setp hm2_7i92.0.stepgen.04.maxvel [SPINDLE_9]MAX_VELOCITY net spindle-enable => hm2_7i92.0.stepgen.04.enable net spindle-vel-cmd-rps => hm2_7i92.0.stepgen.04.velocity-cmd net spindle-vel-fb-rps <= hm2_7i92.0.stepgen.04.velocity-fb # ---closedloop stepper signals--- net s-pos-cmd <= axis.9.motor-pos-cmd net s-vel-cmd <= axis.9.joint-vel-cmd net s-output => hm2_7i92.0.stepgen.04.velocity-cmd net s-pos-fb <= hm2_7i92.0.stepgen.04.position-fb net s-pos-fb => axis.9.motor-pos-fb net s-enable <= axis.9.amp-enable-out net s-enable => hm2_7i92.0.stepgen.04.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-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-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 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--- # ---estop signals--- net estop-out <= iocontrol.0.user-enable-out net estop-ext => iocontrol.0.emc-enable-in # ---manual tool change signals--- loadusr -W hal_manualtoolchange net tool-change-request iocontrol.0.tool-change => hal_manualtoolchange.change net tool-change-confirmed 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
Your missing sserial port 1 entry in your loadrt.
Try something like this....
loadrt hm2_eth board_ip="10.10.10.10" config=" num_encoders=6 num_pwmgens=0 num_stepgens=0 sserial_port_0=200xxx sserial_port_1=00000000"
I guess networking is ok if linuxcnc starts, but can you ping 10.10.10.10?
Why do you have stepgens all over. Do you not have a 7i77?
post the hal file that you can start linuxcnc with.
Not sure about those stepgens. How do I setup the second port on the 7i92 to communicate with the Leadshine MX4660 and send stepper signals etc properly? In pncconf there are limited options for firmwares.
What I've done now is to select the 7i84 as a sserial on port 1.
If I comment out all stepgen lines in HAL I can start LinuxCNC but with an error that can be closed:
When Axis start I galso get realtime error and a 7i92 error.
Under HAL configuration I see nothing about the 7i84, and also the red light CR6 is still on.
I can not ping the 7i92 on 10.10.10.10 while Axis is running. But it works fine when Axis is not running.
Current HAL:
Warning: Spoiler!# Generated by PNCconf at Wed Oct 9 03:20:59 2019 # 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_eth board_ip="10.10.10.10" config=" num_encoders=2 num_pwmgens=0 num_stepgens=10 sserial_port_0=200xxx sserial_port_1=00000000" setp hm2_7i92.0.watchdog.timeout_ns 5000000 loadrt pid names=pid.x,pid.y,pid.z,pid.a,pid.s addf hm2_7i92.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 hm2_7i92.0.write servo-thread setp hm2_7i92.0.dpll.01.timer-us -50 # OBS!! setp hm2_7i92.0.stepgen.timer-number 1 # external output signals # external input signals # --- HOME-X --- #net home-x <= hm2_7i92.0.7i84.0.3.input-00 #******************* # 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 # OBS!! setp hm2_7i92.0.stepgen.00.dirsetup [AXIS_0]DIRSETUP # OBS!! setp hm2_7i92.0.stepgen.00.dirhold [AXIS_0]DIRHOLD # OBS!! setp hm2_7i92.0.stepgen.00.steplen [AXIS_0]STEPLEN # OBS!! setp hm2_7i92.0.stepgen.00.stepspace [AXIS_0]STEPSPACE # OBS!! setp hm2_7i92.0.stepgen.00.position-scale [AXIS_0]STEP_SCALE # OBS!! setp hm2_7i92.0.stepgen.00.step_type 0 # OBS!! setp hm2_7i92.0.stepgen.00.control-type 1 # OBS!! setp hm2_7i92.0.stepgen.00.maxaccel [AXIS_0]STEPGEN_MAXACCEL # OBS!! setp hm2_7i92.0.stepgen.00.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 # OBS!! net x-output => hm2_7i92.0.stepgen.00.velocity-cmd # OBS!! net x-pos-fb <= hm2_7i92.0.stepgen.00.position-fb net x-pos-fb => axis.0.motor-pos-fb net x-enable <= axis.0.amp-enable-out # OBS!! net x-enable => hm2_7i92.0.stepgen.00.enable # ---setup home / limit switch signals--- net home-x => 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 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 # Step Gen signals/setup # OBS!! setp hm2_7i92.0.stepgen.01.dirsetup [AXIS_1]DIRSETUP # OBS!! setp hm2_7i92.0.stepgen.01.dirhold [AXIS_1]DIRHOLD # OBS!! setp hm2_7i92.0.stepgen.01.steplen [AXIS_1]STEPLEN # OBS!! setp hm2_7i92.0.stepgen.01.stepspace [AXIS_1]STEPSPACE # OBS!! setp hm2_7i92.0.stepgen.01.position-scale [AXIS_1]STEP_SCALE # OBS!! setp hm2_7i92.0.stepgen.01.step_type 0 # OBS!! setp hm2_7i92.0.stepgen.01.control-type 1 # OBS!! setp hm2_7i92.0.stepgen.01.maxaccel [AXIS_1]STEPGEN_MAXACCEL # OBS!! setp hm2_7i92.0.stepgen.01.maxvel [AXIS_1]STEPGEN_MAXVEL # ---closedloop stepper signals--- net y-pos-cmd <= axis.1.motor-pos-cmd net y-vel-cmd <= axis.1.joint-vel-cmd # OBS!! net y-output => hm2_7i92.0.stepgen.01.velocity-cmd # OBS!! net y-pos-fb <= hm2_7i92.0.stepgen.01.position-fb net y-pos-fb => axis.1.motor-pos-fb net y-enable <= axis.1.amp-enable-out # OBS!! net y-enable => hm2_7i92.0.stepgen.01.enable # ---setup home / limit switch signals--- net y-home-sw => axis.1.home-sw-in net y-neg-limit => axis.1.neg-lim-sw-in net y-pos-limit => 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 # Step Gen signals/setup # OBS!! setp hm2_7i92.0.stepgen.02.dirsetup [AXIS_2]DIRSETUP # OBS!! setp hm2_7i92.0.stepgen.02.dirhold [AXIS_2]DIRHOLD # OBS!! setp hm2_7i92.0.stepgen.02.steplen [AXIS_2]STEPLEN # OBS!! setp hm2_7i92.0.stepgen.02.stepspace [AXIS_2]STEPSPACE # OBS!! setp hm2_7i92.0.stepgen.02.position-scale [AXIS_2]STEP_SCALE # OBS!! setp hm2_7i92.0.stepgen.02.step_type 0 # OBS!! setp hm2_7i92.0.stepgen.02.control-type 1 # OBS!! setp hm2_7i92.0.stepgen.02.maxaccel [AXIS_2]STEPGEN_MAXACCEL # OBS!! setp hm2_7i92.0.stepgen.02.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 # OBS!! net z-output => hm2_7i92.0.stepgen.02.velocity-cmd # OBS!! net z-pos-fb <= hm2_7i92.0.stepgen.02.position-fb net z-pos-fb => axis.2.motor-pos-fb net z-enable <= axis.2.amp-enable-out # OBS!! net z-enable => hm2_7i92.0.stepgen.02.enable # ---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 #******************* # 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 # Step Gen signals/setup # OBS!! setp hm2_7i92.0.stepgen.03.dirsetup [AXIS_3]DIRSETUP # OBS!! setp hm2_7i92.0.stepgen.03.dirhold [AXIS_3]DIRHOLD # OBS!! setp hm2_7i92.0.stepgen.03.steplen [AXIS_3]STEPLEN # OBS!! setp hm2_7i92.0.stepgen.03.stepspace [AXIS_3]STEPSPACE # OBS!! setp hm2_7i92.0.stepgen.03.position-scale [AXIS_3]STEP_SCALE # OBS!! setp hm2_7i92.0.stepgen.03.step_type 0 # OBS!! setp hm2_7i92.0.stepgen.03.control-type 1 # OBS!! setp hm2_7i92.0.stepgen.03.maxaccel [AXIS_3]STEPGEN_MAXACCEL # OBS!! setp hm2_7i92.0.stepgen.03.maxvel [AXIS_3]STEPGEN_MAXVEL # ---closedloop stepper signals--- net a-pos-cmd <= axis.3.motor-pos-cmd net a-vel-cmd <= axis.3.joint-vel-cmd # OBS!! net a-output => hm2_7i92.0.stepgen.03.velocity-cmd # OBS!! net a-pos-fb <= hm2_7i92.0.stepgen.03.position-fb net a-pos-fb => axis.3.motor-pos-fb net a-enable <= axis.3.amp-enable-out # OBS!! net a-enable => hm2_7i92.0.stepgen.03.enable # ---setup home / limit switch signals--- net a-home-sw => axis.3.home-sw-in net a-neg-limit => axis.3.neg-lim-sw-in net a-pos-limit => 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 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 # Step Gen signals/setup # OBS!! setp hm2_7i92.0.stepgen.04.dirsetup [SPINDLE_9]DIRSETUP # OBS!! setp hm2_7i92.0.stepgen.04.dirhold [SPINDLE_9]DIRHOLD # OBS!! setp hm2_7i92.0.stepgen.04.steplen [SPINDLE_9]STEPLEN # OBS!! setp hm2_7i92.0.stepgen.04.stepspace [SPINDLE_9]STEPSPACE # OBS!! setp hm2_7i92.0.stepgen.04.position-scale [SPINDLE_9]STEP_SCALE # OBS!! setp hm2_7i92.0.stepgen.04.step_type 0 # OBS!! setp hm2_7i92.0.stepgen.04.control-type 1 # OBS!! setp hm2_7i92.0.stepgen.04.maxaccel [SPINDLE_9]MAX_ACCELERATION # OBS!! setp hm2_7i92.0.stepgen.04.maxvel [SPINDLE_9]MAX_VELOCITY # OBS!! net spindle-enable => hm2_7i92.0.stepgen.04.enable # OBS!! net spindle-vel-cmd-rps => hm2_7i92.0.stepgen.04.velocity-cmd # OBS!! net spindle-vel-fb-rps <= hm2_7i92.0.stepgen.04.velocity-fb # ---closedloop stepper signals--- #net s-pos-cmd <= axis.9.motor-pos-cmd #net s-vel-cmd <= axis.9.joint-vel-cmd #net s-output => hm2_7i92.0.stepgen.04.velocity-cmd #net s-pos-fb <= hm2_7i92.0.stepgen.04.position-fb #net s-pos-fb => axis.9.motor-pos-fb #net s-enable <= axis.9.amp-enable-out #net s-enable => hm2_7i92.0.stepgen.04.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-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-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 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--- # ---estop signals--- net estop-out <= iocontrol.0.user-enable-out net estop-out => iocontrol.0.emc-enable-in # ---manual tool change signals--- loadusr -W hal_manualtoolchange net tool-change-request iocontrol.0.tool-change => hal_manualtoolchange.change net tool-change-confirmed 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
First things first. You have a 7i77 which is a card for servo's not steppers. Do you have servos or steppers?
You have a lot going on there. Start with the config that linuxcnc starts. upload the hal and ini for that configuration.
Will start from a known good position.
Please Log in or Create an account to join the conversation.
Moderators: PCW, jmelson
Time to create page: 0.229 seconds