1. Do not share user accounts! Any account that is shared by another person will be blocked and closed. This means: we will close not only the account that is shared, but also the main account of the user who uses another person's account. We have the ability to detect account sharing, so please do not try to cheat the system. This action will take place on 04/18/2023. Read all forum rules.
    Dismiss Notice
  2. For downloading SimTools plugins you need a Download Package. Get it with virtual coins that you receive for forum activity or Buy Download Package - We have a zero Spam tolerance so read our forum rules first.

    Buy Now a Download Plan!
  3. Do not try to cheat our system and do not post an unnecessary amount of useless posts only to earn credits here. We have a zero spam tolerance policy and this will cause a ban of your user account. Otherwise we wish you a pleasant stay here! Read the forum rules
  4. We have a few rules which you need to read and accept before posting anything here! Following these rules will keep the forum clean and your stay pleasant. Do not follow these rules can lead to permanent exclusion from this website: Read the forum rules.
    Are you a company? Read our company rules

Lesson Working with Load-Cells

Discussion in 'DIY peripherals' started by RacingMat, Sep 15, 2015.

  1. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    2,233
    Location:
    Marseille - FRANCE
    Balance:
    20,875Coins
    Ratings:
    +2,079 / 21 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Hello!
    Here are some information about load-cells for future reference:

    2 common types of load-cells
    - you have 3 wires load-cells
    20100816-3wirestraingauge.png a single resistor is variable under load​

    - or and 4 wires load-cells
    wc1a.jpg 2 resistors are variable under load​

    Some Theory
    Here you can find some theory nicely explained :

    As far as I understood the point,
    - 4 wires load-cells are in Wheatstone bridge configuration and that's the best for measuring the small variation of resistance.
    that's what I used for my DIY load cell hydraulic hand brake
    4 wires.png

    - 3 wires load-cells, like Fanatec brake pedal or any low cost chinese load-cells, are only half bridge...

    but you could increase sensitivity by using
    - a pair of them back to back : like I did for DIY brake pedal
    2 load cells.jpg .jpg

    - or by four : http://www.neuroproductions.be/experiments/6-axis-robot-arm/
    loadcels.png OsxH4.png

    - or if you want to use a 4 wires PCB amplifier with your 3 wires load-cell: you can proceed like Jet Badger did
    30j0d2t.jpg
    Reading the signal
    you cannot replace a potentiometer by a load-cell : the resistor variation values are too small.
    That's why it's mandatory to use an amplification board : INA122, HX711​

    INA122 PCB board is perfect for turning a laod-cell into a "potentiometer":
    the output is an analog voltage
    you can replace any pot by the INA amplifier PCB .jpg
    the price is around 10€ (chip, PCB...)
    http://www.ti.com/lit/ds/symlink/ina122.pdf
    Operation supply voltage range: 2.2V to 36V
    HX711 is really low cost
    0,6€!
    but the output is serial communication: it requires an arduino or a microchip establishing a serial communication
    .jpg
    Operation supply voltage range: 2.6 ~ 5.5V
    https://cdn.sparkfun.com/datasheets/Sensors/ForceFlex/hx711_english.pdf

    Examples
    4 wires load-cells -> my hydraulic hand-brake converted to load-cell hand-brake
    http://www.xsimulator.net/community/threads/hydraulic-handbrake-converted-to-load-cell.7326

    3 wires load-cells -> brake pedal with personnal scale hack
    http://www.xsimulator.net/community/threads/diy-load-cell-brake-pedal-short-tuto.6042/

    Any further hints and information are welcome!
    yours
    Mat
    • Informative Informative x 10
    • Like Like x 3
    Last edited: Jan 14, 2016
  2. tombo

    tombo Active Member

    Joined:
    Oct 5, 2013
    Messages:
    269
    Location:
    Germany
    Balance:
    2,436Coins
    Ratings:
    +246 / 2 / -0
    My Motion Simulator:
    DC motor, Arduino
    Thank you for that detail Information. :thumbs
    I think i will try the Jet Badger method first because i have all the parts laying around.
  3. Alexey

    Alexey Well-Known Member

    Joined:
    Sep 23, 2014
    Messages:
    452
    Occupation:
    Electronics Technician
    Location:
    Adelaide, Australia
    Balance:
    8,060Coins
    Ratings:
    +620 / 2 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino
    Just one point to add about using two separate load cells for a full bridge is that they need to be matched exactly in resistance otherwise there will be an inherent difference that gets amplified via the comparator. This is not a resistance that can be measured with a multi-meter as it is too small. I noticed this on one pedal that I made where it looked like the accelerator was being pressed ever so slightly.

    Great write-up!
    • Informative Informative x 2
  4. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    2,233
    Location:
    Marseille - FRANCE
    Balance:
    20,875Coins
    Ratings:
    +2,079 / 21 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Thanks guys!

    Yes @Alexey, indeed the pair of load-cells should be exactly the same!

    @tombo, try to use low tolerance resistors and keep us informed
  5. tombo

    tombo Active Member

    Joined:
    Oct 5, 2013
    Messages:
    269
    Location:
    Germany
    Balance:
    2,436Coins
    Ratings:
    +246 / 2 / -0
    My Motion Simulator:
    DC motor, Arduino
    Hello,
    so i made some further testing on my Handbrake with the Fanatec loadcells. I found a great Info sheat how to use only one of them.
    http://www.fut-electronics.com/wp-c...Tutorial_for_Load_Cell_weight_sensor 50KG.pdf

    At the Moment I get some readings rom 0.6mv to 2.6mv. I can't press with full pressure because the handbrake is not mountet yet. I hope I'll recive the in122 this weekend and try to amplify the signal.

    Here is a Picture of the current test setup. I have only plexiglas as building material at home. There is also a little sketch so the hole concept is explained.
    handbrake2.jpg handbrake3.jpg handbrake1.jpg
    • Informative Informative x 2
  6. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    2,233
    Location:
    Marseille - FRANCE
    Balance:
    20,875Coins
    Ratings:
    +2,079 / 21 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
    thanks @tombo! nice document about 3 wires load-cell

    about your design, here are my thougts :
    - it's good to have a mechanical stop behind the load-cell to prevent over-pressure (that could destroy it)
    - what is the purpose of your spring? in the configuration you drawn, your spring does nothing...
  7. tombo

    tombo Active Member

    Joined:
    Oct 5, 2013
    Messages:
    269
    Location:
    Germany
    Balance:
    2,436Coins
    Ratings:
    +246 / 2 / -0
    My Motion Simulator:
    DC motor, Arduino
    Hello,
    I have some kind of mechanical stop but you can't see it. I milled the form of the Loadcell in the plexiglas so it can move and at the end stop at the plexiglas.
    For the Spring, maybe I'm a little bit stupid but it should bring the lever back to start position.
    If the spring would be between the nut and the tube at the loadcell it will compressed when you pull the lever. I'm anyways not shure about position of the spring maybe in front at joint and plexiglass.
    I get my notice today that my parcel with ina122 will arrive in next 2 days so I will keep you updated with the final result at weekend hopefully.

    Here are some pictures. You can see its broke at the upper hole. Plexigas isn't the right material for this. I will try aluminium.

    handbrake4.jpg handbrake5.jpg
    • Funny Funny x 1
    Last edited: Sep 17, 2015
  8. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    2,233
    Location:
    Marseille - FRANCE
    Balance:
    20,875Coins
    Ratings:
    +2,079 / 21 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
    I would put the spring here... .jpg
    or here but much larger: it should not touch the load cell itself 1.jpg
    • Informative Informative x 1
    • Useful Useful x 1
  9. tombo

    tombo Active Member

    Joined:
    Oct 5, 2013
    Messages:
    269
    Location:
    Germany
    Balance:
    2,436Coins
    Ratings:
    +246 / 2 / -0
    My Motion Simulator:
    DC motor, Arduino
    Hello,
    thanks for your explentation.
    I'm woking on the design anyways and added a plexiglas plate which holds the tube. Now the pressure of the spring is against this plate.

    Today I managed to get the qater Bridge loadcell design working. It semms that my loadcells are very cheap, because all of them, output a little voltage when no pressure is applyed. It's the same at my fanatec break pedal where I used them as replacement.
    Maybe i change the resistors again. As RacingMat mentioned low toleraqnce ones will be good. I'm currently using 2,2Kohm instead of 1K in the above tutorial.

    Here is a little Video.
    • Like Like x 2
    • Old Old x 1
  10. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    2,233
    Location:
    Marseille - FRANCE
    Balance:
    20,875Coins
    Ratings:
    +2,079 / 21 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
    @tombo, you have to use resistors that are the closest to the internal resistors in your load-cell!

    measure between the 3 wires:
    you should find something like 1 kohm, 1kohm, 2 kohm
    or X kohm, X kohm, 2X kohm

    therefore you have to complete the bridge with X kohm resistors
    not other values! if not, the bridge would be unbalanced
    • Agree Agree x 1
  11. Alexey

    Alexey Well-Known Member

    Joined:
    Sep 23, 2014
    Messages:
    452
    Occupation:
    Electronics Technician
    Location:
    Adelaide, Australia
    Balance:
    8,060Coins
    Ratings:
    +620 / 2 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino
    It's not so much using the same resistors but having the same ratio. What you are looking at is called a voltage divider. When the load cell is strained or compressed its internal structure changes and thus creates more or less resistance, almost like becoming more dense (less resistance) as it is compressed. The change in resistance causes an imbalance in the voltage divider and that is what you measure. Unfortunately this change cannot be detected using a multimeter which is why we use a comparator to detect the change and then amplify it to something we can measure.

    Using plain old resistors on one side of the full bridge is setting the 0 point of detection, so it should match the ratio of resistance from the other side. The comparator looks at the voltage output of your two passive resistors and compares the voltage to the voltage coming out of the load cell voltage divider. The comparator will then amplify the difference in voltage.

    Using passive resistors is never going to be perfect because of component tolerances.
    When a load cell changes resistance due to strain it changes at a rate of about 0.04 ohms per kg of load (different cells will have different values but in the same ballpark). Your standard component tolerances on a 1k ohm resistor even at +/- 1% tolerance is a swing of 20 ohms which is 500 times the size of one 1kg change in the load cell.

    Basically what I am saying is that it is virtually impossible to match a load cell with passive resistors.
    One way you might be able to do it is with potentiometers. Set up the full circuit, have no load on the load cell and adjust the potentiometers until there is no voltage on the output. Sounds simple but it can be quite tedious.

    I'm terrible at explaining things but I hope it helps.
    • Informative Informative x 3
    • Like Like x 1
  12. tombo

    tombo Active Member

    Joined:
    Oct 5, 2013
    Messages:
    269
    Location:
    Germany
    Balance:
    2,436Coins
    Ratings:
    +246 / 2 / -0
    My Motion Simulator:
    DC motor, Arduino
    Hello,
    for me it helps, I've done it like you said and I'm able to use my handbrake with quaterbridge design.
    I've had some ussues but finally find out that these are caused by my gear indicator. If it is plugged into usb the handbrake readings go crazy.o_O
  13. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    2,233
    Location:
    Marseille - FRANCE
    Balance:
    20,875Coins
    Ratings:
    +2,079 / 21 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
    you used adjustable potentiometers to balance your bridge?
  14. tombo

    tombo Active Member

    Joined:
    Oct 5, 2013
    Messages:
    269
    Location:
    Germany
    Balance:
    2,436Coins
    Ratings:
    +246 / 2 / -0
    My Motion Simulator:
    DC motor, Arduino
    • Winner Winner x 1
  15. RacingMat

    RacingMat Well-Known Member Gold Contributor

    Joined:
    Feb 22, 2013
    Messages:
    2,233
    Location:
    Marseille - FRANCE
    Balance:
    20,875Coins
    Ratings:
    +2,079 / 21 / -2
    My Motion Simulator:
    2DOF, DC motor, Arduino
  16. tombo

    tombo Active Member

    Joined:
    Oct 5, 2013
    Messages:
    269
    Location:
    Germany
    Balance:
    2,436Coins
    Ratings:
    +246 / 2 / -0
    My Motion Simulator:
    DC motor, Arduino
    Ok,
    the upper circuit worked properply, but was a pain to set up.
    I found a much easyer way. I used one cell with two 1k resistors like before. Now there is some little offset Voltage. This can be adjusted by the second trimmer. Just connect the output to a multimeter and set it to 0v with the offset pot. Than you can adjust gain normaly.
    Testet with 3.3V on fanatec Pedals and 5V on breadboard.
    schematic.jpg

    Edit: today I see that in Assetto Corsa there is a graphic slider for input devices. On this the Handbrake output doesn't look so good. There are some pums in the signal when pressed. You can't notice it while playing, but it is there. I will take a little depper look at this.
    • Informative Informative x 2
    • Winner Winner x 1
    Last edited: Sep 21, 2015
  17. f1iceman

    f1iceman Why So Serious ? ( The Joker )

    Joined:
    Aug 29, 2015
    Messages:
    832
    Location:
    UK
    Balance:
    791Coins
    Ratings:
    +390 / 2 / -0
    My Motion Simulator:
    2DOF, 3DOF, SCN5
    just looking at loadcells and i am sure i read somewhere that th t500 pedals can run it as a straight swop out from the standard pot 0-5v im just looking into adapting somethings on my rig, but as it was 2 years ago i was looking ijust have that memory of a straight 3 wire loadcell swop out on t500 pedal sets.
    is this wrong ? or am i missing it is still resisted.
    t500 pedals are 0-5v as far as i know atm.
  18. Louis Cannell

    Louis Cannell Nut Loose behind the Wheel

    Joined:
    Oct 23, 2017
    Messages:
    3
    Occupation:
    IT Consultant,
    Location:
    UK
    Balance:
    263Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    You're missing something, the circuit above in Tombo's post would have rj12 socket to it removing brake pedal connect then second rj12 out plug to go to wheel with the new connection wired, I will be making a few shortly will document on here when I do & drop link on this post.
  19. CPSNine

    CPSNine New Member

    Joined:
    Apr 9, 2017
    Messages:
    6
    Location:
    Canada
    Balance:
    277Coins
    Ratings:
    +2 / 0 / -0
    Super post (and thread). I am glad I found it.
    I am starting to get frustrated with my potentiometer break pedal, hopefully I will be abble to convert it to load cell.
    It is a bit overwhelming, the amount of info and knowledge needed.
    Fingers crossed I'll be able to sort it out.
    I'll make sure to be back with any stupid question ;)
    Thanks everybody.