Gmoccapy - A new screen for linuxcnc
Thanks to the handy interface gmoccapy .I use it Linuxcnc 2.7.3
as replace DISPLAY = axis on DISPLAY = gmoccapy .So works well .
I have a question , only those buttons you have ?
wiki.linuxcnc.org/cgi-bin/wiki.pl?Gmoccapy#Keyboard_shortcuts
Is it possible to add another, as here
forum.linuxcnc.org/forum/21-axis/23629-k...s-key-binding-editor
thanks in advance
sorry, I don't know English, I use google translator
Best regards
Dinyo
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
thank you for your answer
"..is not necessary to add all the shortcuts from axis, as most can be used with hal pin. .."
I agree, how to see the pin on my keyboard and embedding them in the Hall.
Now there :
Arrow Left = X minus ; Arrow Right = X plus; Arrow up = Y plus; Arrow Down = Y minus; Page Up = Z plus
Page Down = Z minus ; F1 = Estop (will work even if keyboard shortcuts are disabled)
F2 = Machine on ; ESC = Abort
ver. 1.5.5
- Added keyboard shortcut F3 to change to manual mode
- Added keyboard shortcut F5 to change to MDI Mode
- Added keyboard shortcut "Enter" for MDI Mode to submit the selected command
- Added keyboard shortcut "i" and "I" to switch jog increments forward and backwards like in axis
I did not understand how it works "i" when Jog -Z and pressed "I" change increment and the axis does not stop
even after release the key -Z ...i.e. NOT must be simultaneously pressed together
".............You did mention also the wrong documentation, please use the actual one from here...." - forum ??
".......What additional shortcuts do you need?....: If possible :
- Run program : Pausa ; Resume : Step :
halui.jog-speed : "..." => increase "..." => decrease
Thanks ,
Dinyo
Please Log in or Create an account to join the conversation.
That is a bug! I have never thought someone would change the increments while jogging.I did not understand how it works "i" when Jog -Z and pressed "I" change increment and the axis does not stop
even after release the key -Z ...i.e. NOT must be simultaneously pressed together
The way is to select first the increments, than jog and after reaching the final position change again the increments.
I will fix that.
".......What additional shortcuts do you need?....: If possible :
- Run program : Pausa ; Resume : Step :
halui.jog-speed : "..." => increase "..." => decrease
Have you tried to use the corresponding halui hal pin?
The pins for jog speed increase and decrease do not exist in halui, but you may use the gmoccapy ones
See section 5.2 ff in the documentation for details.
Norbert
Please Log in or Create an account to join the conversation.
It is not Norberts fault. I already reported this bug a while ago, in the current Linuxcnc release this should be fixed.
What version are you using ?
See release notes:
2.7.3
Please Log in or Create an account to join the conversation.
Linuxcnc 2.7.3What version are you using ?
Please Log in or Create an account to join the conversation.
I fixed that bug, it was not very clear if it comes from the linuxcnc behavior or from gmoccapy, so I secured the way gmoccapy does handle that situations.
If you jog with the keyboard and while jogging you press "i" the increments would not change! But the jog movement will finish as desired.
If you jog using the keyboard and while doing that, you change the increments using a gmoccapy hal pin, the movement will stop imminently and the increment will change. I was forced to abort the command on hal, because otherwise the hal setting and the GUI settings could get out of sync.
I pushed the fixes to all branches, if you want to update manually, just replace the gmoccapy.py file.
Norbert
Please Log in or Create an account to join the conversation.
two things:
1) following instructions I installed linuxcnc on Ubuntu 14.04 @32 and wanted to check translation in Serbian. I found ''rs'' and ''sr'' folders in ''local''. The first one is manly used under 12.04, however all translation in 14.04 are in ''sr'' folder, therefore I suggest to keep translation as far as Serbian is concerned in both directories. I am trying to figure out now how to move it from 2.7.2 to 2.7.3
2) I noticed in AXIS while decreasing/increasing Feed Rate slidebar, no other changes are imposed, however, any time I slide the values in GMOCCAPY in FeedRate, decrease/increase of max velocity of the machine is being changed accordingly. I would detach these relation, for a simple reason. The max velocity of the machine should be kept as such to move machine from one to the other location as rapid as possible. However, to be conservative while material is being milled/cut first time, one could reduce FeedRate and slowly increase it until the appropriate feed rate is found for a bit/spindle speed/material that is machined, and max velocity of the machine to be kept as defined in STEPCONF session. Perhaps, somebody else could share his experience as well. If someone wants to reduce intentionally max velocity of the machine for particular machining that is another good option of LinuxCNC, without affecting FeedRate setup.
Thank you,
Dejan
Please Log in or Create an account to join the conversation.
- cncnoob1979
- Offline
- Platinum Member
- Posts: 403
- Thank you received: 75
I just started using Gmoccapy today. I switched a configuration from axis to this. However I am having a strange issue and I do not encounter this in Axis.
When I enable the machine via releasing the E-Stop software button in Gmoccapy, I get about 5 to 10 pulses to my mechanical relay to activate the machine. In other-words, when hitting the enable button in Gmoccapy I get around 10 pulses of voltage to my enable relay.
In axis I do not have this behavior. Sometimes with this happening the machine will not enable and will error out stating it can not change the e-stop state.
I'm curious as to why?
EDIT: I have checked my E-Stops and they are not the cause. They are external to the controller and I would not have power if they were tripped. Do I need to connect to a pin in Gmoccapy for the estop?
I am running LinuxCNC v2.7.7-18 from buildbot.
Here is my hal file.
# Generated by PNCconf at Mon Jan 18 14:56:08 2016
# If you make changes to this file, they will be
# overwritten when you run PNCconf again
loadrt trivkins
loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
loadrt hostmot2
loadrt hm2_pci config=" num_encoders=5 num_pwmgens=5 num_stepgens=0 sserial_port_0=100xxx"
setp hm2_5i25.0.watchdog.timeout_ns 5000000
loadrt pid names=pid.x,pid.y,pid.z,pid.s
loadrt oneshot names=os1,os2,os3,os4,os5
loadrt not count=4
loadrt conv_float_s32 names=cnvf,cnvr,cnvs
loadrt debounce cfg=2
loadrt and2 count=12
loadrt or2 count=10
loadrt toggle count=1
loadrt toggle2nist count=1
loadrt flipflop names=ff1,ff2
loadrt near count=2
loadrt scale names=scale.sp,scale.jog,scale-fo,scale-ro,scale-so,scale-maxa
loadrt abs names=abs.spindle
loadrt lowpass names=lowpass.spindle
loadrt limit1 count=2
loadrt limit2 count=1
loadrt mux2 count=3
addf hm2_5i25.0.read servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf pid.x.do-pid-calcs servo-thread
addf pid.y.do-pid-calcs servo-thread
addf pid.z.do-pid-calcs servo-thread
addf pid.s.do-pid-calcs servo-thread
addf hm2_5i25.0.write servo-thread
addf os1 servo-thread
addf os2 servo-thread
addf os3 servo-thread
addf os4 servo-thread
addf os5 servo-thread
addf not.0 servo-thread
addf not.1 servo-thread
addf not.2 servo-thread
addf cnvf servo-thread
addf cnvr servo-thread
addf cnvs servo-thread
addf debounce.0 servo-thread
addf and2.0 servo-thread
addf and2.1 servo-thread
addf and2.2 servo-thread
addf and2.3 servo-thread
addf and2.4 servo-thread
addf and2.5 servo-thread
addf and2.6 servo-thread
addf and2.7 servo-thread
addf and2.8 servo-thread
addf and2.9 servo-thread
addf and2.10 servo-thread
addf and2.11 servo-thread
addf or2.0 servo-thread
addf or2.1 servo-thread
addf or2.2 servo-thread
addf or2.3 servo-thread
addf or2.4 servo-thread
addf or2.5 servo-thread
addf or2.6 servo-thread
addf or2.7 servo-thread
addf or2.8 servo-thread
addf or2.9 servo-thread
addf toggle.0 servo-thread
addf toggle2nist.0 servo-thread
addf ff1 servo-thread
addf ff2 servo-thread
addf near.0 servo-thread
addf near.1 servo-thread
addf scale.sp servo-thread
addf scale.jog servo-thread
addf scale-fo servo-thread
addf scale-ro servo-thread
addf scale-so servo-thread
addf scale-maxa servo-thread
addf abs.spindle servo-thread
addf lowpass.spindle servo-thread
addf limit1.0 servo-thread
addf limit1.1 servo-thread
addf limit2.0 servo-thread
addf mux2.0 servo-thread
addf mux2.1 servo-thread
addf mux2.2 servo-thread
#########################################--- "ESTOP-OUT" ---##############
# "Estop output logic" ###
# "Enables 10CR to enable power up" ###
# "Drives DC Interlock relay" ###
# --- "ESTOP-OUT" ---#####################################################
net estop-out hm2_5i25.0.7i77.0.0.output-00
net machine-is-enabled hm2_5i25.0.7i77.0.0.output-01
###################################################################
# "Overrides" #
###################################################################
# "Read analog inputs from the override knobs. Full scale will be"#
# "approximately 24v. Scale the input accordingly. 1.0 = 100%" #
# #
# "Scale up the raw values 100x so that when converted to" #
# "integers we have good resolution." #
# "The results will be between 0 and 2400." #
###################################################################
################"--- Feed Override ---"##################
# Convert from float to S32 #
#########################################################
# "Read in analog input and send to halui.feed-override"
# "Enable direct count input"
net scale_ovr => scale-fo.gain scale-ro.gain scale-so.gain
sets scale_ovr 100.0
#600
net fo-ena halui.feed-override.count-enable halui.feed-override.direct-value
sets fo-ena 1
# "Scale down the value to a percentage"
net scf-scale => halui.feed-override.scale
sets scf-scale 0.000852
net scf-raw scale-fo.in <= hm2_5i25.0.7i77.0.0.analogin0
net scf-raw-adj cnvf.in <= scale-fo.out
net scf-s halui.feed-override.counts <= cnvf.out
################"--- Rapid Override ---"#################
# Convert from float to S32 #
#########################################################
# "Read in analog input and send to halui.rapid-override"
# "Enable direct count input"
net ro-ena halui.rapid-override.count-enable halui.rapid-override.direct-value
sets ro-ena 1
# "Scale down the value to a percentage"
net scr-scale => halui.rapid-override.scale
sets scr-scale 0.00044
net scr-raw scale-ro.in <= hm2_5i25.0.7i77.0.0.analogin1
net scr-raw-adj cnvr.in <= scale-ro.out
net scr-s halui.rapid-override.counts <= cnvr.out
###############"--- Spindle Override ---"################
# Convert from float to S32 #
#########################################################
# "Read in analog input and send to halui.spindle-override"
# "Enable direct count input"
net so-ena halui.spindle-override.count-enable halui.spindle-override.direct-value
sets so-ena 1
# "Scale down the value to a percentage"
net scs-scale => halui.spindle-override.scale
sets scs-scale 0.0005
#0.0005
# "Add an offest so that we have a minimum override of 30%"
net scs-offset => scale-so.offset
sets scs-offset 100
net scs-raw scale-so.in <= hm2_5i25.0.7i77.0.0.analogin2
net scs-raw-adj cnvs.in <= scale-so.out
net scs-s halui.spindle-override.counts <= cnvs.out
#########################################################
# "External Pause/Resume Section" [Stop] #
#########################################################
setp debounce.0.delay 20
net pause-resume-btn and2.0.in0 and2.1.in0 <= hm2_5i25.0.7i77.0.0.input-17-not
net pause-on toggle2nist.0.is-on and2.0.in1 and2.3.in1 <= halui.program.is-paused
net run-on and2.1.in1 <= halui.program.is-running
net pause-sig or2.0.in0 <= and2.0.out
net resume-sig or2.0.in1 <= and2.1.out
net toggle-ok toggle.0.in <= or2.0.out
net togglesig toggle2nist.0.in <= toggle.0.out
net toggleon halui.program.pause <= toggle2nist.0.on
net toggleoff halui.program.resume <= toggle2nist.0.off
#########################################################
# "External Run/Step Section" [Start] #
#########################################################
net run-step-btn and2.2.in0 and2.3.in0 <= hm2_5i25.0.7i77.0.0.input-16
net idle-on and2.2.in1 <= halui.program.is-idle
net run-sig halui.mode.auto halui.program.run <= and2.2.out
net step-sig halui.program.step <= and2.3.out
#####################################################################################
# "This is how The External Step/Pause buttons function:" #
#####################################################################################
# "Pressing Run/Step will begin executing a program. #
# Pressing Hold/Resume while a program is running will pause the program. #
# Pressing Run/Step while a program is paused will single step the program. #
# Pressing Hold/Resume while a program is paused will return it to normal run mode."#
#####################################################################################
#######################################################################
# "Manual Panel/Joystick Jog signals" #
#######################################################################
# "JOG X" #
#######################################################################
net jog-x-pos hm2_5i25.0.7i77.0.0.input-06 or2.4.in0
net jog-x-pos-p hm2_5i25.0.7i77.0.0.input-20 or2.4.in1
net or-out0 or2.4.out halui.jog.0.plus
net jog-x-neg hm2_5i25.0.7i77.0.0.input-07 or2.5.in0
net jog-x-neg-p hm2_5i25.0.7i77.0.0.input-21 or2.5.in1
net or-out1 or2.5.out halui.jog.0.minus
#######################################################################
# "JOG Y" #
#######################################################################
net jog-y-pos hm2_5i25.0.7i77.0.0.input-08 or2.6.in0
net jog-y-pos-p hm2_5i25.0.7i77.0.0.input-19 or2.6.in1
net or-out2 or2.6.out halui.jog.1.plus
net jog-y-neg hm2_5i25.0.7i77.0.0.input-09 or2.7.in0
net jog-y-neg-p hm2_5i25.0.7i77.0.0.input-18 or2.7.in1
net or-out3 or2.7.out halui.jog.1.minus
#######################################################################
# "JOG Z" #
#######################################################################
net jog-z-pos hm2_5i25.0.7i77.0.0.input-10 or2.8.in0
net jog-z-pos-p hm2_5i25.0.7i77.0.0.input-22 or2.8.in1
net or-out4 or2.8.out halui.jog.2.plus
net jog-z-neg hm2_5i25.0.7i77.0.0.input-11 or2.9.in0
net jog-z-neg-p hm2_5i25.0.7i77.0.0.input-23 or2.9.in1
net or-out5 or2.9.out halui.jog.2.minus
# "Using or2 with two inputs"
#net signal-a input-a => or2.0.in0
#net signal-b input-b => or2.0.in1
#net or-out or2.0.out => input
# "Joystick switches (currently unused)"
#net jog-continuous <= hm2_5i25.0.7i77.0.0.input-12
#############################################################
# "JOG Rates - Select the limited rate when we jog z minus" #
#############################################################
setp limit1.0.max 20
net jog-speed => limit1.0.in => mux2.0.in0
net jog-speed-lim <= limit1.0.out => mux2.0.in1
net jog-z-neg => mux2.0.sel
net jog-speed-sel <= mux2.0.out => halui.jog-speed
###############################################################
# "Home switch inputs" #
###############################################################
net home-x <= hm2_5i25.0.7i77.0.0.input-13
net home-y <= hm2_5i25.0.7i77.0.0.input-14
net home-z <= hm2_5i25.0.7i77.0.0.input-15
#########################################################
# "X AXIS" #
#########################################################
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
#############################################
# ---"X AXIS PWM Generator signals/setup"---#
#############################################
setp hm2_5i25.0.7i77.0.1.analogout0-scalemax [AXIS_0]OUTPUT_SCALE
setp hm2_5i25.0.7i77.0.1.analogout0-minlim [AXIS_0]OUTPUT_MIN_LIMIT
setp hm2_5i25.0.7i77.0.1.analogout0-maxlim [AXIS_0]OUTPUT_MAX_LIMIT
net x-output => hm2_5i25.0.7i77.0.1.analogout0
net x-pos-cmd axis.0.motor-pos-cmd
net x-enable axis.0.amp-enable-out
########################################
# "X AXIS enable _all_ sserial pwmgens"#
########################################
net x-enable hm2_5i25.0.7i77.0.1.analogena
################################################
# ---"X AXIS Encoder feedback signals/setup"---#
################################################
setp hm2_5i25.0.encoder.00.counter-mode 0
setp hm2_5i25.0.encoder.00.filter 1
setp hm2_5i25.0.encoder.00.index-invert 0
setp hm2_5i25.0.encoder.00.index-mask 0
setp hm2_5i25.0.encoder.00.index-mask-invert 0
setp hm2_5i25.0.encoder.00.scale [AXIS_0]ENCODER_SCALE
net x-pos-fb <= hm2_5i25.0.encoder.00.position
net x-vel-fb <= hm2_5i25.0.encoder.00.velocity
net x-pos-fb => axis.0.motor-pos-fb
net x-index-enable axis.0.index-enable <=> hm2_5i25.0.encoder.00.index-enable
net x-pos-rawcounts <= hm2_5i25.0.encoder.00.rawcounts
###################################################
# ---"X AXIS 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
#########################################################
# "Y AXIS" #
#########################################################
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
#############################################
# ---"Y AXIS PWM Generator signals/setup"---#
#############################################
setp hm2_5i25.0.7i77.0.1.analogout1-scalemax [AXIS_1]OUTPUT_SCALE
setp hm2_5i25.0.7i77.0.1.analogout1-minlim [AXIS_1]OUTPUT_MIN_LIMIT
setp hm2_5i25.0.7i77.0.1.analogout1-maxlim [AXIS_1]OUTPUT_MAX_LIMIT
net y-output => hm2_5i25.0.7i77.0.1.analogout1
net y-pos-cmd axis.1.motor-pos-cmd
net y-enable axis.1.amp-enable-out
###############################################
# ---"Y AXIS Encoder feedback signals/setup"---#
###############################################
setp hm2_5i25.0.encoder.01.counter-mode 0
setp hm2_5i25.0.encoder.01.filter 1
setp hm2_5i25.0.encoder.01.index-invert 0
setp hm2_5i25.0.encoder.01.index-mask 0
setp hm2_5i25.0.encoder.01.index-mask-invert 0
setp hm2_5i25.0.encoder.01.scale [AXIS_1]ENCODER_SCALE
net y-pos-fb <= hm2_5i25.0.encoder.01.position
net y-vel-fb <= hm2_5i25.0.encoder.01.velocity
net y-pos-fb => axis.1.motor-pos-fb
net y-index-enable axis.1.index-enable <=> hm2_5i25.0.encoder.01.index-enable
net y-pos-rawcounts <= hm2_5i25.0.encoder.01.rawcounts
###################################################
# ---"Y AXIS 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
#########################################################
# "Z AXIS" #
#########################################################
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
#############################################
# ---"Z AXIS PWM Generator signals/setup"---#
#############################################
setp hm2_5i25.0.7i77.0.1.analogout2-scalemax [AXIS_2]OUTPUT_SCALE
setp hm2_5i25.0.7i77.0.1.analogout2-minlim [AXIS_2]OUTPUT_MIN_LIMIT
setp hm2_5i25.0.7i77.0.1.analogout2-maxlim [AXIS_2]OUTPUT_MAX_LIMIT
net z-output => hm2_5i25.0.7i77.0.1.analogout2
net z-pos-cmd axis.2.motor-pos-cmd
net z-enable axis.2.amp-enable-out
################################################
# ---"Z AXIS Encoder feedback signals/setup"---#
################################################
setp hm2_5i25.0.encoder.02.counter-mode 0
setp hm2_5i25.0.encoder.02.filter 1
setp hm2_5i25.0.encoder.02.index-invert 0
setp hm2_5i25.0.encoder.02.index-mask 0
setp hm2_5i25.0.encoder.02.index-mask-invert 0
setp hm2_5i25.0.encoder.02.scale [AXIS_2]ENCODER_SCALE
net z-pos-fb <= hm2_5i25.0.encoder.02.position
net z-vel-fb <= hm2_5i25.0.encoder.02.velocity
net z-pos-fb => axis.2.motor-pos-fb
net z-index-enable axis.2.index-enable <=> hm2_5i25.0.encoder.02.index-enable
net z-pos-rawcounts <= hm2_5i25.0.encoder.02.rawcounts
###################################################
# ---"Z AXIS 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
#########################################################
# "SPINDLE" #
#########################################################
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
################################################
# ---"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
#################################################
# ---"SPINDLE at speed signals"--- #
#################################################
#sets spindle-at-speed true
#########################################################
# "MISC SIGNALS" #
#########################################################
net joint-select-a halui.joint.0.select
net x-is-homed halui.joint.0.is-homed
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-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-analog halui.jog.2.analog
net jog-selected-pos halui.jog.selected.plus
net jog-selected-neg halui.jog.selected.minus
net spindle-manual-cw halui.spindle.forward
net spindle-manual-ccw halui.spindle.reverse
net spindle-manual-stop halui.spindle.stop
net machine-is-on halui.machine.is-on
net MDI-mode halui.mode.is-mdi
###########################
# ---"coolant signals"---#
###########################
net coolant-mist <= iocontrol.0.coolant-mist
net coolant-flood <= iocontrol.0.coolant-flood
##############################################################
# "Probe input & output" #
##############################################################
#net probe-in <= hm2_5i25.0.7i77.0.0.input-23 => or2.3.in0
#net toolset-in <= hm2_5i25.0.7i77.0.0.input-24 => or2.3.in1
#net probe-signal <= or2.3.out => motion.probe-input
#"Output a short pulse to the probe LED/Beeper on contact"
#setp os5.falling FALSE
#setp os5.rising TRUE
#newsig os5Time float
#net os5Time => os5.width
#sets os5Time 0.02
#net probe-signal => os5.in
#net probe-led <= os5.out => hm2_5i25.0.7i77.0.0.output-10
net probe-in => motion.probe-input
##################################
# ---"motion control signals"---#
##################################
net in-position <= motion.in-position
net machine-is-enabled <= motion.motion-enabled
##########################
# ---"estop signals"--- #
##########################
net estop-out <= iocontrol.0.user-enable-out
net estop-out => iocontrol.0.emc-enable-in
#########################################################
# "Manual Tool Change" #
#########################################################
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
#########################################################
# "SHARED JOGWHEEL MPG" #
#########################################################
net joint-selected-count <= hm2_5i25.0.encoder.03.count
#########################################
######### "for axis x MPG" #########
#########################################
setp axis.0.jog-vel-mode 0
net selected-jog-incr => axis.0.jog-scale
#net jog-ena-x => axis.0.jog-enable
net joint-selected-count => axis.0.jog-counts
#########################################
######### "for axis y MPG" #########
#########################################
setp axis.1.jog-vel-mode 0
net selected-jog-incr => axis.1.jog-scale
#net jog-ena-y => axis.1.jog-enable
net joint-selected-count => axis.1.jog-counts
#########################################
######### "for axis z MPG" #########
#########################################
setp axis.2.jog-vel-mode 0
# "Limit Z motion, should be about 20 FPM"
setp limit1.1.max [MPG]Z_MINUS_LIMIT
net selected-jog-incr => limit1.1.in
net selected-jog-incr-z <= limit1.1.out => axis.2.jog-scale
#net jog-ena-z => axis.2.jog-enable
net joint-selected-count => axis.2.jog-counts
# "Scale the jog rate (FPM) to an increment per Handwheel count"
setp scale.jog.gain [MPG]HAND_WHEEL_SCALE
net jog-speed => scale.jog.in
#########################################################
# "MPG JOG SELECTED" #
#########################################################
net jog-ena-y hm2_5i25.0.7i77.0.0.input-24 => axis.2.jog-enable
net jog-ena-y-not hm2_5i25.0.7i77.0.0.input-24-not => and2.11.in0
net jog-ena-z hm2_5i25.0.7i77.0.0.input-25 => axis.1.jog-enable
net jog-ena-z-not hm2_5i25.0.7i77.0.0.input-25-not => and2.11.in1
net jog-ena-x and2.11.out => axis.0.jog-enable
sets selected-jog-incr .000001
sets jog-speed 100
#########################################################
# "POST GUI FILE BERTHA Jog signals" #
#########################################################
#net jog-speed <= gscreen.jog-spd-out
#net jog-inc <= screen.jog-inc-out
#net jog-ena-x <= gscreen.jog-enable-x-out
#net jog-ena-y <= gscreen.jog-enable-y-out
#net jog-ena-z <= gscreen.jog-enable-z-out
And here is my INI
# Generated by PNCconf at Fri Jan 15 18:07:07 2016
# If you make changes to this file, they will be
# overwritten when you run PNCconf again
[EMC]
MACHINE = bridgeport
DEBUG = 0
[DISPLAY]
DISPLAY = gmoccapy
#DISPLAY = axis
EMBED_TAB_NAME=Huanyang VFD
EMBED_TAB_LOCATION=ntb_user_tabs
EMBED_TAB_COMMAND=halcmd loadusr -Wn vfd gladevcp -c vfd -x {XID} -u handler.py huanyang.glade
EMBED_TAB_NAME=Probe Screen
EMBED_TAB_LOCATION=ntb_user_tabs
EMBED_TAB_COMMAND=halcmd loadusr -Wn gladevcp gladevcp -c gladevcp -u python/probe_screen.py -x {XID} probe_icons/probe_screen.glade
EDITOR = gedit
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 2.000000
MAX_SPINDLE_OVERRIDE = 1.20000
MIN_SPINDLE_OVERRIDE = 0.050000
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 3
PROGRAM_PREFIX = /home/stacie/linuxcnc/nc_files
INCREMENTS = .1in .05in .01in .005in .001in .0005in .0001in
POSITION_FEEDBACK = ACTUAL
DEFAULT_LINEAR_VELOCITY = 0.250000
MAX_LINEAR_VELOCITY = 2.0
MIN_LINEAR_VELOCITY = 0.010000
DEFAULT_ANGULAR_VELOCITY = 0.250000
MAX_ANGULAR_VELOCITY = 1.000000
MIN_ANGULAR_VELOCITY = 0.010000
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]
FEATURES=30
PARAMETER_FILE = linuxcnc.var
PROGRAM_PREFIX = /home/stacie/bin/features/scripts/features.ngc
SUBROUTINE_PATH = /home/stacie/linuxcnc/configs/bridgeport/macros/:/home/stacie/bin/features/lib/
[TOOLSENSOR]
# Control probe rapid feed (in machine units per minute)
RAPID_SPEED = 100
[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
SERVO_PERIOD = 1000000
[HOSTMOT2]
# **** This is for info only ****
# DRIVER0=hm2_pci
# BOARD0=5i25
[HAL]
HALUI = halui
HALFILE = bridgeport.hal
HALFILE = custom.hal
POSTGUI_HALFILE = custom_postgui.hal
SHUTDOWN = shutdown.hal
[HALUI]
[TRAJ]
AXES = 3
COORDINATES = X Y Z
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 6.0
MAX_VELOCITY = 6.00
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl
#********************
# Axis X
#********************
[AXIS_0]
TYPE = LINEAR
HOME = 0.0
FERROR = 0.003
MIN_FERROR = 0.003
MAX_VELOCITY = 3.10
MAX_ACCELERATION = 5.0
P = 150
I = 0
D = 0
FF0 = 0
FF1 = 2.72
FF2 = 0.001
BIAS = 0
DEADBAND = 0.000059
MAX_OUTPUT = 10
ENCODER_SCALE = -127000
OUTPUT_SCALE = 10
OUTPUT_MIN_LIMIT = -10
OUTPUT_MAX_LIMIT = 10
MIN_LIMIT = -17.755
MAX_LIMIT = 0.04
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 0.5
HOME_LATCH_VEL = 0.017
HOME_FINAL_VEL = 0.000000
HOME_USE_INDEX = NO
HOME_SEQUENCE = 1
#********************
# Axis Y
#********************
[AXIS_1]
TYPE = LINEAR
HOME = 0.0
FERROR = 0.003
MIN_FERROR = 0.003
MAX_VELOCITY = 3.10
MAX_ACCELERATION = 5.0
P = 150
I = 0
D = 0
FF0 = 0
FF1 = 2.74
FF2 = 0.003
BIAS = 0
DEADBAND = 0.000059
MAX_OUTPUT = 10
ENCODER_SCALE = -127000
OUTPUT_SCALE = 10
OUTPUT_MIN_LIMIT = -10
OUTPUT_MAX_LIMIT = 10
MIN_LIMIT = -11.373
MAX_LIMIT = 0.303
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = 0.500000
HOME_LATCH_VEL = 0.016667
HOME_FINAL_VEL = 0.000000
HOME_USE_INDEX = NO
HOME_SEQUENCE = 2
#********************
# Axis Z
#********************
[AXIS_2]
TYPE = LINEAR
HOME = 0.0
FERROR = 0.003
MIN_FERROR = 0.003
MAX_VELOCITY = 2.5
MAX_ACCELERATION = 5.0
P = 75
I = 0
D = 0
FF0 = 0
FF1 = 2.72
FF2 = 0
BIAS = 0
DEADBAND = 0.000059
MAX_OUTPUT = 10
ENCODER_SCALE = -127000
OUTPUT_SCALE = 10
OUTPUT_MIN_LIMIT = -10
OUTPUT_MAX_LIMIT = 10
MIN_LIMIT = -4.465
MAX_LIMIT = 0.069
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = 0.50000
HOME_LATCH_VEL = 0.016667
HOME_FINAL_VEL = 0.000000
HOME_USE_INDEX = NO
HOME_SEQUENCE = 0
#********************
# Spindle
#********************
[SPINDLE_9]
P = 0
I = 0
D = 0
FF0 = 1
FF1 = 0
FF2 = 0
BIAS = 0
DEADBAND = 0
MAX_OUTPUT = 10
#********************
# Handwheel
#********************
[MPG]
HAND_WHEEL_SCALE = 0.00000016
Z_MINUS_LIMIT = 0.000008
Please Log in or Create an account to join the conversation.
What happen if you use external button?
Norbert
Please Log in or Create an account to join the conversation.