- Komponen yang diperlukan untuk membina Skala Berat Arduino:
- Modul Sensor Berat Load Cell dan HX711:
- Penjelasan Litar:
- Penjelasan Kerja:
- Kod Skala Berat Arduino:
Hari ini kita akan membina mesin Arduino wight, dengan menghubungkan Load Cell dan HX711 Weight Sensor dengan Arduino. Kami telah melihat mesin berat di banyak kedai, di mana mesin memaparkan berat hanya dengan meletakkan barang di platform penimbang. Jadi di sini kita sedang membina mesin penimbang yang sama dengan menggunakan sel Arduino dan Load, yang memiliki kapasiti pengukuran hingga 40kg. Had ini dapat ditingkatkan dengan menggunakan Load cell dengan kapasiti yang lebih tinggi.
Komponen utama yang diperlukan untuk membina skala penimbangan Arduino ini adalah sensor yang dapat mengubah berat menjadi isyarat elektrik yang setara. Sensor ini disebut sebagai sel beban, jadi dalam projek ini, kami akan menggunakan sel beban ini sebagai sensor berat Arduino kami. Kami juga telah menggunakan load cell yang sama dalam beberapa projek lain seperti, seperti Portable Arduino Retail Weighing Machine, Raspberry pi Weighing skala, dan lain-lain, anda juga boleh memeriksanya jika berminat.
Komponen yang diperlukan untuk membina Skala Berat Arduino:
- Arduino Uno
- Sel beban (40kg)
- Modul Penguat Sel Beban HX711
- LCD 16x2
- Menyambung wayar
- wayar USB
- Papan roti
- Baut mur, Bingkai, dan alas
Modul Sensor Berat Load Cell dan HX711:
Sel beban adalah transduser yang mengubah daya atau tekanan menjadi output elektrik. Besarnya output elektrik ini berkadar terus dengan daya yang dikenakan. Sel beban mempunyai pengukur regangan, yang cacat ketika tekanan diberikan padanya. Dan kemudian regangan regangan menghasilkan isyarat elektrik pada ubah bentuk kerana rintangan berkesannya berubah pada ubah bentuk. Sel beban biasanya terdiri daripada empat pengukur regangan dalam konfigurasi jambatan Wheatstone. Load cell terdapat dalam pelbagai julat seperti 5kg, 10kg, 100kg dan lebih, di sini kami telah menggunakan Load cell, yang boleh menimbang hingga 40kg.
Kini isyarat elektrik yang dihasilkan oleh Load cell berada dalam beberapa milivol, jadi mereka perlu diperkuatkan lagi oleh beberapa penguat dan oleh itu HX711 Weighing Sensor masuk ke dalam gambar. Modul Sensor Berat HX711 mempunyai cip HX711, yang merupakan penukar A / D berketepatan tinggi 24 (Analog ke digital converter). HX711 mempunyai dua saluran input analog dan kita dapat memperoleh keuntungan hingga 128 dengan memprogram saluran ini. Oleh itu modul HX711 menguatkan output elektrik rendah sel Load dan kemudian isyarat yang dikuatkan & ditukar secara digital ini dimasukkan ke Arduino untuk menurunkan berat badan.
Sel beban disambungkan dengan Penguat sel Beban HX711 menggunakan empat wayar. Empat wayar ini ialah Merah, Hitam, Putih, dan Hijau / Biru. Mungkin terdapat sedikit variasi warna wayar dari modul ke modul. Di bawah butiran dan rajah sambungan:
- Kawat RED disambungkan ke E +
- BLACK Wire disambungkan ke E-
- WHITE Wire disambungkan ke A-
- Kawat HIJAU disambungkan ke A +
Memperbaiki Sel Beban dengan Platform dan Pangkalan:
Langkah ini adalah pilihan dan anda boleh meletakkan beban secara langsung pada Load cell tanpa Platform dan hanya boleh menjepitnya tanpa membetulkannya dengan asas apa pun, tetapi lebih baik melampirkan platform untuk meletakkan perkara besar di atasnya dan memperbaikinya di Pangkalan sehingga terhenti. Jadi di sini kita perlu membuat bingkai atau platform untuk meletakkan perkara-perkara untuk pengukuran berat badan. Pangkalan juga diperlukan untuk memperbaiki sel beban di atasnya dengan menggunakan mur dan bolt. Di sini kami telah menggunakan kadbod keras untuk bingkai untuk meletakkan barang di atasnya dan papan kayu sebagai Pangkalan. Sekarang lakukan sambungan seperti yang ditunjukkan dalam rajah litar dan anda sudah bersedia untuk pergi.
Penjelasan Litar:
Sambungan untuk projek ini mudah dan skema diberikan di bawah. Pin LCD 16x2 masing-masing RS, EN, d4, d5, d6, dan d7 dihubungkan dengan nombor pin 8, 9, 10, 11, 12, dan 13 dari Arduino. Pin DT dan SCK Modul HX711 dihubungkan secara langsung dengan pin Arduino A0 dan A1. Muatkan sambungan sel dengan modul HX711 sudah dijelaskan lebih awal dan juga ditunjukkan dalam rajah litar di bawah.
Penjelasan Kerja:
Prinsip kerja projek Pengukuran Berat Arduino ini mudah. Sebelum membincangkan secara terperinci, pertama, kita harus menentukur sistem ini untuk mengukur berat badan yang betul. Apabila pengguna akan menghidupkannya, sistem akan mula menentukur secara automatik. Dan sekiranya pengguna mahu menentukurnya secara manual, tekan butang tekan. Kami telah membuat fungsi void calibrate () untuk tujuan penentukuran, periksa kod di bawah.
Untuk penentukuran, tunggu petunjuk LCD untuk meletakkan 100 gram di atas sel beban seperti yang ditunjukkan pada gambar di bawah. Apabila LCD akan menunjukkan "letakkan 100g" kemudian letakkan berat 100g di atas sel beban dan tunggu. Selepas beberapa saat, proses penentukuran akan selesai. Selepas penentukuran pengguna boleh meletakkan berat badan (maksimum 40kg) ke atas sel beban dan dapat memperoleh nilai melebihi LCD dalam gram.
Dalam projek ini, kami telah menggunakan Arduino untuk mengawal keseluruhan proses. Load cell merasakan berat dan membekalkan voltan analog elektrik ke Modul Penguat Beban HX711. HX711 adalah ADC 24bit, yang menguatkan dan menukar output Load cell secara digital. Kemudian nilai yang dikuatkan ini diberikan kepada Arduino. Sekarang Arduino mengira output HX711 dan mengubahnya menjadi nilai berat dalam gram dan menunjukkannya pada LCD. A push-butang digunakan untuk menentukur sistem. Kami telah menulis program Arduino untuk keseluruhan proses, periksa Code dan demo Video di akhir tutorial ini.
Kod Skala Berat Arduino:
Bahagian pengaturcaraan projek ini agak rumit untuk pemula. Dalam projek ini, kami tidak menggunakan perpustakaan apa pun untuk menghubungkan sensor beban HX711 dengan Arduino. Kami baru sahaja mengikuti lembar data HX711 dan nota aplikasi. Walaupun terdapat beberapa perpustakaan yang hadir untuk tujuan ini, di mana anda hanya perlu memasukkan perpustakaan itu dan anda dapat menambahkan berat badan menggunakan satu baris kod.
Pertama sekali, kami telah memasukkan fail header untuk LCD dan menentukan pin untuk yang sama. Dan untuk menekan butang juga. Kemudian dinyatakan beberapa pemboleh ubah untuk tujuan pengiraan.
#sertakan
Selepas itu, kami telah membuat fungsi di bawah ini untuk membaca data dari modul HX711 dan mengembalikan outputnya.
readCount panjang yang tidak ditandatangani (tidak sah) {Count panjang yang tidak ditandatangani; char i yang tidak ditandatangani; pinMode (DT, OUTPUT); digitalWrite (DT, TINGGI); digitalWrite (SCK, RENDAH); Kira = 0; pinMode (DT, INPUT); semasa (digitalRead (DT)); untuk (i = 0; i <24; i ++) {digitalWrite (SCK, TINGGI); Kira = Kira << 1; digitalWrite (SCK, RENDAH); jika (digitalRead (DT)) Hitung ++; } digitalWrite (SCK, TINGGI); Kira = Kira ^ 0x800000; digitalWrite (SCK, RENDAH); pulangan (Kira); }
Selepas itu, kami telah menginisialisasi LCD dan memberikan arahan ke pin input dan output dalam persediaan kosong ().
persediaan tidak sah () {Serial.begin (9600); pinMode (SCK, OUTPUT); pinMode (sw, INPUT_PULLUP); lcd.begin (16, 2); lcd.print ("Berat"); lcd.setCursor (0,1); lcd.print ("Pengukuran"); kelewatan (1000); lcd.clear (); menentukur (); }
Selanjutnya dalam fungsi loop void () , kami telah membaca data dari modul HX711 dan mengubah data ini menjadi berat (gram) dan mengirimkannya ke LCD.
gelung kekosongan () {count = readCount (); int w = (((jumlah sampel) / val) -2 * ((jumlah sampel) / val)); Serial.print ("berat:"); Cetakan bersiri ((int) w); Serial.println ("g"); lcd.setCursor (0,0); lcd.print ("Berat"); lcd.setCursor (0,1); lcd.print (w); lcd.print ("g"); jika (digitalRead (sw) == 0) {val = 0; sampel = 0; w = 0; kiraan = 0; menentukur (); }}
Sebelum ini, kami telah membuat fungsi kalibrasi di mana kami telah mengkalibrasi sistem dengan meletakkan berat 100gm di atas sel Load.
kalibrasi tidak sah () {lcd.clear (); lcd.print ("Mengkalibrasi…"); lcd.setCursor (0,1); lcd.print ("Tolong Tunggu…"); untuk (int i = 0; i <100; i ++) {count = readCount (); sampel + = kiraan; Serial.println (kiraan); }…………..
Oleh itu, di sini kita telah mempelajari Interfacing asas Load cell dan HX11 Weight Sensor dengan Arduino untuk mengukur berat. Dalam tutorial teks kami, kami akan membuat beberapa aplikasi berdasarkan pengukuran berat seperti Smart container, Automatic gate dll.