Isi kandungan:

Skala Ketegangan Arduino Dengan Sel Beban Bagasi 40 Kg dan Penguat HX711: 4 Langkah
Skala Ketegangan Arduino Dengan Sel Beban Bagasi 40 Kg dan Penguat HX711: 4 Langkah

Video: Skala Ketegangan Arduino Dengan Sel Beban Bagasi 40 Kg dan Penguat HX711: 4 Langkah

Video: Skala Ketegangan Arduino Dengan Sel Beban Bagasi 40 Kg dan Penguat HX711: 4 Langkah
Video: build ACCURATE scale with an arduino and a hx711 load cell 2024, November
Anonim
Skala Ketegangan Arduino Dengan Sel Beban Bagasi 40 Kg dan Penguat HX711
Skala Ketegangan Arduino Dengan Sel Beban Bagasi 40 Kg dan Penguat HX711

Instructable ini menerangkan bagaimana membuat skala ketegangan menggunakan bahagian rak yang tersedia.

Bahan yang diperlukan:

1. Arduino - reka bentuk ini menggunakan Arduino Uno standard, versi atau klon Arduino lain juga harus berfungsi

2. HX711 pada papan pemecah - mikrocip ini dibuat khas untuk menguatkan isyarat dari sel beban dan melaporkannya ke mikrokontroler lain. Sel beban dimasukkan ke papan ini, dan papan ini memberitahu Arduino apa yang diukur oleh sel beban.

3. Sel beban tegangan (40 kg) dengan kurungan. Terdapat 2 pilihan untuk mendapatkannya. Anda boleh membeli satu yang sudah dibuat (mudah), atau anda boleh meleraikan skala bagasi digital yang murah dan mengeluarkan sel muatan (lebih sukar tetapi anda mungkin sudah mempunyai yang lain). Anda boleh membeli yang sudah dibuat dengan HX711 di sini:

Sekiranya anda membeli kit, sila beri ulasan! Ia sangat membantu pembeli masa depan.

4. Pemasangan perkakasan. Bergantung pada aplikasi anda, ini mungkin tali, skru, tali zip, apa pun untuk memasang kurungan dengan kekuatan yang ingin anda ukur.

5. Wayar dalam pelbagai warna untuk menghubungkan semua bahagian

6. Bekalan kuasa untuk Arduino

Langkah 1: Pasang Cell Load

Pasang Cell Load
Pasang Cell Load
Pasang Cell Load
Pasang Cell Load
Pasang Cell Load
Pasang Cell Load

Mula-mula kita akan memasang sel beban. Pemasangan anda akan unik, tetapi berikut adalah panduan yang perlu anda ikuti:

1. Sel beban keluli adalah plat dengan pengukur regangan yang terpaku di tengah. Sel beban mengukur daya dengan merasakan berapa banyak sel beban dibengkokkan.

2. Kurungan melekat melalui lubang di hujung balok sel beban. Kurungan dibentuk sehingga daya tarikan dikenakan di tengah-tengah balok sel beban. Kerana bentuknya dan lokasi lampiran, balok sel beban membengkokkan ketika pendakap ditarik.

3. Pasang tanda kurung mengikut ukuran yang anda mahu ukur. Sebaiknya lakukan ini dengan sesuatu yang boleh bergerak dengan bebas (seperti rantai, cangkuk, tali kuat, atau ikatan zip). Anda mahu pemasangan sel beban dan pendakap dapat memusatkan dirinya ke arah beban sehingga pengukurannya tepat.

Langkah 2: Wire Cell Load dan HX711

Wire Load Cell dan HX711
Wire Load Cell dan HX711

Lihat rajah pendawaian untuk cara menyambungkan sel beban, HX711, dan Arduino.

Pada sel beban gaya bagasi seperti yang ditunjukkan, alat pengukur regangan berganda telah disambungkan ke jambatan Wheatstone. Yang perlu anda lakukan ialah menyambungkan wayar ke papan HX711 dengan arah yang betul.

Langkah 3: Tambahkan Perpustakaan HX711 ke Arduino IDE anda

Perpustakaan HX711 boleh didapati di sini:

Lihat pautan ini di laman web Arduino untuk mendapatkan arahan mengenai cara menambahkan perpustakaan ke Arduino IDE anda:

Langkah 4: Kalibrasi dan Timbang

Tentukur dan Timbang!
Tentukur dan Timbang!

Sparkfun mempunyai program Arduino yang hebat untuk menjalankan skala. Versi paling terkini boleh didapati di GitHub dan dicetak semula di bawah:

Langkah perisian pertama adalah menentukan faktor penentukuran untuk skala. Untuk melakukan ini, jalankan kod ini

/*

Contohnya menggunakan papan pemecah SparkFun HX711 dengan skala Oleh: Nathan Seidle SparkFun Electronics Tarikh: 19 November 2014 Lesen: Kod ini adalah domain awam tetapi anda membelikan saya bir jika anda menggunakan ini dan kami akan bertemu suatu hari nanti (Beerware license). Ini adalah lakaran penentukuran. Gunakannya untuk menentukan calibration_factor yang digunakan contoh utama. Ia juga menghasilkan zero_factor yang berguna untuk projek yang mempunyai jisim tetap pada skala di antara kitaran kuasa. Siapkan skala anda dan mulakan sketsa TANPA berat pada skala Setelah bacaan ditunjukkan letakkan berat pada skala Tekan +/- atau a / z untuk menyesuaikan kalibrasi_faktor sehingga bacaan output sepadan dengan berat yang diketahui Gunakan kalibrasi_faktor ini pada lakaran contoh Contoh ini menganggap pound (lbs). Sekiranya anda lebih suka kilogram, ubah cetakan Serial ("lbs"); garis ke kg. Faktor penentukuran akan berbeza secara signifikan tetapi akan berkaitan secara linier dengan lbs (1 lbs = 0,453592 kg). Faktor penentukuran anda mungkin sangat positif atau sangat negatif. Semuanya bergantung pada penyusunan sistem skala anda dan arah yang dibelokkan oleh sensor dari keadaan sifar. Contoh kod ini menggunakan perpustakaan yang sangat baik bogde: "https://github.com/bogde/HX711" perpustakaan bogde dilancarkan di bawah GNU UMUM AWAM UMUM Pin Arduino 2 -> HX711 CLK 3 -> DOUT 5V -> VCC GND -> GND Sebilangan besar pin pada Arduino Uno akan serasi dengan DOUT / CLK. Papan HX711 boleh dikuasakan dari 2.7V hingga 5V jadi kuasa Arduino 5V semestinya baik. * / #sertakan "HX711.h" #tentukan LOADCELL_DOUT_PIN 3 #tentukan skala LOADCELL_SCK_PIN 2 HX711; penentukuran terapung_faktor = -7050; // - 7050 bekerja untuk penyediaan skala maksimum 440lb saya yang tidak betul () {Serial.begin (9600); Serial.println ("lakaran penentukuran HX711"); Serial.println ("Keluarkan semua berat dari skala"); Serial.println ("Setelah pembacaan bermula, letakkan berat yang diketahui mengikut skala"); Serial.println ("Tekan + atau a untuk meningkatkan faktor penentukuran"); Serial.println ("Tekan - atau z untuk mengurangkan faktor penentukuran"); skala.begin (LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); skala.set_scale (); skala.tare (); // Tetapkan semula skala ke 0 zero_factor = skala.read_average (); // Dapatkan bacaan asas Serial.print ("Faktor sifar:"); // Ini dapat digunakan untuk menghilangkan kebutuhan untuk merobek timbangan. Berguna dalam projek skala tetap. Serial.println (zero_factor); } gelung void () {scale.set_scale (calibration_factor); // Sesuaikan dengan faktor penentukuran ini Serial.print ("Reading:"); Serial.print (skala.get_units (), 1); Serial.print ("lbs"); // Ubah ini menjadi kg dan sesuaikan semula faktor penentukuran jika anda mengikuti unit SI seperti Serial.print orang yang waras ("calibration_factor:"); Serial.print (calibration_factor); Bersiri.println (); jika (Serial.available ()) {char temp = Serial.read (); jika (temp == '+' || temp == 'a') calibration_factor + = 10; lain jika (temp == '-' || temp == 'z') calibration_factor - = 10; }}

Setelah menentukur skala, anda boleh menjalankan program sampel ini, kemudian meretasnya untuk tujuan anda sendiri:

/*

Contohnya menggunakan papan pemecah SparkFun HX711 dengan skala Oleh: Nathan Seidle SparkFun Electronics Tarikh: 19 November 2014 Lesen: Kod ini adalah domain awam tetapi anda membelikan saya bir jika anda menggunakan ini dan kami akan bertemu suatu hari nanti (Beerware license). Contoh ini menunjukkan output skala asas. Lihat lakaran penentukuran untuk mendapatkan calibration_factor untuk penyediaan sel beban khusus anda. Contoh kod ini menggunakan perpustakaan yang sangat baik bogde: "https://github.com/bogde/HX711" Perpustakaan bogde dilancarkan di bawah LESEN AWAM UMUM GNU HX711 melakukan satu perkara dengan baik: baca sel muat. Papan pemecah serasi dengan sel beban berasaskan jambatan batu gandum yang membolehkan pengguna mengukur semuanya dari beberapa gram hingga puluhan tan. Arduino pin 2 -> HX711 CLK 3 -> DAT 5V -> VCC GND -> GND Papan HX711 boleh dihidupkan dari 2.7V hingga 5V jadi kuasa Arduino 5V seharusnya baik. * / #include "HX711.h" #define calibration_factor -7050.0 // Nilai ini diperoleh dengan menggunakan sketsa SparkFun_HX711_Calibration #define LOADCELL_DOUT_PIN 3 #define LOADCELL_SCK_PIN 2 HX711; batal persediaan () {Serial.begin (9600); Serial.println ("Demo skala HX711"); skala.begin (LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN); skala.set_scale (penentukuran_faktor); // Nilai ini diperoleh dengan menggunakan skala lakaran SparkFun_HX711_Calibration.tare (); // Dengan anggapan tidak ada bobot pada skala pada saat permulaan, tetapkan semula skala ke 0 Serial.println ("Bacaan:"); } gelung kekosongan () {Serial.print ("Reading:"); Serial.print (skala.get_units (), 1); //scale.get_units () mengembalikan Serial.print float ("lbs"); // Anda boleh mengubahnya menjadi kg tetapi anda perlu mengubah semula kalibrasi_factor Serial.println (); }

Disyorkan: