Mündəricat:

40 Kq Baqaj Yük Hücrəsi və HX711 Gücləndiricisi olan Arduino Gərginlik Ölçüsü: 4 addım
40 Kq Baqaj Yük Hücrəsi və HX711 Gücləndiricisi olan Arduino Gərginlik Ölçüsü: 4 addım

Video: 40 Kq Baqaj Yük Hücrəsi və HX711 Gücləndiricisi olan Arduino Gərginlik Ölçüsü: 4 addım

Video: 40 Kq Baqaj Yük Hücrəsi və HX711 Gücləndiricisi olan Arduino Gərginlik Ölçüsü: 4 addım
Video: 11-ci dərs - Hava limanlarında baqaj normaları 2024, Noyabr
Anonim
40 Kq Baqaj Yük Hücrəsi və HX711 Gücləndiricisi olan Arduino Gərginlik Ölçüsü
40 Kq Baqaj Yük Hücrəsi və HX711 Gücləndiricisi olan Arduino Gərginlik Ölçüsü

Bu Təlimat, rəfdən asanlıqla əldə edilə bilən hissələrdən istifadə edərək gərginlik ölçüsünün necə ediləcəyini təsvir edir.

Lazım olan materiallar:

1. Arduino - bu dizayn standart bir Arduino Uno istifadə edir, digər Arduino versiyaları və ya klonları da işləməlidir

2. HX711 qırılma lövhəsində - Bu mikroçip, yük hüceyrələrindən gələn siqnalları gücləndirmək və başqa bir mikroskontrolöre bildirmək üçün xüsusi olaraq hazırlanmışdır. Yük hüceyrələri bu lövhəyə qoşulur və bu lövhə Arduinoya yük hüceyrələrinin ölçdüklərini izah edir.

3. Mötərizədə olan gərginlik yük hücrəsi (40 kq). Bunlardan birini əldə etmək üçün 2 variant var. Artıq hazır olanı (asan) satın ala bilərsiniz, ya da ucuz rəqəmsal baqaj tərəzisini ayırıb yük hücrəsini çıxara bilərsiniz (daha çətindir, ancaq sizdə artıq uzanmış ola bilər). HX711 ilə hazırlanmış bir məhsulu buradan əldə edə bilərsiniz:

Kit alsanız, bir baxış buraxın! Gələcək alıcılar üçün həqiqətən faydalıdır.

4. Montaj aparatı. Tətbiqinizdən asılı olaraq, bu iplər, vintlər, fermuarlar, mötərizələri ölçmək istədiyiniz qüvvəyə bağlamaq üçün bir şey ola bilər.

5. Bütün hissələri birləşdirmək üçün müxtəlif rəngli tellər

6. Arduino üçün enerji təchizatı

Addım 1: Yük Hüceyrəsini Montaj edin

Yük Hüceyrəsini Qurun
Yük Hüceyrəsini Qurun
Yük Hüceyrəsini Qurun
Yük Hüceyrəsini Qurun
Yük Hüceyrəsini Qurun
Yük Hüceyrəsini Qurun

Əvvəlcə yük hüceyrəsini quraşdıracağıq. Qurğunuz unikal olacaq, amma burada riayət etməli olduğunuz qaydalar:

1. Polad yük hücrəsi ortasına yapışdırılmış gərginlik ölçü cihazları olan bir boşqabdır. Yük hücrəsi, yük hüceyrəsinin nə qədər əyildiyini hiss edərək gücü ölçür.

2. Mötərizələr yük hücrəsi şüasının ucundakı deliklərdən yapışdırılır. Mötərizələr, yük hücrəsi şüasının mərkəzində çəkmə qüvvəsi tətbiq olunduğu üçün formalaşdırılmışdır. Forma və bağlama yeri səbəbindən mötərizələr çəkilərkən yük hücrəsi şüası əyilir.

3. Mötərizəni ölçmək istədiyiniz yerə bağlayın. Sərbəst hərəkət edə bilən bir şeylə bunu etmək ən yaxşısıdır (zəncir, çəngəl, möhkəm ip və ya fermuar kimi). Yük hücrəsi və mötərizə qurğusunun özünü yük istiqamətində mərkəzləşdirə bilməsini istəyirsən, belə ki ölçü dəqiqdir.

Addım 2: Yük Hüceyrəsini və HX711 -i bağlayın

Yük Hüceyrəsini və HX711 -i bağlayın
Yük Hüceyrəsini və HX711 -i bağlayın

Yük hüceyrələrini, HX711 və Arduino -nu necə bağlayacağınız üçün əlaqə sxeminə baxın.

Göstərilən kimi baqaj tərzi yük hüceyrələrində, artıq bir neçə gərginlik ölçmə cihazı bir Wheatstone körpüsü üçün birləşdirilmişdir. Yalnız telləri HX711 lövhəsinə düzgün istiqamətdə bağlamaq kifayətdir.

Addım 3: HX711 Kitabxanasını Arduino IDE -yə əlavə edin

HX711 kitabxanası burada mövcuddur:

Kitabxananı Arduino IDE -yə necə əlavə etmək barədə təlimatlar üçün Arduino veb saytındakı bu linkə baxın:

Addım 4: Kalibr edin və çəkin

Kalibr edin və çəkin!
Kalibr edin və çəkin!

Sparkfun miqyası idarə etmək üçün əla Arduino proqramlarına malikdir. Ən müasir versiyalar GitHub-da mövcuddur və aşağıda yenidən çap edilmişdir:

Proqramın ilk addımı miqyas üçün kalibrləmə faktorlarını müəyyən etməkdir. Bunu etmək üçün bu kodu işlədin

/*

Bir miqyasda SparkFun HX711 qırılma lövhəsindən istifadə nümunəsi Müəllif: Nathan Seidle SparkFun Electronics Tarix: 19 Noyabr 2014 Lisenziya: Bu kod ictimai mülkiyyətdir, amma bunu istifadə etsəniz mənə bir pivə alarsınız və bir gün görüşərik (Beerware lisenziyası). Bu kalibrləmə eskizidir. Əsas nümunənin istifadə etdiyi calibration_factor təyin etmək üçün istifadə edin. Güc dövrləri arasındakı miqyasda daimi kütləsi olan layihələr üçün faydalı sıfır_faktoru da çıxarır. Ölçüsünüzü qurun və eskizə tərəzidə çəki olmadan başlayın Oxumalar göstərildikdən sonra çəkini tərəziyə qoyun Çıxış oxunuşları bilinən çəkiyə uyğun gələnə qədər kalibrləmə_faktorunu tənzimləmək üçün +/- və ya a/z düymələrini basaraq nümunə eskizdə bu kalibrləmə faktorundan istifadə edin. Bu nümunə funt (lbs) götürür. Kiloqrama üstünlük verirsinizsə, Serial.print ("lbs") dəyişdirin; kq -a qədər xətt. Kalibrləmə faktoru əhəmiyyətli dərəcədə fərqli olacaq, lakin xətti olaraq lbs (1 lbs = 0.453592 kq) ilə əlaqəli olacaq. Kalibrləmə faktorunuz çox müsbət və ya çox mənfi ola bilər. Hamısı miqyas sisteminizin qurulmasından və sensorların sıfır vəziyyətindən yayınma istiqamətindən asılıdır. Bu nümunə kod, bogde -nin əla kitabxanasından istifadə edir: "https://github.com/bogde/HX711" bogde kitabxanası GNU GENERAL PUBLIC LICENSE altında yayımlanır Arduino pin 2 -> HX711 CLK 3 -> DOUT 5V -> VCC GND -> GND Arduino Unodakı bütün pinlər DOUT/CLK ilə uyğun olacaq. HX711 lövhəsi 2.7V -dan 5V -a qədər işləyə bilər, buna görə Arduino 5V -nin gücü yaxşı olmalıdır. */ #include "HX711.h" #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 HX711 miqyası; float calibration_factor = -7050; //-7050 440lb max miqyaslı quraşdırma void setup () {Serial.begin (9600); Serial.println ("HX711 kalibrləmə eskizi"); Serial.println ("Bütün çəkini tərəzidən çıxarın"); Serial.println ("Oxumalar başladıqdan sonra bilinən çəkini ölçüyə qoyun"); Serial.println ("Kalibrləmə faktorunu artırmaq üçün + və ya a düyməsini basın"); Serial.println ("Kalibrləmə faktorunu azaltmaq üçün - və ya z düyməsini basın"); scale.begin (LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); scale.set_scale (); miqyas.tara (); // Ölçüyü sıfırlayın 0 long zero_factor = scale.read_average (); // Serial.print ("Sıfır faktor:") oxunuşunu əldə edin; // Bu tərəzi darama ehtiyacını aradan qaldırmaq üçün istifadə edilə bilər. Daimi miqyaslı layihələrdə faydalıdır. Serial.println (zero_factor); } boşluq döngəsi () {scale.set_scale (calibration_factor); // Bu kalibrləmə faktoruna uyğunlaşın Serial.print ("Oxunur:"); Serial.print (miqyas.get_units (), 1); Serial.print ("lbs"); // Bunu sağlam bir insan kimi Serial.print ("calibration_factor:") kimi təqib etsəniz, bunu kq olaraq dəyişdirin və kalibrləmə faktorunu yenidən tənzimləyin; Serial. çap (calibration_factor); Serial.println (); if (Serial.available ()) {char temp = Serial.read (); əgər (temp == ' +' || temp == 'a') calibration_factor += 10; başqa əgər (temp == ' -' || temp == 'z') calibration_factor -= 10; }}

Ölçəni kalibr etdikdən sonra bu nümunə proqramı işlədə, sonra da öz məqsədləriniz üçün onu sındıra bilərsiniz:

/*

Bir miqyasda SparkFun HX711 qırılma lövhəsindən istifadə nümunəsi Müəllif: Nathan Seidle SparkFun Electronics Tarix: 19 Noyabr 2014 Lisenziya: Bu kod ictimai mülkiyyətdir, ancaq bunu istifadə etsəniz mənə bir pivə alarsınız və bir gün görüşərik (Beerware lisenziyası). Bu nümunə əsas miqyaslı çıxışı göstərir. Xüsusi yük hüceyrə quruluşunuz üçün calibration_factor əldə etmək üçün kalibrləmə eskizinə baxın. Bu nümunə kodu, bogde -nin əla kitabxanasından istifadə edir: "https://github.com/bogde/HX711" bogde -nin kitabxanası GNU GENEL PUBLIC LICENSE altında yayımlanır HX711 bir şeyi yaxşı edir: yük hüceyrələrini oxumaq. Qırılma taxtası, istifadəçinin bir neçə qramdan on tona qədər hər şeyi ölçməsinə imkan verən buğda daşlı körpü əsaslı yük hücrəsi ilə uyğun gəlir. Arduino pin 2 -> HX711 CLK 3 -> DAT 5V -> VCC GND -> GND HX711 lövhəsi 2.7V -dan 5V -a qədər işləyə bilər, buna görə Arduino 5V -nin gücü yaxşı olmalıdır. */#include "HX711.h" #define calibration_factor -7050.0 // Bu dəyər SparkFun_HX711_Calibration eskizi istifadə edərək əldə edilir #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 HX711 miqyası; void setup () {Serial.begin (9600); Serial.println ("HX711 miqyaslı demo"); scale.begin (LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); scale.set_scale (calibration_factor); // Bu dəyər SparkFun_HX711_Calibration sketch scale.tare (); // Başlayarkən miqyasda heç bir çəki olmadığını fərz edərək, miqyasını sıfırlayın 0 Serial.println ("Oxunanlar:"); } void loop () {Serial.print ("Oxunur:"); Serial.print (miqyas.get_units (), 1); //scale.get_units () float Serial.print ("lbs") qaytarır; // Bunu kq olaraq dəyişə bilərsiniz, ancaq calibration_factor Serial.println (); }

Tövsiyə: