Galil DMC-1700 Manual Do Utilizador

Página de 253
168 • Chapter 7 Application Programming DMC-1700/1800 
had occurred.  If it is desired to return to somewhere else in the program after the execution of the #ININT 
subroutine, the Zero Stack (ZS) command is used followed by unconditional jump statements. 
IMPORTANT:  Use the RI instruction (not EN) to return from the #ININT subroutine. 
 
Examples - Input Interrupt 
#A Label 
#A 
II 1 
Enable input 1 for interrupt function 
JG 30000,-20000 
Set speeds on X and Y axes 
BG XY 
Begin motion on X and Y axes 
#B Label 
#B 
TP XY 
Report X and Y axes positions 
WT 1000 
Wait 1000 milliseconds 
JP #B 
Jump to #B 
EN 
End of program 
#ININT Interrupt 
subroutine 
MG “Interrupt has occurred”    
Displays the message 
ST XY 
Stops motion on X and Y axes 
#LOOP;JP #LOOP,@IN[1]=0 
Loop until Interrupt cleared 
JG 15000,10000 
Specify new speeds 
WT 300 
Wait 300 milliseconds 
BG XY 
Begin motion on X and Y axes 
RI 
Return from Interrupt subroutine 
Analog Inputs 
The DMC-1700/1800 provides eight analog inputs.  The value of these inputs in volts may be read using the 
@AN[n] function where n is the analog input 1 through 8. The resolution of the Analog-to-Digital conversion is 12 
bits (16-bit ADC is available as an option).  Analog inputs are useful for reading special sensors such as 
temperature, tension or pressure. 
The following examples show programs which cause the motor to follow an analog signal.  The first example is a 
point-to-point move.  The second example shows a continuous move. 
Example - Position Follower (Point-to-Point) 
Objective - The motor must follow an analog signal.  When the analog signal varies by 10V, motor must move 
10000 counts. 
Method:  Read the analog input and command X to move to that point. 
INSTRUCTION INTERPRETATION 
#Points Label 
SP 7000 
Speed 
AC 80000;DC 80000 
Acceleration 
#Loop  
VAR=@AN[1]*1000 
Read and analog input, compute position 
PA VAR 
Command position 
BGX Start 
motion 
AMX After 
completion