Nanomotion XCDX User Manual Download Page 42

XCDX458000-00 rev A

42

XCDX Commands

• Subnet Mask - four bytes that specify desired network mask in the 

processor byte order. E.g., mask 255.255.255.0 (0xFF.0xFF.0xFF.0x00) 

should be specified as 0x00FFFFFF.

4.5.2

A

DD

 V

ECTORS

Adds vectors to the raster area. The command adds the specified vectors 

to the raster area; maximum 6 vectors can be specified in one command. 

The command should be used in case of non-rectangular raster area; in 

this case, the raster data (see command 108) should specify bit 12 in the 

Option parameter and non-zero Count parameter. 
Each vector is specified with two values: 

• Count

n

 - the number of trigger points on the vector 

X

n

 - start X coordinate of the vector            

4.5.3

G

ET

 V

ERSION

Request MCU Firmware version. The XCDX reply contains 10-byte 

Extension structured as follows:

• Bytes 0-3: four bytes of Firmware version 
• Bytes 4-7: four bytes of Serial number
• Bytes 8-9: two bytes of Application code (not used) 

4.5.4

A

XIS

 

ENABLE

Data Byte = High (1) power supply enabled

•         bit  0  =  X
•         bit  1  =  Y

Code

Parameters

Format

Command 

ID

IP Address
IP Mask

Int32 (4)
Int32 (4)

Command ID

Parameters

Format

14

Count1 X1 

Count2 X2….

Int32(4) 

Real(4) 

Int32(4) 

Real (4)

Command ID

Parameters

Format

19

-

-

Summary of Contents for XCDX

Page 1: ...8000 00 rev A June 2 2016 Nanomotion Ltd POB 623 Yokneam 20692 Israel Tel 972 73 2498000 Fax 972 73 2498099 Web Site www nanomotion com E mail nano nanomotion com User Manual XCDX Four Axis Controller Driver ...

Page 2: ...XCDX458000 00 rev A ii ...

Page 3: ...riting and provides a description of the defective product and complete information about the manner of its discovery within ten 10 days of its discovery ii NM has the opportunity to investigate the reported defect and to determine that the defect arises from faulty material parts or workmanship and iii the Purchaser returns the affected product to a location designated by NM These provisions cons...

Page 4: ...09928 pending 200780019448 6 7713361 9 pending 12 294 926 pending GB2008000004178 pending GB2009000003796 pending 12 398 216 pending GB2446428 12 517 261 pending 08702695 1 pending 10 2009 7017629 pending 12 524 164 pending 12 581 194 pending Contact Information Website www nanomotion com Customer Service Contact your local distributor or email Nanomotion Ltd Technical Support Department at techsu...

Page 5: ...XCDX458000 00 rev A v Revision History The following table shows the last three revisions to this document ECO Doc Rev Date Description A May 2016 Release ...

Page 6: ...k 20 Installation and Operation 21 Electrical Connections 21 Operating the XCDX Controller Driver 22 System Setup 23 XCDX Commander 23 XCDX Test Panel 25 Commands tab 25 Raster tab 27 Log Settings 28 Joystick 30 Flash 30 Upgrade 32 User Flash 32 XCDX Communications Protocol 34 COM Settings 34 Destination Address 34 Communication Protocol 35 General USB Protocol 36 Ethernet Protocol 36 DHCP protoco...

Page 7: ...r Mode 48 Move 48 Read User Flash 48 Write User Flash 49 Erase User Flash 49 Special Operations 49 Raster operation 49 Raster Data 50 Rectangular raster 52 Non rectangular raster 53 Pause Abort and Single Vector 53 Step Repeat Operation 54 Example Scripts 54 Setting IO State 54 Creating Square Pulse on IO_2 54 Programming the XCDX Controller Driver 56 Programming the XCDX MCU and the XCD HR MCUs 5...

Page 8: ...ogramming the XCDX Controller Driver on page 56 The XCDX Box contains two firmware and software programs The XCD HR and EDGE Controller Drivers are programmed with XCD Motion Script XMS for detailed information about this firmware refer to the latest XCD Firmware user manual 1 1 CONVENTIONS USED IN THIS MANUAL Throughout this manual commands are shown in BOLD and parameter values are shown in ital...

Page 9: ... personnel 1 2 RELATED The following table lists Nanomotion products which may have this software version Refer to your user manual to verify installed software version BKM Product Part Number XCD HR1 Controller Driver XCD HR1 BD 04 XCD HR2 Controller Driver XCD HR2 BD 04 XCD HR4 Controller Driver XCD HR4 BD 04 XCD HR8 Controller Drive XCD HR8 BD 04 XCD EDGE Controller XCD EDGE BD 03 XCD Component...

Page 10: ...eatures Usable with a 3 axis Joystick Trigger composition from the 4 axis drivers general I O outputs software controlled Analog Digital I O on rear panel USB and ethernet communication MAC Address Power switch on the Back panel Front panel LEDs show XCDX power and XCD HR status Communication between the XCDX and the host computer is through the XCDX Commander refer to XCDX Commander page 23 2 1 S...

Page 11: ...indicate the status of the XCDX box and each of the installed axes Figure 1 Front Panel XCDX Power power to the XCDX box Axis indicators Power power to the axis Controller Driver Enable the axis motor is enabled Fault indicates an error in axis Controller Driver motor or interconnection Figure 2 Rear Panel ...

Page 12: ...her AC or DC power based on customer request The XCDX Box meets EMI RFI compatibility according to CE class B The front panel has LED power indicators for the XCDX Box and the XCD Controller Driver for each configured axis AC Power AC power supply is 110 220VAC using a standard US or European mains connection Table 1 6 pin Male DIN453322 Pin Function 1 24 VDC 2 Return 3 Return 4 Return 5 24 VDC 6 ...

Page 13: ...standard D SUB 9pin plug Pin Function Signal 3 Motor Power Motor White High Voltage 4 Motor Power Motor Common 5 Motor Power Motor Red High Voltage 1 Protection Motor Connected Common 6 Protection Motor Connected Case Shield Cable shield Safety hazard Pins 1 and 6 are a safety connection that disables the driver when the motor is disconnected They must be shorted together on the plug connected to ...

Page 14: ...tor Layout Analog input Connected directly to corresponding axis controller Input range 10V Absolute maximum range 12V Alarm E 3 Set up X 1 Shield inner shield no connection outer shield case Table 3 Encoder Connector Pinout Function Output Type Signal Pin The Limits Alarm and Set up signals are not connected Are these still not enabled IOs are set as not isolated as default from the factory ...

Page 15: ...GPIO2 TTL 5V A7 GND GND A8 GPIO 9 input Y Axis digital GPIO1 TTL 5V A9 GPIO 10 output Y Axis digital GPIO2 TTL 5V A10 GND GND A11 GPIO 13 input X Axis digital GPIO1 TTL 5V A12 GPIO 14 output X Axis digital GPIO2 TTL 5V A13 24V Do not use 24V A14 Limit 2 input T Axis Right Limit Pull to GND A15 Limit 3 input Z Axis Left Limit Pull to GND A16 Limit 5 input Y Axis Left Limit Pull to GND A17 NC A18 Li...

Page 16: ... X Axis Left Limit Pull to GND A37 ES input Emergency Stop Pull to 24V Table 5 J5B Analog IO Connector 1 Pin Name Direction Description Voltage B1 GND GND B2 AI 2 input T Axis Analog Input 2 10V B3 AO 1 output X Axis AO 2 0V 10V B4 GND GND B5 AI 4 input Z Axis Analog Input 2 10V B6 AO 3 output Y Axis AO 2 0V 10V B7 GND GND B8 AI 6 input Y Axis Analog Input 2 10V B9 AO 5 output Z Axis AO 2 0V 10V B...

Page 17: ...s Analog Input 1 10V B21 GND GND B22 AO 2 output X Axis AO 1 0V 10V B23 AI 3 input Z Axis Analog Input 1 10V B24 GND GND B25 AO 4 output Y Axis AO 1 0V 10V B26 AI 5 input Y Axis Analog Input 1 10V B27 GND GND B28 AO 6 output Z Axis AO 1 0V 10V B29 AI 7 input X Axis Analog Input 1 10V B30 GND GND B31 AO 8 output T Axis AO 1 0V 10V B32 INS_IO_ COM Do not use B33 INS_OUT 2 Do not use B34 INS_OUT 4 Do...

Page 18: ...XCDX458000 00 rev A 18 Specifications Figure 4 Limit and EMO Switch Input Connections Figure 5 Isolated Output Connection ...

Page 19: ...utput signal The trigger is programmable Level Axis in trigger Pulse width Maximum delay from each axis output trigger to the XCDX output trigger is less than 1 s This corresponds to 100ns jitter Trigger generation Standard a pulse is generated on position compare Extended the output goes high when Position 1 is reached and goes low when Position 2 Position 1 is reached 2 1 7 1 POSITION PULSE INCR...

Page 20: ...ED MOVES The XCDX can coordinate moves between the X and Y axes when operating in Raster mode To minimize turnaround time the secondary axis must start motion as soon as possible after completing last trigger position in the primary axis 2 1 8 EMERGENCY STOP EMO The user can use the EMO to stop stage operation Refer to Figure 4 page 18 2 1 9 JOYSTICK The XCDX can be controlled by a 3 axis 2 button...

Page 21: ...or testing and integration purposes only In addition the following components must be added USB cable type B joystick optional Before installing and operating the software ensure that the host computer has Microsoft NET 4 installed 3 1 ELECTRICAL CONNECTIONS The XCDX Controller Driver can be configured to operate 4 independent axes of a mechanical stage Each axis is connected to a Nanomotion XCD o...

Page 22: ... axes Control is either through a motion profile saved on the XCD HR and EDGE Controller Drivers or with a joystick that can control up to 3 axes The XCD HR and EDGE Controller Drivers are factory programmed The user can modify some of the parameters and include a motion profile to control stage move ment Refer to the XCD FW ver 1 5 0 7 User manual XCD0458002 00 for detailed information ...

Page 23: ...B cable from the Controller Driver to the host computer Optional Connect the joystick to the Controller Driver On the host computer launch the XCDX Commander Turn on the Controller Driver 3 2 2 XCDX COMMANDER The XCDX Commander provides communication with each of the Nanomotion XCD Controller Drivers and the XCDX motherboard The XCDX Commander s main window has four main panels Communication Motio...

Page 24: ...menus and an INFO field Port selects the port on the host computer connected to the XCDX Box Address Selects which subassembly in the XCDX Box to communicate with Info reads the details of the Controller Driver Details include FW version and board configuration Motion Program Address Controller Driver 1 X axis 2 Y axis 3 Z axis 4 T axis 80 Motherboard ...

Page 25: ...ected XCD Controller Driver or the motherboard 3 2 3 XCDX TEST PANEL This section describes the panels in the XCDX Test Panel The Test Panel has been modified These paragraphs and images must be reviewed 3 2 3 1 COMMANDS TAB The Command tab provides initiation a range of functions Set Stage Initialization allows selecting one of four homing modes Positive hard stop and index pulse Default Negative...

Page 26: ...es a zero setting for the joystick This must be selected and sent before selecting Joystick Enable Set Position allows setting a position for the 3 axes Set Power Supplies enables the power supplies for each of the XCD Controller Drivers Led Test Tests the LEDs on the front panel Report value Hex in bottom field SEND allows sending a command to anyone of the XCD Drivers Enter the command code para...

Page 27: ...t Raster Data provides selection of parameters for the Raster Vector Count count on the secondary axis Speed set in mm sec Initial X Initial Y Initial Speed Provides a selection for faster movement at the start Primary Axis Provides selection of the X or Y axis as primary Trigger Resolution set in mm Dwell Not functional in this release Shape provides selection of the raster shape Option include R...

Page 28: ...the XCDX Controller Driver Figure 4 Raster Tab 3 2 3 3 LOG SETTINGS The Log Settings tab is used for integration only CLEAR deletes data in lower field Command 26 reply determines the display format Binary and Float are not operational ...

Page 29: ...XCDX458000 00 rev A 29 Operating the XCDX Controller Driver Figure 5 Log Settings Tab ...

Page 30: ...ler Driver 3 2 3 4 JOYSTICK The three fields read the voltage on each axis of the joystick Figure 6 Joystick Tab 3 2 3 5 FLASH IP Address refer to Ethernet Protocol page 36 Net Mask License Active XCDs This function is set at the factory Do not change ...

Page 31: ... Controller Driver Figure 7 Flash Tab By default X Y Z are active It can be modified from the commander under the Flash tab 0 All LEDs are off 1 X is active 2 X Y is active 3 X Y Z is active 4 X Y Z T is active Changes will apply after restart ...

Page 32: ... USER FLASH The Flash pane provides random access to the 128KB storage for free entry data Each Read Write operation has a maximum of 32Bytes in the Length field The Offset field provides entry to the remaining data area The Read function requires entering the offset and length of the desired data To read the Flash using a command refer to Read User Flash page 48 and Write User Flash page 49 In or...

Page 33: ...XCDX458000 00 rev A 33 Operating the XCDX Controller Driver Figure 9 User Flash ...

Page 34: ...DDRESS Each command sent to XCDX has a field of destination address Destination address defines which controller processes the command The following destination addresses are recognized 1 XCD 1 X 2 XCD 2 Y 3 XCD 3 Z 4 XCD 4 T 128 0x80 MCU Commands sent to channels 1 2 3 follow the standard XCD protocol see XCD User Manual for full specification The total length of the commands should not exceed 50...

Page 35: ...ng parts Controller reply has similar parts Table 1 XCDX Host Command Format Part Byte offset Size in bytes Description Command prefix 0 2 Synchronization sequence 0xE4 0xA5 228 165 2 1 Destination address 0 X 1 Y 2 Z or 128 MCU 3 1 Length of the command body in bytes Command body 4 1 Command ID 5 N Parameters see specific command for details Table 2 XCDX Controller Driver Reply Format Part Byte o...

Page 36: ...tart up and then accepts only commands sent to this address or broadcasted commands The XCDX box tries three methods to determine IP address 4 3 2 1 DHCP PROTOCOL This is standard method if the XCDX is connected to local network that provides DHCP service If the XCDX obtains IP address from DHCP server it does not try other options 4 3 2 2 STATIC ADDRESS The method is available only if the custome...

Page 37: ...plies 0x1E27 7719 is used for receiving Discover command 4 3 5 COMMAND AND REPLY STRUCTURE XCDX Ethernet protocol is based on UDP protocol Each message sent to the XCDX and from XCDX is a UDP datagram complying with IPv4 standard Figure 1 UDP Protocol UDP header should specify destination port 0x1745 5957 One command UDP datagram can comprise one or more XCDX commands number in parenthesis specifi...

Page 38: ...ev A 38 Communication Protocol Figure 2 UDP Command Structure Similarly one reply UDP datagram can comprise one or more XCDX replies number in parenthesis specifies the field size in bytes Figure 3 UDP Reply Structure ...

Page 39: ...iption Block prefix 0 2 Constant 0x18FC byte 0 is 0xFC byte 1 is 0x18 2 2 Length of the whole block in bytes including the block prefix 4 2 ID assigned by the Host 6 2 Format code 0x0002 byte 6 is 0x02 byte 7 is 0x00 Command 1 prefix 8 1 Destination 0 X 1 Y 2 Z or 128 MCU 9 1 Length of the command body in bytes Command 1 body 10 1 Command code see XCDX Commands 11 N Parameters see specific command...

Page 40: ...l connected XCDX boxes and is able to communicate with any of them Discover command is sent by Host as a UDP datagram formatted as follows Table 4 Controller Reply Part Byte offset Size in bytes Description Block prefix 0 2 Constant 0x18FC byte 0 is 0xFC byte 1 is 0x18 2 2 Length of the whole block in bytes including the block prefix 4 2 ID copied from the command 6 2 Error 0 no errors 0 number of...

Page 41: ...alue is a binary of specific type in little endian format the least significant byte appears first The following formats are used 4 5 XCDX COMMANDS This section includes available XCDX commands 4 5 1 SET IP The command sets current IP address and network mask and stores specified values in the flash memory The flash values will be retrieved and used at the next start up power up After setting IP a...

Page 42: ...y bit 12 in the Option parameter and non zero Count parameter Each vector is specified with two values Countn the number of trigger points on the vector Xn start X coordinate of the vector 4 5 3 GET VERSION Request MCU Firmware version The XCDX reply contains 10 byte Extension structured as follows Bytes 0 3 four bytes of Firmware version Bytes 4 7 four bytes of Serial number Bytes 8 9 two bytes o...

Page 43: ...es of IP address Bytes 4 7 four bytes of network mask 4 5 6 SET LICENSE Set License data The XCDX stores license data in the flash memory Zero one byte should be zero License up to 60 bytes of arbitrary data 4 5 7 GET LICENSE Get License data The XCDX returns License data stored in the flash memory Extension field of the XCDX reply contains up to 60 bytes of the License data Command ID Parameters ...

Page 44: ...homing process specific for each selected axis However if a parameter is specified it replaces the default value for all selected axes Selector optional a bitwise mask that defines which coordinates are involved bit 0 X bit 1 Y bit 2 Z bit 3 T If the parameter is omitted all axes assumed Method optional defines sequence of homing operations See XCD Software User Manual for detailed information Ori...

Page 45: ... 8 11 X program status variable 901 Bytes 12 15 Y status variable 900 Bytes 16 19 Y program status variable 901 Bytes 20 23 Z status variable 900 Bytes 24 27 Z program status variable 901 4 5 12 SET ORIGIN Set coordinates in the current point If all parameters are omitted the command sets origin zero point in the current point Selector optional a bitwise mask that defines which coordinates are set...

Page 46: ...OLARITY Set trigger polarity The parameter defines polarity of the trigger pulse 0 active low 1 active high 4 5 15 JOYSTICK Enable disable joystick operation If joystick is enabled three analog signals from 3D joystick are transformed into X Y Z velocity If joystick is disabled the signals are ignored Selector a bitwise mask that defines which coordinates are involved bit 0 X bit 1 Y bit 2 Z Comma...

Page 47: ...easured level will cause motion in negative direction 4 5 17 RASTER DATA Set Raster data The command prepares XCDX for raster motion Refer to Raster operation page 49 for more information Command ID Parameters Format 107 Selector Enable Int8 1 Int8 1 Command ID Parameters Format 110 Selector opt Int8 1 Command ID Parameters Format 108 Options Count Speed Acceleration Start X Start Y Increment X In...

Page 48: ...rigger point waits for Dwell mil liseconds and then goes to the next trigger point 4 5 19 MOVE Moves the specified axis to specified point Selector a bitwise mask that defines which axes move bit 0 X bit 1 Y bit 2 Z One two or three axes can be selected X defines X target point Y optional defines Y target point Z optional defines Z target point 4 5 20 READ USER FLASH The controller response contai...

Page 49: ...e controller erases user flash sector 11 4 6 SPECIAL OPERATIONS 4 6 1 RASTER OPERATION Raster operation is complex operation that combines scanning motion with Position Pulse generation in trigger points The trigger points build up a grid of either rectangular or non rectangular form The scanning motion is Command ID Parameters Format 140 ID offset count Int8 1 Int32 4 Int32 4 Command ID Parameter...

Page 50: ...end Raster Mode command with parameter 1 Run Executing Raster operation can be interrupted by sending Raster Mode command with parameter 2 Pause or 4 Abort In case of Pause the operation stops after finishing the current vector and waits for the next command Usually the next command is Raster Mode with parameter 3 Resume that continues execution from the next vector In case of Abort the operation ...

Page 51: ...in mm sec Acceleration Real 4 Acceleration in mm sec sec Start X Real 4 Primary axis start position The parameter is meaningful only if Options bit 12 is zero otherwise the parameter is ignored and individual start position is defined with each vector Start Y Real 4 Secondary axis start position of the first vector Increment X Real 4 Distance between trigger pulses on a vector Along with Pulse Cou...

Page 52: ...er is only used in Step repeat operation in normal operation the parameter is ignored Pulse Width Real 4 Width of trigger pulse in milliseconds Pulse Count Int32 4 The number of trigger pulses on one vector The parameter is meaningful only if Options bit 12 is zero otherwise the parameter is ignored and individual pulse count is defined with each vector Vector Count Int32 4 The number of vectors T...

Page 53: ...tinues until the end of the current vector and only then stops This way all trigger points are processed at required velocity Then XCDX holds XY position until the next Raster Mode command further operation depends on the Raster Mode parameter Raster Mode with parameter 3 Resume continues raster operation from the next vector Raster Mode with parameter 4 Abort terminates the current raster operati...

Page 54: ...d the time has elapsed the motion goes to the next trigger point or to the next vector if the current vector is through If Raster Mode command with parameter 2 Pause is issued within Step repeat operation the motion stops in the next trigger point and waits for the next Raster Mode command If the next command specifies Resume the axis moves to the next trigger point and continues operation in Step...

Page 55: ...XCDX458000 00 rev A 55 Example Scripts wait additional 25 msec for 10Hz delay 25 end Toggle IO_2 if IO_2 IO_2 0 else IO_2 1 end end ...

Page 56: ...5CLA hex XCD firmware S19 file s configuration file s for XCD s e g XCD_HR8 16_1 5_3E800 s19 If XCD s require different configuration files copy several S19 files to the directory 3 Prepare upgrade script with extension SF and place it to the same upgrade directory 5 1 2 WRITING THE SCRIPT The script should contain one line for each XCD and MCU to be upgraded Each line starts with a command XCD1 X...

Page 57: ...HR8 to v 1 5 0 7 XCD2 XCD_HR8 16_1 5_3E800 s19 LCCD_28035CLA hex Upgrade HR8 to v 1 5 0 7 XCD3 XCD_HR8 16_1 5_3E800 s19 LCCD_28035CLA hex Upgrade HR8 to v 1 5 0 7 MCU XCDX HEX Upgrade MCU to v 1 1 1 2 5 1 3 TO EXECUTE UPGRADE 1 Copy the upgrade directory see above to your PC 2 Launch the XCDX Commander and establish communication with XCDX box 3 Select XCDX TEST PANEL and select UPGRADE tab 4 Clic...

Page 58: ... command body 35 command prefix 35 connections axis 21 electrical 21 D data format 41 type 41 E encoder interface 13 F features 10 FPGA 10 G get limits 25 get status 25 I init joystick center 26 input analog 14 Installation 23 IO connector 14 IO connector 1 output 18 J joystick 21 joystick enable 26 K kill 26 L LED test 26 limit switch input connection 18 M MCU 10 34 35 39 42 45 motor connector 13...

Page 59: ...ion 25 set stage zero origins 25 set trigger polarity 26 specification communication 10 power 12 step repeat raster operation 54 T trigger 19 generation 19 U Upgrade 32 X XCDX Commander 23 XCDX controller reply format 35 XCDX host command format 35 XCDX Test Panel 23 XCDX test panel commands tab 25 command 26 reply 28 get limits 25 get status 25 init joystick center 26 joystick enable 26 kill 26 L...

Page 60: ...XCDX458000 00 rev A 60 INDEX ...

Reviews: