Galil DMC-3425 user manual Binary Command Format, Byte, Header Format

Page 69

Some commands have an equivalent binary value. Binary communication mode can be executed much faster than ASCII commands. Binary format can only be used when commands are sent from the PC and cannot be embedded in an application program.

Binary Command Format

All binary commands have a 4 byte header and are followed by data fields. The 4 bytes are specified in hexadecimal format.

Header Format:

Byte 1

Specifies the command number between 80 to FF. The complete binary command number table is listed below.

Byte 2

Specifies the # of bytes in each field as 0,1,2,4 or 6 as follows:

00

No datafields (i.e. SH or BG)

01

One byte per field

02

One word (2 bytes per field)

04

One long word (4 bytes) per field

06

Galil real format (4 bytes integer and 2 bytes fraction)

Byte 3

Specifies whether the command applies to a coordinated move as follows:

00

No coordinated motion movement

01

Coordinated motion movement

For example, the command STS designates motion to stop on a vector motion. The third byte for the equivalent binary command would be 01.

Byte 4

Specifies the axis # or data field as follows

Bit 7 = H axis or 8th data field

Bit 6 = G axis or 7th data field

Bit 5 = F axis or 6th data field

Bit 4 = E axis or 5th data field

Bit 3 = D axis or 4th data field

Bit 2 = C axis or 3rd data field

Bit 1 = B axis or 2nd data field

Bit 0 = A axis or 1st data field

DMC-3425

Chapter 5 Command Basics61

Image 69
Contents By Galil Motion Control, Inc DMC-3425Page Contents Connecting Hardware Programming Motion Application Programming 107 ZOH DACWarranty J5 Power 6 PIN MolexIntroduction OverviewStepper Motor with Step and Direction Signals Standard Servo Motors with +/- 10 Volt Command SignalOverview of Motor Types Brushless Servo Motor with Sinusoidal CommutationDMC-3425 Overview Microcomputer Section DMC-3425 Functional ElementsMotor Interface CommunicationSystem Elements General I/OMotor Amplifier DriverEncoder Watch Dog TimerDMC-3425 Motion Controller Getting StartedElements You Need Installing the DMC-3425 ControllerConfiguring Jumpers on the DMC-3425 Determine Overall Motor ConfigurationSelecting MO as default on the DMC-3425 Setting the Baud Rate on the DMC-3425Stepper Motor Jumpers 9600 1200A1 A2 A4 A8 Axis Configuration JumpersUsing Galil Software for DOS Installing the Communications SoftwareUsing Galil Software for Windows Getting Started DMC-3425 Sending Test Commands to the Terminal Using Non-Galil Communication SoftwareCommunicating through the Ethernet TPA CRAddress Make connections to amplifier and encoder Set-up axis for sinusoidal commutation optionalGetting Started DMC-3425 Connect Standard Servo Motor MO CR Check the Polarity of the Feedback LoopSH CR Inverting the Loop PolarityBG CR TT CRPower Supply Connect brushless motor for sinusoidal commutation If Hall Sensors are Available If Hall Sensors are Not Available BGA CR Connect Step MotorsAmacr BC CRTE CR Tune the Servo SystemConfigure the Distributed Control System Configuring Operation for Distributed ControlAutomatic Configuration of Distributed Control Manual Slave IP configuration with HC command #SETUP Manual Configuration of Distributed ControlMgconfiguration Failed Else Mgconfig Success Endif Instruction InterpretationNA6 CHC=D,ECHE=F,G Example 1 System Set-up Design ExamplesExample 2 Profiled Move Example 3 Position InterrogationExample 5 Velocity Control Jogging Example 8 Operation in the Buffer ModeExample 6 Operation Under Torque Limit Example 7 InterrogationExample 9 Motion Programs Example 10 Motion Programs with LoopsExample 11- Motion Programs with Trippoints Example 13 Control Variables and Offset Example 12 Control VariablesReturn to top of program Using Inputs Limit Switch InputOverview Abort Input Home Switch InputUncommitted Digital Inputs Amplifier InterfaceAnalog Inputs TTL InputsTTL Outputs This page Left Blank Intentionally RS232 Port RS-232 ConfigurationRS232 Port 1 Dataterm Baud Rate SelectionCommunication Protocols Ethernet ConfigurationAddressing Handshaking ModesGlobal vs. Local Operation Ethernet HandlesLocal Operation Operation of Distributed Control Accessing the I/O of the SlavesMulticasting Handling Communication ErrorsDigital Outputs Digital InputsIOC-7007 Support Unsolicited Message HandlingFunction Code Definition Modbus SupportHandle Restore on Communication Failure Handle SwitchingOther Communication Options User Defined Ethernet VariablesData Record Data Record MapWaiting on Handle Responses DMC-3425 Communication Communication DMC-3425 Header Information Byte 0, 1 of Header Axis Switch Information 1 ByteBytes 2, 3 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 Important All DMC-3425 commands are sent in upper case Command Syntax AsciiCoordinated Motion with more than 1 axis Command Syntax BinaryBinary Command Format ByteHeader Format Datafields Format Binary command tableExample LE, VEController Response to Data Summary of Interrogation Commands Interrogation CommandsInterrogating Current Commanded Values Interrogating the ControllerCommand Summary This page Left Blank Intentionally Programming Motion Mode of Motion Basic description Commands Global VP, CR Independent Axis PositioningOperand Summary Independent Axis Command Summary Independent AxisExamples Absolute Position MovementBG C InstructionInterpretationCommand Summary Jogging Independent JoggingJog in a and C axes Linear Interpolation Mode Local Mode Specifying Linear SegmentsJoystick Jogging Specifying Vector Speed for Each Segment Additional Commands#ALT LmabOperand Summary Linear Interpolation Command Summary Linear InterpolationChanging Feedrate BGSExample Linear Move ExampleLinear Interpolation Motion #LMOVE#LOAD Example Multiple MovesSpecifying Vector Segments Vector Mode Linear and Circular Interpolation Local ModeAdditional commands Compensating for Differences in Encoder Resolution Command Summary Coordinated Motion SequenceOperand Summary Coordinated Motion Sequence TrippointsRequired Path VM ABCommand Summary Electronic Gearing Electronic Gearing Local ModeExample Gantry Mode Example Electronic GearingGA, CA Electronic Cam Local ModeBGB GA,AProgramming Motion DMC-3425 DMC-3425 Programming Motion 3000 2250 1500 2000 4000 6000 Master #LOOP EAA#RUN EB1ST a #LOOPJP#LOOP,V1=0Specifying Contour Segments Contour Mode Local ModeInstruction Description CMADT0CD0 Operand Summary Contour Mode Command Summary Contour ModeGeneral Velocity Profiles Generating an Array An ExampleContour Mode Example #POINTSPOSC=V4 Record and Playback Example Teach Record and Play-BackMode of Motion Virtual Axis usage Commands Virtual Axis Local ModeEcam Master Example Stepper Motor OperationSinusoidal Motion Example Specifying Stepper Motor OperationStepper Motor Smoothing Monitoring Generated Pulses vs. Commanded PulsesCommand Summary Stepper Motor Operation Using an Encoder with Stepper MotorsMotion Complete Trippoint Operand Summary Stepper Motor OperationAdditional Commands for the Auxiliary Encoder Using the CE CommandDual Loop Auxiliary Encoder Backlash CompensationSampled Dual Loop Continuous Dual Loop#DUALOOP DE0Motion Smoothing Using the IT and VT CommandsJP#CORRECT #ENDTrapezoidal velocity and smooth velocity profiles HomingHM a #HOMEAM a MG AT HomeHome Switch High Speed Position Capture Latch Command Summary Homing OperationOperand Summary Homing Operation Input FunctionAL B This page Left Blank Intentionally Global vs. Local Programming Application ProgrammingEntering Programs Edit Mode CommandsReturn ED #BEGINProgram Format Using Labels in ProgramsValid labels Invalid labelsNo Command and the Apostrophe ‘ Special LabelsCommenting Programs Executing Programs Multitasking REM CommandDebugging Programs Error Code Command Trace CommandStop Code Command RAM Memory Interrogation CommandsEeprom Memory Interrogation Operands Breakpoints and single steppingEvent Triggers & Trippoints Program Flow CommandsDMC-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 Command Format JP and JS Example- Define Output Waveform Using ATConditional Jumps FormatLogical operators Example using variables named V1, V2, V3Conditional Statements Multiple Conditional StatementsUsing the if and Endif Commands If, Else, and EndifExamples Command Format IF, Else and Endif Using the Else CommandNesting if Conditional Statements 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 and Functional Expressions Example Ethernet Communication ErrorMathematical Operators Operator FunctionENTER,LENS6 Bit-Wise OperatorsFLEN=@FRACLEN LEN1=FLEN&$00FFFunctions VariablesPOS PR PosaAssigning Values to Variables Programmable VariablesAssigning Variable Values to Controller Parameters Displaying the value of variables at the terminalOperands Example Using Variables for JoystickSpecial Operands 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 Data Types for Recording Command Summary Automatic Data CaptureOperand Summary Automatic Data Capture Example Recording into An ArrayDeallocating Array Space Outputting Numbers and StringsSending Messages Specifying the Port for MessagesUsing the MG Command to Configure Terminals Formatting MessagesMG STR S3 Summary of Message Functions Displaying Variables and ArraysExample Printing a Variable and an Array element Function DescriptionLocal Formatting of Response of Interrogation Commands LZ0LZ1 Local Formatting of Variables Formatting Variables and Array ElementsVF1 V1=ALPHAConverting to User Units Hardware I/ODigital Outputs Example- Set Bit and Clear BitExample Start Motion on Switch Example Using Inputs to control program flowDigital Inputs 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 Example Applications Wire CutterInterfacing to Grayhill or OPTO-22 G4PB24 Argument Blocks Bits DescriptionJP #A X-Y Table ControllerBGC AMCBGC AMC BGS AMS Speed Control by JoystickJG VEL JP #B Position Control by JoystickThis page Left Blank Intentionally Output Protection Lines Hardware ProtectionSoftware Protection Signal or Function State if Error OccursInput Protection Lines Programmable Position LimitsOff-On-Error Automatic Error Routine#AJP #AEN Limit Switch Example Limit Switch RoutineSymptom Cause Remedy InstallationCommunication Symptom CauseStability OperationTheory of Operation Level Velocity and Position Profiles Operation of Closed-Loop SystemsFunctional Elements of a Motion Control System System ModelingMotor-Amplifier Voltage DriveCurrent Drive Elements of velocity loops Velocity LoopVoltage Source Digital Filter DACZOH System AnalysisMotor Ms = P/I = Kt/Js2 = 500/s2 rad/A Amp Ka = 4 Amp/V Analytical Method System Design and CompensationKd = 10/32768 = Encoder Kf = 4N/2π = DMC-3425 Theory of Operation Equivalent Filter Form KP, KD, KI, PLPID, T Performance Specifications Electrical SpecificationsPower Requirements Servo ControlJ3 DMC-3425 General I/O 37- PIN D-type Connectors for DMC-3425Acmda Pwma Acmdy SignaPwmb J3 DMC-3425-Stepper General I/O 37- PIN D-typeSignb Pwma SignaJ1 RS232 Main port DB-9 Pin Male Pin-Out DescriptionDCD DTR GND DSR RTS CTS RTS CTS GNDFeatures SpecificationsICM-1460 Interconnect Module ERROR/PULSEY ResetAMPEN/SIGNY5 ACMDX/PULSEXOpto-isolated inputs Opto-Isolation Option for ICM-1460Figure A-1 Opto-isolated outputsCO n Configuring the I/O of the DMC-3425 with DB-14064Saving the State of the Outputs in Non-Volatile Memory Accessing extended I/OJ6 50-PIN IDC Pin Signal Block Bit @INn Bit No @OUTn Connector DescriptionBlock Bit @INn Bit No @OUTn Description IOM-1964 Opto-Isolation Module for Extended I/O ControllersBuffer chips OverviewFigure A-4 Configuring Hardware BanksInput Circuit Figure A-6 High Power Digital OutputsStandard Digital Outputs Output Command ResultElectrical Specifications High Power Digital OutputsStandard Digital Outputs Screw Terminal Listing Relevant DMC CommandsDMC-3425 Appendices PWROUT31 PWROUT32PWROUT30 PWROUT291000 2000 Coordinated Motion Mathematical AnalysisVelocity 100000 = 0.05 s 2000000 List of Other Publications Training SeminarsWHO should Attend Galil Motion Control Contacting UsWarranty Eeprom IndexHoming, 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.