USER MANUAL
DMC-1700/1800
By Galil Motion Control, Inc
Manual Rev. 1.2m
Using This Manual
1X80
Chapter 1 Overview
Contents
Contents
Chapter 2 Getting Started
Chapter 5 Command Basics
Chapter 3 Connecting Hardware
Chapter 4 - Software Tools and Communications
Chapter 6 Programming Motion
Chapter 7 Application Programming
Chapter 10 Theory of Operation
Chapter 9 Troubleshooting
Chapter 8 Hardware & Software Protection
Appendices
Index
Chapter 1 Overview
Introduction
DMC-1700/1800Functional Elements
Stepper Motor with Step and Direction Signals
Overview of Motor Types
Brushless Servo Motor with Sinusoidal Commutation
Communication
Microcomputer Section
Motor Interface
General I/O
Amplifier Driver
System Elements
Motor
Encoder
Watch Dog Timer
THIS PAGE LEFT BLANK INTENTIONALLY
6 • Chapter 1 Overview
JP3 J1 JP8
Chapter 2 Getting Started
J5 4 JP5 JP4 JP9
J6J8
8 • Chapter 2 Getting Started
Elements You Need
Standard Servo Motor Operation
Installing the DMC-1700/1800
Step 1. Determine Overall Motor Configuration
Sinusoidal Commutation
Stepper Motor Operation
Step 2. Install Jumpers on the DMC-1700/1800
Master Reset and Upgrade Jumpers
Opto Isolation Jumpers
Optional IRQ Interrupt Jumpers
DRQ 0 DACK
DRQ 1 DACK
Optional Motor Off Jumpers
Using Win98SE, ME, NT4.0, 2000, and XP
Step 3. Install the Communications Software
Configuring the Address Jumpers on the DMC-1700
Using DOS
DMC-1800Install
Step 4. Install the DMC-1700/1800in the PC
DMC-1700Install
Using Galil Software for DOS DMC-1700only
only
1.On the first dialog, select Add/Troubleshoot
2.Let the Hardware Wizard try to detect a new Plug and Play device
18 • Chapter 2 Getting Started
Automatically Assigned resources in Win 98 SE
Device Manager in Win 98 SE
20 Chapter 2 Getting Started
Changing the Resources in Win 98 SE
Edit Input/Output Range in Win 98 SE
Using Galil Software for Windows NT
22 Chapter 2 Getting Started
Once in the Galil Registry, click New Controller under Non-PnPTools. Select the appropriate controller from the pull down menu and adjust the timeout as seen fit. Click Next to continue
Notes on Configuring Sinusoidal Commutation
Sending Test Commands to the Terminal
BAXZ
Step 7. Make Connections to Amplifier and Encoder
1X80
Step D. Verify proper encoder operation
Step 8a. Connect Standard Servo Motors
Check the Polarity of the Feedback Loop
Inverting the Loop Polarity
DMC-1700/1800
DC Power Supply
DC Servo Motor
Chapter 2 Getting Started •
30 • Chapter 2 Getting Started
Step 8b. Connect Sinusoidal Commutation Motors
If Hall Sensors are Not Available
If Hall Sensors are Available
If Hall Sensors are Not Available
Step 8C. Connect Step Motors
If Hall Sensors are Available
Step 9. Tune the Servo System
Example 2 - Profiled Move
Design Examples
Example 1 - System Set-up
TE X CR
Example 4 - Independent Moves
Example 3 - Multiple Axes
Example 5 - Position Interrogation
Example 7 - Velocity Control
after a few seconds, command
Example 6 - Absolute Position
Example 8 - Operation Under Torque Limit
Example 10 - Operation in the Buffer Mode
Example 11 - Using the On-BoardEditor
Example 9 - Interrogation
The instruction
Example 13 - Motion Programs with Trippoints
To start the program, command
Example 12 - Motion Programs with Loops
Example 14 - Control Variables
Instruction
Example 15 - Linear Interpolation
Example 16 - Circular Interpolation
Interpretation
R=2000
0,4000
4000,4000
4000,0
THIS PAGE LEFT BLANK INTENTIONALLY
42 • Chapter 2 Getting Started
Limit Switch Input
Chapter 3 Connecting Hardware
Using Optoisolated Inputs
Overview
44 • Chapter 3 Connecting Hardware
Home Switch Input
Abort Input
1X80
Wiring the Optoisolated Inputs
Uncommitted Digital Inputs
17X8
Using an Isolated Power Supply
Amplifier Interface
Analog Inputs
Bypassing the Opto-Isolation
DMC-1700/1800
TTL Inputs
TTL Outputs
ICM-1900/2900
1X80
50 • Chapter 3 Connecting Hardware
THIS PAGE LEFT BLANK INTENTIONALLY
DMC-1700/1800
Chapter 4 - Software Tools and Communications
Chapter 4 - Software Tools and Communications •
Figure 4.1 - Software Communications Hierarchy
Galil SmartTERM
Figure 4.2 - Galil SmartTERM
Download Array
DMC Program Editor Window
DMC Data Record Display
Figure 4.3 - Data Record Display for a DMC-1840
Galil Registry Editor
Communication Settings for ISA and PCI
Setting Communications Parameters and Methods
Figure 4.4 - Galil Registry Editor
Advanced communications settings are available under the Communications Method tab to allow different methods of communications to be utilized shown in Fig 4.6. The version 7 and higher drivers and .DLL’s allow for three different methods of communications: Interrupt, Stall, and Delay
Data Record Cache Depth
Stall Thread and Delay Thread Methods
Interrupt Communications Method
Data Record Refresh Rate
Figure 4.7 - DMC-1700Data Record Parameters
Figure 4.8 - DMC-1800Data Record Parameters
Windows Servo Design Kit WSDK
Figure 4.9- WSDK Main Screen
DMCWin Programmers Toolkit
Creating Custom Software Interfaces
ActiveX Toolkit
Galil Communications API with C/C++
Galil Communications API with Visual Basic
End Sub
Controller Event Interrupts and User Interrupts
Enabling Event Interrupts EI command
DOS, Linux, and QNX tools
Linux
User Interrupts UI command
Servicing Interrupts
Hardware Level Communications for ISA and PCI
Communications with the DMC-1700
Communication with DMC-1700
Simplified Communications Procedure
Control Register N+1
Interrupt Service for the DMC-1700
Reading the Data Record using the Polling FIFO
Secondary FIFO Registers
Polling FIFO Mode Read Procedure
Communications with the DMC-1800
Operation
DEVICE ID
Simplified Communication Procedure
PCI Device Identification
VENDOR ID
Reading the Data Record from the Secondary FIFO
FIFO Control Register at N+4
Half Full Flag
Enabling and Reading IRQ’s
Reset Register at N+8
DMA / Secondary FIFO / DPRAM Memory Map
general output block 6 outputs
DMC-1700/1800
128-131
Chapter 4 - Software Tools and Communications •
General Status Information 1 Byte
Axis Switch Information 1 Byte
Axis Status Information 1 Word
Page
THIS PAGE LEFT BLANK INTENTIONALLY
Command Syntax - ASCII
Chapter 5 Command Basics
Introduction
Coordinated Motion with more than 1 axis
Command Syntax - Binary
1X80
Datafields Format
Binary Command Format
Header Format
A7 02 00 05 03 E8 FE 0C
Binary command table
Example
Controller Response to DATA
Interrogation Commands
Summary of Interrogation Commands
Interrogating the Controller
Operands
Interrogating Current Commanded Values
Command Summary
V=_TPX
DMC-1700/1800
Chapter 6 Programming Motion
1X80
Chapter 6 Programming Motion •
86 • Chapter 6 Programming Motion
Independent Axis Positioning
Command Summary - Independent Axis
Operand Summary - Independent Axis
Required Motion Profiles
Example - Absolute Position Movement
Example - Multiple Move Sequence
88 • Chapter 6 Programming Motion
COUNTS/SEC
Command Summary - Jogging
VELOCITY
20000
Example - Jog in X only
Position Tracking
Operand Summary - Independent Axis
Example - Joystick Jogging
COMMAND
Example - Motion
92 Chapter 6 Programming Motion
Figure 3 Velocity vs Time msec Motion
Example Motion
Figure 4 Position vs. Time msec Motion
Trip Points
94 • Chapter 6 Programming Motion
Linear Interpolation Mode
Command Summary - Position Tracking Mode
Specifying Linear Segments
An Example of Linear Interpolation Motion
Additional Commands
Specifying Vector Speed for Each Segment
Changing Feedrate
Command Summary - Linear Interpolation
Operand Summary - Linear Interpolation
DMC-1700/1800
Example - Linear Move
VS = VZ 2 + VW
DMC-1700/1800
Example - Multiple Moves
Figure 6.2 - Linear Interpolation
Chapter 6 Programming Motion •
Specifying Vector Segments
Specifying the Coordinate Plane
100 • Chapter 6 Programming Motion
Specifying Vector Speed for Each Segment
Additional commands
Changing Feedrate
Example
Trippoints
Tangent Motion
102 Chapter 6 Programming Motion
Operand Summary - Coordinated Motion Sequence
Command Summary - Coordinated Motion Sequence
Example
B -4000,0
Electronic Gearing
C -4000,3000D 0,3000 R =
A 0,0
Ramped Gearing
GA Z, Z
MO Z
Turn Z off, for external master
Specify Z as the master axis for both X and Y
Example - Electronic Gearing
Command Summary - Electronic Gearing
Example - Simple Master Slave
Example - Gantry Mode
Electronic Cam
EP m,n
EM x,y,z,w
EM 6000,1500
EP 2000,0
4000
3000 2250 1500
2000
6000
INSTRUCTION
Command Summary - Electronic CAM
command
INTERPRETATION
Example - Electronic CAM
command
Operand Summary - Electronic CAM
description
Contour Mode
Specifying Contour Segments
COUNTS
Additional Commands
POSITION
TIME ms
General Velocity Profiles
Command Summary - Contour Mode
ω= ΑΒ 1 − cos2π Β Χ= ATB − 2Aπ sin2π B
Generating an Array - An Example
Contour Mode Example
DMC-1700/1800
Teach Record and Play-Back
Record and Playback Example
Chapter 6 Programming Motion •
ECAM Master Example
Virtual Axis
Sinusoidal Motion Example
Specifying Stepper Motor Operation
Monitoring Generated Pulses vs Commanded Pulses
Stepper Motor Operation
Stepper Motor Smoothing
Operand Summary - Stepper Motor Operation
Using an Encoder with Stepper Motors
Command Summary - Stepper Motor Operation
Motion Complete Trippoint
Internal Controller Commands user can query
Stepper Position Maintenance Mode SPM
Error Limit
QS = TD − TP ⋅ YA ⋅ YB YC
Full-SteppingDrive, X axis
Example: SPM Mode Setup
Correction
Half-SteppingDrive, X axis
DMC-1700/1800
Example Error Correction
Chapter 6 Programming Motion •
Example: Friction Correction
124 • Chapter 6 Programming Motion
Dual Loop Auxiliary Encoder
Using the CE Command
CE Additional Commands for the Auxiliary Encoder
DE 0,500,-30,300
Sampled Dual Loop - Example
Backlash Compensation
Continuous Dual Loop - Example
V1= _DEX
Motion Smoothing
Using the IT and VT Commands
Example - Smoothing
Using the KS Command Step Motor Smoothing
ACCELERATION VELOCITY ACCELERATION VELOCITY
Stage
Homing
Stage
Stage
Interpretation
Example: Homing
Instruction
130 • Chapter 6 Programming Motion
SWITCH
Operand Summary - Homing Operation
Command Summary - Homing Operation
High Speed Position Capture The Latch Function
Example Find Edge
Fast Update Rate Mode
Dual Velocity DV Peak Torque Limit TK
Pole PL Analog Feedback AF
DMA channel
Notch Filter NB, NF, NZ Second field of EI
Using the DMC-1700/1800Editor to Enter Programs
Chapter 7 Application Programming
Overview
Program Format
Edit Mode Commands
Using Labels in Programs
Valid labels
Special Labels
Using the command, NO or Apostrophe ‘
Commenting Programs
XQ #A, n
Executing Programs - Multitasking
HX n
Stop Code Command
Trace Commands
Error Code Command
RAM Memory Interrogation Commands
Operands
Program Flow Commands
Debugging Example
Event Triggers & Trippoints
Function
Command
DMC-1700and DMC-1800Event Triggers
142 • Chapter 7 Application Programming
Event Trigger - Set Output after Distance
Event Trigger Examples
Event Trigger - Multiple Move Sequence
Event Trigger - Repetitive Position Trigger
Event Trigger - Change Speed along Vector Path
Event Trigger - Set output when At speed
Event Trigger - Start Motion on Input
144 • Chapter 7 Application Programming
Conditional Jumps
Define Output Waveform Using AT
Event Trigger - Multiple Move with Wait
Conditional Statements
Command Format - JP and JS
Logical operators
Multiple Conditional Statements
Example Using JP command
Using If, Else, and Endif Commands
Using the JP Command
Using the IF and ENDIF Commands
Example using IF, ELSE and ENDIF
Using the ELSE Command
Command Format - IF, ELSE and ENDIF
Nesting IF Conditional Statements
Auto-StartRoutine
Subroutines
Stack Manipulation
Automatic Subroutines for Monitoring Conditions
Example - Position Error
Example - Limit Switch
Notes regarding the #LIMSWI Routine
DMC-1700/1800
Example - Motion Complete Timeout
Example - Input Interrupt
Chapter 7 Application Programming •
Example - Command Error
Example - Command Error w/Multitasking
Mathematical Operators
Mathematical and Functional Expressions
Bit-WiseOperators
Functions
154 • Chapter 7 Application Programming
POSX
Variables
Programmable Variables
Assigning Values to Variables
Operands
Example - Using Variables for Joystick
Displaying the value of variables at the terminal
Defining Arrays
Arrays
Special Operands Keywords
Examples of Internal Variables
Using a Variable to Address Array Elements
Assignment of Array Entries
Automatic Data Capture into Arrays
Command Summary - Automatic Data Capture
Data Types for Recording
Operand Summary - Automatic Data Capture
Deallocating Array Space
Input of Data
Example - Recording into An Array
Cut-to-LengthExample
Output of Data Numeric and String
Sending Messages
Inputting String Variables
MG STR S3
Using the MG Command to Configure Terminals
Formatting Messages
The Final Value is
Summary of Message Functions
Interrogation Commands
Displaying Variables and Arrays
MG ^07 ^255
Example - Using the LZ command
PF m.n
Local Formatting of Variables
Formatting Variables and Array Elements
Converting to User Units
VF m.n
Hardware I/O
Digital Outputs
Input Interrupt Function
Example - Start Motion on Switch
Digital Inputs
Example - Turn on output after move
Examples - Input Interrupt
Analog Inputs
Example - Position Follower Point-to-Point
4000/2π = 637 count/inch
Wire Cutter
Example - Position Follower Continuous Move
INSTRUCTION
X-YTable Controller
1 inch = 40,000 counts
CR 80000,270,-360
Speed Control by Joystick
DMC-1700/1800
Speed = 20000 x VIN
Chapter 7 Application Programming •
INSTRUCTION
Position Control by Joystick
Backlash Compensation by Sampled Dual-Loop
FUNCTION
INSTRUCTION
Example motion program
FUNCTION
THIS PAGE LEFT BLANK INTENTIONALLY
176 • Chapter 7 Application Programming
Hardware Protection
Chapter 8 Hardware & Software Protection
Introduction
Output Protection Lines
Software Protection
Programmable Position Limits
Automatic Error Routine
Off-On-Error
Limit Switch Routine
180 • Chapter 8 Hardware & Software Protection
Installation
Chapter 9 Troubleshooting
Overview
182 • Chapter 9 Troubleshooting
SYMPTOM
SYMPTOM
DIAGNOSIS
DIAGNOSIS
SYMPTOM
Chapter 9 Troubleshooting •
CAUSE
184 • Chapter 9 Troubleshooting
THIS PAGE LEFT BLANK INTENTIONALLY
CONTROLLER
Chapter 10 Theory of Operation
COMPUTER
DRIVER
LEVEL
Operation of Closed-LoopSystems
Figure 10.3 - Velocity and Position Profiles
System Modeling
CONTROLLER
PV = KV Kt SSTm + 1STe +
Motor-Amplifier
Voltage Drive
= RJ
Velocity Loop
T1 = J/Ka Kt Kg
CURRENT SOURCE
VOLTAGE SOURCE
VELOCITY LOOP
1 − B
Digital Filter
KZ − A
Z − B
System Analysis
Digital Filter
Encoder
Dz = 1030 z-0.95/Z
α= 76 - 180 - 6 =
System Design and Compensation
The Analytical Method
PM = 180 + α =
Motor
Kd = 10/32768 =
P = 4 ∗ KP
Gs = P + sD
G = 82.4 + 0.2744s
4 ∗ KD = D/T
Equivalent Filter Form
DMC-1700/1800
Servo Control
Appendices
Electrical Specifications
Stepper Control
Performance Specifications
Power
100-PINHIGH DENSITY
J1 DMC-1740/1840 A-DAXES MAIN
J5-DMC-1740/1840 A-DAXES
AUXILIARY ENCODERS; 26-PINIDC
J7 DMC-1780/1880
J8 DMC-1780/1880
J6 DMC-1780/1880
E-HAXES MAIN
Pin-OutDescription for DMC-1700/1800
Outputs
PWM/STEP OUT Sign/Direction Error
Inputs
Setting Addresses for the DMC-1700
Standard Addresses
JPR A7
Address
JPR A8
JPR A6
JPR A7
Address
JPR A8
JPR A6
Plug and Play Addresses
Communications Jumpers
Accessories and Options
210 • Appendices
ICM-1900Interconnect Module
PC/AT Interrupts and Their Vectors
These occur on the first
Features
DMC-1700/1800
MOCMDX
Appendices •
214 • Appendices
Features
AMP-19X0Mating Power Amplifiers
Figure A.1 – ICM-1900Dimensions
Specifications
Block 4 PIN
ICM-2900Interconnect Module
Mounting: Keyholes --¼” ∅ Gain: 1 amp/V
Label
DMC-1700/1800
RLSZ
Appendices •
218 • Appendices
FROM CONTROLLER
Figure A.2 – Opto Output Circuit
ICM-1900 / ICM-2900 CONNECTIONS
CO n
Accessing extended I/O
OP m,a,b,c,d
J6 50-PINIDC
Connector Description
OP 7,,,,7
MG @IN17
222 • Appendices
Block
Signal
J8 50-PINIDC
Bit @INn
Description
Overview
Figure A.3 – IOM-1964Layout
Configuring Hardware Banks
Figure A.4 – CB-50-80and CB-50-100Bracket Layout
Figure A.5 – IOM-1964Chip Configuration Layout
Digital Inputs
Figure A.6 – Opto Input Circuit
Figure A.7 – Input Sinking and Sourcing Diagram
Figure A.8 – Output Sinking and Sourcing Diagram
Input Circuit
Figure A.9 - High Current Output Circuit
High Power Digital Outputs
Figure A.10 – Typical Load Connection
Standard Digital Outputs
Output Command
Figure A.11 – Output Circuit Diagram
Result
Output Command
Electrical Specifications
High Power Digital Outputs
Digital Inputs
REV A+B
Relevant DMC Commands
Screw Terminal Listing
REV C
DMC-1700/1800
I/O64
Appendices •
Vs = Vx 2 + Vy
Coordinated Motion - Mathematical Analysis
234 • Appendices
Page
Lk = Xk 2 + Yk
Velocity
time s
100000
Vx =
DMC-1700/DMC-1000Comparison
Vy = Vs
time
List of Other Publications
ADVANCED MOTION CONTROL
Training Seminars
MOTION CONTROL MADE EASY
PRODUCT WORKSHOP
Internet address: support@galilmc.com
WARRANTY
Contacting Us
COPYRIGHT
Index
Compensation
Gear Ratio 104–7 Gearing 85–86, 104–8
Quit
Stop