## Strain Gauge based weight sensor (load cell)

For my group design project one of the main tasks was to determine the amount Lego blocks stacked together. The group gave me this task, so I decided to make a weight sensor based on strain gauge. Hopefully I'll be able to briefly explain how it is done and what obstacles I had to overcome.

Warning: the article turned out to be rather large

Hopefully, it will help someone out there in the world to get over frustation faster, when working with strain gauges.

Thanks hackaday for publishing my article!

# Strain Gauge

## Introduction

Strain gauges are sensors which are used in variety of physical measurements. They change resistance when they are stretched or compressed. Because of this property, strain gauges often are bonded to a solid surface and used for measuring acceleration, pressure, tension and force. We can use the measurement of tension to determine the weight applied to the load cell. Fundamentally, strain is a change in length per unit length. For instance, if a 1 m long beam is stretched to 1.000002 m, the strain is 2 micro strains. One characteristic of strain gauges are gauge factor, and is defined as fractional change in resistance divided by the strain. For example, if we have strain gauge with gauge factor of 2, for the previous example the resistance change would be (2*2)*10^-6 =4*10^-6 => 4μΩ. Normally strain gauge resistance value are around 120 – 350 Ω, however there are some gauges with resistance as low as 30Ω or as high as 3kΩ

## Strain gauge inner workings

 Figure 1 Common strain gauge

If a strip of conductive metal is stretched, it will become skinnier and longer, which will result an increasing electrical resistance. On the contrary, if you compress  the strain gauge, it will broaden and shorten, hence the electrical resistance will decrease. If these stretches don’t exceed strain gauge’s elasticity, the strip can be used for measuring weight. A typical strain gauge would look something like this:

## Wheatstone bridge (measuring resistance)

Because the change of resistance is very small, it’s a little bit trickier than just measuring resistance between two points. As stated above, the change can be in micro-ohms. So we have to find a way to measure these small changes. Commonly, used circuit for sensitive resistance measurements is Wheatstone bridge (Figure 2). This circuit is commonly used for converting the micro-strains into voltage changes, that can be then fed into ADC pin in micro-controller.  Essentially, Wheatstone bridge is four resistors connected in a square. When the bridge is perfectly balanced the output voltage would be 0, but if one of the resistors slightly changes, the bridge produces significant measurable voltage. Still the Vout would be in mV, I will expand on that later. When used with a strain gauge, one of the resistors in the bridge will be replaced by the sensor and when the strain gauge undergoes dimensional changes, it will unbalance the Wheatstone bridge proportional to the strain

Figure 2 Wheatstone bridge

Figure 3  Half bridge circuit with temperature compensation

In Figure 2 you can see Quarter Wheatstone bridge, which has only one resistor replaced by the strain gauge. Typically, the resistors R1, R2, R3 are the same as unstrained resistance of strain gauge. One thing we have to remember when using strain gauge, the wire resistance plays significant role when balancing this bridge. Because, as stated above, the changes are in micro-ohms, and wire resistance can influence the results. This circuit can be used for weight sensing, but it has one significant problem, the strain gauges resistance varies in different temperatures. For our case, we might be able to compensate that in software, because our error of margin can be up to 5 g. If we are not able to compensate for the temperature, we can use half-bridge circuit (Figure 3). Essentially, we have strain gauge on top and on the bottom of the beam, and if temperature changes, one of the strain gauges will compress the other stretched, which will automatically balance the bridge. This is a very common practice when making scales with strain gauges.

To gain greater sensitivity, the best practice would be to use full-bridge circuit (Figure 4), which has all the resistors as strain gauges. This type of bridge is often used, if it is not possible to balance the strains measured in the half-bridge. Another advantage of full-bridge is that because all the resistors are measuring strain the result will not be approximation of strain like for Quarter-bridge or half-bridge, but it will be directly proportional to the force applied on the beam.

Figure 4 Full-bridge circuit

## Choosing a material for the beam

Since strain gauge’s linearity is highly dependent on the material it’s applied to, we have to research materials commonly used in weight measurements or materials which have a reasonably linear strain vs. force curve.

We found out the most common material used in making of load cell is aluminium, because of its linearity and basically no change visual deformation when it’s stressed.

Typical aluminium stress vs. strain curve

## Design an aluminium beam (incorrect design)

First thing is to design an aluminium beam, where we are going to apply to strain gauge on And which can support our maximum weight. To do that I used an open source tool for making blueprints – FreeCAD.  As a reference we are going to use a load cell from the commercial scales which we disassembled. That load cell can support up to 5 kg of weight and it can be stressed enough to detect 1g of change.

Afterwards we have to cut out the aluminium beam.

## Applying strain gauge on the beam

So now I have aluminium beam, next task is to glue strain gauge on it or in some other ways attach it to the aluminium bar.

#### Jessica Roggers in Implementing pulse oximeter using MAX30100

Small portable size makes it easy to handle and carry. Helpful for athletes and pilots to obtain quick and precise oxygen saturation...

#### James J in Simple library for driving 20x4 LCD with 4bits

Very good writeup. I thought had been fighting my code for a week or two and confirmed what I was dooing was right. This overview is the best I have seen for doing the code. You may wish to add one thing though that I have found on another website. Urge people to check the contrast dial on...