Innholdsfortegnelse:

Arduino badevekt med 50 kg lastceller og HX711 forsterker: 5 trinn (med bilder)
Arduino badevekt med 50 kg lastceller og HX711 forsterker: 5 trinn (med bilder)

Video: Arduino badevekt med 50 kg lastceller og HX711 forsterker: 5 trinn (med bilder)

Video: Arduino badevekt med 50 kg lastceller og HX711 forsterker: 5 trinn (med bilder)
Video: 50kg load cell #shorts 2024, Juli
Anonim
Arduino badevekt med 50 kg lastceller og HX711 forsterker
Arduino badevekt med 50 kg lastceller og HX711 forsterker
Arduino badevekt med 50 kg lastceller og HX711 forsterker
Arduino badevekt med 50 kg lastceller og HX711 forsterker

Denne instruksjonsboken beskriver hvordan du lager en veiervekt ved å bruke lett tilgjengelige hyller.

Materialer som trengs:

  1. Arduino - (dette designet bruker en standard Arduino Uno, andre Arduino -versjoner eller kloner skal også fungere)
  2. HX711 på breakout board - Denne mikrobrikken er spesielt laget for å forsterke signalene fra lastceller og rapportere dem til en annen mircocontroller. Lastcellene kobles til dette brettet, og dette brettet forteller Arduino hva lastcellene måler.
  3. 50 kg lastceller (x4) - Lastceller er spesialformede metaldeler som har strekkmåler lim på seg. Strekkmålere er motstander som endrer motstanden når de er bøyd. Når metalldelen bøyer seg, endres motstanden til lastcellen (HX711 måler denne lille endringen i motstand nøyaktig). Du kan kjøpe lastcellene og HX711 som et sett her: https://www.amazon.com/Degraw-amplifier-weight-Arduino-Bathroom/dp/B075Y5R7T7/ Legg igjen en anmeldelse! Det er veldig nyttig for fremtidige kjøpere.
  4. Robust flat monteringsflate - et stivt stykke tre eller metall er ideelt
  5. Ledninger i forskjellige farger for tilkobling av alle delene
  6. Strømforsyning til Arduino

Trinn 1: Monter lastcellene

Monter lastcellene
Monter lastcellene
Monter lastcellene
Monter lastcellene

Monter de fire lastcellene til bunnen av skalaen i de fire hjørnene. Epoxy fungerer godt for å holde dem på plass. Se monteringsdiagrammet, det viser hvilken overflate som skal monteres på basen og hvilken overflate som skal berøre gulvet.

Trinn 2: Kontroller kabelen til lastcellen

Kontroller kabelen til lastcellen
Kontroller kabelen til lastcellen

Koblingsskjemaet er laget forutsatt at lastcellen er konstruert som dette bildet.

For å være sikker på at du får det riktig, må du finne ut hvilke to terminaler på lastcellene som har den høyeste motstanden mellom dem (f.eks. Svart og hvitt, for å matche skjematisk), koble dem til en stor fargetilpassende sløyfe, som BB WW BB WW og excite (E+/E-) to motsatte midtkraner (R) og sans (A+/A-) på det andre paret av midtkraner.

Denne siden på Sackexchange har enda bedre informasjon:

Trinn 3: Koble til lastcellene og HX711

Koble lastcellene og HX711
Koble lastcellene og HX711
Koble lastcellene og HX711
Koble lastcellene og HX711
Koble til lastcellene og HX711
Koble til lastcellene og HX711

Se koblingsskjemaet for hvordan du kobler lastcellene, HX711 og Arduino.

Noen av lastcelletrådene er koblet sammen for å danne det som kalles et Wheatstone -broarrangement. Dette kan bli litt forvirrende. Et godt alternativ for å koble alle lastcellene på en ren, lettfattelig måte er SparkFun -lastcellekombinatortavlen -

Dette arrangementet gjør at belastningen på alle de forskjellige lastcellesensorene kan kombineres og måles samtidig.

Trinn 4: Legg til HX711 -biblioteket i Arduino IDE

HX711 -biblioteket er tilgjengelig her:

Se denne lenken på Arduino -nettstedet for instruksjoner om hvordan du legger til biblioteket i Arduino IDE:

Trinn 5: Kalibrer og vei

Sparkfun har flotte Arduino -programmer for å kjøre skalaen. De mest oppdaterte versjonene er tilgjengelige på GitHub og trykt på nytt nedenfor:

Det første programvaretrinnet er å bestemme kalibreringsfaktorer for skalaen. For å gjøre dette, kjør denne koden:

/*

Eksempel på bruk av SparkFun HX711 breakout board med en skala Av: Nathan Seidle SparkFun Electronics Dato: 19. november 2014 Lisens: Denne koden er offentlig domene, men du kjøper meg en øl hvis du bruker dette og vi møtes en dag (Beerware -lisens). Dette er kalibreringsskissen. Bruk den til å bestemme kalibreringsfaktoren som hovedeksemplet bruker. Den sender også ut zero_factor som er nyttig for prosjekter som har en permanent masse på skalaen mellom kraftsykluser. Sett opp vekten din og start skissen UTEN en vekt på skalaen Når avlesningene vises, legg vekten på skalaen Trykk på +/- eller a/z for å justere kalibrerings_faktoren til utmatingsavlesningene samsvarer med den kjente vekten. Bruk denne kalibrerings_faktoren på eksempelskissen Dette eksemplet forutsetter pounds (lbs). Hvis du foretrekker kilo, må du endre Serial.print ("lbs"); linje til kg. Kalibreringsfaktoren vil være vesentlig forskjellig, men den vil være lineært relatert til lbs (1 lbs = 0,453592 kg). Kalibreringsfaktoren din kan være veldig positiv eller veldig negativ. Det hele avhenger av oppsettet av ditt skala system og retningen sensorene avbøyer fra null -tilstanden Denne eksempelkoden bruker Bogdes utmerkede bibliotek: "https://github.com/bogde/HX711" Bogdes bibliotek er utgitt under en GNU GENERAL PUBLIC LICENSE Arduino pin 2 -> HX711 CLK 3 -> DOUT 5V -> VCC GND -> GND De fleste pins på Arduino Uno vil være kompatible med DOUT/CLK. HX711 -kortet kan drives fra 2,7V til 5V, så Arduino 5V -strømmen skal være bra. */ #include "HX711.h" #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 HX711 skala; float calibration_factor = -7050; //-7050 fungerte for mitt 440lb max scale setup void setup () {Serial.begin (9600); Serial.println ("HX711 kalibreringsskisse"); Serial.println ("Fjern all vekt fra vekten"); Serial.println ("Etter at avlesningene er startet, legg vekt på skalaen"); Serial.println ("Trykk på + eller a for å øke kalibreringsfaktoren"); Serial.println ("Trykk - eller z for å redusere kalibreringsfaktoren"); scale.begin (LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); scale.set_scale (); scale.tare (); // Tilbakestill skalaen til 0 long zero_factor = scale.read_average (); // Få en grunnlinje som leser Serial.print ("Null faktor:"); // Dette kan brukes til å fjerne behovet for å tarere vekten. Nyttig i prosjekter i permanent skala. Serial.println (zero_factor); } void loop () {scale.set_scale (calibration_factor); // Juster til denne kalibreringsfaktoren Serial.print ("Reading:"); Serial.print (scale.get_units (), 1); Serial.print ("lbs"); // Endre dette til kg og juster kalibreringsfaktoren på nytt hvis du følger SI-enheter som en fornuftig person Serial.print ("calibration_factor:"); Serial.print (kalibrerings_faktor); Serial.println (); if (Serial.available ()) {char temp = Serial.read (); if (temp == ' +' || temp == 'a') kalibrering_faktor += 10; ellers hvis (temp == ' -' || temp == 'z') kalibrering_faktor -= 10; }}

Etter kalibrering av skalaen kan du kjøre dette prøveprogrammet og deretter hacke det for dine egne formål:

/*

Eksempel på bruk av SparkFun HX711 breakout board med en skala Av: Nathan Seidle SparkFun Electronics Dato: 19. november 2014 Lisens: Denne koden er offentlig domene, men du kjøper meg en øl hvis du bruker dette og vi møtes en dag (Beerware -lisens). Dette eksemplet viser grunnleggende skalautgang. Se kalibreringsskissen for å få kalibreringsfaktoren for ditt spesifikke oppsett av lastceller. Denne eksempelkoden bruker bogdes utmerkede bibliotek: "https://github.com/bogde/HX711" bogdes bibliotek er utgitt under en GNU GENERAL PUBLIC LICENSE HX711 gjør en ting godt: les lastceller. Utbruddskortet er kompatibelt med alle hvetesteinbrobaserte lastceller som skal tillate en bruker å måle alt fra noen få gram til titalls tonn. Arduino pin 2 -> HX711 CLK 3 -> DAT 5V -> VCC GND -> GND HX711 -kortet kan drives fra 2,7V til 5V, så Arduino 5V -strømmen skal være bra. */#include "HX711.h" #define calibration_factor -7050.0 // Denne verdien oppnås ved hjelp av SparkFun_HX711_Calibration sketch #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 HX711 skala; ugyldig oppsett () {Serial.begin (9600); Serial.println ("demo i HX711 -skala"); scale.begin (LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); scale.set_scale (calibration_factor); // Denne verdien oppnås ved å bruke SparkFun_HX711_Calibration sketch scale.tare (); // Forutsatt at det ikke er noen vekt på vekten ved oppstart, tilbakestiller du vekten til 0 Serial.println ("Readings:"); } void loop () {Serial.print ("Reading:"); Serial.print (scale.get_units (), 1); //scale.get_units () returnerer en float Serial.print ("lbs"); // Du kan endre dette til kg, men du må refaktorere calibration_factor Serial.println (); }

Anbefalt: