Inhoudsopgave:
- Stap 1: Monteer de loadcellen
- Stap 2: Controleer de laadcelbedrading
- Stap 3: Bedraad de loadcellen en HX711
- Stap 4: voeg HX711-bibliotheek toe aan uw Arduino IDE
- Stap 5: Kalibreer en weeg
Video: Arduino-weegschaal met loadcellen van 50 kg en HX711-versterker - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:14
Deze Instructable beschrijft hoe u een weegschaal kunt maken met behulp van kant-en-klare onderdelen.
Benodigde materialen:
- Arduino - (dit ontwerp gebruikt een standaard Arduino Uno, andere Arduino-versies of klonen zouden ook moeten werken)
- HX711 op breakout board - Deze microchip is speciaal gemaakt om de signalen van loadcellen te versterken en te rapporteren aan een andere mircocontroller. De loadcellen worden op dit bord aangesloten en dit bord vertelt de Arduino wat de loadcellen meten.
- Weegcellen van 50 kg (x4) - Weegcellen zijn speciaal gevormde metalen onderdelen waarop rekstrookjes zijn gelijmd. De rekstrookjes zijn weerstanden die hun weerstand veranderen wanneer ze worden gebogen. Wanneer het metalen onderdeel buigt, verandert de weerstand van de load cell (de HX711 meet deze kleine weerstandsverandering nauwkeurig). Je kunt de loadcellen en HX711 hier als kit kopen: https://www.amazon.com/Degraw-amplifier-weight-Arduino-Bathroom/dp/B075Y5R7T7/ Als je de kit koopt, laat dan een review achter! Het is erg handig voor toekomstige kopers.
- Stevig vlak montageoppervlak - een stijf stuk hardhout of metaal is ideaal
- Draden in verschillende kleuren voor het verbinden van alle onderdelen
- Voeding voor Arduino
Stap 1: Monteer de loadcellen
Monteer de 4 weegcellen aan de onderkant van de schaal in de vier hoeken. Epoxy werkt goed om ze op hun plaats te houden. Zie het montageschema, deze laat zien welk oppervlak op de basis moet worden gemonteerd en welk oppervlak de vloer moet raken.
Stap 2: Controleer de laadcelbedrading
Het bedradingsschema is gemaakt in de veronderstelling dat de loadcel is geconstrueerd zoals op deze afbeelding.
Om er zeker van te zijn dat je het goed doet, moet je uitzoeken welke twee terminals op de loadcellen de hoogste weerstand tussen hen hebben (bijv. Zwart en wit, om overeen te komen met het schema), bedraad ze in een grote kleurafstemmingslus, zoals BB WW BB WW en bekrachtig (E+/E-) twee tegenover elkaar liggende middenaftakkingen (R) en voel (A+/A-) op het andere paar middenaftakkingen.
Deze pagina op Sackexchange heeft nog betere informatie:
Stap 3: Bedraad de loadcellen en HX711
Zie het bedradingsschema voor het aansluiten van de loadcellen, HX711 en Arduino.
Sommige van de loadceldraden zijn met elkaar verbonden om een zogenaamd Wheatstone-brugarrangement te vormen. Dit kan een beetje verwarrend zijn. Een goede optie om alle loadcellen op een schone, gemakkelijk te begrijpen manier aan te sluiten, is het SparkFun loadcell-combinatorbord -
Door deze opstelling kunnen de belastingen op alle verschillende loadcelsensoren worden gecombineerd en in één keer worden gemeten.
Stap 4: voeg HX711-bibliotheek toe aan uw Arduino IDE
De HX711-bibliotheek is hier beschikbaar:
Zie deze link op de Arduino-website voor instructies over het toevoegen van de bibliotheek aan uw Arduino IDE:
Stap 5: Kalibreer en weeg
Sparkfun heeft geweldige Arduino-programma's om de schaal uit te voeren. De meest up-to-date versies zijn beschikbaar op GitHub en hieronder herdrukt:
De eerste softwarestap is het bepalen van de kalibratiefactoren voor de weegschaal. Voer hiervoor deze code uit:
/*
Voorbeeld met het SparkFun HX711 breakoutboard met een weegschaal Door: Nathan Seidle SparkFun Electronics Datum: 19 november 2014 Licentie: Deze code is publiek domein, maar je koopt een biertje voor me als je dit gebruikt en we ontmoeten elkaar ooit (Beerware-licentie). Dit is de kalibratieschets. Gebruik het om de kalibratiefactor te bepalen die in het hoofdvoorbeeld wordt gebruikt. Het geeft ook de zero_factor weer die nuttig is voor projecten met een permanente massa op de schaal tussen vermogenscycli. Stel uw weegschaal in en start de schets ZONDER een gewicht op de weegschaal Zodra de metingen worden weergegeven, plaatst u het gewicht op de weegschaal Druk op +/- of a/z om de kalibratiefactor aan te passen totdat de uitvoerwaarden overeenkomen met het bekende gewicht Gebruik deze kalibratiefactor op de voorbeeldschets In dit voorbeeld wordt uitgegaan van ponden (lbs). Als u de voorkeur geeft aan kilogrammen, wijzigt u de Serial.print("lbs"); lijn naar kg. De kalibratiefactor zal aanzienlijk verschillen, maar is lineair gerelateerd aan lbs (1 lbs = 0,453592 kg). Uw kalibratiefactor kan zeer positief of zeer negatief zijn. Het hangt allemaal af van de instelling van uw weegschaalsysteem en de richting waarin de sensoren afbuigen vanuit de nultoestand. Arduino pin 2 -> HX711 CLK 3 -> DOUT 5V -> VCC GND -> GND De meeste pins op de Arduino Uno zijn compatibel met DOUT/CLK. Het HX711-bord kan worden gevoed van 2,7V tot 5V, dus de Arduino 5V-voeding zou in orde moeten zijn. */ #include "HX711.h" #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 HX711 schaal; float kalibratiefactor = -7050; //-7050 werkte voor mijn 440lb max scale setup void setup() {Serial.begin(9600); Serial.println ("HX711 kalibratieschets"); Serial.println("Verwijder al het gewicht van de weegschaal"); Serial.println("Nadat de metingen zijn begonnen, plaatst u het bekende gewicht op de weegschaal"); Serial.println("Druk op + of a om de kalibratiefactor te verhogen"); Serial.println("Druk op - of z om de kalibratiefactor te verlagen"); scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); schaal.set_schaal(); schaal.tarra(); // Stel de schaal opnieuw in op 0 long zero_factor = scale.read_average (); //Krijg een baselinewaarde Serial.print("Zero factor: "); //Dit kan worden gebruikt om de noodzaak om de weegschaal te tarreren te verwijderen. Nuttig in permanente schaalprojecten. Serial.println(nul_factor); } void loop() { scale.set_scale(calibration_factor); // Pas deze kalibratiefactor aan Serial.print ("Lezen: "); Serial.print(scale.get_units(), 1); Serial.print ("lbs"); // Wijzig dit in kg en pas de kalibratiefactor opnieuw aan als u SI-eenheden volgt zoals een verstandig persoon Serial.print ("kalibratiefactor: "); Serial.print (kalibratiefactor); Serieel.println(); if(Serial.available()) { char temp = Serial.read(); if(temp == '+' || temp == 'a') kalibratiefactor += 10; anders if(temp == '-' || temp == 'z') kalibratiefactor -= 10; } }
Nadat u de weegschaal hebt gekalibreerd, kunt u dit voorbeeldprogramma uitvoeren en het vervolgens voor uw eigen doeleinden hacken:
/*
Voorbeeld met het SparkFun HX711 breakoutboard met een weegschaal Door: Nathan Seidle SparkFun Electronics Datum: 19 november 2014 Licentie: Deze code is publiek domein, maar je koopt een biertje voor me als je dit gebruikt en we ontmoeten elkaar ooit (Beerware-licentie). Dit voorbeeld demonstreert de uitvoer van de basisschaal. Zie de kalibratieschets om de kalibratiefactor voor uw specifieke loadcel-opstelling te krijgen. Deze voorbeeldcode gebruikt de uitstekende bibliotheek van bogde:"https://github.com/bogde/HX711" De bibliotheek van bogde wordt vrijgegeven onder een GNU GENERAL PUBLIC LICENSE De HX711 doet één ding goed: loadcellen lezen. Het breakout board is compatibel met elke op tarwesteen gebaseerde loadcel waarmee een gebruiker alles kan meten, van enkele grammen tot tientallen tonnen. Arduino pin 2 -> HX711 CLK 3 -> DAT 5V -> VCC GND -> GND Het HX711-bord kan worden gevoed van 2,7V tot 5V, dus de Arduino 5V-voeding zou in orde moeten zijn. */ #include "HX711.h" #define Calibration_factor -7050.0 //Deze waarde wordt verkregen met behulp van de SparkFun_HX711_Calibration sketch #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 HX711 schaal; void setup() { Serial.begin(9600); Serial.println ("HX711 schaaldemo"); scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); scale.set_scale (kalibratiefactor); //Deze waarde wordt verkregen met behulp van de SparkFun_HX711_Calibration sketch scale.tare(); //Ervan uitgaande dat er bij het opstarten geen gewicht op de weegschaal staat, stelt u de weegschaal opnieuw in op 0 Serial.println ("Lezingen:"); } void loop() { Serial.print("Lezen: "); Serial.print(scale.get_units(), 1); //scale.get_units() retourneert een float Serial.print("lbs"); //U kunt dit wijzigen in kg, maar u moet de kalibratiefactor Serial.println(); }
Aanbevolen:
Meting van versnelling met behulp van H3LIS331DL en Arduino Nano: 4 stappen
Meting van versnelling met behulp van H3LIS331DL en Arduino Nano: H3LIS331DL, is een low-power high-performance 3-assige lineaire versnellingsmeter die behoort tot de "nano" familie, met digitale I²C seriële interface. H3LIS331DL heeft door de gebruiker selecteerbare volledige schalen van ±100g/±200g/±400g en is in staat om versnellingen te meten met
Live bewaking van de waarde van uw sensor van overal ter wereld: 4 stappen
Live monitoring van de waarde van uw sensor van overal ter wereld: ik kreeg een bericht op het WhatsApp-nummer van techneuten met betrekking tot hulp bij het maken van één project. Het project was om de druk op de druksensor te meten en deze op een smartphone weer te geven. Dus ik hielp bij het maken van dat project en besloot een bijlesdocent te maken
Verdubbel de levensduur van de batterij van de DX3-radio van Spektrum voor minder dan $ 20: 11 stappen
Verdubbel de levensduur van de batterij van de DX3-radio van Spektrum voor minder dan $ 20: ik kreeg het idee hiervoor voor het eerst op de draad voor de DX6/7 op RCGRoups.com-forums. Ik rijd met nitro-auto's, dus kocht ik een DX3. Ik heb de radio een tijdje gebruikt en mijn batterijduur was aan de betere kant van de meeste radio's - maar de DX7-bezitters begonnen
Hoe u gebruikersniveaus van NUMA toevoegt aan uw exemplaar van N met behulp van NumADD Firefox AddOn: 4 stappen
Gebruikersniveaus van NUMA toevoegen aan uw exemplaar van N NumADD Firefox-add-on gebruiken: Elke gebruiker van Metanet's N-database op gebruikersniveau NUMA weet hoe onhandig de interface is voor het kopiëren van door gebruikers gemaakte niveaus naar uw exemplaar van het spel. NumADD, elimineert de noodzaak van kopiëren en plakken en maakt het overzetten van niveaus het werk van één muisklik
Een batterijpakket van 4,5 volt maken van een batterij van 9 V: 4 stappen
Een 4,5 volt batterijpakket maken van een 9V-batterij: deze instructie gaat helemaal over het splitsen van een 9V-batterij in 2 kleinere 4,5V-batterijpakketten. De belangrijkste reden om dit te doen is 1. Je wilt 4,5 volt 2. Je wilt fysiek iets kleiners dan een 9V batterij