Galil DMC-3425 user manual Entering Programs, Edit Mode Commands, Return, Ed #Begin

Page 116

The program memory size for each DMC-3425 is 80 characters per line and 500 lines long.

Entering Programs

The DMC-3425 has an internal editor that may be used to create and edit programs in the controller's memory. The internal editor is a rudimentary editor and is only recommended when operating with Galil’s DOS utilities or through a simple RS-232 communication interface such as the Windows Utility Hyperterminal.

The internal editor is opened by the command ED. Note that the command ED will not open the internal editor if issued from Galil's Window based software - in this case, a Windows based editor will be automatically opened. The Windows based editor provides much more functionality and ease-of- use, therefore, the internal editor is most useful when using a simple terminal with the controller and a Windows based editor is not available.

Once the ED command has been given, each program line is automatically numbered sequentially starting with 000. If no parameter follows the ED command, the editor prompter will default to the last line of the last program in memory. If desired, the user can edit a specific line number or label by specifying a line number or label following ED.

Instruction

Interpretation

:ED

Puts Editor at end of last program

:ED 5

Puts Editor at line 5

:ED #BEGIN

Puts Editor at label #BEGIN

Line numbers appear as 000,001,002 and so on. Program commands are entered following the line numbers. Multiple commands may be given on a single line as long as the total number of characters doesn't exceed 80 characters per line.

While in the Edit Mode, the programmer has access to special instructions for saving, inserting and deleting program lines. These special instructions are listed below:

Edit Mode Commands

<RETURN>

Typing the return key causes the current line of entered instructions to be saved. The editor will automatically advance to the next line. Thus, hitting a series of <RETURN> will cause the editor to advance a series of lines. Note, changes on a program line will not be saved unless a <return> is given.

<cntrl>P

The <cntrl>P command moves the editor to the previous line. <cntrl>I

The <cntrl>I command inserts a line above the current line. For example, if the editor is at line number 2 and <cntrl>I is applied, a new line will be inserted between lines 1 and 2. This new line will be labeled line 2. The old line number 2 is renumbered as line 3.

<cntrl>D

The <cntrl>D command deletes the line currently being edited. For example, if the editor is at line number 2 and <cntrl>D is applied, line 2 will be deleted. The previous line number 3 is now renumbered as line number 2.

<cntrl>Q

The <cntrl>Q quits the editor mode. In response, the DMC-3425 will return a colon.

108 • Chapter 7 Application Programming

DMC-3425

Image 116
Contents DMC-3425 By Galil Motion Control, IncPage Contents Connecting Hardware Programming Motion Application Programming 107 DAC ZOHJ5 Power 6 PIN Molex WarrantyOverview IntroductionStandard Servo Motors with +/- 10 Volt Command Signal Stepper Motor with Step and Direction SignalsOverview of Motor Types Brushless Servo Motor with Sinusoidal CommutationDMC-3425 Overview DMC-3425 Functional Elements Microcomputer SectionMotor Interface CommunicationGeneral I/O System ElementsMotor 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-3425Setting the Baud Rate on the DMC-3425 Selecting MO as default on the DMC-3425Stepper Motor Jumpers 9600 1200Axis Configuration Jumpers A1 A2 A4 A8Installing the Communications Software Using Galil Software for DOSUsing Galil Software for Windows Getting Started DMC-3425 Using Non-Galil Communication Software Sending Test Commands to the TerminalCommunicating through the Ethernet 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 CRInverting the Loop Polarity SH CRBG CR TT CRPower Supply Connect brushless motor for sinusoidal commutation If Hall Sensors are Available If Hall Sensors are Not Available Connect Step Motors BGA CRAmacr BC CRTune the Servo System TE CRAutomatic Configuration of Distributed Control Configure the Distributed Control SystemConfiguring Operation for Distributed Control Manual Slave IP configuration with HC command Manual Configuration of Distributed Control #SETUPMgconfiguration Failed Else Mgconfig Success Endif Instruction InterpretationCHE=F,G NA6CHC=D,E Design Examples Example 1 System Set-upExample 2 Profiled Move Example 3 Position InterrogationExample 8 Operation in the Buffer Mode Example 5 Velocity Control JoggingExample 6 Operation Under Torque Limit Example 7 InterrogationExample 11- Motion Programs with Trippoints Example 9 Motion ProgramsExample 10 Motion Programs with Loops Example 12 Control Variables Example 13 Control Variables and OffsetReturn to top of program Overview Using InputsLimit Switch Input Home Switch Input Abort InputAmplifier Interface Uncommitted Digital InputsTTL Inputs Analog InputsTTL Outputs This page Left Blank Intentionally RS-232 Configuration RS232 PortRS232 Port 1 Dataterm Baud Rate SelectionEthernet Configuration Communication ProtocolsAddressing Handshaking ModesEthernet Handles Global vs. Local OperationLocal Operation Accessing the I/O of the Slaves Operation of Distributed ControlHandling Communication Errors MulticastingDigital Outputs Digital InputsUnsolicited Message Handling IOC-7007 SupportModbus Support Function Code DefinitionHandle Switching Handle Restore on Communication FailureOther Communication Options User Defined Ethernet VariablesWaiting on Handle Responses Data RecordData Record Map DMC-3425 Communication Communication DMC-3425 Axis Switch Information 1 Byte Header Information Byte 0, 1 of HeaderBytes 2, 3 of Header General Status Information 1 ByteCoordinated Motion Status Information for plane 2 Byte QZ CommandAxis Status Information 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 axisHeader Format Binary Command FormatByte Binary command table Datafields FormatExample LE, VEController Response to Data Interrogation Commands Summary of Interrogation CommandsInterrogating Current Commanded Values Interrogating the ControllerCommand Summary This page Left Blank Intentionally Programming Motion Mode of Motion Basic description Commands Global Independent Axis Positioning VP, CRCommand Summary Independent Axis Operand Summary Independent AxisExamples Absolute Position MovementInstructionInterpretation BG CJog in a and C axes Command Summary JoggingIndependent Jogging Joystick Jogging Linear Interpolation Mode Local ModeSpecifying Linear Segments Additional Commands Specifying Vector Speed for Each Segment#ALT LmabCommand Summary Linear Interpolation Operand Summary Linear InterpolationChanging Feedrate BGSExample Example Linear MoveLinear Interpolation Motion #LMOVEExample Multiple Moves #LOADVector Mode Linear and Circular Interpolation Local Mode Specifying Vector SegmentsAdditional commands Command Summary Coordinated Motion Sequence Compensating for Differences in Encoder ResolutionOperand Summary Coordinated Motion Sequence TrippointsVM AB Required PathElectronic Gearing Local Mode Command Summary Electronic GearingExample Gantry Mode Example Electronic GearingElectronic Cam Local Mode GA, CABGB GA,AProgramming Motion DMC-3425 DMC-3425 Programming Motion 3000 2250 1500 2000 4000 6000 Master EAA #LOOP#RUN EB1#LOOPJP#LOOP,V1=0 ST aContour Mode Local Mode Specifying Contour SegmentsDT0CD0 Instruction DescriptionCMA Command Summary Contour Mode Operand Summary Contour ModeGeneral Velocity Profiles Generating an Array An ExamplePOSC=V4 Contour Mode Example#POINTS Teach Record and Play-Back Record and Playback ExampleVirtual Axis Local Mode Mode of Motion Virtual Axis usage CommandsStepper Motor Operation Ecam Master ExampleSinusoidal Motion Example Specifying Stepper Motor OperationMonitoring Generated Pulses vs. Commanded Pulses Stepper Motor SmoothingUsing an Encoder with Stepper Motors Command Summary Stepper Motor OperationMotion Complete Trippoint Operand Summary Stepper Motor OperationUsing the CE Command Additional Commands for the Auxiliary EncoderDual Loop Auxiliary Encoder Backlash CompensationContinuous Dual Loop Sampled Dual Loop#DUALOOP DE0Using the IT and VT Commands Motion SmoothingJP#CORRECT #ENDHoming Trapezoidal velocity and smooth velocity profiles#HOME HM aAM a MG AT HomeHome Switch Command Summary Homing Operation High Speed Position Capture LatchOperand Summary Homing Operation Input FunctionAL B This page Left Blank Intentionally Application Programming Global vs. Local ProgrammingEdit Mode Commands Entering ProgramsReturn ED #BEGINUsing Labels in Programs Program FormatValid labels Invalid labelsCommenting Programs No Command and the Apostrophe ‘Special Labels REM Command Executing Programs MultitaskingDebugging Programs Trace Command Error Code CommandStop Code Command RAM Memory Interrogation CommandsBreakpoints and single stepping Eeprom Memory Interrogation OperandsProgram Flow Commands Event Triggers & TrippointsAS a B C D E F G H DMC-3425 Event TriggersExample- Multiple Move Sequence Example Start Motion on Input Example- Set Output after DistanceExample- Repetitive Position Trigger Example Multiple Move with Wait Example Set Output when At SpeedExample Change Speed along Vector Path Example- Define Output Waveform Using AT Command Format JP and JSConditional Jumps FormatExample using variables named V1, V2, V3 Logical operatorsConditional Statements Multiple Conditional StatementsExamples Using the if and Endif CommandsIf, Else, and Endif Using the Else Command Command Format IF, Else and EndifNesting if Conditional Statements Format DescriptionStack Manipulation Auto-Start and Auto Error RoutineSubroutines Automatic Subroutines for Monitoring Conditions Example Limit SwitchExample Position Error Example Input Interrupt Example Motion Complete TimeoutExample Command Error Example Command Error w/Multitasking Example Ethernet Communication Error Mathematical and Functional ExpressionsMathematical Operators Operator FunctionBit-Wise Operators ENTER,LENS6FLEN=@FRACLEN LEN1=FLEN&$00FFVariables FunctionsPOS PR PosaProgrammable Variables Assigning Values to VariablesAssigning Variable Values to Controller Parameters Displaying the value of variables at the terminalExample Using Variables for Joystick OperandsSpecial Operands InstructionAssignment of Array Entries ArraysDefining Arrays Automatic Data Capture into Arrays Using a Variable to Address Array ElementsUploading and Downloading Arrays to On Board Memory Command Summary Automatic Data Capture Data Types for RecordingOperand Summary Automatic Data Capture Example Recording into An ArrayOutputting Numbers and Strings Deallocating Array SpaceSending Messages Specifying the Port for MessagesMG STR S3 Using the MG Command to Configure TerminalsFormatting Messages Displaying Variables and Arrays Summary of Message FunctionsExample Printing a Variable and an Array element Function DescriptionLZ1 Local Formatting of Response of Interrogation CommandsLZ0 Formatting Variables and Array Elements Local Formatting of VariablesVF1 V1=ALPHAHardware I/O Converting to User UnitsDigital Outputs Example- Set Bit and Clear BitExample Using Inputs to control program flow Example Start Motion on SwitchDigital Inputs Example- Output PortExample Position Follower Point-to-Point Input Interrupt FunctionAnalog Inputs Example Position Follower Continuous Move Configuring the I/O of the DMC-3425Extended I/O of the DMC-3425 Controller Bit I/O Block Binary Representation Decimal Value for Accessing Extended I/OSaving the State of the Outputs in Non-Volatile Memory Wire Cutter Example ApplicationsInterfacing to Grayhill or OPTO-22 G4PB24 Argument Blocks Bits DescriptionX-Y Table Controller JP #ABGC AMC BGCAMC Speed Control by Joystick BGS AMSPosition Control by Joystick JG VEL JP #BThis page Left Blank Intentionally Hardware Protection Output Protection LinesSignal or Function State if Error Occurs Software ProtectionInput Protection Lines Programmable Position Limits#AJP #AEN Off-On-ErrorAutomatic Error Routine Limit Switch Routine Limit Switch ExampleInstallation Symptom Cause RemedySymptom Cause CommunicationStability OperationTheory of Operation Level Operation of Closed-Loop Systems Velocity and Position ProfilesSystem Modeling Functional Elements of a Motion Control SystemCurrent Drive Motor-AmplifierVoltage 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 PID, T Equivalent Filter FormKP, KD, KI, PL Electrical Specifications Performance SpecificationsPower Requirements Servo ControlConnectors for DMC-3425 J3 DMC-3425 General I/O 37- PIN D-typeAcmda Pwma Acmdy SignaJ3 DMC-3425-Stepper General I/O 37- PIN D-type PwmbSignb Pwma SignaPin-Out Description J1 RS232 Main port DB-9 Pin MaleDCD DTR GND DSR RTS CTS RTS CTS GNDICM-1460 Interconnect Module FeaturesSpecifications Reset ERROR/PULSEYAMPEN/SIGNY5 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 OutputsStandard Digital Outputs Electrical SpecificationsHigh Power Digital Outputs Relevant DMC Commands Screw Terminal ListingDMC-3425 Appendices PWROUT32 PWROUT31PWROUT30 PWROUT29Coordinated Motion Mathematical Analysis 1000 2000Velocity 100000 = 0.05 s 2000000 WHO should Attend List of Other PublicationsTraining Seminars 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.