Load Cell

High resolution measurement for load cells

  • Complete solution for load cell measurement
  • Use it to measure forces like weight, tension or compression
  • Use up to 15 modules simultaneously
  • Effective output range of up to 100,000 points *
  • Configurable sampling rate: 10 or 80 SPS
  • Configurable amplifier gain
  • 5V or 3.3V power supply
  • Sample code including weight measurement

* e.g.: 1g of resolution with a 100kg and 3 mV/V load cell.

The Load Cell Nanoshield is a complete solution for high-precision, high-resolution load cell measurement. Using the ADS1230 integrated circuit from Texas Instruments, the module contains all the circuitry required to read a load cell. It includes an integrated amplifier, noise filtering circuit and a high-resolution ADC converter. It is ideal for applications where measurement of force, mass, tension or compression is needed.

The module offers a SPI interface, suitable for connection to a microcontroller using just a few pins. It is possible to connect up to 15 modules simultaneously to an Arduino, for example.

Load Cell Nanoshield features

!Connecting the load cell

Each module can read one full-bridge load cell. The connection to the load cell is made through a terminal block that is used both for supplying power to the load cell and to read its output signals. The table below shows the pinout of the terminal block:

Pin name Function
VC Load cell power supply
C- Negative output signal
C+ Positive output signal
GND Reference (ground)
Load cell terminal block pinout

The figure below shows how to connect a load cell to the module:

Connecting a load cell to the Load Cell Nanoshield

The load cell supply voltage is the same one used to supply power to the module – that is, 5V in the factory default configuration. Optionally, it can be supplied with 3.3V according to the 3.3V operation section. These power supply voltages are already optimized for the ideal operation of the module and must be used like this, i.e. it is not possible to use an external power supply of, say, 10V for the load cell. Note that load cells are passive sensing elements, comprised of resistive sensing elements to measure the force. As such, they don't require any particular power supply voltage to operate.

Actual load cell connected to the module (click on the image to enlarge)

!Connection to an Arduino + Base Board Uno

The easiest way to use the Load Cell Nanoshield along with an Arduino board is by using a Base Board Uno or Base Board L Uno. Just connect the boards as shown in the picture below and load our sample code to check that the system is working (see the sample code section below). This assembly can be used with Arduino UNO, Mega R3 or similar boards. The picture below shows how the assembly looks like.

Connection to an Arduino using the Base Board Uno (click on the image to enlarge)

!Connection to a Base Boarduino

It is also possible to connect the Load Cell Nanoshield directly to our Arduino-compatible board, the Base Boarduino. The connection is done the same way it is done with the Base Board, as shown in the picture below. You just have to connect the boards, load our sample code and check that the system is working (see the sample code section at the bottom of the page).

Connection to a Base Boarduino (click on the image to enlarge)

!Direct connection to an Arduino

It is also possible to use the module with a direct connection to an Arduino using a breadboard and jumper wires. Use the following wiring diagrams to connect the Load Cell Nanoshield to an Arduino UNO or Arduino MEGA.

Connection to an Arduino UNO (click on the image to enlarge)

Connection to an Arduino MEGA (click on the image to enlarge)

!Using multiple modules simultaneously

The Load Cell Nanoshield communicates with a microcontroller through an SPI communication interface. An advantage of this interface is the possibility to connect several modules simultaneously using just a few microcontroller pins. The bus features a clock line (SCK), two data lines (SDI and SDO) and a selection pin called chip select (/CS). All the modules connected to the bus share the same clock and data lines. However, to each one of them an exclusive chip select pin is assigned. This way, the microcontroller can choose which module it will communicate with, sending a low-level logic signal (0V) to the chip select pin corresponding to that module when needed.

The Load Cell Nanoshield features a set of jumpers on the top side of the board that allows the manual selection of up to 5 different pins for the chip select function (4, 7, 8, 10 and A3) – the default pin is 8. Besides those 5 options, the module also features 10 pins that are selectable via solder jumpers on the bottom side of the board (2, 3, 5, 6, 9, A0, A1, A2, A4 and A5). That enables the connection of up to 15 modules simultaneously to a single microcontroller.

The picture below shows the position of the manual jumpers on the top side and the solder jumpers on the bottom side of the board.

Load Cell Nanoshield chip select options

In order to use several modules simultaneously, you just have to connect them together on different slots of the Base Board or Base Board L at the same time, using the jumpers to select a different chip select in each module. The figure below shows a set of four modules being used simultaneously. In this example, we used a Base Board UNO along with an Arduino Mega.

Using several modules simultaneously

However, keep in mind that the pins used for the SPI communications and the pins used for the chip select of the modules cannot be shared or have other functions on the circuit. Therefore, it is advisable to make an analysis of all the microcontroller pins that will be used in the project before using several modules simultaneously. Check out our pinout table for more information on how to allocate the pins.

!Available configurations

Selecting the sampling rate

The Load Cell Nanoshield offers two possible sampling rates, 10 and 80 samples per second. You can choose which rate to use via the SPEED jumper on the module (see picture below).

SPEED jumper used to select the sampling rate

The choice of which sampling rate to use depends on the type of application for which the module is being used. The operation with 10 samples per second offers the best performance in terms of noise suppression, thereby resulting in a higher effective output resolution. This is the factory default configuration, and is recommended whenever a higher sampling rate is not strictly necessary – when developing a typical weighing scale, for example.

The 80 samples per second configuration offers a higher speed in exchange for a small degradation in the signal-to-noise ration, reducing the effective resolution. Use this configuration when a higher sampling rate is strictly needed – for instance when it's necessary to monitor a fast-changing, highly dynamic system.

Selecting the gain

The Load Cell Nanoshield has an integrated signal amplifier, ideal for use with low-amplitude signals like the ones provided by load cells. The amplifier gain can be adjusted to a value of 64 of 128 via the GAIN jumper on the module (see picture below).

GAIN jumper used to select the amplifier gain

The higher gain of 128 is the factory default configuration, and is the one recommended for use with the majority of load cells available in the market – the ones with a sensitivity of 3mV/V, 2mV/V or lower. With a gain of 128, the A/D converter input is configured to measure a range between -19.5mV and +19.5mV.

The lower gain of 64 must be used with load cells that have a sensitivity of 4mV/V or higher. In this configuration, the A/D converter input is configured to measure a range between -39mV and +39mV.

3.3V operation

The Load Cell Nanoshield can also be configured to operate with a 3.3V power supply. This configuration is useful when interfacing to another module that uses a 3.3V supply, like the Arduino Zero, the Arduino DUE and others.

The voltage supplied to the module can be selected via the solder jumper located on the top side of the module, choosing between the 5V or the 3.3V value. The picture below shows how to do it:

Load Cell Nanoshield power supply selection

Changing this jumper configuration from the factory default is only necessary when the module is being used connected to a Base Board or a Base Board L, as these boards supply 3.3V via the pin labeled 3V3. If you are using the module via a direct connection with jumper wires, a breadboard or some other custom connection, you can just supply 3.3V directly to the VCC pin on the module (see the module schematics below for details).

Block diagram

Load Cell Nanoshield block diagram

Electrical characteristics

  • Power supply: input via the 5V pin, with a range from 4.5V to 5.5V. The module can also be configured for use with a 3.3V power supply, according to the 3.3V operation section above.

  • Current consumption: the maximum current consumption is approximately 1.5mA.

  • Logic levels: the input pins /CS and SCK work with a voltage of 5V or 3.3V. The output pin SDO has a logic level of 3.3V and is 100% compatible with the voltage levels accepted by Arduino, Raspberry Pi and others.

The table below describes the function of each signal, and their correspondence with the Arduino UNO and Arduino Mega R3 pins.

Function Arduino UNO Arduino MEGA Function
/CS 8 (selectable) 8 (selectable) SPI chip select
SDO 12 50 SPI data line (MISO)
SCK 13 52 SPI clock line
5V 5V 5V 5V voltage input
GND GND GND Reference voltage (ground)
Pin description table

!Sample code