EN

End main program

#CMDERR

Command error utility

JP#DONE,_ED<>2

Check if error on line 2

JP#DONE,_TC<>6

Check if out of range

MG "SPEED TOO HIGH"

Send message

MG "TRY AGAIN"

Send message

ZS1

Adjust stack

JP #BEGIN

Return to main program

#DONE

End program if other error

ZS0

Zero stack

EN

End program

OPERAND

FUNCTION

 

 

_ED1

Returns the number of the thread that generated an error

 

 

_ED2

Retry failed command (operand contains the location of the failed command)

_ED3

Skip failed command (operand contains the location of the command after the

 

failed command)

 

 

The operands are used with the XQ command in the following format: XQ _ED2 (or _ED3),_ED1,1

Where the “,1” at the end of the command line indicates a restart; therefore, the existing program stack will not e removed when the above format executes.

The following example shows an error correction routine that uses the operands.

Example - Command Error w/Multitasking

The following program illustrates a common program problem. In this case, a variable is used as a command argument and the variable is inadvertently set to an illegal value. This simple command error subroutine recognizes the type of error, modifies the variable and continues the program at the point of the error. If the program has an invalid command error, skip the command and continue to execute the program. To demonstrate the program, while the simple loop #A is executing on thread 0 (XQ#A,0), begin execution of the second task, XQ#B,1

Instruction

Interpretation

#A

Begin thread 0 (continuous loop)

JP#A

 

EN

End of thread 0

#B

Begin thread 1

KP -1

Set KP to value of N, an invalid value

TY

Issue invalid command

EN

End of thread 1

#CMDERR

Begin command error subroutine

IF(_TC=6)

If error is “Number Out of Range” (-1).

N=1

Set N to a valid number

XQ _ED2,_ED1,1

Retry KP N command

ENDIF

 

IF( _TC=1)

If error is “Invalid Command” (TY)

126 • Chapter 7 Application Programming

DMC-3425

Page 134
Image 134
Galil DMC-3425 user manual Example Command Error w/Multitasking

DMC-3425 specifications

The Galil DMC-3425 is a sophisticated motion controller known for its versatility and high performance in various industrial applications. Designed primarily for multi-axis control, it is well-suited for robotics, CNC machinery, and automated manufacturing systems.

One of the standout features of the DMC-3425 is its ability to control up to 32 axes simultaneously, providing unparalleled flexibility for complex motion tasks. This capability is enhanced by its advanced motion algorithms that ensure smooth and precise movements, essential for high-quality manufacturing and assembly processes. The controller supports a variety of motor types, including servo, stepper, and brushless motors, making it compatible with a wide range of existing equipment.

In terms of connectivity, the DMC-3425 offers an extensive selection of communication options. It supports Ethernet, RS-232, and RS-485 interfaces, allowing for seamless integration with various industrial networks, including EtherCAT and CANopen. This connectivity is vital for real-time data exchange and remote monitoring, enhancing overall system efficiency.

The controller is powered by Galil's innovative software architecture, which includes the DMC programming language. This user-friendly language enables engineers to create complex motion profiles easily, with support for trajectory generation, coordinate transformations, and PID control. The DMC-3425 also features built-in commands for motion profiling, including linear and circular interpolation, allowing for sophisticated path planning.

Moreover, the DMC-3425 comes equipped with an integrated programming environment that facilitates rapid application development. Users can simulate motion profiles before implementation, reducing downtime and minimizing errors. This environment is designed for quick learning, making it accessible even for those new to motion control.

Additionally, the Galil DMC-3425 features a robust safety architecture. It includes over-temperature detection, emergency stop inputs, and configurable limits for position and speed, ensuring safe operation in various environments.

Overall, the Galil DMC-3425 is a powerful and flexible motion controller that combines advanced technologies with user-friendly design. Its ability to handle multiple axes, extensive connectivity options, and comprehensive programming environment make it a top choice for manufacturers seeking to enhance automation and improve productivity in their operations.