Indholdsfortegnelse:

Arduino badevægt med 50 kg vejeceller og HX711 forstærker: 5 trin (med billeder)
Arduino badevægt med 50 kg vejeceller og HX711 forstærker: 5 trin (med billeder)

Video: Arduino badevægt med 50 kg vejeceller og HX711 forstærker: 5 trin (med billeder)

Video: Arduino badevægt med 50 kg vejeceller og HX711 forstærker: 5 trin (med billeder)
Video: Весы AEG PW 5570 FA аналитические 2024, Juli
Anonim
Arduino badevægt med 50 kg vejeceller og HX711 forstærker
Arduino badevægt med 50 kg vejeceller og HX711 forstærker
Arduino badevægt med 50 kg vejeceller og HX711 forstærker
Arduino badevægt med 50 kg vejeceller og HX711 forstærker

Denne instruktionsbog beskriver, hvordan man laver en vejningsvægt ved hjælp af let tilgængelige dele fra hylden.

Nødvendige materialer:

  1. Arduino - (dette design bruger en standard Arduino Uno, andre Arduino -versioner eller kloner burde også fungere)
  2. HX711 på breakout board - Denne mikrochip er specielt fremstillet til at forstærke signalerne fra vejeceller og rapportere dem til en anden mircocontroller. Vejecellerne tilsluttes dette kort, og dette kort fortæller Arduinoen, hvad vejecellerne måler.
  3. 50 kg vejeceller (x4) - Vejeceller er specielt formede metaldele, der har lim fra målere. Belastningsmålerne er modstande, der ændrer deres modstandskraft, når de er bøjede. Når metaldelen bøjer, ændres belastningscellens modstand (HX711 måler denne lille ændring i modstand nøjagtigt). Du kan købe vejeceller og HX711 som et kit her: https://www.amazon.com/Degraw-amplifier-weight-Arduino-Bathroom/dp/B075Y5R7T7/ Hvis du køber sættet, bedes du skrive en anmeldelse! Det er virkelig nyttigt for fremtidige købere.
  4. Robust flad monteringsoverflade - et stift stykke hårdttræ eller metal er ideelt
  5. Ledninger i forskellige farver til tilslutning af alle delene
  6. Strømforsyning til Arduino

Trin 1: Monter vejecellerne

Monter vejecellerne
Monter vejecellerne
Monter vejecellerne
Monter vejecellerne

Monter de 4 vejeceller i bunden af skalaen i de fire hjørner. Epoxy fungerer godt for at holde dem på plads. Se monteringsdiagrammet, det viser hvilken overflade der skal monteres på bunden, og hvilken overflade der skal røre gulvet.

Trin 2: Kontroller ledningscelleforbindelserne

Kontroller ledningscelleforbindelsen
Kontroller ledningscelleforbindelsen

Ledningsdiagrammet er lavet under forudsætning af, at vejecellen er konstrueret som dette billede.

For at sikre, at du får det rigtigt, skal du sørge for at finde ud af, hvilke to terminaler på vejecellerne, der har den højeste modstand mellem dem (f.eks. Sort og hvid, for at matche skematisk), tilslut dem i en stor farve matchende sløjfe, som BB WW BB WW og spænd derefter (E+/E-) to modsatte midterhaner (R) og sense (A+/A-) på det andet par midterhaner.

Denne side på Sackexchange har endnu bedre oplysninger:

Trin 3: Tilslut vejecellerne og HX711

Tilslut vejecellerne og HX711
Tilslut vejecellerne og HX711
Tilslut vejecellerne og HX711
Tilslut vejecellerne og HX711
Tilslut vejecellerne og HX711
Tilslut vejecellerne og HX711

Se ledningsdiagrammet for tilslutning af vejeceller, HX711 og Arduino.

Nogle af vejecelletrådene er forbundet med hinanden for at danne det, der kaldes et Wheatstone -broarrangement. Dette kan blive lidt forvirrende. En god mulighed for at forbinde alle vejeceller på en ren, letforståelig måde er SparkFun -vejecellekombinatortavlen -

Dette arrangement gør det muligt at kombinere og måle belastningerne på alle de forskellige vejecellesensorer på én gang.

Trin 4: Føj HX711 -bibliotek til din Arduino IDE

HX711 -biblioteket er tilgængeligt her:

Se dette link på Arduino -webstedet for instruktioner om, hvordan du tilføjer biblioteket til din Arduino IDE:

Trin 5: Kalibrer og vej

Sparkfun har gode Arduino -programmer til at køre skalaen. De mest opdaterede versioner er tilgængelige på GitHub og genoptrykt nedenfor:

Det første softwaretrin er at bestemme kalibreringsfaktorer for skalaen. For at gøre dette skal du køre denne kode:

/*

Eksempel ved brug af SparkFun HX711 breakout board med en skala Af: Nathan Seidle SparkFun Electronics Dato: 19. november 2014 Licens: Denne kode er offentligt domæne, men du køber mig en øl, hvis du bruger dette, og vi mødes en dag (Beerware -licens). Dette er kalibreringsskitsen. Brug den til at bestemme kalibreringsfaktoren, som hovedeksemplet bruger. Det udsender også zero_factor, der er nyttig til projekter, der har en permanent masse på skalaen mellem effektcyklusser. Opsæt din vægt og start skitsen UDEN en vægt på vægten Når aflæsninger vises, skal vægten placeres på vægten Tryk på +/- eller a/z for at justere kalibreringsfaktoren, indtil udlæsningerne svarer til den kendte vægt. Brug denne kalibreringsfaktor på skitsen Dette eksempel antager pund (lbs). Hvis du foretrækker kilogram, skal du ændre Serial.print ("lbs"); linje til kg. Kalibreringsfaktoren vil være væsentligt forskellig, men den vil være lineært relateret til lbs (1 lbs = 0,453592 kg). Din kalibreringsfaktor kan være meget positiv eller meget negativ. Det hele afhænger af opsætningen af dit skala system og den retning, sensorerne afbøjer fra nul -tilstand Denne eksempelkode bruger bogdes fremragende bibliotek: "https://github.com/bogde/HX711" bogdes bibliotek frigives under en GNU GENERAL PUBLIC LICENSE Arduino pin 2 -> HX711 CLK 3 -> DOUT 5V -> VCC GND -> GND Næsten enhver pin på Arduino Uno vil være kompatibel med DOUT/CLK. HX711 -kortet kan drives fra 2,7V til 5V, så Arduino 5V -strømmen skal være fin. */ #inklusiv "HX711.h" #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 HX711 skala; float kalibrering_faktor = -7050; //-7050 fungerede for min 440lb max skala setup void setup () {Serial.begin (9600); Serial.println ("HX711 kalibreringsskitse"); Serial.println ("Fjern al vægt fra vægten"); Serial.println ("Efter aflæsningerne påbegyndes, placeres kendt vægt på skalaen"); Serial.println ("Tryk på + eller a for at øge kalibreringsfaktoren"); Serial.println ("Tryk på - eller z for at reducere kalibreringsfaktoren"); scale.begin (LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); scale.set_scale (); scale.tare (); // Nulstil skalaen til 0 lang zero_factor = scale.read_average (); // Få en baseline læsning Serial.print ("Nul faktor:"); // Dette kan bruges til at fjerne behovet for at tarere vægten. Nyttig i permanente projekter. Serial.println (zero_factor); } void loop () {scale.set_scale (calibration_factor); // Juster til denne kalibreringsfaktor Serial.print ("Reading:"); Serial.print (scale.get_units (), 1); Serial.print ("lbs"); // Skift dette til kg, og juster kalibreringsfaktoren igen, hvis du følger SI-enheder som en fornuftig person Serial.print ("calibration_factor:"); Serial.print (kalibreringsfaktor); Serial.println (); hvis (Serial.available ()) {char temp = Serial.read (); hvis (temp == ' +' || temp == 'a') kalibrering_faktor += 10; ellers hvis (temp == ' -' || temp == 'z') kalibrering_faktor -= 10; }}

Efter kalibrering af skalaen kan du køre dette prøveprogram og derefter hacke det til dine egne formål:

/*

Eksempel ved brug af SparkFun HX711 breakout board med en skala Af: Nathan Seidle SparkFun Electronics Dato: 19. november 2014 Licens: Denne kode er offentligt domæne, men du køber mig en øl, hvis du bruger dette, og vi mødes en dag (Beerware -licens). Dette eksempel viser grundlæggende skala output. Se kalibreringsskitsen for at få kalibreringsfaktoren til din specifikke vejecelleopsætning. Denne eksempelkode bruger bogdes fremragende bibliotek: "https://github.com/bogde/HX711" bogdes bibliotek frigives under en GNU GENERAL PUBLIC LICENSE HX711 gør én ting godt: læs vejeceller. Breakout boardet er kompatibelt med enhver hvede-sten bro baseret vejecelle, som skal gøre det muligt for en bruger at måle alt fra et par gram til titalls tons. 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 fin. */#include "HX711.h" #define calibration_factor -7050.0 // Denne værdi opnås ved hjælp af SparkFun_HX711_Calibration sketch #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 HX711 skala; ugyldig opsætning () {Serial.begin (9600); Serial.println ("demo i HX711 -skala"); scale.begin (LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); scale.set_scale (kalibreringsfaktor); // Denne værdi opnås ved at bruge SparkFun_HX711_Calibration sketch scale.tare (); // Forudsat at der ikke er vægt på vægten ved opstart, skal du nulstille vægten 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 ændre dette til kg, men du skal refaktorere calibration_factor Serial.println (); }

Anbefalede: