EasyManua.ls Logo

Galil Motion Control DMC-40 0 Series

Galil Motion Control DMC-40 0 Series
283 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
For example, the #POSERR subroutine will automatically be executed when any axis exceeds its position error limit.
The commands in the #POSERR subroutine could decode which axis is in error and take the appropriate action. In
another example, the #ININT label could be used to designate an input interrupt subroutine. When the specified
input occurs, the program will be executed automatically.
NOTE: An application program must be running for #CMDERR to function.
Example - Limit Switch:
This program prints a message upon the occurrence of a limit switch. Note, for the #LIMSWI routine to function,
the DMC-40x0 must be executing an applications program from memory. This can be a very simple program that
does nothing but loop on a statement, such as #LOOP;JP #LOOP;EN. Motion commands, such as JG 5000 can still
be sent from the PC even while the “dummy” applications program is being executed.
#LOOP
Dummy Program
JP #LOOP;EN
Jump to Loop
#LIMSWI
Limit Switch Label
MG “LIMIT OCCURRED”
Print Message
RE
Return to main program
Download Program
:XQ #LOOP
Execute Dummy Program
:JG 5000
Jog
:BGX
Begin Motion
Now, when a forward limit switch occurs on the X axis, the #LIMSWI subroutine will be executed.
Notes regarding the #LIMSWI Routine:
1) The RE command is used to return from the #LIMSWI subroutine.
2) The #LIMSWI subroutine will be re-executed if the limit switch remains active.
The #LIMSWI routine is only executed when the motor is being commanded to move.
Example - Position Error
#LOOP
Dummy Program
JP #LOOP;EN
Loop
#POSERR
Position Error Routine
v1=_TEX
Read Position Error
MG “EXCESS POSITION ERROR”
Print Message
MG “ERROR=”,v1=
Print Error
RE
Return from Error
Download program
:XQ #LOOP
Execute Dummy Program
:JG 100000
Jog at High Speed
:BGX
Begin Motion
Example - Input Interrupt
#A
Label
II1
Input Interrupt on 1
JG 30000,,,60000
Jog
BGXW
Begin Motion
#LOOP;JP#LOOP;EN
Loop
#ININT
Input Interrupt
STXW;AM
Stop Motion
#TEST;JP #TEST, @IN[1]=0
Test for Input 1 still low
JG 30000,,,6000
Restore Velocities
BGXW
Begin motion
RI0
Return from interrupt routine to Main Program and do not re-enable trippoints
Chapter 7 Application Programming ▫ 129 DMC-40x0 User Manual

Table of Contents

Other manuals for Galil Motion Control DMC-40 0 Series

Related product manuals