after the execution of the #ININT subroutine, the Zero Stack (ZS) command is used followed by unconditional jump statements.

Important: Use the RI command (not EN) to return from the #ININT subroutine.

Example - Input Interrupt

Instruction

Interpretation

#A

Label #A

II 1

Enable input 1 for interrupt function

JG 30000,-20000

Set speeds on A and B axes

BG AB

Begin motion on A and B axes

#B

Label #B

TP AB

Report A and B 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 AB

Stops motion on A and B axes

#LOOP;JP #LOOP,@IN[1]=0

Loop until Interrupt cleared

JG 15000,10000

Specify new speeds

WT 300

Wait 300 milliseconds

BG AB

Begin motion on A and B axes

RI

Return from Interrupt subroutine

Analog Inputs

The DMC-2x00 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 A to move to that point.

InstructionInterpretation

#POINTS

Label

SP 7000

Speed

AC 80000;DC 80000

Acceleration

#LOOP

 

VP=@AN[1]*1000

Read and analog input, compute position

116 Chapter 7 Application Programming

DMC-2X00

Page 171
Image 171
Galil DMC-2X00 user manual Analog Inputs, Example Position Follower Point-to-Point, Tp Ab, St Ab, #LOOPJP #LOOP,@IN1=0