
Tutorial Arduino Pengisian Tenaga Surya
- Kategori
- Arduino
- Terbit: 2022-03-31
Tutorial ini menunjukkan cara membuat rangkaian pengisian tenaga surya bertenaga baterai arduino ide, yang digunakan untuk memberi daya pada Arduino Uno dan beberapa periferal (sensor, modul komunikasi, dll.) serta jenis jenis arduino. untuk arduino harga atau tiap partnya bisa teman teman cek sendiri yak. mari belajar arduino bersama sama hihi
Jika Anda ingin mendesain pencatat data jarak jauh, catu daya selalu menjadi masalah. Sebagian besar waktu tidak ada stopkontak yang tersedia, dan itu memaksa Anda untuk menggunakan beberapa baterai untuk memberi daya pada sirkuit Anda. Tetapi pada akhirnya perangkat Anda akan kehabisan baterai... dan Anda tidak ingin pergi ke sana dan mengisi dayanya, bukan? Jadi sirkuit pengisian tenaga surya diusulkan kepada pengguna energi bebas dari matahari untuk mengisi baterai dan memberi daya pada Arduino kesayangan Anda.
Masalah lain yang akan Anda hadapi adalah efisiensi Arduino Anda. Ini akan menghabiskan banyak baterai Anda, bahkan jika Anda menidurkannya. Seperti yang dijelaskan di situs web Arduino (http://playground.arduino.cc/Learning/ArduinoSleepCode) "sleep biasanya digunakan untuk menghemat daya pada papan Arduino. Namun, untuk beberapa varian Arduino, tidak banyak manfaatnya. Misalnya, Arduino papan serial dan USB menggunakan regulator daya jenis 7805, yang membutuhkan 10 mA saat IC Atmega dalam mode siaga. Menempatkan papan ini ke mode tidur akan memotong beberapa mA dari total konsumsi daya namun tetap akan tinggi".
Jika Anda melewati regulator yang tidak efisien dengan rangkaian catu daya Anda sendiri, atau menggunakan papan dengan catu daya yang cukup efisien, seperti Arduino Pro, maka tidur bisa sangat bermanfaat untuk mengurangi daya dan memperpanjang masa pakai baterai. Regulator bahkan dapat dilepas sama sekali saat menggunakan beberapa baterai Li-ion.
Tetapi seringkali, Anda tidak ingin menggunakan keterampilan menyolder yang buruk secara langsung di Arduino Uno Anda, atau tidak ingin membeli perangkat yang lebih hemat energi. Jika ini kasus Anda, tutorial ini cocok untuk Anda.
Masalah lainnya adalah meskipun Arduino Anda sedang tidur, sensor Anda mungkin masih aktif, menguras baterai Anda. Jadi sirkuit pengatur waktu ditambahkan ke baterai yang diisi tenaga surya, yang memberi daya pada Arduino hanya selama beberapa detik dan kemudian mematikannya lagi untuk menghemat daya. Ini cocok dengan aplikasi di mana mikrokontroler Anda hanya digunakan untuk membaca beberapa sensor, mengirim atau menyimpan data, dan kembali tidur selama beberapa menit.
Sirkuit yang dijelaskan di sini masih dalam pengujian, analisis menyeluruh dari komponen yang digunakan tidak dilakukan (model dioda, transistor, dan nilai resistor). Saya berniat untuk mengubah rangkaian ini menjadi solar charging shield bertenaga baterai untuk Arduino Uno nanti, tapi untuk saat ini saya masih dalam tahap try and error. Jadi, jangan ragu untuk berkomentar dan mengikuti proyek ini, dan gunakan risiko Anda sendiri!
Saya merancang sirkuit ini untuk memberi daya pada stasiun cuaca mini Arduino saya ( https://www.hackster.io/igorF2/arduino-uno-mini-weather-station-31b555). Ini menggunakan sensor debu yang menghabiskan banyak daya, dan saya ingin mematikan seluruh rangkaian secara berkala untuk menghemat baterai saya.
Step 1 : Matrial yang digunakan
- Arduino Uno
- Small breadboard
- 5V Step-up booster
- Lithium battery charger (TP4056)
- 6V solar cell
- 18560 lithium battery
- battery holder
- 1N4004 diode (x2)
- 555 integrated circuit
- 2N3904 transistor (x2)
- 1 Mohm resistor (x2)
- 100 kohm resistor (x3)
- 10 kohm resistor (x1)
- 100 uF electrolictic capacitor (x2)
- 10 nF ceramic capacitor (x1)
- 5V SPDT relay
- jumper wires
- USB cable
Step 2 : Merakit pengisi daya baterai tenaga surya
Pertama, Anda harus merakit sirkuit pengisi daya baterai bertenaga surya. Ini menggunakan energi dari beberapa sel surya untuk mengisi baterai, dan meningkatkan tegangan darinya ke 5V yang digunakan oleh Arduino Uno.
Sirkuit ini didasarkan pada tutorial mengagumkan oleh deba168, stasiun cuaca Arduino bertenaga surya.
Sel surya terhubung ke input pengisi baterai lithium (TP4056), yang outputnya terhubung ke baterai lithium 18560. Booster tegangan step-up 5V juga terhubung ke baterai dan digunakan untuk mengubah dari 3.7V dc ke 5V dc. Anda dapat memeriksa koneksi antara komponen dalam gambar.
Beberapa pin disolder ke bagian bawah kedua modul (TP4056 dan booster), untuk memudahkan koneksi ke papan tempat memotong roti. Jika Anda tidak menggunakan papan tempat memotong roti, Anda dapat menghubungkan komponen dengan kabel dan menyoldernya.
Pada titik ini Anda mungkin sudah menyalakan Arduino Uno Anda, menghubungkannya ke konektor USB booster, dan Arduino Anda akan bekerja sampai baterai habis. Ketika ada cukup sinar matahari, baterai akan mulai mengisi daya secara otomatis.
Perhatikan bahwa input TP4056 dibatasi antara 4,5 dan 5,5V. Pada rangkaian ini tidak ada pembatas tegangan antara panel surya dan charger baterai. Dioda Zener dapat digunakan untuk membatasi tegangan dan melindungi sirkuit Anda.
Tergantung pada konsumsi daya Anda, baterai Anda akan cepat habis. Jika itu masalahnya, ikuti langkah berikutnya.
Step 3 : Sirkuit pengatur Waktu
Ada banyak proyek yang melibatkan Arduino dan banyak sensor. Dalam sebagian besar kasus, Arduino membaca sensor secara berkala dan menyimpan pembacaan secara internal atau mengirimkan nilainya menggunakan Wi-Fi, bluetooth, ethernet, dll. Setelah itu, biasanya masuk dalam keadaan idle hingga mencapai waktu sempling berikutnya. .
Selama waktu idle ini, Anda mungkin membuat Arduino Anda tertidur, tetapi itu tidak akan menghemat banyak daya. Meskipun mikroprosesor mengurangi konsumsi dayanya, regulator dan periferal lainnya (sensor dan modul komunikasi Anda, misalnya) tetap bekerja, menghabiskan sebagian besar daya.
Alternatif yang diusulkan di sini adalah dengan menggunakan rangkaian pengatur waktu eksternal, yang menyalakan/mematikan daya secara berkala. Saat aktif, Arduino akan melakukan pengaturannya, membaca sensor, dan menyimpan atau mengirimkan data. Semua ini dalam beberapa detik. Setelah itu rangkaian akan memutus aliran listrik selama beberapa menit dan kemudian memulai kembali proses.
Selama keadaan mati, rangkaian pengatur waktu hanya menggunakan beberapa miliampere.
Rangkaian timer tersebut dipasang pada Rangkaian Autodesk (https://circuits.io/circuits/4588121-timer-1) sehingga akan disimulasikan sebelum diimplementasikan dengan komponen nyata.
Rangkaian timer 555 dalam mode astabil dirancang untuk mengontrol kapan Arduino dan periferalnya akan ON/OFF. Dalam rangkaian astabil, tegangan output bergantian antara Vcc (+5V) (keadaan tinggi) dan GND (0V) (keadaan rendah) secara terus menerus. Output ini digunakan untuk menggerakkan relay, yang akan memotong daya Arduino secara berkala.
Dengan memilih nilai untuk R1, R2 dan C1, seseorang dapat menentukan periode (lamanya waktu yang dibutuhkan untuk siklus ON/OFF untuk mengulang), dan siklus kerja (persentase waktu output ON). Meningkatkan C1 akan meningkatkan periode. Peningkatan R1 akan meningkatkan waktu tinggi (T1), tetapi akan membuat waktu rendah (T0) tidak terpengaruh. Menaikkan R2 akan menambah waktu tinggi (T1), menambah waktu rendah (T0) dan menurunkan duty cycle.
Step 4 : Merakit sirkuit Pengatur waktu
Merakit sirkuit timer sesuai dengan skema.
Nilai berikut dapat digunakan untuk resistor dan kapasitor untuk mencapai waktu mati 5 menit / 27 detik:
R1 = 2 Mohm
R2 = 200 kohm
R4 = 10 kohm
R5 = 10 k ohm
C1 = 200 uF
C2 = 10 nF
Penting untuk diperhatikan juga bahwa saya menggunakan output yang biasanya terbuka (NO) dari relai SPDT saya. Saya menyadari bahwa beberapa relai hanya memiliki keluaran yang biasanya tertutup, meskipun mereka memiliki jenis paket yang sama, dan semua indikasinya sama.
Perhatikan juga bahwa dalam gambar saya menggunakan nilai yang berbeda, karena saya tidak ingin menunggu selama 5 menit untuk melihat rangkaian saya bekerja.
Gambar menunjukkan sirkuit yang dipasang pada papan tempat memotong roti. Saya memiliki satu input (+5V/GND dari penguat tegangan) dan satu output (+5V/GND ke Arduino).
Nyalakan sirkuit waktu, dengan Arduino terhubung, lihat apakah itu berfungsi. Anda mendengarkan relai yang digerakkan dari waktu ke waktu.
Step 5 : Sirkuit lengkap dan pengujian
Setelah rangkaian timer bekerja, hubungkan output ke pin Arduino 5V dan GND. Ini akan terlihat seperti yang ada di gambar.
Arduino akan dinyalakan setiap 5 menit dan tetap menyala selama 27 detik. Anda dapat mengubah nilai tersebut dengan memilih nilai yang berbeda untuk resistor dan kapasitor seperti yang dijelaskan sebelumnya.
Rancang casing yang bagus untuk melindungi sirkuit Anda, letakkan di bawah sinar matahari dan lihat apakah itu berfungsi!
Step 6 : Konsumsi daya dan waktu operasi
Saya ingin membuat beberapa pertimbangan tentang konsumsi daya dan waktu pengoperasian.
Mempertimbangkan 5 menit OFF dan 27 detik ON, konsumsi daya dari rangkaian + Arduino adalah sebagai berikut:
Tanpa sirkuit switching (menggunakan mode tidur):
Currenge rata-rata (Iavg) = (Ton*Ion + Toff*Ioff ) / (Ton +Toff)
Ton (Arduino aktif) = 27 s
Ion = 51,7 mA
Toff (arduino mati) = 5 menit = 300 detik
Ioff = 34,9 mA
Rata-rata = 36,3 mA
Tegangan operasi (Vo) = 5V
Daya rata-rata (Pavg) = Vo * Iavg = 5 * 36,3 = 181 mW
Kapasitas baterai Li Ion = 3000 mAh
Tegangan baterai = 3.7V
Daya = 3,7 * 3000 = 11100 mWh
Daya tahan baterai = 11100/181 = 61 jam = 2,5 hari
Dengan rangkaian sakelar pengatur waktu:
Currenge rata-rata (Iavg) = (Ton*Ion + Toff*Ioff ) / (Ton +Toff)
Ton (arduino aktif) = 27 s
Ion = 92 mA
Toff (arduino mati) = 5 menit = 300 detik
Ioff = 0,8 mA
Rata-rata = 8,2 mA
Tegangan operasi (Vo) = 5V
Daya rata-rata (Pavg) = Vo * Iavg = 5 * 8,2 = 41 mW
Kapasitas baterai Li Ion = 3000 mAh
Tegangan baterai = 3.7V
Daya = 3,7 * 3000 = 11100 mWh
Daya tahan baterai = 11100/41 = 270 jam = 11 hari
Kehilangan daya pada TP4056 dan penguat tegangan tidak dipertimbangkan di sini dan tentunya akan mengurangi masa pakai baterai dalam kedua kasus tersebut.
Hal penting yang perlu diperhatikan di sini adalah bahwa rangkaian pengatur waktu ini akan menghemat sebagian energi yang juga memotong daya sensor, sedangkan mode tidur akan onde mengurangi konsumsi mikroprosesor.