USER MANUAL
By Galil Motion Control, Inc
Manual Rev. 1.1b
DMC-3425
Page
Contents
Contents
Chapter 1 Overview
Chapter 2 Getting Started
Chapter 5 Command Basics
Chapter 3 Connecting Hardware
Chapter 4 Communication
Chapter 6 Programming Motion
Chapter 7 Application Programming
Chapter 8 Hardware & Software Protection
Chapter 9 Troubleshooting
Chapter 10 Theory of Operation
Appendices
Index
Chapter 1 Overview
Introduction
Overview of Motor Types
Stepper Motor with Step and Direction Signals
Brushless Servo Motor with Sinusoidal Commutation
The DMC-3415can control BLMs equipped with Hall sensors as well as without Hall sensors. If hall sensors are available, once the controller has been setup, the controller will estimate the commutation phase upon reset. This allows the motor to function immediately upon power up. The Hall effect sensors also provide a method for setting the precise commutation phase. Chapter 2 describes the proper connection and procedure for using sinusoidal commutation of brushless motors
DMC-3425Functional Elements
Microcomputer Section
Motor Interface
Communication
General I/O
System Elements
Motor
Amplifier Driver
Watch Dog Timer
Encoder
6 • Chapter 1 Overview
DMC-3425
Chapter 2 Getting Started
The DMC-3425Motion Controller
Figure 2.1 – Outline of the DMC-3425
DMC-3425
Installing the DMC-3425Controller
Elements You Need
Step 1. Determine Overall Motor Configuration
Step 2. Configuring Jumpers on the DMC-3425
Master Reset and Upgrade Jumper
Standard Servo Motor Operation
Setting the Baud Rate on the DMC-3425
Selecting MO as default on the DMC-3425
Stepper Motor Jumpers
SD MC
Axis Configuration Jumpers
A1 A2 A4 A8
Step 4. Installing the Communications Software
Using Galil Software for DOS
Using DOS
Using Windows 3.x 16 bit versions
Using Galil Software for Windows
14 • Chapter 2 Getting Started
DMC-3425
Using Non-GalilCommunication Software
Sending Test Commands to the Terminal
Communicating through the Ethernet
Using Galil Software for Windows
16 • Chapter 2 Getting Started
ADDRESS
DMC-3425
Step 7. Make connections to amplifier and encoder
Sending Test Commands to the Terminal
Step C. Connect the encoders
Step 8a. Connect Standard Servo Motor
Check the Polarity of the Feedback Loop
Inverting the Loop Polarity
Power Supply
Motor
22 • Chapter 2 Getting Started
DMC-3425
Step A. Disable the motor amplifier
If Hall Sensors are Available
If Hall Sensors are Not Available
If Hall Sensors are Not Available
If Hall Sensors are Available
Step 8c. Connect Step Motors
Step 9. Tune the Servo System
Step 10. Configure the Distributed Control System
Configuring Operation for Distributed Control
Manual Slave IP configuration with HC command
Automatic Configuration Example
Manual Configuration of Distributed Control
Instruction
Interpretation
Manual Configuration Example
Design Examples
Example 1 - System Set-up
Example 2 - Profiled Move
Example 3 - Position Interrogation
Example 5 - Velocity Control Jogging
Example 6 - Operation Under Torque Limit
Example 7 - Interrogation
Example 8 - Operation in the Buffer Mode
Example 10 - Motion Programs with Loops
Example 9 - Motion Programs
Example 11- Motion Programs with Trippoints
Example 12 - Control Variables
Example 13 - Control Variables and Offset
36 • Chapter 2 Getting Started
DMC-3425
Chapter 3 Connecting Hardware
Using Inputs
Limit Switch Input
Overview
Home Switch Input
Abort Input
38 • Chapter 3 Connecting Hardware
DMC-3425
Amplifier Interface
Uncommitted Digital Inputs
TTL Inputs
Analog Inputs
DMC-3425
AMPEN
TTL Outputs
42 • Chapter 3 Connecting Hardware
THIS PAGE LEFT BLANK INTENTIONALLY
DMC-3425
RS-232Configuration
Chapter 4 Communication
RS232 Port
RS232 - Port 1 DATATERM
Ethernet Configuration
Communication Protocols
Addressing
Handshaking Modes
Ethernet Handles
Global vs. Local Operation
LOCAL OPERATION
GLOBAL OPERATION
46 • Chapter 4 Communication
DMC-3425
Accessing the I/O of the Slaves
Operation of Distributed Control
Handling Communication Errors
Multicasting
Digital Outputs
Digital Inputs
Unsolicited Message Handling
IOC-7007Support
Function Code
Modbus Support
Definition
Handle Switching
Handle Restore on Communication Failure
Other Communication Options
User Defined Ethernet Variables
Data Record Map
Data Record
Waiting on Handle Responses
DMC-3425
general output bank 2 DB-14064
Chapter 4 Communication•
54 Chapter 4 Communication
DMC-3425
Axis Switch Information 1 Byte
Header Information - Byte 0, 1 of Header
Bytes 2, 3 of Header
General Status Information 1 Byte
Notes Regarding Velocity and Torque Information
QZ Command
Axis Status Information 2 Byte
Using Third Party Software
58 • Chapter 4 Communication
THIS PAGE LEFT BLANK INTENTIONALLY
DMC-3425
Command Syntax - ASCII
Chapter 5 Command Basics
Introduction
Command Syntax - Binary
Coordinated Motion with more than 1 axis
Binary Command Format
Byte
Header Format
Byte
Datafields Format
Binary command table
Example
Controller Response to DATA
Interrogation Commands
Summary of Interrogation Commands
Interrogating Current Commanded Values
Interrogating the Controller
Command Summary
THIS PAGE LEFT BLANK INTENTIONALLY
66 • Chapter 5 Command Basics
DMC-3425
Chapter 6 Programming Motion
Overview
Global vs. Local Operation
DMC-3425
Commands
Mode of Motion
Basic description
Global
Independent Axis Positioning
Command Summary - Independent Axis
Operand Summary - Independent Axis
Examples
Absolute Position Movement
VELOCITY
COUNTS/SEC
20000
15000
Command Summary - Jogging
Independent Jogging
Jog in A and C axes
Operand Summary - Independent Axis
Specifying Linear Segments
Linear Interpolation Mode Local Mode
Joystick Jogging
Additional Commands
Specifying Vector Speed for Each Segment
Operand Summary - Linear Interpolation
Command Summary - Linear Interpolation
Changing Feedrate
Example
Example - Linear Move
Linear Interpolation Motion
VS = VA 2 + VB
Example - Multiple Moves
Figure 6.2 - Linear Interpolation
Instruction
Interpretation
78 • Chapter 6 Programming Motion
Specifying Vector Segments
DMC-3425
Specifying Vector Speed for Each Segment
Additional commands
Changing Feedrate
Operand Summary - Coordinated Motion Sequence
Command Summary - Coordinated Motion Sequence
Trippoints
C -4000,3000D 0,3000 R =
B -4000,0
A 0,0
Example
Command Summary - Electronic Gearing
Electronic Gearing Local Mode
Example - Electronic Gearing
Example - Gantry Mode
Electronic Cam Local Mode
EAp where p = A,B p is the selected master axis
EM a,b
ET0=,0 ET1=,3000 ET2=,2250 ET3=,1500
3000 2250 1500
2000
4000
6000
This is done with the program
88 • Chapter 6 Programming Motion
DMC-3425
Contour Mode Local Mode
Specifying Contour Segments
Instruction
Description
POSITION
COUNTS
Command Summary - Contour Mode
Operand Summary - Contour Mode
General Velocity Profiles
Generating an Array - An Example
Contour Mode Example
Teach Record and Play-Back
Record and Playback Example
DMC-3425
Chapter 6 Programming Motion•
Virtual Axis Local Mode
Commands
Mode of Motion
Virtual Axis usage
Stepper Motor Operation
Ecam Master Example
Sinusoidal Motion Example
Specifying Stepper Motor Operation
Monitoring Generated Pulses vs. Commanded Pulses
Stepper Motor Smoothing
96 • Chapter 6 Programming Motion
DMC-3425
Using an Encoder with Stepper Motors
Command Summary - Stepper Motor Operation
Motion Complete Trippoint
Operand Summary - Stepper Motor Operation
Using the CE Command
Additional Commands for the Auxiliary Encoder
Dual Loop Auxiliary Encoder
Backlash Compensation
Sampled Dual Loop
Continuous Dual Loop
Example
Motion Smoothing
Using the IT and VT Commands
Example
ACCELERATION TIME VELOCITY TIME ACCELERATION WITH
Homing
SMOOTHING TIME VELOCITY WITH SMOOTHING TIME
102 Chapter 6 Programming Motion
Example
DMC-3425
DMC-3425
HOME SWITCH
Chapter 6 Programming Motion•
High Speed Position Capture Latch
Command Summary - Homing Operation
Operand Summary - Homing Operation
Example
#Latch
DMC-3425
Chapter 6 Programming Motion•
106 • Chapter 6 Programming Motion
THIS PAGE LEFT BLANK INTENTIONALLY
DMC-3425
Global vs. Local Programming
Chapter 7 Application Programming
Overview
Edit Mode Commands
Entering Programs
Using Labels in Programs
Program Format
Valid labels
Invalid labels
Special Labels
NO Command and the Apostrophe ‘
Commenting Programs
REM Command
Executing Programs - Multitasking
Debugging Programs
Trace Command
Error Code Command
Stop Code Command
RAM Memory Interrogation Commands
Breakpoints and single stepping
EEPROM Memory Interrogation Operands
Error Condition
Operands
Program Flow Commands
Event Triggers & Trippoints
DMC-3425Event Triggers
Example- Multiple Move Sequence
116 • Chapter 7 Application Programming
DMC-3425
Example- Repetitive Position Trigger
Example- Set Output after Distance
Example - Start Motion on Input
Example - Set Output when At Speed
Example - Change Speed along Vector Path
Example - Multiple Move with Wait
118 • Chapter 7 Application Programming
Command Format - JP and JS
Example- Define Output Waveform Using AT
Conditional Jumps
Example using variables named V1, V2, V3 and
Logical operators
Conditional Statements
Multiple Conditional Statements
If, Else, and Endif
Using the IF and ENDIF Commands
Examples
Using the ELSE Command
Command Format - IF, ELSE and ENDIF
Nesting IF Conditional Statements
122 • Chapter 7 Application Programming
Subroutines
Auto-Startand Auto Error Routine
Stack Manipulation
Example - Position Error
Example - Limit Switch
Automatic Subroutines for Monitoring Conditions
Example - Command Error
Example - Motion Complete Timeout
Example - Input Interrupt
Example - Command Error w/Multitasking
OPERAND
FUNCTION
Instruction
Mathematical and Functional Expressions
Example – Ethernet Communication Error
Mathematical Operators
128 • Chapter 7 Application Programming
Bit-WiseOperators
DMC-3425
Variables
Functions
Assigning Values to Variables
Programmable Variables
Displaying the value of variables at the terminal
Operands
Example - Using Variables for Joystick
Special Operands
Arrays
Defining Arrays
Assignment of Array Entries
Examples
Using a Variable to Address Array Elements
Automatic Data Capture into Arrays
Command Summary - Automatic Data Capture
Data Types for Recording
Operand Summary - Automatic Data Capture
Example - Recording into An Array
Outputting Numbers and Strings
Deallocating Array Space
Sending Messages
Specifying the Port for Messages
Formatting Messages
Using the MG Command to Configure Terminals
Example
Summary of Message Functions
Displaying Variables and Arrays
Interrogation Commands
Example
Formatting Variables and Array Elements
Local Formatting of Variables
Hardware I/O
Converting to User Units
Digital Outputs
Example- Set Bit and Clear Bit
Example - Using Inputs to control program flow
Example - Start Motion on Switch
Digital Inputs
Example- Output Port
Input Interrupt Function
Analog Inputs
Example - Position Follower Point-to-Point
Example - Input Interrupt
Extended I/O of the DMC-3425Controller
Configuring the I/O of the DMC-3425
Example - Position Follower Continuous Move
Accessing Extended I/O
8-BitI/O
Block
Binary Representation
Example Applications
Wire Cutter
Interfacing to Grayhill or OPTO-22G4PB24
146 Chapter 7 Application Programming
A-B X-YTable Controller
DMC-3425
1 inch = 40,000 counts and the speeds of
Speed Control by Joystick
Position Control by Joystick
150 • Chapter 7 Application Programming
THIS PAGE LEFT BLANK INTENTIONALLY
DMC-3425
Chapter 8 Hardware & Software Protection
Hardware Protection
Output Protection Lines
Introduction
Software Protection
Input Protection Lines
Programmable Position Limits
Example
Off-On-Error
Automatic Error Routine
Example
Examples
Limit Switch Routine
Limit Switch Example
Installation
Chapter 9 Troubleshooting
Overview
Communication
Stability
Operation
156 • Chapter 9 Troubleshooting
Chapter 10 Theory of Operation
Overview
COMPUTER
CONTROLLER
LEVEL
Operation of Closed-LoopSystems
Figure 10.3 - Velocity and Position Profiles
System Modeling
CONTROLLER
Motor-Amplifier
Voltage Drive
PV = KV Kt SSTm + 1STe +
= RJ
Velocity Loop
CURRENT SOURCE
VOLTAGE SOURCE
VELOCITY LOOP
Digital Filter
KZ − A
1 − B
Z − B
System Analysis
Page
System Design and Compensation
The Analytical Method
Ms = P/I = Kt/Js2 = 1000/s2 Amp
However, since As = Ls Gs
Equivalent Filter Form
Electrical Specifications
Performance Specifications
Power Requirements
Appendices
Connectors for DMC-3425
J3 DMC-3425General I/O; 37- PIN D-type
J5 POWER; 6 PIN MOLEX
J3 DMC-3425-StepperGeneral I/O; 37- PIN D-type
Pin-OutDescription
J1 RS232 Main port: DB-9Pin Male
Features
ICM-1460Interconnect Module
Specifications
176 • Appendices
DMC-3425
Opto-IsolationOption for ICM-1460
Opto-isolatedinputs
Opto-isolatedoutputs
ICM-1460
TO CONTROLLER
CONNECTIONS
Configuring the I/O of the DMC-3425with DB-14064
64 Extended I/O of the DMC-3425Controller
Accessing extended I/O
Connector Description
Signal
J6 50-PINIDC
Block
J8 50-PINIDC
Block
Bit @INn
Bit No
Description
184 • Appendices
Overview
DMC-3425
Configuring Hardware Banks
Digital Inputs
Input Circuit
Sinking
Sourcing
Sinking
Figure A-6
High Power Digital Outputs
Figure A-7
Output Command
Standard Digital Outputs
Result
Electrical Specifications
High Power Digital Outputs
Standard Digital Outputs
Digital Inputs
Relevant DMC Commands
Screw Terminal Listing
DMC-3425
I/O65
Appendices•
192 • Appendices
DMC-3425
Coordinated Motion - Mathematical Analysis
1000
2000
2000
Velocity
time s
Lk = Xk 2 + Yk
Lk = Rk ΔΘk 2π
100000
= 0.05s
2000000
Ts = VSD − Ta = 10000035708 - 0.05 = 0.307s
List of Other Publications
Training Seminars
MOTION CONTROL MADE EASY
ADVANCED MOTION CONTROL
Contacting Us
Galil Motion Control
DMC-3425
Appendices
WARRANTY
Index
Differential Encoder, 19, 21,
Jumper,
SDK, 27,