Skip to main content
Skip table of contents

Bridge Circuits (App Note)

This app note provides a detailed overview for using LabJack devices with bridge circuits. If you are using a raw bridge sensor/load cell/strain gauge that is ratiometric (mV/V) and are simply looking for guidance on which products to use, we suggest using a LabJack T7 and LJTick-VRef41 for the best measurements and ease of use.

A Wheatstone bridge is a circuit used to measure small differences in resistance. Such bridge circuits are common with various types of sensors such as load cells, pressure sensors, and strain gauges. These sensors can be packaged with signal conditioning or as raw bridge circuits; this app note applies to sensors that are not packaged with signal conditioning.

Subsections

Common Bridge Circuit Sensors

Strain Gauge

A strain gauge (or gage) is a resistive element whose resistance changes with strain.  The change in resistance is small, so a bridge circuit is commonly used for measurement. Look for signal-conditioning hardware that includes bridge completion, or complete the bridge yourself. See the setup and calculation information in our Strain Gauges App Note.

Load Cell

Most load cells are raw bridge circuits without signal conditioning. If the output is specified as something like 2 mV/V, it is a raw bridge circuit. If the output is specified as something high-level like 0-5 volts, ±10 volts, or 4-20 mA, then the load cell has signal conditioning and this app note does not apply.

A nice option for hobbyist/entry-level users to start working with load cells is this sensor offered by Sparkfun.

Pressure Sensor

Some pressure sensors are raw bridge circuits and, like load cells, would specify an output such as 2 mV/V. See the Pressure Sensors App Note for more details.

Bridge Circuit Hardware Solutions

U6, T7, T8

These devices can acquire small differential bridge signals directly using their built-in amplication. Note that the high gain required for the measurements reduces the maximum T7 and U6 sampling rates when sampling multiple channels at once. See Section 3 of the U6 Datasheet or Appendix A-1 of the T-Series Datasheet. The LJTick-InAmp can be used in place of the built in amplification to avoid these sampling rate limitations. Also note that these limitations do not apply to the T8.

U3, T4

The U3 and T4 do not have high enough resolution for unamplified bridge circuit measurements, they do not have built in amplification, and some IO cannot take differential measurements directly. As such, these devices require external signal-conditioning such as the LJTick-InAmp to take measurements from bridge circuits.

LJTick-InAmp

The LJTick-InAmp (LJTIA) is an external per-channel instrumentation amplifier add-on. An LJTick-InAmp or  similar difference amplifier is required for bridge measurements with the U3 and T4. The LJTick-InAmp is seldom used with devices that have built-in amplification since the built-in amplification of devices such as the U6, T7, and T8 is superior in terms of noise, resolution, and accuracy. The following are some reasons to add LJTick-InAmps to the U6/T7:

  1. When using the internal amp with Gain >1, acquisition speed decreases substantially when scanning more than 1 channel.  A per-channel amp such as the LJTick-InAmp is the solution to this.

  2. The LJTick-InAmp can be used in addition to the internal amp to stack the gains and get extremely high amplification. Noise is also amplified, so it is not guaranteed that this technique will result in a superior signal-to-noise ratio.

Basic Procedure for Bridge Circuit Measurement

These are the most common steps used to set up bridge circuit measurements with LabJack devices. Be sure to see the corresponding procedure sections that follow.

  1. Choose an Excitation Source.

  2. Wire your Bridge Circuit to the Appropriate Analog Input(s) and Excitation Source.

  3. Find the Required Equation to Convert Voltage Readings to the Load Quantity.

  4. Configure your LabJack with any Required Analog Input Settings, Do Basic Testing To Validate the Signal and Connections.

  5. Troubleshoot the Signal Voltage Measurement if Incorrect or Too Noisy.

  6. Log Data with LJLogUD/LJLogM.

Excitation Voltage Supply Selection

The output of a bridge circuit is directly proportional to the excitation voltage. As a result, any noise in the power supply could show up as noise in the signal output and measurement.

Many load cells and strain gauges recommend 10 volts for the excitation voltage.  This might be where the manufacturer calibrated the sensor, but the sensor output will scale linearly with any excitation voltage. A maximum excitation voltage is often specified (15 volts is typical) but generally no minimum voltage is specified.  Using normal load cells with lower excitation voltages such as 2.5 or 4.1 volts is fine. 2.5V and 4.1V reference voltage sources often provide superior performance to regular DC power supplies.

Decent Excitation Source: LabJack VS Terminal

This is the LabJack’s 5 V power supply. It is not particularly stable or low-noise, but as long as you use real-time feedback it works fine for many applications.

Better Excitation Source: LabJack DAC Terminal

The analog outputs are fairly stable and low noise.  Each DAC output has a source impedance that will result in a slight voltage drop from the value written to the DAC (real-time feedback is required.) Depending on the application, the maximum current output may be important to consider. Refer to your device’s datasheet appendix (U3 / U6 / T-Series) for these specifications.

For good noise performance, you want to keep the DAC voltage at least a few tenths of a volt below the power rail (VS).

Power-up DAC Settings:

Set DACx to 4.0 V as the power-up default, then power cycle the U6/T7 and use a DMM to confirm that the DAC does power up to 4.0 V with no load. 

  • U3/U6: Use "Config Defaults" in LJControlPanel to set the DAC and save it as default.

  • T-Series: In Kipling, use the Dashboard tab to set the DAC value, then Power-Up Defaults tab to save as default.

Better Excitation Source: 3.3 V Supply (T8 Only)

The T8 has two 3.3 V reference voltage outputs that are suitable for bridge circuit excitation.

Best Excitation Source: LJTick-VRef-41 or Vref Output from Another LJTick

The LJTick-Vref provides a very stable and low-noise reference capable of substantial current drive. The LJTick-InAmp and LJTick-Divider also provide excellent 2.5 V references that could be used.  Because of the accuracy and stability of these references, real-time feedback may not be necessary.

External Excitation Source

An advantage to using an external excitation source is that they are often 10 V, so they can provide a greater output voltage per unit change in the bridge circuit (greater sensitivity) compared to the other excitation sources listed.  Disadvantages are that good external sources are expensive, and it is difficult to find one at any price that will result in lower noise than a LabJack DAC output or LJTick-Vref.

Comparing an external 10 V source to the LJTick-Vref-41, if the external source has >2.4 times the noise (versus LabJack GND) you have not gained anything by using the larger voltage source instead of the LJTick-Vref-41.

If you use an external power supply, you need one connection from the common/negative of the supply to GND on the U6/T7, and then connect positive to Vexc+ on each bridge and common/negative to Vexc- on each bridge.

Feedback

It is typically recommended to use feedback to measure the actual value of the excitation voltage in real-time. 16-bit or higher analog inputs are better (more accurate and more stable) than all but extremely expensive excitation sources and will work for feedback from common sources.  Make a connection from Vexc+ to an AIN terminal and take a measurement whenever you take a measurement of the bridge signal.

Wiring for Raw Bridge Measurements

Most load cells with raw bridge outputs are packaged as a full bridge circuit, simplifying the sensor setup compared to quarter or half bridge circuits. Strain gauges require bridge completion before measurements can be made; refer to the Strain Gauges App Note for specific suggestions.

The best connections for your situation can vary, but generally we suggest using the built-in amplification on your device if supported (T7/U6/T8) or the LJTick-InAmp otherwise (T4/U3). Your load cell should be wired similar to one of the following figures.

Built-in Amplification

Connect Signal+ (Vmeas+) to a positive channel AIN terminal and Signal- (Vmeas-) to the associated negative channel AIN terminal.  You must take a differential measurement in order to properly acquire the signal voltage.

  • On devices with isolated inputs such as the T8, the positive channel should be an AIN+ terminal and negative channel the associated AIN- terminal. For example, AIN0+ for the positive channel and AIN0- for the negative channel. You also do not need to connect the signal common ground to LabJack GND like is shown in Figure 1 below.

  • On all other devices with built-in amplification such as the U6 and T7, the positive channel should be an even numbered AIN and the negative channel the following odd numbered AIN. For example, AIN0 for the positive channel and AIN1 for the negative channel.


Figure 1. Bridge Measurement With Built-in Amplification

LJTick-InAmp

You cannot measure bridge circuits directly with the T4 or U3. Instead, an LJTick-InAmp should typically be used to amplify and take the difference of the bridge circuit output. To use the LJTick-InAmp with these devices, connect Signal+ (Vmeas+) to INA+ and Signal- (Vmeas-) to INA-. We recommend connecting the InAmp to a flexible IO screw terminal block when using a T4 or U3.

The LJTick-InAmp can be connected to either an AIN or flexible IO such as the FIO. However, the flexible IO inputs will provide a higher effective resolution for their given input range. Refer to the datasheet appendix for your device (U3 / T4) for analog input specifications.

Figure 2. Bridge Measurement with LJTick-InAmp

Configure the offset and gain for the LJTick-InAmp. Typically the x201 gain setting and 1.25V offset settings are appropriate, but it may depend on your load cell sensitivity. Refer to the LJTick-InAmp Datasheet and related appendices; they describe the DIP switches and cover configurations for the offset and gain.

Scaling Equations

Strain Gauges

See our Strain Gauges App Note for detailed scaling equation information.

Load Cells

Raw bridge load cells should come with a specification for sensitivity. A common sensitivity value is 2 mV/V. The relationship between voltage output and load should be linear, and also directly proportional to the excitation supply voltage. The signal output in volts at 100% rated load will be Sensitivity * Vexc. We can find the equation to solve for any load given the measured voltage Vmeas:
Load = RatedLoad * Vmeas/ (Sensitivity * Vexc)

Extra InAmp Considerations

When using an LJTick-InAmp, the measured voltage on a LabJack AIN is not the same as the voltage out of the bridge circuit, and an additional scaling equation is required to convert VAIN back to Vmeas. VAIN is what is measured from the LabJack AIN, Voffset is the offset voltage applied from the InAmp, gain is the gain setting of the InAmp, and Vmeas is the output of the bridge circuit as seen in Figures 1 and 2 above:

Vmeas = (VAIN- Voffset) / gain

From here, you would plug in the above equation for Vmeas in the appropriate scaling equation.

Load Cell Example

Consider the scaling equation for a load cell:
Load = RatedLoad * Vmeas/ (Sensitivity * Vexc)

If you have an LJTick-InAmp for conditioning, an offset and gain is applied to the signal. Using the InAmp conversion equation above, we get the following load equation:
Load = RatedLoad *(VAIN- Voffset)/ (gain * Sensitivity * Vexc)

Performing a System Calibration

A system calibration is useful because it includes all sources of error and it can be used to abstract away some of the details from things like InAmp conditioning.  If you can put the system in two known load conditions, you can get 2 pairs of points and fit a line to get a slope and offset:
Load = Slope * Vmeas + Offset

This is valid at the Vexc during the time of that calibration (Vexccal), so to make it valid with the real-time reading of Vexc you would write it as:
Load = [(Slope * Vmeas) + Offset] * Vexc/Vexccal

Note that both of these equations rely on 2 real-time readings: Vmeas and Vexc. See the related excitation source feedback section above.

LabJack Configuration and Basic Testing

We recommend using the highest gain/range setting on your device, choosing the gain/range setting according to the maximum output expected for your maximum load condition. We also recommend using the highest resolution index setting available on your device. These settings can be modified using our configuration software.

For information about available AIN settings, see your device datasheet:

T8 Configuration

First, navigate to the Register Matrix tab in Kipling. Search for and select the AIN#_RANGE register (where AIN# is the AIN you connected the bridge circuit output to) and set it to an appropriate setting. Search for and select the relevant AIN# register to begin reading the channel voltage. Use the Power-Up Defaults tab if you want to save these settings so they are applied every time the device is restarted.

If you are unsure of which range setting you can use, most raw bridge circuit configurations should not output more than 75 mV, so the ±0.075 V setting should be an appropriate starting point.

T7 Configuration

Use the Analog Inputs tab in Kipling: Click the + under Options for your positive channel AIN, set Range and Resolution Index as desired, and set Negative Channel to match your wiring configuration.  Use the Power-Up Defaults tab if you want to save these settings so they are applied every time the device is restarted.

For example, say you set up your bridge circuit as a differential measurement between AIN0 and AIN1. You would set the Negative Channel configuration for AIN0 to AIN1. If you know that your bridge circuit will result in an output voltage of 10 mV or less, then you should set Range to ±0.01V. If you are unsure of which range setting you can use, most raw bridge circuit configurations should not output more than 100 mV, so the ±0.1 V setting should be an appropriate starting point.

T4 Configuration

First, navigate to the Register Matrix tab in Kipling. Search for, select, and edit the value of the register AIN#_RESOLUTION_INDEX to change your channel resolution setting as desired. If using the flexible IO, AIN# should correspond to AIN4-7 for FIO4-7 and AIN8-11 for EIO0-3.

For example, modifying the register AIN6_RESOLUTION_INDEX will set the resolution for a signal on FIO6. This is what channel you should check if you have an InAmp connected to FIO6/FIO7 and your bridge circuit connected to INA.

Next, search for and select the relevant AIN# register to begin reading the channel voltage. Use the Power-Up Defaults tab if you want to save these settings so they are applied every time the device is restarted.

Alternatively, you can read the channel voltage by navigating to the Dashboard tab in Kipling. Ensure your channel is set to Analog rather than Output or Input if using a flexible IO, and you should then see raw voltage readings near the channel label.

U6 Configuration

Use the test panel in LJControlPanel to view the reading.  Set the Range and check the Diff box of your positive channel AIN and set the Resolution Index as desired. The Config Defaults page/button of LJControlPanel can be used to save your settings as the device startup configuration.

For example, say you set up your bridge circuit as a differential measurement between AIN0 and AIN1. You would check the Diff box for AIN0 to set up a differential measurement between AIN0 and AIN1. If you know that your bridge circuit will result in an output voltage of 10 mV or less, then you should set Range to BI 0.01V. If you are unsure of which range setting you can use, most raw bridge circuit configurations should not output more than 100 mV, so the ±0.1 V setting should be an appropriate starting point.

U3 Configuration

Use the test panel in LJControlPanel. Ensure the channel where the LJTick-InAmp is connected has the button under AIN selected rather than DI or DO. You should see a raw voltage reading under the column Voltage/State. The "Config Defaults" page/button of LJControlPanel can be used to save your settings as the device startup configuration.

Basic Testing

Put on a known load, and confirm that you get the expected output from the bridge. See the scaling equations section above to help relate voltage readings to a load measurement.

For example, say you have a load cell that specifies 2 mV/V sensitivity. The output at 100% rated load is Vexc * 0.002, so if we measure Vexc as 3.5 V and are at 50% load we expect an output of 0.0035 V. At rated (100%) load, which should also be the maximum voltage output, we would expect to see 0.007 V.

Troubleshooting

Generally, an issue with a bridge circuit measurement can be contributed to an issue with:

  • The circuit wiring

  • The measurement configuration in software

  • The excitation source

  • The LabJack hardware (typically not the issue)

Wrong Value

Put a known load on the load cell and check the bridge voltages with a DMM.  Measure from Vexc+ to Vexc- to confirm the excitation voltage.  Measure from Vmeas+ to Vmeas- to confirm the signal voltage is as expected. This should help identify if the issue is with the excitation source or wiring.

If these tests return expected values, then the issue is likely a configuration problem in software. Go back through the configuration section above. If you still have issues from there, we suggest removing your bridge circuit and instead testing the LabJack hardware as described in our Test an AIN Channel App note.

Correct Average Value, but Too Noisy

Remove your bridge circuit and instead jumper both inputs to GND with short wires.  Look at the noise level and compare to the expected levels for your device as described in the noise section of our Test an AIN Channel  application note. If the noise level of the readings with your actual bridge signals connected are notably higher, the most likely culprit is the excitation voltage. You can reduce some of the effects of excitation voltage noise by taking real-time Vexc readings (feedback) in your scaling equation.

Logging Data with LJLogUD/LJLogM

On Windows, an easy way to view and log data is with LJLogUD (UD devices) or LJLogM (T-Series Devices).

LJLogM (T-Series Device) Setup

As of writing, LJLogM does not allow for analog configuration, so you need to use Kipling to update the analog configurations such as resolution, gain, and negative channel before using LJLogM. See the configuration and testing section above.

A good starting point could be to see our LJLogM Basics Guide.

Make sure the # Channels field is set to the number of analog inputs (AIN) you need to measure. You should only need two channels to set up a single bridge circuit measurement; one for the signal measurement, and one for Vexc measurement.

Under the factory default LJLogM settings, the first 2 rows have AIN0 and AIN1 in the Name column. Note that these Name entries can be modified to any AIN number.

T4 Setup: Change the row labeled 0 in LJLogM (the top row) such that the Name entry is set to the AIN where the InAmp output is connected. For example, if you have your bridge circuit connected to the INA terminals of an LJTick-InAmp on the FIO5/FIO4/GND/VS terminal block, the bridge circuit output is on FIO4, and you would set the Name entry to AIN4.

T7 Setup: Kipling should be used to set up a differential reading as described in the configuration section above before opening LJLogM. In the row labeled 0 in LJLogM (the top row) ensure the Name entry is set to your positive channel AIN (AIN#) to begin acquiring the differential measurement. For example, if you are taking a differential measurement between AIN0 and AIN1 set the Name entry of row0 to AIN0.

T8 Setup: In the row labeled 0 in LJLogM (the top row) ensure the Name entry is set to the proper AIN# to begin acquiring the measurement. For example, if you are taking a measurement on AIN0+ and AIN0- set the Name entry of row0 to AIN0.

Vexc Measurement Setup: Next, configure a row to measure Vexc. For example, if Vexc is connected to AIN3, modify the row labeled 1 (the second row from the top) such that the Name entry is set to AIN3.

Proceed to the scaling equation section below.

LJLogUD (UD Device) Setup

Make sure the # Channels field is set to the number of analog inputs (AIN) you need to measure. You should only need two channels to set up a single bridge circuit measurement; one for the signal measurement, and one for Vexc measurement.

Under default LJLogUD settings, the first 2 rows have +Ch set to 0 and 1 indicating that AIN0 and AIN1 are being measured. -Ch set to 199 indicates the measurements are single-ended.

U3 Setup: Change the row labeled 0 such that +Ch is set to the AIN number where the LJTick-InAmp output is connected, and -Ch is set to 199. For example, if you have your bridge circuit connected to the INA terminals of an LJTick-InAmp on the FIO5/FIO4/GND/VS terminal block, the bridge circuit output is on FIO4, and you would set +Ch to 4, -Ch to 199.

U6 Setup: You must set up differential readings in LJLogUD to measure bridge circuits using the built-in amplification. In the row labeled 0 in LJLogUD (the top row) set +Ch to your positive channel AIN number and set -Ch to your negative channel AIN number (positive channel + 1).  This will configure a differential measurement. For example, if you are taking a differential measurement between AIN0 and AIN1 set +Ch to 0 and -Ch to 1 in row0.

Set the range setting as desired. See the AIN pseudocode section of the U6 datasheet to see what each range setting name means. LJ_rgBIPP01V (BIPolar Point 01 Volt) is the ±0.01V range.

Vexc Measurement Setup: Next, configure a row to measure Vexc. For example, if Vexc is connected to AIN3, modify the row labeled 1 (the second row from the top) such that +Ch is set to 3 and -Ch is set to 199 to take a single-ended measurement of AIN3.

Proceed to the scaling equation section below.

LJLog(M/UD) Scaling Equations

Your scaling equation should be applied on the channel you are using to capture your measurement. If you follow the previous suggestions, you would modify the scaling equation of row 0.

You can reference any channel(s) in your equation using the corresponding row letter/variable. The raw voltage measured in row 0 is always stored in the variable a, the raw voltage in row 1 is always stored in variable b, row 2 in variable c, etc. all the way to row 15 whose raw voltage is stored in the variable p. In the LJLog(M/UD) setup above, Vmeas is measured in row 0 and Vexc is measured in row 1, so you would replace Vmeas from the scaling equation section above with a and Vexc with b.

  • The Voltage/Value column will still report the raw measured voltage, but the Scaled column will report the measured load.

  • The following page has additional information on LJLogUD/LJLogM scaling equations.

  • To start logging data to file, click the Write To File button.

Load Cell Example:

Say you have a load cell with a rated load of 300 kg and sensitivity of 2 mV/V. Your scaling equation to find the load in kg could be:

Load = 300 * Vmeas/ (0.002 * Vexc)

Assuming you set up row 0 to acquire Vmeas and row 1 to acquire Vexc, your scaling equation in LJLog(M/UD) would be:

y = 300 * a / (0.002 * b)

Other Software Options

For other software options, see the information in your device Quickstart Tutorial.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.