freqmot.o settup problems



hi all,
	finaly got my stepper driver back on line today. recompiled the latest
cvs and all goes well. However I calculated the steps per inch at 5080 (
200step 1mm pitch ) , when i put it into the ini and start emc in mdi
mode it dosnt drive correctly. I set it to g21 y1 and it only pulses
aprox. 5 times ( nowhere near the required 5080 times ) . 
Any help is welcomed

Thanks 
Jason Cox


stepper.ini


; EMC controller parameters for stepper motor test stand

; General section
-------------------------------------------------------------
[EMC]

; Version of this INI file
VERSION =		$Revision: 1.2 $

; Name of machine, for use with display, etc.
MACHINE =		Jason's Stepper Stand 
; Name of NML file to use, default is emc.nml
NML_FILE =		stepper.nml

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

; Startup codes for RS-274-NGC interpreter
RS274NGC_STARTUP_CODE =	G21

; Sections for display options
------------------------------------------------
[DISPLAY]

; Platform for GUI
PLAT =			nonrealtime

; Name of display program, e.g., xemc
DISPLAY =		tkemc
; DISPLAY =		xemc
; DISPLAY =		yemc
; DISPLAY =		keystick
; DISPLAY =		emcpanel

; Cycle time, in seconds, that task controller will sleep between polls
CYCLE_TIME =		0.100

; Path to help file
HELP_FILE =		doc/help.txt

; Initial display setting for position, RELATIVE or ABSOLUTE
POSITION_OFFSET =	RELATIVE

; Initial display setting for position, COMMANDED or ACTUAL
POSITION_FEEDBACK =	COMMANDED

; Highest value that will be allowed for feed override, 1.0 = 100%
MAX_FEED_OVERRIDE =	1.2

; Prefix to be used
PROGRAM_PREFIX =	programs/

; Introductory graphic
INTRO_GRAPHIC = emc.gif
INTRO_TIME =1 

; Units for display, default would be AUTO
;LINEAR_UNITS = AUTO
; LINEAR_UNITS = INCH
LINEAR_UNITS = MM
; LINEAR_UNITS = CM
ANGULAR_UNITS = AUTO
; ANGULAR_UNITS = DEG
; ANGULAR_UNITS = RAD
; ANGULAR_UNITS = GRAD

; Enable popup balloon help
; BALLOON_HELP = 0

POSITION_FONT = Courier 56 italic

; Task controller section
-----------------------------------------------------
[TASK]

; Platform for task controller
PLAT =			nonrealtime

; Name of task controller program, e.g., bridgeporttask
; TASK =		bridgeporttask
TASK =		minimilltask

; 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 =	stepper.var

; Motion control section
------------------------------------------------------
[EMCMOT]

; Platform for motion, e.g., realtime, nonrealtime
PLAT =			realtime
; PLAT =		nonrealtime

; Name of motion control program
EMCMOT =		freqmod.o
; EMCMOT =		steppermod.o
; EMCMOT =		stgmod.o
; EMCMOT =		stg8mod.o
; EMCMOT =		emcmotsim

; Key for real OS shared memory, e.g., for simulated motion
SHMEM_KEY =		100

; Base address for physical shared memory, e.g., for real-time motion.
; Note that if you change this, you may need to change OS parameters,
e.g.,
; /etc/lilo.conf
; SHMEM_BASE_ADDRESS =	0x1F00000
SHMEM_BASE_ADDRESS =	0x3F00000

; Base address of Servo To Go board
; IO_BASE_ADDRESS =	0x200
; IO_BASE_ADDRESS =	0x300

; Address for parallel port used for steppers
IO_BASE_ADDRESS =	0x378

; 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 seconds
PERIOD =		0.000016

; Stepping type, 0 = step/direction, 1 = phasing
STEPPING_TYPE = 	4

; Address for motion IO, synchronized with motion start/end
MOTION_IO_ADDRESS =	0x3BC

; Trajectory planner section
--------------------------------------------------
[TRAJ]

AXES =			3
; COORDINATES =		X Y Z R P W
COORDINATES =		X Y Z
HOME =			0 0 0
LINEAR_UNITS =		0.03937007874016
ANGULAR_UNITS =		1.0
CYCLE_TIME =		0.010
DEFAULT_VELOCITY = 	0.1
MAX_VELOCITY = 		1.2
DEFAULT_ACCELERATION =	10.0
MAX_ACCELERATION =	10.0
PROBE_INDEX =		12
PROBE_POLARITY =	0

; Axes sections
---------------------------------------------------------------

; First axis
[AXIS_0]

TYPE =				LINEAR
UNITS =				0.03937007874016
HOME = 				0.000
MAX_VELOCITY =			1.2
P = 1.000
I = 0.000
D = 0.000
FF0 = 1.000
FF1 = 1.000
FF2 = 1.000
BACKLASH = 0.000
BIAS = 0.000
MAX_ERROR = 0.000
DEADBAND = 0.005
CYCLE_TIME =			0.001000
INPUT_SCALE =			4000	0
OUTPUT_SCALE = 1.000 0.000
MIN_LIMIT =			-1000
MAX_LIMIT =			1000
MIN_OUTPUT =			-1000000
MAX_OUTPUT =			1000000
FERROR = 1.000
MIN_FERROR = 1.000
HOMING_VEL =			0.1
HOME_OFFSET =			0.0
ENABLE_POLARITY =		0
MIN_LIMIT_SWITCH_POLARITY =	0
MAX_LIMIT_SWITCH_POLARITY =	0
HOME_SWITCH_POLARITY =		0
HOMING_POLARITY =		1
JOGGING_POLARITY =		1
FAULT_POLARITY =		1
COMP_FILE =			x.cmp

; Second axis
[AXIS_1]

TYPE =				LINEAR
UNITS =				0.03937007874016
HOME = 				0.000
MAX_VELOCITY =			1.2
P = 1000000.000
I = 0.000
D = 0.000
FF0 = 0.000
FF1 = 0.000
FF2 = 0.000
BACKLASH = 0.000
BIAS = 0.000
MAX_ERROR = 0.000
DEADBAND = 0.005
CYCLE_TIME =			0.001000
INPUT_SCALE =			5080 0	
OUTPUT_SCALE = 1 0
MIN_LIMIT =			-1000
MAX_LIMIT =			10000
MIN_OUTPUT =			-1000000
MAX_OUTPUT =			1000000
FERROR = 1.000
MIN_FERROR = 1.000
HOMING_VEL =			0.1
HOME_OFFSET =			0.0
ENABLE_POLARITY =		0
MIN_LIMIT_SWITCH_POLARITY =	0
MAX_LIMIT_SWITCH_POLARITY =	0
HOME_SWITCH_POLARITY =		0
HOMING_POLARITY =		1
JOGGING_POLARITY =		1
FAULT_POLARITY =		1
COMP_FILE =			y.cmp

; Third axis
[AXIS_2]

TYPE =				LINEAR
UNITS =				0.03937007874016
HOME = 				0.000
MAX_VELOCITY =			1.2
P = 1000000.000
I = 0.000
D = 0.000
FF0 = 0.000
FF1 = 0.000
FF2 = 0.000
BACKLASH = 0.000
BIAS = 0.000
MAX_ERROR = 0.000
DEADBAND = 0.005
CYCLE_TIME =			0.001000
INPUT_SCALE =			4000	0
OUTPUT_SCALE = 1.000 0.000
MIN_LIMIT =			-1000
MAX_LIMIT =			10000
MIN_OUTPUT =			-1000000
MAX_OUTPUT =			1000000
FERROR = 1.000
MIN_FERROR = 1.000
HOMING_VEL =			0.1
HOME_OFFSET =			0.0
ENABLE_POLARITY =		0
MIN_LIMIT_SWITCH_POLARITY =	0
MAX_LIMIT_SWITCH_POLARITY =	0
HOME_SWITCH_POLARITY =		0
HOMING_POLARITY =		1
JOGGING_POLARITY =		1
FAULT_POLARITY =		1
COMP_FILE =			z.cmp

; section for main IO controller parameters
-----------------------------------
[EMCIO]

; Platform for IO controller, e.g., nonrealtime
PLAT =			nonrealtime

; Name of IO controller program, e.g., bridgeportio
; EMCIO =			dumbio
; EMCIO =		bridgeportio
EMCIO =		minimillio
; EMCIO =		simio

; cycle time, in seconds
CYCLE_TIME =	0.010

; tool table file
TOOL_TABLE =	stepper.tbl

; address for parallel port used for auxiliary IO
IO_BASE_ADDRESS =	0x378

; wait times in seconds for spindle brake, release
SPINDLE_OFF_WAIT          =	1.0
SPINDLE_ON_WAIT           =	1.5

; external digital inputs, outputs are always 0 for 0V, 1 for 5/24V

; digital in bits

ESTOP_SENSE_INDEX         =	1
LUBE_SENSE_INDEX          =	2

; digital in polarity, 0 is inverted, 1 is normal
; controller compares with polarity, equal means on, not equal means off

ESTOP_SENSE_POLARITY      =	0
LUBE_SENSE_POLARITY       =	1

; digital out bits

SPINDLE_FORWARD_INDEX     =	1
SPINDLE_REVERSE_INDEX     =	0
MIST_COOLANT_INDEX        =	6
FLOOD_COOLANT_INDEX       =	7
SPINDLE_DECREASE_INDEX    =	8
SPINDLE_INCREASE_INDEX    =	9
ESTOP_WRITE_INDEX         =	10
SPINDLE_BRAKE_INDEX       =	11
LUBE_WRITE_INDEX          =     4

; analog out bits

SPINDLE_ON_INDEX          =	3

; digital out polarity, 0 is inverted, 1 is normal
; controller writes the polarity to turn on, opposite of polarity to
turn off

SPINDLE_FORWARD_POLARITY  =	0
SPINDLE_REVERSE_POLARITY  =	0
MIST_COOLANT_POLARITY     =	0
FLOOD_COOLANT_POLARITY    =	0
SPINDLE_DECREASE_POLARITY =	1
SPINDLE_INCREASE_POLARITY =	1
ESTOP_WRITE_POLARITY      =	1
SPINDLE_BRAKE_POLARITY    =	0
SPINDLE_ENABLE_POLARITY   =	1
LUBE_WRITE_POLARITY       =     1

; section for external NML server parameters
----------------------------------
[EMCSERVER]

; Platform for NML server, e.g., nonrealtime
PLAT =			nonrealtime

; Name of NML server, e.g., emcsvr; if not found then none will run
EMCSERVER =		emcsvr




Date Index | Thread Index | Back to archive index | Back to Mailing List Page

Problems or questions? Contact