Home

Ludl Electronic Products MAC 5000 User`s Manual

image

Contents

1. 7 1 Rotate Filter Wheel Command Format Reply Example ROTAT Rotat S device number Wheel select Filter select Rotate specified filter wheel This command will be used to rotate the filter wheels This command takes 3 parameters as explained below First parameter is the Modul id which is always an S optionally appended with a device number Second parameter is the wheel selection Every board can support two filter wheel devices Wheel select parameter is one of the following characters M for main filter wheel A _ for secondary filter wheel Third parameter is one of the filter selections It may be expressed with one the following characters rotate to next filter rotate to previous filter search for number ONE filter rotate to number ONE filter rotate to number TWO filter rotate to number THREE filter rotate to number FOUR filter rotate to number FIVE filter rotate to number SIX filter OunhWN TUF Each controller may have 5 filter wheel boards installed Where each board is addressed with the number specified with device number there is no space between the board identifier S and the board number S2 or S3 etc The range of device number is from 1 to 5 and may be omitted when it is equal to 1 A positive reply is sent if no error The reply does not mean the end of action taken A STATUS S command should be used to find out the end of the rotation Rotat S M H Rotate the Main fil
2. LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 86 of 158 LEP 2001 Ludl Electronic Products Device Name Device ID Code Read Open Loop Constant 124 Load Closed Loop Constant 32 Read Closed Loop Constant 131 Data Length 1 1 1 CODE LISTING User s Manual 73005050 STEPPING MOTOR CONTOLLER EMOT_ Description This command will read the open loop counter constant programmed This number represents the closed loop constant explained above An unsigned one byte binary number The valid range of values for this number is from 1 to 255 On power up default value is 1 This command will read the closed loop counter ratio programmed An example In the case of power up default values used open loop counter readings will be 5 times of the closed loop counter reading If the motor is pulsed 1000 steps the closed loop counter reading should be 200 LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 87 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005050 STEPPING MOTOR CONTOLLER Device ID EMOT_ Data Code Length Description Settling time In the closed loop system when double counting mode is selected at the end of a motor run closed loop counts are compared internally to open loop counts Since closed loop counts are real time counts they will reflect any movements implied externally For example motor
3. Device Name 73005051 DC SERVO MOTOR CONTOLLER Device ID EMOTD Data Code Length Description Items saved loaded to Related Items saved loaded to Related RECORD area Command s COMMON area Command s Static Gain 54 154 18 138 Last Record Saved Dynamic Gain 18 138 Joy Stick Fast Speed Boost Gain 18 138 Joy Stick Slow Speed DSP Filter Zero 54 154 Servo Settle Time DSP Filter Pole 54 154 Servo Timeout Count Counts Per Revolution 54 154 Servo Activation Dist Acceleration 54 154 81 113 Servo Mode On Off Max Trip Current 54 154 Wafer Width Sample Time 54 154 Top Speed 83 115 155 1 Read system error byte Byte cleared when read Active High Msb Lsb Bus Serial Over Cmd Rx Temp Amp Full Control Bus Xicor Loop Cmd Error Error Error Over Amp Set when current remains above the trip level set by command 54 byte 8 for longer than 0 8 seconds Over Temp Set when motor driver chip temperature reaches 145 C Motor driver chip shuts off if temperature raises over 170 C Serial Rx Full Set when serial buffer input overflows Bus Cmd Full Set when bus command input buffer overflows Float Point Error Set on floating point math error Xicor Error Set on error reading xicor chip or xicor chip not present Bus Cmd Error Set on bus command error Such as unknown command invalid handshaking data lost or incorrect data structure Control Loop Error Set on boot up if encoder loop is unstabl
4. Page 120 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name DUAL DC MOTOR CONTOLLER Device ID DMOTD Data Code Length Description Primary Incremental Movements 43 0 Incremental Primary move upwards This command will add the increment buffer to present position buffer and load this position to target and then move the motors It is used when motor movement distances are repetitive It combines the loading new target and move commands in a single command 45 0 Incremental Primary move downwards Same command as above except that direction is reversed 68 3 Write Primary Increment value This is a two s complement 3 byte number for the increment counter Use this value to program the distance for incremental moves 100 3 Read Primary Increment value This is a two s complement 3 byte number for the increment counter Secondary Incremental Movements 44 0 Incremental Secondary move upwards This command will add the increment buffer to present position buffer and load this position to target and then move the motors It is used when motor movement distances are repetitive It combines the loading new target and move commands in a single command 46 0 Incremental Secondary move downwards Same command as above except that direction is reversed 69 3 Write Secondary Increment value This is a two s complement 3 byte number for the increment counter Use this value to program the distance for increment
5. Format Halt This command will stop all active motors Reply If there are no errors a positive reply is sent back Example HALT A L EBUS MAC5000 PGM Manual MAC5S000 PGM MANUALrevB doc 8 13 01 Page 45 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 10 ANALOG DIGITAL INPUT OUTPUT COMMANDS 10 1 Read The following READ commands read the memory points or digital input output 10 1 1 Read Point id Command READ Format Read point id point id Read current value of Point Id stored in memory Reply If there are no errors a positive reply with values is sent back Example READ RO T1 299 A 100 200 300 READ r0t1z99 A 100 200 300 LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 46 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 10 1 2 Read Input Output Command READ Format Read Read In Read o Readon This command will read the input output ports of EDAIO board Each controller can have two EDAIO boards Each board has 8 inputs and 8 output ports The ports can be read and written as a whole one 2 byte value or individually The board with higher address is the lower byte and the board with lower address is the higher byte Reply If there are no errors a positive reply with values is sent back Example READ This format reads all the inputs in a value The value ranges from 0 to 65535 Each EDAIO device can have 8
6. LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 116 of 158 Ludl Electronic Products Device Name Device ID Data Code Length Access Commands CODE LISTING User s Manual 73005051 DC SERVO MOTOR CONTOLLER EMOTD Description NOTE The following peek and poke commands allow direct access to system resources Unintelligent poking will cause system to become unstable 6 4 Poke Peek setup function Depending on Address space byte 3 this command either writes data to AddressSpace Address or sets up the peek function pointer to AddressSpace Address for the Peek command 196 Format Byte 1 Address LSB Byte 2 Address MSB Byte 3 AddressSpace Byte 4 Data to be written when in poke mode or Ength of bytes returned from the peek function when in peek mode Default is 1 Max is 255 No 256 bulk reads Address space can be the following PokeMode 1 2 3 Data in Byte 4 is written to the following areas SFR when AddressSpace 1 Idata when AddressSpace 1 or Xdata when AddressSpace 1 PeekMode 5 6 7 8 Setups the Peek Function where Byte 4 equals the length of the data returned from Peek command 194 5 Point to SFR 6 Point to Idata 7 Point to Xdata 8 Point to Code Space 196 n Peek Function Returns n bytes of data at AddressSpace Address pointer Increments pointer by n when completed Range 1 255 Default is 1 Default address is Xdata 0000 Format Byte 1 255 Data LA
7. Ludl Electronic Products CODE LISTING User s Manual Device Name DUAL DC MOTOR CONTOLLER Device ID DMOTD Data Code Length Description Read Secondary Status Byte 125 1 Read Secondary status byte from primary motor driver This value will reflect various internal status of motor driver The format is explained below Bit Description 0 0 motor not running 1 motor is running 1 Not used 2 Not used 3 0 Motor power off 1 Motor On 4 0 PWM mode off 1 PWM mode on 5 0 Over Current No Turning on the motor cmds 60 50 will reset this bit 1 Over Current Yes 6 Real time copy of the CCW end limit switch 7 Real time copy of the CW end limit switch LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 126 of 158 LFP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name DUAL DC MOTOR CONTOLLER Device ID DMOTD Data Code Length Description Read Error Status 159 4 This command returns a long value representing the internal status of the DMOTD Each bit represents a condition as described in the table below Once this value is read it is reset to zero Bits are active high For future compatibility users should test for individuals bit _ of 32 0000 0020H_ 6 Secondary Critical Secondary Axis Encoder missing 00000100H_ 9 Primary Warning Primary Axis Over Current _____ LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01
8. Motor will stop if one of the following events is occurred 1 A stop command is received 2 An end limit switch is closed 3 The same command is received with the speed equal to zero The following equation should be used in order to convert speed given in pulse per second unit to a binary value to be loaded with this command output value 8 388 608 5 529 600 speed The speed is given in pulse per second and it is positive or negative depending the direction of the rotation The programmable speed limits are minimum speed 0 659 pulse per second maximum speed 5 529 600 pulse per second It should be noted that the maximum speed specified above is the internal calculation limit and does not necessarily means the running speed of the motor installed in the system It is left to the user to limit the actual maximum running speed There is no reading back command the last speed written with this command at the present time LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 101 of 158 Ludl Electronic Products Device Name Device ID Code Data Length Centering The Axis 48 30 31 3 CODE LISTING User s Manual 73005051 DC SERVO MOTOR CONTOLLER EMOTD Description Center or search for home pulse command This command s parameter value is similar to the Variable Speed Rotating command explained earlier but command s function is different The status quality te
9. Page 127 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name DUAL DC MOTOR CONTOLLER Device ID DMOTD Data Code Length Description DSP Functions 55 56 8 Write DSP data This function writes DSP parameter to the selected axis Command 55 writes to the primary axis and 56 writes to the secondary axis See table below 1 Idle Gain Gain used when motor is hold position 2 Active Gain Gain used when motor is moving a ae ee ee Pole PoletermoftheDSP_ o o Ee 5 Sampe Sample Time of DSP 6 Tripp Current__ Maximum motor current allowed TripCurrent MaxAmp x 42 5 BCT CPRMSB Counts per revolution MSB __ Z Z o Z 1 5 3 Zero term of the DSP 4 5 154 155 8 Read DSP data This function reads the DSP parameters Command 154 reads the primary and 155 the secondary axis The data is the same as above Read Identification 105 6 Read identification from device First 5 characters should match the device ID shown at top of this page Request Device Status 63 NONE Request Status Request whether or not device is busy One of the following codes is sent back to the host depending on the status of device No data length byte is required 66 If device is busy 98 If device is not busy Parameters should only be loaded when a device is not busy but they can be read anytime LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 1
10. 0 ene eer closed closed BBQ O AAPEEE E closed closed open DESOO scndavdedenssstedeesnteedersderesivedess closed closed closed Switch Nos 4 and 5 set parity select and parity check enable Switch No 4 parity select open closed odd parity even parity Switch No 5 parity check enable disable open parity check enabled closed parity check disabled REMARK When parity check disabled 2 stop bits must be used Switch No 6 and 7 add a delay between transmitted bytes For more details of the function of this switch and how to change delay values by software please see Transmission Delay in Section Il Delay Value Switch No 6 Nodelay closed 4 millisecond Power Up open Switch No 8 communication mode open Low Level Language Binary mode closed High Level Language ASCII mode If IEEE488 option is installed and selected then switch 1 to 5 becomes device number LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 7 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 1 Introduction The MAC 5000 Communication Interface No 73005042 is an interface between a terminal or host computer and the controller The communication is accomplished with an RS 232 USB serial connection Programming protocol is with text of ASCII alpha numeric characters Also included are some control characters such
11. 8 Code Data Length 65 3 From what we know so far we can say the following If device address is four then first byte is four second byte is decimal 65 and third byte is 3 for number of bytes following But there is more to follow Exceptions There are some exceptions where this group is omitted Request device status stop and start commands There are no data bytes following for these commands and the data length byte is always zero and to speed up communications they are omitted Example All numbers are expressed in decimal Bytes Sent Action 0 63 58 request status for device 0 15 63 58 request status for device 15 0 71 58 start module 0 10 66 58 stop module 10 These special command formats are explained with details later in the manual LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 74 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual Group No 4 In this group the data value is gathered together The length of data is not fixed and can be from 0 to 255 The data length expressed within the code table will govern the number of bytes which data is sent and received Generally data is transferred starting from Least Significant Byte LSB to Most Significant Byte MSB The actual conversion can be done in several ways In C programming for example if the actual data is a long number it can be put into a long member of a union and then can be sent by using the cha
12. number The following equation can be used to convert the binary number read back to speed in pulse per second units speed pulse sec 1843000 binary value LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 84 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005050 STEPPING MOTOR CONTOLLER Device ID EMOT_ Data Code Length Description Joystick Control 74 0 Joystick enabled To enable the joystick or trackball function when motor is not moving Power up default 75 0 Joystick disabled To disable the joystick or trackball function when motor is not moving 72 0 Make joystick fast speed to ramp up This command will affect how the joystick fast key will act when pressed with joystick deflected either side With this command when joystick fast key is pressed motor will ramp up to faster then joystick speed Power up default 76 0 Make joystick fast speed to ramp down This is the opposite of the above command When joystick fast key is pressed motor will ramp down to a slower speed than joystick speed 122 1 Read joystick deflection values The value read will be the deflection values read from analog input port for joystick The value is ranged from 0 to 255 Mid position has the value of around 128 L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 85 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name 730050
13. which is connected to the controller by RS232 interface This problem may be avoided most of the time by this time out feature LEP MAC 2000 Controllers are shipped with the following default settings Baud rate 9600 Parity Disabled Data bit 8 Stop bit 2 Format Low Level LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrtevB doc 8 13 01 Page 68 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual Hardware Switch Description Switches are numbered from 1 to 8 Switch Nos 1 to 3 set the baud rate Switch Switch Switch Baud Rate No 1 No 2 No 3 ik 2 8 Ee ererrr ee eee ere eer te nee ree OPEN eee OPEN open 9000 irra Enia Open Open closed co 100 ee eer eee eee closed Open open LAO Niiair iieiaeie closed Open closed 1s 20 0 rere ree re eter Open closed open BP DOD saana ODEN kiisi closed closed IO OO ap ssheesaancden eacueuennetennumtadiens closed closed open PO OO Ges tested T closed closed closed Switch Nos 4 and 5 set parity select and parity check enable Switch No 4 parity select open closed odd parity even parity Switch No 5 parity check enable disable open parity check enabled closed parity check disabled REMARK When parity check disabled 2 stop bits must be used Switch No 6 and 7 add a delay between transmitted bytes For more details of the func
14. 123 3 Ramping Time CODE LISTING User s Manual 73005051 DC SERVO MOTOR CONTOLLER EMOTD Description Load the capture center position Read the captured center position The last two commands may be used with the centering command explained earlier see Centering The Axis If a high precision positioning required a stepping motor may be installed with a center pulse generator When motor is passed through the position a center pulse is generated and the position is recorded by the module These commands may be used to determine if centering of an axis is done by centering pulse or by internal calculation First load the center position with a large number presenting over the limits Then center the axis At the end of centering use the Read Center Position command Compare the numbers loaded and read If they are the same then the centering pulse is not received If they are different then the center pulse is received properly Centering pulse also may be used as to move the motor until an event occurs If a center command is used then motor will stop when a center pulse is generated By reading the motor position the location of the event can be determined 81 1 Write ramping time This is a one byte straight binary number which will change the acceleration value It is related to the time where speed is changed Smaller values are equal to bigger accelerations Power up default is 20 113 1 Read ramping time Same as abov
15. 17 6 210 6 CODE LISTING User s Manual 73005051 DC SERVO MOTOR CONTOLLER EMOTD Description Soft limits can be programmed by the user to limit the overall travel of a position move see command 71 If enabled the system will automatically readjust target position so that they fall within the soft limit range set up by commands 17 and 210 Note that if the system is outside the soft limit range and soft limits are enabled the system will ignore position command moves Activate or deactivate soft limit detection Data 0 Deactivate soft limit detection Power up default Data lt gt 0 Activates soft limit detection Write Soft Limit Data Setups up the soft limits First three bytes are one limit and the second three bytes are the second limit The smaller limit will be saved as the negative or lower limit and higher will be saved as the positive or higher limit Syntax is as follows Byte 0 LSB of Soft Limit 1 Byte 1 MIB of Soft Limit 1 Byte 2 MSB of Soft Limit 1 Byte 3 LSB of Soft Limit 2 Byte 4 MIB of Soft Limit 2 Byte 5 MSB of Soft Limit 2 Read Soft Limit Data Reads the soft limit data First three bytes are the higher limit Second three bytes hold the lower number Byte order is LSB MIB and MSB Byte 0 LSB of Higher Soft Limit Byte 1 MIB of Higher Soft Limit Byte 2 MSB of Higher Soft Limit Byte 3 LSB of Lower Soft Limit Byte 4 MIB of Lower Soft Limit Byte 5 MSB of Lower Soft Limit
16. A reply is sent back from controller to the host upon reception of a command Every reply starts with an ASCII colon character and terminates by a character having value of 10 decimal OA hexadecimal and represented as n in C programming language Reception of a reply means controller is ready to accept the next command from the host computer The replies can be divided to two groups regarded as positive and negative A positive reply is sent back if there are no errors encountered within the command structure A positive reply character is an ASCII A following the reply start character Internally every command received is assigned a reference number which is sent to host with the positive reply A negative reply is sent back if there are errors within the command structure A negative reply character is an ASCII N following the reply start character Sending a command that does not exist not respecting the command formats or trying to execute commands with no corresponding modules installed are some of the reasons that will cause negative replies 1 3 Positive Reply Formats Positive reply without any other parameters Move X A Positive reply with a value requested Where X Y A 2000 1000 In this case inquired X position is 2000 and Y is 1000 A positive reply may have error code replacing the value requested Where X Y A 2000 N 2 Inquired X position is 2000 but Y axis is not installed 1 4 Negative R
17. Electronic Products CODE LISTING User s Manual Device Name 73005050 STEPPING MOTOR CONTOLLER Device ID EMOT_ Data Code Length Description Read Version No 127 6 Read date and version This code will read date and version information explained above Where read id twice scheme explained above may be used with all versions this code may be used with newer versions where this code is implemented Request Device Status 63 NONE Request Status Request whether or not device is busy One of the following codes is sent back to the host depending on the status of device No data length byte is required 66 If device is busy 98 If device is not busy Parameters should only be loaded when a device is not busy but they can be read anytime Load Motor Resolution 40 1 Load motor resolution Configuration dipswitches 1 3 must be in the open position to use this code Default at power up is 10 000 steps revolution Resolution is selected according to following table LAEBUS MAC5000 PGM Manual MACS000 PGM MANUALTevB doc 8 13 01 Page 92 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005050 STEPPING MOTOR CONTOLLER Device ID EMOT_ Data Code Length Description 160 1 Read motor resolution The current motor resolution is read back If the resolution dipswitches are used to hard set the resolution this code will read back the switch value Soft Limits are added to supplement t
18. LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 17 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 7 3 Close Shutter Command CLOSE S Close filter wheel shutters This command closes the shutters It has the same format as the Open command see Open Shutter Format Close S device number shutter number Device number and shutter number are equal to 1 when omitted Reply A positive reply is sent back when command is received correctly Reception of the reply means the end of execution Example Close S Close shutter 1 of S1 Close S2 Close shutter 1 of S2 Close S 2 Close shutter 2 of S1 Close S2 2 Close shutter 2 of S2 LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 18 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 7 4 Shutter Control Command EXPn S Format Exp1 S device number or Exp1 S device number value and Exp2 S device number or Exp2 S device number value Execute shutter exposure or load the exposure time The value s range is from 1 to 65535 and is given in units of millisecond The n next to the command can only be 1 or 2 specifying the shutter number It takes the form EXP1 for shutter 1 and EXP2 for shutter 2 There is no space between EXP and the n When the value is omitted in the command execution of the exposure takes place The correspond ing shutter will open and stay open for the time specified
19. MAC 5000 User s Manual 7 6 Status Byte Read Command RDSTAT Format Rdstat S device number or Rdstat F Read status byte from modules This command will reply with the status byte of the specified module Please consult the code tables for individual boards included in this manual For example in the case of the filter module the position of the shutters can be read with this command Each controller may have 5 filter wheel and 1 focus controller board installed Where each board is addressed with the number specified with device number there is no space between the board identifier S and the board number S2 or S3 etc The range of device number is from 1 to 5and may be omitted when it is equal to 1 Reply A positive reply is sent if no error The reply will contain a value requested if there is no value specified within the command line Example Rdstat S A 64 Rdstat F A 120 L EBUS MAC5000 PGM Manual MAC5S000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 21 of 158 Ludl Electronic Products MAC 5000 User s Manual 8 FOCUS COMMANDS 8 1 Focus Window Control Command WINDOW Format Window or Window Turn window on the screen on and off This command is only related to focus drive module When command is optionally used with the window on the viewing screen is turned ON and it is turned OFF when it is used with the Reply A positive reply is sent if no error Example Window A Wi
20. Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 118 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name DUAL DC MOTOR CONTOLLER Device ID DMOTD Data Code Length Description Within this module two motors are supported The first motor is referenced as the Primary motor and the second motor as the Secondary motor Most of the codes for the Primary motor control are kept compatible to the EMOT_ codes and a new set of codes is added for the Secondary motor drive Motion Control 71 0 Start Primary and Secondary motor motions This command will start both motors to towards there target positions This command starts only the motor axis s that have had their target positions written see commands 84 and 86 The card will send a busy code while moving the motors if test busy command is executed 66 0 Stop Primary and Secondary motor motions If motors are running they will come to a stop after ramping down It will respond with a not busy code after a complete stop to the test busy command Power up default 60 0 Primary Motor Power on This command powers up the DC motor and put it into position control mode Power up is the default 61 0 Primary Motor Power off This command removes powers from the DC motor allowing it to rotate freely 50 0 Secondary Motor Power on This command powers up the DC motor and put it into position control mode Power up is the default 51 0 Secondary Motor Power
21. RS 232 Interface Module No 73005042 is an interface between a host computer and the modules installed in the controller This module will receive analyze and execute the commands coming from a host computer Some of the commands will be used by the interface itself The communication is realized with an RS 232 USB connection with variable baud rates parity and stop bits Generally a command in Low Level Format consists of a one byte device address one byte instruction code one byte data length one or more bytes of data and a one byte end of command byte Each group is later described in detail Some commands are meant to program the interface itself which do not follow these rules The byte length is 8 bits with either or 2stop bits Parity check and parity mode are switch selectable The byte values specified in this manual are in decimal form unless otherwise specified as hexadecimal as Oxff or in ASCII string character specified between as B RS 232 Time out When downloading of a command is not completed within a certain time that command is discarded by the interface This time is specified as 10 seconds for High Level mode and 2 seconds for low level mode This time out will prevent the interface hanging on an unfinished command The time out may occur due to errors or dropped bytes in transmission When the controller s power is on some bytes may enter the interface caused by turning an external host computer on
22. aE v1 4 Stalled Stalled EMOT v9 3 7 7 System BUSY System NOT Bus Valid always Continuous mode focus ranges Position range is a 4 byte integer and represents open loop motor steps Focus speed is a 2 byte integer in Garbis units see motor speed command Valid for firmware ver 0 3 and up 52 6 Write LOW Search Range and Speed in continuous mode Syntax 52 6 4 byte position range 2 byte Speed value 53 6 Write MED Search Range and Speed in continuous mode Syntax 53 6 4 byte position range 2 byte Speed value 54 6 Write HIGH Search Range and Speed in continuous mode Syntax 54 6 4 byte position range 2 byte Speed value 137 6 Read LOW Search Range and Speed in continuous mode Returned Syntax 4 bytes position range 2 byte Speed Default Low Range is 37500 Default Low Speed is 45000Hz 138 6 Reads MED Search Range and Speed in continuous mode Returned Syntax 4 bytes position range 2 byte Speed Default Med Range is 15000 Default Med Speed is 15000HZz 139 6 Read HIGH Search Range and Speed in continuous mode Returned Syntax 4 bytes position range 2 byte Speed Default High Range is 5000 Default High Speed is 1000HZz L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 134 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005056 AUTO FOCUS CONTOLLER Device ID EAFC_ Data Code Length Description Focus Options 51 1 Antibacklash cor
23. axis may be vibrating due to sharp deceleration when the internal calculation takes place Which in turn may affect the comparison and furthermore add delays to reach to the right target A settling time may be programmed externally This time will be used as a delay between when motor is actually stopped and the calculation takes place This delay is expressed in units of millisecond 95 1 Write settling time value This one byte unsigned value may range from 0 to 255 The following actions are taken depending on the value 0 No settling time Power up default 1to 254 Settling time is expressed as the value 255 Automatic settling time Settling time will vary according the severity of the vibrations When a certain lowest variation of closed loop readings is reached settling delay is terminated 130 1 Read settling time value LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 88 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005050 STEPPING MOTOR CONTOLLER Device ID EMOT_ Data Code Length Description Servo Control 77 0 Turn servo checking on If the encoder mode is installed with this command motor movements are checked against encoder increments If no movement is detected like stalling motor driver will stop and ramp up again until it reaches the target This mode with joystick disabled will track the external motor movements through encoder and will c
24. control byte Bit 0 Main shutter 1 Auto mode 0 Manual mode Bit 1 Aux shutter 1 Auto mode 0 Manual mode Setting bits 0 and 1 of the control byte sets shutter 1 and 2 to the automatic mode In manual mode shutters do not change positions while filter wheels are moving In automatic mode shutters are closed for the duration of the filter change and opened again when filter wheel is stopped Bit 2 Main Exp Shutter 1 Auto exp shutter 0 Manual exp shutter Bit 3 Aux Exp Shutter 1 Auto exp shutter 0 Manual exp Shutter When these bits are set shutters are opened and closed for the specified time at the end of the filter movement Bit 4 Ext trigger level 1 Active high 0 Active low This bit will regulate external shutter active trigger level Set by Switch 3 on power up and overwritten by this code Bit 5 Macro sequencer 1 ON 0 0OFF When this bit is set to 1 external triggers will act as a sequence advancer The sequence table may be written with a different code and when this bit is set external trigger will advance the table index and move to filter wheels contained in the table pointed by the index Bit 6 Sync output active level 1 Active high 0 Active low This bit will regulate the active level of sync output Set by Switch 4 on power up and overwritten by this code 119 1 Read control byte The control byte described above is read LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 154 of 158 LEP
25. default this point id should be modified The range of identification number is from 0 to 99 LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 63 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 17 Reserved Motor ids and Point ids Some of the Motor ids and Point ids are reserved for specific purposes In order to execute certain commands properly these reserved motors should be used and their respective point ids values must be preserved For example CALIB S command uses motor ids X and Y All prescribed point ids values for this command should be preserved 17 1 Reserved Motor ids The following motor ids are reserved for Stage movements X Stage movement X axis Y Stage movement Y axis The following motor ids are reserved for various axis Focus finder or stage vertical movement Auxiliary axis Auxiliary axis Auxiliary axis Auxiliary axis Auxiliary axis QOwNADMT LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 64 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 17 2 Reserved Point ids X99 X axis calibration speed of stage Y99 Y axis calibration speed of stage Point 99 for the X and Y motor ids are reserved for calibration speed Original running speed is replaced with the calibration speed before the command is executed Original running speed is restored upon completion of the command X97 XY axis vector speed used wit
26. for the endlimit Setting a slower top speed will result is more accurate repeatable end limit capture Goto positive endlimit Motor is activated in the positive direction until an end limit is reached then repositioned on the limit The status quality termination of this move may be verified with command 136 This move uses the top speed command 83 to do its search for the end limit Setting a slower top speed will result is more accurate repeatable end limit capture LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 98 of 158 Ludl Electronic Products Device Name Device ID Code Data Length Position Parameters 65 108 64 103 3 Read Second Status CODE LISTING User s Manual 73005051 DC SERVO MOTOR CONTOLLER EMOTD Description Write motor position counter This is a two s complement 3 byte number This parameter is loaded only once on power up and reloaded again if adjustments are needed Read motor position counter with status byte The first three bytes is the two s complement motor position counter And the next byte is the status byte The counter is updated with every movement of the motor See Read Status Byte explained later for the format of the status byte Write second motor position counter This is a two s complement 3 byte number This parameter is loaded only once on power up and reloaded again if adjustments are needed Usually this counter is
27. higher the slowest speed Minimum sample time is OxOF Default is 0x40 Current is in Amps and has a range of 0 to 6 amps Programmed value Max Amps 42 5 If the motor exceeds this value for more than 0 8 seconds the motor driver will be shut down and the over current error bit is set See command 155 and 136 If set to OxFF the over current sensor is disabled Default OxFA 5 88 Amps Current Record number is the last record number that was loaded There are 20 record numbers 0 19 See Command 38 This field is read only and is ignored on Load DC Controller Parameter Values command number 154 DSP Filter Acceleration is the actual acceleration the DSP system uses The value maybe read or set through commands 54 or 154 The range is 0 0x7FFF the LSB is 256 resolution fraction and the units are in CPR sampletime The old command read set ramp time commands 113 and 81 may still be used but has limited programmable range To Convert from rpm sec to CPR sampletime use the following equation and then multiply by 256 to include the fraction then write it to the register LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 95 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005051 DC SERVO MOTOR CONTOLLER Device ID EMOTD Data Code Length Description CPR sampletime RPM s CPR Sampetime sec 0 01667 rpm sec See command 18 for more information on DC DS
28. id motor id Read motor speeds for given motor ids or Speed motor id value motor id value Write speed to the given motor ids The value is given in pulse per second form The maximum value for speed is 2764800 pulses per second The minimum value for speed is 85 pulses per second The maximum value specified is a computed value and depends on motor type Typical maximum speed for LEP stages is 300 000 to 400 000 pulses per second If there are no errors a positive reply is sent SPEED R 100000 T 200000 Z 5000 A SPEEDRTZ A 100000 200000 5000 LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 38 of 158 Ludl Electronic Products MAC 5000 User s Manual 9 10 Starting Speed Control Command Format Reply Example STSPEED This command is similar to SPEED command with the exception of being the bottom speed of acceleration When motors are moved they will start moving with programmed starting speed accelerate until programmed top speed is reached The default value on power up is 5 000 hz Stspeed motor id motor id Read motor starting speeds for given motor ids or Speed motor id value motor id value Write motor top speed to the given motor ids The value is given in pulse per second form The maximum value for speed is 2764800 pulses per second The minimum value for speed is 1000 pulses per second It should be noted that maximum v
29. increment buffer to present position buffer and load this position to target and then move the motors It is used when motor movement distances are same It combines the loading new target and move commands in a single byte command Incremental move downwards Same command as above except that direction is reversed Write Increment value This is a two s complement 3 byte number for the increment counter Use this value to program the distance for incremental moves Read Increment value This is a two s complement 3 byte number for the increment counter Incremental up and down moves between encoder pulses This command is only significant if motor is used with the encoder option The motor will move the amount specified by the parameter In this case the amount is expressed in motor steps not encoder pulses The parameter specified is in two s complement 3 byte number The motor may be moved forward or backward depending on the sign of the parameter The movement is relative to the present position This command is similar to the incremental moves described earlier with a few differences First increment value is included within the command Then the motor is started and stopped without any acceleration or deceleration This command also uses the programmed run speed with a lesser maximum speed The maximum speed 25000 pulse per second The minimum speed 84 pulse per second The most important difference is that this command will
30. length is assumed always zero To speed up communications the data length for these commands are dropped It should be noted that even the data length is zero there might be data coming from controller Request Device Status This command consists only of device number instruction code and end of command code to be sent to the interface The interface will always will respond with one byte of data Instruction code for this command is decimal 63 Upon receiving the command interface will send one of the following bytes depending on whether device is busy or not 98 b if device is not busy 66 B if device is busy Example The following bytes are sent to interface 2 63 58 Meaning Check whether or not Device No 2 is busy If the value of the byte received is 66 then device is busy with executing a command It should be noted that if a device which is addressed does not exist the response to this command will always be the device busy code 66 If the value of the byte received is 98 then device is not busy LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 76 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual Start Function This command consists only of device number instruction code and end of command code There is no reply coming from interface Depending on the module this command will start different functions For example it may start a motor driver or start a
31. motor is rotating run flag is set in the motor status byte Motor will stop if one of the following event is occurred 1 A stop command is received 2 An end limit switch is closed 3 The same command is received with the speed equal to zero The following equation should be used in order to convert speed given in pulse per second unit to a binary value to be loaded with this command output value 8 388 608 5 529 600 speed The speed is given in pulse per second and it is positive or negative depending the direction of the rotation The programmable speed limits are minimum speed 0 659 pulse per second maximum speed 5 529 600 pulse per second It should be noted that the maximum speed specified above is the internal calculation limit and does not necessarily means the running speed of the motor installed in the system It is left to the user to limit the actual maximum running speed There is no reading back command the last speed written with this command at the present time LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 80 of 158 Ludl Electronic Products Device Name Device ID Code Data Length Centering The Axis 48 3 CODE LISTING User s Manual 73005050 STEPPING MOTOR CONTOLLER EMOT_ Description Center or search for home pulse command This command s parameter value is similar to the Variable Speed Rotating command explained earlier but comman
32. move the motor the same amount of steps regardless of whether or not encoders are installed When used with an encoder installed the motor can be positioned between encoder pulses regardless of the resolution of the encoders The position read after using this command will not change until the motor is moved to the full encoder step For example Suppose we have an encoder with five 5 motor steps per one 1 encoder pulse If you want to move the motor only three 3 motor steps forward use this command with the parameter being equal to three 3 LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 79 of 158 Ludl Electronic Products Device Name Device ID Code Variable Speed Rotating 47 Data Length 3 CODE LISTING User s Manual 73005050 STEPPING MOTOR CONTOLLER EMOT_ Description Write rotating speed to motor driver This command will rotate the motors without specifying any other target or speed This number is a 3 byte signed number which specifies the direction and the speed of the rotation When this number is positive motor will rotate towards bigger numbers and when it is negative will rotate towards smaller numbers This command is reloadable If the motor is already rotating it will ramp up or down depending the last speed loaded There is no target number to stop the rotation of the motor The ramp value may also be reloaded to reflect the new ramping time While
33. off This command removes powers from the DC motor allowing it to rotate freely 62 1 Primary Brake Control This command turns the primary motor brake on or off A data of 1 will turn it on and a 0 will turn it off 40 1 Third Axis Control This command controls the state of the third axis See table for operation Data Command 0 Data Command 1 Data Command 2 Motor Off Motor Fwd Infinitel Motor Bwd Infinitel Motor Off Motor Fwd for ms Motor Bwd for ms 41 2 Third Axis Timer Set This command set the time out value that command 40 uses The allowable range is 0 to 65535 zero disables the timer function The default value is 1000ms 1 Second L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 119 of 158 LEP 2001 Ludl Electronic Products Device Name Device ID Code Data Length Position Parameters 65 64 108 97 109 103 84 116 86 118 3 CODE LISTING User s Manual DUAL DC MOTOR CONTOLLER DMOTD Description Write Primary motor position counter This is a two s complement 3 byte number This parameter is loaded only once on power up and reloaded again if adjustments are needed Write Secondary motor position counter This is a two s complement 3 byte number This parameter is loaded only once on power up and reloaded again if adjustments are needed Read Primary motor position counter with status byte The first three bytes is the two s complement
34. order to use version information this command should be used twice without any other commands in between If other commands are used after the first read id command the next read id command will reply with module identification It could also be determined that the reply with version string procedure is not yet implemented when the first character of the expected version string is not a 0 LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 114 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005051 DC SERVO MOTOR CONTOLLER Device ID EMOTD Data Code Length Description Read Version No 127 6 Read date and version This code will read date and version information explained above Where read id twice scheme explained above may be used with all versions this code may be used with newer versions where this code is implemented Request Device Status 63 NONE Request Status Request whether or not device is busy One of the following codes is sent back to the host depending on the status of device No data length byte is required 66 If device is busy 98 If device is not busy Parameters should only be loaded when a device is not busy but they can be read anytime LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 115 of 158 LEP 2001 Ludl Electronic Products Device Name Device ID Data Code Length Soft Limits Commands 16 1
35. other words joystick deflections can be downloaded from a external computer Mid point of joystick value is 128 which will stop the joystick movements Bigger values will move motor in one direction and smaller values will move motor in the other direction proportional to the value loaded Read joystick deflection values The value read will be the deflection values read from analog input port for joystick The value is ranged from 0 to 255 Mid position has the value of around 128 LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 106 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005051 DC SERVO MOTOR CONTOLLER Device ID EMOTD Data Code Length Description Load Open Loop Constant 92 1 An unsigned one byte binary number This number represents the open loop constant explained above The valid range of open loop constant is from 1 to 255 On power up default value is 5 In a special case when loaded number is equal to zero an internal routine is executed to calculate both constants However the precision of the calculation is limited and the result may not be correct For this reason when motor is no longer busy both closed and open loop encoder constants should be examined and corrected by the host system Not Implemented For backwards compatibility Read Open Loop Constant 124 1 Read the open loop counter constant programme d Not Implemented For backwards compat
36. run if motor power is turned off with this command Goto endlimit Motor is activated until an end limit is reached Motor is positioned at the endlimit Direction of search is fixed and depends on the reverse direction switch Write motor position counter This is a two s complement 3 byte number This parameter is loaded only once on power up and reloaded again if adjustments are needed Read motor position counter with status byte The first three bytes is the two s complement motor position counter And the next byte is the status byte The counter is updated with every movement of the motor See Error Reference source not found explained later for the format of the status byte Read motor position counter This is the two s complement motor position counter The counter is updated with every movement of the motor Write target position counter This is a two s complement 3 byte number This parameter is loaded every time motor should be moved to different position Read target position counter This is a two s complement 3 byte number for the target counter LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 78 of 158 Ludl Electronic Products Device Name Device ID Code Incremental Movements 43 45 68 100 46 Data Length 0 CODE LISTING User s Manual 73005050 STEPPING MOTOR CONTOLLER EMOT_ Description Incremental move upwards This command will add the
37. table shows each bits functions Shutter status is correct when used with software commands Front panel operation WILL affect shutter status bits Bit 0 Bit 1 Bit 2 Bit 3 Bit 4 Bit 7 Timer 1 status Timer 2 status Shutter 1 status Shutter 2 status Shutter 3 status Roll Over Warning 1 on O off 1 on O off 1 open O closed 1 open O closed 1 open O closed 1 present O none The Roll Over Warning bit is set when the system has either reloaded it s position or is near the rollover point It is reset at boot up and when system is homed Due to hardware limitation the internal position counter must be reloaded before it rolls over To accomplish this the system briefly removes power from the motor and reloads it s new position If in the rare condition that the system is unstable at this time it is possible but unlikely that system could lose slight position Therefore this bit is provided so that the user may home the system to prevent or restore position accuracy LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc LEP 2001 Page 153 of 158 8 13 01 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005080 amp 73005081 FILTER SHUTTER CONTOLLER Device ID EFILS Data Code Length Description Automatic Shutter Control 87 1 Write control byte On power this byte is cleared to zero The specified bits of the parameter may be set or cleared to control the different function The
38. wafer alignment Instruction code for this command is decimal 71 Stop Function This command consists only of device number instruction code and end of command code There is no reply coming from the interface Instruction code for this command is 66 This command is sent when a specific module is required to stop execution of a function Since every module has a different function to execute means of stopping the function is also different For example this command may stop the stepping motors of a motor driver module if it were already running LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 77 of 158 LEP 2001 Ludl Electronic Products Device Name Device ID Data Code Length Motion Control 71 0 66 0 60 0 61 0 39 0 Position Parameters 65 3 108 4 97 3 84 3 116 3 CODE LISTING User s Manual 73005050 STEPPING MOTOR CONTOLLER EMOT_ Description Start motor motions It will start motor to reach target position if motor is not running already It will send busy code while moving the motor if status is requested Stop motor motions If motor is running it will come to a stop after ramping down It will respond with a not busy code after a complete stop if status is requested Power up default Motor power on Motor power should be turned on before running motors Power up default Motor power off To turn the power off to the motor phases Motor will not
39. with the value Each controller may have 5 filter shutter boards installed Where each board is addressed with the number specified with device number there is no space between the board identifier S and the board number S2 or S3 etc The range of device number is from 1 to 5 and may be omitted when it is equal to 1 Reply A positive reply is sent if no error The reply does not mean the end of exposure Example Exp1 S 1000 Exposure time of shutter 1 will be 1 second Exp1 S Expose shutter 1 Exp2S Expose shutter 2 L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 19 of 158 Ludl Electronic Products MAC 5000 User s Manual 7 5 Front Panel Switching Control Command PANEL Format Panel S Panel F This command is used to enable and disable the front panel switches of modules specified It will disable the front panel if option is used and will enable it if option is used The following table shows which Modul ids are used S Filter shutter module F Focus module Reply A positive reply is sent if there are no errors Example Panel F Enable front panel switches of focus module Panel F Disable front panel switches of focus module Panel S Enable front panel switches of filter module Panel S Disable front panel switches of filter module LAEBUS MAC5000 PGM Manual MAC5S000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 20 of 158 Ludl Electronic Products
40. 0 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 58 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 12 Center Stage Command CALIB S WARNING This command cannot be repeated with an empty line It will center the stage and set stage position to zero The only commands which can be downloaded while calibrating are HALT and WHERE The other commands will cause the N BUSY message to reply When the calibration is over the A reply is sent to host signaling the end of operation The speed of the motors can be programmed by using the command WRITE X99 and Y99 Original speed values are replaced after completion of the command Reply If there are no errors a positive reply is sent back when the stage is centered Example CALIB S L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 59 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 13 Status Request Command Format Format Reply Example STATUS STATUS device id This command is used to inquire if motor movements are finished or not When it is used without the device id parameter reply will report the status of the group of the move commands When it is used with device id parameter reply will only report the busy status of the module specified with the device id It should be noted that this command takes only ONE device id as parameter Supposing that 3 motors are moving simultaneously the STA
41. 0 pps Power up focus scan speed is 20000 pps By omitting the value previously written focusing speed can be read A positive reply is sent if no error Fspeed 10000 A Fspeed A 10000 8 13 01 Page 24 of 158 Ludl Electronic Products MAC 5000 User s Manual 8 4 Focus Data Step Command FSTEP Format Fstep or Fstep value To read and write the focusing data collection amount Focusing is done by moving the focusing motor for a certain distance and by collecting intensity data coming through the viewing camera The intensity will change with the changing focusing point The focus point therefore will be where the maximum intensity was This is accomplished by moving the focus motor for a given number of pulses and reading the intensity levels This procedure is repeated the number of times given with this command The distance for a focusing sweep can be calculated with the following distance Fstep value profile distance Fstep value is given with this command and profile distance is given with the LDPRDIST which is explained later By omitting the value previously written focusing step can be read Reply A positive reply is sent if no error Example Fstep 100 A Fstep A 100 L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 25 of 158 Ludl Electronic Products MAC 5000 8 5 Profile Distance 8 5 1 Profile Distance Load User s Manual Command LDPRDIST Format Ldp
42. 01 1 Read joystick normal top speed This is a one byte straight binary number 102 1 Read joystick faster top speed This is a one byte straight binary number The following equation can be used to convert the binary number read back to speed in pulse per second units speed pulse sec 1843000 binary value LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 105 of 158 LEP 2001 Ludl Electronic Products Device Name Device ID Data Code Length Joystick Control 74 0 75 0 72 0 76 0 Joystick simulations 44 1 122 1 CODE LISTING User s Manual 73005051 DC SERVO MOTOR CONTOLLER EMOTD Description Joystick enabled To enable the joystick or trackball function when motor is not moving Power up default Joystick disabled To disable the joystick or trackball function when motor is not moving Make joystick fast speed to ramp up This command will affect how the joystick fast key will act when pressed with joystick deflected either side With this command when joystick fast key is pressed motor will ramp up to faster then joystick speed Power up default Make joystick fast speed to ramp down This is the opposite of the above command When joystick fast key is pressed motor will ramp down to a slower speed than joystick speed Load soft joystick values This value when is equal to 128 will have no affect on joystick movements Any other value will simulate the joystick deflections In
43. 2001 Ludl Electronic Products Device Name Device ID Data Code Length High Speed Sync Mode 44 4 Byte 1 Byte 2 Byte 3 Byte 4 Sequencer 43 6 CODE LISTING User s Manual 73005080 amp 73005081 FILTER SHUTTER CONTOLLER EFILS Description Image capturing After loading the 4 bytes filter wheel will rotate with the specified speed and will pulse the sync output when the filter position and bit position are matched Bit positions are specified with the third and fourth byte The break command will stop the rotation at the next wheel position Speed of the Main axis O no rotation 1 255 rotation speed Speed of the Aux axis Bit 0 for main wheel number 1 Bit 1 for main wheel number 2 etc When bit is set to one and the wheel is in position sync output is pulsed Same as byte 3 for Aux wheel Loading of sequence bytes After loading the six bytes auto sequence mode is initiated In this mode a internal index will increment automatically when a trigger input is received The sequence values pointed by the index will be used as the next target wheel positions A zero value for both wheels will set the index to beginning of table The high nibble of the byte is the main wheel position and the low nibble is the aux wheel position For example byte 1 is 26 byte 2 is 41 and byte 3 is 00 The first trigger will move main wheel to 2 and aux to 6 The index will be incremented The next trigger will move main t
44. 3 01 Page 128 of 158 LFP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005056 AUTO FOCUS CONTOLLER Device ID EAFC_ Data Code Length Description The MAC5000 AutoFocus consists of using a 73005056 Microstep motor controller driver in conjunction with the 73005085 AutoFocus processor module All commands are processed by the focus processor and if needed transparently sent to the motor controller drive The 73005056 modules do not connect directly to the bus and will not show up when the system configuration is read high level command RCONFIG for example Codes with an asterisk were new to the MAC2002 series Codes with a double asterisk were new to the MAC5000 series Focus Controls 32 0 Start focusing Front panel magnification switch position will control the focus range while focusing It is a software substitute for the manual focus switch on the front panel 33 0 Start focusing with HIGH magnification Using this mode the front panel magnification switch is ignored 34 0 Start focusing with Medium magnification Using this mode the front panel magnification switch is ignored 35 0 Start focusing with Low magnification Using this mode the front panel magnification switch is ignored 73 1 Set focus mode 0 step and measure mode similar to MAC2000 amp MAC2002 1 continuous profile mode Power up default is read from configuration SW1 85 0 Enable front panel manua
45. 30ms and must to divide by 42 5 to convert in to Amps Sets the Motor PWM Value This command allows the motor to run in constant torque mode The first byte is a signed char 100 whose value times 24 represents the voltage across the motor The second byte of this command is not currently used and is revered for future uses a zero should be write to it for future compatibility In order to use this feature you must turn off the motor power first Then you may write successively to this register On exit of this mode you MUST write zero to the PWM register and than re enable power 194 1 Read servo following error crash variables and soft stop ramp variable Data format Length 8 Byte 1 SoftStopRamp this number controls how quick the system will stop the motor when a soft stop is initiated Soft stop s are all stop except limit stop Limit stops always use a value of zero The smaller the number the quicker the stop the default is 20 Byte 2 Crash Events Trip Point Range 0 255 Default is 0 Byte 3 Crash_PWM Trip Point Range 0 128 Default is 100 Byte 45 Servo Following Trip Point Range 0 OxFFFF Default 30 Byte 6 8 Current Servo Following Error Read only The servo following error crash detect routine will stall the motor if The current PWM value is larger than the Crash PWM Trip Point Byte 3 and when the current Servo Following Error value is larger than the Servo Following Trip Point Bytes45 And this conditions occur N ti
46. 50 STEPPING MOTOR CONTOLLER Device ID EMOT_ Data Code Length Description Open and closed loop constants For the closed loop operation and double counting mode there are two counters installed One of these counters is defined as open loop counter and the other is defined as the closed loop counter The purpose of the open loop counter which is defined in this manual as the first counter is to count the pulses generated by the motor driver in order to move the stepping motor The purpose of the closed loop counter which is defined in this manual as the second counter is to count the pulses returned from an encoder attached mechanically to the axis of the stepping motor The relation between the two counters is defined below with an equation Counter Ratio open loop constant closed loop constant For the proper operation of motor movements this ratio has to be known internally This is accomplished by writing the two constant values on the right side of the equation The two constants being only one byte long have the range of from 1 to 255 Open loop constant may be loaded with a value of zero in order to activate the automatic calculation of both constants In case the automatic calculation is not satisfactory and the constants are unknown they can be determined by a simple procedure Before starting the procedure both counters should be cleared Then motor should be moved for some amount of steps The larger amount of steps will res
47. 65535 Each EDAIO device can have 8 inputs and 8 outputs EDAIO with higher address is the lower byte and EDAIO with lower address is the higher byte WRITE on 0 or write on 1 write o0 0 Write 01 1 This format writes one or more input bits N can have values from 0 to 15 This format is used to set or reset the individual output ports of the module The EDAIO with higher address holds the input bits 0 to 7 and EDAIO with lower address holds the input bits 8 to 15 For all digital Write commands bits corresponding to missing module are ignored See also Error Reference source not found command LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 49 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 10 3 Analog Output Read write volt Command Format Reply Example LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc LEP 2001 VOLT Volt or Volt l value Read or write the analog output of DAIO module Value is expressed in millivolt and the range is from O to 10000 By using this command resolution is 1 millivolt To use this command a hardware modification is also required to the DAIO module If there are no errors a positive reply is sent back If a reading is expected the value is also included in the reply Volt l 1000 A set output voltage to 1000 millivolt or 1 volt Volt A 1000 last output voltage set is 1000 millivolt 8 13 01 Page 50 o
48. AIO Data Code Length Description Digital Input 97 1 Read digital input Input logic True Input pullups cause open input to read logic 1 129 1 Read latched input For use with switch closure inputs transitions from 1 to 0 on digital input lines will cause a 1 to be loaded into the corresponding bit position for this command Reading this byte will reset the latch This code is supported in firmware DAIO ver 4 00 1 18 99 Digital Output All digital outputs are open collector and floating at power up 68 1 Load digital output 100 1 Read digital output Read Back of last value loaded with code 68 Analog Input All analog inputs have 10k pull down resistors Range is 0 to 5 00 volt for 0 to 255 value read 104 1 Read analog input channel 0 106 1 Read analog input channel 1 107 1 Read analog input channel 2 108 1 Read analog input channel 3 Analog Input with 10 bit resolution Extended resolution inputs similar 8 bit for commands explained above Raw value read range is from O to 1023 counts These codes are supported in firmware DAIO ver 4 00 1 18 99 140 2 Read analog input channel 0 141 2 Read analog input channel 1 142 2 Read analog input channel 2 143 2 Read analog input channel 3 L EBUS MACS000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 147 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005060 DIGITAL ANALOG IO CONTOLLER Device ID EDAIO Data Code Lengt
49. CONTROL 9 14 SERVO CONTROL 9 15 MOTOR STATUS BYTE READ 9 16 STOP ACTIVITY 10 ANALOG DIGITAL INPUT OUTPUT COMMANDS 10 1 READ 10 1 1 READ POINT ID 10 1 2 READ INPUT OUTPUT 10 2 WRITE 10 2 1 WRITE POINT ID 10 2 2 WRITE INPUT OUTPUT 10 3 ANALOG OUTPUT READ WRITE VOLT 10 4 ANALOG OUTPUT READ WRITE NUMBER 11 SLIDE LOADER COMMAND 11 1 INITIALIZE SYSTEM 11 2 FETCH NEXT SLIDE 11 3 UNLOAD SLIDE 11 4 GET SLIDE 11 5 PUT SLIDE 11 6 SELECT SLIDE 11 7 CONFIGURE THE NUMBER OF CASSETTES INSTALLED 11 8 SLIDE LOADER STATUS 11 9 HOME ARM LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc Page 3 of 158 LEP 2001 User s Manual 30 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 46 46 47 48 48 49 50 51 52 52 53 53 54 54 55 56 57 58 8 13 01 Ludl Electronic Products MAC 5000 User s Manual 12 CENTER STAGE 59 13 STATUS REQUEST 60 14 CURRENT VERSION REQUEST 61 15 READ CONFIGURATION 62 16 POINT IDS 63 17 RESERVED MOTOR IDS AND POINT IDS 64 17 1 RESERVED MOTOR IDS 64 17 2 RESERVED POINT IDS 65 LOW LEVEL 66 LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALtevB doc 8 13 01 Page 4 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual HIGH LEVEL Section I LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 5 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User
50. Controls the video Input and Output selection Supported on 5085 v0 6 and up Bit 0 7 controls the video input selection 0 select video input 1 Power on Default 1 select video input 2 Bit 1 7 controls the video output selection 0 video Bypass Video signal is sampled only Internal video buffer is bypassed and no termination is applied 1 select video with focus window superimposed Selected Input video source is terminated Power on Default Bits 2 7 7 are reserved for future use and just be set low This command is write only LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALTevB doc 8 13 01 Page 135 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005056 AUTO FOCUS CONTOLLER Device ID EAFC_ Data Code Length Description Scan Focus 89 6 This function collects information while it scans the video over a user defined range and speed The start of the scan position depends on the upper nibble of the mode byte see below After the scan is completed the motor is positioned according to the lower nibble of the mode byte see below Once the command has finished you can use command 189 to retrieve information on this scan see command 189 This function does not process the data It s up the user to determine if the maximum contrast position found is a valid focus point or not Command Format Byte 1 LSB of scan speed Byte 2 MSB of scan speed Byte 3 LSB of scan range Byte 4 MIB
51. EBUS MACS5000 PGM Manua MAC5000 PGM MANUALTevB doc 8 13 01 LEP 2001 Page 117 of 158 Ludl Electronic Products Device Name Device ID Data Code Length Undocumented Commands 57 0 59 0 41 3 107 3 94 2 98 2 CODE LISTING User s Manual 73005051 DC SERVO MOTOR CONTOLLER EMOTD Description Preliminary Sets Limit Trap On If enabled the system will set the stall bit see Command 128 if a limit is found during a position move or the target position is not reached the servo activation distances 79 Sets Limit Trap Off Cancels the above mode Default power up Loads ramp offset Reads ramp offset Loads stop Speed Reads stop speed Note commands that have an asterisk by there command number require extra processing time Any command that changes the Sample Time CPR Joystick Speeds or accesses the nonvolatile ram will take time to build tables calculate float type variables or access slow peripheral all of which require extra time Therefore when using these commands you must poll the busy status till they become unbusy or delay any further communication to this device for 5 seconds The busy status can be tested with the test busy command Cmd 63 Here are the commands that require extra time Load DC Parameters Cmd 54 Load Save data records Cmd 38 Write joystick normal top speed Cmd 69 Write joystick fast top speed Cmd 70 All other commands are processed quickly LAEBUS MAC5000 PGM
52. EP 2001 Ludl Electronic Products MAC 5000 User s Manual 11 7 Configure the number of cassettes installed Command SLCONFIG Format Slconfig Cassette Siconfig 1 Slconfig 0 Defines a cassette as installed 1 Parameter clears the configuration to no cassettes installed 0 Parameter returns cassettes installed Example SLCONFIG 1 A SLCONFIG 1 A SLCONFIG 0 A12 A1 A2 Note At present the number of cassettes is limited to 2 Upon power up the 2 cassettes are configured by default LAEBUS MACS5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 56 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 11 8 Slide loader status Command SLSTATUS Format Slstatus Returns a status code N idle B busy n last error code subsequent call will clear the error Example SLSTATUS AN AB A Note During a sequence move e g SLNEXT SLPUT etc if any other command other than SLSTATUS is sent to the controller the response will be N BUSY LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 57 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 11 9 Home Arm Command SLHOME Format Slhome Simple Slide Loader the arm is first lowered TO then brought to home RO and finally up T1 BioPrecision Slide Loader the arm is lowered X3 then brought to home R0 Example SLHOME A LAEBUS MACS500
53. Ludl Electronic Products MAC 5000 User s Manual LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 1 of 158 LEP 2001 Ludl Electronic Products MAC 5000 HIGH LEVEL 1 INTRODUCTION 1 1 BASic RULES 1 2 REPLY 1 3 POSITIVE REPLY FORMATS 1 4 NEGATIVE REPLY FORMATS 1 5 ERROR CODE TABLE 2 TERMINOLOGY 3 REMOTE RESET 4 REMOTE KEY READINGS 5 INTERFACE REMOTE CONTROL BYTE 6 TRANSMISSION DELAY 7 FILTERWHEEL COMMANDS 7 1 ROTATE FILTER WHEEL 7 2 OPEN SHUTTER 7 3 CLOSE SHUTTER 7 4 SHUTTER CONTROL 7 5 FRONT PANEL SWITCHING CONTROL 7 6 STATUS BYTE READ 8 FOCUS COMMANDS 8 1 FOCUS WINDOW CONTROL 8 2 FOCUS FRAME DELAY 8 3 FOCUS SCAN SPEED 8 4 FOCUS DATA STEP 8 5 PROFILE DISTANCE 8 5 1 PROFILE DISTANCE LOAD 8 5 2 PROFILE DISTANCE READ 8 6 FOCUSING 8 7 FOCUS INTENSITY DATA LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc Page 2 of 158 LEP 2001 User s Manual 13 14 15 16 16 17 18 19 20 21 22 22 23 24 25 26 26 27 28 29 8 13 01 Ludl Electronic Products MAC 5000 9 MOTOR COMMANDS 9 1 MOVE MOTOR ABSOLUTE 9 2 MOTOR MOVE VECTOR 9 3 MOTOR MOVE RELATIVE 9 4 ENCODER MOTOR MOVE 9 5 MOTOR SPIN 9 6 CENTERING STAGE 9 7 MOTOR POSITION READ 9 8 MOTOR POSITION SET 9 9 SPEED CONTROL 9 10 STARTING SPEED CONTROL 9 11 ACCELERATION CONTROL 9 12 HOME MOTORS 9 13 JOYSTICK
54. NG MOTOR CONTOLLER Device ID EMOT_ Data Code Length Description Servo Speed Read Command 129 2 Incremental move downwards The returned value is an binary unsigned integer representing a speed factor used internally The following equation can be used to convert the binary number back to speed in pulse per second units speed 5529600 65536 binary value Read Status Byte 126 1 Read status byte from motor driver This value will reflect various internal status of motor driver The format is explained below Bit Description 0 0 motor not running 1 motor is running 1 O servo is OFF 1 servo is ON 2 O motor phases are turned OFF 1 motor phases are turned ON 3 O joystick is turned OFF 1 joystick is turned ON 4 0 motor is not ramping 1 motor is ramping up or down 5 O ramping down 1 ramping up 6 this bit is the soft copy of the CW end limit switch 7 this bit is the soft copy of the CCW end limit switch Note changed 10 23 98 to reverse bits 6 and 7 The corrected values are now shown LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 90 of 158 LFP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name Device ID Code 73005050 STEPPING MOTOR CONTOLLER EMOT _ Data Length Description Read Second Status Byte 128 1 Read Identification 105 6 Read status byte number two This value will reflect various internal status of motor driver The
55. OME Filter No 1 Rotate wheel to next filter Rotate wheel to previous filter Rotate wheel to Filter No 1 Rotate wheel to Filter No 2 Rotate wheel to Filter No 3 Rotate wheel to Filter No 4 Rotate wheel to Filter No 5 Rotate wheel to Filter No 6 Read filter wheel position 71 0 Seek to HOME Filter No 1 81 0 Rotate wheel to next filter 82 0 Rotate wheel to previous filter 33 0 Rotate wheel to Filter No 1 64 0 Rotate wheel to Filter No 2 35 0 Rotate wheel to Filter No 3 36 0 Rotate wheel to Filter No 4 37 0 Rotate wheel to Filter No 5 94 0 Rotate wheel to Filter No 6 98 1 Read filter wheel position LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALtevB doc 8 13 01 LEP 2001 Page 150 of 158 Ludl Electronic Products Device Name Device ID Code Dual Filter Wheel Control Data Length CODE LISTING User s Manual 73005080 amp 73005081 FILTER SHUTTER CONTOLLER EFILS Description 30 2 Move Wheels Simultaneously This command should be used if both motors are to be run together They do not have to run the same distance and can be ran opposite directions The first data byte LSB will move the main filter wheel and second byte MSB will move the auxiliary wheel The following list describes the data byte values These values are valid for both wheels and are given in ASCII upper case character form P move to previous filter N move to next filter A numeric value n move to the filter whe
56. P gains 38 1 Load or saves a data record A data record contains all the internal parameters the system needs to configure the DSP Local parameters can be edited using commands 54 and 154 and then saved with this command Command syntax s The 7 lower bits of the data hold the record number n The most significant bit of the data instructs the system to load or save record number n A high 8 bit will save the current parameters and a low 8 bit will load the current parameters Available record numbers are 0 19 See table below Record numbers 16 are read only and are factory set Records 0 7 15 are read write and are stored in nonvolatile memory Record numbers 16 19 are stored in volatile Ram and are not preset Therefore the user must save to this area before loading from this area The advantage of this area is access time A typical use for this area would be to change more than one parameter quickly between two different types of moves Record Access Mem Type Preset Selectable Number c Read Only Sere Software and DIP a Command 38 also loads saves a few global parameters These global parameters are stored in a common non volatile area Each load or save record will also load or save these common parameters See table for a list of record parameters and common parameters LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 96 of 158 LFP 2001 Ludl Electronic Products CODE LISTING User s Manual
57. TUS command will reply with a N if all 3 motors are stopped If any them are still running the reply will be B If any of the single modules status is desired that modules device id should be used as a parameter Status Send motor status To inquire whether or not any of the motors are active Status F Send FOCUS EAFC board status It checks if focusing is done after one of the focus command is executed It should be noted that this command s reply does not follow the common rules To speed up communication between controllers the reply is ONLY ONE CHARACTER WITHOUT any new line character The positive reply takes two forms N if no motors are running B if one or more motors are running MOVE X 1000 Y 22000 A STATUS B any of the X and Y motor is still running STATUS N both X and Y are not running LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 60 of 158 Ludl Electronic Products MAC 5000 User s Manual 14 Current Version Request Command VER Format Ver This command will return the version number of the interface module only Reply Following reply is sent from interface to host Version no 6 300 A LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 61 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 15 Read Configuration Command RCONFIG Format Rconfig Send configuration report This command is implement
58. When joystick fast key is pressed motor will slow down Turn servo checking on This command is used when encoders are installed In a closed loop system feedback is received from encoders If no movement is detected motor driver will stop the pulses to the motor and retry by accelerating from starting soeed until it reaches the target This mode with joystick disabled and in idle state will keep the motor in the same position if it is moved externally Power up default Turn servo checking off This command cancels the above one Load servo activation distance Programmed in units of encoder steps this is the minimum number of steps the motor should skip before internal software will start moving it back to the original position Default value is 2 Read servo activation distance LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 142 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005056 AUTO FOCUS CONTOLLER Device ID EAFC_ Data Code Length Description Read Identification 105 6 Read identification from device First 5 characters are the device ID EAFC The sixth byte is a binary representation of the configuration dip switch as shown in the following table Bit6 Bit 5 oO 0 0 Sw5 Sw4 Sw3 Sw2 Swi The same code may be used consecutively in order to get the version information from the device When first used the reply will contain the mod
59. ake effect in focusing range Otherwise H M and L stand for high medium and low ranges With these options different ranges of profile distances can be used for different environments Reply A positive reply is sent if no error The reply does not signal the end of action Example Focus H Focus by selecting the high range distances A LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 28 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 8 7 Focus Intensity Data Command SIG F Format Sig F Read Focus intensity signal This command will read the signals read from camera It can be used for test purposes or fine adjustments etc A lower value will mean poor focus and higher values will signify clearer focus Reply A positive reply with a value is sent back if a focus board is installed A negative reply is sent otherwise Example Sig F A 4000 L EBUS MAC5000 PGM Manual MAC5S000 PGM MANUALrevB doc 8 13 01 Page 29 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 9 MOTOR COMMANDS 9 1 Move Motor Absolute Command MOVE Format Move point id point id or Move motorid position motorid position Move one or more motors to an absolute position A point id and or an absolute number can be specified in the same line If a Motor ld is specified which does not exist in the controller the controller will ignore the command for that specifi
60. al moves 101 3 Read Secondary Increment value This is a two s complement 3 byte number for the increment counter LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 121 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name DUAL DC MOTOR CONTOLLER Device ID DMOTD Data Code Length Description Constant Velocity Commands 47 3 Writes a constant velocity to Primary motor axis This command will rotate the motors without specifying any other target or speed This number is a 3 byte signed number which specifies the direction and the speed of the rotation When this number is positive motor will rotate towards bigger numbers and when it is negative will rotate towards smaller numbers This command is reloadable If the motor is already rotating it will ramp up or down depending the last speed loaded There is no target number to stop the rotation of the motor The ramp value may also be reloaded to reflect the new ramping time While motor is rotating run flag is set in the motor status byte Motor will stop if one of the following events has occurred A stop command is received An end limit switch is closed The same command is received with the speed equal to Zero The following equation should be used in order to convert speed given in pulse per second unit to a binary value to be loaded with this command output value 8 388 608 5 529 600 speed The speed is given in p
61. alue is a computed value And this value depends on the external factors like load motor type etc It should be programmed with a speed that will not cause motor stalling If there are no errors a positive reply is sent SPEED R 10000 T 20000 Z 5000 A SPEED RTZ A 10000 20000 5000 LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 39 of 158 Ludl Electronic Products MAC 5000 User s Manual 9 11 Acceleration Control Command Format Reply Example ACCEL Accel motor id motor id or Accel motor id value motor id value This command is similar to Speed command Acceleration number can have values from 1 to 255 which controls the acceleration curve of the motors This ramp value is inversely proportional to the ramping time The smaller the ACCEL value the shorter the ramp time If there are no errors a positive reply is sent ACCEL R 100 T 60 Z 10 A ACCELRTZ A 100 60 10 LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 40 of 158 Ludl Electronic Products MAC 5000 User s Manual 9 12 Home Motors Command Format Reply Example LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc LEP 2001 HOME Home motor id motor id Move the specified motors toward the endlimit switch The endlimit is reached by running the motor to a large negative position The motor will rest on the en
62. an be used to convert the binary number 115 2 Read motor top speed This is a 2 byte straight binary number The equation below can be used to convert the binary number The following equation can be used to convert the binary number read back to speed in pulse per second units speed pulse sec 5529600 65536 binary value LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 104 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005051 DC SERVO MOTOR CONTOLLER Device ID EMOTD Data Code Length Description Joystick Speed Write Commands 69 1 Write joystick normal top speed This is a one byte straight binary number This will affect the joy stick top speed when it is deflected to either side without pressing the fast joystick key 70 1 Write joystick faster top speed This has the same function as above except that it will affect the maximum speed when fast key is pressed with joy stick deflected either side How to calculate these two numbers is ex plained at the end of this manual The following equation can be used to convert a given speed in pulse per second units to a binary number This is the one byte number which is used with write joystick speeds binary output value 1843000 speed Speed is the desired speed in pulse per second units The maximum binary output value 255 7 227KHz The minimum binary output value 1 1 843MHz Joystick Speed Read Commands 1
63. and the interface will switch to High Level mode and will accept commands only in a High Level format Switch to Low Level Mode Byte 1 255 Byte 2 66 After sending this control command the interface will switch to low level mode and accept commands only in a low level format Remote Reset Interface Byte 1 255 Byte 2 82 This command will cause the interface to restart resulting in a hard reset to the other modules This command can be used to restart the controller if a malfunction is detected Remote Switch Scanning Byte 1 255 Byte 2 75 There may be up to four manual switches installed in the controller This command is used reading which switch is pressed The interface module will scan these switches and will store the switch values in a first in first out buffer The interface will respond with one byte to each command The response is either a 0 48 dec meaning no switch closure or a number from 1 to 4 corresponding to the number of the switch stored in FIFO buffer The number is expressed in ASCII form LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 70 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual Transmission Delay Byte 1 255 Byte 2 68 Byte 3 delay value This command has an effect if add transmit delay switch is open on the interface module The interface controller transmits available bytes with no delays as soon as transmitter is empty This ma
64. anual MAC5000 PGM MANUALrevB doc 8 13 01 Page 66 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual MAC 5000 COMMUNICATION INTERFACE NO 73005042 ccs ssetsessescessessessesseuseeseeseesaeseesensaenanees 68 GENERAL DESCRIPTION wsiieiisccniarsicssnsenntsenasisesiasninutonnstineiisnanavinina since vistnnnasidvieaesnitinmatsaviiennmiadensiabinsnaed 68 RS 232 TIME OUT ic cisesscrcsanteasisenecenediunctasiouvauccauenavndutevaustevsneusesueauucdweunasbondenmusudemnueavaueuuesuevuondelneuaiiinie 68 HARDWARE SWITCH DESCRIPTION vcsisissscnssissiieavinstunectnnnnsrinisinnnscrsdinavatvaninaidvnnsninisinaiiaviineniistmisraiivnnesi 69 RS 232 INTERFACE CONTROL COMMANDS ccssssssnsssceeseessesnensussensussenaessenaeuoesnunousnenausnenaeenenaes 70 SWITCH TO HIGH LEVEL MODE isisiisssiccsisinsssnssunstwisnitisinsansinninesninicestnnsibiasiausnninetidibitasiicncisawbinuwinainisidblannien 70 SWITCH TO LOW LEVEL MODE siaisesssnscstavscsoseswasstaanaearstenvensiatevsasuncnsraesnesisnsenasvaneeatavevueitnwssssnnuweaosseeraenas 70 REMOTE RESET INT ERAGE eras terra arrenar rrena ranne Sucrtapeninniia dimers lamavea Geeibdatavsenlntn eu dewtecne 70 REMOTE SWITCH SCANNING HE isiscisdcsisesstocacanseuvsnednevencnstesvensusinvcsucionvesssnewenddsdemvonscaduvscuscnwasnansuuisucssenvanaes 70 TRANSMISSION DELA Y o aerae a rannen Teper aaan Aaaeeeaa Aara aan Aa ENa AKER EA EWEA Pa EAE Pa PAHAA EAEE NAKEN EAA EEKE Enaki 71 RS 232 SERIAL COMMAND FORMAT
65. as carriage return backspacing and tab There is a set of built in commands with unique names These commands can be executed by simply sending the command name with some parameters if required The reply received will be in a preset format and may include the result required For example Reading the position of motor X takes the form command Where X reply A 120000 1 1 Basic Rules Characters sent from a host computer are stored in a buffer and executed after receiving a carriage return Each line should be started with a command name and terminated with a carriage return character Each line can only contain one command name such as CALIB or HALT but more then one parameter can be appended to a command by respecting the command format Each command is executed when a carriage return is received Commands and parameters should be separated by at least one space or tab character When a parameter with a number b involved one or more spaces or tabs are permitted between them For example The following formats are all the same where x 123 lt cr gt where x 123 lt cr gt where x 123 lt cr gt The command termination character specified here as lt cr gt has the value of 13 decimal Od hexadecimal and represented in C programming language by r carriage return LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 8 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 1 2 Reply
66. at by software command This is accomplished by sending two binary bytes before sending the first command in the new format For example if the Interface is in High Level Format switch to Low Level Format first and then send the Low Level commands to the Interface Once switched to either format the Interface will recognize only commands from that format and will stay in the same format until switched again The following bytes given in decimal form are sent to switch between formats To switch to High Level Format Byte 1 255 Byte 2 65 To switch to Low Level Format Byte 1 255 Byte 2 66 For example If the Interface is in High Level Format send 255 and 66 to switch to Low Level Format Send 255 and 65 to switch to High Level Format LEP MAC 5000 Controllers are shipped with the following default settings Baud rate 9600 Parity Disabled Data bit 8 Stop bit 2 Format Low Level LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 6 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual Hardware Switch Description Switches are numbered from 1 to 8 Switch Nos 1 to 3 set the baud rate Switch Switch Switch Baud Rate No 1 No 2 No 3 19200 nonea 0a n Open asese open QO0O E T Open Open closed r10 O A T closed Open eseese open DAOO E closed Open sesoses closed 115200 reee a OPeN eee closed open DIGOO rraren einni 0
67. binary number This is the one byte number which is used with write joystick speeds binary output value 1843000 speed Speed is the desired speed in pulse per second units The maximum binary output value 255 The minimum binary output value 1 Joystick Speed Read Commands 101 1 Read joystick normal top speed This is a one byte straight binary number 102 1 Read joystick faster top speed This is a one byte straight binary number The following equation can be used to convert the binary number read back to speed in pulse per second units speed pulse sec 1843000 binary value LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 141 of 158 LEP 2001 Ludl Electronic Products Device Name Device ID Data Code Length Joystick Control 74 0 75 0 72 0 76 0 Servo Control 77 0 78 0 91 3 128 3 CODE LISTING User s Manual 73005056 AUTO FOCUS CONTOLLER EAFC_ Description Joystick enabled To enable the joystick or trackball function when motor is not moving Power up default Joystick disabled To disable the joystick or trackball function when motor is not moving Make joystick fast speed to accelerate This command will affect how the joystick fast key will act when pressed with joystick deflected either side When joystick fast key is pressed motor will accelerate Power up default Make joystick fast speed to decelerate This is the opposite of the above command
68. ble below DIP SW1 4 6 Record number Closed 0 0 7 Open 1 Default Sw4 lsb Last Stage1 Stage2 Robot Robot Robot Focus Gear Record 3x2 6x6 Arm Rotation Lift Drive Head stored 4x4 8x8 Motor Changing Counts per Revolution or Sample time causes system to recalculate internal system parameters of which takes about half a second Therefore check busy status before writing a new command to systems or wait more than half a second LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 94 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005051 DC SERVO MOTOR CONTOLLER Device ID EMOTD Data Code Length Description DSP filter parameters affect the system with the following formula and table below For more information see Hewlett Packard s HCTL 1100 http www semiconductor agilent com MC Gain 4 Xa Pole 256 MCy 1 Gain 4 Zero 256 Xn 1 n current sample time n 1 previous sample time MC Present Motor Command Output MC 4 Previous Motor Command Output Xn Present error between the Actual Pos and Command Pos Xn1 Previous error between the Actual Pos and Command Pos Increase in Stability Response Stiffness Parameter 1 dead band Slightly Faster Decreases Better Gain Worse Faster Increases Sample Worse Slower Decreases time The smaller the sample time the faster the overall system speed but the
69. c Motor Id Reply A positive reply is sent back when the command is received correctly Reception of the reply does not mean the end of execution and another command see 13 Status Request should be executed to determine the end of execution Example MOVE r1 Move motor R to the absolute position stored in Point Id R1 MOVE x 10000 y10 Move the X motor to the 10000 position and the Y motor to position stored already in Y10 If Y10 contains the value 2500 the Y motor will move to that position Both motors will move simultaneously LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 30 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 9 2 Motor Move Vector Command VMOVE Format Vmove point id point id or Vmove motorid position motorid position Move one or two motors to an absolute position The purpose here is to run the motors so that they will plot a straight line The speed is not specified for each motor axis but for the plotting This running speed is programmed by writing to point id X97 which is in pulse per second unit There is also a starting speed which is programmed with point id X96 It should be noted that the starting speeds and running speeds of the individual axes are internally calculated and they are not updated to their original values at the end Reply A positive reply is sent back when the command is received correctly Reception of the reply does not mean the
70. code is immediately repeated the following information is sent back to host Byte 0 48 decimal 0 Byte 1 month of the year in binary form Byte 2 day of the month in binary form Byte 3 year MOD 100 in binary form Byte 4 current version number multiplied by 10 in binary form Byte 5 Not used In order to use version information this command should be used twice without any other commands in between If other commands are used after the first read id command the next read id command will reply with module identification It could also be determined that the reply with version string procedure is not yet implemented when the first character of the expected version string is not a 0 Read Version No 127 6 Read date and version This code will read date and version information explained above Where read id twice scheme explained above may be used with all versions this code may be used with newer versions where this code is implemented Parameters should only be loaded when a device is not busy but they can be read anytime LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 149 of 158 LEP 2001 Ludl Electronic Products Device Name Device ID Code 72 70 78 49 50 51 52 53 54 97 Auxiliary Filter Wheel Data Length Main Filter Wheel 0 O O O O O O O CODE LISTING User s Manual 73005080 amp 73005081 FILTER SHUTTER CONTOLLER EFILS Description Seek to H
71. colon character is defined as the end of command code and used to terminate the command loading sequence If parity check is enabled a parity error does not create a syntax error if serial byte received is correct LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 72 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual Terminology The basic unit of a controller is defined here as a module For a specific function a different kind of module is designed A controller is a group of modules for a specific purpose A controller may perform a function by using its own modules A controller for example can be specified to hold ten modules The function of a module gives identification to a module Here we call this module identification as the device id for short Every controller can be installed with the same device ids or different device ids Every module has its own selection number referred here as device address While there may be multiple modules with the same device ids none of them may have the same device address Group No 1 This is the one byte device address The device address is set by hardware jumpers for each module which are exclusive for each module installed in a controller Since each module s address jumpers contain two header banks this hardware value ranges from 0 to 20 in decimal The software module address 255 cannot be used Example Suppose the hardware jumpers
72. d s function is different This command may be used for two different purposes First one is to locate the motor to a specific position And the second one is to center the motor on the axis between two endlimit switches The motor will travel between two endlimit switches While traveling a positive going edge of a pulse will stop the motor where the pulse was received This pulse should be at least 5 microsecond of duration In case this pulse is not detected or it is not present at all then motor is positioned in the center of the axis The length of the axis is defined with the endlimit switch positions The travel speed between endlimits is programmed with the command parameter but the final centering speed is the programmed running speed 30 31 Enable position counter capture This command will enable reception of the pulse which normally used as the home pulse This command should be used before the center command if centering is desired with the pulse If pulse is disabled centering is done by moving to the center of axis by detecting the two end limit switches Disable position counter capture Power up default state Recommended use of this command will be after centering an axis LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 81 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005050 STEPPING MOTOR CONTOLLER Device ID EMOT_ Data Code Length Description L
73. d these values It is not necessary to rewrite the unmodified values Reply A positive reply is sent if no error Example Ldprdist A L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 26 of 158 Ludl Electronic Products MAC 5000 User s Manual 8 5 2 Profile Distance Read Command RDPRDIST Format Rdprdist To read the profile distances Use this command when profile distances in the focusing module have to be read It should be noted that the values read do not come from the CPU memory but directly from focusing module The six distances are read from the reply message The order of placement is as follows A coarse high coarse medium coarse low fine high fine medium fine low Reply A positive reply is sent if no error Example Rdprdist The following reply contains the default profile distance A 48 192 700 8 32 128 coarse high distance is 48 coarse medium distance is 192 coarse low distance is 700 fine high distance is 8 fine medium distance is 32 fine low distance is 128 LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 27 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 8 6 Focusing Command FOCUS Format Focus Focus H Focus M Focus L To execute the focusing action With this command actual focusing takes place It can be specified alone or with one of the three options If it is without any options the front panel setting will t
74. dlimit The motors stay on the end limit switch The speed of the motor is the last programmed speed If there are no errors a positive reply is sent back HOMER T z A Motor id R T and Z are homed Reply is sent back when all done 8 13 01 Page 41 of 158 Ludl Electronic Products MAC 5000 User s Manual 9 13 Joystick Control Command JOYSTICK Format Joystick motor id flag motor id flag Enables or disables the joysticks Flag can only be to enable joysticks ON and to disable joysticks OFF Reply If there are no errors a positive reply is sent back Example JOYSTICK R X T Enables motor R and disables motors X and T LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 42 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 9 14 Servo Control Command SERVO This command is used for motor drivers with encoders installed It will turn the servo on or off program the servo activation distance or return the programmed servo activation distance value Servo on condition is true if joystick is turned off When motor is not running and the motor shaft is moved externally internal software will try to move the motor back to original position The activation distance is the minimum steps which the motor driver has to be moved externally in order for the internal servo to be activated For example if the distance is programmed to be 10 then motor should be turn
75. e Reversed or Missing The control loop error can only be clear by rebooting LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 97 of 158 LEP 2001 Ludl Electronic Products Device Name Device ID Data Code Length Motion Control 71 0 66 0 60 0 61 0 39 0 29 0 CODE LISTING User s Manual 73005051 DC SERVO MOTOR CONTOLLER EMOTD Description Start motor motions Initiates a motor move command towards the target position See Command 84 The busy bit will be set while the motor is moving The busy bit will be reset at the end of the move profile The status quality termination of the move may be verified with command 136 Note that actual position should be read see command 97 to verify system is indeed at desired position Stop motor motions If motor is running it will come to a stop after ramping down It will respond with a not busy code after a complete stop if status is requested Power up default Motor power on Motor power should be turned on before running motors Power up default Motor power off To turn the power off to the motor phases Motor will not run if motor power is turned off with this command Goto negative endlimit Motor is activated in the negative direction until an end limit is reached then repositioned on the limit The status quality termination of this move may be verified with command 136 This move uses the top speed command 83 to do its search
76. e may be used with all versions this code may be used with newer versions where this code is implemented Request Device Status 63 NONE Request Status Request whether or not device is busy One of the following codes is sent back to the host depending on the status of device No data length byte is required 66 If device is busy 98 If device is not busy Parameters should only be loaded when a device is not busy but they can be read anytime LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 158 of 158 LEP 2001
77. e see Motor Speed Write Commands of this section on page 6 Also note the maximum focus scan speed is limited to 33khz for the discrete focus algorithm Default focus scan speed is 20khz 112 2 Read focus scan speed 122 3 Read focus light intensity The value is unsigned straight 3 byte binary number The number is proportional to the light intensity When using a triple beam system the value of window A is returned When properly focused this value is at peak value 130 6 Read Three Window Contrast Values Data is read back as Byte 1 Window A Isb Byte 2 Window A msb Byte 3 Window B Isb Byte 4 Window B msb Byte 5 Window C Isb Byte 6 Window C msb 126 1 Read focus status byte This byte is a collection of focus status bits LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 133 of 158 LFP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005056 AUTO FOCUS CONTOLLER Device ID EAFC_ Data Code Length Description The following table represents the status byte configuration Bit 7 Meaning when Meaning when Low When Valid Supported High 1 0 in Focus NOT Found Focus Found Valid after focus ALL command goes not bus Focus Found Focus NOT Found Valid after focus EAFC v1 0 command goes not bus 2 7 Contrast Data No Contrast Data Valid after focus EAFC v1 0 Found Found command goes not bus 2o pod Reserved O_O Motor Driver Motor Driver Not Motor Driver Stall Bit
78. e to read back the value LAEBUSMAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 103 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005051 DC SERVO MOTOR CONTOLLER Device ID EMOTD Data Code Length Description Motor Speed Write Commands 82 2 Write mtor starting speed This is a 2 byte straight binary number This is the speed the motor will start ramp up If this value is bigger than top speed then there is no ramping up The equation below can be used to convert the speed given in pulse per second 83 2 Write motor top speed This is a 2 byte straight binary number When motor is moved this will be the running speed after ramping up The equation below can be used to convert the speed given in pulse per second The following equation can be used to convert a given speed in pulse per second units to a binary number This is the number which is used with write starting speed and write top speed commands binary output value 65536 5529600 speed Speed is the desired speed in pulse per second units The maximum binary output value 65534 The default binary output value 65259 The minimum binary output value 1 The maximum speed 2764800 pulse per second The default speed 20000 pulse per second The minimum speed 84 375 pulse per second Motor Speed Read Commands 114 2 Read motor starting speed This is a 2 byte straight binary number The equation below c
79. ed at least 10 encoder steps before the servo system activates Format SERVO motor id value Reply A Load the servo activation distance value in encoder steps Example Servo r 4 t 5 Format SERVO motor id Reply A value value Read the servo activation distance value Example Servo rt A45 Format SERVO motor id Reply A Turn servo activation ON Example Servo r t Format SERVO motor id Reply A Turn servo activation OFF Example Servo r t Any of the above formats can be mixed freely not exceeding the maximum number of characters a command line can hold 100 Example SERVO R 40 r r z 1022 t A 40 10 L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 43 of 158 Ludl Electronic Products MAC 5000 User s Manual 9 15 Motor Status Byte Read Command RDSTAT Format Rdstat motor id Read status byte from motor modules This command will reply with the status byte of the specified module One motor id may be specified as a parameter Refer to motor status byte format explained elsewhere in this manual low level binary section See also Read Status Byte command Reply A positive reply is sent if no error The reply will contain a value requested Example Rdstat X A 64 Rdstat Y A 120 L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 44 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 9 16 Stop Activity Command HALT
80. ed for monitoring purposes It will send back a list of motor id s labels and device numbers with descriptions Reply A typical reply is displayed below Beginning of reply Configuration Report Dev Address Label Id Description 1 EMOT X X axis stage MCMSE 9 EDAIO l O digital i o EDAIO 10 FFIND Not supported 18 EFILS S2 Filter Shutter FWSHC A End of reply The report shows only the devices installed If device address does not match the label then id and description will show the correct device label and id with a warning The devices installed but not supported with high level language are described as Not Supported Such devices may be controlled with low level languages The labels displayed in the last column can be compared to the labels on the front panel of devices L EBUS MAC5000 PGM Manual MAC5S000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 62 of 158 Ludl Electronic Products MAC 5000 User s Manual 16 POINT IDS Values can be stored in Points for later usage or retrieval Point is a basic memory unit which is identified with a number appended to the Modul ld Each point for different Modul ld s is referred to here as Point ld For example R3 is a Point ld for Modul ld R and point No 3 Some of the point ids hold values to be used by specific commands and they are reserved for this purpose For example CALIB S command uses point id 99 to load the calibration speed If another calibration speed is desired other than
81. el number n Example consider you want to move main filter to next position and auxiliary filter to position 5 The data bytes should have the following values Data byte 1 N Data byte 2 5 L EBUS MACS000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 151 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005080 amp 73005081 FILTER SHUTTER CONTOLLER Device ID EFILS Data Code Length Description Shutter Control Shutter No 1 74 0 Open shutter 75 0 Close shutter 84 2 Load exposure time for shutter Exposure time resolution is 1 millisecond The range is from 1 to 65 535 mllisecond 88 0 Expose shutter Shutter No 2 76 0 Open shutter 77 0 Close shutter 85 2 Load exposure time for shutter Exposure time resolution is 1 millisecond The range is from 1 to 65 535 millisecond 89 0 Expose shutter Shutter No 3 79 0 Open shutter 80 0 Close shutter Front Panel Control 68 0 Disable front panel switches 69 0 Enable front panel switches Default at power on L EBUS MACS000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 152 of 158 LEP 2001 Ludl Electronic Products Device Name Device ID Data Code Length Read Status 115 1 CODE LISTING User s Manual 73005080 amp 73005081 FILTER SHUTTER CONTOLLER EFILS Description Read status byte The byte read shows the last shutter positions and timer status The following
82. encoders The purpose here is to move the motors between encoder pulses Otherwise with other MOVE and MOVREL commands motors will move in increments of encoder pulses It should be noted that there is no acceleration and deceleration when this command is executed and the maximum speed is limited to 25000 pulses per second Although distance specified can be a number 3 bytes long this command will function more effectively if used for short distances Reply Same reply format is applied as to MOVE command Example MOVE r1 x 100 Move the motor R the number of steps stored in Point ld R1 The motor X will move 100 steps All motors will move simultaneously L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 33 of 158 Ludl Electronic Products MAC 5000 User s Manual 9 5 Motor Spin Command SPIN Format Spin motor id speed motor id speed Spin motor with the speed specified in pulse per second units This command is reloadable while motor is already rotating Speed is a signed decimal number If speed is positive motor is rotated toward ascending numbers and if it is negative motor is rotated toward descending numbers Ramping up or down is governed by the number loaded with the ACCEL command see Error Reference source not found and it is reloadable while rotating The motor will spin without stopping The direction can be changed without first stopping motors In such case motor is ramp down
83. end of execution and another command see 13 Status Request should be executed to determine the end of execution Example Vmove x 100000 y 50000 The both motors will stop at the same time Vmove x 300000 In this case there is one axis The running speed should be equal to vector speed programmed LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 31 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 9 3 Motor Move Relative Command MOVREL Format Movrel point id point id or Movrel motorid distance motorid distance Move one or more motors a distance relative to present position The format of this command is very similar to the MOVE command The number of steps the motors will move are specified with distance Reply Same reply format is applied as to MOVE command Example MOVREL r1 x 100 Move the motor R the number of steps stored in Point ld R1 The motor X will move 100 steps All motors will move simultaneously LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 32 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 9 4 Encoder Motor Move Command MOVE Format Movei point id point id or Movei motorid distance motorid distance Move one or more motors a distance relative to present position The format of this command is similar to the MOVE command This command is significant if motors are used with
84. eply Formats An error code is added to the negative replies Xyxter IN 1 The command Xyxter is unknown to the controller Move X N 2 The axis X is not installed LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 9 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 1 5 Error Code Table General 1 Unknown command 2 Illegal point type or axis or module not installed 3 Not enough parameters e g move r 4 Parameter out of range 21 Process aborted by HALT command Slide Loader 4 parameter out of range used for cassette or slot range errors 10 No slides selected 11 End of list reached 12 Slide error 16 Motor move error move not completed successfully due to stall end limit etc 17 Initialization error LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 10 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 2 Terminology Each module or function of a module is identified with a single alpha character referred to here as Modul Id Signed integer values can be stored in Points for later usage or retrieval A Point is a basic memory unit which is identified with a number appended to the Modul ld Every point for different Modul ld s is referred to here as Point ld For example X3 is a Point ld for Modul ld X and Point No 3 The largest value a point can hold is 4 bytes long Points may also be used to read and write
85. equested Power up default 60 0 Motor power on Motor power should be turned on before running motors Power up default 61 0 Motor power off To turn the power off to the motor phases Motor will not run if motor power is turned off with this command Position Parameters 65 3 Write motor position counter This is a two s complement 3 byte number This parameter is loaded only once on power up and reloaded again if adjustments are needed 108 4 Read motor position counter with status byte The first three bytes is the two s complement motor position counter The next byte is the status byte The counter is updated with every movement of the motor The following is the status byte configuration Bit 7 0 if CW end limit is closed Bit 6 0 if CCW end limit is closed Front panel select position Low Medium High Bit 5 0 1 0 Bit 4 1 1 0 Bit 3 0 joystick disabled Bit 2 0 motor power is off Bit 1 0 servo off Bit 0 0 motor not running 97 3 Read motor position counter This is the two s complement motor position counter The counter is updated with every movement of the motor L EBUS MACS000 PGM Manual MAC5000 PGM MANUAL revB doc 8 13 01 Page 137 of 158 LEP 2001 Ludl Electronic Products Device Name Device ID Data Code Length 84 3 116 3 Incremental movements 43 0 45 0 68 3 100 3 46 3 CODE LISTING User s Manual 73005056 AUTO FOCUS CONTOLLER EAFC_ Description Write target positi
86. er the ramping up or down time Power up default is 20 Read Secondary ramping time Same as above to read back the value 8 13 01 Page 123 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name DUAL DC MOTOR CONTOLLER Device ID DMOTD Data Code Length Description Primary Motor Speed Write Commands 83 2 Write Primary motor top speed This is a 2 byte straight binary number When motor is moved this will be the maximum running speed after ramping up The equation below can be used to convert the speed given in pulse per second The following equation can be used to convert a given speed in pulse per second units to a binary number This is the number which is used with write starting speed and write top speed commands binary output value 65536 5529600 speed Speed is the desired speed in pulse per second units The maximum binary output value 65534 The default binary output value 65259 The minimum binary output value 1 The maximum speed 2764800 pulse per second The maximum speed 20000 pulse per second The minimum speed 84 375 pulse per second NOTE This conversion is the same as EMOT but different from HSMOT Primary Motor Speed Read Commands 115 2 Read Primary motor top speed This is a 2 byte straight binary number The equation below can be used to convert the binary number The following equation can be used to convert the binary number read back to speed in pulse per
87. f 158 Ludl Electronic Products MAC 5000 User s Manual 10 4 Analog Output Read Write number Command Format Reply Example LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc LEP 2001 BVOLT Bvolt I or Bvolt l value Read or write the analog output of DAIO module Value is a decimal number ranging from O to 65535 The resolution of the output in this special 16 bit mode is 153 microvolt 1volt 65535 Since the resolution of the previous command is only 1 millivolt this command may be used if the higher resolution is required The following equations may be used in order convert the units To convert the given volt to decimal value value 65535 volt 10 To convert the value read from the command to volt volt value 10 65535 If there are no errors a positive reply is sent back If a reading is expected the value is also included in the reply Volt l 100 A set output voltage to 15 millivolts Volt A 100 last output voltage set is 15 3 millivolt 8 13 01 Page 51 of 158 Ludl Electronic Products MAC 5000 User s Manual 11 Slide Loader Command 11 1 Initialize System Command SLINIT Format Slinit Initializes the system All axes will move to the predefined limits using the speed values stored in X99 Stage X Y99 Stage Y B99 Focus R99 Slide Arm T99 Slide Lift on BioPoint version Z99 Cassette Indexer After each axis has reached the limit a fine limit search
88. for a module are set to a value of four Then the device address is for that module is four Any command string intended for this module will have this device address as the group one Group No 2 This group will hold the one byte instruction code There is a set of instruction codes for each device These listings explained in more detail per their purpose Each code s value can be found under the Code header Example Loading present location counter for a motor driver code is decimal 65 Reading the same value back code is decimal 97 LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 73 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual Group No 3 This group will hold the number of data bytes included with the instruction While data can be of any amount of bytes the number of data bytes is a one byte character This value is also found from tables provided under the Data Length heading and is fixed for every instruction The range is 0 to 255 decimal If the command is a Block Read Command then this value represents number of blocks to be read in which case each block is 256 bytes long If there is no data following the code the value is zero and must be included with the command There are some exceptions to this rule which is explained later Example Consider the command of loading the base of a motor driver Instruction code is decimal 65 and number of data bytes is decimal
89. format is explained below Bit Description 0 O motor is not stalled 1 motor is stalled 1 0 motor is NOT servo aligning when at idle 1 motor is servo aligning when at idle 2 0 NO EEPROM is installed 1 EEPROM is installed Read identification from device First 5 characters read are the device ID EMOT The sixth character is a binary value which reflects the state of the configuration switches according to the following table The same code may be used consecutively in order to get the version information from device When first used the reply will contain the module ID in the code manuals given for each module When the same code is immediately repeated the following information is sent back to host Byte Byte Byte Byte Byte Byte OP eh 2 48 decimal 0 month of the year in binary form day of the month in binary form year MOD 100 in binary form current version number multiplied by 10 in binary form Not used In order to use version information this command should be used twice without any other commands in between If other commands are used after the first read id command the next read id command will reply with module identification It could also be determined that the reply with version string procedure is not yet implemented when the first character of the expected version string is not a 0 LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 91 of 158 Ludl
90. h Description Analog Output Read Returns value loaded with the Analog Output Load code described below 109 1 Read analog output channel 0 110 1 Read analog output channel 1 111 1 Read analog output channel 2 112 1 Read analog output channel 3 Analog Output Load Analog output range is O to 10 volt for O to 255 byte value On power up all analog outputs 0 volt 77 1 Load analog output channel 0 78 1 Load analog output channel 1 79 1 Load analog output channel 2 80 1 Load analog output channel 3 Extended Output Load The following two codes are used to write a 16 bit value into the analog output channel 0 Analog output channel 1 is cascaded to channel 0 and cannot be used in this mode For this code output range is also 0 to 10 volts but has a higher resolution 69 2 Load analog output channel 0 101 2 Read analog output channel 0 LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 148 of 158 LFP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005060 DIGITAL ANALOG IO CONTOLLER Device ID EDAIO Data Code Length Description Read Identification 105 6 Read identification from device First 5 characters should match the device ID shown at the top of this page The same code may be used consecutively in order to get the version information from the device When first used the reply will contain the module ID in the code manuals given for each module When the same
91. h VMOVE command X96 XY axis vector starting speed used with VMOVE command Following point ids are reserved for the focus module Their purpose is to program six scan ranges Point ids Range FOl renn Coarse High F92 sirri Coarse Medium POs E Coarse Low POA E Fine High F95 enn Fine Medium Po rennan Fine Low Following point ids are reserved for the slide loader BioPrecision Slider Loader Point ids Range gt a E E Pickup Point for cass1 D AE E Pickup Point for cass2 Wed naani Point where Arm Lowers D A EAT Pickup Point for cass1 peers Pickup Point for cass2 Bire a Focus pickup point Z1 thur Z25 anaana Slide slots 1 thru 25 FOG on Indexer offset distance typically 1500 2000 counts RO Arm Home RI ecann Arm Retract Pie saseatenseniesieaenecss Arm Fetch Ronane err ere Arm Replace Simple Slide Loader Point ids Range Pel rescnhecraniss Pickup Point for cass1 X2 unina Pickup Point for cass2 Y e cemene Pickup Point for cass1 5 CAE EET Pickup Point for cass2 BI errr rere tert Focus pickup point Z1 thur Z25 anaana Slide slots 1 thru 25 220 anisa Indexer offset distance typically 1500 2000 counts RO eiiis Arm Home RI iiini Arm Retract R sceinadeeiiweridestantes Arm Fetch cee re Arm Replace WO eines Arm Up Engaged TF E Arm Down Disengaged L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 65 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual LOW LEVEL Section IT LAEBUS MACS5000 PGM M
92. he hard end limit stop As of version 8 2 The soft and hard limits are logically ANDed If any of them is true then motor is stopped Soft limits can be activated and deactivated externally The motor will not move if present position is smaller then low limit and if present position is bigger then high limit There are three new codes added regarding these functions 16 1 Activate or deactivate soft limit detection The parameter has the following values parameter 0 Deactivate soft limit detection POWER UP DEFAULT parameter lt gt 0 Activate soft limit detection The programmed soft limits will be used as low high limits 17 6 Write soft limit values First three byte is one limit and second three byte is the other limit Internally soft limits are sorted and smaller number becomes the low limit and bigger number becomes the high limit Each 3 byte group has the following order Byte 0 LSB of the limit 1 Byte 1 mid byte of the limit 1 Byte 2 MSB of the limit 1 Byte 3 LSB of the limit 2 Byte 4 mid byte of the limit 2 Byte 5 MSB of the limit 2 Byte 0 is the byte following the data length byte in the command stream 210 6 Read soft limit values First three byte is the high limit and second three byte is the low limit Each 3 byte group has the following order Byte 0 LSB of the limit high Byte 1 mid byte of the limit high Byte 2 MSB of the limit high Byte 3 LSB of the limit low Byte 4 mid byte of the limit lo
93. he two position samples used in servo mode The larger the number the more time the system takes to acquisition actual position of which is compared to the target position Larger numbers increase position accuracy but increase overall system move time Certain number may match system resonant frequency and cause system to oscillate Read settling time value Load servo activation distance Programmed in units of encoder steps this number represents the minimum allowable position error Read servo activation distance Write Dynamic gain control Used for high resolution scales which tend to cause instability when a high static gain is used The individual gains can be tailored to give high stability and accuracy If in servo mode and after a move is complete gain is increased to the boost level and held until actual position is within servo activation distance of the target position Until this command is used all three gains will be loaded with the static gain value when one uses the load DSP command Command 54 After this command is used only static gain will be load with the load DSP command Also included in this command is the servo mode time out value This value will allow the servo mode loop to cycle n times before t times out This code is added starting at version 2 3 Data format Byte 1 Static gain used when motor is stationary Byte 2 Dynamic gain when motor is moving Byte 3 Boost gain used to minimize error at e
94. heck against last position counter If they are not the same motor is moved back to last position stopped Power up default up to and including version 2 0 78 0 Turn servo checking off This command cancels the above one Power up default starting from version 2 1 79 3 Load servo activation distance Programmed in units of encoder steps this is the minimum number of steps the motor should skip before internal software will start moving it back to the original position Default value is 2 and implemented starting from version 2 1 and up 111 3 Read servo activation distance Servo Speed Write Command 93 2 Write motor servo speed The servo movements are done with the speed programmed with this command The speed equation is the same as explained with motor speeds The minimum and maximum speeds are different then the motor speeds Default value on power up set to 300 pulses per second The same equation to calculate the starting and top speed can be used for this command If speed loaded is outside the range the correct speed limit is replaced by internal software binary output value 65536 5529600 speed Speed is expressed in pulse per second units for the stepping motor The maximum speed 1250 pulse per second The minimum speed 100 pulse per second LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 89 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005050 STEPPI
95. ibility Load Closed Loop Constant 32 1 An unsigned one byte binary number This number represents the closed loop constant explained above The valid range of values for this number is from 1 to 255 On power up default value is 1 Not Implemented For backwards compatibility Read Closed Loop Constant 131 1 Read the closed loop counter ratio programmed Not Implemented For backwards compatibility LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 107 of 158 LEP 2001 Ludl Electronic Products Device Name Device ID Data Code Length Servo Control TI 0 78 0 95 1 130 1 719 3 111 3 18 4 CODE LISTING User s Manual 73005051 DC SERVO MOTOR CONTOLLER EMOTD Description Turn servo checking on This mode will load a boost gain to the motor after the completion of a move command Command 71 The intention of the boost gain is to force the mechanical system closer to its target position This boost gain will generally be higher than the static or dynamic gains see Command 18 The system will remain at this boost gain until either the error between the actual position and the target position are less than servo activation distance see command 79 or the system has times out see Command 95 Turn servo checking off This command cancels the above one Write settling time value This one byte unsigned value may range from 0 to 255 This value is used to add a delay between t
96. inputs and 8 outputs The EDAIO with higher address is the lower byte and the EDAIO with lower address is the higher byte READ 10 l1 In This format reads one or more input bits N can have values from 0 to 15 The EDAIO with higher address holds the input bits 0 to 7 and EDAIO with lower address holds the input bits 8 to 15 READ o This format reads all the output latches The value read is the value written by the last WRITE O command READ 00 on This format reads the output bits N can have values 0 to 15 For all digital Read commands bits corresponding to missing module are replaced with zeros See also Error Reference source not found command LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 47 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 10 2 Write 10 2 1 Write Point id Command WRITE Format Write point id value point id value Write current value of Point ld stored in memory Reply If there are no errors a positive reply is sent back Example WRITE R1 0 T3 221 Z99 333 A L EBUS MAC5000 PGM Manual MAC5S000 PGM MANUALrevB doc 8 13 01 Page 48 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 10 2 2 Write Input Output Command WRITE Format Write o value Write on 0 1 Reply If there are no errors a positive reply is sent back Example WRITE o 255 This format writes all the outputs The value ranges from 0 to
97. ion 0 0 motor is not stalled 1 motor is stalled 1 0 motor is NOT servo aligning when at idle 1 motor is servo aligning when at idle 2 0 NO EEPROM xicor is installed 1 EEPROM xicor is installed 3 Software copy of Home limit switch 4 Software copy of Pre limit switch 5 Target reached bit Set High when move command Cmd 71 is called Cleared low when motor has reached its target position activation distance Cmd 79 If a limit stop command or external obstruction stops the motor this bit remains Set High LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 111 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name Device ID Code Read Move Status Byte 136 73005051 DC SERVO MOTOR CONTOLLER EMOTD Data Length Description 1 Read move status byte This value will reflect various possible move quality and terminations of all moves Commands 71 43 45 46 47 29 39 48 This register is cleared to 0x00 on a call to move the motor This register can be read at any time Bits 1 7 are valid after Bit 0 7 is Set The format is explained below Bit Description Bit 0 7 System Busy bit Set when the move is completed When this bit is set this register will indicate the status of the last move made Cleared 0 Busy Set 1 Move Done Not Busy Bit 1 7 Set when the move has been completed normally Normally means that the move has ramped up and
98. ip Switch 10 must be OPEN Jumper pair MDR AFC must be in the AFC position The address selection jumpers are not read in this mode and are don t cares LAEBUS MACS5000 PGM Manual MACS5000 PGM MANUALTevB doc 8 13 01 Page 145 of 158 LEP 2001 Ludl Electronic Products Device Name Device ID Data Code Length Trouble Shooting CODE LISTING User s Manual 73005056 AUTO FOCUS CONTOLLER EAFC_ Description Possible Clause Possible Solution No video on monitor Video but no window s Focus not working motor doesn t move Focus not working motor does move Focus working but not accurate Bad cable connection Cables reversed Bad Cables Too little or no Contrast Data Motor or encoder reversed Scan speed to fast Top speed to fast Excesses mechanical backlash Contrast too low Activation distance too large Test reroute cables Reverse cables Check Cable check for power on motor Check Cables check for contrast bar and is it in proportional to the contrast Reversed motor or encoder Slow down focus scan speed command 80 or command 52 54 Slow down Top Speed Command 83 Enable Anti BackLash command 51 Enhance image increase window box size Reduce Activation distance LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 146 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005060 DIGITAL ANALOG IO CONTOLLER Device ID ED
99. is conducted at 2kHz for more repeatable calibration Upon valid completion of the initialization routine operating speeds will automatically be loaded to each axis The operating speeds are stored in X98 Stage X Y98 Stage Y B98 Focus R98 Slide Arm T98 Slide Lift on BioPoint version Z98 Cassette Indexer Example SLINIT A L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 52 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 11 2 Fetch next slide Command SLNEXT Format SInext Fetches the next slide in the ordinal select list A slide currently on the way will be returned to its original location before getting the next slide on the list Reply A positive reply will indicate the ordinal position of the slide being fetched Example SLNEXT An n ordinal position 11 3 Unload slide Command SLUNLOAD Format Slunload Ordinal Position Returns a slide to its original location Reply A positive reply will indicate the ordinal position of the slide being unloaded If no number is indicated with the positive reply the slide was put on the stage using an SLGET command and therefore does not have a place in the ordinal list Example SLUNLOAD 10 A 10 L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 53 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 11 4 Get slide Command SLGET Format Slget Cassette Slot Get
100. isciscisindesiancnssunesnersinninvessniecuntenkssnnisunaceacsduosavatwnedenceakeanansinudeuceduetiiets 72 TERMINOLOGY cr aa AE A EEE a A E tetanus 73 SPECIAL COMMAND FORMA TS iiccisicsssiccisaciascieenuiissine cists listanariatediwrasieensaeiriinduiins tannic stitesusisaudasninnannleduncrineniiesd 76 START FUNC TON eects ca tec de caste oreet ra p Eana ra arara rap teu cuscwadevastadde cubsdaaesdecctcuausubadtvaaaaddieussunudsdaectduauatuness 77 STOR FUNCTION aa EEE Ea A Aaaa ea aeaa a SE Eaa E 77 73005050 STEPPING MOTOR CONTROLLER EMOT _ ssnsnnnnnusesennnnurnnnnnunnnennurnnnunnnnnennunnnnnnnrnnennnnnnnnen 78 73005051 DC MOTOR CONTROLLER EMOTD ccccssssssessseusessneseeseseesoesesseseuseveeeseesoesnesnsaenaneanse 94 DUAL DC MOTOR CONTROLLER DMOTD s ssnsusennuernnnnrurennurnrnnennurannunununennunannnnnnunennnnunnnnnnnnennnnnnnnnn 119 73005085 AUTO FOCUS CONTROLLER EAFC ssssesensnusnnnnnurnrennnrunnnnurnnnnnurunnnnnrnnennnrunnnnnnnn en nnnnnnnnn 129 73005060 DIGITAL ANALOG IO CONTROLLER EDAIO ss snnusnnennrennnnurnrennnrannnnnnnnnnnnnnnnnnnnnnennnnnnnn nn 147 73005080 amp 73005081 FILTER SHUTTER CONTROLLER EFILS nsnannnnnnnnnnennnnnrnrennnrnnnnnnnnrennnrnnnnnn 150 LAEBUS MAC5000 PGM ManualMAC5000 PGM MANUALrevB doc 8 13 01 Page 67 of 158 LFP 2001 Ludl Electronic Products MAC 5000 User s Manual MAC 5000 COMMUNICATION INTERFACE NO 73005042 RS 232 USB SERIAL INTERFACE General Description The
101. its speed 5529600 65536 binary value LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 109 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name Device ID Code Read Status Byte 126 6 7 73005051 DC SERVO MOTOR CONTOLLER EMOTD Data Length Description 1 Read status byte from motor driver This value will reflect various internal status of motor driver The format is explained below Description 0 motor not running 1 motor is running O servo is OFF 1 servo is ON O motor phases are turned OFF 1 motor phases are turned ON O joystick is turned OFF 1 joystick is turned ON 0 motor is not ramping 1 motor is ramping up or down O ramping down 1 ramping up this bit is the soft copy of the CW end limit switch this bit is the soft copy of the CCW end limit switch Note changed 10 23 98 to reverse bits 6 and 7 The corrected values are now shown LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 110 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005051 DC SERVO MOTOR CONTOLLER Device ID EMOTD Data Code Length Description Read Second Status Byte 128 1 Read status byte number two This value will reflect various internal status of motor driver This byte also appended with the read second position counter command The format is explained below Bit Descript
102. l active windows Set Window Fill Attribute Syntax 50 1 Mode where Mode 0 or 1 for no fill or fill respectively Fill color is set by code 57 LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 130 of 158 Ludl Electronic Products Device Name Device ID Code 135 145 Data Length 12 24 CODE LISTING User s Manual 73005056 AUTO FOCUS CONTOLLER EAFC_ Description Read Three Window Sizes from local 8Bit Data is read back as Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 Window AVo Window AVw Window AHo Window AHw Window BVo Window BVw Byte 7 Byte 8 Byte 9 Byte 10 Byte 11 Byte 12 Window BHo Window BHw Window CVo Window CVw Window CHo Window CHw Read Three Window Sizes from local 16Bit Data is read back as Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 Byte 7 Byte 8 Byte 9 Byte 10 Byte 11 Byte 12 Window Avo LSB Window Avo MSB Window Avw LSB Window Avw MSB Window Aho LSB Window Aho MSB Window Ahw LSB Window Ahw MSB Window Bvo LSB Window Bvo MSB Window BVw LSB Window BVw MSB LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc LEP 2001 Page 131 of 158 Byte 13 Byte 14 Byte 15 Byte 16 Byte 17 Byte 18 Byte 19 Byte 20 Byte 21 Byte 22 Byte 23 Byte 24 Window Bho LSB Window Bho MSB Window BHw LSB Window BHw MSB Window Cvo LSB Window Cvo MSB Window CVw LSB Window CVw MSB Window Cho LSB Window Cho MSB Windo
103. l focus switch Default setting on power up 86 0 Disable front panel manual focus switch L EBUS MACS000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 129 of 158 LEP 2001 Ludl Electronic Products Device Name Device ID Code Data Length Window Commands 90 87 55 25 56 57 59 50 0 0 CODE LISTING User s Manual 73005056 AUTO FOCUS CONTOLLER EAFC_ Description Turn window off Turn window on Default setting on power up Set Local Window Size 8 bit Syntax 555 WINn Vo Vw Ho Hw where WINn 1 2 or 3 for desired window Vo Vertical Offset minimum 10 Vw Vertical Width minimum 0 Ho Horizontal Offset minimum 10 Hw Horizontal Width minimum 0 Sum of Vo Vw should be less than 262 for RS170 Sum of Ho Hw should be less than 229 for RS170 Set Local Window Size 16 bit Syntax 555 WINn Vo Vw Ho Hw where WINn 1 2 or 3 for desired window 1Byte Vo Vertical Offset 2Byte minimum 10 Vw Vertical Width 2Byte minimum 0 Ho Horizontal Offset 2Byte minimum 10 Hw Horizontal Width 2Byte minimum 0 Set Window ON OFF Syntax 56 2 WINn Mode where WINn 1 2 or 3 for desired window Mode 0 or 1 for off or on respectively Set Window Color Syntax 57 2 WINn Mode where WINn 1 2 or 3 for desired window Mode 0or1 for black or white respectively Set Window Border Visable Syntax 59 1 Mode where Mode 0 or 1 for off or on respectively This command effects al
104. ment is relative to the present position This command is similar to the incremental moves described earlier with a few differences First increment value is included within the command Then the motor is started and stopped without any acceleration or deceleration This command also uses the programmed run speed with a lesser maximum speed The maximum speed 25000 pulse per second The minimum speed 84 pulse per second The most important difference is that this command will move the motor the same amount of steps regardless of whether or not encoders are installed When used with an encoder installed the LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 138 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005056 AUTO FOCUS CONTOLLER Device ID EAFC_ Data Code Length Description motor can be positioned between encoder pulses regardless of the resolution of the encoders The position read after using this command will not change until the motor is moved to the full encoder step 92 1 Load encoder to motor steps ratio If closed loop mode is selected on power up encoder to motor steps ratio is determined by internal software This ratio is described as the number of motor pulses required per encoder pulses received through the closed loop The value is an unsigned binary number Default is determined automatically on power up by moving motor 1000 steps down and up the
105. mes where N is the Crash Events Trip Point Byte 2 A value of zero for the Crash Event Trip Point will disable this feature 14 3 Write servo following error crash variables and soft stop ramp Same format as command 194 LAEBUS MACS5000 PGM Manua MAC5000 PGM MANUALTevB doc 8 13 01 LEP 2001 Page 113 of 158 Ludl Electronic Products Device Name Device ID Data Code Length Read Identification 105 6 Version 5 8 and newer CODE LISTING User s Manual 73005051 DC SERVO MOTOR CONTOLLER EMOTD Description Read identification from device First 5 characters read are the device ID EMOT The sixth character is a binary value which reflects the state of the configuration switches according to the following table Msb Lsb Bits Bit4 Bit3 Bit2 Bitl Bitd swS Sw4 sw3 sw2 swi X X The read identification code will have the following function starting with version 5 8 EMOT devices The same code may be used consecutively in order to get version information from the device When first used the reply will contain the module ID in the code manuals given for each module When the same code is immediately repeated the dllowing information is sent back to host Byte 0 48 decimal 0 Byte 1 month of the year in binary form Byte 2 day of the month in binary form Byte 3 year MOD 100 in binary form Byte 4 current version number multiplied by 10 in binary form Byte 5 Not used In
106. motor position counter And the next byte is the status byte The counter is updated with every movement of the motor Please see page 9 below for the status byte format Read Primary motor position counter This is the two s complement motor position counter The counter is updated with every movement of the Primary motor Read Secondary motor position counter with status byte The first three bytes is the two s complement motor position counter And the next byte is the status byte The counter is updated with every movement of the motor Please see page 10 below for the status byte format Read Secondary motor position counter This is the two s complement motor position counter The counter is updated with every movement of the Secondary motor Write Primary target position counter This is a two s complement 3 byte number When the run motor command is executed the motor driver will pulse the Primary motor until this target position is reached Read Primary target position counter This is a two s complement 3 byte number for the target counter Write Secondary target position counter This is a two s complement 3 byte number When the run motor command is executed the motor driver will pulse the Secondary motor until this target position is reached Read Secondary target position counter This is a two s complement 3 byte number for the target counter LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001
107. n be used to convert the binary number The following equation can be used to convert the binary number read back to speed in pulse per second units speed pulse sec 5529600 65536 binary value LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 83 of 158 LFP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005050 STEPPING MOTOR CONTOLLER Device ID EMOT_ Data Code Length Description Joystick Speed Write Commands 69 1 Write joystick normal top speed This is a one byte straight binary number This will affect the joy stick top speed when it is deflected to either side without pressing the fast joystick key 70 1 Write joystick faster top speed This has the same function as above except that it will affect the maximum speed when fast key is pressed with joy stick deflected either side How to calculate these two numbers is explained at the end of this manual The following equation can be used to convert a given speed in pulse per second units to a binary number This is the one byte number which is used with write joystick speeds binary output value 1843000 speed Speed is the desired speed in pulse per second units The maximum binary output value 255 The minimum binary output value 1 Joystick Speed Read Commands 101 1 Read joystick normal top speed This is a one byte straight binary number 102 1 Read joystick faster top speed This is a one byte straight binary
108. n reading position 124 1 Read encoder to motor steps ratio The value is an unsigned 1 byte binary number Ramping Time 81 1 Write ramping time This is a one byte straight binary number which will change the acceleration value It is related to the time where speed is changed Smaller values are equal to bigger accelerations Power up default is 5 113 1 Read ramping time Same as above to read back the value LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 139 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005056 AUTO FOCUS CONTOLLER Device ID EAFC_ Data Code Length Description Motor Speed Write Commands 82 2 Write motor starting speed This is a 2 byte straight binary number This is the speed the motor will start ramp up If this value is bigger than top speed then there is no ramping up The equation below can be used to convert the speed given in pulse per second 83 2 Write motor top speed This is a 2 byte straight binary number When motor is moved this will be the running speed after ramping up The equation below can be used to convert the speed given in pulse per second The following equation can be used to convert a given speed in pulse per second units to a binary number This is the number which is used with write starting speed and write top speed commands binary output value 65536 5529600 speed Speed is the desired speed in pulse per
109. nd of move Byte 4 Servo Mode Time Out range 0 255 LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 108 of 158 Ludl Electronic Products Device Name Device ID Code 138 Servo Speed Write Command 93 Servo Speed Read Command 129 Data Length 4 2 2 CODE LISTING User s Manual 73005051 DC SERVO MOTOR CONTOLLER EMOTD Description Read Dynamic gain control Reads 4 bytes data format the same as command 18 Write motor servo speed Not Currently implemented in the EMOTD The servo movements are done with the speed programmed with this command The speed equation is the same as explained with motor speeds The minimum and maximum speeds are different then the motor speeds Default value on power up set to 300 pulses per second The same equation to calculate the starting and top speed can be used for this command If speed loaded is outside the range the correct speed limit is replaced by internal software binary output value 65536 5529600 speed Speed is expressed in pulse per second units for the stepping motor The maximum speed 1250 pulse per second The minimum speed 100 pulse per second Read motor servo speed The returned value is an binary unsigned integer representing a speed factor used internally Not Implemented For backwards compatibility The following equation can be used to convert the binary number back to speed in pulse per second un
110. ndow is turned on Window A Window is turned off LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 22 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 8 2 Focus Frame Delay Command FDELAY Format Fdelay or Fdelay value To read and write the framing delay count When focusing a delay can be added before the actual data reading This is done to stabilize the focusing motor which is moving for every data point The framing delay amount is expressed as number of Video Frames to wait before taking data Every Video Frame is approximately 16 6 millisecond The value s range is from 1 to 250 and it is equal to 1 on power up By omitting the value previously written framing delay can be read Reply A positive reply is sent if no error Example Fdelay 100 A Fdelay A 100 LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 23 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 8 3 Focus Scan Speed Command Format Reply Example LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc LEP 2001 FSPEED Fspeed or Fspeed value To read and write the focusing scan speed The focusing scan speed is the speed with the focus drive moves between collecting data points which is different than the speed when focus drive is used as a motor driver The value is expressed in pulse per second The range is from 84 to 3300
111. nterface On power up default value is 0 The parameter value is expressed as one byte It can have values from 0 to 255 Reply A positive reply is sent back when command is received correctly Reception of the reply also means the end of execution Return value is included in the reply if it exists Example Istat 200 write 200 to interface status byte Istat read the interface status byte L EBUS MAC5000 PGM Manual MAC5S000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 14 of 158 Ludl Electronic Products MAC 5000 User s Manual 6 Transmission Delay Command TRXDEL Trxdel parameter Format Trxdel parameter This command is used to add delays between bytes transmitted from controller to host computer When parameter is omitted the value is returned from interface The parameter is expressed as one byte and it can have values from 1 to 255 Unit of measurement is expressed as 0 5 millisecond On power up the default value is 4 which is 2 millisecond delay between transmitted bytes Reply A positive reply is sent back when command is received correctly Reception of the reply means the end of execution Example Trxdel 100 write 100 to interface transmission delay value which is equal to 50 millisecond trxdel read the interface transmission delay value LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 15 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 7 FILTERWHEEL COMMANDS
112. ntrolled by command 87 Each time the Input 2 line is triggered the filter wheels goes to the next position in the sequence If Macro Mode is disabled then Input 2 behaves like Input 1 where it behaves as a hardware trigger for the Main and Aux shutters 55 10 Load DC controller parameter values Data format Byte 1 Idle Gain Range 0 255 Byte 2 Dynamic Gain Range 0 255 Byte 3 DSP Filter Zero Range 0 255 Byte 4 DSP Filter Pole Range 0 255 Byte 5 DSP Filter Acceleration LSB in CPR sampletime Byte 6 DSP Filter Acceleration MSB in CPR sampletime Byte 7 DSP Sample Time Value Sample in secs X 125000 Byte 8 10 Spare write zero for future compatibility LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 156 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005080 amp 73005081 FILTER SHUTTER CONTOLLER Device ID EFILS Data Code Length Description 154 10 Read DC controller values Format same as above 95 1 Load Settle Time This delay is added to Busy signal there by increasing the time the system is busy Used to compensate for wheel position settle Units are in 1ms Default settle time is 5ms 130 1 Read Settle Time Reads the settle time Read Identification 105 6 Read identification from device First 5 characters read are the device ID EFILS The sixth character is a binary value which reflects the state of the configuration switches acco
113. nual MAC5000 PGM MANUALrevB doc 8 13 01 Page 82 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005050 STEPPING MOTOR CONTOLLER Device ID EMOT_ Data Code Length Description Motor Speed Write Commands 82 2 Write motor starting speed This is a 2 byte straight binary number This is the speed the motor will start ramp up If this value is bigger than top speed then there is no ramping up The equation below can be used to convert the speed given in pulse per second 83 2 Write motor top speed This is a 2 byte straight binary number When motor is moved this will be the running speed after ramping up The equation below can be used to convert the speed given in pulse per second The following equation can be used to convert a given speed in pulse per second units to a binary number This is the number which is used with write starting speed and write top speed commands binary output value 65536 5529600 speed Speed is the desired speed in pulse per second units The maximum binary output value 65534 The minimum binary output value 1 The maximum speed 2764800 pulse per second The minimum speed 84 375 pulse per second Motor Speed Read Commands 114 2 Read motor starting speed This is a 2 byte straight binary number The equation below can be used to convert the binary number 115 2 Read motor top speed This is a 2 byte straight binary number The equation below ca
114. number for the increment counter Use this value to program the distance for incremental moves Read Increment value This is a two s complement 3 byte number for the increment counter Incremental up and down relative moves The parameter specified is in two s complement 3 byte number The motor may be moved forward or backward depending on the sign of the parameter The movement is relative to the present position LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 100 of 158 Ludl Electronic Products Device Name Device ID Code Variable Speed Rotating 47 Data Length 3 CODE LISTING User s Manual 73005051 DC SERVO MOTOR CONTOLLER EMOTD Description Write rotating speed to motor driver This command will rotate the motors without specifying any other target or speed This number is a 3 byte signed number which specifies the direction and the speed of the rotation When this number is positive motor will rotate towards bigger numbers and when it is negative will rotate towards smaller numbers This command is reloadable If the motor is already rotating it will ramp up or down depending the last speed loaded There is no target number to stop the rotation of the motor The ramp value may also be reloaded to reflect the new ramping time While motor is rotating run flag is set in the motor status byte The status quality termination of this move may be verified with command 136
115. o 4 and aux to 1 Since next byte is 00 index will be set to the value of zero that will cause to same sequence to repeat LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 155 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005080 amp 73005081 FILTER SHUTTER CONTOLLER Device ID EFILS Data Code Length Description Speed Control 90 1 Write speed constant The wheel rotation speed is programmable This speed is the top running speed Smaller the number faster the rotation The default running speeds are loaded with switch settings But later may be modified by using this code The following equation may be used speed is expressed in pulse per second speed constant 1 000 000 speed 54 122 1 Read speed constant The following equation can be used to convert constant read to speed pulse per second speed 1 000 000 speed const 54 43 6 Setup Macro command Allows the user to enter six positions macro sequence for both main and aux filter wheels Each byte represents a new filter wheel move Format is as follow The most significant nibble controls the Main wheel and least significant nibble controls the Aux wheel A value of one through six is a position move and a zero is ano move Unused sequence steps must be set to zero In Macro mode Input 2 is redefined as follows Inputs 2 become the hardware trigger of the Macro mode sequencer The active level is co
116. oad Center Position 91 3 Load the capture center position Read Center Position 123 3 Read the captured center position The last two commands may be used with the centering command explained earlier see Centering The Axis If a high precision positioning required a stepping motor may be installed with a center pulse generator When motor is passed through the position a center pulse is generated and the position is recorded by the module These commands may be used to determine if centering of an axis is done by centering pulse or by internal calculation First load the center position with a large number presenting over the limits Then center the axis At the end of centering use the Read Center Position command Compare the numbers loaded and read If they are the same then the centering pulse is not received If they are different then the center pulse is received properly Centering pulse also may be used as to move the motor until an event occurs If a center command is used then motor will stop when a center pulse is generated By reading the motor position the location of the event can be determined Ramping Time 81 1 Write ramping time This is a one byte straight binary number which will change the acceleration value It is related to the time where speed is changed Smaller values are equal to bigger accelerations Power up default is 20 113 1 Read ramping time Same as above to read back the value L EBUS MACS000 PGM Ma
117. of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 4 Remote Key Readings Command REMKEY Format Remkey There are four optional switches in the interface This command is used to read status of these switches The command will always return a value in a one character string form The values range from O to 4 If there is no switch closure is detected previous to this command the string character 0 is returned Otherwise string characters from i to 4 is returned representing the pressed switch number The switch closures are buffered in a 10 byte long FIFO circular buffer Switches should closed and then opened in order to detect them Reply A positive reply is sent back when command is received correctly Reception of the reply means the end of execution Return value is included in the reply Example Remkey A0 will mean no switch pressed since last inquiry A2 switch number 2 is detected L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 13 of 158 Ludl Electronic Products MAC 5000 User s Manual 5 Interface Remote Control Byte Command ISTAT Istat parameter Format Istat parameter This command is implemented to read and write one byte value to interface The use of this command is for future use There are no assigned bits at the present time The user may write any value to interface and read it back When a parameter is omitted the value is returned from i
118. of scan range Byte 5 MSB of scan range Byte 6 Mode see below The MSB 7 7 of the Mode byte controls the starting position of the scan If set the scan starts at the current position of the motor if reset the scan is centered on the current motor position The lower nibble controls where the motor will move to after the scan is completed See table below Lower Nibble Value After scan moves to Po Original position 189 9 This function returns information on the scan placed with command 89 Data Format Byte 1 LSB of Maximum Contrast Byte 2 MSB of Maximum Contrast Byte 3 LSB of Running Contrast Average Byte 4 MSB Running Contrast Average Byte 5 LSB of Minimum Contrast Byte 6 MSB of Minimum Contrast Byte 7 LSB position of the Maximum Contrast Byte 8 MIB position of the Maximum Contrast Byte 9 MSB position of the Maximum Contrast LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 136 of 158 LFP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005056 AUTO FOCUS CONTOLLER Device ID EAFC_ Data Code Length Description Motion Control 71 0 Start motor moving It will start motor to reach target position if motor is not running already It will send busy code while moving the motor if status is requested 66 0 Stop motor moving If motor is running it will come to a stop after ramping down It will respond with a not busy code after a complete stop if status is r
119. on counter This is a two s complement 3 byte number This parameter should be loaded before Start Motor command see Motion Control on page 4 Read target position counter This is a two s complement 3 byte number for the target counter Incremental move upwards When this command is executed the number of steps moved is equal to the number loaded into the increment counter The direction of the motor is determined by the internal firmware such that position counter will be incrementing Incremental move downwards This command is the opposite of the incremental move upwards command where the position counters will be decreasing Write Increment counter This is a two s complement 3 byte number for the increment counter used by incremental movements The number of steps moved will be equal to the number loaded into the counter with this command The direction of the motor is determined by using one of the two incremental commands Read Increment value This is a two s complement 3 byte number read from the increment counter Incremental up and down moves between encoder pulses This command is only significant if motor is used with the encoder option The motor will move the amount specified by the parameter In this case the amount is expressed in motor steps not encoder steps The parameter specified is in two s complement 3 byte number The motor may be moved forward or backward depending on the sign of the parameter The move
120. or MEDIUM Fine for HIGH Fine for LOW 32 steps 8 steps 128 steps LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 132 of 158 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005056 AUTO FOCUS CONTOLLER Device ID EAFC_ Data Code Length Description These values always represent number of motor steps whether open or closed loop 93 1 Load number of data points in the set taken when focusing This value times the increment per measurement is the focus search distance Default value is 35 and the range is from 1 to 255 125 1 Read number of data points in the set Reads the number written by command above 67 1 Load number of frames to count before taking an intensity measurement Each frame count is 16 6 millisecond By increasing this value delays are added between measurements to assure a more stable scan This value should be increased as magnification increases A typical value is between 1 and 10 Default is 1 and range is from 1 to 250 99 1 Read number of frames to count before taking intensity measurements 80 2 Focus scan speed Used in discrete mode only This is the scan speed when focusing which is different from motor speed With focusing commands two different speeds are used Focus scan speed will be used when searching for focus point and motor speed will be used to position the motors to beginning of scan For application of the proper equation pleas
121. ports Certain Point ld s are used by the interface and should not be used for other purposes For example if CALIB command uses Point ld number 99 for calibration speed Point Id s X99 and Y99 should only be written when the calibration speed has to be changed The following table shows the standard settings for a basic controller The numbers between are optional and can be omitted Modul Id Address Label Description X 1 EMOT stage X axis Y 2 EMOT stage Y axis B 3 EMOT aux axis R 4 EMOT aux axis C 5 EMOT aux axis Z 6 EMOT aux axis T 7 EMOT aux axis l 9 amp 8 EDAIO digital in ports O 9 amp 8 EDAIO digital out ports F 11 EAFC auto focus finder S 1 17 EFILS filter shutter No 1 S2 18 EFILS filter shutter No 2 s3 19 EFILS filter shutter No 3 S4 20 EFILS filter shutter No 4 S5 21 EFILS filter shutter No 5 LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 11 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 3 Remote Reset Command REMRES Format Remres This command is used to reset the whole controller Upon receiving this command the interface will restart from a power up condition which will reset the other modules This command accomplishes the same task as if interface reset button is pressed Reply There is no reply sent to host computer All modules including the interface are reset Example Remres L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 12
122. racter member of the same union If the data length is zero then there is no data value load Example Assuming that number to be loaded is decimal 123456 The following table shows the data bytes for different data lengths This number fits into at least three bytes If a number lower than three is used for data length the MSBs are lost Data Length Bytes to send 64 2 MSBs are dropped 226 64 1 MSB is dropped 1 226 64 0 1 226 64 0 0 1 226 64 akWONM Group No 5 This is the one byte end of command character It is a fix predetermined character and set to be decimal 58 value This byte will end the command Until this byte is received the interface will not execute the command but will keep the bytes in a buffer Reading Values from Modules The command format for reading values from controller is similar to the loading values format The same rules apply to reading values with exception of the data direction The data itself comes from the controller The data will start flowing from interface right after the data length is received by the interface The number of characters sent is equal to the data length specified with code tables LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 75 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual Special Command Formats As mentioned earlier there are some commands which do not follow the rules explained For these commands the data
123. ramped down as defined by the DSP parameters It does not necessary mean that the motor is at the target position How close this position is depends on how well the system is tuned With a rotate move normally means the rotate move was terminated with a rotate zero command Bit 2 7 Set if the completed move position is less than the target position the servo activation distance 79 This bit is updated in both servo mode and non servo mode This bit is not used with the rotate command 47 Bit 3 7 Set if the move was terminated by user stop command 66 Bit 4 7 Setif a stall crash over current or over temp is found Bit5 7 Set on invalid parameter system busy or motor power off An invalid parameter is a parameter that is out of range l e Acceleration of zero Bit 6 77 Set if CW limit terminated the move See Note below Bit 777 Set if CCW limit terminated the move Note If the Capture Home is enabled 30 and the Home limit is found both Bits 6 7 and 7 7 will be set L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 112 of 158 Ludl Electronic Products Device Name Device ID Data Code Length PWM Commands 34 2 134 2 Following Error Commands CODE LISTING User s Manual 73005051 DC SERVO MOTOR CONTOLLER EMOTD Description Read the current motor PWM value and the current The PWM value is a signed char value With a range of 100 to 100 The current is updated every
124. rding to the following table Msb Lsb Bit Bit Bit Bit Bit Bit Bit Bit 7 6 5 4 3 2 1 0 ill al la The same code may be used consecutively in order to get the version information from the device When first used the reply will contain the module ID in the code manuals given for each module When the same code is immediately repeated the following information is sent back to host Byte 0 48 decimal 0 Byte 1 month of the year in binary form Byte 2 day of the month in binary form Byte 3 year MOD 100 in binary form Byte 4 current version number multiplied by 10 in binary form Byte 5 Not used In order to use version information this command should be used twice without any other commands in between If other commands are used after the first read id command the next read id command will reply with module identification It could also be determined that the reply with version string procedure is not yet implemented when the first character of the expected version string is not a 0 L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 157 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005080 amp 73005081 FILTER SHUTTER CONTOLLER Device ID EFILS Data Code Length Description Read Version No 127 6 Read date and version This code will read date and version information explained above Where read id twice scheme explained abov
125. rdist To load the profile distances When focusing is executed the module will make a fine scan first If a valid focus point is not found in this first phase then it makes a coarse scan If a valid focus is not found in this second phase then action is aborted Otherwise another fine scan is executed around the focusing point found in the second coarse scan The distance covered by these scans is a product of scan steps and step distances The number of scan steps was explained with the FSTEP command With this command the step distances are loaded into focus module By modifying these values the distance covered with fine or coarse scan can be adjusted to different environments Loading of these distances is done with two phases The first phase uses the WRITE Fnn command to write the distances into CPU memory point ids The second phase loads these memories into focusing module The actual distances in CPU memory do not go into any effect unless loaded with this command Since there are two scan phases fine and coarse and three focusing modes high medium and low there are six profile distances to load Once written into CPU these are permanent even if the controller is turned off The following table shows the names of the ranges and the point ids used Point ids Range ec eee eee Coarse High FOZ oinin Coarse Medium F93 anenee Coarse Low e Fine High F95 ee Fine Medium F96 ee Fine Low The READ and WRITE commands are used to loa
126. rection enable bit A nonzero parameter enables the antibacklash correction a parameter of zero disables it The antibacklash correction algorithm will approach the focus position from the same side it was scanned Thereby canceling the mechanical backlash of the system Antibacklash correction requires one extra move therefore requires more time to find focus Default value is OFF This option is available in both discrete and continuous modes 155 4 System status dword This dword represents the status and error conditions of the auto focus board and can be used for diagnoses This byte is cleared when read Lower word bits are warnings and upper word bits are errors Bits unused are reserved for future use Supported in version 1 1 and above Bits of 31 0x0001 Set high if video not present 0x0002 Set on Motor Driver Stall 0x0010 Set high if motor driver not present Error 0x0020 Set high if PLD unconfigured missing or incorrect unsupported version All others Reserved for future use OoOo O Analog output 62 3 Output from four cannel 12 bit DAC Command sequence is as follows 62 lt channel gt lt data gt Where channel is a byte with value of 0 to 3 Data is a 2 byte straight binary value where the most significant 12 bits are used LSB first Channel 0 is the dedicated output for the Piezo focus Channels 1 3 are not presently defined Full scale output is presently 0 to 10 00V Video Selection 28 1
127. rmination of this move may be verified with command 136 This command may be used for two different purposes First one is to locate the motor to a specific position And the second one is to center the motor on the axis between two endlimit switches The motor will travel between two endlimit switches While traveling a positive going edge of a pulse will stop the motor where the pulse was received This pulse should be at least 5 microsecond of duration In case this pulse is not detected or it is not present at all then motor is positioned in the center of the axis The length of the axis is defined with the endlimit switch positions The travel speed between endlimits is programmed with the command parameter but the final centering speed is the programmed running speed Enable position counter capture This command will enable reception of the pulse which normally used as the home pulse This command should be used before the center command if centering is desired with the pulse If pulse is disabled centering is done by moving to the center of axis by detecting the two end limit switches Disable position counter capture Power up default state Recommended use of this command will be after centering an axis LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 102 of 158 Ludl Electronic Products Device Name Device ID Data Code Length Load Center Position 91 3 Read Center Position
128. s Manual INTRODUCTION TO COMMUNICATION FORMATS The RS 232 Interface Module No 73005042 is an interface between a host computer and the controller This module will analyze and execute the commands coming from a host computer The communication is realized with an RS 232 USB connection with variable baud rates parity and stop bits This manual provides complete operation procedures for LEP EBUS controller owners There are basically two methods to operate the controller The first method is to use commands installed in the Interface Every built in command has a name which is expressed in ASCII character strings Only alphanumeric character strings and some control characters such as carriage return backspacing or tabs are used within this command structure The available commands and their functions are explained in Section of this manual labeled High Level Format There is also a Low Level Format described in Section Il With this format the Interface is a simple transfer module It will receive the device numbers codes and data from a host computer and transfer this information to appropriate modules The characters used are in binary format The host computer does most of the controlling and calculations All necessary codes and their functions are explained in Section Il Either format may be selected by hardware and software control On power up the hardware switch selects the format It is also possible to select either form
129. s code uses an older method of communication and requires extra processor resources and if polled continuously can degrade the quality and accuracy of the focus algorithm Therefore it is recommended to use command 126 to poll for busy 66 If device is busy 98 If device is not busy Parameters should only be loaded when a device is not busy but they can be read anytime Note commands that have an asterisk by there command number require extra processing time Any command that changes the Sample Time CPR Joystick Speeds or accesses the nonvolatile ram will take time to build tables calculate float type variables or access slow peripheral all of which require extra time Therefore when using these commands you must poll the busy status till they become unbusy or delay any further communication to this device for 5 seconds The busy status can be tested with the test busy command Cmd 63 Here are the commands that require extra time Load DC Parameters Cmd 54 Load Save data records Cmd 38 Write joystick normal top speed Cmd 69 Write joystick fast top speed Cmd 70 All other commands are processed quickly LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 144 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005056 AUTO FOCUS CONTOLLER Device ID EAFC Data Code Length Description DIP Switch and Address Configuration There are two 2 Jumper select headers in
130. s the slide at the location indicated by Cassette and Slot and places it on the stage Example SLGET 1 1 A 11 5 Put slide Command SLPUT Format Slput Cassette Slot Puts the slide currently on the stage back into the cassette at the position indicated by Cassette and Slot Example SLPUT 1 1 A LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 54 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 11 6 Select slide Command SLSELECT Format Slselect Cassette Slot Slselect 1 Slselect 999 Slselect 1 Slselect Slselect Cassette Slot Adds the slide at location Cassette Slot to the select list 1 Clears the select list to no slides 999 Adds all slides dependent on the of cassettes configured to the selected list 1 Resets the selected list back to the first slide Returns the current ordinal position in the select list No parameter returns the contents of the select list Example SLSELECT 1 25 An n ordinal position list number SLSELECT 1 A SLSELECT 999 A SLSELECT 1 A SLSELECT An n ordinal position list number SLSELECT A 1 101 A 2 102 A 3 103 tA wae 1 2 3 Ordinate position list number 101 The first number 1 Cassette number The second and third 01 Slot number LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 55 of 158 L
131. second units The maximum binary output value 65534 The minimum binary output value 1 The maximum speed 2764800 pulse per second The minimum speed 84 375 pulse per second Motor Speed Read Commands 114 2 Read motor starting speed This is a 2 byte straight binary number The equation below can be used to convert the binary number 115 2 Read motor top speed This is a 2 byte straight binary number The equation below can be used to convert the binary number The following equation can be used to convert the binary number read back to speed in pulse per second units speed pulse sec 5529600 65536 binary value LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 140 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005056 AUTO FOCUS CONTOLLER Device ID EAFC_ Data Code Length Description Joystick Speed Write Commands 69 1 Write joystick normal top speed This is a one byte straight binary number This will affect the joystick top speed when it is deflected to either side without pressing the fast joystick key 70 1 Write joystick faster top speed This has the same function as above except that it will affect the maximum speed when fast key is pressed with joy stick deflected either side How to calculate these two numbers is explained at the end of this manual The following equation can be used to convert a given speed in pulse per second units to a
132. second units speed pulse sec 5529600 65536 binary value Secondary Motor Speed Write Commands 85 2 Write Secondary motor top speed This is a 2 byte straight binary number When motor is moved this will be the running speed after ramping up The same equation used for primary speed calculation is applied to convert the speed given in pulse per second LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 124 of 158 LFP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name DUAL DC MOTOR CONTOLLER Device ID DMOTD Data Code Length Description Secondary Motor Speed Read Commands 117 2 Read Secondary motor top speed This is a 2 byte straight binary number The equation above for read primary motor speed can be used to convert the secondary binary number Read Primary Status Byte 126 1 Read Primary status byte from primary motor driver This value will reflect various internal status of motor driver The format is explained below Bit Description 0 0 motor not running 1 motor is running 1 Not used 2 Not used 3 0 Motor power off 1 Motor On 4 0 PWM mode off 1 PWM mode on 5 0 Over Current No Turning on the motor cmds 60 50 will reset this bit 1 Over Current Yes 6 Real time copy of the CCW end limit switch 7 Real time copy of the CW end limit switch L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 125 of 158 LEP 2001
133. stalled on the board and one 1 dip switch with six 6 switches used to control different functions See function switch settings below Address selection Address is determined by placing one plug jumper in the 1 10 jumper field and one jumper in the AD1 10 AD11 20 field The factory default is address 11 Function Switch Settings Switch 1 Fmode Used to default the focus mode on boot up 0 discrete mode step and measure similar to MAC2000 1 continuous profile while moving at constant speed default Mode may be over written through comport see command 73 Switch 2 UseLimits Allows the low continuous focus algorithm to search from top limit to bottom limit The low focus range is ignored if enabled 0 use Low focus range default 1 use end limits Note this switch only overrides the LOW focus range Limit sensors must be present in this mode Switch 3 Vtype Closed default Single Window Mode Open Triple Window Mode Note Requires special hardware Switch 4 Meter Closed default focus signal bar graph off Open display focus signal bar graph at top of screen Switch 5 Mancontr Closed default Front panel pots enabled Open Front panel pots locked out Switch 6 RESERVED Closed default Default Open Additional configuration information for the 73005056 motor drive If used with the 73005085 Auto Focus control board the 73005056 motor drive must be configured as follows Configuration D
134. ter wheel to its number ONE filter This command normally should be used if the filter wheel is misaligned Rotat S A 4 Rotate the Auxiliary filter wheel to its number FOUR filter LAEBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 16 of 158 Ludl Electronic Products MAC 5000 User s Manual 7 2 Open Shutter Command OPENS Format Open S device number shutter number Device number and shutter number are equal to 1 when omitted Open filter wheel Shutters Each controller may have 5 filter wheel boards installed Where each board is addressed with the number specified with device number there is no space between the board identifier S and the board number S2 or S3 etc The range of device number is from 1 to 5 When this number is equal to 1 1 may be omitted Each board has two filter wheels and three shutters which are numbered 1 to 3 Normally Shutter 1 is on the main wheel Shutter 2 is on the auxiliary wheel and Shutter 3 is an extra shutter The shutters are addressed with the number specified with shutter number The value of shutter number is either 1 2 or 3 When this number is equal to 1 1 may be omitted Reply A positive reply is sent back when command is received correctly Reception of the reply means the end of execution Example Open S Open shutter 1 of S1 Open S2 Open shutter 1 of S2 Open S 2 Open shutter 2 of S1 Open S2 2 Open shutter 2 of S2
135. tion of this switch and how to change delay values by software please see Transmission Delay in Section Il Delay Value Switch No 6 3 age peepee ern cere emery earner earners closed 4 millisecond Power Up 006 open Switch No 8 communication mode open Low Level Language Binary mode closed High Level Language ASCII mode If IEEE488 option is installed and selected then switch 1 to 5 becomes device number LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 69 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual RS 232 Interface Control Commands While the commands described for each module later in this manual control the modules installed in the controller there are a few other commands which control the RS 232 interface controller itself Two of these commands which are used to switch modes are already explained at the beginning of the manual An RS 232 interface control command consists of two or more bytes always starting with 255 decimal Oxff These commands directly control the interface and they do not affect the other modules They can be sent to the interface regardless of the communication mode the interface is set It should be noted that these commands can not interrupt a command already being downloaded Below is a list of these commands followed by their description Switch to High Level Mode Byte 1 255 Byte 2 65 After sending this control comm
136. to starting speed and then reversed direction up to programmed speed with internal firmware Reply If there are no errors a positive reply is sent back This reply does not signal the end of rotation The status of motor can be determined by reading the status byte see 9 15 Motor Status Byte Read Example Spin R 10000 T 20000 A or Spin x 10000 A L EBUS MAC5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 34 of 158 Ludl Electronic Products MAC 5000 User s Manual 9 6 Centering Stage Command CENTER Format Center motor id speed motor id speed The syntax of this command is similar to the SPIN command described previously with an extra function It will be used to center the motor in the middle of the axis or at the center pulse location if one is provided To use this command the motor should be on an axis with two switches located at the ends of the axis If center pulse is not provided motor is located in the center of the two endlimits If center pulse is provided the motor is located at the center pulse location Reply If there are no errors a positive reply is sent back This reply does not signal the end of centering process The status of motor can be determined by reading the status byte see 9 15 Motor Status Byte Read Example center R 10000 T 20000 A or center x 10000 A LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 35 of 158 LEP 2001 L
137. udl Electronic Products MAC 5000 User s Manual 9 7 Motor Position Read Command Format Reply Example WHERE Where motor id motor id or Where point id point id Return to the current position of motors With the second format this value can be stored into Point ld If there are no errors a positive reply with values is sent back for either format WHERER T Z A 100 200 300 or WHERE RTZ A 100 200 300 WHERE R1 A 1000 The Point Id R1 will be equal to 1000 WHERE RTZ If T is not selected correctly or it does not exist then the reply should be as follows A 1000 N 2 10000 LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 36 of 158 Ludl Electronic Products MAC 5000 User s Manual 9 8 Motor Position Set Command HERE Format Here motor id position motor id position Write the current position of motors The value specified in position will be written to the specified motor module as the current position Reply If there are no errors a positive reply is sent back Example HERE R 1000 t 2 z 0 A L EBUS MAC5000 PGM Manual MAC5S000 PGM MANUALrevB doc 8 13 01 Page 37 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual 9 9 Speed Control Command Format Reply Example SPEED This command is used to program the top speed of acceleration The default value on power up is 25 000 hz Speed motor
138. ule ID in the code manuals given for each module When the same code is immediately repeated the following information is sent back to host Byte 0 48 decimal 0 Byte 1 month of the year in binary form Byte 2 day of the month in binary form Byte 3 year MOD 100 in binary form Byte 4 current version number multiplied by 10 in binary form Byte 5 Not used In order to use version information this command should be used twice without any other commands in between If other commands are used after the first read id command the next read id command will reply with module identification It could also be determined that the reply with version string procedure is not yet implemented when the first character of the expected version string is not a 0 Read Version No 127 6 Read date and version This code will read date and version information explained above Where read id twice scheme explained above may be used with all versions this code may be used with newer versions where this code is implemented LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 143 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005056 AUTO FOCUS CONTOLLER Device ID EAFC_ Data Code Length Description Request Device Status 63 NONE Request Status Request whether or not device is busy One of the following codes is sent back to the host depending on the status of device Note thi
139. ulse per second and it is positive or negative depending the direction of the rotation The programmable speed limits are minimum speed 0 659 pulse per second maximum speed 5 529 600 pulse per second It should be noted that the maximum and minimum speed specified above are the internal calculation limit and does not necessarily means the running speed of the motor installed in the system It is left to the user to limit the actual maximum running speed There is no read back command the last speed written with this command at the present time 57 3 Same as command 47 but for the Secondary axis LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 122 of 158 LFP 2001 Ludl Electronic Products Device Name Device ID Data Code Length Primary Ramping Time 81 1 113 1 Secondary Ramping Time 82 1 114 1 LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc LEP 2001 CODE LISTING User s Manual DUAL DC MOTOR CONTOLLER DMOTD Description Write Primary ramping time This is a one byte straight binary number which will change the ramping time when moving the motor The smaller the number the shorter the ramping up or down time Power up default is 20 Read Primary ramping time Same as above to read back the value Write Secondary ramping time This is a one byte straight binary number which will change the ramping time when moving the motor The smaller the number the short
140. ult in the better precision of calculation This may be accomplished easily with a joystick if it is installed Then both open and closed loop counters should be read Each of the two numbers should be divided by a constant number until they are both smaller then maximum valid number of 255 The divisions should result with a remainder of zero For example Clear both counters by loading zeros Pulse the motor 1000 steps Read the open loop and closed loop counters Supposing open loop count is 1000 and closed loop count is 200 open loop count should be divided until it is smaller then 255 If both numbers are divided by 100 the result will be 10 and 2 These two values can be used as the two constants or each further be divided by 2 to obtain 5 for open loop and 1 for closed loop constant These numbers in this example means that the encoder pulses are 5 times smaller then the motor stepping pulses Load Open Loop Constant 92 1 An unsigned one byte binary number This number represents the open loop constant explained above The valid range of open loop constant is from 1 to 255 On power up default value is 5 Ina special case when loaded number is equal to zero an internal routine is executed to calculate both constants However the precision of the calculation is limited and the result may not be correct For this reason when motor is no longer busy both closed and open loop encoder constants should be examined and corrected by the host system
141. used for open loop counting Read motor second position counter with status byte The first three bytes is the two s complement motor position counter And the next byte is the status byte The counter is updated with every movement of the motor See Explained later for the format of the status byte 97 3 Read motor position counter This is the two s complement motor position counter The counter is updated with every movement of the motor 84 3 Write target position counter This is a two s complement 3 byte number This parameter is loaded every time motor should be moved to different position 116 3 Read target position counter This is a two s complement 3 byte number for the target counter L EBUS MACS000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 LEP 2001 Page 99 of 158 Ludl Electronic Products Device Name Device ID Code Incremental Movements 43 45 68 100 46 Data Length 0 CODE LISTING User s Manual 73005051 DC SERVO MOTOR CONTOLLER EMOTD Description Incremental move upwards This command will add the increment buffer to present position buffer and load this position to target and then move the motors It is used when motor movement distances are same It combines the loading new target and move commands in a single byte command Incremental move downwards Same command as above except that direction is reversed Write Increment value This is a two s complement 3 byte
142. w Byte 5 MSB of the limit low Byte 0 is the first byte received in the data stream ON power up both soft limits are set to zeros Home does not function with soft limits enabled Unless capture home is enabled and home input is detected LAEBUS MAC5000 PGM Manua MAC5000 PGM MANUALrevB doc 8 13 01 Page 93 of 158 LEP 2001 Ludl Electronic Products CODE LISTING User s Manual Device Name 73005051 DC MOTOR CONTOLLER Device ID EMOTD Data Code Length Description DC Motor Controller Commands 54 10 Load DC controller parameter values Data format Byte 1 DSP Filter Gain Range 0 255 Static gain See Cmd 18 Byte 2 DSP Filter Zero Range 0 255 Byte 3 DSP Filter Pole Range 0 255 Byte 4 Counts per Revolution LSB Byte 5 Counts per Revolution MSB Byte 6 DSP Filter Acceleration LSB in CPR sampletime 7 Byte 7 DSP Filter Acceleration MSB in CPR sampletime Byte 8 Trip Current Value Max Motor current Amps x 42 5 Byte 9 Sample Time Value Samples in secs x 125000 C Bytes 10 Current record number Read Only 154 10 Read DC controller values Format same as above NOTES Parameter presets DSP filter boot up values are dependent on DIP switches S1 4 6 If all three configuration DIP switches are closed the system boots up with the last record parameters saved through command 38 See Command 38 for further details Records 1 through 7 are factory presets and correlate to one or more LEP products See ta
143. w CHw LSB Window CHw MSB 8 13 01 Ludl Electronic Products Device Name Device ID Data Code Length Focus Parameters 79 12 111 12 CODE LISTING User s Manual 73005056 AUTO FOCUS CONTOLLER EAFC_ Description Load coarse and fine profile distances between measurements in motor steps Focusing is accomplished by collecting a set of light intensity data received by the camera The focus position is where a maximum value is read The first set of data collected is with a fine stepping If a valid peak is not detected then a wider stepping is used The number of steps for fine and coarse sweeping may be programmed as shown below Used in step and measure mode Byte 1 LSB of Coarse scan for MEDIUM range Byte 2 MSB of Coarse scan for MEDIUM range Byte 3 LSB of Coarse scan for HIGH range Byte 4 MSB of Coarse scan for HIGH range Byte 5 LSB of Coarse scan for LOW range Byte 6 MSB of Coarse scan for LOW range Byte 7 LSB of Fine scan for MEDIUM range Byte 8 MSB of Fine scan for MEDIUM range Byte 9 LSB of Fine scan for HIGH range Byte 10 MSB of Fine scan for HIGH range Byte 11 LSB of Fine scan for LOW range Byte 12 MSB of Fine scan for LOW range Read coarse and fine profile distances between measurements in motor steps Same format as loading Used for step and measure mode Default coarse and fine values Coarse for MEDIUM 192 steps Coarse for HIGH 48 steps Coarse for LOW 700 steps Fine f
144. y create problems if the host computer cannot read the received byte before the next one arrives In order to avoid this problem this command can be used in order to add delays between transmitted bytes from interface controller On power up and if the delay is enabled by the switch transmission interval is equal to 2 millisecond Apply the following equation in order to convert a delay given in millisecond to the byte to be loaded as the delay value Byte 3 delay in millisecond 0 627 The result should be rounded to an integer having a range from 0 to 255 A value of O will also mean no delays For example If a delay of 5 millisecond is wanted then the byte 3 will be equal to 8 LAEBUS MACS5000 PGM Manual MAC5000 PGM MANUALrevB doc 8 13 01 Page 71 of 158 LEP 2001 Ludl Electronic Products MAC 5000 User s Manual RS 232 USB Serial Command Format Commands are generally broken into five groups In three special cases the number of data bytes group is omitted to speed up the communication process These are also explained later in this manual For each module existing in a controller an instruction table is provided which contains the codes for instructions available and the data length If the data length is zero then the command does not contain the data Data values are broken into 8bit bytes for the data length times and then each byte is sent out through serial channel to the interface from LSB to MSB The ASCII

Download Pdf Manuals

image

Related Search

Related Contents

Manual  仕様書 - 東京都農林水産振興財団  平成27年7月号(PDF:8.84MB)  Model DBC45 BLAST CHILLER/SHOCK FREEZER User`s Manual  Anleitung  OMNILUX 230V/75W GU-10 Lamp User Manual  Le Carnet des Parents  M600 White Paper – Version R1A – Sony Mobile Communications  Operating Instructions Air Conditioner  Epson PowerLite Pro Cinema 800 HQV Installation Guide  

Copyright © All rights reserved.
Failed to retrieve file