Download Manuals, Datasheets, Software and more:



Using Your Source Measure Unit as a Power Supply

Keithley’s line of Touch Test Invent™ graphical Instruments have the ability to locally run custom scripts written in the Test Script Processor (TSP™) language. These scripts allow the instrument to execute code in real time written by you.

The example script provided allows a 2400 Series Graphical SMU to function as a power supply by outputting a constant wattage. A traditional power supply functions by having a target output power, set input voltage and a current limit. Based on the needs of a device, a power supply can modify the output wattage. This script utilizes the power formula, meaning that with a set output voltage and knowing either voltage or current, the other can be sourced. If changes in current or voltage are measured, the sourcing of the other unit can be modified in real time to keep power constant.


This example script can be used either via the touchscreen of a 2400 Series graphical SMU instrument or via the console. To control the script using the touchscreen, follow the prompts as they appear. The prompts will ask what you want to source, your starting source, the maximum value for your source, your target power and if you want to use two- or four-wire connections.

All six potential prompts that will be displayed when using the touchscreen to run the script.

By clicking through these prompts, you can control the parameters of the script from the front panel of the unit rather than modifying the script itself. This allows for modifications in real time without the need for changing specific variables. By changing the global variable ‘consoleControl’ to true, the command line can then be used to set the inputs for the script.

Lines of code demonstrating how to enable or disable console control.

To run the script from the console, the user will use the ‘constantPower’ function within the script. Follow the syntax of: ‘constantPower(Source, TargetSource, IncreaseSource, MaxSource, TargetPower, Sense)’. Each variable within the function sets a value that was previously determined by input from the panel. Each variable within this function represents a different parameter that can be set by the user to achieve their desired function.

  • ‘Source’ expects either “Voltage” or “Current” to specify what will be sourced by the SMU.
  • ‘Source’ expects either “Voltage” or “Current” to specify what will be sourced by the SMU.
  • ‘TargetSource’ specifies the starting value the SMU will begin to source before changing to reach the desired power.
  • ‘IncreaseSource’ expects a true/false input and sets if the unit can increase the sourcing from the starting level.
  • ‘MaxSource’ is the highest value that the unit will be allowed to source, if allowed to do so.
  • ‘TargetPower’ represents the goal output power that the user wants to source.
  • ‘Sense’ allows the user to either use 2 or 4-wire sense in order to improve the accuracy of their measurement, and get a output power closer to their desired value.

Script Functionality

This example script is based on calculating power by dividing the target user power by the sourced measurement. This snippet of code represents the calculations the scripts make to achieve the target power. The code can be modified to calculate power in different ways that may be better for your desired application.

Lines of code demonstrating how the script calculates the changes in sourcing to reach target power.

For example, the user can have the script measure resistance as opposed to current or voltage. This will require changes to the example script’s calculations but could be useful given the specific application. The function below is where the script sets what the device will be sourcing and measuring.

Function in the script that controls how to set what will be sourced.

Built into the power calculations is a +/- 0.001 tolerance for the target power. This was added to prevent the device from changing the value it is sourcing, based on slight changes to the measured value. This tolerance can be modified to be larger or smaller depending on the precision of your application but will potentially result in a changing source value with a relatively stable measurement.

Script Limitations

Functionality of the script is limited by the current, voltage, and or the power output of the specific unit selected to run the script. To ensure that the instrument will not function outside of its given range, the instrument will not accept inputs for values too large. Note that these limitations are for the maximum voltage, current, and power that can be source by the instrument and may be lower when using the I/O. If the unit does begin to source power outside of a range that it is able, an error will be thrown informing the user.

The script’s function is supported on all 2400 Series graphic SMUs. For the 2461 SourceMeter™ SMU, the device’s range of operation does not include the Pulse-Only operating area.