Trying to configure XYZU 4 axis setup.

More
19 Aug 2012 21:52 - 19 Aug 2012 21:53 #23406 by Gadget047
I need to set up a 4th axis with linear motion to feed the extruder on my 3D CNC table. I've edited the Config.ini and stepconf.ini for the table after configuring it originally in stepconf as XYZA. I see no way to tell stepconf to set up an XYZU from the start. I changed the ini file under TRAJ for AXIS=6 and configured axis 3 (U) with the needed settings. I also edited the stepconf file changing all values pointing to A to point to U. I can start EMC but when I try to manually feed U nothing happens and I get an error about out of range on axis 6. Any ideas how to set this up correctly?
I need the extruder to feed by the U axis calculating linear motion not angular. In this way I can set the feed of the filament in inches.
Dan
Last edit: 19 Aug 2012 21:53 by Gadget047.

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

More
20 Aug 2012 06:05 #23407 by fma
Did you define the correct number of axes?

AXES = 7

Here is my config file:
# EMC controller parameters for generic controller. Make these what you need
# for your system.

# General note: Comments can either be preceded with a # or ; - either is
# acceptable, although # is in keeping with most linux config files.

# Settings with a + at the front of the comment are likely needed to get 
# changed by the user.
# Settings with a - at the front are highly unneeded to be changed

###############################################################################
# General section 
###############################################################################
[EMC]

#- Version of this INI file
VERSION =               $Revision$

#+ Name of machine, for use with display, etc.
MACHINE =               RepRap

#+ Debug level, 0 means no messages. See src/emc/nml_int/emcglb.h for others
DEBUG = 0
# DEBUG =               0x00000007
# DEBUG =               0x7FFFFFFF

###############################################################################
# Sections for display options 
###############################################################################
[DISPLAY]

#+ Name of display program, e.g., xemc
DISPLAY =               axis 
# DISPLAY =              usrmot
# DISPLAY =              mini
# DISPLAY = 		     tkemc

# Cycle time, in seconds, that display will sleep between polls
CYCLE_TIME =             0.200

#- Path to help file
HELP_FILE =             tkemc.txt

#- Initial display setting for position, RELATIVE or MACHINE
POSITION_OFFSET =       RELATIVE

#- Initial display setting for position, COMMANDED or ACTUAL
POSITION_FEEDBACK =     ACTUAL

#+ Highest value that will be allowed for feed override, 1.0 = 100%
MAX_FEED_OVERRIDE =     3.0

#+ Define geometry (U axis should not move the tool on the GUI)
GEOMETRY =              XYZ

#- Prefix to be used
PROGRAM_PREFIX =        /home/fma/emc2/configs/reprap/nc_files/

#- Introductory graphic
INTRO_GRAPHIC =         emc2.gif
INTRO_TIME =            3

PYVCP =                 pyvcp/temperature.pyvcp

###############################################################################
# Task controller section 
###############################################################################
[TASK]

# Name of task controller program, e.g., milltask
TASK =                  milltask

#- Cycle time, in seconds, that task controller will sleep between polls
CYCLE_TIME =            0.010

###############################################################################
# Part program interpreter section 
###############################################################################
[RS274NGC]

#- File containing interpreter variables
PARAMETER_FILE =        reprap.var

###############################################################################
# Filters section 
###############################################################################
[FILTER]

PROGRAM_EXTENSION = .gcode Skeinforge Gcode file
gcode = /home/fma/emc2/configs/reprap/nc_files/gcode2ngc.py
#gcode = cat

###############################################################################
# Motion control section 
###############################################################################
[EMCMOT]

#- Name of the motion controller to use (only one exists for nontrivkins)
EMCMOT =                motmod

#- Timeout for comm to emcmot, in seconds
COMM_TIMEOUT =          1.0

#- Interval between tries to emcmot, in seconds
COMM_WAIT =             0.010

#+ Base task period, in nanosecs - this is the fastest thread in the machine
BASE_PERIOD =           50000

#- Servo task period, in nanosecs - will be rounded to an int multiple of BASE_PERIOD
SERVO_PERIOD =          100000

###############################################################################
# Hardware Abstraction Layer section
###############################################################################
[HAL]

# The run script first uses halcmd to execute any HALFILE
# files, and then to execute any individual HALCMD commands.
#

# list of hal config files to run through halcmd
#+ files are executed in the order in which they appear
HALFILE =               reprap.hal
HALFILE =               pinout.hal
HALFILE =               hal/temperature.hal

#- list of halcmd commands to execute
# commands are executed in the order in which they appear
#HALCMD =                save neta

POSTGUI_HALFILE =       hal/temperature_gui.hal

###############################################################################
# Trajectory planner section
###############################################################################
[TRAJ]
#+ machine specific settings
AXES =                  7
COORDINATES =           X Y Z U
HOME =                  0 0 0 0
LINEAR_UNITS =          mm
ANGULAR_UNITS =         degree
CYCLE_TIME =            0.010
DEFAULT_VELOCITY =      50.0
MAX_VELOCITY =          120.0
DEFAULT_ACCELERATION =  3000.0
MAX_ACCELERATION =      5000.0

###############################################################################
# Axes sections
###############################################################################

#+ First axis
[AXIS_0]
TYPE =                  LINEAR
HOME =                  0.000
MAX_VELOCITY =          120.0
# NOTE:  the step generator module applies its own limits to
# acceleration and velocity.  We have discovered that it needs
# to have a little "headroom" over the accel by the trajectory
# planner, otherwise it can fall slightly behind during accel
# and later overshoot as it catches up.  In the long term we
# hope to come up with a clean fix for this problem.  In the
# meantime, please set STEPGEN_MAXACCEL below to a few percent
# higher than the regular acceleration limit MAX_ACCELERATION
MAX_ACCELERATION =      3000.0
STEPGEN_MAXACCEL =      3200.0
BACKLASH =              0.000
SCALE =                 80
OUTPUT_SCALE =          1.000
MIN_LIMIT =             -300.0
MAX_LIMIT =             300.0
FERROR =                1.250
MIN_FERROR =            0.250
HOME_OFFSET =           0.0
HOME_SEARCH_VEL =       0.0
HOME_LATCH_VEL =        0.0
HOME_USE_INDEX =        NO
HOME_IGNORE_LIMITS =    NO

#+ Second axis
[AXIS_1]
TYPE =                  LINEAR
HOME =                  0.000
MAX_VELOCITY =          120.0
MAX_ACCELERATION =      3000.0
STEPGEN_MAXACCEL =      3200.0
BACKLASH =              0.000
SCALE =                 80
OUTPUT_SCALE =          1.000
MIN_LIMIT =             -300.0
MAX_LIMIT =             300.0
FERROR =                1.250
MIN_FERROR =            0.250
HOME_OFFSET =           0.0
HOME_SEARCH_VEL =       0.0
HOME_LATCH_VEL =        0.0
HOME_USE_INDEX =        NO
HOME_IGNORE_LIMITS =    NO

#+ Third axis
[AXIS_2]
TYPE =                  LINEAR
HOME =                  0.0
MAX_VELOCITY =          3.0
MAX_ACCELERATION =      1000.0
STEPGEN_MAXACCEL =      1200.0
BACKLASH =              0.000
SCALE =                 2560
OUTPUT_SCALE =          1.000
MIN_LIMIT =             -300.0
MAX_LIMIT =             300.0
FERROR =                1.250
MIN_FERROR =            0.250
HOME_OFFSET =           0.0
HOME_SEARCH_VEL =       0.0
HOME_LATCH_VEL =        0.0
HOME_USE_INDEX =        NO
HOME_IGNORE_LIMITS =    NO

#+ Fourth axis
[AXIS_6]
TYPE =                  LINEAR
HOME =                  0.0
MAX_VELOCITY =          40.0
MAX_ACCELERATION =      3000.0
STEPGEN_MAXACCEL =      3200.0
BACKLASH =              0.000
#SCALE =                 69
SCALE =                 245
OUTPUT_SCALE =          1.000
MIN_LIMIT =             -1000000.0
MAX_LIMIT =             1000000.0
FERROR =                1.250
MIN_FERROR =            0.250
HOME_OFFSET =           0.0
HOME_SEARCH_VEL =       0.0
HOME_LATCH_VEL =        0.0
HOME_USE_INDEX =        NO
HOME_IGNORE_LIMITS =    NO

###############################################################################
# section for main IO controller parameters 
###############################################################################
[EMCIO]

#- Name of IO controller program, e.g., io
EMCIO = 		        io

#- cycle time, in seconds
CYCLE_TIME =            0.100

#- tool table file
TOOL_TABLE =            reprap.tbl

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

More
20 Aug 2012 10:14 - 20 Aug 2012 10:17 #23408 by BigJohnT
You might want to read this section of the integrators manual about axis numbering and this section about number of axes.

John
Last edit: 20 Aug 2012 10:17 by BigJohnT.

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

More
20 Aug 2012 10:26 #23409 by fma
I didn't read carrefully your post; yes the problem is definitly the number of axes defined; U is the 7th axis (XYZABCUVW), so you need to set AXIS = 7, not 6.

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

More
20 Aug 2012 13:35 - 20 Aug 2012 14:07 #23413 by Gadget047
I did set the number of axis as 7 and defined U as Axis 6. I'll print out your config and see if I can see anything different. Did you change the stepconf file at all? I went into mine and set everything that was set to A changing it to U. Could that be the issue?
If you have a working U axis could you possibly post or send your config folder and stepconf file? That way I could see how it affects all config files.
By the way, thanks for the reply and help.
Dan
Last edit: 20 Aug 2012 14:07 by Gadget047.

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

More
20 Aug 2012 13:42 - 20 Aug 2012 13:42 #23414 by fma
What stepconf file are your refering? I have to admit that I didn't use emc2 for some time, now, and I don't remember all the steps I did to get it work...
Last edit: 20 Aug 2012 13:42 by fma.

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

More
20 Aug 2012 14:09 #23415 by ArcEye

Did you change the stepconf file at all? I went into mine and set everything that was set to A changing it to U. Could that be the issue?

If you attach your .INI file, hopefully someone will quickly spot the problem.

Stepconf will only really get you started with one parport and XYZA, after that you are into hand editing

regards

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

More
20 Aug 2012 14:10 #23416 by Gadget047
fma wrote:

What stepconf file are your refering? I have to admit that I didn't use emc2 for some time, now, and I don't remember all the steps I did to get it work...


The stepconf file created when you initially set up EMC using the wizard. It tells the program what drivers and configuration you use. Once you set up a machine you have a conf folder with the var, ini, hal and other files and a stepconf file which is created outside that folder in the EMC folder.

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

More
20 Aug 2012 14:12 #23417 by Gadget047
ArcEye wrote:

Did you change the stepconf file at all? I went into mine and set everything that was set to A changing it to U. Could that be the issue?

If you attach your .INI file, hopefully someone will quickly spot the problem.

Stepconf will only really get you started with one parport and XYZA, after that you are into hand editing

regards


Here's my ini file


# Generated by stepconf at Thu Aug 2 14:11:23 2012
# If you make changes to this file, they will be
# overwritten when you run stepconf again

[EMC]
MACHINE = 3D-PRINTER
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/dan/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 = 38000
SERVO_PERIOD = 1000000

[HAL]
HALUI = halui
HALFILE = 3D-PRINTER.hal
HALFILE = custom.hal
POSTGUI_HALFILE = custom_postgui.hal

[HALUI]
# add halui MDI commands here (max 64)

[TRAJ]
AXES = 7
JOINTS = 4
COORDINATES = X Y Z U
HOME = 0 0 0 0
MAX_ANGULAR_VELOCITY = 600.00
DEFAULT_ANGULAR_VELOCITY = 60.00
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 0.16
MAX_LINEAR_VELOCITY = 1.60

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

[AXIS_0]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 1.6
MAX_ACCELERATION = 10.0
STEPGEN_MAXACCEL = 12.5
SCALE = 4000.0
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -0.5
MAX_LIMIT = 35.0
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = 0.500000
HOME_LATCH_VEL = 0.125000
HOME_SEQUENCE = 1

[AXIS_1]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 1.42045454545
MAX_ACCELERATION = 10.0
STEPGEN_MAXACCEL = 12.5
SCALE = 8800.0
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -0.5
MAX_LIMIT = 24.0
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = 0.500000
HOME_LATCH_VEL = 0.056818
HOME_SEQUENCE = 2

[AXIS_2]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 0.5
MAX_ACCELERATION = 3.0
STEPGEN_MAXACCEL = 3.75
SCALE = 14400.0
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -5.75
MAX_LIMIT = 1.75
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = 0.500000
HOME_LATCH_VEL = 0.034722
HOME_SEQUENCE = 0

[AXIS_6]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 600.0
MAX_ACCELERATION = 1500.0
STEPGEN_MAXACCEL = 1875.0
SCALE = 14400.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -9999.0
MAX_LIMIT = 9999.0
HOME_OFFSET = 0.000000

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

More
20 Aug 2012 15:36 #23419 by ArcEye
Hi

Had great difficulty testing your .ini, so I wrote a 4 axis simulation, based upon the axis9axis sim.

This works, so you can adapt to your settings and test from there.

Copy it into the /sim directory and select axis_4axis from the config chooser dialog

BTW
the figures in your U axis for velocity and accel are HUGE compared to other axes, you need to bring them right down or you will get a following error.

regards

File Attachment:

File Name: 4axis_sim.zip
File Size:3 KB
Attachments:

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

Time to create page: 0.076 seconds
Powered by Kunena Forum