Digital våg

Jag fick faktiskt en billig badrumsvåg alldeles nyligen. Jag har aldrig behövt bry mig om min vikt, så den har blivit använd till allt möjligt annat.

För att kunna göra dessa mätningar, byggde jag ihop en instrument-förstärkare med en AD-omvandlare, och gjorde först ett väldigt enkelt I2C-interface för att snacka med AD-omvandlaren innan jag programmerade en arduino, så att den spottar ut vikten direkt i kilo kontinuerligt på serieporten.

Innanmätet

InsidaFörsta steget var att skruva upp vågen och se vad som satt innuti. Blev lite besviken över att enda IC-kretsen var bondad direkt till kretskortet med epoxy ovanpå. Jag hade hoppats kunna få ut mätvärden från någon förstärkare, eller att man till och med skulle kunna tjuv-lyssna på datat från en AD-omvandlare.

I stället fick jag börja från grunden: löda loss en givare, koppla upp den (på en labb-platta) i en mätbrygga, och stoppa in en operations-förstärkare som förstärkte utsignalen från bryggan några hundra gånger. Märkte att utsignalen från en givare i mätbrygga låg på några uV per volt in i mätbryggan och kilo, och att offsetdriften på en vanlig operationsförstärkare var extrem.

Mätbryggan (i original)

Mätbryggan
Schemat visar mätbryggan i vågen som den såg ut från början. Det finns fyra trådtöjningsgivare, en i varje hörn av bryggan. Totala resistansen i varje givare är 2 kOhm, och mitt-anslutningen har en kOhm till dom andra anslutningarna. Resistansen i den del av trådtöjningsgivarna som är märkta med * minskar när belastningen ökar. Det streckade motståndet kan tänkas vara till för att kompensera för offsetfel, eller få en utsignal med en viss offset. Jag plockade bort det motståndet (som egentligen är flera olika, värdet valdes i fabriken genom att löda ihop några test-punkter).

Schemat

SchemaFör att kunna mäta repeterbart köpte jag en instrumentförstärkare och en AD-omvandlare, och skar till ett kretskort med skalpell. Schemat syns i figuren till höger. Notera att jag koplat in mig till "vågens mätbrygga" som består av fyra givare, så nu får jag temperaturstabilisering (vid givarna) på köpet. Sen hade jag inte någon spännings-referens hemma, utan tillverkade en egen väldigt fult med några vanliga framspända dioder. Jag får kring 2.5V som referensspänning

Lägger jag en hantel på 13.5 kg på vågen, så stiger utsignalen från förstärkaren med 0.23 V, vilket är 17 mV per kilo, eller 1,7 mV per hekto. Förstärkningen på instrument-förstärkaren är satt av 150-Ohms motståndet till omkring 538ggr (kan diffa minst +/- 25 ggr om motståndet ändras fem procent). Det innebär att mätbryggan har en utsignal på 9.6 uV per volt in i mätbryggan och kilo belastning.

Vill man ha ett brus i mätningarna på under 50 gram, måste bruset på signalen mellan våg och förstärkare ligga under en halv uV, och AD-omvandlare på andra sidan förstärkaren behöver en upplösning bättre än 0.8 mV. Samtidigt måste ingångssvinget (för en 180-kilos person) vara på 3V. Sen behöver man egentligen ha låga offset-drifter på alla ställen, och riktigt bra CMRR överallt när signalerna är så små. Jag kör med dom billigaste kretsarna som kunde hittas på ELFA, och får väl byta upp mig senare om det behövs.

Programmvaran

Mjukvaran är väldigt enkel, och det enda den gör är att snacka direkt med AD-omvandlaren, noll-kalibrera vågen, och skala resultaten till kilo. Den första varianten skrevs för att bit-banga I2C-kommunikationen via en hembyggd usb till I2C-adapter. Källkoden finns här.

Mätande

Här är några exempel på vad man kan göra med vågen.

Ätande

Jag äter I den här figuren sitter jag på en barstol som står på vågen, och jag äter en tallrik makaroner med köttbullar.

Man ser tydligt varje gång jag dricker, och att det är mindre kvar i glaset varje gång. Man ser också varje gång jag skär köttbullar (jag brukar dela dom i två eller fyra delar. Man kan också se att jag släpper besticken innan jag dricker sista klunken vatten. Sen ser det ut som om något hänt varje gång jag tagit en tugga, men det är nog bara för att jag rör på händerna.

Hoppande

Hoppa upp och ned på vågen Här försökte jag hoppa upp och ned på vågen så försiktigt som möjligt. Det innebar att man böjde knäna ordentligt vid nedslaget, för att inte överbelasta vågen. Man märker ändå att den utsätts för väldigt höga krafter. AD-omvandlaren jobbade med 12 bitar i 250 sps, och jag tar ett löpande medelvärde av dom fem senaste samplingarna för att filtrera bort nätbrum.

Runt-flyttning av tyngdpunkt

Kliva upp och flytta runt tyngd-punkten Jag har ibland funderat om placeringen av givarna på digitala vågar gör att dom påverkas mycket när man flyttar runt sin tyngdpunkt

Som man kan se här, så händer väldigt lite när jag flyttar runt min tyngdpunkt så mycket jag kan utan att trilla av vågen.

OBS! Du bygger alltid på egen risk, jag garanterar inte att något fungerar för dig.
Du ansvarar själv för risken att skada dig själv/andra/saker/datorer/eller annat!