Galil DMC-3425 Example Set Output when At Speed, Example Change Speed along Vector Path

Page 126

Instruction

Interpretation

#INPUT

Program Label

AI-1

Wait for input 1 low

PR 10000

Position command

BGA

Begin motion

EN

End program

Example - Set Output when At Speed

Instruction

Interpretation

#ATSPEED

Program Label

JG 50000

Specify jog speed

AC 10000

Acceleration rate

BGA

Begin motion

ASA

Wait for at slew speed 50000

SB1

Set output 1

EN

End program

Example - Change Speed along Vector Path

The following program changes the feedrate or vector speed at the specified distance along the vector. The vector distance is measured from the start of the move or from the last AV command.

Instruction

Interpretation

#VECTOR

Label

VMAB;VS 5000

Coordinated path

VP 10000,20000

Vector position

VP 20000,30000

Vector position

VE

End vector

BGS

Begin sequence

AV 5000

After vector distance

VS 1000

Reduce speed

EN

End

Example - Multiple Move with Wait

This example makes multiple relative distance moves by waiting for each to be complete before executing new moves.

Instruction

Interpretation

#MOVES

Label

PR 12000

Distance

SP 20000

Speed

AC 100000

Acceleration

BGA

Start Motion

AD 10000

Wait a distance of 10,000 counts

SP 5000

New Speed

AMA

Wait until motion is completed

WT 200

Wait 200 ms

 

 

118 • Chapter 7 Application Programming

DMC-3425

Image 126
Contents DMC-3425 By Galil Motion Control, IncPage Contents Connecting Hardware Programming Motion Application Programming 107 DAC ZOHJ5 Power 6 PIN Molex WarrantyOverview IntroductionOverview of Motor Types Standard Servo Motors with +/- 10 Volt Command SignalStepper Motor with Step and Direction Signals Brushless Servo Motor with Sinusoidal CommutationDMC-3425 Overview Motor Interface DMC-3425 Functional ElementsMicrocomputer Section CommunicationMotor General I/OSystem Elements Amplifier DriverWatch Dog Timer EncoderGetting Started DMC-3425 Motion ControllerInstalling the DMC-3425 Controller Elements You NeedDetermine Overall Motor Configuration Configuring Jumpers on the DMC-3425Stepper Motor Jumpers Setting the Baud Rate on the DMC-3425Selecting MO as default on the DMC-3425 9600 1200Axis Configuration Jumpers A1 A2 A4 A8Installing the Communications Software Using Galil Software for DOSUsing Galil Software for Windows Getting Started DMC-3425 Communicating through the Ethernet Using Non-Galil Communication SoftwareSending Test Commands to the Terminal TPA CRAddress Set-up axis for sinusoidal commutation optional Make connections to amplifier and encoderGetting Started DMC-3425 Connect Standard Servo Motor Check the Polarity of the Feedback Loop MO CRBG CR Inverting the Loop PolaritySH CR TT CRPower Supply Connect brushless motor for sinusoidal commutation If Hall Sensors are Available If Hall Sensors are Not Available Amacr Connect Step MotorsBGA CR BC CRTune the Servo System TE CRConfigure the Distributed Control System Configuring Operation for Distributed ControlAutomatic Configuration of Distributed Control Manual Slave IP configuration with HC command Mgconfiguration Failed Else Mgconfig Success Endif Manual Configuration of Distributed Control#SETUP Instruction InterpretationNA6 CHC=D,ECHE=F,G Example 2 Profiled Move Design ExamplesExample 1 System Set-up Example 3 Position InterrogationExample 6 Operation Under Torque Limit Example 8 Operation in the Buffer ModeExample 5 Velocity Control Jogging Example 7 InterrogationExample 9 Motion Programs Example 10 Motion Programs with LoopsExample 11- Motion Programs with Trippoints Example 12 Control Variables Example 13 Control Variables and OffsetReturn to top of program Using Inputs Limit Switch InputOverview Home Switch Input Abort InputAmplifier Interface Uncommitted Digital InputsTTL Inputs Analog InputsTTL Outputs This page Left Blank Intentionally RS232 Port 1 Dataterm RS-232 ConfigurationRS232 Port Baud Rate SelectionAddressing Ethernet ConfigurationCommunication Protocols Handshaking ModesEthernet Handles Global vs. Local OperationLocal Operation Accessing the I/O of the Slaves Operation of Distributed ControlDigital Outputs Handling Communication ErrorsMulticasting Digital InputsUnsolicited Message Handling IOC-7007 SupportModbus Support Function Code DefinitionOther Communication Options Handle SwitchingHandle Restore on Communication Failure User Defined Ethernet VariablesData Record Data Record MapWaiting on Handle Responses DMC-3425 Communication Communication DMC-3425 Bytes 2, 3 of Header Axis Switch Information 1 ByteHeader Information Byte 0, 1 of Header General Status Information 1 ByteQZ Command Axis Status Information 2 ByteCoordinated Motion Status Information for plane 2 Byte Using Third Party Software This page Left Blank Intentionally Command Syntax Ascii Important All DMC-3425 commands are sent in upper caseCommand Syntax Binary Coordinated Motion with more than 1 axisBinary Command Format ByteHeader Format Example Binary command tableDatafields Format LE, VEController Response to Data Interrogating Current Commanded Values Interrogation CommandsSummary of Interrogation Commands Interrogating the ControllerCommand Summary This page Left Blank Intentionally Programming Motion Mode of Motion Basic description Commands Global Independent Axis Positioning VP, CRExamples Command Summary Independent AxisOperand Summary Independent Axis Absolute Position MovementInstructionInterpretation BG CCommand Summary Jogging Independent JoggingJog in a and C axes Linear Interpolation Mode Local Mode Specifying Linear SegmentsJoystick Jogging #ALT Additional CommandsSpecifying Vector Speed for Each Segment LmabChanging Feedrate Command Summary Linear InterpolationOperand Summary Linear Interpolation BGSLinear Interpolation Motion ExampleExample Linear Move #LMOVEExample Multiple Moves #LOADVector Mode Linear and Circular Interpolation Local Mode Specifying Vector SegmentsAdditional commands Operand Summary Coordinated Motion Sequence Command Summary Coordinated Motion SequenceCompensating for Differences in Encoder Resolution TrippointsVM AB Required PathExample Gantry Mode Electronic Gearing Local ModeCommand Summary Electronic Gearing Example Electronic GearingBGB Electronic Cam Local ModeGA, CA GA,AProgramming Motion DMC-3425 DMC-3425 Programming Motion 3000 2250 1500 2000 4000 6000 Master #RUN EAA#LOOP EB1#LOOPJP#LOOP,V1=0 ST aContour Mode Local Mode Specifying Contour SegmentsInstruction Description CMADT0CD0 General Velocity Profiles Command Summary Contour ModeOperand Summary Contour Mode Generating an Array An ExampleContour Mode Example #POINTSPOSC=V4 Teach Record and Play-Back Record and Playback ExampleVirtual Axis Local Mode Mode of Motion Virtual Axis usage CommandsSinusoidal Motion Example Stepper Motor OperationEcam Master Example Specifying Stepper Motor OperationMonitoring Generated Pulses vs. Commanded Pulses Stepper Motor SmoothingMotion Complete Trippoint Using an Encoder with Stepper MotorsCommand Summary Stepper Motor Operation Operand Summary Stepper Motor OperationDual Loop Auxiliary Encoder Using the CE CommandAdditional Commands for the Auxiliary Encoder Backlash Compensation#DUALOOP Continuous Dual LoopSampled Dual Loop DE0JP#CORRECT Using the IT and VT CommandsMotion Smoothing #ENDHoming Trapezoidal velocity and smooth velocity profilesAM a #HOMEHM a MG AT HomeHome Switch Operand Summary Homing Operation Command Summary Homing OperationHigh Speed Position Capture Latch Input FunctionAL B This page Left Blank Intentionally Application Programming Global vs. Local ProgrammingReturn Edit Mode CommandsEntering Programs ED #BEGINValid labels Using Labels in ProgramsProgram Format Invalid labelsNo Command and the Apostrophe ‘ Special LabelsCommenting Programs REM Command Executing Programs MultitaskingDebugging Programs Stop Code Command Trace CommandError Code Command RAM Memory Interrogation CommandsBreakpoints and single stepping Eeprom Memory Interrogation OperandsProgram Flow Commands Event Triggers & TrippointsDMC-3425 Event Triggers Example- Multiple Move SequenceAS a B C D E F G H Example- Set Output after Distance Example- Repetitive Position TriggerExample Start Motion on Input Example Set Output when At Speed Example Change Speed along Vector PathExample Multiple Move with Wait Conditional Jumps Example- Define Output Waveform Using ATCommand Format JP and JS FormatConditional Statements Example using variables named V1, V2, V3Logical operators Multiple Conditional StatementsUsing the if and Endif Commands If, Else, and EndifExamples Nesting if Conditional Statements Using the Else CommandCommand Format IF, Else and Endif Format DescriptionAuto-Start and Auto Error Routine SubroutinesStack Manipulation Example Limit Switch Example Position ErrorAutomatic Subroutines for Monitoring Conditions Example Motion Complete Timeout Example Command ErrorExample Input Interrupt Example Command Error w/Multitasking Mathematical Operators Example Ethernet Communication ErrorMathematical and Functional Expressions Operator FunctionFLEN=@FRACLEN Bit-Wise OperatorsENTER,LENS6 LEN1=FLEN&$00FFPOS VariablesFunctions PR PosaAssigning Variable Values to Controller Parameters Programmable VariablesAssigning Values to Variables Displaying the value of variables at the terminalSpecial Operands Example Using Variables for JoystickOperands InstructionArrays Defining ArraysAssignment of Array Entries Using a Variable to Address Array Elements Uploading and Downloading Arrays to On Board MemoryAutomatic Data Capture into Arrays Operand Summary Automatic Data Capture Command Summary Automatic Data CaptureData Types for Recording Example Recording into An ArraySending Messages Outputting Numbers and StringsDeallocating Array Space Specifying the Port for MessagesUsing the MG Command to Configure Terminals Formatting MessagesMG STR S3 Example Printing a Variable and an Array element Displaying Variables and ArraysSummary of Message Functions Function DescriptionLocal Formatting of Response of Interrogation Commands LZ0LZ1 VF1 Formatting Variables and Array ElementsLocal Formatting of Variables V1=ALPHADigital Outputs Hardware I/OConverting to User Units Example- Set Bit and Clear BitDigital Inputs Example Using Inputs to control program flowExample Start Motion on Switch Example- Output PortInput Interrupt Function Analog InputsExample Position Follower Point-to-Point Configuring the I/O of the DMC-3425 Extended I/O of the DMC-3425 ControllerExample Position Follower Continuous Move Accessing Extended I/O Saving the State of the Outputs in Non-Volatile MemoryBit I/O Block Binary Representation Decimal Value for Interfacing to Grayhill or OPTO-22 G4PB24 Wire CutterExample Applications Argument Blocks Bits DescriptionX-Y Table Controller JP #ABGC AMCBGC AMC Speed Control by Joystick BGS AMSPosition Control by Joystick JG VEL JP #BThis page Left Blank Intentionally Hardware Protection Output Protection LinesInput Protection Lines Signal or Function State if Error OccursSoftware Protection Programmable Position LimitsOff-On-Error Automatic Error Routine#AJP #AEN Limit Switch Routine Limit Switch ExampleInstallation Symptom Cause RemedyStability Symptom CauseCommunication OperationTheory of Operation Level Operation of Closed-Loop Systems Velocity and Position ProfilesSystem Modeling Functional Elements of a Motion Control SystemMotor-Amplifier Voltage DriveCurrent Drive Velocity Loop Elements of velocity loopsVoltage Source DAC Digital FilterSystem Analysis ZOHMotor Ms = P/I = Kt/Js2 = 500/s2 rad/A Amp Ka = 4 Amp/V System Design and Compensation Analytical MethodKd = 10/32768 = Encoder Kf = 4N/2π = DMC-3425 Theory of Operation Equivalent Filter Form KP, KD, KI, PLPID, T Power Requirements Electrical SpecificationsPerformance Specifications Servo ControlAcmda Pwma Connectors for DMC-3425J3 DMC-3425 General I/O 37- PIN D-type Acmdy SignaSignb Pwma J3 DMC-3425-Stepper General I/O 37- PIN D-typePwmb SignaDCD DTR GND DSR RTS CTS Pin-Out DescriptionJ1 RS232 Main port DB-9 Pin Male RTS CTS GNDFeatures SpecificationsICM-1460 Interconnect Module AMPEN/SIGNY5 ResetERROR/PULSEY ACMDX/PULSEXOpto-Isolation Option for ICM-1460 Opto-isolated inputsOpto-isolated outputs Figure A-1Configuring the I/O of the DMC-3425 with DB-14064 CO nAccessing extended I/O Saving the State of the Outputs in Non-Volatile MemoryConnector Description J6 50-PIN IDC Pin Signal Block Bit @INn Bit No @OUTnBlock Bit @INn Bit No @OUTn IOM-1964 Opto-Isolation Module for Extended I/O Controllers DescriptionOverview Buffer chipsConfiguring Hardware Banks Figure A-4Input Circuit High Power Digital Outputs Figure A-6Output Command Result Standard Digital OutputsElectrical Specifications High Power Digital OutputsStandard Digital Outputs Relevant DMC Commands Screw Terminal ListingDMC-3425 Appendices PWROUT30 PWROUT32PWROUT31 PWROUT29Coordinated Motion Mathematical Analysis 1000 2000Velocity 100000 = 0.05 s 2000000 List of Other Publications Training SeminarsWHO should Attend Contacting Us Galil Motion ControlWarranty Index EepromHoming, 38 Eeprom Index DMC-3425

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.