Another "homing thread"

More
09 Jan 2012 04:02 - 09 Jan 2012 04:15 #16461 by alexr
Hi

I have setup my limit switches on my mill.

I have followed the intergrators manual to the letter but i need clarification on

4.3.3.3 HOME_FINAL_VEL
It specifies the speed that EMC uses when it makes its move from HOME_OFFSET to the HOME
position. If the HOME_FINAL_VEL is missing from the ini file, then the maximum joint speed is
used to make this move. The value must a positive number.

here is my *.INI

[EMC]
MACHINE = V90
DEBUG = 0

[DISPLAY]
DISPLAY = axis
EDITOR = gedit
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 1.2
INTRO_GRAPHIC = emc2.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/alex/emc2/nc_files
INCREMENTS = .1in .05in .01in .005in .001in .0005in .0001in
PYVCP = custompanel.xml

[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 = emc.var

[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
BASE_PERIOD = 100000
SERVO_PERIOD = 1000000

[HAL]
HALFILE = V90.hal
HALFILE = custom.hal
POSTGUI_HALFILE = custom_postgui.hal

[TRAJ]
AXES = 3
COORDINATES = X Y Z
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 0.42
MAX_LINEAR_VELOCITY = 4.20

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

[AXIS_0]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 4.2
MAX_ACCELERATION = 24.0
STEPGEN_MAXACCEL = 30.0
SCALE = 1000.0
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -17.0
MAX_LIMIT = 17.0
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = 0.500000
HOME_LATCH_VEL = -0.500000
HOME_IGNORE_LIMITS = YES

[AXIS_1]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 3.8
MAX_ACCELERATION = 24.0
STEPGEN_MAXACCEL = 30.0
SCALE = 1000.0
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -12.0
MAX_LIMIT = 12.0
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = 0.500000
HOME_LATCH_VEL = -0.500000
HOME_IGNORE_LIMITS = YES

[AXIS_2]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 0.4
MAX_ACCELERATION = 24.0
STEPGEN_MAXACCEL = 30.0
SCALE = 2400.0
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -4.0
MAX_LIMIT = 4.0
HOME_OFFSET = 0.0

******************************************************************************************************

so where do i place?

HOME_FINAL_VEL = insert speed here

In case your wondering this is what happens. The axes do every thing correctly as per page 25 but then all hell breaks loose because the motors stall and squeel from trying to accelerate too fast to get home.

I assume "maximum joint speed" is the MAX_ACCELERATION = declaration

If you can show me an example or know a better way please share i am all ears :-D

thanks for reading
Last edit: 09 Jan 2012 04:15 by alexr. Reason: copy error

Please Log in or Create an account to join the conversation.

More
09 Jan 2012 08:40 - 09 Jan 2012 08:44 #16465 by Rick G
Replied by Rick G on topic Re:Another "homing thread"

so where do i place?

HOME_FINAL_VEL = insert speed here


Just add it to each Axis, try under HOME_IGNORE_LIMITS = YES

.......... snip
HOME_IGNORE_LIMITS = YES
HOME_FINAL_VEL = 0.100000
........

For the X axis, or whatever speed you need to use, slower is probably better.

In case your wondering this is what happens. The axes do every thing correctly as per page 25 but then all hell breaks loose because the motors stall and squeel from trying to accelerate too fast to get home.


Sounds like you need to reduce your acceleration and or velocity, that should never happen anyway.

Rick G
Last edit: 09 Jan 2012 08:44 by Rick G.

Please Log in or Create an account to join the conversation.

More
09 Jan 2012 11:27 #16471 by alexr
Replied by alexr on topic Re:Another "homing thread"
I agree this shouldnt happen!

My mill runs on all the setting provided and configured in stepconf;

but for some reason its all too fast for homing and its not easily configurable in my copy of emc2 stepconf.

I am getting really frustrated with this and i am about to see if point and click PNCCONF on page 28 of the getting started guide can help me.

I mean seriously....

HOME LOCATION 0.0
HOME SWITCH LOCATION 0.0

ZERO POINT ZERO WHAT!!!? thousands of an inch? inches, feet, miles?
compared to where and what co-ordinate system? why am i asking this here? because its not obvious and i dont know!!!

HOME SEARCH VELOCITY 0.05???????!!!! REVOLUTION / INCH or INCH/SECOND OR INCH/SECOND SQUARED?

Emc2 misses critical detail and description! why isnt this in the manuals? why isnt this easy to configure??

Please Log in or Create an account to join the conversation.

More
09 Jan 2012 11:53 #16473 by Rick G
Replied by Rick G on topic Re:Another "homing thread"
From...
EMC V2.4 Integrator Manual Chapter 4. INI File
4.2.9.1 Homing
These parameters are Homing related, for a better explanation read the Homing Section (4.3).
HOME = 0.0 The position that the joint will go to upon completion of the homing sequence.
HOME_OFFSET = 0.0 The axis position of the home switch or index pulse, in machine units.
HOME_SEARCH_VEL = 0.0 Initial homing velocity in machine units per second. Sign denotes direction
of travel. A value of zero means assume that the current location is the home position
for the machine. If your machine has no home switches you will want to leave this value alone.
HOME_LATCH_VEL = 0.0 Homing velocity in machine units per second to the home switch latch
position. Sign denotes direction of travel.
HOME_FINAL_VEL = 0.0 Velocity in machine units per second from home latch position to home
position. If left at 0 or not included in the axis rapid velocity is used. Must be a positive
number.
HOME_USE_INDEX = NO If the encoder used for this axis has an index pulse, and the motion card
has provision for this signal you may set it to yes. When it is yes, it will affect the kind of home
pattern used. Currently, you can’t home to index with steppers unless your using stepgen in
velocity mode and pid.
17
EMC V2.4 Integrator Manual Chapter 4. INI File
HOME_IGNORE_LIMITS = NO Some machines use a single switch as a home switch and limit
switch. This variable should be set to yes if the machine configured this way.
HOME_IS_SHARED = <n> If the home input is shared by more than one axis set <n> to 1 to prevent
homing from starting if the one of the shared switches is already closed. Set <n> to 0 to permit
homing if a switch is closed.
HOME_SEQUENCE = <n> Used to define the "Home All" sequence. <n> starts at 0 and no numbers
may be skipped. If left out or set to -1 the joint will not be homed by the "Home All" function.
More than one axis can be homed at the same time.
VOLATILE_HOME = 0 When enabled (set to 1) this joint will be unhomed if the Machine Power is
off or if E-Stop is on. This is useful if your machine has home switches and does not have
position feedback such as a step and direction driven machine.

Also look at...
4.3 Homing

Rick G

Please Log in or Create an account to join the conversation.

More
09 Jan 2012 11:57 #16474 by Rick G
Replied by Rick G on topic Re:Another "homing thread"

its not easily configurable in my copy of emc2 stepconf

To be honest I think of Stepconf as a great starting point for a new machine, but as the machine becomes more complicated or custom I find it easier to just edit the ini and hal files.

Rick G

Please Log in or Create an account to join the conversation.

More
09 Jan 2012 12:01 #16475 by andypugh
Replied by andypugh on topic Re:Another
alexr wrote:

HOME LOCATION 0.0
HOME SWITCH LOCATION 0.0

ZERO POINT ZERO WHAT!!!? thousands of an inch? inches, feet, miles?


"Machine Units". These can, in principle, be anything that you want, but inches and mm are the most common. EMC2 doesn't need to know what units you are using though, as far as it is concerned they are all just numbers. They only become physical units when converted to step or encoder counts.
You are perfectly at liberty to calibrate your machine in barleycorns (1/3 inch) if you want. If you do use a non-standard unit, however, the G20/G21 mode won't work, except that you could use it to swap a microns machine to thou. It's probably best to use mm or inch, and those are the valid units in the [TRAJ] LINEAR_UNITS section.

compared to where and what co-ordinate system?

In the absolute, machine, coordinate system. This stretches from the axis minimum to the axis maximum (as defined by you, in units of your choice)
The max, min, and home switch position need to match physical reality.

HOME SEARCH VELOCITY 0.05???????!!!! REVOLUTION / INCH or INCH/SECOND OR INCH/SECOND SQUARED?

Velocities are in machine units per second, accelerations are in machine units per second squared.

Emc2 misses critical detail and description! why isnt this in the manuals? why isnt this easy to configure??

It isn't easy to configure, because it is all somewhat complicated. And the manuals do contain all the information.
www.linuxcnc.org/docview/html/config_ini_config.html

Please Log in or Create an account to join the conversation.

More
19 Jan 2012 00:34 #16910 by RayJr
Replied by RayJr on topic Re:Another
Over the holidays I got a Bridgeport retrofit working.
I had initially tuned the steppers with stepconf, with the motors on the bench (off the machine).
They were running very sweet! After installing then back on the machine they didn't work correctly (movement stopped & they growled very loudly).
After reading this forum & re-reading the integrator manual, I discovered that the max speed & max acceleration were way too high.
I went back into stepconf (set up to a new file), and re-tuned the setup. Once I found the speed & acceleration that worked, I reduced them by about 20% for a safety margin.
The reason I set up to a new file is because I had already made many edits the the .ini & .hal files. I just opened both files (new & the one I wanted to use), then copied the new bits from the new file to the working file.

I only have limit switches on the Z axis, and getting that to work correctly was a bit of a chore. The home position is very close to the upper limit trip point! I also wanted the quill to move up to the home point for tool changes (power drawbar). Here are the results (from my .ini file):


[TRAJ]
AXES = 3
COORDINATES = X Y Z
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 0.14
MAX_LINEAR_VELOCITY = 1.40

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

[AXIS_0]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 1.4
MAX_ACCELERATION = 15.0
STEPGEN_MAXACCEL = 18.75
SCALE = 10000.0
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -0.01
MAX_LIMIT = 26.0
HOME_OFFSET = 0.0

[AXIS_1]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 1.4
MAX_ACCELERATION = 15.0
STEPGEN_MAXACCEL = 18.75
SCALE = 10000.0
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -0.0
MAX_LIMIT = 11.5
HOME_OFFSET = 0.0

[AXIS_2]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 1.4
MAX_ACCELERATION = 15.0
STEPGEN_MAXACCEL = 18.75
SCALE = 10000.0
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -5.1
MAX_LIMIT = 0.01
HOME_OFFSET = -0.006
HOME_SEARCH_VEL = 0.050000
HOME_LATCH_VEL = -0.050000
HOME_FINAL_VEL = 0.050000
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 0

I hopes this helps you!


Ray M.

"No problem can be solved from the same level of consciousness that created it"

Albert Einstein

Please Log in or Create an account to join the conversation.

Time to create page: 0.113 seconds
Powered by Kunena Forum