160 lines
5.3 KiB
Plaintext
160 lines
5.3 KiB
Plaintext
# Generated by PNCconf at Sat Sep 10 10:10:56 2016
|
|
# If you make changes to this file, they will be
|
|
# overwritten when you run PNCconf again
|
|
|
|
loadrt [KINS]KINEMATICS
|
|
#autoconverted trivkins
|
|
loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS
|
|
|
|
loadusr -W lcec_conf ethercat-conf.xml
|
|
loadrt lcec
|
|
loadrt metalmusings_encoder
|
|
|
|
addf lcec.read-all servo-thread
|
|
addf metalmusings-encoder.0 servo-thread
|
|
addf motion-command-handler servo-thread
|
|
addf motion-controller servo-thread
|
|
|
|
#*******************
|
|
# AXIS X
|
|
#*******************
|
|
|
|
# --- joint signals for motion
|
|
|
|
net x-pos-cmd <= joint.0.motor-pos-cmd
|
|
net x-vel-cmd <= joint.0.vel-cmd
|
|
net x-pos-fb <= joint.0.motor-pos-fb
|
|
net x-enable <= joint.0.amp-enable-out
|
|
|
|
# --- connect stepper driver to joint
|
|
# 1/2 of stepper's p/rev 2000 => 1000
|
|
setp lcec.0.0.steps-per-mm-1 200
|
|
net x-pos-cmd => lcec.0.0.commanded-position-1
|
|
net x-pos-fb => lcec.0.0.actual-position-1
|
|
#net x-enable => lcec.0.0.enable
|
|
|
|
#*******************
|
|
# AXIS Z
|
|
#*******************
|
|
|
|
# --- joint signals for motion
|
|
|
|
net z-pos-cmd <= joint.1.motor-pos-cmd
|
|
net z-vel-cmd <= joint.1.vel-cmd
|
|
net z-pos-fb <= joint.1.motor-pos-fb
|
|
net z-enable <= joint.1.amp-enable-out
|
|
|
|
# --- connect stepper driver to the joint
|
|
|
|
setp lcec.0.0.steps-per-mm-2 80
|
|
# 1/5 of drive's step/rev
|
|
net z-pos-cmd => lcec.0.0.commanded-position-2
|
|
net z-pos-fb => lcec.0.0.actual-position-2
|
|
# net z-enable => lcec.0.0.enable
|
|
|
|
#*********************
|
|
# E-STOP
|
|
#*********************
|
|
|
|
setp iocontrol.0.emc-enable-in 1
|
|
#net estop iocontrol.0.emc-enable-in lcec.0.1.din-0
|
|
|
|
#setp lcec.0.3.enc-pos-scale [SPINDLE_9]ENCODER_SCALE
|
|
#setp lcec.0.0.enc-pos-scale [SPINDLE_9]ENCODER_SCALE
|
|
|
|
#net spindle-revs <= lcec.0.3.enc-pos
|
|
net spindle-revs <= lcec.0.0.enc-position
|
|
loadrt invert
|
|
loadrt mult2 names=mult2.rps,mult2.rpm
|
|
addf invert.0 servo-thread
|
|
addf mult2.rps servo-thread
|
|
addf mult2.rpm servo-thread
|
|
|
|
setp invert.0.in [SPINDLE_9]ENCODER_SCALE
|
|
setp mult2.rpm.in0 -60.0
|
|
setp mult2.rpm.in0 60.0
|
|
#net enc-invert-pos-scale mult2.rps.in0 <= invert.0.out
|
|
#net enc-get-freq-rps mult2.rps.in1 <= lcec.0.3.enc-frequency
|
|
#net spindle-vel-fb-rps mult2.rpm.in1 <= mult2.rps.out
|
|
#net spindle-vel-fb-rpm mult2.rpm.out
|
|
#net spindle-index-enable lcec.0.3.enc-index-c-enable
|
|
|
|
net spindle-vel-fb-rps mult2.rpm.in1 <= lcec.0.0.enc-frequency
|
|
net spindle-vel-fb-rpm mult2.rpm.out
|
|
|
|
net to_encoder metalmusings-encoder.0.index-latch-enable lcec.0.0.enc-index-latch-enable
|
|
net from_encoder metalmusings-encoder.0.index-status lcec.0.0.index-status
|
|
net spindle-index-enable metalmusings-encoder.0.index-c-enable
|
|
|
|
# ---setup spindle control signals---
|
|
|
|
net spindle-vel-cmd-rps <= spindle.0.speed-out-rps
|
|
net spindle-vel-cmd-rps-abs <= spindle.0.speed-out-rps-abs
|
|
net spindle-vel-cmd-rpm <= spindle.0.speed-out
|
|
net spindle-vel-cmd-rpm-abs <= spindle.0.speed-out-abs
|
|
net spindle-enable <= spindle.0.on
|
|
net spindle-cw <= spindle.0.forward
|
|
net spindle-ccw <= spindle.0.reverse
|
|
net spindle-brake <= spindle.0.brake
|
|
net spindle-revs => spindle.0.revs
|
|
net spindle-at-speed => spindle.0.at-speed
|
|
net spindle-vel-fb-rps => spindle.0.speed-in
|
|
net spindle-index-enable <=> spindle.0.index-enable
|
|
|
|
|
|
#******************************
|
|
# connect miscellaneous signals
|
|
#******************************
|
|
|
|
# ---HALUI signals---
|
|
|
|
net joint-select-a halui.axis.x.select
|
|
net x-is-homed halui.joint.0.is-homed
|
|
net jog-x-pos halui.axis.x.plus
|
|
net jog-x-neg halui.axis.x.minus
|
|
net jog-x-analog halui.axis.x.analog
|
|
net joint-select-b halui.axis.z.select
|
|
net z-is-homed halui.joint.1.is-homed
|
|
net jog-z-pos halui.axis.z.plus
|
|
net jog-z-neg halui.axis.z.minus
|
|
net jog-z-analog halui.axis.z.analog
|
|
net jog-selected-pos halui.axis.selected.plus
|
|
net jog-selected-neg halui.axis.selected.minus
|
|
net spindle-manual-cw halui.spindle.0.forward
|
|
net spindle-manual-ccw halui.spindle.0.reverse
|
|
net spindle-manual-stop halui.spindle.0.stop
|
|
net machine-is-on halui.machine.is-on
|
|
net jog-speed halui.axis.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
|
|
|
|
addf lcec.write-all servo-thread
|