Spisu treści:

Skala Arduino z ogniwem obciążnikowym 5 kg i wzmacniaczem HX711: 4 kroki (ze zdjęciami)
Skala Arduino z ogniwem obciążnikowym 5 kg i wzmacniaczem HX711: 4 kroki (ze zdjęciami)

Wideo: Skala Arduino z ogniwem obciążnikowym 5 kg i wzmacniaczem HX711: 4 kroki (ze zdjęciami)

Wideo: Skala Arduino z ogniwem obciążnikowym 5 kg i wzmacniaczem HX711: 4 kroki (ze zdjęciami)
Wideo: jak przetestować ogniwo obciążnikowe za pomocą multimetru, połączenia okablowania 2024, Listopad
Anonim
Skala Arduino z ogniwem obciążnikowym 5 kg i wzmacniaczem HX711
Skala Arduino z ogniwem obciążnikowym 5 kg i wzmacniaczem HX711
Skala Arduino z ogniwem obciążnikowym 5 kg i wzmacniaczem HX711
Skala Arduino z ogniwem obciążnikowym 5 kg i wzmacniaczem HX711

Ta instrukcja opisuje, jak zrobić małą wagę przy użyciu łatwo dostępnych części z półki.

Potrzebne materiały:

1. Arduino - ta konstrukcja wykorzystuje standardowe Arduino Uno, inne wersje Arduino lub klony również powinny działać

2. HX711 na płytce zaciskowej - ten mikrochip jest specjalnie stworzony do wzmacniania sygnałów z ogniw obciążnikowych i przesyłania ich do innego mikrokontrolera. Ogniwa obciążnikowe podłącza się do tej płyty, a ta płyta informuje Arduino, co mierzą ogniwa obciążeniowe.

3. Ogniwo obciążnikowe 5 kg - Ogniwa obciążnikowe to specjalnie ukształtowane metalowe części, do których przyklejone są tensometry. Tensometry to rezystory, które zmieniają swoją rezystancję, gdy są zginane. Kiedy metalowa część wygina się, zmienia się rezystancja ogniwa obciążnikowego (HX711 dokładnie mierzy tę niewielką zmianę rezystancji). HX711 i tensometr można kupić tutaj:

Jeśli kupisz zestaw, zostaw recenzję! Jest to bardzo pomocne dla przyszłych nabywców.

4. Solidna płaska powierzchnia montażowa (x2) - sztywny kawałek twardego drewna lub metalu jest idealny.

5. Przewody w różnych kolorach do łączenia wszystkich części

6. Zasilanie dla Arduino

Krok 1: Zamontuj ogniwo obciążnikowe

Zamontuj ogniwo obciążnikowe
Zamontuj ogniwo obciążnikowe

Najpierw zamontujemy ogniwo obciążnikowe. Twój wierzchowiec będzie wyjątkowy, ale oto wskazówki, których musisz przestrzegać:

1. Aluminiowy czujnik wagowy powinien mieć 4 gwintowane otwory i etykietę wskazującą kierunek siły. Zamontuj stronę bez etykiety do powierzchni nieruchomej i zamontuj stronę z etykietą do powierzchni ruchomej. Strzałka po stronie z etykietą powinna wskazywać kierunek, w którym platforma będzie się przesuwać po przyłożeniu obciążenia.

2. Płyta montażowa i płyta ruchoma powinny być jak najbardziej sztywne

3. Upewnij się, że pomiędzy płytami montażowymi a ogniwem obciążnikowym umieściłeś jakąś formę sztywnych przekładek. Zarówno elementy dystansowe, jak i podkładki działają dobrze. Celem jest, aby każda siła przyłożona do ruchomej płyty powodowała zginanie i skręcanie ogniwa obciążnikowego. Bez przekładek obciążenie byłoby przenoszone bezpośrednio z płyty ruchomej na płytę stałą bez wpływu na ogniwo obciążnikowe.

Krok 2: Podłącz ogniwa obciążnikowe i HX711

Podłącz ogniwa obciążnikowe i HX711
Podłącz ogniwa obciążnikowe i HX711

Zobacz schemat połączeń, aby dowiedzieć się, jak podłączyć ogniwa obciążnikowe, HX711 i Arduino.

W aluminiowych czujnikach tensometrycznych wiele tensometrów jest już połączonych ze sobą w celu utworzenia mostka Wheatstone'a. Wszystko, co musisz zrobić, to podłączyć przewody do płyty HX711 we właściwej orientacji.

Krok 3: Dodaj bibliotekę HX711 do swojego Arduino IDE

Biblioteka HX711 jest dostępna tutaj:

Zobacz ten link na stronie Arduino, aby uzyskać instrukcje, jak dodać bibliotekę do swojego Arduino IDE:

Krok 4: Kalibracja i ważenie

Kalibruj i zważ!
Kalibruj i zważ!

Sparkfun ma świetne programy Arduino do obsługi wagi. Najbardziej aktualne wersje są dostępne na GitHub i przedrukowane poniżej:

Pierwszym krokiem oprogramowania jest określenie współczynników kalibracji wagi. Aby to zrobić, uruchom ten kod:

/*

Przykład użycia tabliczki zaciskowej SparkFun HX711 z wagą Autor: Nathan Seidle SparkFun Electronics Data: 19.11.2014 Licencja: Ten kod jest domeną publiczną, ale kupujesz mi piwo, jeśli tego użyjesz i pewnego dnia się spotkamy (licencja Beerware). To jest szkic kalibracyjny. Użyj go, aby określić współczynnik_kalibracji, którego używa główny przykład. Wyprowadza również zero_factor przydatny w projektach, które mają stałą masę na skali między cyklami zasilania. Skonfiguruj swoją wagę i rozpocznij szkic BEZ ciężaru na wadze Po wyświetleniu odczytów umieść ciężar na wadze Naciśnij +/- lub a/z, aby dostosować współczynnik_kalibracji, aż odczyty wyjściowe będą odpowiadać znanej masie Użyj tego współczynnika_kalibracji na przykładowym szkicu W tym przykładzie przyjęto funty (lbs). Jeśli wolisz kilogramy, zmień Serial.print(" lbs"); linia do kg. Współczynnik kalibracji będzie znacząco różny, ale będzie liniowo powiązany z funtami (1 funt = 0,453592 kg). Twój współczynnik kalibracji może być bardzo dodatni lub bardzo ujemny. Wszystko zależy od konfiguracji systemu wagowego i kierunku, w jakim czujniki odchylają się od stanu zerowego. Ten przykładowy kod wykorzystuje doskonałą bibliotekę bogde: „https://github.com/bogde/HX711” Biblioteka bogde jest wydana na licencji GNU GENERAL PUBLIC LICENSE Pin 2 Arduino -> HX711 CLK 3 -> DOUT 5V -> VCC GND -> GND Większość pinów Arduino Uno będzie kompatybilna z DOUT/CLK. Płytka HX711 może być zasilana od 2,7 V do 5 V, więc zasilanie Arduino 5 V powinno być w porządku. */ #include "HX711.h" #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 HX711 skala; współczynnik_kalibracji pływaka = -7050; //-7050 działało dla mojej konfiguracji maksymalnej skali 440lb void setup() { Serial.begin(9600); Serial.println("Szkic kalibracji HX711"); Serial.println("Usuń cały ciężar z wagi"); Serial.println("Po rozpoczęciu odczytów umieść znaną masę na wadze"); Serial.println("Naciśnij + lub a, aby zwiększyć współczynnik kalibracji"); Serial.println("Naciśnij - lub z, aby zmniejszyć współczynnik kalibracji"); scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); scale.set_scale(); skala.tara(); //Zresetuj skalę do 0 long zero_factor = scale.read_average(); //Uzyskaj odczyt bazowy Serial.print("Współczynnik zerowy: "); //Może być użyty do usunięcia potrzeby tarowania wagi. Przydatne w projektach o stałej skali. Serial.println(zero_factor); } void loop() { scale.set_scale(calibration_factor); //Dostosuj do tego współczynnika kalibracji Serial.print("Odczyt: "); Serial.print(scale.get_units(), 1); Serial.print(" funty"); //Zmień to na kg i ponownie dostosuj współczynnik kalibracji, jeśli postępujesz zgodnie z jednostkami SI, jak osoba rozsądna Serial.print(" Calibration_factor: "); Serial.print(współczynnik_kalibracji); Serial.println(); if(Serial.available()) { char temp = Serial.read(); if(temp == '+' || temp == 'a') współczynnik_kalibracji += 10; w przeciwnym razie if(temp == '-' || temp == 'z') współczynnik_kalibracji -= 10; } }

Po skalibrowaniu wagi możesz uruchomić ten przykładowy program, a następnie zhakować go do własnych celów:

/*

Przykład użycia tabliczki zaciskowej SparkFun HX711 z wagą Autor: Nathan Seidle SparkFun Electronics Data: 19.11.2014 Licencja: Ten kod jest domeną publiczną, ale kupujesz mi piwo, jeśli tego użyjesz i pewnego dnia się spotkamy (licencja Beerware). Ten przykład ilustruje podstawowe wyniki na skali. Zobacz szkic kalibracyjny, aby uzyskać współczynnik kalibracji dla określonej konfiguracji ogniwa obciążnikowego. Ten przykładowy kod używa doskonałej biblioteki bogde: "https://github.com/bogde/HX711" Biblioteka bogde jest wydana na licencji GNU GENERAL PUBLIC LICENSE HX711 robi jedną rzecz dobrze: odczytuje komórki obciążenia. Tablica zaciskowa jest kompatybilna z dowolnym ogniwem obciążnikowym opartym na mostku pszenicznym, który powinien pozwolić użytkownikowi zmierzyć wszystko od kilku gramów do kilkudziesięciu ton. Pin 2 Arduino -> HX711 CLK 3 -> DAT 5V -> VCC GND -> GND Płytka HX711 może być zasilana od 2,7 V do 5 V, więc zasilanie Arduino 5 V powinno być w porządku. */ #include "HX711.h" #define Calibration_factor -7050.0 //Ta wartość jest uzyskiwana za pomocą SparkFun_HX711_Calibration sketch #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 HX711 scale; void setup() { Serial.begin(9600); Serial.println("Pokaz wagi HX711"); scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); scale.set_scale(współczynnik_kalibracji); //Ta wartość jest uzyskiwana przy użyciu szkicu SparkFun_HX711_Calibration scale.tare(); //Zakładając, że przy uruchomieniu nie ma wagi na wadze, zresetuj wagę do 0 Serial.println("Odczyty:"); } void loop() { Serial.print("Czytanie: "); Serial.print(scale.get_units(), 1); //scale.get_units() zwraca liczbę zmiennoprzecinkową Serial.print(" lbs"); //Możesz to zmienić na kg, ale będziesz musiał dokonać refaktoryzowania Calibration_factor Serial.println(); }

Zalecana: