Command list for Vue-TEC controllers

adi?

Read current A/D

Reads the current sense A/D and returns the result. Normally this is the laser current, but on the TEC controller it senses the TEC current. On products that have multiple current sensors (HC and HCV), this command returns the sum of the individual sensor readings. In such cases the maximum returned value is 4095 * the number of sensors. See commands adi1? and adi2? (HC and HCV), and adi3? and adi4? (HCV).

Return type: int range: 0-4095 (but see description)

adref?

Read ADC reference channel

Reads the CPU's voltage reference channel. By design this number of counts always represents 1.205 plus or minus 0.005V.

Return type: int range: 0-4095

adt?

Read temperature sense ADC

Returns the value of the temperature sense A/D converter.

Return type: int range: 0-4095

adtcpu?

Reads the CPU temperature A/D converter

Reads the CPU temperature analog/digital converter channel. On HV, MV-21 and MV-40 systems this command reads a thermistor mounted on the control board, and the temperature conversion formula used is:
degreesC = -counts * 2.5 / 4095 * 42.9019 + 79.26541

On LV-15 and LV-30 this command reads a thermistor mounted on the control board, and the conversion formula is:
degreesC = 109.5628 - 98.0553V + 42.0291V2 - 7.7364V3, where V = 3.3 * counts / 4095

.

On TEC controllers this command reads a temperature monitor built into the CPU and the conversion formula is:
degreesC = 359.117 - (counts * 3.0 / 4095) / 0.00435

On other products this reads a signal internal to the CPU chip, and the temperature conversion formula is:
degreesC = (0.650 - (counts * 2.5 / 4095)) * 500.0 + 25.0

On all products the tcpu? command performs the correct conversion and returns a result in degrees C.

Return type: int range: 0-4095

adv1?

Read TEC minus voltage ADC

Returns the value of an A/D converter that sense the voltage across the TEC when it is operating in "cooling" mode. This value is only meaningful when the TEC drive is less than 15000. The drive reading can be obtained by the command "t0dr?".

Return type: int range: 0-4095

adv2?

Read TEC minus voltage ADC

Returns the value of an A/D converter that sense the voltage across the TEC when it is operating in "heating" mode. This value is only meaningful when the TEC drive is greater than 15000. The drive reading can be obtained by the command "t0dr?".

Return type: int range: 0-4095

advin?

Read input voltage A/D

Reads an A/D converter that senses the input voltage. The number returned is proportional to input voltage, but the conversoin factor of counts to volts is product-dependent.

Return type: int range: 0-4095

apc?

Get amps per count

Returns the current calibration constant in amps per DAC count. This is set at the factory and cannot be changed in the field. On the TEC controller this command has no meaning and is present only for compatibility.

Return type: float

as

Enable/disable Autostart

Sets the state of the Autostart power-on enable feature. When this feature is enabled, Autostart will run each time the power supply is turned on.

Argument type: int range: 0-1

as?

Return the power-on Autostart setting

Returns 1 if Autostart is programmed to run the next time the controller is turned on, 0 if it is not.

Return type: int range: 0-1

cf

Clear fault

Clears any active fault. If the laser was shut down because of a fault condition, this command will allow it to operate again. A Laser On command (l1) is required to resume laser operation.

cfg?

Get configuration

Returns configuration data. On MV systems this returns the system type as follows: 0 = MV-12, 1 = MV-15, 2 = MV-21, 3 = MV-40. On other products this command is reserved for future use.

Return type: int range: 0-3

dmax?

Get maximum drive

Returns the maximum allowed drive setting at the moment, given the measured resistance of the TEC. The scale is 15000-30000 where 15000 is no heating and 30000 is maximum heating.

Return type: int range: 15000-30000

dmin?

Get minimum drive

Returns the minimum allowed drive setting at the moment, given the measured resistance of the TEC. The scale is 0-15000 where 0 is maximum cooling and 15000 is no cooling. See dmax?.

Return type: int range: 0-15000

f?

Get operating fault

Returns a small integer indicating the presence of a system fault. A zero return indicates that the system is working properly. A non-zero return indicates that the system has shut off the laser because of a fault condition. The meaning of the fault code varies from one product to another.

Return type: int

fdesc?

Get fault description

Returns a text description of the active fault, which often contains more details than the fault code. If there is no fault then the returned text will be "No fault", which will be always the case when fc? returns 0.

Return type: string

hrs?

Get system operating hours

Returns the total system operating hours.

Return type: float

imax

Set the maximum TEC current

Sets the maximum TEC current in amps. If the argument is greater than the system maximum (a factory setting), the system maximum will be used.

Argument type: float

imax?

Get maximum current in amps

Gets the maximum TEC current in amps. This can be changed with the imax command.

Return type: float

isysmax?

Get system maximum current

Returns the allowed system maximum current (in amps). A factory setting.

Return type: float

lc?

Get lock counter

When the temperature servo is within the "lock window" (close to the set point), it begins to track how long it has been within the window. When this number reaches 100 the servo enters the "locked" state. The units are 0.1 of a second. This number is 0 when the servo is outside the lock window.

Return type: int range: 0-100

oav?

Get output amps per volt

This returns a factory setting that compensates for different internal current sensors.

Return type: float

prod?

Get product name

Returns a string describing the product type.

Return type: str

ptf

Enables/disables passthrough fault handling

Sets the state of the passthrough fault handling feature. When this parameter is set to 1 the TEC controller will assume that a VueMetrix controller is connected to its second serial port. This has two effects:

.

This setting is stored in flash memory and remains valid until it is changed.

Argument type: int range: 0-1

ptf?

Returns state of passthrough fault enable feature

Returns the state of the passthrough fault enable feature. See the command "ptf".

Return type: int range: 0-1

pwm?

Get the PWM setting

Returns the PWM drive signal, a number proportional to the duty cycle of the PWM that controls the current generation circuitry. The value ranges from 0-7200 on the LV3, 0-14400 on the LV6, and -673 to +673 on the TEC (negative = cooling, positive = heating).

Return type: int

r?

MV: Is current ramping? TEC: Is drive at rail?

MV: Returns 1 when the current is ramping, o if it is not. If the ramp function is enabled (ren command) and a current change is requested (i command), this query can be used to determine when the controller finishes the current change procedure. If current ramping is disabled, this command always returns o. TEC: Returns 1 when the drive is at the rail, i.e., when an increase in drive level would cause an over current condition, an over voltage condition, or an output power over limit condition.

Return type: int range: 0-1

rc?

Get rail counter

If the TEC drive is at its limit it is said to be "at the rail." If this occurs and the temperature is moving in the wrong direction (farther from the set point), it indicates a potentially dangerous condition known as thermal runaway. Under these conditions the controller will increment this counter every tenth of a second. If a count of 100 is reached (ten seconds) a "Servo at rail" fault is produced and the drive is shut off.

Return type: int range: 0-100

sc?

Get seek counter

This provides an indication of how long the servo has been in "seek" mode. Each increment of the counter represents 0.1 seconds. This count begins as soon as the command to lock the servo is received, and continues until the "lock" state is reached. If the count reaches 12000 (20 minutes) the driver is shut off with a "No convergence" fault.

Return type: int

sn?

Get serial number

Returns the system's serial number, a 32-bit unsigned integer. This is set at the factory and cannot be changed in the field.

Return type: int

t0

Returns the temperature servo set point

Returns the set point for the temperature servo in degrees C.

Return type: float

t0?

Read temperature at Thermistor 0

Measures the signal on thermistor input 0, converts it to a temperature using the previously stored thermistor calibration constants, and returns the result in degrees C. For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement".

Return type: float

t0a

Set thermistor A coefficient

Sets the "a" coefficient of thermistor #0. For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement".

Argument type: float

t0a?

Get thermistor A coefficient

Reads the "a" coefficient of thermistor #0. For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement".

Return type: float

t0b

Set thermistor B coefficient

Sets the "b" coefficient of thermistor #0. For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement".

Argument type: float

t0b?

Get thermistor B coefficient

Reads the "b" coefficient of thermistor #0. For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement".

Return type: float

t0c

Set thermistor C coefficient

Sets the "c" coefficient of thermistor #0. For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement".

Argument type: float

t0c?

Get thermistor C coefficient

Reads the "c" coefficient of thermistor #0. For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement".

Return type: float

t0cd

Get temperature servo delta coefficient

Sets the "delta" coefficient of the temperature servo. This coefficient modifies the servo performance based on the difference between the observed temperature and the set point.

Argument type: float

t0cd?

Get servo delta coefficient

Gets the "delta" coefficient of the temperature servo.

Return type: float

t0cs

Sets servo slope coefficient

Sets the "slope" coefficient of the temperature servo. This coefficient modifies the servo performance based on the observe the observed value of temperature versus time.

Argument type: float

t0cs?

Get servo slope coefficient

Gets the "slope" coefficient of the temperature servo.

Return type: float

t0d

Set thermistor D coefficient/Set thermistor defaults

On MV and HC systems, sets the "d" coefficient of thermistor #0 (requires a floating point argument). For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement".

On DPSS systems, this command sets the default coefficients for thermistor 0. This command takes no argument.

Argument type: float

t0d0

Sets the minimum value of the TEC drive

Sets a limit on the TEC cooling voltage. The scale is 0 = full scale cooling and 15000 = no cooling. This parameter will limit only the negative voltage produced by the controller. The negative voltage will be limited to V - V * n / 15000, where "n" is the value set by this command and "V" is the voltage capability of the controller. There is a corresponding command "t0d1" to limit the heating voltage.

Argument type: int range: 0-14000

t0d0?

Get the minimum value of the TEC drive

Returns the minimum value of TEC drive as previously set by the t0d0 command.

Return type: int range: 0-14000

t0d1

Sets the maximum value of the TEC drive

Sets a limit on the TEC heating voltage. The scale is 15000 = no heating and 30000 = maximum heating. This parameter will limit only the positive voltage produced by the controller. The positive voltage will be limited to V * (n -15000) / 30000, where "n" is the value set by this command and "V" is the voltage capability of the controller. There is a corresponding command "t0d0" to limit the heating voltage.

Argument type: int range: 16000-30000

t0d1?

Get the maximum value of the TEC drive

Returns the maximum value of TEC drive as previously set by the t0d1 command.

Return type: int range: 16000-30000

t0d?

Get thermistor D coefficient

Reads the "d" coefficient of thermistor #0. For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement".

Return type: float

t0dr

Set the TEC drive

Sets the TEC drive on a scale where 0 = maximum cooling, 15000 = no cooling or heating, 30000 = maximum heating. Issuing this command will have the effect of disengaging the temperature servo, so the temperature of the load will no longer be regulated.

Argument type: int range: 0-30000

t0dr?

Get the TEC drive

Gets the TEC drive on a scale where 0 = maximum cooling, 15000 = no cooling or heating, 30000 = maximum heating. This command will always return the value of the TEC drive at the moment and has no effect on the servo.

Return type: int range: 0-30000

t0en

Enable/disable temperature checking (most products) or enable/disable temperature servo (TEC)

On most products: Enables/disables temperature checking of the laser based on the value of thermistor #0. If this feature is enabled, a fault is produced when the laser temperature falls above a maximum value (set by t0hot) or below a minimum (set by t0cold).

On TEC controllers this command engages/disengages the temperature servo, i.e., enables/disables active control of the load temperature.

Argument type: int range: 0-1

t0i?

Returns intercept calibration constant for Thermistor 0 (most products) or Read TEC current (TEC)

On most products: Returns the intercept calibration constant for the first thermistor (t0). This is the temperature reported for an observed voltage of 0.0V. For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement". On newer MV and MV systems this command is replaced by t0a?, t0b?, t0c? and t0d?.

On TEC controllers this command has a completely different meaning: get the TEC current in amps. A negative value indicates cooling and a positive value indicates heating.

Return type: float

t0lw

Set the lock window

Sets the lock window in degrees C. This is the amount that the actual temperature can differ from the set point and still be considered "locked." When the temperature has remained within this window for ten seconds the servo state is defined as "locked."

Argument type: float

t0lw?

Get the lock window

Returns the lock window in degrees C.

Return type: float

t0s?

Returns slope calibration constant for Thermistor 0 (most products) or get servo state (TEC)

On most products, returns the slope calibration constant for the first thermistor (t0). This is the change in reported temperature for a 1.0V change in the measured voltage. The value is stored in non-volatile memory. Since this value is typically negative, checksums must be disabled when transmitting this command. For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement". On newer MV and MV systems this command is replaced by t0a?, t0b?, t0c? and t0d?.

On TEC controllers this command returns the servo state, an integer. The returned values have the following meanings:

Return type: float (int on TEC)

t0sd?

Get next drive setting

Returns the next cached drive setting on the 0-30000 scale (0=max cooling, 30000=max heating). See the command "t0sy?" for further information.

Return type: int range: 0-30000

t0sl?

Get temperature versus time slope

Returns a number that is proportional to the rate of temperature change versus time.

Return type: float

t0sp?

Get servo set point

Returns the servo set point in degrees C.

Return type: float

t0st?

Get next cached temperature

Returns the next cached temperature value in degrees C. See the command "t0sy?" for further information.

Return type: float

t0sy?

Is synchronized data available?

The TEC controller maintains a cache of the ten most recent values of temperature and TEC drive. This cache is updated when the servo loop is iterated; thus this cached data will be the exact raw data that the servo has used to perform its calculations. This is termed the "synchronized" data. The commands t0dr? and t0?, on the other hand, simply return the current value of the drive and temperature and are not synchronized to the servo loop. The servo update interval is ten times per second.

When the response to the t0sy? query is true (1), then the cache contains at least one data point that has not yet been downloaded. The commands t0sd? and t0st? retrieve the oldest cached values for drive and temperature, respectively. After downloading a drive and a temperature, the t0sy? query can be repeated to see if the cache contains additional data. The order of the t0sd? and t0st? commaands is significant, since the latter discards the oldest data point after returning it, effectively advancing one step forward through the cache. It is an error to request a data value when the cache is empty (t0sy? returns 0).

Return type: int range: 0-1

t0v?

Returns measured voltage on Thermistor 0 input

Returns the measured voltage the first thermistor (t0) input. This voltage is converted to temperature according to the thermistor calibration.

Return type: float

t0va?

Get the TEC voltage

Returns the voltage across the TEC. This command always returns a positive value, but the actual voltage will be negative if the TEC is cooling and positive if it is heating.

Return type: float

tcpu?

Get CPU temperature

Returns the temperature of the CPU chip in degrees C. A temperature reading greater than 65 degrees will shut off the system with a fault.

Return type: float

te

Talk enable unconditionally

Activates any controller receiving the message. This is only relevant for systems that utilize RS-485 communication, and on other systems is retained for compatibility.

ver?

Get firmware version

Returns the firmware version number.

Return type: int

vmax

Sets the TEC voltage limit

Sets the maximum voltage that can be applied to the TEC. If the argument exceeds the system maximum (see vsysmax?) the system maximum will be used.

Argument type: float

vmax?

Get maximum TEC voltage

Gets the maximum voltage that can be applied to the TEC.

Return type: float

vsysmax?

Get system maximum voltage

This returns the factory-set maximum voltage for the TEC.

Return type: float

wmax

Set maximum output power

Sets the maximum power (in Watts) that the driver will deliver to the TEC. This protects the input DC power supply.

Argument type: float

wmax?

Get maximum output power

Returns the system maximum output power in watts. It can be changed with the wmax command.

Return type: float