beautypg.com

Example - limit switch, Example - position error – Yaskawa LEGEND-MC User Manual

Page 307

background image

297

LEGEND-MC User’s Manual

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 automatic monitoring 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 LEGEND-MC 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.

Now, when a forward limit switch occurs on the X axis, the #LIMSWI subroutine will be executed.

NOTE: The RE command is used to return from the #LIMSWI subroutine.

NOTE: The #LIMSWI will continue to be executed until the limit switch is cleared (goes high).

Example - Position Error

#MCTIME

Timeout for In-position trippoint, MC

#POSERR

Position error exceeds limit specified by ER

#TCPERR

Ethernet error

#LOOP

Dummy Program

JP #LOOP;EN

Jump to Loop

#LIMSWI

Limit Switch Label

MG "LIMIT OCCURRED"

Print Message

RE

Return to main program

:XQ #LOOP

Execute Dummy Program

:JG 5000

Jog

:BGX

Begin Motion

#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

:XQ #LOOP

Execute Dummy Program

:JG 100000

Jog at High Speed