Isi kandungan:

Penjejak Fasa Lunar Tanpa Wayar: 6 Langkah (dengan Gambar)
Penjejak Fasa Lunar Tanpa Wayar: 6 Langkah (dengan Gambar)

Video: Penjejak Fasa Lunar Tanpa Wayar: 6 Langkah (dengan Gambar)

Video: Penjejak Fasa Lunar Tanpa Wayar: 6 Langkah (dengan Gambar)
Video: Adakah sebab ini Diana Danielle mahu berpisah... 2024, November
Anonim
Penjejak Fasa Lunar Tanpa Wayar
Penjejak Fasa Lunar Tanpa Wayar
Penjejak Fasa Lunar Tanpa Wayar
Penjejak Fasa Lunar Tanpa Wayar
Penjejak Fasa Lunar Tanpa Wayar
Penjejak Fasa Lunar Tanpa Wayar
Penjejak Fasa Lunar Tanpa Wayar
Penjejak Fasa Lunar Tanpa Wayar

Penjejak fasa Lunar adalah peranti separa mudah alih yang kecil yang membolehkan anda mengumpulkan maklumat kritikal mengenai Bulan. Peranti melaporkan kembali parameter seperti pencahayaan yang dapat dilihat, fasa, kenaikan bulan dan waktu yang ditetapkan dan banyak lagi.

Peranti ini penting untuk sesiapa sahaja yang berminat dalam sains atau astronomi dan menyediakan hiasan pejabat desktop yang hebat dan pastinya menjadi permulaan perbualan.

Projek ini agak mudah dan memerlukan peranti yang disambungkan ke internet seperti ESP32 namun anda sentiasa dapat menyesuaikan kod untuk berfungsi dengan perisai WiFi, perisai Ethernet atau mana-mana peranti bersambung internet yang mungkin anda miliki. Lunar Phase Tracker telah dirancang untuk mematikan bateri Lithium-Polymer dan paparan E-ink yang sangat cekap tenaga yang bukan sahaja memberikan skrin yang indah untuk dilihat tetapi juga menyimpan gambar terakhir walaupun kuasa padam!

Langkah 1: Mendaftar Maklumat Astronomi

Mendaftar untuk Maklumat Astronomi
Mendaftar untuk Maklumat Astronomi
Mendaftar untuk Maklumat Astronomi
Mendaftar untuk Maklumat Astronomi

Langkah ini sangat mustahak (walaupun membosankan) kerana kami menggunakan API dalam talian untuk mengumpulkan maklumat kami. Walaupun mungkin untuk mengira fasa bulan, pencahayaan dll, adalah tugas yang membosankan untuk melakukannya. API yang kami gunakan memberikan maklumat terkini dari stesen cuaca langsung dan sistem pemantauan sehingga data yang kami terima, adalah hasil dunia nyata dan bukan nilai yang dihitung.

Pergi ke Weather Underground, klik "daftar" dan isikan semua maklumat anda. Akaun adalah percuma dan begitu juga panggilan API anda selagi anda tidak meminta terlalu banyak hasil per minit atau melebihi 500 permintaan setiap hari. Pastikan anda menanda halaman ini, anda boleh kembali kemudian dan menggunakan API untuk statistik cuaca dan maklumat hebat lain. Setelah anda membuat akaun, pergi ke Laman API, klik pada "kunci pembelian" dan pilih pelan percuma, anda hanya perlu memasukkan beberapa butiran dan anda akan menghadapi masalah dengan ID Kunci yang tidak berfungsi. ID ini unik untuk anda dan harus dirahsiakan. Saya telah memberikan kunci saya dalam contoh kod Arduino yang akan kita perhatikan sebentar lagi. Anda lebih dialu-alukan untuk menggunakan ID Kunci saya untuk tujuan ujian tetapi saya sangat mengesyorkan mendaftar untuk mendapatkannya sendiri.

Setelah anda mempunyai ID unik anda, anda boleh pergi ke maklumat Astronomy API, yang sebenarnya sangat telanjang. Anda akan mendapat contoh mudah yang kelihatan seperti ini:

api.wunderground.com/api/8c6dc2e5c6f36de9/a…

URL ini sangat penting kerana inilah yang memberikan kita semua maklumat yang kita perlukan untuk membuat projek kita. Teruskan, klik pautan, anda akan melihat hasil untuk Sydney seperti fasa bulan, pencahayaan dan maklumat lain yang baik. Lihatlah URL, kita akan melihat Sydney, Australia dan kod panjang yang bermula dengan "8c6dcwe…". Kod itu adalah ID Kunci anda yang kami ambil sebelumnya. Tukar kod itu dengan ID unik anda dan lihat bagaimana ia berfungsi, anda akan mendapat hasil yang sama. Cuba bermain-main dengan lokasi. Untuk diri saya di Afrika Selatan, saya menggunakan Johannesburg dan ZA.

Langkah 2: Komponen

Komponen
Komponen
Komponen
Komponen
Komponen
Komponen

Jadi sekarang untuk perkara menarik. Kami memerlukan beberapa komponen, tidak banyak dan tidak ada yang sangat mahal dan saya telah menyediakan pautan Amazon untuk komponen yang saya gunakan. Perlu diingat, jika Anda mahir dengan pengaturcaraan, jangan ragu untuk menggunakan paparan atau peranti internet yang ada. Untuk membina saya, saya menggunakan yang berikut:

Paparan SPI Waveshare E-Ink SPI 4.2"

  • Papan Dev ESP32 (Generik)
  • Peningkatan Tenaga Adafruit 500
  • Pek Bateri Lipo 5000mAh
  • Papan Keranjang (Protoboard)

Anda akan memerlukan alat asas seperti:

  • Besi pematerian
  • Pateri
  • Multimeter
  • Kaliper
  • Gerudi bit untuk memisahkan trek di protoboard
  • Kawat
  • Wire Snips
  • Gam (gam panas akan berfungsi)
  • Komputer riba dengan Arduino IDE dipasang

Satu-satunya alat canggih yang mungkin anda perlukan ialah pencetak 3D untuk membuat kandang. Sekiranya anda tidak memilikinya, itu baik, buangkan penutup anda dari kayu dan gergaji tangan atau apa sahaja yang anda ada. Dan ya, pencetak 3D saya sudah lama dan berdebu lol.

Langkah 3: Perisian Komputer

Sebelum kita mula bekerja pada litar dan pengaturcaraan, pertama kita memerlukan versi terbaru Arduino IDE yang boleh didapati di sini.

Oleh kerana kita menggunakan ESP32 dengan teras Arduino, kita perlu memasang teras ini pada Arduino IDE. Ikuti panduan ringkas dari Github ini yang menunjukkan kepada anda perisian dan konfigurasi apa yang perlu anda lakukan supaya anda dapat menggunakan papan pemuka ESP32 anda di Arduino IDE.

Kami juga memerlukan dua perpustakaan tambahan agar sistem kami berfungsi. Yang pertama adalah perpustakaan Arduino JSON yang membolehkan kita membaca dan menguraikan permintaan JSON yang sebenarnya kita dapat dari Weather Underground. Anda boleh memuat turun kedua perpustakaan ini dari Dropbox peribadi saya atau di bawah. Setelah anda mempunyai fail, ekstrak dan letakkan di folder perpustakaan Arduino anda. Secara amnya terletak di perpustakaan C: / Users / YOUR_NAME / Documents / Arduino \. Pastikan anda memulakan semula IDE anda jika tidak, Arduino tidak akan mengambil penambahan baru. Kod Arduino SRC utama juga terdapat dalam folder itu. Perpustakaan juga mengandungi versi sampel yang diubah suai dari paparan Waveshare. Fail telah diubah untuk dijalankan pada modul ESP32 dengan GPIO mereka dan saya telah menerapkan "font" baru yang berisi semua gambar untuk pelbagai fasa bulan.

Langkah 4: Litar

Litar
Litar
Litar
Litar
Litar
Litar

Baiklah, litar ini sangat mudah dan hanya memerlukan beberapa komponen dan wayar.

Idea umum adalah bahawa kita mempunyai litar pengecas Lipo, penukar penguat untuk memberi kita 5V dan kemudian Kit Peranti ESP32 yang menurunkan voltan ke 3.3V. 3.3V ini juga digunakan untuk paparan Waveshare E-Ink. Ya, ini sedikit tidak cekap kerana meningkatkan dan mengundurkan diri dengan pengatur linier tetapi ESP32 berfungsi dalam julat voltan yang sangat mengerikan. Di sekitar 2.5 - 3.6V. Ini tidak sesuai untuk projek bateri terutamanya yang menggunakan sel polimer litium.

Pendawaian asas adalah seperti berikut:

  • Tingkatkan output 5V converter Vin & GND pada ESP32 Dev Kit
  • Paparan E-Ink ESP32 3.3V 3.3V & GND
  • Paparan ESP32 PIN 18 CLK E-Ink
  • Paparan ESP32 PIN 23 DIN / MOSI E-Ink
  • Paparan E-Ink ESP32 PIN 5 CS / SS
  • Paparan E-Ink ESP32 PIN 32 DC
  • Paparan E-Ink ESP32 PIN 33 RST
  • Paparan E-Ink ESP32 PIN34 BUSY

Anda dapat melihat pendawaiannya sangat sederhana dan papan DIY saya hanya mengambil masa kira-kira 15 minit untuk dibina. Pastikan untuk memeriksa litar pintas dengan multimeter sebelum memberikan kuasa.

Saya juga mengeluarkan LED dari papan penguat ESP32 dan Lipo saya untuk menjimatkan kuasa sekitar 40mA semasa mod tidur. Ini akan membantu bateri bertahan lebih lama. Anda boleh melaksanakan suis kuasa, litar penjimatan kuasa, memutuskan sambungan automatik dll jika anda mahu. Anda boleh mengembangkan projek ini dan menjadikannya sekompleks yang anda mahukan.

Langkah 5: Kod

Kod tersebut
Kod tersebut
Kod tersebut
Kod tersebut
Kod tersebut
Kod tersebut
Kod tersebut
Kod tersebut

Kod boleh didapati di folder yang disediakan semasa langkah 3 atau anda boleh memuat turun fail.ino dari bawah. Anda perlu memasang perpustakaan yang berkaitan seperti yang disebutkan dalam langkah 3 agar semuanya berfungsi bersama. Tidak banyak yang boleh dinyatakan untuk langkah ini kerana kod tersebut dibekalkan dalam keadaan berfungsi. Pastikan untuk memasukkan SSID dan kata laluan rangkaian anda sebelum menguji program, anda selalu dapat menjalankan Imbasan WiFi ESP32 untuk mengesan rangkaian wayarles yang berdekatan namun dalam program saya, maklumat rangkaian hanya ditetapkan dalam kod dan kod sahaja. Mungkin anda boleh mengubahnya untuk menanyakan rangkaian mana yang ingin anda sambungkan:)

Kodnya agak mudah dan saya akan meluangkan masa untuk mengulas dan memperbaikinya dalam beberapa minggu akan datang. Pada dasarnya kami menyambung ke rangkaian, dalam kes saya, rangkaian rumah saya. Kami kemudian berusaha untuk menyambung ke Weather Underground dan menerima teks JSON dari laman web. Perpustakaan ArduinoJSON kemudian digunakan untuk mengekstrak. atau mengurai, kod JSON menjadi tatasusunan atau rentetan yang membolehkan kita memanipulasi nilai sebelum memaparkannya kepada pengguna. Sedikit kod terakhir adalah untuk memprogram GUI dan dilakukan secara percubaan dan kesilapan. Saya melihat paparan, menambah atau menurunkan kedudukan aset dan menjalankan kodnya lagi sehingga saya berpuas hati dengan bagaimana saiz, susun atur dan imej fon.

Saya melaksanakan rutin tidur nyenyak untuk ESP32 untuk menjimatkan tenaga. Lalai adalah 60 saat namun saya cadangkan anda menukar nilainya menjadi satu atau dua jam kerana kemas kini tidak berlaku sekurang-kurangnya beberapa jam. Contohnya menerima beberapa saat jadi pastikan anda melakukan penukaran dengan betul.

Saya juga menggunakan program The Dot Factory untuk menghasilkan susunan hex untuk fon baru. Fon ini digunakan untuk menghasilkan "gambar" untuk fasa bulan. Sekiranya anda ingin mengedit fail fon, pastikan anda menggunakan program yang disebutkan di atas untuk generasi. Agak membingungkan kerana perpustakaan E-Ink tidak didokumentasikan dengan baik dan sebahagian besar kejayaan saya adalah berkat percubaan dan kesilapan. Apabila saya menghabiskan lebih banyak masa dengan kod ini, saya akan mengemas kini Instructable untuk memberikan lebih banyak maklumat mengenai penemuan saya.

Fon yang digunakan untuk fasa bulan mesti dilakukan mengikut susunan ASCII standard. Sekiranya anda membuka font24 dalam folder master-EPD, anda dapat melihat susun atur di mana grafik pertama dikenali dengan ruang putih, yang kedua adalah "!" (tanda seru) dan sebagainya. Anda akan melihat bahawa saya menarik fon yang berkaitan menggunakan nombor 3 atau simbol hashtag pada bit terakhir kod (fungsi getLunarChar). Ini kerana Arduino mengharapkan standard ASCII dari 32 hingga 127. Oleh kerana kami menggunakan fon yang tidak ada kaitan dengan fon sebenar dan bukan matriks grafik fasa bulan, kami perlu memastikan bahawa watak ASCII merujuk gambar fasa bulan pilihan kami. Ini bermaksud bahawa menggunakan! tanda, fon fasa lunar kami menunjukkan grafik fasa bulan kedua dalam senarai itu. Sekiranya anda melihat fon fasa bulan, anda akan melihat sejumlah fasa bulan, semuanya dengan tahap pencahayaan yang berbeza. Pada masa akan datang saya akan menambah lebih banyak kod untuk menggunakan semua grafik yang telah kita laksanakan. Pada masa ini kami hanya menggunakan beberapa namun grafik sudah dilaksanakan dalam fon fasa bulan dan hanya perlu dilaksanakan dalam kod untuk menggunakannya.

Langkah 6: Perhimpunan Akhir

Pemasangan akhir
Pemasangan akhir
Pemasangan akhir
Pemasangan akhir
Pemasangan akhir
Pemasangan akhir

Bahagian terakhir binaan dan yang paling memuaskan, adalah proses pemasangan. Saya merancang dan 3D mencetak penutup yang sesuai dengan papan saya. Projek ini sangat DIY, tidak ada PCB profesional atau susun atur standard tunggal. Sebahagian besarnya, kotak yang saya gunakan cukup besar untuk menampung pengecas lipo atau penukar penguat yang anda pilih untuk digunakan. Selagi mereka menyediakan fungsi asas yang sama seperti yang disebutkan dalam Instructable ini maka anda harus baik-baik saja.

Saya menggunakan 4 skru untuk menahan bahagian atas dan bawah kandang bersama dan gam panas untuk memasang litar DIY saya. saya menggunakan beberapa tetes gam yang sangat kecil untuk menyimpan bateri tetapi jika saya mempunyai lebih banyak masa, saya akan membuat pendakap khusus untuk semua elektronik.

Saya juga memutuskan untuk membuat lubang untuk menekan butang di bahagian belakang. Ini memutuskan bateri dari penukar penguat yang berguna jika anda tidak merancang untuk menjalankan peranti 24/7. Sayangnya penukar pemacu masih menggunakan kuasa walaupun ESP32 anda berada dalam mod tidur nyenyak.

Secara keseluruhan saya sangat gembira dengan hasilnya. Saya banyak belajar semasa menggunakan ESP32 dan dapat melihat sendiri menggunakannya untuk pelbagai projek pada masa akan datang.

Sekiranya anda mempunyai sebarang pertanyaan, jangan ragu untuk bertanya, saya akan lebih bersedia untuk membantu dan jika anda menemui kesilapan dalam Arahan ini, sila beritahu saya.

EDIT: Saya sebenarnya menggunakan mesin casing kecil daripada versi cetak 3D seperti yang anda lihat dalam gambar yang dipaparkan.

EDIT: Dalam gambar yang dipaparkan, kita melihat bulan purnama dengan pencahayaan 99%. Oleh itu bulatan putih, ketika bulan melalui fasa khasnya, imej bulan akan berubah sesuai. Gambar lebih lanjut akan dimuat ketika bulan bergerak melalui fasa sehingga anda dapat memperoleh gambaran grafik.

Cabaran Angkasa
Cabaran Angkasa
Cabaran Angkasa
Cabaran Angkasa

Naib Johan dalam Cabaran Angkasa

Disyorkan: