Strain gauges in Arduino?

Hello, n00b engineering student here. I'm trying to set up a strain gauge to measure different pressures on the back side of an aluminum plate. I set up a quarter wheatstone bridge years ago for Uni but never having trouble getting this to work.

I have an Arduino Micro (better size for my project) and a 1.8" TFT screen that currently spits out the readings from two analog inputs. One is supposed to be for a thermocouple, and the other is for a strain gauge reading.

It looks like I need to get a wheatstone bridge set up with an amplifier circuit (which confuses me, because I'm an ME and took basic electricity 4 years ago) in order to use A0 to read strain. So I have a breadboard with an LM324 from radio shack and the micro, but I couldn't get any readings from my strain gauge.

This code seems to work, spitting out random numbers on screen when nothing is plugged into A0 or A1.

#include <TFT.h>  // Arduino LCD library
#include <SPI.h>

// pin definition for the MICRO
#define cs   7 
#define dc   0
#define rst  1 

TFT TFTscreen = TFT(cs, dc, rst);

// char array to print to the screen
char strainPrint[4];
char thermoPrint[4];

void setup() {

  // Put this line at the beginning of every sketch that uses the GLCD:
  TFTscreen.begin();

  // clear the screen with a white background
  TFTscreen.background(255, 255, 255);

  // write the static text to the screen
  // set the header font color to black
  TFTscreen.stroke(0, 0, 0);
  // set the font size
  TFTscreen.setTextSize(2);
  // write the text to the top left corner of the screen
  TFTscreen.text("Sensor Values :\n ", 0, 0);
  // ste the font size very large for the loop
  TFTscreen.setTextSize(4);
}

void loop() {

  // Read the value of the strain sensor on A0
  String strainVal = String(analogRead(A0));
  // Read the value of the thermo sensor on A1
  String thermoVal = String(analogRead(A1));

  // convert the readings to char arrays
  strainVal.toCharArray(strainPrint, 4);
  thermoVal.toCharArray(thermoPrint, 4);

  // set the font color for strain output to blue
  TFTscreen.stroke(255, 0, 0);
  // print the strain sensor value
  TFTscreen.text(strainPrint, 0, 20);
  // set the font color for thermo output to red
  TFTscreen.stroke(0, 0, 255);
  // print the thermo sensor value
  TFTscreen.text(thermoPrint, 0, 60);
  // wait for a moment
  delay(250);
  // clear screen
  TFTscreen.stroke(255, 255, 255);
  TFTscreen.text(strainPrint, 0, 20);
  TFTscreen.text(thermoPrint, 0, 60);
}

Does anybody know how to set up a wheatstone bridge with just one strain gauge and read it into A0? Sort of stuck where we're at, no configuration we've tried gets anything but random numbers on the TFT.

Thanks!
Joe

An open input can be anything, that is normal.

A strain gauge changes its resistance in such a small way, that it can (almost) not be used. Even with a opamp, the result depends on temperature and so on.
An opamp circuit has a certain input impedance, because of the circuit. An instrumenation opamp doesn't have that, that is why an instrumentation opamp is often used with a wheatstone bridge.

As far as I know, a strain gauge is always used in pairs. They should behave as opposites. When the metal is bending, one should increase the resistance, while the other should decrease the resistance.
That can be used for a half wheatstone bridge, and with an instrumenation opamp, or with special chip (HX711) it can be read with an Arduino.

Could you make a drawing of your circuit and make a photo of it ?
The drawing can be with pen and paper and you can make a photo of it and attach it to a post.
(Click the "REPLY" button, to see additional options to attach a photo. It will be on the lower-left below the text input field).

Am I right to use the attached connection for Strain gauges and HX711?