OVERVIEW We’ve all used a scale to determine the weight of something at some point in our lives. Using a Load Cell or Weight sensor you can add this capability to your Arduino projects. In this tutorial we will see how to connect, calibrate and display the weight on a small OLED display, and by using a rotary encoder we will be able to change the units from: grams, kg or pounds. We will be using the HX711 ADC converter board to amplify the signal received from the weight sensor. This amplifier enables the Arduino to detect the changes in resistance from the load cell.
(24 Nm) Idler Pulley: 33 ft. Post E46 M3 torque spec's and I'll add them here. Engine Oil drain plug: 18 ft-lbs Oil filter housing cap bolt: 24 ft-lbs Banjo bolt (side of valve cover): 18 ft-lbs (25 Nm) Spark Plugs: 16 ft-lbs (22 Nm) Cam Bolts: 10.3 ft-lbs (14 Nm ) Chain Tensioner bolt: 32mm 51.6 ft-lb (70nm) Cylinder head bolts: E14 22.1 ft-lb (30nm)/90 degrees/90 degrees (see explanation in thread) Engine mounts: 37 ft-lbs (49 Nm) VANOS filter bolt: 20 ft-lbs Oil pan bolts - 8.8 grade - 89 in-lbs (10 Nm) 10.9 grade - 106 in-lbs (12 Nm) Tensioner: 18 ft. Aerospace torque specs.
Load Cell and HX711 INTRODUCTION So what is a Load Cell? They are many types of Load Cell, but today we will be using the straight bar type. When pressure or a load is applied, the electrical resistance will change in response to this applied pressure and by taking this information and after some calibration we can determine the precise weight.
Load cell like this one come in different weight limits, the one we will be using today is rated up to 1KG, but you can get others that will support more weight if needed. What about this HX711? The changes in electrical resistance provided by the Load Cell need to be amplified so that they can be read by an Arduino. That’s exactly what the HX711 board does.
I found a dead scale at work, the electronics were fried. I figured the load cell inside was still good, and would be fun to hack. I stripped out the load cell, and connected it to an Arduino with a HX711 amplifier /.
It reads the information from the Load Cell, amplifies the signals and then sends it to the Arduino for processing. Common Load cells have four-wire to connect the HX711 to a microcontroller like the Arduino. • Red (VCC) • Black (GND) • Data • Clock To connect the HX711 to the Arduino you only need 2 pins (Clock and Data). On the opposite side you can see the connection for the Load cell.
We will be using a simple Arduino library to communicate with the HX711 that provides a calibration and Tare (reset) feature to easily determine the weight of an object. LOAD CELL SETUP The bar type we are using has different screws holes on the bottom and the top. To it up as a scale, you attach the bottom left or right screw holes to a table or stable object, and then attach a piece of platic or any other material to serve as the scale to put objects on, to the top opposite screw holes. *Each bar type has an arrow that indicate the direction of deflection and should be positioned the correct way for your project.
You can see a simple setup here: This setup is for using the Load Cell has a simple scale, but you could also connect it the detect deflection between two object if you wanted. CONNECTIONS The connections for this tutorial are pretty straightforward: The 5V and GND of the UNO is connected to each modules VCC and GND. Since the OLED display uses I2C we are using pins A4 (SDA), A5 (SCL) on the UNO to connect it. The rotary encoder is connected to these pins: CLK to pin 2, DT to pin 3 and SW to pin 4. The HX711 is connected to: DATA to pin 4 and CLOCK to pin 5. Depending on the HX711 your purchase it may have different connections: If it has color designation, then connect the corrresponding wires from the Load Cell to the HX711. In my case my HX711 had these connections: E+: Connected to RED of the Load Cell E-: Connected to BLACK A-: Connected to GREEN A+: Connected to WHITE B-: no connections B+: no connections.