This is a project to monitor the amount of beer left in my keggerator by weighing them and providing a web interface to view the data.
Custom scales were created which fit in the keggerator. In my case they are 9" x 9.75". The scales are made from a 1/2" thick sheet of HDPP plastic cutting boards. 50kg load cells are placed in each corner. The load cells are held in place using a custom 3D printed clip.
Sparkfun has a great tutorial on wiring and using load cells. I used their Load Cell Combinator and Qwiic Scale - NAU7802 board to wire up the scales for prototyping. Eventually I will use a custom PCB for the scales' interface.
Currently data is read and sent to the cloud by a $10 ESP8266 Huzzah.
I've included a shell script which can be used to automaticlly provision all of the backend services needed on Azure from a Mac or Linux (possibly Windows too if there's a bash shell available).
The Azure IOT SDK is used to send data directly from the Arduino to the Azure backend. Data is stored in Azure Table service which is the cheapest solution I could find.
An Angular frontend app presents the data to the user.
Each Arduino can handle up to 8 scales (using 4 NAU7802 devices). Multiple Arduinos can be used and presented under a single web interface.