Digitale weegschaal met loadcel en Arduino

Probeer Ons Instrument Voor Het Oplossen Van Problemen





In deze post gaan we leren over op spanningsmeters gebaseerde loadcellen. We zullen onderzoeken wat spanningsmeter is, wat loadcel is, temperatuureffect op spanningsmeter, temperatuurcompensatie met Wheatstone-brug en loadcelversterker HX711, en tot slot zullen we leren hoe we een op Arduino gebaseerde weegschaalmachine kunnen bouwen door loadcel te implementeren als de gewichtssensor.

Dit bericht behandelt gewichtsmeting en meetmethoden, en het implementeren van de methoden in een op Arduino gebaseerd weegschaalcircuit.



We houden er allemaal van om ons gewicht te zien, ongeacht onze leeftijd, een klein kind vindt het misschien heerlijk om zijn / haar gewichtstoename te zien en volwassenen vinden het misschien leuk om zijn / haar gewichtsverlies te zien. Gewicht is een essentieel concept sinds de oudheid, het hielp bij het verhandelen van goederen, de ontwikkeling van wetenschappelijke apparatuur en commerciële producten.

In moderne tijden meten we gewichten in kilogram, milligram zelfs microgram voor laboratoriumdoeleinden. Eén gram is over de hele wereld hetzelfde, alle apparaten voor het meten van gewicht moeten hetzelfde meten. De massaproductie van een pil met een klein verschil van enkele milligrammen dosering is voldoende om een ​​levensreddende pil in een zelfmoordpil te veranderen.



Wat is gewicht?

Gewicht is de kracht die in een vliegtuig wordt uitgeoefend. De hoeveelheid uitgeoefende kracht is rechtevenredig met de massa van een object, wat betekent dat hoe groter de massa van het object is, hoe hoger de uitgeoefende kracht.

Massa is de hoeveelheid fysieke materie die in een object aanwezig is.

Het gewicht is afhankelijk van nog een factor: zwaartekracht.

De zwaartekracht is constant over de hele wereld (er is een kleine variatie in de zwaartekracht vanwege de niet-uniforme bolvorm van de aarde, maar het is erg klein). Het gewicht van 1 kg op aarde zal 160 gram wegen op de maan met exact dezelfde massa, omdat de maan een veel zwakkere zwaartekracht heeft.

Nu weet je wat gewicht is en welke factoren een object zwaar maken.

Wat is een spanningsmeter:

De spanningsmeter is een transducer of een sensor die de rek (vervorming) op een object meet. Dit is uitgevonden door elektrotechnisch ingenieur Edward E. Simmons en werktuigbouwkundig ingenieur Arthur Claude Ruge.

Illustratie van spanningsmeter:

Spanningsmeter sensor

De spanningsmeter is flexibel, het is een dun metalen foliepatroon dat is ingeklemd tussen twee dunne plastic vellen en het moet op een oppervlak worden bevestigd met behulp van geschikte lijm of een ander kleefmateriaal.

Wanneer we gewicht of kracht uitoefenen op het oppervlak, vervormt het en vervormt de spanningsmeter ook. Door de vervorming van de spanningsmeter verandert de elektrische weerstand van de metalen folie.

Nu is de verandering van de weerstand van de spanningsmeter recht evenredig met het gewicht of de uitgeoefende kracht op het oppervlak.

In het echte leven is de verandering in weerstand van spanningsmeter zeer onbeduidend om te detecteren. Om kleine veranderingen in de weerstand te detecteren, gebruiken we de Wheatstone-brug.

Laten we eens kijken wat de Wheatstone-brug in een notendop is.

Een Wheatstone-brug begrijpen:

Een tarwestenen brug is een circuit dat kan worden gebruikt om onbekende weerstand te bepalen. De Wheatstone-brug is bedacht door Samuel Hunter Christie, later werd de Wheatstone-brug verbeterd en verspreid door Sir Charles

Wheatstone.

Illustratie van Wheatstone-brugcircuit:

Wheatstone-brugcircuit

Onze moderne digitale multimeters kunnen de weerstandswaarde aflezen in het bereik van mega-ohm, kilo-ohm en ohm.

Met behulp van een tarwestenen brug kunnen we weerstand meten in milli ohm-bereik.

De brug van tarwe-steen bestaat uit 4 weerstanden, van de vier zijn er 3 bekende weerstanden en een onbekende weerstand.

Het potentiaalverschil (spanning) wordt aangelegd op de punten “A” en “C” en vanuit de punten “B” en “D” wordt een voltmeter aangesloten.

Als alle weerstanden gelijk zijn, zal er geen stroom vloeien op de punten 'B' en 'D' en zal de voltmeter nul aangeven. Dit wordt gebalanceerde brug genoemd.

Als de weerstand van een weerstand verschilt van de andere drie weerstanden, zal er een spanningsstroom zijn tussen de punten 'B' en 'D' en zal de voltmeter een waarde aflezen die evenredig is met de onbekende weerstand. Dit wordt een ongebalanceerde brug genoemd.

Hier is de onbekende weerstand de spanningsmeter, wanneer de weerstand wordt gewijzigd, wordt deze weerspiegeld op de voltmeter.

Nu hebben we een vervorming of gewicht of kracht omgezet in spanningssignaal. Deze spanning moet worden versterkt om een ​​aantal nuttige metingen te krijgen, die naar een microcontroller worden gestuurd om de metingen in grammen te krijgen.

Laten we nu bespreken hoe temperatuur de prestaties van de rekstrookjes beïnvloedt.

Temperatuureffecten op spanningsmeter:

De spanningsmeter is temperatuurgevoelig en kan de werkelijke gewichts- / krachtmetingen verstoren. Bij verandering van de omgevingstemperatuur wordt de metaalfolie onderworpen aan metaaluitzetting, wat de weerstand direct beïnvloedt.

We kunnen het temperatuureffect teniet doen met behulp van Wheatstone-brug. Laten we eens kijken hoe we de temperatuur kunnen compenseren met behulp van de Wheatstone-brug.

Temperatuur compensatie:

We kunnen het temperatuureffect gemakkelijk neutraliseren door alle weerstanden te vervangen door een spanningsmeter. Nu wordt de weerstand van de spanningsmeter gelijkmatig beïnvloed door de temperatuur en wordt ongewenst geluid teniet gedaan door het karakter van de Wheatstone-brug.

Wat is een loadcel?

Een loadcel is een aluminium profiel met spanningsmeter aan 4 zijden in Wheatstone-brugconfiguratie.

Illustratie van weegcel:

Laad het mobiele apparaat

Dit type load cell is stijf en wordt veel gebruikt in industrieën. Er zijn 4 schroefbevestigingen, de ene kant is vastgeschroefd aan een stationair oppervlak en het andere uiteinde is vastgeschroefd aan een houder (zeg maar een mand) om het te meten object vast te houden.

Het heeft het maximale gewicht dat is gespecificeerd op het gegevensblad of op de behuizing. Als de specificatie wordt overschreden, kan de loadcel worden beschadigd.

Een volledige brugcel bestaat uit 4 terminals, namelijk E +, E-, dit zijn excitatiedraden waardoor de voedingsspanning wordt aangelegd. De andere twee draden zijn S + en S-, dit zijn signaaldraden waarvan de spanning wordt gemeten.

Nu zijn deze spanningen in millivoltbereik niet sterk genoeg voor een microcontroller om te lezen en te verwerken. We hebben versterking nodig en kleine veranderingen moeten zichtbaar zijn voor de microcontroller. Om dit te doen is er een speciale module genaamd load cell-versterkers, laten we daar een overzicht van nemen.

Load cell versterker HX711:

Illustratie van HX711 Load cell versterkermodule:

Load cell versterker HX711

De load cell-versterker is gebaseerd op de IC HX711, een 24-bits analoog-naar-digitaal-omzetter die speciaal is ontworpen voor gewichtsmaten. Het heeft verschillende selecteerbare versterkingen 32, 64 en 128 en het werkt op 2,6 tot 5,5 V.
Dit breakout-bord helpt om kleine variatie op de loadcel te detecteren. Deze module vereist de HX711.h-bibliotheek om mee te werken

Arduino of andere microcontrollers.

De loadcel wordt aangesloten op de HX711-module en de module wordt gekoppeld aan Arduino. Op deze manier moet het weegmeetcircuit worden ontwikkeld.

Concluderend, nu weet je wat spanningsmeter is, wat Wheatstone-brug is, temperatuureffecten op de spanningsmeter, temperatuurcompensatie en wat loadcelversterker is.

We hebben het theoretische deel van het weegschaalontwerp volledig begrepen uit de bovenstaande bespreking, laten we nu eens kijken hoe een loascel kan worden gebruikt voor het maken van een praktische weegschaalmachine met Arduino

Een digitale weegschaalmachine ontwerpen met Arduino

In de volgende discussies zullen we leren hoe we een digitale weegschaalmachine kunnen bouwen met Arduino die gewichten kan meten van enkele grammen tot 40 kg (afhankelijk van de specificaties van uw load cell) met een redelijke nauwkeurigheid. We zullen leren over de classificatie van precisie-loadcellen en we zullen het voorgestelde circuit kalibreren en de weegschaalmachine finaliseren.

Opmerking: dit circuit voldoet mogelijk niet aan de normen die vereist zijn voor commerciële implementatie.

Weegschaalmachines worden gebruikt in verschillende soorten handel en onderzoek, variërend van milligrammen tot enkele tonnen. De maximale schaal van de voorgestelde weegschaalmachine hangt af van de specificatie van uw weegcel. Er zijn reeksen van 500 gram, 1 kg, 5 kg, 10 kg, 20 kg en 40 kg etc.

Er zijn verschillende soorten weegcellen, ze bieden een ander nauwkeurigheidsbereik en u moet de geschikte kiezen voor uw project.

Classificatie van weegcelnauwkeurigheidsklasse:

De verschillende nauwkeurigheidsklassen zijn gedefinieerd voor verschillende soorten toepassingen. De onderstaande classificatie is van laagste nauwkeurigheid tot hoogste nauwkeurigheidsbereik.

De loadcellen met een lagere nauwkeurigheid (maar redelijk nauwkeurig) worden geclassificeerd als D1, C1 en C2. Dit is genoeg voor dit project. Deze loadcellen worden gebruikt om het gewicht van zand, cement of water te meten.

Weegcel van klasse C3 wordt gebruikt bij kwaliteitsborging zoals het controleren van het gewicht van kogellagers, machine-constructiedelen enz.

C4, C5, C6 zijn de beste in hun klasse nauwkeurigheid, deze kwaliteiten van loadcellen worden gebruikt om te meten in gram tot microgram. Deze klassen worden gebruikt in toonbankweegschalen, grootschalige productiebewaking, voedselverpakking en laboratoriumgebruik enz.

Laten we nu eens kijken naar de technische details van het project.

Schakelschema:

Laad celverbinding HX711 met Arduino en laadcel.

Laad celverbinding HX711 met Arduino en laadcel.

Het project bestaat uit een Arduino, Load cell en HX711 load cell versterkerprint en een computer. De output kan worden gecontroleerd op de seriële monitor van Arduino IDE.

Het brein van het project is zoals altijd de arduino, je kunt elk Arduino-bordmodel gebruiken. De HX711 is 24 bit ADC, die de kleinste flex kan vinden vanwege het gewicht op de loadcel. Het kan werken van 2,7 V tot 5 V. De stroom wordt geleverd door het Arduino-bord.

De weegcel heeft over het algemeen vier draden, wat de output is van de door Wheatstone brug geconfigureerde spanningsmeter.

De rode draad is E +, zwarte draad is E-, groene draad is A- en witte draad is A +. Sommige HX711-modules specificeren de naam van de klemmen van de weegcel en sommige HX711-modules specificeren de kleuren van de draden, een dergelijk model wordt geïllustreerd in het schakelschema.

De DATA-pin van HX711 is verbonden met pin # 3 van Arduino en Clock-pin van de HX711 is verbonden met pin # 2 van Arduino.

Hoe de weegcel te monteren:

hoe een loadcell te installeren met Arduino

De weegcel heeft vier schroefgaten, twee aan beide zijden. Elke zijde moet stationair zijn voor de beste nauwkeurigheid en kan met een redelijk gewicht op een bos worden geworpen.

Een dun hout of een dunne plaat kan worden gebruikt om het meetgewicht vast te houden, zoals hierboven weergegeven.

Dus wanneer u een gewicht plaatst, buigt de weegcel mee met de spanningsmeter en verandert de weerstand die wordt gemeten door de HX711-module en naar Arduino wordt gevoerd.

Zodra de hardware-installatie is voltooid, gaan we de code uploaden en kalibreren.

Het circuit kalibreren:

Er zijn twee programma's, een is het kalibratieprogramma (het vinden van de kalibratiefactor). Een andere code is het gewichtmeetprogramma, de ijkfactor die is gevonden uit de kalibratieprogramma-code moet worden ingevoerd in het gewichtmeetprogramma.

De kalibratiefactor bepaalt de nauwkeurigheid van de gewichtsmeting.

Download de HX711-bibliotheek hier: github.com/bogde/HX711

Kalibraties Programmacode:

Hoe te kalibreren:

  • Met voltooide hardware-installatie uploadt u de bovenstaande code.
  • Verwijder de dunne plaat of het hout dat wordt gebruikt om het gewicht vast te houden, inclusief de twee schroeven (de andere kant van de weegcel moet op een basis worden bevestigd)
  • Open de seriële monitor.
  • Plaats direct een bekend gewicht op de weegcel, bijvoorbeeld 100 gram.
  • druk op Q, W, E, R om de kalibratiefactor te verhogen met respectievelijk 10,100,1000,10000.
  • druk op A, S, D, F om de kalibratiefactor te verlagen met respectievelijk 10.100.1000.10000.
  • Druk op 'Enter' na elke verhoging of verlaging van de kalibratiefactor.
  • Verhoog of verlaag de kalibratiefactor totdat het juiste gewicht van bekend gewichtsmateriaal verschijnt.
  • De tarrafunctie is om de weegschaal op nul te zetten, dit is handig wanneer je bijvoorbeeld het gewicht van water wilt meten zonder het gewicht van de kom. Plaats eerst de kom, druk op tarra en giet het water in.
  • Noteer de kalibratiefactor en noteer deze nadat het bekende gewicht verschijnt.

Nu kan het onbekende gewichten meten.

Programmacode gewichtsmeting:

zweven CalibrationFactor = -12000

Vervang -12000 door de kalibratiefactor die u hebt gevonden. Het kan een negatief getal of een positief getal zijn.

Upload de bovenstaande code met uw volledige hardware-instellingen en uw weegschaalmachine is klaar.

Weegschaalmachine met LCD-scherm

In het bovenstaande artikel werd een op Arduino gebaseerd weegschaalsysteem uitgelegd met behulp van uw pc, in de volgende sectie zullen we proberen een praktische versie van de weegschaalmachine te bouwen door een 16 x 2 LCD-scherm toe te voegen, zodat we tijdens het meten niet afhankelijk zijn van een pc. gewichten. In dit bericht worden twee versies voorgesteld, een met 'I2C' 16 x 2 LCD-scherm en een zonder 'I2C' 16 x 2 LCD-scherm.

Hier worden twee keuzes gegeven, zodat lezers het ontwerp kunnen kiezen op basis van hun gemak. Het belangrijkste verschil tussen de twee zijn de draadverbindingen met de I2C-adaptermodule, er zijn slechts 4 draden (Vcc, GND, SCL en SDA) nodig voor het functioneren van het LCD-scherm, terwijl je zonder I2C-adapter meerdere draden nodig hebt om verbinding te maken tussen de Arduino en het LCD-scherm.

Beide functies zijn echter exact hetzelfde, sommigen geven de voorkeur aan I2C boven conventionele en sommigen geven de voorkeur aan het omgekeerde, dus hier zijn de beide ontwerpen.

Laten we eens kijken naar het conventionele LCD-ontwerp:

Schakelschema:

arduino, 16 x 2 LCD-scherm en 10K-potentiometer voor het aanpassen van het LCD-schermcontrast

In het bovenstaande schema hebben we de Arduino, 16 x 2 LCD-scherm en 10K-potentiometer voor het aanpassen van het LCD-schermcontrast.

3.3 V kan worden gevoed van Arduino naar LCD-display voor achtergrondverlichting. Er is een drukknop voorzien om de gewichtsaflezing op nul te brengen, deze functie wordt aan het einde in detail uitgelegd.

Dit is slechts een verbinding tussen LCD en Arduino, de verbinding tussen weegcel en weegcelversterker met Arduino wordt in de vorige sectie getoond.

Code voor LCD-weegschaalmachine:

Laten we nu eens kijken hoe we deze weegschaalmachine kunnen gebruiken met een op een I2C-adapter gebaseerd LCD-scherm.

Schakelschema Arduino en LCD-scherm met I2C-adapter:

Arduino en LCD-scherm met I2C-adapter

Hier hebben we gewoon een Arduino en LCD-scherm met I2C-adapter aan de achterkant. Nu zijn de draadverbindingen vereenvoudigd en ongecompliceerd.

Illustratie van I2C-module:

I2C-module

Deze module kan rechtstreeks op de achterkant van een normaal 16 x 2 of zelfs 20 x 4 LCD-scherm worden gesoldeerd en volgt het schematische diagram.

En nogmaals, raadpleeg de vorige sectie voor het aansluiten van load cell, load cell versterker en Arduino.

Download de volgende bibliotheek voor I2C-gebaseerd:

github.com/marcoschwartz/LiquidCrystal_I2C

github.com/PaulStoffregen/Wire

Code voor op I2C gebaseerd Weegschaalcircuit:

NOTITIE:

U moet de kalibratiefactor in de code invoeren voordat u een van de codes naar Arduino uploadt.

float CalibrationFactor = -12000

Het verkrijgen van de kalibratiefactor wordt uitgelegd in een van de voorgaande paragrafen hierboven.

Tarra-functie:

De tarrafunctie in een weegschaal is om de meetwaarden op nul te brengen. Als we bijvoorbeeld een mand hebben waarin de goederen worden geladen, dan is het nettogewicht het gewicht van de mand + het gewicht van de goederen.

Als we op de tarra-knop met mand op de weegcel drukken voordat we goederen laden, wordt het gewicht van de mand verwaarloosd en kunnen we alleen het gewicht van de goederen meten.

Als je vragen hebt over dit op Arduino gebaseerde praktische LCD-weegschaalmachinecircuit, geef dan aan in het commentaargedeelte dat je misschien snel antwoord krijgt.




Vorige: Solid State-schakelaarcircuit voor motorpompen Volgende: Hoe stapsgewijze transformatoren te maken