Custom mass sensor
-
Design and construct a custom mass sensor with no premade chips or libraries, developing a signal processing circuit from first principles.
Develop an auto-calibration protocol utilizing known reference weights to compensate for material creep and temperature-dependent strain variations.
Apply linear regression techniques to refine load cell accuracy across variable material responses.
-
Designer/Competitor
-
September 2022-May 2023
-
Onshape
Material Science
Arduino
Metalworking
FDM 3D printing
-
Achieved mass measurement precision within ±1 gram over a 30–1000g range, accounting for material and environmental factors.
Ranked 15th nationally out of 7,800+ international teams.
Earned 3 medals in the 2023 season, including recognition from Carnegie Mellon.
Design Process
Competition Constraints & Initial Challenge
The competition prohibited pre-made chips, meaning I couldn’t use standard analog-to-digital converters (ADC) or amplifiers.
The only alternative without an ADC and amplifier was force-sensing resistors, but they quickly proved unreliable, drifting significantly over time and with temperature changes.
Modifying the HX711 to Enable Load Cell Use
Since a proper load cell required an ADC and amplifier, I needed a workaround.
I used a heat gun to remove the HX711 chip from its original circuit board.
I then soldered the chip onto an SMD-to-DIP adapter and rebuilt the original resistor-capacitor network, allowing it to function independently.
This modification enabled the use of a load cell, a much more precise sensor.
Creating a Custom Load Cell from Aluminum Stock
However, pre-made load cells were also prohibited, so I had to fabricate my own.
I took a solid aluminum block and machined a cutout in the center to allow for controlled deformation under load.
I then adhered four strain gauges to the surface, allowing them to detect incremental material deformations caused by applied force.
Signal Processing & Arduino Integration
I arranged the strain gauges in a Wheatstone bridge configuration, which amplified small deformations into a measurable electrical signal.
This amplified signal was then processed by an Arduino, allowing for real-time and high-precision mass measurements.
Calibration for Accuracy
To ensure consistent and precise readings, I implemented a two-mass calibration method.
I used two known reference weights to establish a linear calibration curve, correcting for any material inconsistencies or signal drift.
This approach allowed me to fine-tune the sensor's gain and offset, improving accuracy across different mass ranges.
Above is the size of an early version of the SMD-DIP adapter with my finger for scale.
Circuit diagram of the complete assembly.