Bagaimana agar arduino hanya menyala ketika daya yang cukup telah dikumpulkan?

8

Baru-baru ini ada artikel di Christian Science Monitor tentang peluncuran satelit seukuran cracker . Artikel itu mengatakan bahwa satelit itu memiliki, "penyimpanan daya dalam kapasitor, dan sirkuit switching untuk menghidupkan mikroprosesor ketika energi yang tersimpan cukup untuk membuat emisi frekuensi radio tunggal - bip digital." Kekuatan dikumpulkan dari sel surya.

Saya tertarik untuk membuat perangkat berbasis bumi yang akan melakukan hal itu, mengumpulkan daya dari sel surya dan hanya menyalakan perangkat untuk mentransmisikan ketika punya daya yang cukup. Saya baru-baru ini membeli arduino , tetapi memiliki sedikit pengalaman dengan teknik semacam ini. Ada saran tentang cara memulai? Terima kasih!

Mike Jones
sumber
1
Oh ya, dan jangan berpikir tentang mengirim Arduino ke luar angkasa - kecuali jika Anda suka radiasi pengion.
LeanerRocky
3
@LeanerRocky, saya suka radiasi pengion. Mari kita mengirim arduino ke luar angkasa.
Kortuk

Jawaban:

7

Satelit itu mungkin akan menggunakan "pemanenan energi" (EH) untuk menyimpan energi yang disediakan oleh sel surya dalam kapasitor super. TI dan Microchip baru saja mulai memasok kit evaluasi menggunakan EH dengan sel surya untuk memberi daya pada MCU dan transceiver nirkabel. Advanced Linear Devices membuat modul pemanenan energi EH300 , yang dapat mengisi daya sepasang kapasitor super dari berbagai sumber, termasuk sel surya. Saya telah bereksperimen dengan satu, dan dapat memberikan 1.8V - 3.3V dari sumber tegangan sangat rendah, dan mampu memberikan 25 mA selama 68 ms, yang lebih dari cukup untuk MCU seperti MSP430 atau XLP PIC dan pemancar berdaya rendah. EH300 memiliki dua kapasitor super. Harganya sekitar £ 34, saya membeli milik saya dari Farnell.

Arduino tidak cocok untuk aplikasi ini, karena tidak akan bekerja dari tegangan rendah seperti itu, dan membutuhkan daya terlalu banyak. PIC XLP biasanya menggunakan 20 nA dalam mode tidur nyenyak, dan 50 uA / Mhz saat aktif.

Leon Heller
sumber
3

Anda akan ingin melihat cara memasukkan avr ke mode tidur. Ketika dalam mode tidur pengontrol mikro akan mematikan sebanyak mungkin untuk meningkatkan penghematan daya. Apa yang dapat Anda lakukan adalah menghubungkan apa pun yang Anda simpan energi dari panel surya hingga salah satu pin ADC pada arduino dan ketika itu mencapai batas tertentu Anda dapat membangunkan pengontrol mikro.

Ada beberapa tingkat tidur yang berbeda, dan semakin banyak daya yang Anda inginkan untuk menyimpan lebih banyak barang dimatikan. Saya pikir pin ADC hanya menyala dengan tingkat penghematan daya tertinggi / paling sedikit. Anda juga dapat menggunakan komparator internal avrs, dengan kapasitor / baterai Anda menyimpan energi dan sumber tegangan untuk ambang tegangan apa pun yang Anda inginkan.

Satu hal terakhir adalah menggunakan arduino untuk ini mungkin bukan yang terbaik. Bahkan dalam kondisi tidur terendah arduino akan menggunakan ~ 15mA, yang mana chip avr hanya menggunakan 0,05mA dalam kondisi ini. Arduino memiliki pengatur tegangan linier di atasnya yang akan selalu menghabiskan sekitar 10mA, ditambah beberapa chip tambahan lainnya. Mungkin layak untuk membuat pengaturan avr Anda sendiri karena alasan ini.

reportingsjr
sumber
ADC beroperasi saat dalam mode tidur? Apakah maksud Anda pembanding analog?
endolith
Saya tidak berpikir AVR yang menggunakan Arduino memiliki komparator internal. Setelah kembali dan mencari lagi ternyata saya salah! Saya tidak yakin dalam kondisi tidur mereka mati.
reportingsjr
2

Anda dapat mencoba teknik yang digunakan oleh mesin surya BEAM yang dipicu tegangan (Tipe I) .

Pada dasarnya Anda mengisi kapasitor besar sampai tegangan melintas batas tertentu, dan Anda memberi daya pada sirkuit Anda dengan melepaskannya. Dengan kapasitor yang cukup besar Anda harus dapat menyalakan arduino cold. Tetapi Anda akan membutuhkan beberapa kapasitor besar untuk memberi makannya> 1s.

Sirkuit ini bisa sangat kecil. Misalnya sirkuit ini , yang ditunjukkan di bawah ini, menggunakan 2 transistor dan Panasonic 1381x .

Mesin surya tipe I sederhana menggunakan 1381x

Mesin tenaga surya menggunakan teknik lain, misalnya pemicu kemiringan. Anda dapat mengetahui lebih lanjut tentang mereka di sini .

ruang bebas
sumber
1

Saya akan saran kedua untuk melihat konsep di balik robot BEAM dan mesin surya. Saya pikir mesin surya berdasarkan pada chip MAX8212 (yang akan memberi Anda contoh gratis) akan menjadi SE yang paling cocok untuk Anda karena merupakan yang paling mudah dikonfigurasi. Arduino adalah platform yang brilian untuk belajar tentang mikrokontroler, tetapi agak haus energi untuk tenaga surya. begitu Anda memahami Arduino, mulailah mencari kerja di chip Atmel AVR secara langsung. ATtiny45 adalah platform kecil yang sangat menyenangkan untuk dikerjakan, dan dapat ditenagai dari mesin tenaga surya dengan cukup baik. Lihat apa yang telah saya lakukan dengan mereka di sini

Jim
sumber
0

Saya tidak punya pengalaman dengan Arduino dan tampaknya dari jawaban saat ini adalah bahwa ia menarik banyak daya dan mungkin tidak memiliki arus tidur yang cukup untuk membuatnya menjadi pilihan yang layak. Sebuah nanowatt xlp PIC akan menjadi tempat untuk memulai, namun Anda masih harus berurusan dengan antarmuka antara pemanen energi (sel surya dalam hal ini) dan microchip. Output dari sel surya adalah tegangan rendah dibandingkan dengan bentuk lain dari pemanen energi dan persyaratan dari sirkuit PIC +, teknologi linier melakukan berbagai konverter dcdc mulai sendiri ditargetkan pada aplikasi pemanenan energi (LTC3105 misalnya) yang dapat bertindak sebagai konverter daya Anda. Dari titik itu Anda akan memasang pic di kapasitor / baterai dan kemudian jalankan dalam mode tidur ketika sel surya sedang mengisi baterai / kapasitor.

Meskipun orang-orang telah menyatakan Arduino terlalu haus daya untuk jenis hal ini, Anda dapat menyelesaikan masalah itu dengan hanya menggunakan lebih banyak sel surya sampai Anda dapat beralih ke PIC dll yang akan memungkinkan Anda untuk membuat sistem yang lebih canggih.

SimonBarker
sumber