Preview only show first 10 pages with watermark. For full document please download

Vericolor Spectro User Command Manual

   EMBED


Share

Transcript

X-Rite ® VeriColor Spectro User RCI Manual Preliminary (Preliminary means some of the information in this document may not be accurate and all of it is subject to change) Version 0.22 X-Rite ® PROPRIETARY NOTICE The information contained in this manual is derived from patent and proprietary data from X-Rite, Incorporated. Publication of this information does not imply any rights to reproduce or use it for purposes other than interfacing the equipment described herein. No part of this manual may be reproduced, transcribed, stored in a retrieval system, or translated into any language or computer language in any form or by any means: electronic, magnetic, mechanical, optical, manual, or otherwise; without the prior written permission of an authorized officer of X-Rite Incorporated. These provisions are intended to state all of the rights and responsibilities between X-Rite, Incorporated and customer. They take place of and supersede all warranties, expressed or implied, and whether of merchantability, fitness or otherwise. The remedies contained in this manual are exclusive. Customer and X-Rite Incorporated waive all other remedies, including, but not limited to consequential damages. This instrument is covered by one or more U.S. and foreign patents and patents pending. Copyright (c) 2010 by X-Rite, Incorporated "ALL RIGHTS RESERVED" i X-Rite â Last Revision 5/13/10 Compatible with firmware version: 10505 TABLE OF CONTENTS i Proprietary Notice ii Table of Contents iii Command Index (by category) iv Command Index (alphabetical order) 1 General Information 1 Conventions 2 Glossary 3 Software Interface 4 - 21 Command Descriptions 22 Appendix A: Error Codes ii Command Codes (By Category) Calibration Commands 5 Calibrate Get (cg) 7 Calibration Reflectance Adjustment (cr) 8 Calibrate White (cw) 20 Verify White Calibration (vw) Diagnostic Commands 4 Clear Errors (ce) 8 Get Errors (ge) 8 Get Instrument Information (gi) 10 Head Status (hs) 15 Reset (re) 20 Software Version (sv) Configuration Commands 4 Baud Rate (br) 5 Configure (cf) 12 Load Defaults (ld) 12 Make Permanent (mp) 18 Serial Number (sn) 20 Transmit Mode (tm) Project/Standards Commands 12 Project Clear (pc) 13 Project Get (pg) 14 Project Set (ps) 15 Standard Active (sa) 16 Standard Get (sg) 18 Standard Set (ss) Measurement Commands 12 Measure (ma) 14 Poll Head (ph) Data Transfer Commands 9 Get Reading (gr) Control Commands 10 Head Mode (hm) 11 Input/Output (io) 14 Poll Head (ph) iii Command Codes (Alphabetical Order) Page Command 4 br 4 ce 5 cf 6 cg 7 cr 7 cs 8 cw 8 ge 8 gi 9 gr 10 hm 10 hs 11 io 12 ld 12 ma 12 mp 12 pc 13 pg 14 ph 14 ps 15 re 15 sa 16 sc 16 sg 18 sn 18 ss 20 sv 20 tm 20 vw Description Baud Rate Clear Errors Configure Calibrate Get Calibration Reflectance Adjustment Calibrate Set Calibrate White Get Errors Get Instrument Information Get Reading Head Mode Head Status Input/Output Load Defaults Measure Make Permanent Project Clear Project Get Poll Head Project Set Reset Standard Active Standard Clear Standard Get Serial Number Standard Set Software Version Transmit Mode Verify White Calibration iv General Information This manual describes the protocol for the remote control interface (RCI) of the X-Rite VeriColor Spectro spectrophotometer. It also describes the purpose and usage of each command supported by the spectrophotometer. This manual should provide sufficient technical information regarding the remote control protocol to allow an interested user to develop the necessary hardware and command string software to interface a controlling device to the instrument. The serial input port in conjunction with the remote control commands is intended to be used for controlling or monitoring the instrument remotely through a RS-232 compatible interface cable. The remote control interface (RCI) utilizes a serial communications protocol which is patented and proprietary to X-Rite, Incorporated. The serial command format consists of a series of numeric and alphabetic characters (referred to as the command string) sent to the instrument in ASCII format, with a carriage return (0D hex) to delimit the string. The instrument is capable of receiving up to 132 characters into its receive buffer in rapid succession. When the command is fully received and processed, the instrument responds performing the command function, transmitting pertinent data, and transmitting the "status response packet". All text responses end with a carriage return (0D hex) and line feed (0A hex). The status response packet is in the form: <00> where the number within the brackets indicates the status of the instrument and where 00 indicates a normal condition with no errors (for further information on error codes, refer to the section of this document titled "ERROR COMMANDS".) Conventions - Numbers ending with the letter ‘h’ are hexadecimal. All others are decimal. - All commands minimally respond with a status packet. A status packet has the format: where sc is a code indicating any error that might have occurred while processing the command. <00> indicates there was no problem processing the command. If the instrument transmits other data in response to the command, this data will precede the status packet. - RCI refers to "remote control interface" and is the command string protocol described throughout this document. - {} indicates the contents within are optional. - indicates the status string which is transmitted at the end of the response of every RCI command. It includes the open and close kerrets <> with a two digit status code between them. The normal status string is <00> - All numeric data within an RCI command string is decimal unless noted otherwise. - CR is an ASCII carriage return character (0D hex) and LF is an ASCII line feed character (0A hex). - All lines of text in response to a command end with a CR/LF combination. - Unit, head, or instrument refers to the X-Rite Vericolor Spectro color measurement device. 1 GLOSSARY COMMAND STRING Each command in the RCI protocol consists of one to ten ASCII characters which is terminated with a carriage return character (0Dh). The string is referred to as the "command string". Each command requires at least one letter and may be preceded with up to eight data characters. If the expected number of characters are not received in the command string, a “BAD PARAMETERS” (12h) error code will be generated. ERROR CODES A variety of error conditions may be encountered during the operation of the instrument. These conditions are given numbers for identification purposes and are transmitted from the instrument as part of the "status response packet". The error codes with their descriptions are listed in the section of this document titled: ERROR COMMANDS. ERROR STACK The instrument is capable of keeping track of the last sixteen errors to occur. These are placed in the "error stack" and can be accessed using a variety of error commands listed in this document under the heading: ERROR COMMANDS. I/O Input/output. 2 SOFTWARE INTERFACE BYTE FORMAT Every data character transmitted from, and received by the instrument is made up of ten bits. The format of these bits is as follows: BIT NUMBER 1 2-9 10 PURPOSE START BIT (LOGIC 0) DATA CHARACTER STOP BIT (LOGIC 1) BIT TRANSMIT ORDER The least significant bit of the data character is transmitted first. The complete bit order is as follows: FIRST BIT LAST BIT START BIT DATA BIT 0 DATA BIT 1 DATA BIT 2 DATA BIT 3 DATA BIT 4 DATA BIT 5 DATA BIT 6 DATA BIT 7 STOP BIT LOGIC 0 LOGIC 0 OR 1 LOGIC 0 OR 1 LOGIC 0 OR 1 LOGIC 0 OR 1 LOGIC 0 OR 1 LOGIC 0 OR 1 LOGIC 0 OR 1 LOGIC 0 OR 1 LOGIC 1 BAUD RATE The default baud rate is 115200. The baud rate is changed using the "SET BAUD RATE" (BR) command. Baud rates supported by the instrument are as follows: 4800 BAUD 9600 BAUD 19200 BAUD 38400 BAUD 57600 BAUD 115200 BAUD (Default) COMMAND STRING Command characters may be one or two alphabetic letters. Many of the commands require one or more numeric digits preceding the command to provide the parameters necessary to perform the command function. Unless specified otherwise, all numeric data in a command string is decimal. All characters may be upper or lower case. DELIMITERS All command strings must be terminated with a CARRIAGE RETURN (0Dh). The CARRIAGE RETURN character is referred to as the DELIMITER character. All characters received prior to the delimiter are considered part of the command string. 3 COMMAND DESCRIPTIONS BAUD RATE SYNTAX: #####br Where: ##### is the desired baud rate Supported rates are: 4800 9600 19200 38400 57600 115200 (default) OPERATION: Changes the baud rate for the RS232/RS485 serial communications. The status response is transmitted before the baud rate is changed. If no baud rate is given, the present rate is returned. RESPONSE: ##### Where: ##### is the present baud rate. CLEAR ERRORS SYNTAX: {##)ce OPERATION: Clears all errors in the error memory. The GE command is used to get the error list. If ## is 7f then the cleared error memory is also save to non-volatile memory (immediately, otherwise it may take up to five minutes) RESPONSE: 4 CONFIGURE SYNTAX: **##cf Where: ** is the option selection. ## is the index to the item to be configured. OPERATION: This command is used to configure various instrument options. It is necessary to send the “Make Permanent” (MP) command if the configuration is to remembered after a power cycle. The exception is the 12CF command which automatically saves the setting to nonvolatile memory. Note: It is recommended to do white calibration if Operating Mode or Number of revolutions has been modified. RESPONSE: If an index (##) is provided, but no option selection (**), the response will be the present setting of the item selected. If (##) isn’t provided either, the list of available settings will be sent. The response is completed with a status packet. The following are a list of the configuration items and their options (Note: An asterisk (*) indicates the default setting): Number (##) Description Options (**) 00 Help list 10 Enable/Disable Auto Transmit Status after a measurement 00 = disabled* 01 = enabled 11 Auto transmit data setting 00 = Status only 01 = LabCh* 02 = LabCh Standard # LabCh for standard # • E, • L, • a, • b, • C, • H 03 = Sample Reflectances 04 = Sample Refl with standard refl 12 Discrete Output/RS485 Select 00 = Discrete Outputs* 01 = RS485 Communication Port 13 Channel E output operation 00 = Action indicator* 01 = Bit 5 of binary output 14 Dynamic Targeting Mode 00 = normal operation* 01 = targeting ring on-time indicates the actual measurement time. 15 Fixed Gain Setting 00 = low* 01 = high 20 Operating mode 00 = Fixed gain 01 = Universal gain* 02 = Variable gain 21 Number of revolutions 1 to 6 (3*) 5 CALIBRATE GET SYNTAX: ##cg Where: ## is the index to the type of information requested OPERATION: This command is used to recall calibration information previously stored in the instrument. The format of the data returned is described in the table below. RESPONSE: If ## is left out or set to 0’s, the list of choices will be transmitted. Refer to the following table for details. The response is completed with a status packet. Number (##) 00 Description Outputs this list of available settings Data Type 01 Calibration Plaque Serial Number The data string is a 1 to 6 digit decimal number from 0 to 999,999. Example: 123456 02 White Cal Plaque Values The data string is 33, comma separated, decimal reflectance values. The decimal point is omitted and assumed to be two digits from the right (100.00 = 10000). Example: 9001,8975,9100,9035,8997,9003,8999 … ,9000 03 Black Cal Plaque Values The data string is 33, comma separated, decimal reflectance values. The decimal point is omitted and assumed to be two digits from the right (100.00 = 10000). Example: 9001,8975,9100,9035,8997,9003,8999 … ,9000 04 Get Last Calibration Timestamp The data string is a one to nine digit decimal number from 0 to 999,999,999. Example: 123456 05 Get Last Verification Timestamp The data string is a one to nine digit decimal number from 0 to 999,999,999. Example: 123456 06 Get White Verification Tolerance The data string is a single 1 to 5 digit decimal number (up to 65535). The decimal point is omitted and assumed to be two digits from the right (1.00 = 100). Example: 200 07 Get Black Verification Tolerance The data string is a single 1 to 5 digit decimal number (up to 65535). The decimal point is omitted and assumed to be two digits from the right (1.00 = 100). Example: 200 08 Angle Adjust Values The data string is 31, comma separated, decimal reflectance values. The decimal point is omitted and assumed to be two digits from the right (1.00 = 100). Example: 101,100,99,98,97,99,98 … ,97 6 CALIBRATION REFLECTANCE ADJUSTMENT SYNTAX: {aa}#cr # is the command option where: 0 - Return current Calibration Reflectance Adjustment value in Decimal 1 - Set Calibration Reflectance Adjustment value to {aa} in Hex 2 - Return current Calibration Reflectance Adjustment value (decimal number only) Default - command help list OPERATION: This command is used to change calibration data in the instrument. After the instrument receives the command it re-calculates White plaque Reflectance. The Adjustment value is between 0 and 199, and should match the number on the White Calibration Standard. RESPONSE: Data response varies dependent on the option requested. If # is left out or greater than 2, the list of choices will be transmitted. CALIBRATION SET SYNTAX: ##cs Where: ## is the index to the type of information to set. OPERATION: This command is used to change calibration data in the instrument. After the instrument receives the command it waits for a data string. The format of the data required is described in the table below. After the 01CS, 02CS, 03CS, and/or 08CS commands have been sent, it is necessary to send the 2MP command to save the settings in non-volatile memory. For the 04CS, 05CS, 06CS, and/or 07CS commands it is necessary to send the “3MP” command to save the settings in non-volatile memory. RESPONSE: If ## is left out or set to 0’s, the list of choices will be transmitted. Refer to the following table for details. Number (##) 00 Description Outputs this list of available settings (no data string expected). 01 Set Calibration Plaque Serial Number The data string is a 1 to 6 digit decimal number from 0 to 999,999. Example: 123456 02 Set White Cal Plaque Values The data string is 33, comma separated, decimal reflectance values. The decimal point is omitted and assumed to be two digits from the right (100.00 = 10000). Example: 9001,8975,9100,9035,8997,9003,8999, … ,9000 03 Set Black Cal Plaque Values The data string is 33, comma separated, decimal reflectance values. The decimal point is omitted and assumed to be two digits from the right (100.00 = 10000). Example: 9001,8975,9100,9035,8997,9003,8999, … ,9000 04 Set Last Calibration Timestamp The data string is a one to nine digit decimal number from 0 to 999,999,999. Example: 123456 7 Note: This value is not saved in non-volatile memory until the 05cs command is sent. 05 Set Last Verification Timestamp The data string is a one to nine digit decimal number from 0 to 999,999,999. Example: 123456 Note: This command causes the “Last Calibration Timestamp”, “Last Verification Timestamp”, “White Verification Tolerance”, and the “Black Verification Tolerance” to be stored into non-volatile memory. Therefore this should be the last command performed when these four values are being loaded. 06 Set White Verification Tolerance The data string is a single 1 to 5 digit decimal number (up to 65535). The decimal point is omitted and assumed to be two digits from the right (1.00 = 100). Example: 200 Note: This value is not saved in non-volatile memory until the 05cs command is sent. 8 07 Set Black Verification Tolerance The data string is a single 1 to 5 digit decimal number (up to 65535). The decimal point is omitted and assumed to be two digits from the right (1.00 = 100). Example: 200 Note: This value is not saved in non-volatile memory until the 05cs command is sent. 08 Set Angle Adjust Values The data string is 31, comma separated, decimal reflectance values. The decimal point is omitted and assumed to be two digits from the right (1.00 = 100). Example: 101,100,99,98,97,99,98 … ,97 CALIBRATE WHITE SYNTAX: cw OPERATION: Perform a calibration reading on the white cal plaque. RESPONSE: GET ERRORS SYNTAX: {##}ge OPERATION: Returns a list of error codes and number of occurrences for each code. The “ce” command is required to clear errors. If ## is 7f the error codes are immediately saved to non-volatile memory (otherwise codes are saved only every five minutes). RESPONSE: The response will be up to eight error codes with their corresponding occurrence count: aa,bb Where: aa - individual error code, see Appendix A for a detailed listing of error codes and their meaning. bb = number of times the error has occurred GET INSTRUMENT INFORMATION SYNTAX: {##}gi Where: ## is the type of information requested, listed below: 00 = Get the Main firmware date code and version 01 = Get the extended information on the main firmware and also the BIOS firmware 02 = Get diagnostic information (Measurement Counter, Lamp On Time, and Maximum Lamp Temperature OPERATION: Returns diagnostic information regarding the instrument. RESPONSE: Data response varies dependent on the option requested… 9 GET READING SYNTAX: ##gr Where: ## is the type of information requested, listed below 00 = Display This Help List 01 = Get Reading Reflectances 02 = Get Pass/Fail Statuses 03 = Get Sample Averaging Status 04 = Get Differences (• E, • L, • a, • b, • C, • H) 05 = Get Colorspace Data (CIELabCh) 06 = Get dEcmc, CIEdE94, CIEdE2000 07 = Get Tristimulus Values (XYZ) 08 = Get Hunter Lab The help list is transmitted if ## is not provided. OPERATION: This command returns measurement sample data. RESPONSE: Responds with the present setting of the selected configuration option. The response varies depending on the option selected. Invalid parameters will return 0’s followed by the status. 00gr – Help List. Returns a help list of parameters. 01gr – Get Reflectances. The instrument returns a string of reflectances The data string is 31, comma separated, decimal reflectance values. The decimal point is omitted and assumed to be two digits from the right (100.00 = 10000). Example: 9001,8975,9100,9035,8997,9003,8999 … ,9000 02gr – Get Pass/Fail Statuses. Returns a string of pass/fail flags in the format “z,z,z,z,z,z,z”. z is 0 for fail, 1 for a pass, or 2 for action warning. Each number corresponds to a tolerance type. These are as follows: 1st z = Pass/Action/Fail status for Delta E or high Delta L* tolerance 2nd z = Pass/ Action/Fail status for low Delta L* tolerance 3rd z = Pass/ Action/Fail status for high Delta a* or Delta C* tolerance 4th z = Pass/ Action/Fail status for low Delta a* or Delta C* tolerance 5th z = Pass/ Action/Fail status for high Delta b* or Delta H* tolerance 6th z = Pass/ Action/Fail status for low Delta b* or Delta H* tolerance Note: All statuses will be set to PASS if the tolerance mode is disabled. 03gr – Get Sample Averaging Status. Returns a string of a couple numbers in the format “y,z” ‘y’ is how many measurements have been taken towards the running average and z is how many measurements are needed to be made before a sample is complete. So “2.5” means the last measurement was 2 out of 5. 04gr – Get the delta Values. This command reports the differences between the sample and the current standard. It returns an ASCII string of six numbers in the format “eeeee,LLLLLL,aaaaaa,bbbbbb,cccccc,hhhhhh”. eeeeee represents the Delta E value, LLLLLL represents Delta L*, aaaaaa represents Delta a*, bbbbbb represents Delta b*, cccccc represents Delta C*, and hhhhhh represents Delta H*. 10 05gr – Get the sample L*a*b*C*h°. This command reports the colorspace data of the sample. The data string is five, comma separated, decimal values. The decimal point is omitted and assumed to be two digits from the right (100.00 = 10000). The first number is the L* value, the second is a*, then b*, C*, and h° respectively. Example: If the colorspace values are L* = 95.23, a* = -2.89, b* = 11.50, C* = 11.86, and h° = 104.11, then the data string reported would be: 9523,-289,1150,1186,10411 06gr – Get the dEcmc CIEdE94, CIEdE2000 Tolerance. This command reports the CMC, CIEdE94 and CIEdE2000 against current standard. The data string is three, comma separated, decimal values. The decimal point is omitted and assumed to be two digits from the right (100.00 = 10000). The first number is the CMC value, the second is CIEdE94, the third is CIEdE2000. Example: If the delta values are CMC = 3.28, CIEdE94 = 4.49, CIEdE2000 = 2.96, then the data string reported would be: 328, 449, 296 07gr – Get Tristimulus Values (XYZ). This command reports the colorspace data (XYZ) of the sample. The data string is three, comma separated, decimal values. The decimal point is omitted and assumed to be two digits from the right (100.00 = 10000). Example: If the values are X = 12.28, Y = 15.49, Z = 31.96, then the data string reported would be: 1228, 1549, 3196 08gr – Get the Hunter Lab. This command reports the colorspace data (Hunter Lab) of the sample. The data string is three, comma separated, decimal values. The decimal point is omitted and assumed to be two digits from the right (100.00 = 10000). The first number is the L value, the second is a, then b respectively. Example: If the colorspace values are L = 95.37, a = -0.36, b = 2.91, then the data string reported would be: 9537,-36, 291. HEAD MODE SYNTAX: ##hm Where: ## is one of the instrument operation mode as follows: 00 – SAMPLE MODE 01 – LEARN MODE 02 – Not used 03 – TARGET ALIGNMENT MODE 04 – TARGET MODE 05 – SYSTEM STARTUP MODE 06 – SAVE LEARNED STANDARD EXIT LEARN 99 – ERROR MODE NOTE: A project must be created by using 01ps before entering Learn Mode. Learn Mode must be exited using the “06hm” command or the learned standard will not be saved. The target alignment fixture must be attached on the instrument while using TARGET ALIGNMENT MODE. OPERATION: This command is used by software to get/set the current operating mode of the instrument. Not all modes are accessible by software, if the new mode is not accepted the command will return an invalid command parameter status <02>. 11 RESPONSE: If no setting is provided with this command, the response is the current mode ## followed by the status . Otherwise the response is the status only. HEAD STATUS SYNTAX: hs OPERATION: Returns a the operating status of the instrument. RESPONSE: ss Where: ss - is one of the following: 00 = Normal operation 01 = Warming up 02 = Hardware failure INPUT/OUTPUT SYNTAX: {bb}{aa}io OPERATION: aa is the command option where: 00 = set/get the PASS, ACTION, FAIL outputs 01 = set/get the channel outputs (A through E) if aa is 00 then bb is one of the following values to set the outputs: 01 turns ON the PASS (green) output 02 turns ON the ACTION (yellow) output 04 turns ON the FAIL (red) output ON = closed switch, OFF = open switch Values may be combined to turn ON multiple outputs. Example: 06 turns ON ACTION and FAIL if aa is 01 then bb is one of the following values to set the outputs: 01 turns ON the channel A output 02 turns ON the channel B output 04 turns ON the channel C output 08 turns ON the channel D output 10 turns ON the channel E output ON = closed switch, OFF = open switch Values may be combined to turn ON multiple outputs. Example: 14 turns ON channels C and E If bb is not provided this command will return the present settings. If aa and bb are not provided this command will return the status of all the user output pins. The bit allocations for each output are as follows: 12 Bit 0 = PASS output Bit 1 = ACTION output Bit 2 = FAIL output Bits 3 to 7 = not used Bit 8 = Channel A Bit 9 = Channel B Bit 10 = Channel C Bit 11 = Channel D Bit 12 = Channel E Bits 13 to 15 = not used If bb is not provided this command will return the present settings. NOTE: The ACTION output and channel E are the same output. If either is turned ON then the output will be on. Both must be OFF for the output to be off. RESPONSE: {##}## Where: #### - indicates the present settings. LOAD DEFAULTS SYNTAX: ld OPERATION: Sets all user configurations settings to their default values. Note: White calibration is required after load default values. A “make permanent” (mp) command is required to save the new settings in nonvolatile memory. RESPONSE: MEASURE SYNTAX: ma OPERATION: Causes the instrument to measure a sample. RESPONSE: MAKE PERMANENT SYNTAX: {##}mp where: ## is 00 (or non existent) to save user configuration items (see CF and LD commands). ## not available when 01 (reserved for factory settings). ## is 02 to save new calibration plaque values (see CS command). ## is 03 to save cal timestamps and verification tolerances (see CS command). OPERATION: Saves the current user configuration settings into nonvolatile memory. 13 RESPONSE: PROJECT CLEAR SYNTAX: pc OPERATION: This command clears out the current project data and sets all project features to their default states. The defaults are as follows: BYTE 1 2 3 4 5 6 7 8 9 10 11 RESPONSE: Description Unused by this instrument. Number of readings to be averaged is set to zero. Amount of time between auto average readings is set to zero. The method used to average readings is set to normal. Time between external trigger and when reading occurs is set to zero. Unused by this instrument. Search for closest standard is enable. Output Polarity is set to normally open. Time that output is active is set to no timeout (infinite). Illuminant is set to D65. Observer is set to 10 degree. PROJECT GET SYNTAX: ##pg Where: ## is used as a Data Type Setting OPERATION: These commands are used to obtain current project data from the instrument. RESPONSE: Responds with the present setting of the selected configuration option. The response varies depending on the option selected. 01pg – Get Project Name. This returns the current Project Name String. Up to 40 characters plus a null terminator. 04pg – Get Project Configuration. The configuration of a project consists of eleven bytes of data. The purpose of each byte is as follows: BYTE 1 2 3 4 5 6 7 8 9 10 Description Unused by this instrument Number of readings to be averaged or the filter weight when digital filtering Amount of time (0.1 second resolution) between auto average readings The method used to average readings (0 = Normal, 1 = Digitally Filtered) Time (0.1 sec resolution) between external trigger and when reading occurs Unused by this instrument Search Enable (0 = Disabled, 1 = Enabled) Output Polarity (0 = normally open, 1 = normally closed) Time (0.1 second resolution) output port remains active (0 = infinite) Illuminant as follows: 0=A 14 1=C 2 = D50 3 = D65 4 = F2 5 = F7 6 = F11 7 = F12 8 = D75 9 = D55 11 Observer as follows: 0 = 2 degree 1 = 10 degree The eleven numbers are comma separated and sent as a single data packet. 15 POLL HEAD SYNTAX: #ph Where: if # is a value greater than 0 sent as a parameter will reset the poll flag. If the parameter is zero or left out, the response will indicate whether a new measurement has been made or not. OPERATION: This command will be sent often to the instrument in order to know when it has taken a measurement triggered by any source. Once a measurement is taken, this command will respond with <00> responses until the poll flag is reset with a (1ph). NOTE: The responses are in the status packet to make the response as short as possible. This is inconsistent with all other commands. RESPONSE: <**> Where: ** is one of the following status codes: 00 A new measurement was performed. 01 No new measurements have been made since the poll flag has been reset. 02 A measurement was made towards a Sample Average in Manual mode. Once the last reading is made towards an average this command will return a <00> response. A measurement was made towards a Sample Average in Auto Mode. After the series of measurements have completed, this command will respond with a <00> response. 03 04 The instrument is in an error state, and the error must be resolved before further readings can take place. 05 The instrument is busy and no measurement should be taken until the instrument has completed its task. PROJECT SET SYNTAX: ##ps Where: ## is used as a Data Type Setting OPERATION: These commands are used to set the current project data in the instrument. The types of data and their format are described below. RESPONSE: Responds with the present setting of the selected configuration option. The response varies depending on the option selected. 01ps – Set Project Name. Using this command, the instrument will expect a name to follow (41 characters max including null terminator). 16 04ps – Set Project Configuration. The configuration of a project consists of eleven bytes of data. The purpose of each byte is as follows: BYTE 1 2 3 4 5 6 7 8 9 10 11 Descripion Unused by instrument (set to 0) Number of readings to be averaged or the filter weight when digital filtering (this value can be set from 0 to 99) Amount of time (0.1 second resolution) between auto average readings The method used to average readings (0 = Normal, 1 = Digitally Filtered) Time (0.1 sec resolution) between external trigger and when reading occurs Unused by this instrument (set to 0) Search Enable (0 = Disabled, 1 = Enabled) Output Polarity (0 = normally open, 1 = normally closed) Time (0.1 second resolution) output port remains active (0 = infinite) Illuminant as follows: 0=A 1=C 2 = D50 3 = D65 4 = F2 5 = F7 6 = F11 7 = F12 8 = D75 9 = D55 Observer as follows: 0 = 2 degree 1 = 10 degree The eleven bytes are comma separated and sent as a single data packet. RESET SYNTAX: re OPERATION: Initiates a system reset. Sends the response out before the reset. Before an “re” command is sent it is recommended that the “7fge” command be sent to save diagnostic information. RESPONSE: STANDARD ACTIVE SYNTAX: ##sa Where: ## is the Standard number (1 to 255 ASCII) OPERATION: The number specified becomes the current Standard. Only the current standard can have its information accessed. If no parameter is sent, the current standard number is returned before the status response. RESPONSE: 17 STANDARDS CLEAR SYNTAX: sc OPERATION: Clears all standards from the instrument’s database memory. RESPONSE: STANDARD GET SYNTAX: ##sg Where: ## is used as a Data Type Setting If no parameter is provided this command will return the number of standards presently stored in the instrument. OPERATION: These commands are used to obtain current Standard data from the instrument. Use the (sa) command to access different Standards. RESPONSE: Responds with the present setting of the selected configuration option. The response varies depending on the option selected. 01sg – Get Standard Name. This returns the current Standard Name string. Up to 40 characters plus a null terminator. 02sg – Get Standard Tolerances. This returns a string of 12 tolerance values in the following format: aaaa,bbbb,cccc,dddd,eeee,ffff,gggg,hhhh,iiii,jjjj,kkkk,llll Each number is decimal in ASCII form with an assumed, two place decimal point (1000 = 10.00). The numbers represented are as follows: aaaa bbbb cccc dddd eeee ffff gggg hhhh iiii = the action limit for Delta E in the Delta E tolerance mode or the high action limit for delta L* in the Delta L*a*b* or Delta L*C*H* tolerance modes. = the fail limit for Delta E in the Delta E tolerance mode or the high fail limit for delta L* in the Delta L*a*b* or Delta L*C*H* tolerance modes. = the high action limit for Delta a* in the Delta L*a*b* tolerance mode or the high action limit for Delta C* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = the high fail limit for Delta a* in the Delta L*a*b* tolerance mode or the high fail limit for Delta C* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = the high action limit for Delta b* in the Delta L*a*b* tolerance mode or the high action limit for Delta H* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = the high fail limit for Delta b* in the Delta L*a*b* tolerance mode or the high fail limit for Delta H* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = the low action limit for delta L* in the Delta L*a*b* or Delta L*C*H* tolerance modes. This number should be zero in the Delta E tolerance mode. = the low fail limit for delta L* in the Delta L*a*b* or Delta L*C*H* tolerance modes. This number should be zero in the Delta E tolerance mode. = the low action limit for Delta a* in the Delta L*a*b* tolerance mode or the low action limit for Delta C* in the Delta L*C*H* tolerance mode 18 jjjj kkkk llll This number should be zero in the Delta E tolerance mode. = the low fail limit for Delta a* in the Delta L*a*b* tolerance mode or the low fail limit for Delta C* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = the low action limit for Delta b* in the Delta L*a*b* tolerance mode or the low action limit for Delta H* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = the low fail limit for Delta b* in the Delta L*a*b* tolerance mode or the low fail limit for Delta H* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. 03sg – Get Standard Reflectances. The instrument returns a string of reflectances The data string is 31, comma separated, decimal reflectance values. The decimal point is omitted and assumed to be two digits from the right (100.00 = 10000). Example: 9001,8975,9100,9035,8997,9003,8999 … ,9000 04sg – Get the tolerance mode. This command returns one of the following tolerance modes: 00 = No tolerance 01 = Delta Eab 02 = Delta L* + Delta a* + Delta b* 03 = Delta L* + Delta C* + Delta H* 05sg – Alternate format get tolerances. This returns a string of tolerances in the following format: aaaa,bbbb,cccc,dddd,eeee,ffff,gggg Each number is decimal in ASCII form with an assumed, two place decimal point (1000 = 10.00). The numbers represented are as follows: aaaa = the high fail limit for Delta E in the Delta E tolerance mode or the high fail limit for delta L* in the Delta L*a*b* or Delta L*C*H* tolerance modes. bbbb = the high fail limit for Delta a* in the Delta L*a*b* tolerance mode or the high fail limit for Delta C* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. cccc = the high fail limit for Delta b* in the Delta L*a*b* tolerance mode or the high fail limit for Delta H* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. dddd = the low fail limit for Delta E in the Delta E tolerance mode or the low fail limit for delta L* in the Delta L*a*b* or Delta L*C*H* tolerance modes. eeee = the low fail limit for Delta a* in the Delta L*a*b* tolerance mode or the low fail limit for Delta C* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. ffff = the low fail limit for Delta b* in the Delta L*a*b* tolerance mode or the low fail limit for Delta H* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. gggg = is the percentage of the fail limit which will be the action limit. Example: 8000 = 80.00% if the fail limit is 1.25 then the action limit would be 1.00 06sg – Get the standard L*a*b*C*h°. This command reports the colorspace data of the standard. The data string is five, comma separated, decimal values. The decimal point is omitted and assumed to be two digits from the right (100.00 = 10000). The first number is the L* value, the second is a*, then b*, C*, and h° respectively. Example: If the colorspace values are L* = 95.23, a* = -2.89, b* = 11.50, C* = 11.86, and h° = 104.11, then the data string reported would be: 9523,-289,1150,1186,10411 19 SERIAL NUMBER SYNTAX: {##}sn Where: ## is 00 for the instrument serial number. ## is 01 for the calibration plaque serial number. OPERATION: Returns the specified serial number. RESPONSE: dddddd Where: dddddd is the present serial number. STANDARD SET SYNTAX: ##ss Where: ## is used as a Data Type Setting If no parameter is provided this command will return the number of standards presently stored in the instrument. OPERATION: These commands are used to set current standard data from the instrument. Use the (sa) command to select different standards. NOTE: The standards must be cleared (once) using the “sc” command before new standards can be loaded. When creating a standard the procedure must be done in order where the Standard name is set first, then the tolerances, then reflectances, and the tolerance mode is set last. NOTE: It is possible to change existing, individual standards. However, if all the standards are being changed, it is recommended that they be cleared first using the “sc” command. This will speed up the process of loading the new standards. RESPONSE: The response varies depending on the option selected, but ends with 01ss – Set Standard Name. After this command is sent to the instrument, it expects the Standard Name to be sent right after. Up to 40 characters plus a null terminator. 02ss – Set Standard Tolerances. After this command is sent the instrument will wait (up to 10 seconds) to receive a data string. This string consists of 12 tolerance values in the following format: aaaa,bbbb,cccc,dddd,eeee,ffff,gggg,hhhh,iiii,jjjj,kkkk,llll Each number is decimal in ASCII form with an assumed, two place decimal point (1000 = 10.00). All twelve values must be sent even if some are not used. Unused values should be set to zero. The numbers represented are as follows: aaaa bbbb cccc = the action limit for Delta E in the Delta E tolerance mode or the high action limit for delta L* in the Delta L*a*b* or Delta L*C*H* tolerance modes. = the fail limit for Delta E in the Delta E tolerance mode or the high fail limit for delta L* in the Delta L*a*b* or Delta L*C*H* tolerance modes. = the high action limit for Delta a* in the Delta L*a*b* tolerance mode or the high action limit for Delta C* in the Delta L*C*H* tolerance mode 20 dddd eeee ffff gggg hhhh iiii jjjj kkkk llll This number should be zero in the Delta E tolerance mode. = the high fail limit for Delta a* in the Delta L*a*b* tolerance mode or the high fail limit for Delta C* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = the high action limit for Delta b* in the Delta L*a*b* tolerance mode or the high action limit for Delta H* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = the high fail limit for Delta b* in the Delta L*a*b* tolerance mode or the high fail limit for Delta H* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = the low action limit for delta L* in the Delta L*a*b* or Delta L*C*H* tolerance modes. This number should be zero in the Delta E tolerance mode. = the low fail limit for delta L* in the Delta L*a*b* or Delta L*C*H* tolerance modes. This number should be zero in the Delta E tolerance mode. = the low action limit for Delta a* in the Delta L*a*b* tolerance mode or the low action limit for Delta C* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = the low fail limit for Delta a* in the Delta L*a*b* tolerance mode or the low fail limit for Delta C* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = the low action limit for Delta b* in the Delta L*a*b* tolerance mode or the low action limit for Delta H* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = the low fail limit for Delta b* in the Delta L*a*b* tolerance mode or the low fail limit for Delta H* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. 03ss – Set Standard Reflectances. After this command is sent the instrument will wait (up to 10 seconds) to receive a data string. This string consists of 31, comma separated, decimal reflectance values. The decimal point is omitted and assumed to be two digits from the right (100.00 = 10000). Example: 9001,8975,9100,9035,8997,9003,8999 … ,9000 ##04ss – Set the tolerance mode. Where ## is one of the tolerance modes as follows: 00 = No tolerance 01 = Delta Eab 02 = Delta L* + Delta a* + Delta b* 03 = Delta L* + Delta C* + Delta H* 05ss – Alternate format set tolerances. After this command is sent the instrument will wait (up to 10 seconds) to receive a data string. This string consists of four values in the following format: aaaa,bbbb,cccc,dddd,eeee,ffff,gggg Each number is decimal in ASCII form with an assumed, two place decimal point (1000 = 10.00). The numbers represented are as follows: aaaa bbbb cccc dddd = the high fail limit for Delta E in the Delta E tolerance mode or the high fail limit for delta L* in the Delta L*a*b* or Delta L*C*H* tolerance modes. = the high fail limit for Delta a* in the Delta L*a*b* tolerance mode or the high fail limit for Delta C* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = the high fail limit for Delta b* in the Delta L*a*b* tolerance mode or the high fail limit for Delta H* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = the low fail limit for Delta E in the Delta E tolerance mode or the low fail limit 21 eeee ffff gggg for delta L* in the Delta L*a*b* or Delta L*C*H* tolerance modes. = the low fail limit for Delta a* in the Delta L*a*b* tolerance mode or the low fail limit for Delta C* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = the low fail limit for Delta b* in the Delta L*a*b* tolerance mode or the low fail limit for Delta H* in the Delta L*C*H* tolerance mode This number should be zero in the Delta E tolerance mode. = is the percentage of the fail limit which will be the action limit. Example: 8000 = 80.00% if the fail limit is 1.25 then the action limit would be 1.00 SOFTWARE VERSION SYNTAX: sv or v OPERATION: Returns the instrument type and firmware version code. RESPONSE: X-Rite ttttt yymdd Where: ttttt is the instrument type (VS410 for this instrument). yy is the last two digits of the year (00 – 99). m is the month (1 – 9 respectively, October = a, November = b, December = c). dd is the day (01 – 31). CONFIGURE RS485 TRANSMIT MODE SYNTAX: {#}tm OPERATION: Changes RS485 Transmit Mode to Half or Full Duplex Mode. The baud rate remains the same as RS232. RESPONSE: The response varies depending on the option selected, but ends with . tm – This command help list. 0tm – Returns current RS485 Transmit Mode 1tm – Sets RS485 Transmit Mode to Half Duplex 2tm – sets RS485 Transmit Mode to Full Duplex Note: Use command "0112cf" to enable RS485 port first. VERIFY WHITE CALIBRATION SYNTAX: {#}vw OPERATION: Causes the instrument to read and compare the reading to the white calibration values and transmits the results of the comparison. The pass\fail tolerance of this comparison is set using the “06cs” command. The default is 1.00. RESPONSE: If the command is “vw” or “0vw” the response will be 0 if the reading passed or 1 if the reading failed. This will be followed by the status packet . 22 If the command is “1vw” the response will be the Delta E value of the comparison between the reading and the white calibration values. This will be followed by the status packet . 23 Appendix A ERROR CODES Status/Error Codes Code Description 00 - No problem 01 - Unrecognized command 02 - Invalid command parameter 03 - Data format error (data received not in expected format) 04 - Timeout 05 - Busy 06 - Unable to complete command action 07 - Measurement failed (this would probably generate an error as well) 08 - Measurement aborted 09 - Calibration required 0B - External power failure 0F - Illuminant lamp weak 10 - Illuminant lamp failed 11 – Not at operating temperature 12 - Data lost 13 - Factory initialization missing or incomplete 14 - Configuration set to default 15 - Configuration lost 16 - Insufficient memory 17 - Random access memory error 18 - Data flash memory error 19 - Program code error 1A - Microcontroller error 1B - Invalid clock error 1C - Data not configured 1D - A limit was exceeded 1E - Invalid data 20 - Communications to the Acquisition board failed 21 - Command MA to Acquisition board failed 22 – Communication MS to Acquisition board failed 23 – Communication SG to Acquisition board failed 24 – Communication AL to Acquisition board failed 25 – Communication MR to Acquisition board failed 26 – Communication LC to Acquisition board failed 27 - Communications to the LED board failed 28 - Communications to the IOComm board failed 29 - System strobe failed 2A - SPI receive failed 2B - SPI transmit failed 30 - Datastore read error 31 - Datastore write error 32 - Datastore full 33 - Datastore checksum error 24 34 - Datastore size mismatch 35 - Datastore on the Acquistion board failed 36 - Datastore on the LED board failed 37 - Datastore on the IOComm board failed 38 - Datastore erase error 40 – A valid project has not been saved 41 – Exceeded the maximum number of standards 50 - Lamp control error 51 - Target LED control error 52 - Gain setting error 53 - Gain calculation error 54 - Auto gain error 55 - Measure data retrieval error 56 - Unable to communicate with the measure AtoD 57 - Measurement hardware failed initialization 58 - Measurement hardware failed init timeout 59 - Measurement offset error 5A - Measurement saturated input 5B - Heater failed 5C - Invalid Calibration Plaque 5D - Invalid temperature compensation table 70 - Failed to obtain the Maximum Temperature 71 – Acquisition Board Timeout 72 – Acquisition Started but Not complete 73 – Number of revolution out of range 74 – Acquisition insufficient data 75 – Acquisition attempt again 76 – Acquisition saturated 77 – Acquisition in pending state 78 – Acquisition in Preparation state 79 – Acquisition error unknown 25