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