trajectory acceleration is half the value in config file

More
3 years 1 month ago #280038 by southbayguy
Thank you for the replies.
For some reason I'm not seeing the button for attaching a file, so I'm going to paste my motenc.ini file in here. I'm finding I have to specify MAX_ACCELERATION at 80 in/sec/sec in order to actually get 40 in/sec/sec.

# 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.

# General section
[EMC]

# Version of this INI file
VERSION = $Revision$

# Name of machine, for use with display, etc.
MACHINE = LinuxCNC-MOTENC

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

# Sections for display options
[DISPLAY]

# Name of display program, e.g., tkemc
DISPLAY = tkemc
#DISPLAY = axis

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

# Path to help file
HELP_FILE = tklinucnc.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 = 1.5

# Prefix to be used
PROGRAM_PREFIX = /home/robert/linuxcnc/nc_files/robert_gcode_files

# Introductory graphic
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5

# 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 = motenc.var

# Motion control section
[EMCMOT]

EMCMOT = motmod

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

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

# Servo task period, in nanoseconds
SERVO_PERIOD = 1000000

# 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 = core_servo.hal
HALFILE = motenc_motion.hal
HALFILE = motenc_io.hal
# rwp add 6/1/14
HALFILE = axisWatch.hal
# rwp add 7/2/16
HALFILE = handwheelFile.hal

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

# Trajectory planner section
[TRAJ]

AXES = 3
# COORDINATES = X Y Z R P W
COORDINATES = X Y Z
HOME = 0 0 0
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 3.0
MAX_VELOCITY = 4.0
DEFAULT_ACCELERATION = 6.
MAX_ACCELERATION = 80.

# Axes sections

# First axis
[AXIS_0]

TYPE = LINEAR
HOME = 0.000
MAX_VELOCITY = 4
MAX_ACCELERATION = 80.0
BACKLASH = 0.000
INPUT_SCALE = 10160
OUTPUT_SCALE = 10
OUTPUT_OFFSET = 0
MIN_LIMIT = -25.03
MAX_LIMIT = 0.03
FERROR = .2
MIN_FERROR = .020
HOME_OFFSET = 0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = -5
HOME_USE_INDEX = YES
HOME_IGNORE_LIMITS = YES
MAX_OUTPUT = 1
# PID tuning params
DEADBAND = 0.000015
P = 50
I = 0
D = 2
FF0 = 0
FF1 = 0
FF2 = 0
BIAS = 0

# Second axis
[AXIS_1]

TYPE = LINEAR
HOME = 0.000
MAX_VELOCITY = 4
MAX_ACCELERATION = 80.0
BACKLASH = 0.000
INPUT_SCALE = 10160
OUTPUT_SCALE = 10
OUTPUT_OFFSET = 0
MIN_LIMIT = -24.53
MAX_LIMIT = 0.03
FERROR = 0.2
MIN_FERROR = 0.020
HOME_OFFSET = 0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = -5
HOME_USE_INDEX = YES
HOME_IGNORE_LIMITS = YES
MAX_OUTPUT = 1
# PID tuning params
DEADBAND = 0.000015
P = 50
I = 0
D = 2
FF0 = 0
FF1 = 0
FF2 = 0
BIAS = 0

# Third axis
[AXIS_2]

TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 4
MAX_ACCELERATION = 80.0
BACKLASH = 0.000
INPUT_SCALE = 10160
OUTPUT_SCALE = 10
OUTPUT_OFFSET = 0
MIN_LIMIT = -8.03
MAX_LIMIT = 0.03
FERROR = 0.2
MIN_FERROR = 0.199
HOME_OFFSET = 0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = -5
HOME_USE_INDEX = YES
HOME_IGNORE_LIMITS = YES
MAX_OUTPUT = 1
# PID tuning params
DEADBAND = 0.000015
P = 50
I = 0
D = 2
FF0 = 0
FF1 = 0
FF2 = 0
BIAS = 0

# 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 = motenc.tbl

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

More
3 years 1 month ago - 3 years 1 month ago #280053 by JPL

... For some reason I'm not seeing the button for attaching a file ...
 
 
That's because you are using the  "quick Reply" button.
To be able to add  attachments you need to use the full editor (where there is an "Attachments" button):
When you're in the quick editor click on the "Go to editor..." link on the bottom right of the editor.
Or, instead of clicking "Quick Reply" you will use the "Action" button then select "Reply topic" (or "Reply" in the context of a specific post).
Last edit: 3 years 1 month ago by JPL.

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

More
3 years 1 month ago #280061 by roland
There are differences in the calculation of acceleration.
It is dependent on G61/G64/MDI/Jog

See:  forum.linuxcnc.org/38-general-linuxcnc-q...nce-too-long?start=0

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

More
3 years 1 month ago #280090 by Aciera
According to the post by dmitry (also reproduced by dgarrett) this happens also within one chunk of code. This is the original message by dmitry as linked above:

 

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

More
3 years 1 month ago #280099 by southbayguy
Hi -
     Thanks for all the information.  I was asked earlier for my .ini file and version number.  I pasted in the .ini file.  Version number, as returned by "lsb_release -d" is Ubuntu 10.04.4 LTS.  Pretty old ... I guess this acceleration behavior has been around for a while.
     I'm using an MDI command to obtain the finding of half acceleration.  Other people are getting the same result.  It would be tempting to generalize that motion control behaves one way for MDI commands and another way when jogging or running a program, but this generalization does not survive dm17ry's to-the-point experiment where half and full acceleration both occur in one program, in fact in a pair of co-linear moves.
     Maybe there's a rule somewhere in the motion control code that says any move (except a button jog) at the end of a sequence should begin and end at half acceleration, a sequence being one or more moves that end at zero velocity
 

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

More
3 years 1 month ago #280147 by rodw
yes in my testing MDI uses slower acceleration ( I think half from memory). You need touse gcode commands for any testing


RodW

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

Time to create page: 0.218 seconds
Powered by Kunena Forum