Re: [Emc-users] Reading config values with a realtime HAL module.

2017-07-03 Thread Dave Caroline
For probe compensation batch reading would be far more useful than compiled in,
then it becomes simple to read the compensation file for any stylus
you change too.

Dave Caroline

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Sluggish Intel Atom DN2800MT motherboard

2017-07-03 Thread Jon Elson

On 07/03/2017 03:38 PM, tom-...@bgp.nu wrote:

My new-old Intel DN2800MT motherboard is a bit sluggish on my Emco.  I helped 
it a bit by disabling Hyperthreading in the bios and setting ISOLCPUS=1 in 
Grub.  But I have a vague recollection of needing to do something related to 
the graphics driver for the board (board has crappy built-in intel graphics 
driver IIRC).  The same board is running on two other systems I have and is not 
as slow as this one.  My google incantations are apparently off today, I 
haven't found any references to Debian and DN2800MT graphics or anything 
helpful.


Some of the Intel graphics chips are not well-supported by 
Linux. The i810 chip is pretty legendary, and some of the 
later Intel chips suffered from the same problems.  On a 
Dell desktop box, I gave up and added an nVidia card and it 
solved problems with rare but frustrating graphics crashes.


Don't look for the motherboard, look for the specific 
graphics chip, with lspci -v
You may get more info that way.  You can try using the 
default vga driver, and if it is too slow, then try some of 
the other drivers that can handle the chip.


Jon

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Soft limits with non-cartesian kinematics

2017-07-03 Thread Jon Elson

On 07/03/2017 03:02 PM, Les Newell wrote:
Aw hell, I've done it again. My fault. I didn't realize 
there were two sets of limits. My config was automatically 
converted to the new format and I didn't notice limits 
appear in two places now. When I changed my limits I ended 
up only changing the joint limits, not the axis limits.


I've been doing a good job of making myself look dumb 
these last few days.


Go easy on yourself!  EMC was a fairly complicated piece of 
software when we took it over from NIST.  It has grown quite 
a bit in complexity since then.  Many deficiencies or 
limitations have been corrected by very sharp programming 
since then (HAL, Joints-axis and the new trajectory planner, 
for instance) but these have increased complexity.  I was 
only competent in a small area of the code back then (mostly 
servo region) and work hard to just keep aware of what is new.


As for looking dumb, I have totally given up!  I KNOW that 
what I don't know is out there for everybody to see, but I 
still get great use out of LinuxCNC, and HATS OFF to the 
guys who really know it so well!


Jon

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] 7i43 with 7i42TA

2017-07-03 Thread Peter C. Wallace

On Mon, 3 Jul 2017, Condit Alan via Emc-users wrote:


Date: Mon, 3 Jul 2017 14:01:23 -0700
From: Condit Alan via Emc-users 
To: "Emc-users@lists.sourceforge.net" 
Cc: Condit Alan 
Subject: [Emc-users] 7i43 with 7i42TA

I am using (2) 7i42TA boards as breakout boards to the 7i43. I have the 
estop-ext connected to P3-47(GPIO-47). I have one side of my estop switch 
connected to ground and the other side connected to P3-(TB2-23) (which should 
be P3-47 according to my reading). So, do I need to supply a pull-up for input 
pin?

I have attached my ini file and hal file following.

Thanks,
Alan


No, the 7I43 provides pullups so all input pins should read high if 
unconnected (and read low if grounded)


Make sure the inputs are grounded to the 7I43 ground and not any other ground
(not frame ground etc)



INI start
# Generated by PNCconf at Mon Mar  6 20:42:36 2017
# If you make changes to this file, they will be
# overwritten when you run PNCconf again

[EMC]
MACHINE = myCNCLathe
DEBUG = 0

[DISPLAY]
DISPLAY = axis
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 2.00
MAX_SPINDLE_OVERRIDE = 1.00
MIN_SPINDLE_OVERRIDE = 0.50
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/acondit/linuxcnc/nc_files
PYVCP = pyvcp-panel.xml
INCREMENTS = .1in .05in .01in .005in .001in .0005in .0001in
LATHE = 1
POSITION_FEEDBACK = ACTUAL
DEFAULT_LINEAR_VELOCITY = 0.25
MAX_LINEAR_VELOCITY = 1.67
MIN_LINEAR_VELOCITY = 0.01
DEFAULT_ANGULAR_VELOCITY = 0.25
MAX_ANGULAR_VELOCITY = 1.00
MIN_ANGULAR_VELOCITY = 0.01
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 = 100

[HOSTMOT2]
#  This is for info only 
# DRIVER0=hm2_7i43
# BOARD0=7i43

[HAL]
HALUI = halui
HALFILE = myCNCLathe.hal
HALFILE = custom.hal
POSTGUI_HALFILE = postgui_call_list.hal
SHUTDOWN = shutdown.hal

[HALUI]

[TRAJ]
AXES = 3
COORDINATES = X Z
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 0.30
MAX_LINEAR_VELOCITY = 3.00

[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl

#
# Axis X
#
[AXIS_0]
TYPE = LINEAR
HOME = 0.0
FERROR = 0.5
MIN_FERROR = 0.05
MAX_VELOCITY = 1.0
MAX_ACCELERATION = 30.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 = 1.25
STEPGEN_MAXACCEL = 37.50
P = 50.0
I = 0.0
D = 0.0
FF0 = 0.0
FF1 = 1.0
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 1.25
# these are in nanoseconds
DIRSETUP   = 200
DIRHOLD= 200
STEPLEN= 1000
STEPSPACE  = 2000
STEP_SCALE = 4.0
MIN_LIMIT = -0.001
MAX_LIMIT = 4.5
HOME_OFFSET = 0.00
HOME_SEARCH_VEL = -0.05
HOME_LATCH_VEL = -0.016667
HOME_FINAL_VEL = 0.00
HOME_USE_INDEX = YES
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 1

#
# Axis Z
#
[AXIS_2]
TYPE = LINEAR
HOME = 0.0
FERROR = 0.5
MIN_FERROR = 0.05
MAX_VELOCITY = 3.0
MAX_ACCELERATION = 30.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 = 3.75
STEPGEN_MAXACCEL = 37.50
P = 50.0
I = 0.0
D = 0.0
FF0 = 0.0
FF1 = 1.0
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 3.75
# these are in nanoseconds
DIRSETUP   = 200
DIRHOLD= 200
STEPLEN= 1000
STEPSPACE  = 2000
STEP_SCALE = 1.0
MIN_LIMIT = -0.001
MAX_LIMIT = 19.0
HOME_OFFSET = 0.00
HOME_SEARCH_VEL = -0.05
HOME_LATCH_VEL = -0.016667
HOME_FINAL_VEL = 0.00
HOME_USE_INDEX = YES
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 0

#
# Spindle
#
[SPINDLE_9]
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
ENCODER_SCALE = 400.0
OUTPUT_SCALE = 1
OUTPUT_MIN_LIMIT = 0
OUTPUT_MAX_LIMIT = 1

INI end

HAL start
# Generated by PNCconf at Mon Mar  6 20:42:36 2017
# 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_7i43 ioaddr=0x378 ioaddr_hi=0 epp_wide=1 
config="firmware=hm2/7i43-2/SVST4_4.BIT num_encoders=4 num_pwmgens=4 
num_stepgens=4"
setphm2_7i43.0.pwmgen.pwm_frequency 2
setphm2_7i43.0.pwmgen.pdm_frequency 600
setphm2_7i43.0.watchdog.timeout_ns 500
loadrt pid names=pid.x,pid.z,pid.s
loadrt abs names=abs.spindle
loadrt lowpass names=lowpass.spindle
loadrt scale 

[Emc-users] 7i43 with 7i42TA

2017-07-03 Thread Condit Alan via Emc-users
I am using (2) 7i42TA boards as breakout boards to the 7i43. I have the 
estop-ext connected to P3-47(GPIO-47). I have one side of my estop switch 
connected to ground and the other side connected to P3-(TB2-23) (which should 
be P3-47 according to my reading). So, do I need to supply a pull-up for input 
pin? 

I have attached my ini file and hal file following.

Thanks,
Alan

INI start
# Generated by PNCconf at Mon Mar  6 20:42:36 2017
# If you make changes to this file, they will be
# overwritten when you run PNCconf again

[EMC]
MACHINE = myCNCLathe
DEBUG = 0

[DISPLAY]
DISPLAY = axis
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 2.00
MAX_SPINDLE_OVERRIDE = 1.00
MIN_SPINDLE_OVERRIDE = 0.50
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/acondit/linuxcnc/nc_files
PYVCP = pyvcp-panel.xml
INCREMENTS = .1in .05in .01in .005in .001in .0005in .0001in
LATHE = 1
POSITION_FEEDBACK = ACTUAL
DEFAULT_LINEAR_VELOCITY = 0.25
MAX_LINEAR_VELOCITY = 1.67
MIN_LINEAR_VELOCITY = 0.01
DEFAULT_ANGULAR_VELOCITY = 0.25
MAX_ANGULAR_VELOCITY = 1.00
MIN_ANGULAR_VELOCITY = 0.01
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 = 100

[HOSTMOT2]
#  This is for info only 
# DRIVER0=hm2_7i43
# BOARD0=7i43

[HAL]
HALUI = halui
HALFILE = myCNCLathe.hal
HALFILE = custom.hal
POSTGUI_HALFILE = postgui_call_list.hal
SHUTDOWN = shutdown.hal

[HALUI]

[TRAJ]
AXES = 3
COORDINATES = X Z
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 0.30
MAX_LINEAR_VELOCITY = 3.00

[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl

#
# Axis X
#
[AXIS_0]
TYPE = LINEAR
HOME = 0.0
FERROR = 0.5
MIN_FERROR = 0.05
MAX_VELOCITY = 1.0
MAX_ACCELERATION = 30.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 = 1.25
STEPGEN_MAXACCEL = 37.50
P = 50.0
I = 0.0
D = 0.0
FF0 = 0.0
FF1 = 1.0
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 1.25
# these are in nanoseconds
DIRSETUP   = 200
DIRHOLD= 200
STEPLEN= 1000
STEPSPACE  = 2000
STEP_SCALE = 4.0
MIN_LIMIT = -0.001
MAX_LIMIT = 4.5
HOME_OFFSET = 0.00
HOME_SEARCH_VEL = -0.05
HOME_LATCH_VEL = -0.016667
HOME_FINAL_VEL = 0.00
HOME_USE_INDEX = YES
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 1

#
# Axis Z
#
[AXIS_2]
TYPE = LINEAR
HOME = 0.0
FERROR = 0.5
MIN_FERROR = 0.05
MAX_VELOCITY = 3.0
MAX_ACCELERATION = 30.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 = 3.75
STEPGEN_MAXACCEL = 37.50
P = 50.0
I = 0.0
D = 0.0
FF0 = 0.0
FF1 = 1.0
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 3.75
# these are in nanoseconds
DIRSETUP   = 200
DIRHOLD= 200
STEPLEN= 1000
STEPSPACE  = 2000
STEP_SCALE = 1.0
MIN_LIMIT = -0.001
MAX_LIMIT = 19.0
HOME_OFFSET = 0.00
HOME_SEARCH_VEL = -0.05
HOME_LATCH_VEL = -0.016667
HOME_FINAL_VEL = 0.00
HOME_USE_INDEX = YES
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 0

#
# Spindle 
#
[SPINDLE_9]
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
ENCODER_SCALE = 400.0
OUTPUT_SCALE = 1
OUTPUT_MIN_LIMIT = 0
OUTPUT_MAX_LIMIT = 1

INI end

HAL start
# Generated by PNCconf at Mon Mar  6 20:42:36 2017
# 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_7i43 ioaddr=0x378 ioaddr_hi=0 epp_wide=1 
config="firmware=hm2/7i43-2/SVST4_4.BIT num_encoders=4 num_pwmgens=4 
num_stepgens=4" 
setphm2_7i43.0.pwmgen.pwm_frequency 2
setphm2_7i43.0.pwmgen.pdm_frequency 600
setphm2_7i43.0.watchdog.timeout_ns 500
loadrt pid names=pid.x,pid.z,pid.s
loadrt abs names=abs.spindle
loadrt lowpass names=lowpass.spindle
loadrt scale names=scale.spindle,scale.gear
loadrt mux16 names=ratio_select

addf hm2_7i43.0.read  servo-thread
addf motion-command-handler   servo-thread
addf motion-controllerservo-thread
addf pid.x.do-pid-calcs   servo-thread
addf pid.z.do-pid-calcs   servo-thread
addf pid.s.do-pid-calcs   servo-thread
addf ratio_select servo-thread
addf scale.spindleservo-thread
addf scale.gear   servo-thread
addf abs.spindle  servo-thread
addf lowpass.spindle  servo-thread
addf 

[Emc-users] 7i43 with 7i42TA

2017-07-03 Thread Condit Alan via Emc-users
I am using (2) 7i42TA boards as breakout boards to the 7i43. I have the 
estop-ext connected to P3-47(GPIO-47). I have one side of my estop switch 
connected to ground and the other side connected to P3-(TB2-23) (which should 
be P3-47 according to my reading). So, do I need to supply a pull-up for input 
pin? 

I have attached my ini file and hal file following.

Thanks,
Alan

INI start
# Generated by PNCconf at Mon Mar  6 20:42:36 2017
# If you make changes to this file, they will be
# overwritten when you run PNCconf again

[EMC]
MACHINE = myCNCLathe
DEBUG = 0

[DISPLAY]
DISPLAY = axis
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 2.00
MAX_SPINDLE_OVERRIDE = 1.00
MIN_SPINDLE_OVERRIDE = 0.50
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/acondit/linuxcnc/nc_files
PYVCP = pyvcp-panel.xml
INCREMENTS = .1in .05in .01in .005in .001in .0005in .0001in
LATHE = 1
POSITION_FEEDBACK = ACTUAL
DEFAULT_LINEAR_VELOCITY = 0.25
MAX_LINEAR_VELOCITY = 1.67
MIN_LINEAR_VELOCITY = 0.01
DEFAULT_ANGULAR_VELOCITY = 0.25
MAX_ANGULAR_VELOCITY = 1.00
MIN_ANGULAR_VELOCITY = 0.01
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 = 100

[HOSTMOT2]
#  This is for info only 
# DRIVER0=hm2_7i43
# BOARD0=7i43

[HAL]
HALUI = halui
HALFILE = myCNCLathe.hal
HALFILE = custom.hal
POSTGUI_HALFILE = postgui_call_list.hal
SHUTDOWN = shutdown.hal

[HALUI]

[TRAJ]
AXES = 3
COORDINATES = X Z
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 0.30
MAX_LINEAR_VELOCITY = 3.00

[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl

#
# Axis X
#
[AXIS_0]
TYPE = LINEAR
HOME = 0.0
FERROR = 0.5
MIN_FERROR = 0.05
MAX_VELOCITY = 1.0
MAX_ACCELERATION = 30.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 = 1.25
STEPGEN_MAXACCEL = 37.50
P = 50.0
I = 0.0
D = 0.0
FF0 = 0.0
FF1 = 1.0
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 1.25
# these are in nanoseconds
DIRSETUP   = 200
DIRHOLD= 200
STEPLEN= 1000
STEPSPACE  = 2000
STEP_SCALE = 4.0
MIN_LIMIT = -0.001
MAX_LIMIT = 4.5
HOME_OFFSET = 0.00
HOME_SEARCH_VEL = -0.05
HOME_LATCH_VEL = -0.016667
HOME_FINAL_VEL = 0.00
HOME_USE_INDEX = YES
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 1

#
# Axis Z
#
[AXIS_2]
TYPE = LINEAR
HOME = 0.0
FERROR = 0.5
MIN_FERROR = 0.05
MAX_VELOCITY = 3.0
MAX_ACCELERATION = 30.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 = 3.75
STEPGEN_MAXACCEL = 37.50
P = 50.0
I = 0.0
D = 0.0
FF0 = 0.0
FF1 = 1.0
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 3.75
# these are in nanoseconds
DIRSETUP   = 200
DIRHOLD= 200
STEPLEN= 1000
STEPSPACE  = 2000
STEP_SCALE = 1.0
MIN_LIMIT = -0.001
MAX_LIMIT = 19.0
HOME_OFFSET = 0.00
HOME_SEARCH_VEL = -0.05
HOME_LATCH_VEL = -0.016667
HOME_FINAL_VEL = 0.00
HOME_USE_INDEX = YES
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 0

#
# Spindle 
#
[SPINDLE_9]
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
ENCODER_SCALE = 400.0
OUTPUT_SCALE = 1
OUTPUT_MIN_LIMIT = 0
OUTPUT_MAX_LIMIT = 1

INI end

HAL start
# Generated by PNCconf at Mon Mar  6 20:42:36 2017
# 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_7i43 ioaddr=0x378 ioaddr_hi=0 epp_wide=1 
config="firmware=hm2/7i43-2/SVST4_4.BIT num_encoders=4 num_pwmgens=4 
num_stepgens=4" 
setphm2_7i43.0.pwmgen.pwm_frequency 2
setphm2_7i43.0.pwmgen.pdm_frequency 600
setphm2_7i43.0.watchdog.timeout_ns 500
loadrt pid names=pid.x,pid.z,pid.s
loadrt abs names=abs.spindle
loadrt lowpass names=lowpass.spindle
loadrt scale names=scale.spindle,scale.gear
loadrt mux16 names=ratio_select

addf hm2_7i43.0.read  servo-thread
addf motion-command-handler   servo-thread
addf motion-controllerservo-thread
addf pid.x.do-pid-calcs   servo-thread
addf pid.z.do-pid-calcs   servo-thread
addf pid.s.do-pid-calcs   servo-thread
addf ratio_select servo-thread
addf scale.spindleservo-thread
addf scale.gear   servo-thread
addf abs.spindle  servo-thread
addf lowpass.spindle  servo-thread
addf 

[Emc-users] Sluggish Intel Atom DN2800MT motherboard

2017-07-03 Thread tom-emc
My new-old Intel DN2800MT motherboard is a bit sluggish on my Emco.  I helped 
it a bit by disabling Hyperthreading in the bios and setting ISOLCPUS=1 in 
Grub.  But I have a vague recollection of needing to do something related to 
the graphics driver for the board (board has crappy built-in intel graphics 
driver IIRC).  The same board is running on two other systems I have and is not 
as slow as this one.  My google incantations are apparently off today, I 
haven't found any references to Debian and DN2800MT graphics or anything 
helpful.

Does anyone happen to know what I am talking about, or have suggestions for 
what I might look at to tweak performance a bit on it?

-Tom


--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Soft limits with non-cartesian kinematics

2017-07-03 Thread Les Newell
Aw hell, I've done it again. My fault. I didn't realize there were two 
sets of limits. My config was automatically converted to the new format 
and I didn't notice limits appear in two places now. When I changed my 
limits I ended up only changing the joint limits, not the axis limits.


I've been doing a good job of making myself look dumb these last few days.

Les

On 03/07/2017 20:32, Andrew wrote:

I definitely remember soft world limits on my hexapod in master branch.
So I'm surprised why you don't observe that.
It should obey the world limits defined in AXIS_ sections.

WBR,
Andrew



--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Soft limits with non-cartesian kinematics

2017-07-03 Thread Andrew
2017-07-03 22:22 GMT+03:00 Les Newell:

> For example take a hexapod. Depending on the Z position the head can try
> to move way outside the available machining envelope without hitting soft
> or hard limits on the joints. You could quite easily end up over stressing
> the pivot points or hitting the structure of the machine. If you can
> specify soft limits in world space (i.e stay in this XYZ box) this is less
> likely to happen


I definitely remember soft world limits on my hexapod in master branch.
So I'm surprised why you don't observe that.
It should obey the world limits defined in AXIS_ sections.

WBR,
Andrew
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Soft limits with non-cartesian kinematics

2017-07-03 Thread Les Newell

Hi Jeff,

Sorry, I probably didn't phrase it right. I understand that deceleration 
on soft limits for joints on a non cartesian machine is a computational 
nightmare. What I am after is to specify soft limits in world space, 
just like a cartesian machine. I am interested in it for my lathe but it 
has applications for many machine types. For example take a hexapod. 
Depending on the Z position the head can try to move way outside the 
available machining envelope without hitting soft or hard limits on the 
joints. You could quite easily end up over stressing the pivot points or 
hitting the structure of the machine. If you can specify soft limits in 
world space (i.e stay in this XYZ box) this is less likely to happen. 
This code is already in place for use on cartesian machines but it is 
disabled for non-cartesian machines.


IMO soft limits on joints aren't nearly as useful. All they do is 
replace hard switches. Again IMO you should have hard limit switches for 
anything other than a very small machine so no matter what happens you 
won't run into the end stops.


Les

On 03/07/2017 14:52, Jeff Epler wrote:
No, it's not currently possible.  It would be a welcome topic for 
improvement.


Right now, kinematics is confined to the realtime trajectory planner, 
so nothing is known about it at the time soft limits are being 
enforced in task.


A naive approach would be to put a copy of kinematics into task; for 
each motion that task considers for soft limits, divide it up "finely" 
and make sure each of the points along the motion, it has a kinematics 
solution.  However, this is probably going to be computationally 
intensive, since you're doing the work of kinematics twice.


I think a plausible way to do this is to allow definition of arbitrary 
working volumes using a standard format like .stl. Then, task would 
have to answer a much simpler problem: whether any part of the motion 
is outside this defined volume.  However, it might be wise to use an 
existing library  to perform this test, rather than writing an 
original implementation in LinuxCNC.  For example, CGAL's 
Side_of_triangle_mesh can tell you whether a particular point is on 
the interior or exterior of the volume.


Of course, while thinking about this it will also be a good time to do 
something about the related issue which can be seen on trivkins 
machines: some arcs that go outside of soft limits aren't detected by 
task.  I think this is because only the two endpoints are tested 
(which works fine with lines and convex working volumes, but doesn't 
work with circular motion or non-convex working volumes):

   https://github.com/LinuxCNC/linuxcnc/issues/80
For arcs which come near the edge (where the AABB of the arc is not 
entirely inside the working volume), I suspect a strategy of dividing 
up the arc will be neessary to fix this for the complex working volume 
case.  And remember, "arcs" now includes multi-turn helices which can 
additionally be rotated.  Oh yeah, and there are NURBs too, even if 
nobody uses them.



Jeff

-- 


Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users




--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Reading config values with a realtime HAL module.

2017-07-03 Thread andy pugh
On 3 July 2017 at 13:59, Les Newell  wrote:
>
> On my lathe I will probably keep with using kinematics as it is then before
> backlash compensation rather than after.

It seems likely to be a very simple kinematics module, and so will
probably compile easily with halcompile.
At that point it might be pragmatic to simply store the offset data
hard-coded into the kins module.

-- 
atp
"A motorcycle is a bicycle with a pandemonium attachment and is
designed for the especial use of mechanical geniuses, daredevils and
lunatics."
— George Fitch, Atlanta Constitution Newspaper, 1916

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Soft limits with non-cartesian kinematics

2017-07-03 Thread Gene Heskett
On Monday 03 July 2017 09:52:30 Jeff Epler wrote:

> No, it's not currently possible.  It would be a welcome topic for
> improvement.
>
> Right now, kinematics is confined to the realtime trajectory planner,
> so nothing is known about it at the time soft limits are being
> enforced in task.
>
> A naive approach would be to put a copy of kinematics into task; for
> each motion that task considers for soft limits, divide it up "finely"
> and make sure each of the points along the motion, it has a kinematics
> solution.  However, this is probably going to be computationally
> intensive, since you're doing the work of kinematics twice.
>
> I think a plausible way to do this is to allow definition of arbitrary
> working volumes using a standard format like .stl.  Then, task would
> have to answer a much simpler problem: whether any part of the motion
> is outside this defined volume.  However, it might be wise to use an
> existing library  to perform this test, rather than writing an
> original implementation in LinuxCNC.  For example, CGAL's
> Side_of_triangle_mesh can tell you whether a particular point is on
> the interior or exterior of the volume.
>
> Of course, while thinking about this it will also be a good time to do
> something about the related issue which can be seen on trivkins
> machines: some arcs that go outside of soft limits aren't detected by
> task.  I think this is because only the two endpoints are tested
> (which works fine with lines and convex working volumes, but doesn't
> work with circular motion or non-convex working volumes):
> https://github.com/LinuxCNC/linuxcnc/issues/80
> For arcs which come near the edge (where the AABB of the arc is not
> entirely inside the working volume), I suspect a strategy of dividing
> up the arc will be neessary to fix this for the complex working volume
> case.  And remember, "arcs" now includes multi-turn helices which can
> additionally be rotated.  Oh yeah, and there are NURBs too, even if
> nobody uses them.
>
I am going to try Jeff, if I can figure out how to actually use them. The 
manpage is sorely lacking in an explanation of how it keeps track 
of "points" when you feed it a more than 2 sets of points. I have an SS 
rifle barrel that needs to lose some weight, but I don't envision doing 
those long sweeping curves using just arcs with 20 yard radii. NURBS 
looks like it would blend them if I understand it correctly, but I 
probably don't. :( If, after the next master update, the docs for G5 and 
G5.x were more explanatory than they are now, I'd be very pleased. Like 
what does xy, ij and pq actually control when the 2nd, 3rd, 4th etc sets 
of data are fed to G5 and family. What are the interactions?  And how 
can I make that work on a lathe, where G18 is probably in effect.

If I could understand that, the special config using y connected to the z 
motor could be hacked up. That way it could run in G17 mode maybe?
Confusing, but sortable I believe.

> Jeff
>
> --
> Check out the vibrant tech community on one of the world's
> most engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> ___
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users


Cheers, Gene Heskett
-- 
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
Genes Web page 

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Backlash comp, does it follow sign of encoder (input) scale?

2017-07-03 Thread Mark

On 07/03/2017 09:48 AM, Les Newell wrote:

On 03/07/2017 12:57, Mark wrote:


Two axes, X and Z.  I've got the Z set up kind of opposite the normal 
way, and use the top of the strip being cut offset from the table top 
as the point where the cutter depth is computed from. It was a bit of 
a pain in the arse to get it set that way and I'd rather not have to 
reinvent it again.  ;-)


Mark


I see. So basically you have the axes swapped compared to how they 
would be in a lathe.


Les


It's setup was originally based on a mill.  Z goes up and down, X 
traverses the length of the table.


Mark

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Soft limits with non-cartesian kinematics

2017-07-03 Thread Jeff Epler
No, it's not currently possible.  It would be a welcome topic for 
improvement.


Right now, kinematics is confined to the realtime trajectory planner, so 
nothing is known about it at the time soft limits are being enforced in 
task.


A naive approach would be to put a copy of kinematics into task; for 
each motion that task considers for soft limits, divide it up "finely" 
and make sure each of the points along the motion, it has a kinematics 
solution.  However, this is probably going to be computationally 
intensive, since you're doing the work of kinematics twice.


I think a plausible way to do this is to allow definition of arbitrary 
working volumes using a standard format like .stl.  Then, task would 
have to answer a much simpler problem: whether any part of the motion is 
outside this defined volume.  However, it might be wise to use an 
existing library  to perform this test, rather than writing an original 
implementation in LinuxCNC.  For example, CGAL's Side_of_triangle_mesh 
can tell you whether a particular point is on the interior or exterior 
of the volume.


Of course, while thinking about this it will also be a good time to do 
something about the related issue which can be seen on trivkins 
machines: some arcs that go outside of soft limits aren't detected by 
task.  I think this is because only the two endpoints are tested (which 
works fine with lines and convex working volumes, but doesn't work with 
circular motion or non-convex working volumes):

   https://github.com/LinuxCNC/linuxcnc/issues/80
For arcs which come near the edge (where the AABB of the arc is not 
entirely inside the working volume), I suspect a strategy of dividing up 
the arc will be neessary to fix this for the complex working volume 
case.  And remember, "arcs" now includes multi-turn helices which can 
additionally be rotated.  Oh yeah, and there are NURBs too, even if 
nobody uses them.



Jeff

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Backlash comp, does it follow sign of encoder (input) scale?

2017-07-03 Thread Les Newell

On 03/07/2017 12:57, Mark wrote:


Two axes, X and Z.  I've got the Z set up kind of opposite the normal 
way, and use the top of the strip being cut offset from the table top 
as the point where the cutter depth is computed from. It was a bit of 
a pain in the arse to get it set that way and I'd rather not have to 
reinvent it again.  ;-)


Mark


I see. So basically you have the axes swapped compared to how they would 
be in a lathe.


Les

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Reading config values with a realtime HAL module.

2017-07-03 Thread Les Newell

On 03/07/2017 13:15, andy pugh wrote:

There is a HAL module for that:
http://linuxcnc.org/docs/devel/html/man/man9/offset.9.html


So I see. I missed John's original link to the offset module. Doing 
something similar to  that worked on my lathe but I did have some homing 
issues. That was on a very old version of LinuxCNC so homing may handle 
it better now.


On my lathe I will probably keep with using kinematics as it is then 
before backlash compensation rather than after.


Les

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Soft limits with non-cartesian kinematics

2017-07-03 Thread Les Newell

I'm running Git master at the moment.

les

On 03/07/2017 12:45, Andrew wrote:

What is your LinuxCNC version?

2017-07-03 13:34 GMT+03:00 Les Newell:


Is there an option to make soft limits to work in world space on a
non-cartesian machine? I notice now I am using my kinematics module soft
limits apply to joints rather than axes. In cartesian mode the machine
comes to a graceful halt if you try jogging into a limit. In non-cartesian
mode the machine comes to an instant halt which can be problematic.


--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users




--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] 7i43 load error LinuxCNC 2.7.4

2017-07-03 Thread andy pugh
On 2 July 2017 at 23:08, Condit Alan via Emc-users
 wrote:
> However, I can’t get the “Axis” power switch to go “on” when I click it and I 
> haven’t figured out whether I have the estop switch wired correctly to the 
> 7i43 board via the 7i42TA. I can’t really tell whether the “power switch” 
> problem is related to estop or some other kerfuffle.

It is probably an issue with the HAL pins iocontrol.0.emc-enable-in or
motion.enable. How are they connected in HAL (if at all)

-- 
atp
"A motorcycle is a bicycle with a pandemonium attachment and is
designed for the especial use of mechanical geniuses, daredevils and
lunatics."
— George Fitch, Atlanta Constitution Newspaper, 1916

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Reading config values with a realtime HAL module.

2017-07-03 Thread andy pugh
On 3 July 2017 at 11:16, Les Newell  wrote:
> You need to go both ways. You need to offset the command and do a reverse
> offset on the feedback.

There is a HAL module for that:
http://linuxcnc.org/docs/devel/html/man/man9/offset.9.html

Or there is an exerimental branch with the option built-in
https://github.com/LinuxCNC/linuxcnc/commit/08ca67aa0efb5c32b2f17032810d406face2b7c3

-- 
atp
"A motorcycle is a bicycle with a pandemonium attachment and is
designed for the especial use of mechanical geniuses, daredevils and
lunatics."
— George Fitch, Atlanta Constitution Newspaper, 1916

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Backlash comp, does it follow sign of encoder (input) scale?

2017-07-03 Thread Mark

On 07/03/2017 06:16 AM, Les Newell wrote:

On 02/07/2017 14:39, Mark wrote:
I've got a bit of a weird setup in my beveler.  Not really sure if 
replacing the current mode of operations to run a different set of 
kins will work without having to redo all the other stuff that runs 
currently.



How many axes are you using?

Les


Les,

Two axes, X and Z.  I've got the Z set up kind of opposite the normal 
way, and use the top of the strip being cut offset from the table top as 
the point where the cutter depth is computed from.  It was a bit of a 
pain in the arse to get it set that way and I'd rather not have to 
reinvent it again.  ;-)


Mark

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Soft limits with non-cartesian kinematics

2017-07-03 Thread Andrew
What is your LinuxCNC version?

2017-07-03 13:34 GMT+03:00 Les Newell:

> Is there an option to make soft limits to work in world space on a
> non-cartesian machine? I notice now I am using my kinematics module soft
> limits apply to joints rather than axes. In cartesian mode the machine
> comes to a graceful halt if you try jogging into a limit. In non-cartesian
> mode the machine comes to an instant halt which can be problematic.
>
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


[Emc-users] Soft limits with non-cartesian kinematics

2017-07-03 Thread Les Newell
Is there an option to make soft limits to work in world space on a 
non-cartesian machine? I notice now I am using my kinematics module soft 
limits apply to joints rather than axes. In cartesian mode the machine 
comes to a graceful halt if you try jogging into a limit. In 
non-cartesian mode the machine comes to an instant halt which can be 
problematic.


Les

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Reading config values with a realtime HAL module.

2017-07-03 Thread Les Newell

Hi Andy,


Putting the Z axis position into the input of "lincurve" could give
you an output to apply as an offset to the X position command.


You need to go both ways. You need to offset the command and do a 
reverse offset on the feedback. Yes, I could use the generated offset 
then add extra modules to do the addition and subtraction but it all 
gets a bit messy. That is pretty much how I used to do it, though I 
stuck everything in one module. However this is exactly what kinematics 
are made for so it makes sense to use them.


Les

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Backlash comp, does it follow sign of encoder (input) scale?

2017-07-03 Thread Les Newell

On 02/07/2017 14:39, Mark wrote:
I've got a bit of a weird setup in my beveler.  Not really sure if 
replacing the current mode of operations to run a different set of 
kins will work without having to redo all the other stuff that runs 
currently.



How many axes are you using?

Les


--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] G0 vs G1

2017-07-03 Thread andy pugh
On 3 July 2017 at 00:56,   wrote:
>
> I have been playing with G41, G42 trying to understand what the $%%@ cutter 
> compensation means on a lathe.

It attempts to keep the insert tip tangential to the programmed path.
(You can see this quite nicely in the sim, if you make the tool radius
nice and big).
Tip radius is not important (typically) for straight X or Z moves, bit
becomes important for tapered cuts, which is presumably why the
routine uses it.

Be aware that you absolutely need the correct tool orientation
programmed in the tool table for the results to be correct. Also be
aware that LinuxCNC assumes a front-toolpost lathe where orientations
are concerned. You need to miror the diagram in the docs for a
back-toolpost.

-- 
atp
"A motorcycle is a bicycle with a pandemonium attachment and is
designed for the especial use of mechanical geniuses, daredevils and
lunatics."
— George Fitch, Atlanta Constitution Newspaper, 1916

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users