- Bahan Diperlukan
- Rajah Litar
- Graf Bar LED
- Program Arduino untuk Pemantauan Voltan Bateri:
- Bekerja Penunjuk Voltan Bateri
Bateri dilengkapi dengan had voltan tertentu dan jika voltan melebihi had yang ditetapkan semasa mengecas atau mengosongkan, jangka hayat bateri terjejas atau berkurang. Setiap kali kita menggunakan projek berkuasa bateri, kadang-kadang kita perlu memeriksa tahap voltan bateri, sama ada ia perlu dicas atau diganti. Litar ini akan membantu anda memantau voltan bateri anda. Ini Arduino penunjuk voltan bateri menunjukkan status bateri dengan bercahaya LED pada 10 segmen LED Bar graf mengikut voltan bateri. Ia juga menunjukkan voltan bateri anda pada LCD yang disambungkan ke Arduino.
Bahan Diperlukan
- Arduino UNO
- Graf Bar LED 10 Segmen
- LCD (16 * 2)
- Potensiometer-10k
- Perintang (100ohm-10; 330ohm)
- Bateri (akan diuji)
- Menyambung wayar
- Penyesuai 12v untuk Arduino
Rajah Litar
Graf Bar LED
Graf bar LED hadir dalam ukuran standard industri dengan penggunaan kuasa yang rendah. Bar dikategorikan untuk intensiti bercahaya. Produk itu sendiri kekal dalam versi yang mematuhi RoHS. Ia mempunyai voltan hadapan hingga 2.6v. Pelesapan kuasa setiap segmen ialah 65mW. Suhu operasi graf bar LED ialah -40 ℃ hingga 80 ℃. Terdapat banyak aplikasi untuk grafik bar LED seperti peralatan Audio, panel Instrumen, dan paparan bacaan Digital.
Rajah Pin
Konfigurasi Pin
Program Arduino untuk Pemantauan Voltan Bateri:
Yang lengkap kod Arduino dan Demonstrasi Video ini diberikan pada akhir artikel ini. Di sini kami telah menerangkan beberapa bahagian penting kod tersebut.
Di sini, kami mendefinisikan perpustakaan LCD dan menentukan pin LCD yang akan digunakan dengan Arduino. Input analog diambil dari pin A4 untuk memeriksa voltan bateri. Kami telah menetapkan nilai sebagai Float untuk mendapatkan voltan hingga dua perpuluhan.
#sertakan
int ledPins = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11}; // pelbagai nombor pin di mana LED dipasang pada pinCount = 10; // bilangan pin (iaitu panjang array)
Menetapkan LCD dan pin analog (A0, A1, A2, A3) sebagai pin OUTPUT.
persediaan tidak sah () {Serial.begin (9600); // membuka port bersiri, menetapkan kadar data kepada 9600 bps lcd.begin (16, 2); //// tetapkan bilangan lajur dan baris LCD: pinMode (A0, OUTPUT); pinMode (A1, OUTPUT); pinMode (A2, OUTPUT); pinMode (A3, OUTPUT); pinMode (A4, INPUT); lcd.print ("Tahap Voltan"); }
Di sini, kami membuat fungsi untuk menggunakan grafik bar LED untuk digunakan dengan cara yang sederhana, anda bahkan dapat menyalakan LED dengan memprogramnya satu persatu, tetapi kodnya panjang.
batal LED_fungsi (tahap int) {untuk (int j = 2; j <= 11; j ++) {digitalWrite (j, LOW); } untuk (int i = 1, l = 2; i <= pentas; i ++, l ++) {digitalWrite (l, TINGGI); // kelewatan (30); }} Pada bahagian ini, kita telah membaca nilai voltan menggunakan pin analog. Kemudian, kami menukar nilai analog menjadi nilai voltan digital dengan menggunakan formula penukaran analog ke digital dan memaparkannya lebih jauh pada LCD.
// Formula penukaran untuk voltan analogValue = analogRead (A4); Serial.println (analogValue); kelewatan (1000); input_voltage = (analogValue * 5.0) / 1024.0; lcd.setCursor (0, 1); lcd.print ("Voltan ="); lcd.print (input_voltage); Serial.println (input_voltage); kelewatan (100);
Mengikut nilai voltan masukan kami telah memberikan beberapa syarat untuk mengawal LED bar grafik LED. Keadaan yang boleh anda periksa di bawah dalam kod:
if (input_voltage <0.50 && input_voltage> = 0.00) {digitalWrite (2, TINGGI); kelewatan (30); digitalWrite (2, RENDAH); kelewatan (30); // apabila voltan sifar atau rendah LED 1 akan menunjukkan dengan berkelip} lain jika (input_voltage <1.00 && input_voltage> = 0.50) {LED_fungsi (2); } lain jika (input_voltage <1.50 && input_voltage> = 1.00) {LED_fungsi (3); } lain jika (input_voltage <2.00 && input_voltage> = 1.50) {LED_fungsi (4); } lain jika (input_voltage <2.50 && input_voltage> = 2.00) {LED_fungsi (5); } lain jika (input_voltage <3.00 && input_voltage> = 2.50) {LED_fungsi (6); } lain jika (input_voltage <3.50 && input_voltage> = 3.00) {LED_fungsi (7); } lain jika (input_voltage <4.00 && input_voltage> = 3.50) {LED_fungsi (8);} lain jika (input_voltage <4.50 && input_voltage> = 4.00) {LED_fungsi (9); } lain jika (input_voltage <5.00 && input_voltage> = 4.50) {LED_fungsi (10); }}
Bekerja Penunjuk Voltan Bateri
Petunjuk Voltan Bateri hanya membaca nilai dari pin Analog Arduino dan menukarnya menjadi nilai digital dengan menggunakan formula Analog ke Digital Conversion (ADC). The Arduino Uno ADC adalah resolusi 10-bit (supaya nilai integer 0-2 ^ 10 = 1024 nilai). Ini bermaksud bahawa ia akan memetakan voltan input antara 0 dan 5 volt menjadi nilai integer antara 0 dan 1023. Oleh itu, jika kita mengalikan input anlogValue ke (5/1024), maka kita akan mendapat nilai digital voltan input. Ketahui di sini cara menggunakan input ADC di Arduino. Kemudian nilai digital digunakan untuk menyalakan Graf bar LED dengan sewajarnya.
Juga, periksa Monitor tahap Bateri sederhana ini tanpa Mikrokontroler