Arduino 5 Minute Tutorials: Lesson 8 - Wheatstone Shield & LCD

@Max Blake: Since these are technical questions, we recommend that you continue this support request on the forum. Since you already have topic there about it, we recommend that you post additional details there, such as pictures of your setup (showing clearly all components, wiring, etc.). These extra details would certainly help with identifying potential issues and solutions.

WheatstoneBridge wsb_strain1(A0, 365, 675, 0, 1000) excuse me please can i have an explanation about these values and where do they come from please

@stovel This is for creating an object named “wsb_strain1” that sets the proper analog pin to input (in this example : pin A0) and does the calibration :
inputMin: Minimum expected value of raw ADC input
inputMax: Maximum expected value of raw ADC output
outputMin: First (lower) calibration point with a known force, usually 0.
outputMax: Second (higher) calibration point with a known force, usually near the maximum force measurable by the load cell used.
Please take a look at the CPP file of the Wheatstone Bridge library here

I recently purchased the Robotshop strain gauge/load cell/Wheatstone bridge interface. I would like to use this to connect to a single strain gauge bonded to a piece of wood or steel to measure actual strain as tension or compression is applied. The strain gauge only contains 3 wires (red, white, and black). I would like the LCD to display the actual strain value. How can this tutorial be modified to achieve this setup?

@JC The Load Cell Shield works with almost any 4 wires load cell. We didn’t test this shield with 3 wires load cells/strain sensor. This Arduino forum post might help in this case.

What are the recommended edits to make to the sample arduino program to help it run properly? Such as low raw adc, and high raw adc. I want to test a weight that has a maximum of about 10 lbs.

@William Alexander The first step is to choose an accurate and appropriate sensor - ex. load cell. You can also use Vref for higher accuracy (in certain situations). Not sure what can be done about the code itself (project specific).

I have a 5 kg load cell. When i follow the directions " First, you will have to enter the low point for force (defaults to 0). It can be changed using the left/right/up/down buttons. Once you press select, you will be ask to choose the raw ADC value that is equivalent to 0. Then, you will be asked for the high point of the force measurement. This is ideally the largest force you wish to measure but it can be any force that is higher than the low point. Add a weight/tension to your load cell equivalent to the force entered and press select. The screen will then show you the raw ADC value for the high point with the weight/tension. Press select to calibrate the system."

I select 0 for the low force.
After the selection, the program defaults to 340 low rad adc.
When i select this, it asks for the high force, I attached a 2.5 kg mass and enter the value 2500 for the high force.
However, when I press select, the high raw adc that is calculated is 340, so the strain does not change? Have I entered something wrong into the button selection system?

Never mind on that last one, I figured it out. Thank you for your assistance!

@William Alexander: It is possible that your load cell is connected to the wrong channel. As mentioned at the top of this article, please create a new topic on our forum for detailed troubleshooting. Make sure to include some pictures of your setup showing clearly all components.

I have a project where I am using 3 120 ohm strain gauges in parallel to negate roll in a barbell so in any orientation I can read the strain value. Is it possible to use this set up with a 2 wire strain gauges?

@Ethan W: As mentioned at the top of the article, please open a new topic here on our forum for technical questions. We recommend that you provide as much information as you can about your potential setup, such as drawing and such. You can attach files and pictures using the Full editor mode.

@Ethan The Load Cell Shield is based on the AD8426 Rail-to-Rail Output Instrumentation Amplifier which is used to measure the output of Wheatstone bridges based on strain gauges. Therefore, the Load Cell Shield should work for your project.

How can I change the code provided with this tutorial to work with RB-Dfr-652 LCD screen? the LCD above is out of stock.

@Ethan: We had a quick look at the schematics of each board (found under Useful Links on the product page). Here’s a link to the schematic for RB-Ite-161 and RB-Dfr-652. It seems like they use the exact same pinout, so it should be plug & play. If you do have any issues, feel free to create a new topic about it here, as the blog comments are not well suited for complex technical issues.

Hey,
I have been following the tutorial and encountered some error.
I tested the components individually and all are working.

So when I plug the LCD screen onto my Arduino Uno it works fine and it can display text.
However when I plug the wheatstone bridge interface in between the Arduino Uno and the LCD screen (note: just the interface no wires or load cell attached) the LCD screen still emits light. But the lower row of the LCD screen is illuminated differently (lighter) and text displaying commands in code will not be displayed on the LCD screen anymore.

Is this a known issue? Could it be due to some voltage regulation on the wheatstone bridge interface? (5V -> 3V)

Thanks in advance.

Kind regards,
Glenn

1 Like

@Lempf Welcome to the RobotShop Community. Without knowing the details of the LCD screen, some things you might want to investigate:

  • Check to see which pins are used by the Wheatstone shield and compare them to which pins are used by the LCD shield you have. There may be overlap which causes issues
  • Check the power requirements of all electronics.
2 Likes

@Lempf
You may also want to make sure you are not off by one pin on one of the components. When stacking things with headers this can easily happen without noticing! :slight_smile:

1 Like

@scharette @cbenson
Thank you two for your replies! I will have a look at your suggestions later this day.

Edit: after re-inspecting, it turned out that @scharette was totally right. There was a (very obvious) header missing; don’t know how I could have not seen this before :smiley:
Anyways thanks for your help, and also the nicely written and documented libraries on github.

Cheers,
Glenn

1 Like

Haha… the reason I was right is that I had that issue a few times while writing that post… You know how it is, you start a task, get interrupted, start again, forget where you were, miss a pin alignment… and then what worked before stops working for no reason! :smiley:

Glad to hear it is helpful! Feel free to fork it and create pull requests (PR) if you have improvements to propose!

And don’t be shy to create a page for your project and share your knowledge and experience (i.e.: really all the times you messed up and how to fix it :stuck_out_tongue: that’s how mine look usually anyways) with the RobotShop community! :slight_smile: I’m sure others would appreciate too!