Daftar Isi:

Penguji Baterai Arduino Dengan Antarmuka Pengguna WEB.: 5 Langkah
Penguji Baterai Arduino Dengan Antarmuka Pengguna WEB.: 5 Langkah

Video: Penguji Baterai Arduino Dengan Antarmuka Pengguna WEB.: 5 Langkah

Video: Penguji Baterai Arduino Dengan Antarmuka Pengguna WEB.: 5 Langkah
Video: Amazing arduino project 2024, Juli
Anonim
Penguji Baterai Arduino Dengan Antarmuka Pengguna WEB
Penguji Baterai Arduino Dengan Antarmuka Pengguna WEB

Saat ini, peralatan elektronik menggunakan baterai cadangan untuk menyelamatkan keadaan di mana operasi ditinggalkan saat peralatan dimatikan atau ketika, secara tidak sengaja, peralatan dimatikan. Pengguna, ketika dihidupkan, kembali ke titik di mana dia tinggal dan dengan demikian tidak membuang waktu atau urutan pelaksanaan tugasnya.

Langkah 1: Pendahuluan

pengantar
pengantar

Saya melakukan proyek untuk mengukur keadaan baterai dengan kapasitas dan tegangan yang berbeda menggunakan metode: Beban DC dua tingkat. Metode ini terdiri dari penarikan arus kecil dari baterai selama 10 detik dan arus tinggi selama 3 detik (standar IEC 61951-1: 2005). Dari pengukuran ini resistansi internal dihitung dan karenanya keadaannya.

Workstation akan terdiri dari beberapa konektor, satu untuk setiap jenis baterai, dan sebuah PC. Untuk ini, antarmuka pengguna (UI) diperlukan. Bagian terpenting dari tutorial ini adalah UI karena dalam instruksi lain telah dijelaskan metode pengujian baterai ini. Saya mencoba Processing dan mendapatkan hasil yang baik tetapi memutuskan untuk membuat perangkat lunak saya sendiri menggunakan server web lokal dan memanfaatkan potensi HTML, CSS dan php.

Diketahui bahwa sangat sulit untuk mengirim informasi dari Arduino ke PC windows tetapi pada akhirnya, saya berhasil. Semua program disertakan dalam tutorial ini.

Langkah 2: Apa yang Akan Kami Ukur dan Bagaimana

Apa yang Akan Kami Ukur dan Bagaimana
Apa yang Akan Kami Ukur dan Bagaimana
Apa yang Akan Kami Ukur dan Bagaimana
Apa yang Akan Kami Ukur dan Bagaimana

Resistensi Dalam.

Setiap baterai nyata memiliki resistansi internal. Kami selalu berasumsi bahwa itu adalah sumber tegangan yang ideal, artinya, kami bisa mendapatkan banyak arus dengan menjaga tegangan nominal konstan. Namun, ukuran baterai, sifat kimia, usia, dan suhu semuanya memengaruhi jumlah arus yang dapat disuplai oleh baterai. Hasilnya, kita dapat membuat model baterai yang lebih baik dengan sumber tegangan ideal dan resistor secara seri, seperti yang ditunjukkan pada Gambar 1.

Baterai dengan resistansi internal rendah mampu memasok lebih banyak arus dan tetap dingin, namun baterai dengan resistansi tinggi menyebabkan baterai memanas dan voltase turun di bawah beban, memicu shutdown dini.

Resistansi internal dapat dihitung dari hubungan arus-tegangan yang diberikan oleh dua titik dalam kurva debit.

Metode beban DC dua tingkat menawarkan metode alternatif dengan menerapkan dua beban pelepasan berurutan dari arus dan durasi waktu yang berbeda. Baterai pertama kali dikosongkan pada arus rendah (0,2C) selama 10 detik, diikuti dengan arus yang lebih tinggi (2C) selama 3 detik (lihat Gambar 2); hukum Ohm menghitung nilai resistansi. Mengevaluasi tanda tegangan di bawah dua kondisi beban menawarkan informasi tambahan tentang baterai, tetapi nilainya sangat resistif dan tidak mengungkapkan status pengisian (SoC) atau perkiraan kapasitas. Uji beban adalah metode yang disukai untuk baterai yang memberi daya pada beban DC.

Seperti yang dinyatakan sebelumnya, ada banyak metode pengukuran baterai yang diperlakukan dalam instruksi lain dan yang dapat diimplementasikan dengan Arduino, tetapi dalam kasus ini, meskipun tidak menawarkan penilaian lengkap tentang keadaan baterai, ini memberikan nilai yang dapat digunakan untuk memperkirakan perilaku mereka di masa depan.

Resistansi internal ditemukan dengan menggunakan hubungan

Di mana

Ri = (V1 - V2) / (I2 - I1)

?1-Tegangan diukur selama arus rendah dan waktu yang lebih lama;

?2-Tegangan diukur selama arus tinggi dan waktu yang lebih singkat;

?1 - Arus selama waktu yang lebih lama;

?2 - Arus selama waktu yang lebih singkat.

Langkah 3: Sirkuit

sirkuit
sirkuit
sirkuit
sirkuit
sirkuit
sirkuit

Rangkaian adalah sumber arus yang menarik 0.2C (dalam hal ini 4mA) dan 2C (dalam hal ini 40mA) dari baterai menggunakan hanya satu rangkaian yang dikendalikan dengan sinyal PWM dari Arduino. Dengan cara ini dimungkinkan untuk mengukur semua baterai cadangan dengan C = 20mAh, terlepas dari tegangannya dalam kisaran dari 1,2V hingga 4,8V dan baterai lain dengan kapasitas yang berbeda juga. Pada versi pertama, saya menggunakan dua transistor masing-masing dengan beban untuk mengalirkan 4mA dan 40mA lainnya. Varian itu tidak sesuai untuk masa depan karena mereka ingin mengukur baterai lain dengan kapasitas berbeda dan skema ini membutuhkan sejumlah besar resistor dan transistor.

Rangkaian dengan sumber arus ditunjukkan pada Gambar 3. Frekuensi sinyal PWM dari pin 5 board Arduino adalah 940Hz, oleh karena itu, Fc Low Pass Filter (LPF) adalah 8 Hz, artinya harmonik pertama dari Sinyal PWM (940Hz) akan dilemahkan 20dB karena filter RC memberikan redaman 10 dB per dekade (setiap 10 kali Fc – redaman akan menjadi 10dB dalam 80Hz dan 20dB dalam 800Hz). Transistor IRFZ44n kebesaran karena, di masa depan, baterai berkapasitas lebih besar akan diuji. LM58n, penguat operasional ganda (OA), adalah antarmuka antara papan Arduino dan IRFZ44n. LPF dimasukkan di antara 2 amplifier operasional untuk memastikan pemisahan yang baik antara mikroprosesor dan filter. Pada Gbr.3, pin A1 Arduino terhubung ke sumber transistor IRFZ44n untuk memeriksa arus yang diambil dari baterai.

Rangkaian ini terdiri dari 2 bagian, di bawah papan Arduino UNO dan di atas sumber arus, seperti yang ditunjukkan pada foto berikutnya. Seperti yang Anda lihat, di sirkuit ini tidak ada sakelar atau tombol, mereka ada di UI di pc.

Sirkuit ini juga memungkinkan pengukuran kapasitas baterai dalam mAh karena memiliki sumber arus dan papan Arduino memiliki timer.

Langkah 4: Program

Program
Program
Program
Program
Program
Program
Program
Program

Seperti disebutkan di atas, aplikasi memiliki, di satu sisi, UI yang dibuat dengan HTML, CSS, dan, di sisi lain, sketsa Arduino. Antarmukanya sangat sederhana, untuk saat ini, karena hanya melakukan pengukuran resistansi internal, di masa depan akan melakukan lebih banyak fungsi.

Halaman pertama memiliki daftar drop-down, dari mana pengguna memilih voltase baterai yang akan diukur (Gbr. 4). Program HTML halaman pertama, disebut BatteryTesterInformation.html. Semua baterai memiliki kapasitas 20mAh.

Halaman kedua, BatteryTesterMeasurement.html.

Pada halaman kedua, baterai terhubung ke konektor yang ditunjukkan dan mulai (tombol MULAI) pengukuran. Untuk saat ini led ini tidak termasuk karena hanya memiliki satu konektor tetapi kedepannya akan lebih banyak lagi konektornya.

Setelah tombol MULAI diklik, komunikasi dengan papan Arduino dimulai. Di halaman yang sama, formulir Hasil Pengukuran ditampilkan saat papan Arduino mengirimkan hasil tes baterai dan tombol START dan CANCEL disembunyikan. Tombol BACK digunakan untuk memulai pengujian baterai lain.

Fungsi dari program selanjutnya yaitu PhpConnect.php adalah untuk menghubungkan dengan board Arduino, mengirimkan dan menerima data dari board Arduino dan web server.

Catatan: Transmisi dari PC ke Arduino cepat tetapi transmisi dari Arduino ke PC memiliki delay 6 detik. Saya mencoba untuk menyelesaikan situasi yang menjengkelkan ini. Tolong, bantuan apa pun sangat dihargai.

Dan sketsa Arduino, BatteryTester.ino.

Ketika resistansi internal yang dihasilkan 2 kali lebih besar dari awal (baterai baru), baterai buruk. Artinya, jika baterai yang diuji memiliki 10 Ohm atau lebih dan, menurut spesifikasi, baterai jenis ini harus memiliki 5Ohm, baterai itu buruk.

UI ini diuji dengan FireFox dan Google tanpa masalah. Saya menginstal xampp dan wampp dan berjalan dengan baik di keduanya.

Langkah 5: Kesimpulan

Jenis pengembangan menggunakan antarmuka pengguna pada PC ini memiliki banyak keuntungan karena memungkinkan pengguna lebih mudah memahami pekerjaan yang mereka lakukan serta menghindari penggunaan komponen mahal yang memerlukan interaksi mekanis, yang membuat mereka rentan terhadap kerusakan.

Langkah selanjutnya dari pengembangan ini adalah menambahkan konektor dan memodifikasi beberapa bagian rangkaian untuk menguji baterai lain, dan menambahkan pengisi daya baterai juga. Setelah itu, PCB akan dirancang dan dipesan.

UI akan memiliki lebih banyak modifikasi untuk menyertakan halaman pengisi daya baterai

Tolong, setiap ide, perbaikan atau koreksi jangan ragu untuk berkomentar untuk meningkatkan pekerjaan ini. Di sisi lain, jika Anda memiliki pertanyaan, tanyakan kepada saya, saya akan menjawabnya secepat mungkin.

Direkomendasikan: