2 seperate MPG handwheels for each axis - CNC Lathe build

More
6 years 5 months ago #167965 by rodw
Whats a RS422? I Never used that!

I appreciate that this stuff take us way outside our comfort zone. But by using a digital switch that can count to 4 in binary saves pins. eg. We get 4 states out of 4 pins.... That was my big discovery, Re read my tutorial :)

Please Log in to join the conversation.

More
6 years 5 months ago #167966 by rodw
oops I missed a couple f replys. Now I'm confused!

I never used any resistors.

Please Log in to join the conversation.

More
6 years 5 months ago #167968 by denhen89
Haha i was also confused when i have read your first post on this page :dry:

Current situation: The wiring is done as shown on this manual (page: Connection of MPG's): wiki.eusurplus.com/downloads/7i76E.pdf

Attachment not found



Now i would like to make the setup for the MPG with the PCCONF tool: I am on the configuration page on the main Tab "7i76 I/O (SS 0)" and the daughter tab "7i76-I/O TB5". There os jabe to chose the function. I choosed "Jog X +" for Input 16 and "Jog X -" for Input 17, which is for sure wrong, because nothing happend on the AXIS GUI DRO, but the MPG gives 5v when turning the handwheel.

Attachment not found

Please Log in to join the conversation.

More
6 years 5 months ago #167970 by Mike_Eitel
Sorry, cant help with that, i'm a pure hal freak.

Please Log in to join the conversation.

More
6 years 5 months ago #167971 by denhen89
No problem, but for me it actually does not matter how to set it up, i would just like to get it work, so if you have a idea what i have to change in the .HAL, then please let me know. Maybe i will then learn a bit and understand it to get other things done.

Please Log in to join the conversation.

More
6 years 5 months ago #167972 by Mike_Eitel
In this old #130396 is a tar.
It is based on gmoccapy
In that there are a lot of hals. If i remember right one is called mpg...

Please Log in to join the conversation.

More
6 years 5 months ago #167973 by tommylight
@Rod, you mean 2 pins,
@Danhen, you are not using two power supplies , so you are good and the wiring should be ok if those are +5V and gnd from the Mesa with the red and black wire.
@Rod, those are pull up resistor as the encoder has open collector outputs, so it can pull the signal to ground but not to +5V.
@Danhen, in pncconf, there is the option of using MPG, but i think it is for the spindle encoder, so you can set that and later edit the hal to point them to the actual encoders.

Please Log in to join the conversation.

More
6 years 5 months ago #167976 by denhen89
Thanks Mikel_Eitel and tommylight.

Sorry for my lathe reply, but unfortunately (as always with Linux) i had and still have problems with my wifi on the test pc. Its disconnecting from time to time when using a brower. But it does not matter right now.

To Mikel_Eitel: I cant find that post: #130396. Could you send me the link?

To tommylight: thanks, but its impossible to get it done for me, because i just dont know what i am doing or what i have to do. Its so complicated for me and i really dont know why. The CNC router with the cheap BOB was so easy to set up, but i really dont know how to do that with the mpg handwheels.

I try to check some settings from others, but the first thing which i just dont understand is, why in no lines in the HAL are the input pines pointed out.
Like for example i found this answer from Andypugh on that topic Mesa 5i25 and 7176 getting started :

Then connect the mpg to each axis:

net x-jog hm2_5i25.0.7i76.0.0.enc0.count => axis.0.jog-counts
net z-jog hm2_5i25.0.7i76.0.0.enc1.count => axis.2.jog-counts


Are there no input pins missing? I just dont get it. No even a bit. I would really wish someone would make a tutorial or something and not just give 10% info. At least i think that its impossible to know what to do for a "mesa beginner" as i am.

Here one more example of a HAL file to explain you what i dont understand (it was for a 3 axis mpg pendant i think) from this topic: 5i25 7i76 mpg help please
Code:
# Generated by PNCconf at Sun Apr 3 20:58:52 2011 # 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=1 num_pwmgens=0 num_stepgens=5 sserial_port_0=200xxxx" setp hm2_5i25.0.watchdog.timeout_ns 5000000 loadrt pid names=pid.x,pid.y,pid.z,pid.s loadrt mux16 names=jogincr 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 jogincr servo-thread addf hm2_5i25.0.write servo-thread # external output signals # --- MACHINE-IS-ENABLED --- net machine-is-enabled hm2_5i25.0.7i76.0.0.output-07 # external input signals # --- HOME-X --- net home-x <= hm2_5i25.0.7i76.0.0.input-00 # --- HOME-Y --- net home-y <= hm2_5i25.0.7i76.0.0.input-01 # --- HOME-Z --- net home-z <= hm2_5i25.0.7i76.0.0.input-02 # --- JOINT-SELECT-A --- net joint-select-a <= hm2_5i25.0.7i76.0.0.input-20 # --- JOINT-SELECT-B --- net joint-select-b <= hm2_5i25.0.7i76.0.0.input-21 # --- JOINT-SELECT-C --- net joint-select-c <= hm2_5i25.0.7i76.0.0.input-22 # --- JOG-INCR-A --- net jog-incr-a <= hm2_5i25.0.7i76.0.0.input-24 # --- JOG-INCR-B --- net jog-incr-b <= hm2_5i25.0.7i76.0.0.input-25 # --- JOG-INCR-C --- net jog-incr-c <= hm2_5i25.0.7i76.0.0.input-26 #******************* # 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_5i25.0.stepgen.00.dirsetup [AXIS_0]DIRSETUP setp hm2_5i25.0.stepgen.00.dirhold [AXIS_0]DIRHOLD setp hm2_5i25.0.stepgen.00.steplen [AXIS_0]STEPLEN setp hm2_5i25.0.stepgen.00.stepspace [AXIS_0]STEPSPACE setp hm2_5i25.0.stepgen.00.position-scale [AXIS_0]STEP_SCALE setp hm2_5i25.0.stepgen.00.step_type 0 setp hm2_5i25.0.stepgen.00.control-type 1 setp hm2_5i25.0.stepgen.00.maxaccel [AXIS_0]STEPGEN_MAXACCEL setp hm2_5i25.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_5i25.0.stepgen.00.velocity-cmd net x-pos-fb <= hm2_5i25.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_5i25.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_5i25.0.stepgen.01.dirsetup [AXIS_1]DIRSETUP setp hm2_5i25.0.stepgen.01.dirhold [AXIS_1]DIRHOLD setp hm2_5i25.0.stepgen.01.steplen [AXIS_1]STEPLEN setp hm2_5i25.0.stepgen.01.stepspace [AXIS_1]STEPSPACE setp hm2_5i25.0.stepgen.01.position-scale [AXIS_1]STEP_SCALE setp hm2_5i25.0.stepgen.01.step_type 0 setp hm2_5i25.0.stepgen.01.control-type 1 setp hm2_5i25.0.stepgen.01.maxaccel [AXIS_1]STEPGEN_MAXACCEL setp hm2_5i25.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_5i25.0.stepgen.01.velocity-cmd net y-pos-fb <= hm2_5i25.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_5i25.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_5i25.0.stepgen.02.dirsetup [AXIS_2]DIRSETUP setp hm2_5i25.0.stepgen.02.dirhold [AXIS_2]DIRHOLD setp hm2_5i25.0.stepgen.02.steplen [AXIS_2]STEPLEN setp hm2_5i25.0.stepgen.02.stepspace [AXIS_2]STEPSPACE setp hm2_5i25.0.stepgen.02.position-scale [AXIS_2]STEP_SCALE setp hm2_5i25.0.stepgen.02.step_type 0 setp hm2_5i25.0.stepgen.02.control-type 1 setp hm2_5i25.0.stepgen.02.maxaccel [AXIS_2]STEPGEN_MAXACCEL setp hm2_5i25.0.stepgen.02.maxvel [AXIS_2]STEPGEN_MAXVEL setp hm2_5i25.0.gpio.004.invert_output true # ---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_5i25.0.stepgen.02.velocity-cmd net z-pos-fb <= hm2_5i25.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_5i25.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 #******************* # SPINDLE S #******************* setp pid.s.Pgain [SPINDLE_9]P setp pid.s.Igain [SPINDLE_9]I setp pid.s.Dgain [SPINDLE_9]D setp pid.s.bias [SPINDLE_9]BIAS setp pid.s.FF0 [SPINDLE_9]FF0 setp pid.s.FF1 [SPINDLE_9]FF1 setp pid.s.FF2 [SPINDLE_9]FF2 setp pid.s.deadband [SPINDLE_9]DEADBAND setp pid.s.maxoutput [SPINDLE_9]MAX_OUTPUT setp pid.s.error-previous-target true net spindle-index-enable <=> pid.s.index-enable net spindle-enable => pid.s.enable net spindle-vel-cmd-rpm-abs => pid.s.command net spindle-vel-fb-rpm-abs => pid.s.feedback net spindle-output <= pid.s.output # ---digital potentionmeter output signals/setup--- setp hm2_5i25.0.7i76.0.0.spinout-minlim [SPINDLE_9]OUTPUT_MIN_LIMIT setp hm2_5i25.0.7i76.0.0.spinout-maxlim [SPINDLE_9]OUTPUT_MAX_LIMIT setp hm2_5i25.0.7i76.0.0.spinout-scalemax [SPINDLE_9]OUTPUT_SCALE net spindle-output => hm2_5i25.0.7i76.0.0.spinout net spindle-enable => hm2_5i25.0.7i76.0.0.spinena net spindle-ccw => hm2_5i25.0.7i76.0.0.spindir # ---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 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 # ---jogwheel signals to mesa encoder - shared MPG--- net joint-selected-count <= hm2_5i25.0.encoder.00.count # ---mpg signals--- # for axis x MPG setp axis.0.jog-vel-mode 0 net selected-jog-incr => axis.0.jog-scale net joint-select-a => 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 joint-select-b => axis.1.jog-enable net joint-selected-count => axis.1.jog-counts # for axis z MPG setp axis.2.jog-vel-mode 0 net selected-jog-incr => axis.2.jog-scale net joint-select-c => axis.2.jog-enable net joint-selected-count => axis.2.jog-counts # connect selectable mpg jog increments net jog-incr-a => jogincr.sel0 net jog-incr-b => jogincr.sel1 net jog-incr-c => jogincr.sel2 net jog-incr-d => jogincr.sel3 net selected-jog-incr <= jogincr.out-f setp jogincr.debounce-time 0.200000 setp jogincr.use-graycode False setp jogincr.suppress-no-input False setp jogincr.in00 0.000000 setp jogincr.in01 0.001000 setp jogincr.in02 0.010000 setp jogincr.in03 0.100000 setp jogincr.in04 0.005000 setp jogincr.in05 0.010000 setp jogincr.in06 0.050000 setp jogincr.in07 0.100000 setp jogincr.in08 0.125000 setp jogincr.in09 0.125000 setp jogincr.in10 0.125000 setp jogincr.in11 0.125000 setp jogincr.in12 0.125000 setp jogincr.in13 0.125000 setp jogincr.in14 0.125000 setp jogincr.in15 0.125000 # ---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

He did connect the MPG to TB5 Pin 1 and Pin 2, as i did also for one MPG handwheel. But no where in the HAL i can find something like "input 16" and "input 17".

Guys, i dont wanna cry, but i dont get it done by my self. No chance. I know that this is not your problem and you are helping here for free, but since i have got the Mesa 7i76e i have spend about 24 hours to get things done and from the 24h a spend at least 10 hours, just to get the Handwheels connected and setup, but with no positive result. I am currently really thinking to give up and sell the 7i76e, forget about the mpg handwheels and just use a cheap BOB which i know that i will be able to setup.
Another option is that someone does the work for me and i pay for that. There are nicer things to do then trying something without any clue about it.

Please Log in to join the conversation.

More
6 years 5 months ago #167978 by Mike_Eitel
Just copied my mpg.hal completely as i do not know how to make those foldable
code inserts

########################################
# 7i73 hal connections for the MPG #
# (c) Norbert Schechner #
# modified by Mike Eitel #
########################################


### DECLARATION OF USED COMPONENTS ###

loadrt ilowpass names=lowpass-x,lowpass-y,lowpass-z,lowpass-a
loadrt mux4 names=jog-scale-xy,jog-scale-z,jog-scale-a

### STARTING OF USED COMPONENTS ###
addf lowpass-x servo-thread
addf lowpass-y servo-thread
addf lowpass-z servo-thread
addf lowpass-a servo-thread
addf jog-scale-xy servo-thread
addf jog-scale-z servo-thread
addf jog-scale-a servo-thread

### DEFINITION OF CONSTANTS ###

# For velocity mode, set to 1
# In velocity mode the axis stops when the dial is stopped even if that means
# the commanded motion is not completed. For position mode (the default), set to 0
# In position mode the axis will move exactly jog-scale
# units for each count, regardless of how long that might take,
setp axis.x.jog-vel-mode 0
setp axis.y.jog-vel-mode 0
setp axis.z.jog-vel-mode 0
setp axis.a.jog-vel-mode 0
setp joint.0.jog-vel-mode 0
setp joint.1.jog-vel-mode 0
setp joint.2.jog-vel-mode 0
setp joint.3.jog-vel-mode 0


# Make the movements smother by avoiding big jumps
setp lowpass-x.scale 1
setp lowpass-x.gain 0.01
setp lowpass-y.scale 1
setp lowpass-y.gain 0.0075
setp lowpass-z.scale 1
setp lowpass-z.gain 0.0050
setp lowpass-a.scale 1
setp lowpass-a.gain 0.0025

# This sets the scale that will be used based on the input to the mux4
# The scale used here has to be multiplied by the ilowpass scale
# X an Y are using the same scale factors
setp jog-scale-xy.in0 1.000
setp jog-scale-xy.in1 0.100
setp jog-scale-xy.in2 0.010
setp jog-scale-xy.in3 0.001

#Z ist normal spindel axis
setp jog-scale-z.in0 1.000
setp jog-scale-z.in1 0.100
setp jog-scale-z.in2 0.010
setp jog-scale-z.in3 0.001

#A is a rotating axis !
setp jog-scale-a.in0 15.0
setp jog-scale-a.in1 3.6
setp jog-scale-a.in2 1.0
setp jog-scale-a.in3 0.1


### IMPLEMENTATION OF HAL CONNECTIONS ###

# X an Y are using the same scale factors

# The selector inputs of the mux4 component are connected with the hw switches
net scale-xy1 jog-scale-xy.sel0 <= hm2_7i76e.0.7i73.0.1.input-18-not
net scale-xy2 jog-scale-xy.sel1 <= hm2_7i76e.0.7i73.0.1.input-19-not
net scale-z1 jog-scale-z.sel0 <= hm2_7i76e.0.7i73.0.1.input-20-not
net scale-z2 jog-scale-z.sel1 <= hm2_7i76e.0.7i73.0.1.input-21-not
net scale-a1 jog-scale-a.sel0 <= hm2_7i76e.0.7i73.0.1.input-22-not
net scale-a2 jog-scale-a.sel1 <= hm2_7i76e.0.7i73.0.1.input-23-not

# This sets the scale that will be used based on the input of the mux4
# The output from the mux4 is sent to each axis jog scale
net mpg-scale-xy jog-scale-xy.out => axis.x.jog-scale => joint.0.jog-scale
net mpg-scale-xy => axis.y.jog-scale => joint.1.jog-scale
net mpg-scale-z jog-scale-z.out => axis.z.jog-scale => joint.2.jog-scale
net mpg-scale-a jog-scale-a.out => axis.a.jog-scale => joint.3.jog-scale


# Connecting of encoder hw outputs to hal
# The output from encoder counts is sent to ilowpass
net jog-wheel-counts-x lowpass-x.in <= hm2_7i76e.0.7i73.0.1.enc0.count
net jog-wheel-counts-y lowpass-y.in <= hm2_7i76e.0.7i73.0.1.enc1.count
net jog-wheel-counts-z lowpass-z.in <= hm2_7i76e.0.7i73.0.1.enc2.count
net jog-wheel-counts-a lowpass-a.in <= hm2_7i76e.0.7i73.0.1.enc3.count

net jog-wheel-counts-x => joint.0.jog-counts => axis.x.jog-counts
net jog-wheel-counts-y => joint.1.jog-counts => axis.y.jog-counts
net jog-wheel-counts-z => joint.2.jog-counts => axis.z.jog-counts
net jog-wheel-counts-a => joint.3.jog-counts => axis.a.jog-counts


# already connected cont_joging on jog vel mode selection
# net jog_cont gmoccapy.jog.jog-inc-0 <= hm2_7i76e.0.7i73.0.1.input-07
#net jog_1000 gmoccapy.jog.jog-inc-1 <= hm2_7i76e.0.7i73.0.1.input-06
#net jog_0100 gmoccapy.jog.jog-inc-2 <= hm2_7i76e.0.7i73.0.1.input-05
#net jog_0010 gmoccapy.jog.jog-inc-3 <= hm2_7i76e.0.7i73.0.1.input-04
#net jog_0001 gmoccapy.jog.jog-inc-4 <= hm2_7i76e.0.7i73.0.1.input-03

# loaded at estop_and_enable.hal
#loadrt and2 names=and_x,and_y,and_z
#addf and_x servo-thread
#addf and_y servo-thread
#addf and_z servo-thread
#addf and_a servo-thread

net jog-enable <= halui.machine.is-on
net jog-enable => joint.0.jog-enable => axis.x.jog-enable
net jog-enable => joint.1.jog-enable => axis.y.jog-enable
net jog-enable => joint.2.jog-enable => axis.z.jog-enable
net jog-enable => joint.3.jog-enable => axis.a.jog-enable

Please Log in to join the conversation.

More
6 years 5 months ago #167980 by tommylight
Take a break for tonight, go out and forget about all this here.
Tomorrow is Sunday, so grab a coffee and a smoke and a chair, we'll give it a go at a slower pace.
B)

Please Log in to join the conversation.

Time to create page: 0.118 seconds
Powered by Kunena Forum