DMC-1700/1800
1X80 17X8
Using This Manual
Contents
Ii Contents
Connecting Hardware
Programming Motion
Application Programming 135
Iv Contents
Troubleshooting 181
Vi Contents
DMC-1700/1800 Overview
Introduction
DMC-1700/1800 Functional Elements
Standard Servo Motor with +/- 10 Volt Command Signal
Stepper Motor with Step and Direction Signals
Overview of Motor Types
General I/O
Microcomputer Section
Motor Interface
Communication
Encoder
System Elements
Motor
Amplifier Driver
Watch Dog Timer
This page Left Blank Intentionally
DMC-1700/1800 Getting Started
DMC-17x0 and DMC-18x0 Motion Controllers
JP1 JP3
RAM
JP8
Elements You Need
JP5
JP6
Sinusoidal Commutation
Installing the DMC-1700/1800
Determine Overall Motor Configuration
Standard Servo Motor Operation
Install Jumpers on the DMC-1700/1800
Optional Motor Off Jumpers
Optional IRQ Interrupt Jumpers
Install the Communications Software
Using Galil Software for DOS DMC-1700 only
Install the DMC-1700/1800 in the PC
DMC-1700 Install
DMC-1800 Install
Using Galil Software for Windows 98 SE, ME, XP,
On the first dialog, select Add/Troubleshoot
DMC-1700/1800 Getting Started
Getting Started
Automatically Assigned resources in Win 98 SE
Device Manager in Win 98 SE
Edit Input/Output Range in Win 98 SE
Using Galil Software for Windows NT
DMC-1700/1800 Getting Started
Determine the Axes to be Used for Sinusoidal Commutation
Sending Test Commands to the Terminal
Make Connections to Amplifier and Encoder
Getting Started
Check the Polarity of the Feedback Loop
Connect Standard Servo Motors
BGX CR
Inverting the Loop Polarity
DC Power Supply
Getting Started
Baxz
Connect Sinusoidal Commutation Motors
If Hall Sensors are Not Available
If Hall Sensors are Available
AMX
Connect Step Motors
TE X CR
Tune the Servo System
Instruction Interpretation
Design Examples
Example 1 System Set-up
Example 2 Profiled Move
Example 3 Multiple Axes
Example 4 Independent Moves
Example 5 Position Interrogation
Example 6 Absolute Position
Example 7 Velocity Control
Example 8 Operation Under Torque Limit
Line # Instruction Interpretation
Example 10 Operation in the Buffer Mode
Example 11 Using the On-Board Editor
Example 9 Interrogation
BGY
Example 12 Motion Programs with Loops
Example 13 Motion Programs with Trippoints
Example 14 Control Variables
Example 16 Circular Interpolation
Example 15 Linear Interpolation
4000
This page Left Blank Intentionally
Overview
Using Optoisolated Inputs
Limit Switch Input
DMC-1700/1800 Connecting Hardware
Abort Input
Home Switch Input
Uncommitted Digital Inputs
Wiring the Optoisolated Inputs
Optoisolated Inputs
Using an Isolated Power Supply
Analog Inputs
Amplifier Interface
Bypassing the Opto-Isolation
TTL Outputs
TTL Inputs
DMC-1700/1800 Connecting Hardware
This page Left Blank Intentionally
DMC-1700/1800 Software Tools and Communications
Software Tools and Communications
DMC-1800 FIFO, DPRAM, IRQ DMC-1700 FIFO, DMA, IRQ
Galil SmartTERM
Galil SmartTERM
Recent enough to support the QU command
DMC Program Editor Window
Data Record Display for a DMC-1840
Communication Settings for ISA and PCI
Setting Communications Parameters and Methods
Galil Registry Editor
General Communications Parameters Dialog
Data Record Refresh Rate
Stall Thread and Delay Thread Methods
Interrupt Communications Method
Data Record Cache Depth
DMC-1700 Data Record Parameters
Wsdk Main Screen
Windows Servo Design Kit Wsdk
Galil Communications API with C/C++
Creating Custom Software Interfaces
Declare Functions
Sending Commands in VB
End Sub
Linux
Enabling Event Interrupts EI command
DOS, Linux, and QNX tools
Controller Event Interrupts and User Interrupts
Bit number Input
Bit Number Condition
Hardware Level Communications for ISA and PCI
Communications with the DMC-1700
Status Byte hex Condition
Register Address Read/Write Description
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
Polling Fifo Mode Read Procedure
Secondary Fifo Registers
Determining the Base Address
Communication with DMC-1800
Simplified Communication Procedure
PCI Device Identification
Read, Write, and Control Registers
Enabling and Reading IRQ’s
Fifo Control Register at N+4
Half Full Flag
Reading the Data Record from the Secondary Fifo
Write
Reset Register at N+8
Dual Port RAM Dpram access for reading the Data Record
DMA / Secondary Fifo / Dpram Memory Map
General output block 6 outputs
DMC-1700/1800 Software Tools and Communications
BIT
Axis Switch Information 1 Byte
General Status Information 1 Byte
Axis Status Information 1 Word
DMC-1700/1800 Software Tools and Communications
This page Left Blank Intentionally
DMC-1700/1800 Command Basics
Command Syntax Ascii
Coordinated Motion with more than 1 axis
Command Syntax Binary
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
Interrogating Current Commanded Values
Command Summary
Operands
DMC-1700/1800 Programming Motion
VS,VA,VD
Command Summary Independent Axis
Independent Axis Positioning
Operand Summary Independent Axis
Example Multiple Move Sequence
Example Absolute Position Movement
Axis velocity profile
Command Summary Jogging
Command
Independent Jogging
Position Tracking
Example Jog in X only
Example Joystick Jogging
Command Description PT1
Position vs Time msec Motion
Example Motion
Velocity vs Time msec Motion
Velocity vs.Time Motion
Trip Points
Specifying Linear Segments
Linear Interpolation Mode
Command Summary Position Tracking Mode
Command Description
Additional Commands
An Example of Linear Interpolation Motion
Specifying Vector Speed for Each Segment
LM?
Command Summary Linear Interpolation
Operand Summary Linear Interpolation
Changing Feedrate
LM ZW
Example Linear Move
Example Multiple Moves
#LOAD
COUNT=0
Vector Mode Linear and Circular Interpolation Motion
Specifying the Coordinate Plane
Specifying Vector Segments
Additional commands
Compensating for Differences in Encoder Resolution
Trippoints
Tangent Motion
Command Summary Coordinated Motion Sequence
Operand Summary Coordinated Motion Sequence
Example
Required Path
Electronic Gearing
Ramped Gearing
Example Electronic Gearing Over a Specified Interval
MO Z
GA Z, Z
Example Electronic Gearing
Command Summary Electronic Gearing
Example Gantry Mode
Example Simple Master Slave
Electronic Cam
GA, CX
GA,X
EM 6000,1500
EP 2000,0
ET0=,0
EQ x,y,z,w
EG x,y,z,w
Command Description
Command Summary Electronic CAM
Example Electronic CAM
Operand Summary Electronic CAM
Specifying Contour Segments
Contour Mode
DT0CD0
CMX
Generating an Array An Example
Command Summary Contour Mode
Command CM Xyzw CM Abcdefgh
General Velocity Profiles
DIFC=POSD-POSC
Contour Mode Example
#POINTS
POSC=V4
Record and Playback Example
Teach Record and Play-Back
DT2
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
User Configurable Commands user can query & change
Stepper Position Maintenance Mode SPM
Error Limit
Internal Controller Commands user can query
Half-Stepping Drive, X axis
Example SPM Mode Setup
Correction
Full-Stepping Drive, X axis
#POSERR
Example Error Correction
#MOTION
#LOOPJP#LOOP
Example Friction Correction
DE 0,500,-30,300
Using the CE Command
Additional Commands for the Auxiliary Encoder
Dual Loop Auxiliary Encoder
V1= DEX
Backlash Compensation
Continuous Dual Loop Example
Sampled Dual Loop Example
JP#END,@ABSV22
Using the IT and VT Commands
Motion Smoothing
Example Smoothing
Trapezoidal velocity and smooth velocity profiles
Using the KS Command Step Motor Smoothing
Stage
Homing
Example Homing
#HOME
MG AT Home
Switch
Example Find Edge
Command Summary Homing Operation
High Speed Position Capture The Latch Function
Operand Summary Homing Operation
AL Y
Fast Update Rate Mode
Programming Motion
Using the DMC-1700/1800 Editor to Enter Programs
ED #BEGIN
DMC-1700/1800 Application Programming
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
DMC-1700 and DMC-1800 Event Triggers
AS X Y Z W S
Function
Event Trigger Repetitive Position Trigger
Event Trigger Examples
Event Trigger Multiple Move Sequence
Event Trigger Set Output after Distance
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-Start Routine
Example Position Error
Example Limit Switch
Example Input Interrupt
Example Motion Complete Timeout
Example Command Error w/Multitasking
Example Command Error
Mathematical and Functional Expressions
Mathematical Operators
Bit-Wise Operators
LEN1=FLEN&$00FF
Functions
ENTER,LENS6
FLEN=@FRACLEN
PR Posx
Variables
Programmable Variables
Assigning Values to Variables
Displaying the value of variables at the terminal
Example Using Variables for Joystick
Operands
Assigning Variable Values to Controller Parameters
Examples of Internal Variables
Arrays
Special Operands Keywords
Defining Arrays
Using a Variable to Address Array Elements
Assignment of Array Entries
Uploading and Downloading Arrays to On Board Memory
Command Summary Automatic Data Capture
Automatic Data Capture into Arrays
Data Types for Recording
Input of Data Numeric and String
Deallocating Array Space
Input of Data
Inputting String Variables
Output of Data Numeric and String
Sending Messages
Cut-to-Length Example
Using the MG Command to Configure Terminals
Formatting Messages
Final Value is
Displaying Variables and Arrays
Summary of Message Functions
MG 07
LZ1
Local Formatting of Response of Interrogation Commands
PF m.n
LZ0
VF m.n
Formatting Variables and Array Elements
Converting to User Units
Local Formatting of Variables
Digital Outputs
Hardware I/O
AI 1BGX
Example Start Motion on Switch
Digital Inputs
Input Interrupt Function
Analog Inputs
Examples Input Interrupt
Example Position Follower Point-to-Point
VER=VAR-TPX
Wire Cutter
Example Applications
Example Position Follower Continuous Move
Table Controller
Inch = 40,000 counts
JP #A
BGZ AMZ
CR 80000,270,-360
BGZ
AMZ
Speed Control by Joystick
Speed = 20000 x VIN
DP0
Position Control by Joystick
Backlash Compensation by Sampled Dual-Loop
JG VEL JP #B
Instruction
This page Left Blank Intentionally
DMC-1700/1800 Hardware & Software Protection
Hardware Protection
Output Protection Lines
Input Protection Lines
# Poserr
Signal or Function State if Error Occurs
Software Protection
Programmable Position Limits
#AJP #AEN
Off-On-Error
Automatic Error Routine
Limit Switch Routine
#LR MG Reverse Limit
JP#END
#LF
Stxamx
DMC-1700/1800 Troubleshooting
Installation
Stability
Communication
Operation
This page Left Blank Intentionally
DMC-1700/1800 Theory of Operation
Theory of Operation
Level
Velocity and Position Profiles
Operation of Closed-Loop Systems
Functional Elements of a Motion Control System
System Modeling
= 2 Ω
Motor-Amplifier
Voltage Drive
Current Drive
T1 = J/Ka Kt Kg
Velocity Loop
Voltage Source
Digital Filter
DAC
System Analysis
Motor
Amp
Encoder
Digital Filter
Dz = 1030 z-0.95/Z
PM = 180 + α =
System Design and Compensation
Analytical Method
= 76 180 6 =
Kd = 10/32768 =
KP =
= 4 ∗ KP
Equivalent Filter Form DMC-1700/1800
Input/Output
Electrical Specifications
Servo Control
Stepper Control
Power
Performance Specifications
J1 DMC-1740/1840 A-D Axes Main J5-DMC-1740/1840 A-D Axes
Connectors for DMC-1700/1800 Main Board
Axes Main PIN IDC Auxiliary Encoder
J8 DMC-1780/1880 J6 DMC-1780/1880 J7 DMC-1780/1880
Outputs
Pin-Out Description for DMC-1700/1800
PWM/STEP OUT
Inputs
Setting Addresses for the DMC-1700
Standard Addresses
HEX JPR A8 JPR A7 JPR A6 JPR A5 JPR A4 JPR A3 JPR A2
2DC
2AC
2BC
2CC
3AC
3BC
3CC
Communications Jumpers
Plug and Play Addresses
Accessories and Options
ICM-1900 Interconnect Module
PC/AT Interrupts and Their Vectors
Terminal Label Description
GND +VCC
Mocmdx
Signx
Pwmx
AN5
AN2
AN3
AN4
ICM-1900 Drawing
AMP-19X0 Mating Power Amplifiers
Features
Specifications
ICM-2900 Interconnect Module
OUT PWR
OUT GND
ANALOG7
ANA GND
ANALOG5
ANALOG6
MBX
Opto-Isolated Outputs ICM-1900 / ICM-2900 -Opto option
Extended I/O of the DMC-17x8/1700/1800 Controller
Standard Opto-isolation and High Current Opto-isolation
OP m,a,b,c,d
Accessing extended I/O
Saving the State of the Outputs in Non-Volatile Memory
CO n
Connector Description
OP 7,,,,7
MG @IN17
GND
J8 50-PIN IDC
Description
IOM-1964 Opto-Isolation Module for Extended I/O Controllers
Buffer chips
Overview
Figure A.4 CB-50-80 and CB-50-100 Bracket Layout
Configuring Hardware Banks
Figure A.5 IOM-1964 Chip Configuration Layout
Sinking Sourcing
Input Circuit
Figure A.9 High Current Output Circuit
High Power Digital Outputs
Output Command Result
Standard Digital Outputs
Internal Pullup
Standard Digital Outputs
Electrical Specifications
High Power Digital Outputs
Digital Inputs
Relevant DMC Commands
DMC-1700/1800 Appendices
Coordinated Motion Mathematical Analysis
360
Velocity
DMC-1700/DMC-1000 Comparison
List of Other Publications
Motion Control Made Easy
Training Seminars
Contacting Us
Warranty
DMC-1700/1800 Index
Index
Flags
ICM-1100 25, 47, 48 Independent Motion
Quit
Stop