Logging data to internal memory ................... 39 Logging data to USB ....................... 39 ADC sampling and logged data ..................... 39 Format of PTC10 log files ...................... 40 U sing the system fa n ..................... 41 U sing P ID feedba ck ......................42 ..............
Page 4
F irm wa re upda tes ......................85 Repla cing the clock ba ttery ..................86 Rem ote prog ra m m ing Connecting to the PTC10 ...................... 87 Communication, assembly, and run-time errors ..............90 Concurrent macros ........................ 90 Macro names ..........................
Page 5
PTC330 thermocouple reader .................... 176 PTC420 AC output card...................... 180 PTC430 50W DC output card .................... 182 PTC440 TEC driver ......................184 PTC510 analog I/O card ..................... 187 PTC520 digital I/O card ...................... 189 S chem a tics PTC10 Programmable Temperature Controller...
Safety and Preparation for Use L ine voltage The PTC10 operates from an 88 to 264 VAC power source having a line frequency between 47 and 63 Hz. P ow er entry module A power entry module, labeled AC POWER on the back panel of the PTC10, provides connection to the power source and to a protective ground.
±1.3 30 k range ±4 100 k range ±10 300 k range ±250 2.5 M range ±30 k Drift due to temperature range ±0.002 /°C range ±0.006 /°C range ±0.006 /°C 1 k range ±0.01 /°C PTC10 Programmable Temperature Controller...
Page 10
±30 k Drift due to temperature range ±0.0006 /°C range ±0.001 /°C range ±0.0015 /°C (=±5 mK/°C for Pt100 RTD at 25°C) 1 k range ±0.005 /°C 3 k range ±0.01 /°C 10 k range ±0.03 /°C PTC10 Programmable Temperature Controller...
Page 11
1 µA Initial accuracy (AC current, at midrange) range ±0.007 ±0.005 range ±0.03 ±0.005 range ±0.07 ±0.008 range ±0.25 ±0.015 (=±40 mK for Pt100 RTD at 25°C) 1 k range ±0.6 ±0.05 3 k range ±2 ±0.1 PTC10 Programmable Temperature Controller...
Page 12
Input capacitance <1 pF Accuracy ±500 mK (over 12 months) Noise 20 mK RMS (at 10 samples/s) Drift due to temperature 20 mK/°C (type K thermocouple at 164.0 K) CMRR 100 dB Common mode isolation 250 VAC PTC10 Programmable Temperature Controller...
Page 13
Output current -5 A +5A Maximum power Compliance voltage 12 V (at 0 A current) Output resolution 0.15 mA Accuracy ±5 mA Current noise 0.02 mA (at 0.5A current, 22 ohm resistive load, 0.01-10 Hz bandwidth) PTC10 Programmable Temperature Controller...
Page 14
±10 V Resolution 24-bit input, 16-bit output ADC noise 30 µV RMS = 100 µV p-p (10 samples/s) Digital I/O Dig ita l I/O Inputs/outputs 8 optoisolated TTL lines, configurable as either 8 inputs or 8 outputs PTC10 Programmable Temperature Controller...
Page 15
Specifications xiii Connector One DB-25F Rela ys Outputs 4 independent SPDT relays Connector One 12-pin 3.5mm header Maximum current Maximum voltage 250 VAC PTC10 Programmable Temperature Controller...
Its features include: M odula r desig n The PTC10 can accept up to four I/O cards, each of which can read up to four temperature sensors and/or drive one heater. The instrument can be customized by selecting the I/O cards best suited to your application.
To add or replace an I/O card: 1. Unplug the PTC10 from the wall; otherwise, even if the instrument is switched off, live line voltage could be present. Removing and installing I/O cards while the power is turned on may permanently damage the instrument.
Page 19
The PTC320 has a 6-pin DIN socket that mates with standard 6-pin push-pull DIN plugs (i.e. Digi-Key CP-1060-ND). This is the pinout of the socket, as it appears when looking at the back panel: Sense + Excitation + Ground Not connected Excit PTC10 Programmable Temperature Controller...
Page 20
The thermistor excitation current results in about 1 µW of power being dissipated in the thermistor at the high end of each measurement range. Therefore, if the dissipation constant of the thermistor is above 1 mW/°C, the measurement error due to self-heating should be less than 1 PTC10 Programmable Temperature Controller...
Since the PTC10 enclosure is usually elevated 2 to 3 degrees above ambient temperature, the accuracy of the PTC321 may be reduced if the ambient temperature rises above about 32°C.
Standard calibration curves are included for the follo the range of the standard calibration curve; outside this range, no reading appears for the sensor. It may be possible to obtain a larger range by uploading a custom calibration curve. PTC10 Programmable Temperature Controller...
Page 23
The sensors are connected via a 9-pin D-sub (DB9) socket that mates with any standard DB9 plug, such as Amphenol L717SDE09P with backshell 17E-1657-09. One plug and backshell is provided with each PTC323. Here is a wiring diagram of the socket as it appears when looking at the PTC10 PTC10 Programmable Temperature Controller...
Page 24
AD590 sistors have a TCR of about 100 ppm/°C, which means that the sensor reading will drift upward by about 30 mK for each 1°C rise in ambient temperature. Thermal drift can be reduced substantially by PTC10 Programmable Temperature Controller...
Page 25
Sensor heating (degrees above the ambient temperature) is proportional to power dissipation. Left: the amount of current passed through the sensor by the PTC10; right: the amount of power that the sensor dissipates due to that current...
Page 26
2.5 mK Noise, accuracy, and amount of self- accuracy of the PTC10 immediately after calibration and does not account for self-heating or the accuracy above ambient temperature of a ~1 mm diameter sensor hanging by its leads in still air (dissipation constant 1 mW/°C).
Since the electrons are free to diffuse throughout the wire, they behave somewhat like a ga the hot end of the wire develops a lower density of electrons relative to the cold end. As a result, the hot end has a slight positive PTC10 Programmable Temperature Controller...
Page 28
The following table summarizes some properties of thermocouples. Two temperature ranges are given: the range that the thermocouple itself can withstand without losing its calibration, and the built-in calibration tables, assuming that the cold junction PTC10 Programmable Temperature Controller...
The thermocouple jacks are connected with thermocouple extension wires to a cold junction block inside the PTC10. The cold junction temperature is measured with a platinum RTD temperature sensor. The cold junction temperature is recorded so that if unexpected drift or other artifacts appear in the thermocouple readings, it can be determined whether the artifacts are due to erratic behavior of the cold junction.
This is likely to occur if one of the 50V output ranges is used when the heater resistance is under 20 ; if the ambient temperature outside the chassis is above 30°C; if PTC10 Programmable Temperature Controller...
The maximum power that the PTC431 can deliver depends on the resistance of the heater as shown below. PTC10 Programmable Temperature Controller...
Page 32
Output is off but heater current was detected: current is flowing into the negative . This error may indicate that the heater is shorted to a power source other than the PTC10. It can also Output card overheated: Either the resistance of the heater is less than 10 ohms; the positive and negative terminals are shorted to each other;...
The PTC440 is a current source, that is, it has direct control over the current that passes through the TEC but not the voltage. Since thermoelectric coolers are easily destroyed by both voltages and currents even slightly above their rated maximum, the PTC440 provides a voltage input (Vmon) to PTC10 Programmable Temperature Controller...
Page 34
(assuming black and white wires): P in 8 P in 14 P in 15 P in 7 Option 1 White Black White Black Option 2 Black White Black White Thermistors: Two-wire thermistors should be connected to pins 8 and 14. PTC10 Programmable Temperature Controller...
Page 35
TEC driver can use either 1 mA or 100 µA excitation. If possible, the excitation current is kept at its previous value. A slight temperature glitch may occur when the PTC440 switches from one range to the next. If these glitches could disrupt your experiment, set the excitation current manually. PTC10 Programmable Temperature Controller...
1 and the outputs are enabled, the relay is activated: the The relays appear on the PTC10 display as a single 4-bit integer value between 0 and 15. If no relays are activated, the value is 0. Each relay, if activated, adds the following to the displayed...
Page 37
The status of the eight digital I/O lines is reported on the PTC10 display as a single eight-bit integer value. Each I/O line is assigned an integer value as shown in the following table:...
Page 38
When the value of a virtual channel is changed by a macro or from the front panel, the new value does not become effective until an ADC conversion occurs. Therefore, if a macro sets the value of a virtual channel and then immediately reads the value back, the old value may be returned. PTC10 Programmable Temperature Controller...
Turn the instrument on Plug the PTC10 in and turn it on with the power switch located next to the AC power inlet. If the PTC10 does not turn on, a fuse may have blown. Check the fuse holder just above the on/off switch.
Verify that the heater leads are not shorted to ground or to each other. If the heater is resistive, unplug it from the PTC10 and measure its resistance with a multimeter. Make sure that the resistance is appropriate for the output card:...
The log interval determines the maximum l plot screen. The PTC10 stores up to one million data points for each channel in its on-board memory, while older data points are erased. At the default logging interval of 0.1 seconds, the graph can display about the last 27 hours of data.
2. Optional: the default baud rate for the FTDI driver is 9600. For faster communication, change the baud rate to 230400 on both the PC and the PTC10. On the PTC10, press the Setup key, touch the On the PC, setting, open the Device Manager and expand the Ports line.
C ontrol a temperature The PTC10 can control the temperature of one or more external devices. Each device must include a heater or cooler, and a temperature sensor that monitors the temperature of whatever is being heated or cooled.
Page 46
In the Lopass menu, select one of the six options. Select the largest value that is less than the response time of your heater. The lowpass filter reduces noise, improving the accuracy of the PID tuning process and the performance of the tuned PID feedback loop. PTC10 Programmable Temperature Controller...
Page 47
Relay: For the best possible security, the output should be routed through one of the four relays (A, B, C, or D) and the Relay button should be set to A, B, C, or D accordingly. The relay will physically disconnect the heater whenever the alarm is beeping. PTC10 Programmable Temperature Controller...
Page 48
Operation Min: If the PTC10 is controlling a thermoelectric cooler, set the min to the lower temperature limit of your system. Otherwise, this value should be set well below the lowest temperature that could normally be produced, so that the min setting can only be exceeded if something is wrong with the sensor.
Page 49
The feedback tuner changes the heater output and measures how much the temperature changes in response. Before this can be done, the PTC10 needs to be told how much the heater output should be changed and indicate how long it should wait for the temperature to change.
Page 50
The PTC10 first locks the heater output at its current value for one-third of the Lag time and measures how much the temperature changes. This measurement is the noise and drift. It then increases the heater output by Step Y and waits for the Lag time to elapse. If the temperature heater output is returned to its original value, and no changes are made to the feedback gains.
Page 51
(select the two button in the bottom-right corner. When tuning is finished, the PTC10 beeps and the PID feedback is automatically enabled. If the temperature is still below the setpoint, the PTC10 starts increasing power to the heater. The temperature may overshoot the setpoint, but should eventually stabilize at the setpoint.
Operation Input filters The PTC10 offers several numeric filters for processing sensor readings. Except for the sensor calibration, the filters are disabled by default and can be enabled by the user. In the order in which they are applied, the filters are: 1.
Page 53
For example, the sample table above tells the PTC10 to display 0 °C when the sensor resistance is 100 ohms. The numeric values may be separated from each other with one or more commas, spaces, tabs, and/or newlines.
Restarting the PTC10. Virtual channels The PTC10 has three virtual channels named V1, V2, and V3. You can set these channels to any value or make their value follow the value of another channel. The value can then be graphed or saved to the log like any other channel.
The PTC10 cannot read logged data from the USB memory. Data shown on the plot screen always comes from RAM. Do not unplug a USB device or switch the PTC10 off while the PTC10 is logging to the device. Either of these actions causes off, touch the USB logging indicator in the upper-right corner of the screen and wait for it to turn dark.
AC line period. For example, if the A/D rate is set to 100 ms, A/D conversions occur every six cycles of the AC voltage if the PTC10 is plugged into a 60 Hz AC wall socket, or every five cycles for 50 Hz AC.
Set the output to zero to re-enable it, for example, by pressing the Output Enable key (which will disable all Besides the main system fan, the PTC10 also has an internal fan that periodically turns on to keep the main power supply cool. This fan is unaffected by any user-accessible setting.
To achieve optimum stability: An appropriate thermistor, RTD, or diode for your temperature range must be used. Divide the noise specification of the PTC10 input card (shown in the front of this manual) by the estimate the best-case stability for that sensor.
70°C with a slight overshoot that serves to minimize the settling time. If P is increased to 2 W/°C, the temperature responds more quickly but then overshoots the setpoint by an excessive amount, causing the system to oscillate. PTC10 Programmable Temperature Controller...
Page 60
However, close inspection (see the lowest trace in the bottom graph) time period shown. Without enough integral gain, temperature errors tend to persist. As an approximate guide, the integral gain should be about one-tenth the proportional gain. PTC10 Programmable Temperature Controller...
Page 61
However, if the derivative gain is too large, it too can produce oscillations because when the temperature is rising rapidly, derivative feedback reduces the heater output, which causes the temperature to rise more slowly, which makes the derivative feedback increase the heater output, and so on. PTC10 Programmable Temperature Controller...
During automatic tuning, the PTC10 changes the heater power, measures how much and how quickly the temperature changes in response, and then estimates the optimum values of the gain factors P, I, and D. Two tuning algorithms are available on the PTC10: the relay tuner and the step response tuner.
Page 63
2) increase step Y; or 3) if it The tuner continuously measures how quickly the feedback input changes, (i.e., the slope of the feedback input with respect to time). Tuning ends once the lag period has passed and the most PTC10 Programmable Temperature Controller...
Page 64
The next figure shows how well the system recovers when we start blowing air over the heater with a fan. The setpoint is a constant 60°C. In this case, aggressive tuning produces the best response. PTC10 Programmable Temperature Controller...
PTC10 waits for a response. If either value is too small, the PTC10 may, after attempting to tune, display a message saying that there was an insufficient response. If the values are too large, tuning will take longer than necessary and your heater will get excessively hot.
Page 66
U na ble to tune feedba ck beca use the outp uts a re disa b led. P ress the Output E na ble button to ena b le outputs. The outputs must be enabled before autotuning, or else the PTC10 will not be able to provide any power to the heaters.
Page 67
The autotuning algorithm assumes that the temperature is a linear function of heater power. y the algorithm may not be perfectly accurate and may need to be manually adjusted. PTC10 Programmable Temperature Controller...
U SB logging indicator If a USB memory stick is plugged into the PTC10, a small dark-red circle appears in the upper- right corner of the screen. Touch the circle to turn USB logging on; the circle will turn light red to indicate that data is being logged to USB.
Page 69
PTC10 or unplug the PTC10 from the wall. Press and hold the "Output Enable" key for 3 seconds to put the PTC10 into standby mode. In standby mode, the outputs are turned off, data acquisition and macros are paused, the front panel display and system fan are shut off, and the system does not respond to remote commands.
Page 70
(single, multi, custom, and ponytail). The Plot screen always shows logged data. If, for example, the log interval is set to 10 s, the graph will have a very 10 seconds. PTC10 Programmable Temperature Controller...
Page 71
Each channel is shown in its own graph with an independent Y axis. If more than eight channels are selected, only the first eight are shown. In multi plot mode, each sensor gets its own graph. The X scale is the same for all 3 graphs, but the Y scale is different. PTC10 Programmable Temperature Controller...
Page 72
Using the ponytail plot does not affect how channel values are logged; the offsets are only applied to the plots, not to the log files. In ponytail plot mode, all traces are offset so that they start at zero. PTC10 Programmable Temperature Controller...
Page 73
Graphs that appear together on a screen always have the same X axis range. However, each selection group has its own, independent X axis range. How to change the X axis scale How to pan the graph horizontally PTC10 Programmable Temperature Controller...
Page 74
Operation By default, the PTC10 continually adjusts the Y-axis scale to accommodate all the data on the graph. Each graph has its own, independent Y axis scale. To change the Y axis scale for a particular graph, touch the area to the left of its Y axis.
Page 75
The Program screen has an Input window, which shows text received over RS-232 or GPIB; a Messages window, which shows responses and error messages from the PTC10; and a Progress window, which shows the list of instructions that make up the current program.
Page 76
GPIB port. Each line of text sent to the PTC10 is run as a separate program (the entire program must be on a single line). If two or more lines are sent to the PTC10 in quick succession, the programs may run concurrently; that is, the PTC10 does not finish running the first program before beginning the second.
Page 77
Touch the left square bracket (the button in the upper-left corner). Square brackets surround Program screen, where the first line in the Progress window is now a left square bracket. Touch the Progress window again, anywhere beneath the first line. The list of possible list of PTC10 Programmable Temperature Controller...
Page 78
Operation Touch the OK button. You are returned to the Program screen and the instruction PTC10 Programmable Temperature Controller...
Page 79
I/O ports, and macros started from the Program screen). If an eleventh macro is started, a message appears and the macro does not run. If the PTC10 is turned off and turned back on again, macros that were running when the PTC10 was turned off are not restarted.
Page 80
H i lm t This control, which is only available for output channels, sets a maximum limit on the output. ter. If the high limit is less than the low limit, the low limit takes precedence. PTC10 Programmable Temperature Controller...
Page 81
The cycle time must be between 1 and 240 seconds inclusive. Dither (DC output card only) The DC output card has a 16 bit DAC. For greater resolution, the least significant bit can be dithered. Dithering is enabled by default. PTC10 Programmable Temperature Controller...
Page 82
TEC output turns off immediately, regardless of the slew rate setting. When outputs are re-enabled, the TEC output ramps up to its previous value at the desired slew rate. PTC10 Programmable Temperature Controller...
Page 83
The lowpass filter should always be enabled on the temperature inputs of all PID control loops. This is especially true when using step response PID tuning or when derivative feedback is enabled PTC10 Programmable Temperature Controller...
Page 84
The list of available sensor types varies with the I/O card. Changing the sensor type has three effects. First, it changes the calibration curve that the PTC10 uses to convert raw sensor readings into temperature. Second, changing the sensor type may affect how the PTC hardware acquires data from the sensor.
Page 85
This setting only applies to the Relays channel on the digital I/O card. Changing the polarity reverses the state of all four relays. The Polarity setting ensures that the relays are in an acceptable state when the PTC10 is switched off. When the Polarity is 0, the relays r...
Page 86
If a digital I/O card is installed in slot 6, the alarm can switch one of its four relays o possible to assign more than one alarm to a given relay, in which case the relay will turn on if any one of the alarms is triggered. PTC10 Programmable Temperature Controller...
Page 87
C (RTD, thermistor, and diode calibrations only) R0 (RTD calibrations only) Custom calibration coefficients. These settings let you define custom calibration curves for some sensor types without making a custom calibration table. The values can only be changed if the PTC10 Programmable Temperature Controller...
Page 88
(expressed in °C), and V is the voltage at temperature T . The resulting calibration is a linear approximation. For greater accuracy, a custom calibration table should be used instead of the A, B, C coefficients; see page 36. PTC10 Programmable Temperature Controller...
Page 89
This button is used to set the ramp rate in degrees per second, controlling how quickly the PTC10 heats or cools your system. Whenever the feedback setpoint is changed, the PTC10 gradually adjusts the ramp temperature ontrol, below), increasing or decreasing it at the ramp rate until it reaches the new setpoint.
Page 90
If Ramp is set to zero, ramping is disabled and the PTC10 heats or cools your system at the maximum possible rate.
Page 91
To have the PTC10 automatically select zones based on the temperature, assign each zone a in any order; they do not have to be monotonically ascending or descending. Next, set the zone to PTC10 automatically selects the zone with the largest Min value that is less than the mode.
Page 92
PID loop. To use cascade feedback, select one of the PTC10 A list of output channels appears. Touch one of the channels to make its PID setpoint track the value of the virtual channel.
Page 93
This setting works well if the step response tuner is used for an initial rough tuning at room temperature and the relay tuner is used for a final tuning once the system has reached its target temperature. PTC10 Programmable Temperature Controller...
Page 94
USB deletes all log files (not just the current file) from the log folder on the external USB memory stick. Specifically, all files \<folder>\XX\LogYY.csv are deleted, where <folder> is the folder name specified by the Folder button, and XX and YY are two-digit numbers. All is the same as selecting RAM and USB. PTC10 Programmable Temperature Controller...
Page 95
Operation F older Sets the USB device folder into which the PTC10 writes log files. If the folder does not exist, it is created. If the folder does exist and contains PTC10 log files, the PTC10 appends data to the highest-numbered log file.
Page 96
The Close button is greyed out when the Ethernet port is not in use. Once a Telnet connection is made or a UDP packet is received, the Close button is un-greyed, indicating that the PTC10 is bound to a client computer and will not accept macros from any other computer until the Close button is pressed, the PTC10 is rebooted, or the client closes the telnet connection.
Page 97
DHCP server. Close The PTC10 only accepts messages from a single computer and only in a single protocol (Telnet or raw UDP stream). To change the computer or the protocol, press the Close button. The Close button is greyed out if...
Page 98
The elapsed time is reset to zero once per minute, hour, or day, depending on the X range of the graph. Absolute X labels Elapsed X labels PTC10 Programmable Temperature Controller...
Page 99
(data on USB drives is not affected). Returns all plots to autoscaled X and Y with a 1 minute X range and changes the plot location of all channels to 1. If a *TRG PTC10 Programmable Temperature Controller...
Page 100
Log: Resets the default log rate to 1 second, sets the log rate for each channel to the default, and enables automatic logging to USB. If a USB storage device is attached, erases log files in the root directory and begins logging to USB. All: resets all of the above items. PTC10 Programmable Temperature Controller...
4. Remove the USB device and erase the files the PTC10 again. 5. At this point, the old firmware is still running. Turn the PTC10 off and back on again to start using the new firmware. I/O card firmw are updates 1.
2. Remove the four black screws that secure the top cover. Lift the cover off of the instrument. 3. Looking at the front of the PTC10, the battery should be clearly visible. It is a 20 mm diameter coin cell located 8 inches directly behind the LCD screen. The PTC10 only has one battery.
All of these ports are always enabled and accept the same commands. In addition, the front panel controls are always enabled. To control the PTC10 remotely, you transmit lines of ASCII text to one of its ports. No action is taken until one of the following end-of-line characters is received:...
Page 104
If the RS-232 interface does not respond at all, make sure the baud rate is set correctly and also make sure that each line of text sent to the PTC10 ends with a linefeed character (decimal 10 = The System.COM.History window can sometimes help to debug communication issues.
Page 105
PTC10 units equipped with the GPIB option can be connected to GPIB interface devices. Any standard GPIB cable can be used to connect the PTC10, but due to space restrictions a single- ended cable, such as a National Instruments X5 cable, is recommended. A right-angle X4 cable can also be used.
Program screen). If more than this number of macros is generated and the macro does not run. If the PTC10 is turned off and turned back on again, macros that were running when the PTC10 was turned off are not restarted.
Everything is case- a space, the entire instruction has to be enclosed in quotes (to simplify instructions like this, the channel outside the quotes. The command: "Out 1.value" += 1 optional. Likewise, this command: PTC10 Programmable Temperature Controller...
Page 108
A group of instructions can be repeated by enclosing it in square brackets and placing the number of repetitions after the right bracket. [print Hello pause 1 s print world! pause 1 s]3 Whitespace is not necessary before or after square brackets. PTC10 Programmable Temperature Controller...
Page 109
If an argument has minimum and maximum values, these are shown in the reply. In this case, -point instruction in the range 0 1200. However, most arguments do not have minimum or maximum values. pause.list pause: float, { ms, s, min, hr } PTC10 Programmable Temperature Controller...
Page 110
, not the numeric value of channel 3A. Dollar signs can only be Conversely, a channel name (or any other conditional term) can be preceded with a pound sign (#) to force the PTC10 to treat it as a query. The pound sign is required For example, if one of the I/O channels while (#2<50) { pause 1 s }...
When #<variable> is used as an argument, a question mark can optionally be added after the variable name to indicate that the variable is being queried: #y=5 Out1=#y? Variables can be used within conditional statements. The macro: PTC10 Programmable Temperature Controller...
Page 112
For example: customCal "In 1", "units = °C 0, 100.00, 10, 103.90, 20, 107.79, 30, 111.67" descrip tion Writes a string similar to the following to the I/O port: PTC10 Programmable Temperature Controller, version: 0.135, S/N 92001 PTC10 Programmable Temperature Controller...
Page 113
Indicates how many seconds have elapsed since the user last touched the touchscreen or pushed a button. If the user has not touched the touchscreen or a button since the PTC was turned on, the return value indicates how many seconds have elapsed since the PTC10 finished booting. PTC10 Programmable Temperature Controller...
Page 114
The "systemtime" instruction is similar to the System.Other.Time and System.Other.Date instructions, but 1) allows both time and date to be set or queried with a single instruction; 2) provides the time to the second instead of the minute; and 3) supports several different formats: PTC10 Programmable Temperature Controller...
*EMC? queries whether macros ar(.s enabled and returns either 0 (macros disabled) or 1 (macros enabled). Since the state of the *EMC control does PTC10 Programmable Temperature Controller...
Page 116
Remote Programming not persist when the PTC10 is rebooted, macros are always enabled when the PTC10 is turned *E S E <integ er> *E S E ? Sets (or gets) the value of the Standard Event Status Enable (ESE) register. If a bit in the ESR register is set and the corresponding bit in the ESE register is also set, bit 5 of the Status Byte register is set.
Page 117
SRE is also set, a GPIB Service Request is generated. *S T B ? Returns the value of the Status Byte (STB) register. The 8 bits of the Status Byte are assigned as follows: PTC10 Programmable Temperature Controller...
Page 118
The amount of time that it takes to process this command is twice After receiving a trigger command, the PTC10 stops automatically acquiring data. The inputs are only read, and PID feedback loops only update their outputs, when a *TRG or GET message is received.
USB devices. Deleting a macro has no effect on currently-running macros. g eterror ror messages generated by remote commands are not transmitted over the remote interface. Instead, they are stored in an error buffer that can hold up PTC10 Programmable Temperature Controller...
Page 120
The popup.close instruction closes any popup or help window currently visible, regardless of how the window was created. If a popup window is visible on-screen, the popup? query returns the content of the popup window. If no popup window is present, the popup? query returns the following text: PTC10 Programmable Temperature Controller...
Page 121
Otherwise, macros should be called as subroutines, by including their sta ndby Puts the PTC10 into standby mode, in which the outputs are turned off, data acquisition is paused, macros are paused, the front panel display and system fan are shut off, and the system does not respond to remote commands.
Determines which folder on the USB memory device receives log data. If the folder does not exist, it is created. If the folder does exist and it already contains PTC10 logfiles, new data points are appended to the existing files.
Page 123
Sy stem.IP submenu system .IP .A ddress <string > Sets the PTC10's IP address. The IP address should be in dotted-decimal notation, i.e. "172.16.0.0". Errors: If part of the specified IP address is not in the correct format (i.e. contains a non- numeric character or a value that is not between 0 and 255), that portion of the IP address is set to zero.
Page 124
.other.A /D ra te { floa t } (1 MHz trigger source) Sets the A/D conversion time. This setting also determines how often PID feedback loops run. Different arguments are available depending on whether the line frequency is 50 or 60 Hz. PTC10 Programmable Temperature Controller...
Page 125
All: resets all of the above items. system .other.V olum e { off, 1, 2, 3, 4, 5, 6, 7, m a x } Controls the volume of all tones and alarm sounds played through the front-panel speaker. PTC10 Programmable Temperature Controller...
The cycle time must be between 1 and 240 seconds inclusive. Errors: Attempting to set the cycle time for any channel other than the output of a PTC420 AC output card produces an assembly- PTC10 Programmable Temperature Controller...
Page 127
<cha nnel>.IO type { Inp ut, S et out, M ea s ou t } all opt anything, but just measures whatever value is present. outputs voltage, current, or power, and the channel reading reflects the most recently requested PTC10 Programmable Temperature Controller...
Page 128
Maximum PCB temperature. If the temperature of the card exceeds this value and System.Other.Fan is set to Auto, the PTC10 increases the fan speed to cool the card down. The PCB temperature is always expressed in °C, regardless of the System.Display.Units setting.
Page 129
Some resistive cryogenic temperature sensors such as Rhodium-Iron, Germanium, and Carbon- Glass are not included in the list of available sensor types because they do not have standard calibration curves. To use these sensors, set the Sensor type to Thermistor, RTD, or ROX and manual). PTC10 Programmable Temperature Controller...
Page 130
Attempting to set the value of an output channel when outputs are disabled also produces a run- time error. Setting the value of an output channel under feedback control has no effect, but no error is generated. PTC10 Programmable Temperature Controller...
Page 131
System.Com.Verbose is set to High. If sensor 2A is not connected or is out of the range of its number). For input channels and measured output channels, the current value reported by the PTC10 is the most recent ADC reading (after being calibrated and filtered). This value may be different than the most recently-logged point, which is the value that appears on the plot and in general corresponds to an average of several ADC readings.
Page 132
<cha nnel>.ca l.R0 <floa t> These instructions set custom calibration coefficients for RTD, thermistor, or diode inputs with a custom calibration type. See the description of the A, B, C, and R0 buttons on page 71 for more information. PTC10 Programmable Temperature Controller...
Page 133
Errors: Attempting to set P, I, or D when no PID input channel is selected produces a run-time produces a run- to Follow produces an assembly- PTC10 Programmable Temperature Controller...
Page 134
However, if the feedback parameters are already known, they can be loaded into the table with a macro such as the following: Out1.PID.Zone 1 ' select the first line of the table PTC10 Programmable Temperature Controller...
Page 135
Ramp temperature. The ramp temperature is an internally-generated setpoint for the PID feedback loop; it is the temperature that the PTC10 is trying to maintain at the present moment. If the feedback is not running, the ramp temperature always equals the sensor temperature, since the PTC10 has no control over the sensor temperature when the feedback is not running.
Page 136
Out1.PID.RampT = #Out1.PID.setpoint tells the PTC10 to stop gradually ramping the temperature and instead proceed as quickly as possible to the setpoint. On the other hand, Out1.PID.setpoint = #Out1.PID.RampT stops ramping by freezing the temperature at its current value.
(thus, the assembled macro only contains native instructions). The assembled macro cannot be longer than 4096 lines. -200 - 299: runtime errors Produced after the macro starts running. After a runtime error occurs, the macro continues to run. PTC10 Programmable Temperature Controller...
Each time the PTC boots up, it looks for a macro called run. For example, the following remote command defines a startup macro that displays a message each time the PTC boots up: define Startup(popup "Power has cycled") PTC10 Programmable Temperature Controller...
Remote Programming The sample macros are shown on multiple lines for clarity, but if they are sent to the PTC10 via the RS-232, GPIB, USB, or Ethernet port, each macro must be formatted as a single line, otherwise each line will be treated as a separate macro.
3A reads less than 50 degrees, channel 3A is selected as the PID input; otherwise, channel 3B is the PID input. pause 1 s if (3A<50 && Out1.PID.input==$3B) { Out1.PID.input = 3A } if (3A>50 && Out1.PID.input==$3A) { Out1.PID.input = 3B } PTC10 Programmable Temperature Controller...
(see page 36 for a description of how to make and upload calibration tables). In this case, the calibration table is a file containing comma-separated data in where Xn is the analog output, in volts, to be produced when the PID algorithm requests output PTC10 Programmable Temperature Controller...
If the $ prefix were left out, the statement would attempt to compare the name of the PID input channel to the value of channel 3A, ra PTC10 Programmable Temperature Controller...
PTC10. For example, to supply half of the maximum power to the heater, the PTC10 would need to turn the relay on for 5 seconds, off for 5 seconds, on for 5 seconds, etc.
Page 144
Remote Programming The macro can automatically run every time the PTC10 is turned on; just send the command define Startup (...) replacing the ... with the macro contents. PTC10 Programmable Temperature Controller...
PC Applications P C a pplica tions SRS offers a package of PC applications for displaying and reformatting PTC10 log files. The applications can be downloaded free of charge from the SRS website at www.thinksrs.com; click on Downloads > Software. Once unzipped, the applications can be run by double-clicking the .exe icon or dragging PTC log files to the .exe icon.
HTML browsers are very slow when displaying large tables. PTC10 log files. T im esta m p When converting data to a text or HTML file, this setting determines how the time of each data point is recorded: PTC10 Programmable Temperature Controller...
Page 147
Resa m p le period (seconds) S ta rt Press the Start button to begin the conversion. Close Press the Close button to save all settings and close PTCFileConverter. -right corner of the window closes the program without saving any settings. PTC10 Programmable Temperature Controller...
Items in the Edit menu may affect how data buffers are graphed, but do not affect the contents of the buffers. P lot options Opens a window that controls the appearance e the graph undo all changes since the last time the graph was updated and close the window. PTC10 Programmable Temperature Controller...
Page 149
Antialias: if checked, the plot is drawn with antialiased lines. This improves the appearance of the graph but also significantly increases the amount of time that it takes to draw the graph. PTC10 Programmable Temperature Controller...
The process menu lets you modify data. The operations are applied to an internal copy of the data (i.e., a buffer) and do not affect log files on disk. When you select an item from the process menu, a dialog may appear asking which of the currently- operation to. PTC10 Programmable Temperature Controller...
Page 151
A vera g e p lotted b uffers Replaces the contents of whichever buffer is plotted in black with the average of all plotted buffers. Copy Creates a new buffer that contains a copy of all data from an existing buffer. PTC10 Programmable Temperature Controller...
Undoes the last operation performed with the Process menu. Special menu This contents of this menu are defined in the file Resource\SpecialMenu.rsc. Each item in the menu is the name of a macro which is located in the Resource directory. PTC10 Programmable Temperature Controller...
= buffer1 / buffer2 diva "buffer1" divide a buffer by its average divx "buffer", 1.0 divide by constant: buffer = buffer / constant drawMarks draws a vertical red line on the plot at the location of each stored mark PTC10 Programmable Temperature Controller...
Page 154
"buffer", 0 apply a Gaussian smoothing filter; specify radius in data points sub "buffer1", "buffer2" subtract two buffers: buffer1 = buffer1 - buffer2 PTC10 Programmable Temperature Controller...
Page 155
= (buffer1 + buffer2*weighting factor) / (1 + weighting factor) xLabel "state" Sets the X-axis label to "dateTime" (date and time), "elapsedTime" (elapsed time), or "off" (none), yLabel "text" Label the Y axis of the graph with the indicated text PTC10 Programmable Temperature Controller...
(2=core system board, 3=input card, 4=output card, 5 = input and output card). The second and third numbers indicate the specific type of board. The last number, which is sometimes omitted, indicates the revision. PTC10 Programmable Temperature Controller...
1 µs rather than being limited to an integer multiple of the line period, but 60 Hz interference is inevitable. Jumper J160 should not be moved while the PTC is turned on. PTC10 Programmable Temperature Controller...
Page 159
CPU. C17: SIZ16* (Transfer size 16). Can be used to enable 16-bit data transfers. Currently not used. C18: CONV* (Convert). A rising or falling edge on this line puts the I/O card into a PTC10 Programmable Temperature Controller...
The front panel connects to the same backplane bus as the I/O cards. An Atmel ATmega162 microcontroller on the front panel PCB detects touchscreen touches and button presses, controls the system fan, generates sounds, and manages the LCD power supplies. PTC10 Programmable Temperature Controller...
The GPIB interface is based on a National Instruments TNT4882 GPIB chip. Since the GPIB chip uses a +5V supply, while the other CPU bus components use a +3.3V supply, 5V-tolerant transceivers are needed to interface the chip with the CPU bus. A glue logic chip, U160, resolves PTC10 Programmable Temperature Controller...
ADC input buffers: These FET-input op amps isolate the signal and reference resistors from the current produced or drawn by the ADC input pins. The buffers are equipped with RC networks that allow them to drive 1 µF capacitors. PTC10 Programmable Temperature Controller...
To compensate for thermal drift, the PTC321 is calibrated at circuit board temperatures of 25 and 35 degrees C. The microcontroller continuously monitors the circuit board temperature and interpolates between the two calibrations as necessary. The output of the PTC321 is an temperature. PTC10 Programmable Temperature Controller...
Cold junction temperature measurement is accomplished with an RTD and a circuit similar to the PTC321, except the direction of the excitation current cannot be reversed. PTC10 Programmable Temperature Controller...
(pin 3) is connected to +5V and the current source is disabled. When the control voltage is low, pin 3 is connected to the output of U233 and the current source is enabled. The switch is somewhat sensitive to damage from static discharge. PTC10 Programmable Temperature Controller...
(2A in this case), the output is 4.0 V. Switch U290A enables or disables the 2A current source. When the control voltage at pin 1 is high, the switch output (pin 3) is connected to +5V and the current source is disabled. When the PTC10 Programmable Temperature Controller...
TEC is plugged in, enough to destroy the TEC. The current bypass is also used whenever the output current is set to zero to reduce the current resulting from any small errors in the current monitor or DAC output. PTC10 Programmable Temperature Controller...
SPI-to-parallel adapter (U340), the ADC, or the DAC. The SPI-to- input or output) of each sion, is also connected to the microcontroller through an optoisolator; this signal tells the microcontroller when an ADC conversion is complete and without it the microcontroller freezes up. PTC10 Programmable Temperature Controller...
The DIO card also includes four non-latching relays, K401 K404. Each relay is double throw Pins 2, 3, and 4 serve as a monitoring relay. If the monitoring relay fails to switch as expected, XOR gates U410 notify the microcontroller by pulling one of OUT1MON, OUT2MON, etc. high. PTC10 Programmable Temperature Controller...
HSMG-C150 1206 surface mount LED, green 3-02250 HSMG-C150 1206 surface mount LED, green 3-02250 HSMG-C150 1206 surface mount LED, green 3-02250 HSMG-C150 1206 surface mount LED, green 3-02252 BSZ105N04NS G N-channel MOSFET, Vds=40V, Rds=10 mOhm, Id=40A PTC10 Programmable Temperature Controller...
Page 182
U 110 3-01345-360 74ABT541CSC Integrated Circuit (Surface Mount Pkg) U 120 3-01346-360 74HC4040M Integrated Circuit (Surface Mount Pkg) U 130 3-00795-360 74AC138 Integrated Circuit (Surface Mount Pkg) U 140 3-01498-360 74ABT16245CMTD Integrated Circuit (Surface Mount Pkg) PTC10 Programmable Temperature Controller...
D 302 3-00926-360 MBR0540T1 Integrated Circuit (Surface Mount Pkg) D 341 3-00626-301 MUR1100E Diode IS350 3-00446-340 6N137 Integrated Circuit (Thru-hole Pkg) J 101 1-00251-130 10 PIN DIL Connector, Male J 106 1-00166-130 60 PIN DIL Connector, Male PTC10 Programmable Temperature Controller...
Page 184
U 102 3-01498-360 74ABT16245CMTD Integrated Circuit (Surface Mount Pkg) U 201 3-01215-360 MAX1234EGI Integrated Circuit (Surface Mount Pkg) U 202 3-00741-360 74HC04 Integrated Circuit (Surface Mount Pkg) U 203 3-01216-360 HEF4794BTD Integrated Circuit (Surface Mount Pkg) PTC10 Programmable Temperature Controller...
Page 195
U 520 3-01500-360 LTC2440CGN Integrated Circuit (Surface Mount Pkg) U 560 3-00814-360 78M05 Integrated Circuit (Surface Mount Pkg) U 610 3-01322-360 LT1425CS Integrated Circuit (Surface Mount Pkg) U 621 3-00114-329 7815 Voltage Reg., TO-220 (TAB) Package PTC10 Programmable Temperature Controller...
D 211 3-00403-301 1N459A Diode D 212 3-01253-313 B270-13 Diode, SMT D 214 3-00626-301 MUR1100E Diode F 221 6-00644-611 1A 60V Fuse J 111 1-00251-130 10 PIN DIL Connector, Male J 201 0-01097-035 571-0100 Banana jack PTC10 Programmable Temperature Controller...
SMT Ceramic Cap, all sizes C 215 5-00601-578 0.1UF - 16V X7R SMT Ceramic Cap, all sizes C 216 5-00627-578 0.1U X 4 SMT Ceramic Cap, all sizes C 217 5-00601-578 0.1UF - 16V X7R SMT Ceramic Cap, all sizes PTC10 Programmable Temperature Controller...
Need help?
Do you have a question about the PTC10 and is the answer not in the manual?
Questions and answers