ubuntu 10.04 Lcnc2.7 JA8 custom kins
18 Nov 2015 12:37 - 18 Nov 2015 12:45 #65421
by bkt
Replied by bkt on topic ubuntu 10.04 Lcnc2.7 JA??
is an mpg .... single end mode encoder on mesa7i77 .... and 2 rotary switchesr .. 1 for mux4 and other for axis selection + I have make an security button .... if press these the output from rotary switches go to mesa card ... altrhought mesa card receive off signal from all selector.... encoder wheel is always active....
similar to these...
@AndyPugh Thanks for joint the post to my other ...
similar to these...
@AndyPugh Thanks for joint the post to my other ...
Last edit: 18 Nov 2015 12:45 by bkt.
Please Log in or Create an account to join the conversation.
18 Nov 2015 12:45 #65422
by andypugh
Replied by andypugh on topic ubuntu 10.04 Lcnc2.7 JA??
I am not sure if this works or not. My own machine runs on JA(something) but with trivial kins and Touchy. The jogwheel connects to the touchy HAL pins so I don't know for sure that your setup will work.
Can you check with halmeter that the jog-enable inputs into motion are definitely being set? And that the counts increases/decreases.
It is possible that my translation script has slightly broken your config.
Can you check with halmeter that the jog-enable inputs into motion are definitely being set? And that the counts increases/decreases.
It is possible that my translation script has slightly broken your config.
The following user(s) said Thank You: bkt
Please Log in or Create an account to join the conversation.
18 Nov 2015 13:19 #65423
by cncbasher
Replied by cncbasher on topic ubuntu 10.04 Lcnc2.7 JA??
s.axes is usually caused by a malformed hal file
The following user(s) said Thank You: bkt
Please Log in or Create an account to join the conversation.
18 Nov 2015 13:22 #65424
by bkt
Replied by bkt on topic ubuntu 10.04 Lcnc2.7 JA??
no your translation script works well ... only insert KINS = trivialkins and put in hal file "#halconverter mycustomkins" row and add "loard [KINS]KINEMATICS" not work for my ... than I convert all by hand ... Insert a little part of interest for problem ...
ini file ...
Image of jog mode and teleop mode ..... you see all halui pin move right but in world mode axes is stopped ....
you see anythings broken??
Warning: Spoiler!
loadrt deltakins_A_B
setp deltakins_A_B.e 200.00 #triangle low
setp deltakins_A_B.f 848.705 #triangle hight
setp deltakins_A_B.re 1000.0 #link 01
setp deltakins_A_B.rf 416.02 #link 02
loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS
loadrt hostmot2
loadrt hm2_pci config=" num_encoders=6 num_pwmgens=0 num_stepgens=0 sserial_port_0=000xxx"
setp hm2_5i25.0.watchdog.timeout_ns 5000000
loadrt pid names=pid.x,pid.y,pid.z,pid.a,pid.b
loadrt mux4 names=jogincr
loadrt ilowpass
loadrt conv_s32_float names=c32f.0,c32f.1,c32f.2,c32f.3,c32f.4
addf hm2_5i25.0.read servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf pid.x.do-pid-calcs servo-thread
addf pid.y.do-pid-calcs servo-thread
addf pid.z.do-pid-calcs servo-thread
addf pid.a.do-pid-calcs servo-thread
addf pid.b.do-pid-calcs servo-thread
addf jogincr servo-thread
addf ilowpass.0 servo-thread
addf c32f.0 servo-thread
addf c32f.1 servo-thread
addf c32f.2 servo-thread
addf c32f.3 servo-thread
addf c32f.4 servo-thread
addf hm2_5i25.0.write servo-thread
setp ilowpass.0.scale 1000
setp ilowpass.0.gain 0.01
# external output signals
# external input signals
# --- ESTOP-EXT ---
net estop-ext <= hm2_5i25.0.7i77.0.0.input-12
# --- MAX-HOME-A ---
net home-a <= hm2_5i25.0.7i77.0.0.input-14
# --- MAX-HOME-B ---
net home-b <= hm2_5i25.0.7i77.0.0.input-15
# ************* LIMIT-X ***************************
# --- MAX-X ---
net x-pos-limit <= hm2_5i25.0.7i77.0.0.input-24-not => joint.0.pos-lim-sw-in
# --- MIN-X ---
net x-neg-limit <= hm2_5i25.0.7i77.0.0.input-25-not => joint.0.neg-lim-sw-in
# --- HOME-X ---
net x-home-sw <= hm2_5i25.0.7i77.0.0.input-30 => joint.0.home-sw-in
#net x-home-sw => joint.0.home-sw-in
#net x-neg-limit => joint.0.neg-lim-sw-in
#net x-pos-limit => joint.0.pos-lim-sw-in
#*******************************************************
# ****************** LIMIT-Y **************************
# --- MAX-y ---
net y-pos-limit <= hm2_5i25.0.7i77.0.0.input-26-not => joint.1.pos-lim-sw-in
# --- MIN-Y ---
net y-neg-limit <= hm2_5i25.0.7i77.0.0.input-27-not => joint.1.neg-lim-sw-in
# --- HOME-Y ---
net y-home-sw <= hm2_5i25.0.7i77.0.0.input-31 => joint.1.home-sw-in
#net y-home-sw => joint.1.home-sw-in
#net y-neg-limit => joint.1.neg-lim-sw-in
#net y-pos-limit => joint.1.pos-lim-sw-in
#******************************************************
# ****************** LIMIT-Z **************************
# --- MAX-Z ---
net z-pos-limit <= hm2_5i25.0.7i77.0.0.input-28-not => joint.2.pos-lim-sw-in
# --- MIN-Z ---
net z-neg-limit <= hm2_5i25.0.7i77.0.0.input-29-not => joint.2.neg-lim-sw-in
# --- HOME-Z ---
net z-home-sw <= hm2_5i25.0.7i77.0.0.input-13 => joint.2.home-sw-in
#net z-home-sw => joint.2.home-sw-in
#net z-neg-limit => joint.2.neg-lim-sw-in
#net z-pos-limit => joint.2.pos-lim-sw-in
#********************************************************
#*******************
# AXIS X
#*******************
setp pid.x.Pgain [JOINT_0]P
setp pid.x.Igain [JOINT_0]I
setp pid.x.Dgain [JOINT_0]D
setp pid.x.bias [JOINT_0]BIAS
setp pid.x.FF0 [JOINT_0]FF0
setp pid.x.FF1 [JOINT_0]FF1
setp pid.x.FF2 [JOINT_0]FF2
setp pid.x.deadband [JOINT_0]DEADBAND
setp pid.x.maxoutput [JOINT_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
# ---PWM Generator signals/setup---
setp hm2_5i25.0.7i77.0.1.analogout0-scalemax [JOINT_0]OUTPUT_SCALE
setp hm2_5i25.0.7i77.0.1.analogout0-minlim [JOINT_0]OUTPUT_MIN_LIMIT
setp hm2_5i25.0.7i77.0.1.analogout0-maxlim [JOINT_0]OUTPUT_MAX_LIMIT
net x-output => hm2_5i25.0.7i77.0.1.analogout0
net x-pos-cmd joint.0.motor-pos-cmd
net x-enable joint.0.amp-enable-out
# enable _all_ sserial pwmgens
net x-enable hm2_5i25.0.7i77.0.1.analogena
# ---Encoder feedback signals/setup---
setp hm2_5i25.0.encoder.00.counter-mode 0
setp hm2_5i25.0.encoder.00.filter 1
setp hm2_5i25.0.encoder.00.index-invert 0
setp hm2_5i25.0.encoder.00.index-mask 0
setp hm2_5i25.0.encoder.00.index-mask-invert 0
setp hm2_5i25.0.encoder.00.scale [JOINT_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 => joint.0.motor-pos-fb
net x-index-enable joint.0.index-enable <=> hm2_5i25.0.encoder.00.index-enable
net x-pos-rawcounts <= hm2_5i25.0.encoder.00.rawcounts
# ---setup home / limit switch signals---
#net x-home-sw => joint.0.home-sw-in
#net x-neg-limit => joint.0.neg-lim-sw-in
#net x-pos-limit => joint.0.pos-lim-sw-in
...........................
.............................
jog issue part ..........
# for axis x MPG
setp joint.0.jog-vel-mode 0
net selected-jog-incr => joint.0.jog-scale
net joint-select-a => joint.0.jog-enable # <= hm2_5i25.0.7i77.0.0.input-16
net joint-selected-count => joint.0.jog-counts c32f.0.in #
#net joint-world-0 c32f.0.out => halui.jog.0.analog
net joint-world-0 c32f.0.out => halui.jog.0.increment
# for axis y MPG
setp joint.1.jog-vel-mode 0
net selected-jog-incr => joint.1.jog-scale
net joint-select-b => joint.1.jog-enable # <= hm2_5i25.0.7i77.0.0.input-17
net joint-selected-count => joint.1.jog-counts c32f.1.in #
#net joint-world-1 c32f.1.out => halui.jog.1.analog
net joint-world-1 c32f.1.out => halui.jog.1.increment
# for axis z MPG
setp joint.2.jog-vel-mode 0
net selected-jog-incr => joint.2.jog-scale
net joint-select-c => joint.2.jog-enable # <= hm2_5i25.0.7i77.0.0.input-18
net joint-selected-count => joint.2.jog-counts c32f.2.in #
#net joint-world-2 c32f.2.out => halui.jog.2.analog
net joint-world-2 c32f.2.out => halui.jog.2.increment
# for axis a MPG
setp joint.3.jog-vel-mode 0
net selected-jog-incr => joint.3.jog-scale
net joint-select-d => joint.3.jog-enable # <= hm2_5i25.0.7i77.0.0.input-19
net joint-selected-count => joint.3.jog-counts c32f.3.in #
#net joint-world-3 c32f.3.out => halui.jog.3.analog
net joint-world-3 c32f.3.out => halui.jog.3.increment
# for axis b MPG
setp joint.4.jog-vel-mode 0
net selected-jog-incr => joint.4.jog-scale
net joint-select-e => joint.4.jog-enable # <= hm2_5i25.0.7i77.0.0.input-20
net joint-selected-count => joint.4.jog-counts c32f.4.in #
#net joint-world-4 c32f.4.out => halui.jog.4.analog
net joint-world-4 c32f.4.out => halui.jog.4.increment
# connect selectable mpg jog increments
net jog-incr-b => jogincr.sel0
net jog-incr-c => jogincr.sel1
net selected-jog-incr halui.jog.selected.increment <= jogincr.out
#net selected-jog-JA8 halui.jog.selected.increment <= c32f.0.out
#setp jogincr.debounce-time 0.200000
#setp jogincr.use-graycode False
#setp jogincr.suppress-no-input False
setp jogincr.in0 0.001000
setp jogincr.in1 0.010000
setp jogincr.in2 0.100000
setp jogincr.in3 1.000000
setp deltakins_A_B.e 200.00 #triangle low
setp deltakins_A_B.f 848.705 #triangle hight
setp deltakins_A_B.re 1000.0 #link 01
setp deltakins_A_B.rf 416.02 #link 02
loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS
loadrt hostmot2
loadrt hm2_pci config=" num_encoders=6 num_pwmgens=0 num_stepgens=0 sserial_port_0=000xxx"
setp hm2_5i25.0.watchdog.timeout_ns 5000000
loadrt pid names=pid.x,pid.y,pid.z,pid.a,pid.b
loadrt mux4 names=jogincr
loadrt ilowpass
loadrt conv_s32_float names=c32f.0,c32f.1,c32f.2,c32f.3,c32f.4
addf hm2_5i25.0.read servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf pid.x.do-pid-calcs servo-thread
addf pid.y.do-pid-calcs servo-thread
addf pid.z.do-pid-calcs servo-thread
addf pid.a.do-pid-calcs servo-thread
addf pid.b.do-pid-calcs servo-thread
addf jogincr servo-thread
addf ilowpass.0 servo-thread
addf c32f.0 servo-thread
addf c32f.1 servo-thread
addf c32f.2 servo-thread
addf c32f.3 servo-thread
addf c32f.4 servo-thread
addf hm2_5i25.0.write servo-thread
setp ilowpass.0.scale 1000
setp ilowpass.0.gain 0.01
# external output signals
# external input signals
# --- ESTOP-EXT ---
net estop-ext <= hm2_5i25.0.7i77.0.0.input-12
# --- MAX-HOME-A ---
net home-a <= hm2_5i25.0.7i77.0.0.input-14
# --- MAX-HOME-B ---
net home-b <= hm2_5i25.0.7i77.0.0.input-15
# ************* LIMIT-X ***************************
# --- MAX-X ---
net x-pos-limit <= hm2_5i25.0.7i77.0.0.input-24-not => joint.0.pos-lim-sw-in
# --- MIN-X ---
net x-neg-limit <= hm2_5i25.0.7i77.0.0.input-25-not => joint.0.neg-lim-sw-in
# --- HOME-X ---
net x-home-sw <= hm2_5i25.0.7i77.0.0.input-30 => joint.0.home-sw-in
#net x-home-sw => joint.0.home-sw-in
#net x-neg-limit => joint.0.neg-lim-sw-in
#net x-pos-limit => joint.0.pos-lim-sw-in
#*******************************************************
# ****************** LIMIT-Y **************************
# --- MAX-y ---
net y-pos-limit <= hm2_5i25.0.7i77.0.0.input-26-not => joint.1.pos-lim-sw-in
# --- MIN-Y ---
net y-neg-limit <= hm2_5i25.0.7i77.0.0.input-27-not => joint.1.neg-lim-sw-in
# --- HOME-Y ---
net y-home-sw <= hm2_5i25.0.7i77.0.0.input-31 => joint.1.home-sw-in
#net y-home-sw => joint.1.home-sw-in
#net y-neg-limit => joint.1.neg-lim-sw-in
#net y-pos-limit => joint.1.pos-lim-sw-in
#******************************************************
# ****************** LIMIT-Z **************************
# --- MAX-Z ---
net z-pos-limit <= hm2_5i25.0.7i77.0.0.input-28-not => joint.2.pos-lim-sw-in
# --- MIN-Z ---
net z-neg-limit <= hm2_5i25.0.7i77.0.0.input-29-not => joint.2.neg-lim-sw-in
# --- HOME-Z ---
net z-home-sw <= hm2_5i25.0.7i77.0.0.input-13 => joint.2.home-sw-in
#net z-home-sw => joint.2.home-sw-in
#net z-neg-limit => joint.2.neg-lim-sw-in
#net z-pos-limit => joint.2.pos-lim-sw-in
#********************************************************
#*******************
# AXIS X
#*******************
setp pid.x.Pgain [JOINT_0]P
setp pid.x.Igain [JOINT_0]I
setp pid.x.Dgain [JOINT_0]D
setp pid.x.bias [JOINT_0]BIAS
setp pid.x.FF0 [JOINT_0]FF0
setp pid.x.FF1 [JOINT_0]FF1
setp pid.x.FF2 [JOINT_0]FF2
setp pid.x.deadband [JOINT_0]DEADBAND
setp pid.x.maxoutput [JOINT_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
# ---PWM Generator signals/setup---
setp hm2_5i25.0.7i77.0.1.analogout0-scalemax [JOINT_0]OUTPUT_SCALE
setp hm2_5i25.0.7i77.0.1.analogout0-minlim [JOINT_0]OUTPUT_MIN_LIMIT
setp hm2_5i25.0.7i77.0.1.analogout0-maxlim [JOINT_0]OUTPUT_MAX_LIMIT
net x-output => hm2_5i25.0.7i77.0.1.analogout0
net x-pos-cmd joint.0.motor-pos-cmd
net x-enable joint.0.amp-enable-out
# enable _all_ sserial pwmgens
net x-enable hm2_5i25.0.7i77.0.1.analogena
# ---Encoder feedback signals/setup---
setp hm2_5i25.0.encoder.00.counter-mode 0
setp hm2_5i25.0.encoder.00.filter 1
setp hm2_5i25.0.encoder.00.index-invert 0
setp hm2_5i25.0.encoder.00.index-mask 0
setp hm2_5i25.0.encoder.00.index-mask-invert 0
setp hm2_5i25.0.encoder.00.scale [JOINT_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 => joint.0.motor-pos-fb
net x-index-enable joint.0.index-enable <=> hm2_5i25.0.encoder.00.index-enable
net x-pos-rawcounts <= hm2_5i25.0.encoder.00.rawcounts
# ---setup home / limit switch signals---
#net x-home-sw => joint.0.home-sw-in
#net x-neg-limit => joint.0.neg-lim-sw-in
#net x-pos-limit => joint.0.pos-lim-sw-in
...........................
.............................
jog issue part ..........
# for axis x MPG
setp joint.0.jog-vel-mode 0
net selected-jog-incr => joint.0.jog-scale
net joint-select-a => joint.0.jog-enable # <= hm2_5i25.0.7i77.0.0.input-16
net joint-selected-count => joint.0.jog-counts c32f.0.in #
#net joint-world-0 c32f.0.out => halui.jog.0.analog
net joint-world-0 c32f.0.out => halui.jog.0.increment
# for axis y MPG
setp joint.1.jog-vel-mode 0
net selected-jog-incr => joint.1.jog-scale
net joint-select-b => joint.1.jog-enable # <= hm2_5i25.0.7i77.0.0.input-17
net joint-selected-count => joint.1.jog-counts c32f.1.in #
#net joint-world-1 c32f.1.out => halui.jog.1.analog
net joint-world-1 c32f.1.out => halui.jog.1.increment
# for axis z MPG
setp joint.2.jog-vel-mode 0
net selected-jog-incr => joint.2.jog-scale
net joint-select-c => joint.2.jog-enable # <= hm2_5i25.0.7i77.0.0.input-18
net joint-selected-count => joint.2.jog-counts c32f.2.in #
#net joint-world-2 c32f.2.out => halui.jog.2.analog
net joint-world-2 c32f.2.out => halui.jog.2.increment
# for axis a MPG
setp joint.3.jog-vel-mode 0
net selected-jog-incr => joint.3.jog-scale
net joint-select-d => joint.3.jog-enable # <= hm2_5i25.0.7i77.0.0.input-19
net joint-selected-count => joint.3.jog-counts c32f.3.in #
#net joint-world-3 c32f.3.out => halui.jog.3.analog
net joint-world-3 c32f.3.out => halui.jog.3.increment
# for axis b MPG
setp joint.4.jog-vel-mode 0
net selected-jog-incr => joint.4.jog-scale
net joint-select-e => joint.4.jog-enable # <= hm2_5i25.0.7i77.0.0.input-20
net joint-selected-count => joint.4.jog-counts c32f.4.in #
#net joint-world-4 c32f.4.out => halui.jog.4.analog
net joint-world-4 c32f.4.out => halui.jog.4.increment
# connect selectable mpg jog increments
net jog-incr-b => jogincr.sel0
net jog-incr-c => jogincr.sel1
net selected-jog-incr halui.jog.selected.increment <= jogincr.out
#net selected-jog-JA8 halui.jog.selected.increment <= c32f.0.out
#setp jogincr.debounce-time 0.200000
#setp jogincr.use-graycode False
#setp jogincr.suppress-no-input False
setp jogincr.in0 0.001000
setp jogincr.in1 0.010000
setp jogincr.in2 0.100000
setp jogincr.in3 1.000000
ini file ...
Warning: Spoiler!
This config file was created 2015-11-18 09:51:46.661942 by the update_ini script
The original config files may be found in the /home/k1-stab/linuxcnc/configs/n/n.old.old directory
# Generated by PNCconf at Tue Nov 10 10:24:28 2015
# If you make changes to this file, they will be
# overwritten when you run PNCconf again
[EMC]
# The version string for this INI file.
VERSION = 1.0
MACHINE = n
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/k1-stab
INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm
PYVCP=panel.xml
POSITION_FEEDBACK = ACTUAL
DEFAULT_LINEAR_VELOCITY = 2000
MAX_LINEAR_VELOCITY = 100000.000000
MIN_LINEAR_VELOCITY = 0
DEFAULT_ANGULAR_VELOCITY = 166.6667
MAX_ANGULAR_VELOCITY = 36000.0
MIN_ANGULAR_VELOCITY = 0.000000
EDITOR = gedit
GEOMETRY = xyzab
[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
[RS274NGC]
FEATURES = 28
PARAMETER_FILE = linuxcnc.var
[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
SERVO_PERIOD = 1000000
[TASK]
TASK = milltask
CYCLE_TIME = 0.010
[HAL]
HALUI = halui
HALFILE = n.hal
HALFILE = custom.hal
POSTGUI_HALFILE = postgui.hal
SHUTDOWN = shutdown.hal
[HALUI]
[TRAJ]
AXES = 5
COORDINATES = X Y Z A B
MAX_ANGULAR_VELOCITY = 36000.00
DEFAULT_ANGULAR_VELOCITY = 360.00
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 5000
MAX_LINEAR_VELOCITY = 16200
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl
[HOSTMOT2]
# **** This is for info only ****
# DRIVER0=hm2_pci
# BOARD0=5i25
[KINS]
JOINTS = 5
COORDINATES = X Y Z A B
KINEMATICS = deltakins_A_B
#********************
# Axis X
#********************
[AXIS_X]
HOME = 0.0
MIN_LIMIT = -20000000.0
MAX_LIMIT = 200000000.0
MAX_VELOCITY = 1800
MAX_ACCELERATION = 16000.0
[JOINT_0]
TYPE = ANGULAR
HOME = 0.0
FERROR = 1.0
MIN_FERROR = 0.50
MAX_VELOCITY = 1800
MAX_ACCELERATION = 16000.0
P = 500
I = 20
D = 0.0
FF0 = 0
FF1 = 1.0
FF2 = 0.00
BIAS = 0.002
DEADBAND = 0.000015
MAX_OUTPUT = 0.0
ENCODER_SCALE = 277.7778
OUTPUT_SCALE = 1800.0
OUTPUT_MIN_LIMIT = -1800.0
OUTPUT_MAX_LIMIT = 1800.0
MIN_LIMIT = -20000000.0
MAX_LIMIT = 200000000.0
HOME_OFFSET = 0.0
#HOME_SEARCH_VEL = -10.0000
#HOME_LATCH_VEL = 5.0000
#HOME_FINAL_VEL = 5.0000
#HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 0
The original config files may be found in the /home/k1-stab/linuxcnc/configs/n/n.old.old directory
# Generated by PNCconf at Tue Nov 10 10:24:28 2015
# If you make changes to this file, they will be
# overwritten when you run PNCconf again
[EMC]
# The version string for this INI file.
VERSION = 1.0
MACHINE = n
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/k1-stab
INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm
PYVCP=panel.xml
POSITION_FEEDBACK = ACTUAL
DEFAULT_LINEAR_VELOCITY = 2000
MAX_LINEAR_VELOCITY = 100000.000000
MIN_LINEAR_VELOCITY = 0
DEFAULT_ANGULAR_VELOCITY = 166.6667
MAX_ANGULAR_VELOCITY = 36000.0
MIN_ANGULAR_VELOCITY = 0.000000
EDITOR = gedit
GEOMETRY = xyzab
[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
[RS274NGC]
FEATURES = 28
PARAMETER_FILE = linuxcnc.var
[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
SERVO_PERIOD = 1000000
[TASK]
TASK = milltask
CYCLE_TIME = 0.010
[HAL]
HALUI = halui
HALFILE = n.hal
HALFILE = custom.hal
POSTGUI_HALFILE = postgui.hal
SHUTDOWN = shutdown.hal
[HALUI]
[TRAJ]
AXES = 5
COORDINATES = X Y Z A B
MAX_ANGULAR_VELOCITY = 36000.00
DEFAULT_ANGULAR_VELOCITY = 360.00
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 5000
MAX_LINEAR_VELOCITY = 16200
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl
[HOSTMOT2]
# **** This is for info only ****
# DRIVER0=hm2_pci
# BOARD0=5i25
[KINS]
JOINTS = 5
COORDINATES = X Y Z A B
KINEMATICS = deltakins_A_B
#********************
# Axis X
#********************
[AXIS_X]
HOME = 0.0
MIN_LIMIT = -20000000.0
MAX_LIMIT = 200000000.0
MAX_VELOCITY = 1800
MAX_ACCELERATION = 16000.0
[JOINT_0]
TYPE = ANGULAR
HOME = 0.0
FERROR = 1.0
MIN_FERROR = 0.50
MAX_VELOCITY = 1800
MAX_ACCELERATION = 16000.0
P = 500
I = 20
D = 0.0
FF0 = 0
FF1 = 1.0
FF2 = 0.00
BIAS = 0.002
DEADBAND = 0.000015
MAX_OUTPUT = 0.0
ENCODER_SCALE = 277.7778
OUTPUT_SCALE = 1800.0
OUTPUT_MIN_LIMIT = -1800.0
OUTPUT_MAX_LIMIT = 1800.0
MIN_LIMIT = -20000000.0
MAX_LIMIT = 200000000.0
HOME_OFFSET = 0.0
#HOME_SEARCH_VEL = -10.0000
#HOME_LATCH_VEL = 5.0000
#HOME_FINAL_VEL = 5.0000
#HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 0
Image of jog mode and teleop mode ..... you see all halui pin move right but in world mode axes is stopped ....
you see anythings broken??
Please Log in or Create an account to join the conversation.
18 Nov 2015 13:26 #65425
by bkt
Replied by bkt on topic ubuntu 10.04 Lcnc2.7 JA??
@ cncbasher ..... my hal file is not definitive ... only a develop test ... have a lot of #row ..... if you see anythingh of erroneus can you suggest me?
Please Log in or Create an account to join the conversation.
18 Nov 2015 13:58 #65427
by bkt
Replied by bkt on topic ubuntu 10.04 Lcnc2.7 JA??
@ cncbasher .. ok I purge some #...... row and some double #...limit-signal... the messages first show 8 waiting for s.joints ... now only 2 .... probabily I have other double comment pin and halui pin (# .... halui.....) ... if cancel other the messages go out I think ... is possible?
But the jog in world mode is impossible too ....
before I used LCNC 2.7.2 but it was equally impossible .... I do not understand what to do ... the only thing I can do is change the kinematics specially ..... but it seems absurd to have to change the kinematics to take in any case the signals halui ...
But the jog in world mode is impossible too ....
before I used LCNC 2.7.2 but it was equally impossible .... I do not understand what to do ... the only thing I can do is change the kinematics specially ..... but it seems absurd to have to change the kinematics to take in any case the signals halui ...
Please Log in or Create an account to join the conversation.
18 Nov 2015 14:19 #65428
by bkt
Replied by bkt on topic ubuntu 10.04 Lcnc2.7 JA??
@ ANdyPugh .... in motion not have jog.select pin .....
I summarize: i
in joint mode->
halui.mode.is-teleop off
halui.jog.0.increment -257 (go to negative)
halui.jog.selected.increment 0.01
joint.0.wheel-jog.active on
joint.0.jog.scale xxx(not remember
joint.0.jog.enable on
joint.0.jog.increment -257 ALL WORKS 1JOINT AT TIME
in world mode->
halui.mode.is-teleop on
halui.jog.0.increment -257 (go to negative)
halui.jog.selected.increment 0.01
joint.0.wheel-jog.active on
joint.0.jog.scale xxx(not remember
joint.0.jog.enable on
joint.0.jog.increment -257 AXIS/JOINT IS STOP WITH EXTERNAL MPG. With axis button all works!!
I made some mistakes in the use of commands halui ?? I forgot to set something ?? I had to set halui.jog-speed or halui.jog.0.analogue ??
I summarize: i
in joint mode->
halui.mode.is-teleop off
halui.jog.0.increment -257 (go to negative)
halui.jog.selected.increment 0.01
joint.0.wheel-jog.active on
joint.0.jog.scale xxx(not remember
joint.0.jog.enable on
joint.0.jog.increment -257 ALL WORKS 1JOINT AT TIME
in world mode->
halui.mode.is-teleop on
halui.jog.0.increment -257 (go to negative)
halui.jog.selected.increment 0.01
joint.0.wheel-jog.active on
joint.0.jog.scale xxx(not remember
joint.0.jog.enable on
joint.0.jog.increment -257 AXIS/JOINT IS STOP WITH EXTERNAL MPG. With axis button all works!!
I made some mistakes in the use of commands halui ?? I forgot to set something ?? I had to set halui.jog-speed or halui.jog.0.analogue ??
Please Log in or Create an account to join the conversation.
18 Nov 2015 14:44 #65431
by bkt
obviusly there are somethings wrong ... and some other mux to put ... but now axes move in world mode ... JA8 and Lcnc2.7.2 too....
If someone clarify me the mechanism ... thanks in advance.
regfards
Giorgio
Replied by bkt on topic ubuntu 10.04 Lcnc2.7 JA??
setp halui.jog-speed 10
# 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 <= hm2_5i25.0.7i77.0.0.input-16 #halui.joint.0.select <= hm2_5i25.0.7i77.0.0.input-16
net joint-selected-count => axis.0.jog-counts c32f.0.in
net joint-world-0 c32f.0.out => halui.jog.0.analog
#net joint-world-0 c32f.0.out => halui.jog.0.increment
net jog-incr-b => jogincr.sel0
net jog-incr-c => jogincr.sel1
net selected-jog-incr halui.jog.selected.increment <= jogincr.out
#net selected-jog-incr <= jogincr.out
#setp jogincr.debounce-time 0.200000
#setp jogincr.use-graycode False
#setp jogincr.suppress-no-input False
setp jogincr.in0 0.001000
setp jogincr.in1 0.004000
setp jogincr.in2 0.012000
obviusly there are somethings wrong ... and some other mux to put ... but now axes move in world mode ... JA8 and Lcnc2.7.2 too....
If someone clarify me the mechanism ... thanks in advance.
regfards
Giorgio
Please Log in or Create an account to join the conversation.
18 Nov 2015 15:35 #65435
by andypugh
Replied by andypugh on topic ubuntu 10.04 Lcnc2.7 JA??
Is c32f a conversion function?
So, you are converting jog-counts to float then sending that to halui.analog-jog?
That doesn't seem like the right way, at all.
The joint jogging pins are created here:
git.linuxcnc.org/gitweb?p=linuxcnc.git;a...82c603cf44aeeaecdb67
There seems to be a jog-counts and jog-enable for each joint.
Are you saying that these work in joint mode, but do not work in world mode?
So, you are converting jog-counts to float then sending that to halui.analog-jog?
That doesn't seem like the right way, at all.
The joint jogging pins are created here:
git.linuxcnc.org/gitweb?p=linuxcnc.git;a...82c603cf44aeeaecdb67
There seems to be a jog-counts and jog-enable for each joint.
Are you saying that these work in joint mode, but do not work in world mode?
The following user(s) said Thank You: bkt
Please Log in or Create an account to join the conversation.
18 Nov 2015 15:44 #65437
by bkt
Replied by bkt on topic ubuntu 10.04 Lcnc2.7 JA??
I'm saying that the last code that I put , bad and wrong , working in joint and also in world ..... but not misbehaving ..... while codes that I posted previously only worked in joint .
c32f is a function that converts to know s32 float. Yess . ..... Now I look at the link .... but I have not yet figured out how to do this well .
I have the input encoder.count , I have the chance to choose the axis , I have a chance to put the increase ....
c32f is a function that converts to know s32 float. Yess . ..... Now I look at the link .... but I have not yet figured out how to do this well .
I have the input encoder.count , I have the chance to choose the axis , I have a chance to put the increase ....
Please Log in or Create an account to join the conversation.
Time to create page: 0.189 seconds