Re: [CAD_CAM_EDM_DRO] ini for stg2
Posted by
Jon Elson
on 2001-06-20 21:45:15 UTC
Don McLane wrote:
of the unused (by Linux) shared memory area has to be set correctly
both for LILO and in the .ini file.
Second, the STG cards use a lot of I/O addresses, and this can sometimes
cause a conflict. You might check the addresses in the STG book
against what is known to be on your system.
Does EMC run, or does it die without starting the screen GUI?
There is also a NON-realtime version of every program that will run
at whatever rate the CPU can service it, but does not use the realtime
communication. This can be of use in debugging. These get the
routines from the plat/linux-xxx/lib directories instead of the
plat/rtlinux/lib ones.
; Motion control section
------------------------------------------------------
[EMCMOT]
; Platform for motion, e.g., rtlinux_09J, linux_2_0_36
; PLAT = rtlinux_09J
; PLAT = rtlinux_b11
PLAT = linux_2_0_36
; PLAT = linux_2_2_10
The I/O address of the STG card is set like this :
; Base address of Servo To Go board
; Now it is base address of PPMC parallel port
STG_BASE_ADDRESS = 0x200
And, the auxilliary I/O is set up like this :
; section for main IO controller parameters
-----------------------------------
[EMCIO]
; Platform for IO controller, e.g., linux_2_0_36
PLAT = linux_2_0_36
; PLAT = linux_2_2_10
; Name of IO controller program, e.g., bridgeportio
; EMCIO = bridgeportio
; EMCIO = minimillio
EMCIO = simio
; cycle time, in seconds
CYCLE_TIME = 0.100
; tool table file
TOOL_TABLE = emc.tbl
; address for parallel port used for auxiliary IO
PARPORT_IO_ADDRESS = 0x278
; wait times in seconds for spindle brake, release
SPINDLE_OFF_WAIT = 1.0
SPINDLE_ON_WAIT = 0.1
; 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 = 1
LUBE_SENSE_POLARITY = 0
; 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 = 12
; 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
; section for external NML server parameters
----------------------------------
[EMCSERVER]
; Platform for NML server, e.g., linux_2_0_36
PLAT = linux_2_0_36
; PLAT = linux_2_2_10
; Name of NML server, e.g., emcsvr; if not found then none will run
; EMCSERVER = emcsvr
I should warn you that the BDI is not the same version of EMC as
I am running here, so there may be some differences in the .ini
file format.
The best way to determine if it is working is to set the position display
to actual with the @ key (if it is displaying commanded position) and
then move the encoders and see if the position display changes.
When you get this working, then you need to solve the problem of getting
the E-stop condition to clear, and the limit switches to indicate OK or
override them. Then you can get to the machine on state by pressing
F1 first, waiting for the estop display to go to estop-off, and then hit
F2 and see it go to machine on. Then, when you give commands that try
to move the machine, the DACs will give non-zero outputs to the servos.
Jon
> Does anyone have a .ini file for EMC that works with a Servo To Go ModelThere are a couple of things that could cause trouble. First, the setting
> 2. BDI went great. Simulation works. The card is working, because the
> lstg (on servotogo web site) program can run it. But can't seem to get the
> stg2 working realtime. Appreciate any suggestions.
of the unused (by Linux) shared memory area has to be set correctly
both for LILO and in the .ini file.
Second, the STG cards use a lot of I/O addresses, and this can sometimes
cause a conflict. You might check the addresses in the STG book
against what is known to be on your system.
Does EMC run, or does it die without starting the screen GUI?
There is also a NON-realtime version of every program that will run
at whatever rate the CPU can service it, but does not use the realtime
communication. This can be of use in debugging. These get the
routines from the plat/linux-xxx/lib directories instead of the
plat/rtlinux/lib ones.
; Motion control section
------------------------------------------------------
[EMCMOT]
; Platform for motion, e.g., rtlinux_09J, linux_2_0_36
; PLAT = rtlinux_09J
; PLAT = rtlinux_b11
PLAT = linux_2_0_36
; PLAT = linux_2_2_10
The I/O address of the STG card is set like this :
; Base address of Servo To Go board
; Now it is base address of PPMC parallel port
STG_BASE_ADDRESS = 0x200
And, the auxilliary I/O is set up like this :
; section for main IO controller parameters
-----------------------------------
[EMCIO]
; Platform for IO controller, e.g., linux_2_0_36
PLAT = linux_2_0_36
; PLAT = linux_2_2_10
; Name of IO controller program, e.g., bridgeportio
; EMCIO = bridgeportio
; EMCIO = minimillio
EMCIO = simio
; cycle time, in seconds
CYCLE_TIME = 0.100
; tool table file
TOOL_TABLE = emc.tbl
; address for parallel port used for auxiliary IO
PARPORT_IO_ADDRESS = 0x278
; wait times in seconds for spindle brake, release
SPINDLE_OFF_WAIT = 1.0
SPINDLE_ON_WAIT = 0.1
; 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 = 1
LUBE_SENSE_POLARITY = 0
; 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 = 12
; 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
; section for external NML server parameters
----------------------------------
[EMCSERVER]
; Platform for NML server, e.g., linux_2_0_36
PLAT = linux_2_0_36
; PLAT = linux_2_2_10
; Name of NML server, e.g., emcsvr; if not found then none will run
; EMCSERVER = emcsvr
I should warn you that the BDI is not the same version of EMC as
I am running here, so there may be some differences in the .ini
file format.
The best way to determine if it is working is to set the position display
to actual with the @ key (if it is displaying commanded position) and
then move the encoders and see if the position display changes.
When you get this working, then you need to solve the problem of getting
the E-stop condition to clear, and the limit switches to indicate OK or
override them. Then you can get to the machine on state by pressing
F1 first, waiting for the estop display to go to estop-off, and then hit
F2 and see it go to machine on. Then, when you give commands that try
to move the machine, the DACs will give non-zero outputs to the servos.
Jon
Discussion Thread
Don McLane
2001-06-20 18:01:32 UTC
ini for stg2
Jon Elson
2001-06-20 21:45:15 UTC
Re: [CAD_CAM_EDM_DRO] ini for stg2