Daftar Isi:

Jadikan Jadi! Star Trek TNG Mini Engineering Computer: 11 Langkah (dengan Gambar)
Jadikan Jadi! Star Trek TNG Mini Engineering Computer: 11 Langkah (dengan Gambar)

Video: Jadikan Jadi! Star Trek TNG Mini Engineering Computer: 11 Langkah (dengan Gambar)

Video: Jadikan Jadi! Star Trek TNG Mini Engineering Computer: 11 Langkah (dengan Gambar)
Video: Viral! Anak dan ibu diusir dari KRL?? 2024, Desember
Anonim
Image
Image
Jadikan Jadi! Komputer Teknik Mini Star Trek TNG
Jadikan Jadi! Komputer Teknik Mini Star Trek TNG
Jadikan Jadi! Komputer Teknik Mini Star Trek TNG
Jadikan Jadi! Komputer Teknik Mini Star Trek TNG

Gambaran

Saya tumbuh besar dengan menonton Star Trek: The Next Generation. Saya selalu ingin membuat perangkat bertema Star Trek, jadi saya akhirnya berhasil me-remix salah satu proyek lama saya untuk membuat Terminal Tampilan Star Trek.

Terminal menyediakan informasi berikut:

  • Cuaca - menggunakan Layanan Cuaca Nasional
  • Kekuatan Suhu Dalam Ruangan, Kelembaban, dan Senyawa Organik Volatil (VOC)
  • Artikel Berita - dari News.org
  • Jadwal (dengan fungsi alarm) - dari Microsoft Outlook
  • Informasi Kebugaran (Langkah, Menit Bergerak, Poin Kardio, Berat Badan, Kalori yang Terbakar) - dari Google Fitness
  • bagan kode warna resistor
  • sebuah LED Resistor Calculator (untuk menentukan nilai resistor berdasarkan arus dan sumber daya)
  • Alat Pengukuran Daya dan Arus

Informasi ini tersedia melalui kombinasi API dan sensor perangkat keras. Saya memanfaatkan ESP32 untuk mikrokontroler, dan memanfaatkan AWS Cloud untuk semua pengumpulan dan agregasi data.

Saya juga menyertakan beberapa "telur paskah":

  • Penghormatan Ron McNair - Dr McNair adalah alasan saya menjadi seorang insinyur; dia tumbuh 45 menit dari kampung halaman saya. Dia meninggal dalam ledakan Challenger.

    • Nama kapal bintang saya adalah "USS Ronald E McNair"
    • Nomor Registri berasal dari tanggal lahir Sr McNair; Kode Awalan adalah hari dia kehilangan nyawanya.
  • Penggunaan "kode awalan" mengacu pada Star Trek: Wrath of Khan (film Star Trek terhebat sepanjang masa; jangan @ saya).
  • Angka di sebelah kanan kasus terminal mengacu pada persaudaraan saya (1906 - Alpha Phi Alpha) dan almamater dan bidang studi saya - (University of Oklahoma, College of Engineering)

Anda memiliki pilihan untuk menyesuaikan penomoran, huruf, dan nama kapal, registri, dll untuk "telur paskah" Anda sendiri.

Latar belakang

Tahun lalu, saya membutuhkan cara berbiaya rendah untuk mengukur daya dan baterai yang terkuras untuk proyek yang dapat dikenakan. Saya membeli Adafruit INA219 Featherwing, dan menggunakan berbagai macam suku cadang untuk membuat perangkat Pengukuran Daya sederhana (Anda dapat membaca lebih lanjut tentangnya di sini).

Tahun ini, saya memutuskan untuk memutakhirkan perangkat… untuk membuatnya lebih "berteknologi". Saya awalnya berencana untuk membuat tricorder Star Trek yang berfungsi (versi Mark IV TR-590 Mark IX, bagi mereka yang peduli)… tetapi saya segera menyadari bahwa lebih masuk akal untuk membuat sesuatu yang akan duduk di meja saya (maksud saya, mengapa pergi ke semua kesulitan ini untuk membuat perangkat keren, hanya untuk menutupnya dan memasukkannya ke dalam laci saat tidak digunakan).

Jadi, saya beralih untuk membuat versi tampilan komputer yang Anda lihat di Star Trek TNG atau Voyager (atau berbagai macam film). Saya bermain-main dengan desain yang berbeda, lalu menemukan versi yang dibuat oleh Ruiz Brothers dari Adafruit. Adafruit melakukan pekerjaan yang baik dalam menyediakan file sumber untuk proyek cetak 3D mereka, jadi saya dapat mengambil versi aslinya dan mencampurnya kembali untuk perangkat keras, tombol, dan periferal lainnya.

Hal-hal yang perlu diketahui sebelum Anda melanjutkan

  1. Saya memberikan petunjuk langkah demi langkah untuk membuat versi proyek saya; namun, saya tidak merinci langkah-langkah tertentu (saya akan menautkan ke petunjuk atau dokumentasi pendukung)
  2. Ini adalah proyek yang kompleks. Ini adalah "make multi-disiplin", yang membutuhkan keterampilan berikut:

    • Arduino IDE
    • AWS - Anda akan memerlukan akun dan perlu memahami S3, Lambda, dan Node JS
    • Pematerian
    • Pencetakan 3D
  3. Ada "tambahan" opsional untuk meningkatkan proyek untuk mendapatkan informasi Kalender dan Kebugaran. Fungsionalitas disertakan dalam basis kode; namun Anda harus membuat "aplikasi" di awan Azure dan Google untuk mendukung fitur tersebut.
  4. Ini pada akhirnya dapat disesuaikan… Anda dapat menukar Sensor Arus dengan sayap bulu lainnya. Anda dapat menggunakan kombinasi bulu/wifi yang berbeda.

Perlengkapan

Komponen elektronik

  • Adafruit ESP32 Huzzah Feather
  • Adafruit Featherwing Tripler Mini Kit
  • Adafruit 12-Key Capacitive Touch Sensor Breakout
  • Adafruit TFT FeatherWing - Layar Sentuh 3,5" 480x320
  • Adafruit BME680 - Sensor Suhu, Kelembaban, Tekanan dan Gas
  • Dudukan Panel DC 2.1 Barrel Jack (2)
  • Baterai Lithium Ion Polymer - 3,7 V 500mAh
  • Piezo Buzzer
  • Kabel USB Mirco dan pengisi daya 5V (pengisi daya telepon USB biasa akan berfungsi)
  • Pita Foil Tembaga dengan perekat
  • Opsional - Adafruit INA219 Featherwing
  • Opsional - 2.1 Colokan pria - (untuk digunakan dengan Sensor Arus INA219)

Tautan ke semua komponen elektronik kecuali colokan 2.1:

Komponen Filamen 3D Dan Komponen Cat/Pengamplasan Opsional

  • Proto Pasta Konduktif PLA
  • Filamen 3D tambahan - Saya menggunakan 4 warna - Abu-abu, Hitam, Aqua (biru muda) dan Putih
  • Nozel 0,25 dan 0,4 mm (saya menggunakan 0,25 untuk detail huruf).

Komponen dan Alat Perakitan Perangkat Keras

  • Sekrup M2x5 dan M3x5
  • Pin Header Sudut Lurus dan Kanan (Lihat daftar keinginan Adafruit untuk tautan)
  • Besi Solder (dan spool solder, tip tinner, pengisap solder, dll.)
  • Kit Obeng Kepala Philips
  • Kecilkan Bungkus
  • Stranded Wire 22AWG - lima atau enam warna
  • Solid Wire 22AWG - lima atau enam warna
  • Catok PCB dan Tangan Penolong (opsional, tetapi membuat penyolderan lebih mudah)
  • Pemotong Kawat Diagonal
  • Penari telanjang kawat
  • Xacto Knife (untuk menghapus dukungan dari bagian printer 3D)
  • Printer 3D (jika Anda berencana untuk mencetak sendiri)
  • Dempul atau selotip (untuk menempelkan baterai ke bagian dalam kotak yang dicetak)
  • Kaliper digital
  • lem krazy
  • Opsional - Sarung Tangan Sekali Pakai Nitril
  • Opsional - Solder Mat (opsional, tetapi melindungi permukaan)

Catatan: jika Anda tidak memiliki alat ini, saya sarankan Anda memeriksa situs Becky Stern untuk rekomendasi opsi yang bagus.

Perangkat lunak

  • Arduino IDE
  • Editor Node JS (seperti Microsoft Code)
  • Akun AWS
  • Opsional - Akun Google Cloud (untuk info Kebugaran)
  • Opsional - Akun Microsoft Azure Cloud (untuk info Kalender)
  • Langkah 1: Unduh, Ubah File, dan Cetak File 3D

    Unduh, Ubah File, dan Cetak File 3D
    Unduh, Ubah File, dan Cetak File 3D
    Unduh, Ubah File, dan Cetak File 3D
    Unduh, Ubah File, dan Cetak File 3D
    Unduh, Ubah File, dan Cetak File 3D
    Unduh, Ubah File, dan Cetak File 3D
    Unduh, Ubah File, dan Cetak File 3D
    Unduh, Ubah File, dan Cetak File 3D

    Anda dapat mengirimkan file ke layanan pencetakan 3D (seperti Hub 3D) atau Anda dapat mencetaknya sendiri. File tersedia di PrusaPrinters.org.

    Kasing ini adalah remix dari Jam Alarm Portal Py yang ditampilkan di situs web Adafruit. Proyek saya menggunakan TFT serupa, jadi, saya dapat meminimalkan jumlah pekerjaan desain yang diperlukan untuk membuat kasing berfungsi dengan aksesori saya.

    Saya menggunakan pengaturan berikut untuk mencetak:

    • Depan dan Belakang- dicetak pada Tinggi Lapisan 0.2mm dengan nosel 0.4mm, tanpa penyangga
    • Nomor Samping - dicetak pada Ketinggian Lapisan 0,10mm dengan nosel 0,25mm, tanpa penyangga
    • Tombol - dicetak pada Ketinggian Lapisan 0,2 mm dengan nosel 0,4 mm. Anda perlu mencetak 7 dan Anda perlu mencetak dengan Filamen Konduktif Proto-Pasta.
    • Casing - dicetak pada Ketinggian Lapisan 0.2mm.

      Dukungan diperlukan, tetapi tidak diperlukan di mana-mana (hanya di sisi dan tengah tempat keypad berada

    Beberapa hal yang harus Anda ketahui:

    1. Prusa MK3 memungkinkan Anda untuk mengubah warna pada ketinggian lapisan yang berbeda. Saya menggunakan fitur ini untuk bagian nomor samping.
    2. Juga, sehubungan dengan bagian nomor samping:

      • Kru produksi Star Trek TNG akan menaburkan telur paskah di properti. Jika Anda melihat lebih dekat pada berbagai plakat dan panel, Anda akan melihat nama orang, lirik lagu, dll. Saya ingin membuat "telur paskah" saya sendiri untuk nomor samping, jadi saya menggunakan "06" - yang mengacu pada persaudaraan saya (dibentuk pada tahun 1906), dan "OUCOE" - yang mengacu pada almamater saya (University of Oklahoma, College of Engineering).
      • Saya membuat bagian side_number "kosong" yang dapat Anda modifikasi untuk membuat nomor dan teks kustom Anda sendiri.

    Langkah 2: Solder/Rakit Komponen - Bagian a (Keypad dan Nomor Samping)

    Solder/Rakit Komponen - Bagian a (Keypad dan Nomor Samping)
    Solder/Rakit Komponen - Bagian a (Keypad dan Nomor Samping)
    Solder/Rakit Komponen - Bagian a (Keypad dan Nomor Samping)
    Solder/Rakit Komponen - Bagian a (Keypad dan Nomor Samping)
    Solder/Rakit Komponen - Bagian a (Keypad dan Nomor Samping)
    Solder/Rakit Komponen - Bagian a (Keypad dan Nomor Samping)
    Solder/Rakit Komponen - Bagian a (Keypad dan Nomor Samping)
    Solder/Rakit Komponen - Bagian a (Keypad dan Nomor Samping)

    Pertama, kita akan membubuhkan nomor samping. Gunakan sedikit lem untuk menempatkan nomor sisi pada tempatnya.

    Selanjutnya, kita akan merakit keypad

    1. Anda harus memotong 7 potong kawat yang terdampar - masing-masing antara 10-12 inci panjangnya. Ini akan terhubung ke Pin 0-6 dari sensor sentuh kapasitif. Saya sarankan Anda menggunakan warna yang berbeda (dan tulis pemetaan warna/pin, karena Anda akan memerlukan informasi ini nanti). Saya menggunakan kombinasi warna berikut:

      • Kuning - Pin 0/Tombol 1
      • Abu-abu - Pin 1/Tombol 2
      • Merah - Pin 2 /Tombol 3
      • Biru - Pin 3 //Tombol 4
      • Hijau - Pin 4 //Tombol 5
      • Putih - Pin 5 //Tombol 6
      • Hitam - Pin 6 //Tombol 7
    2. Strip 1/2 dari ujung setiap kawat.
    3. Potong 7 lembar pita konduktif (lebarnya masing-masing sekitar 1/2 inci) dan solder kabel ke sisi tembaga pita.
    4. Lepaskan bagian belakang perekat dan tempelkan ke bagian bawah kunci. Anda mungkin perlu memotong beberapa pita tembaga.

    Catatan: Kunci dapat direkatkan dari bawah (sehingga rata dengan bagian atas) atau direkatkan dari atas (sehingga "mengambang" beberapa mm dari atas). Saya memilih untuk merekatkan milik saya dari atas.

    Setelah Anda menyelesaikan semua 7, gunakan sedikit lem untuk menempelkan tombol ke keypad. Saya merasa lebih mudah untuk:

    • Pertama "mengularkan" kawat melalui lubang kunci.
    • Kemudian beri sedikit lem pada bagian punggung/pinggiran kunci
    • Cepat letakkan kunci di tempatnya.

    Catatan: Lem Krazy bekerja paling baik di sini; Anda mungkin ingin menggunakan sarung tangan untuk membatasi kecelakaan dan kemungkinan iritasi kulit.

    Langkah 3: Solder/Rakit Komponen - Bagian B (Sayap Bulu dan Sensor)

    Solder/Rakit Komponen - Bagian B (Sayap Bulu dan Sensor)
    Solder/Rakit Komponen - Bagian B (Sayap Bulu dan Sensor)
    Solder/Rakit Komponen - Bagian B (Sayap Bulu dan Sensor)
    Solder/Rakit Komponen - Bagian B (Sayap Bulu dan Sensor)
    Solder/Rakit Komponen - Bagian B (Sayap Bulu dan Sensor)
    Solder/Rakit Komponen - Bagian B (Sayap Bulu dan Sensor)

    Langkah selanjutnya adalah menyiapkan dan merakit komponen perangkat keras. Pada akhirnya, ini berarti menyolder pin dan kabel header untuk digunakan nanti. Panduan ini mengasumsikan bahwa Anda merasa nyaman dengan menyolder; jika tidak, lihat "Panduan Solder Luar Biasa" ini dari Adafruit.

    Pertama kita akan menyiapkan bahan. Untuk langkah ini, Anda memerlukan:

    • TFT 3.5 Sayap Bulu
    • Bulu ESP32
    • Sayap Bulu INA219
    • Sayap Bulu Tripler
    • Sensor Sentuh Kapasitif MPR121
    • Sensor BME680
    • Pin Header Sudut Lurus dan Kanan
    • Kawat Padat dan Terdampar
    • Alat Solder dan Tangan Bantuan
    • Pemotong Kawat Diagonal dan penari telanjang kawat
    • Jangka lengkung

    Catatan: Saya sarankan Anda terlebih dahulu membaca langkah ini dan memotong semua kabel dan header Anda sebelum Anda mulai menyolder. Dengan begitu, Anda tidak perlu berhenti untuk mengukur/memotong.

    Siapkan TFT 3.5 Featherwing

    TFT siap digunakan di luar kotak dengan satu-satunya penyesuaian. Anda harus menyolder kabel di antara bantalan "Lite" dan bantalan solder pin. Kode kami menggunakan ESP32 Pin 21 untuk mengontrol TFT lite. Atur TFT dengan cara "panjang", dengan tombol reset di bagian bawah. Pin 21 akan menjadi pin kiri bawah.

    Potong sepotong kawat terdampar 40mm. Kupas ujungnya sehingga beberapa milimeter kawat terlihat di setiap ujungnya. Dengan menggunakan besi solder Anda, solder dengan hati-hati ke kedua pin.

    Catatan: Anda hanya membutuhkan panjang sekitar 35mm… sehingga Anda dapat memotong kabel sesuai kebutuhan. Juga, saya menemukan bahwa menambahkan solder ke pad, lalu ke kawat, lalu menyolder kawat ke pad adalah pendekatan yang paling mudah. Akhirnya - bantalan ini kecil… jika Anda tidak nyaman, Anda selalu dapat melewati langkah ini: ini hanya untuk mematikan TFT dengan papan tombol.

    Siapkan Bulu ESP32

    Anda harus menyolder pin header pria standar ke ESP32. ESP32 Anda harus dilengkapi dengan header, meskipun Anda mungkin perlu memangkasnya untuk mendapatkan panjang yang benar (16 pin di sisi panjang; 12 pin di sisi pendek). Pin header dibuat untuk "menjepret", sehingga Anda dapat menggunakan pemotong diagonal untuk memotong header dengan panjang yang benar. Sekali lagi, Adafruit memiliki instruksi bagus tentang cara melakukannya, jadi periksalah jika Anda memerlukan panduan.

    OPSIONAL - Siapkan INA219 Featherwing

    Pertama, solder header jantan ke sayap bulu (menggunakan instruksi yang sama seperti yang digunakan untuk ESP32). Selanjutnya potong empat kawat terdampar sepanjang 20mm. Saya akan membuat 2 HITAM dan yang lainnya dengan warna yang berbeda. Saya menggunakan GREY dan BLUE untuk pilihan warna saya.

    Kupas ujung-ujung kawat sehingga 3-4mm kawat tembaga terbuka di setiap ujungnya. Anda akan menyolder masing-masing satu kawat seperti di bawah ini:

    • ABU-ABU -> V+ (plus)
    • BIRU -> V- (dikurangi)
    • HITAM -> GND (tanah)
    • HITAM -> GND (tanah)

    Biarkan ujung kabel lainnya saat ini; kami akhirnya akan menyoldernya ke colokan DC 2.1.

    Pasang Piezo Buzzer

    INA Featherwing dilengkapi dengan area prototipe kecil; kami akan menggunakannya untuk melampirkan piezo kami. Piezo akan memberi proyek kami kemampuan untuk berbunyi dan membunyikan peringatan, alarm, dll.

    Piezo terhubung ke ESP32 PIN 13; ini berkorelasi dengan pin di sebelah pin USB pada sayap bulu (lihat gambar untuk panah). Pin piezo lainnya terhubung ke ground. Pin pieze cukup panjang untuk menyoldernya langsung ke sayap bulu… Anda hanya perlu membengkokkan pin menjadi bentuk "manusia berkaki busur" (lihat gambar). Setelah pin terpasang, gunakan tangan (atau selotip) untuk menahan piezo di tempatnya, dan solder dari bagian bawah sayap bulu.

    Catatan - Jika Anda tidak menggunakan INA219, Anda harus menyolder piezo langsung ke papan sayap.

    Siapkan Tripler Featherwing

    Sayap bulu menghemat banyak penyolderan; itu bisa menampung 3 bulu/sayap bulu… jadi kita akan menggunakannya untuk membuat sambungan listrik antara TFT, ESP32, INA219 (serta piezo dan pin TFT Lite).

    Untuk membuat sambungan dengan benar, kita perlu menyolder dua pasang header susun dan satu pasang header pria standar.

    • Header pria biasa akan dipasang di tempat "atas", tetapi akan disolder ke sisi bawah Tripler.
    • Dua header susun akan disolder di titik 2 dan 3, di sisi atas Tripler.

    Ini sedikit membingungkan, jadi pastikan untuk melihat gambar untuk memahami di mana setiap header ditempatkan. Juga, kombinasi Catok PCB dan Helping Hands dapat sangat membantu dalam menyolder komponen.

    Siapkan Sensor BME 680 dan Sensor Sentuh Kapasitif MPR121

    Dua sensor terakhir adalah yang paling sulit dipasang. Kita perlu memasang pin header ke papan breakout sebelum menyelesaikan perakitan.

    Sensor BME dipasang pada sudut 90, sehingga saya dapat menyelaraskan sensor ke lubang di case (agar sensor dapat menangkap suhu, gas, kelembaban). Anda harus menyolder pin sudut kanan ke lubang. Lihat gambar untuk memastikan Anda menyelaraskannya dengan benar.

    Sensor Capacitive Touch sangat mudah - cukup solder pin konektor jantan lurus, seperti yang dijelaskan di sini. Catatan: Anda TIDAK HARUS menyolder pin ke Capacitive Touch Pins (0 - 11).

    Pasang Sensor BME 680 dan MPR121 ke Papan Tripler

    Kedua Sensor berkomunikasi melalui I2C… yang berarti kita hanya perlu membuat 4 koneksi antara papan breakout dan Featherwing. Untuk kesederhanaan, saya menyolder semua koneksi antar papan.

    BME 680

    Untuk sensor ini, saya menggunakan Helping Hands dan PCB Vise untuk menahan kedua komponen pada tempatnya (lihat gambar di atas). Sensor BME680 harus ditempatkan di ujung sayap bulu. Lihat gambar di atas untuk mengonfirmasi penempatan.

    Proses menyolder sambungan itu membosankan, jadi lakukan dengan perlahan. Saya menggunakan kawat inti padat untuk koneksi:

      • HITAM - GND
      • MERAH - VIN
      • KUNING - SCL (pin SCK pada sensor untuk
      • ORANGE - SDA (pin SDA pada sensor)

    Catatan: Pin SCL dan SDA diperlukan untuk kedua sensor, jadi mungkin lebih mudah menggunakan pin SCL atau SDA di bagian lain dari Featherwing.

    MPR121

    Bantuan tangan juga membantu saat menyolder sensor ini di tempatnya (pita juga berfungsi). Kode menggunakan I2C untuk komunikasi ke ESP32, jadi Anda akan menghubungkan pin SCA dan SDA.

    Langkah 4: Solder/Rakit Komponen - Bagian C (Keypad ke Sensor Kapasitif dan Feathewing dalam Casing)

    Solder/Rakit Komponen - Bagian C (Keypad ke Sensor Kapasitif dan Feathewing dalam Casing)
    Solder/Rakit Komponen - Bagian C (Keypad ke Sensor Kapasitif dan Feathewing dalam Casing)
    Solder/Rakit Komponen - Bagian C (Keypad ke Sensor Kapasitif dan Feathewing dalam Casing)
    Solder/Rakit Komponen - Bagian C (Keypad ke Sensor Kapasitif dan Feathewing dalam Casing)
    Solder/Rakit Komponen - Bagian C (Keypad ke Sensor Kapasitif dan Feathewing dalam Casing)
    Solder/Rakit Komponen - Bagian C (Keypad ke Sensor Kapasitif dan Feathewing dalam Casing)

    Anda akan menyolder kabel dari Keypad ke sensor Capacitive Touch pada langkah ini. Gunakan pemetaan warna yang sama dari sebelumnya. Jika Anda mengikuti skema warna saya, maka Anda akan menyolder kabel berwarna sebagai berikut:

    • Kuning - Pin 0/Tombol 1
    • Abu-abu - Pin 1/Tombol 2
    • Merah - Pin 2 /Tombol 3
    • Biru - Pin 3 /Tombol 4
    • Hijau - Pin 4/Tombol 5
    • Putih - Pin 5/Tombol 6
    • Hitam - Pin 6/Tombol 7

    Setelah penyolderan selesai, gunakan dasi berkelok-kelok untuk menahan kabel di tempatnya.

    Selanjutnya, kencangkan layar TFT ke bagian "Depan". Anda akan menggunakan sekrup M3 (total empat). Setelah TFT terpasang, kencangkan bagian "Depan" ke kasing. Sekali lagi, Anda akan menggunakan sekrup M3 (dua).

    Selanjutnya, pasang Featherwing Tripler, dengan semua komponen terpasang, ke TFT.

    Catatan - Jika Anda berencana menggunakan baterai, pastikan untuk mencolokkannya ke port ESP32-JST sebelum memasukkan TFT. Gunakan selotip untuk menempelkan baterai ke bagian dalam bawah kasing.

    Langkah 5: OPSIONAL - Solder/Rakit Komponen - Bagian D (Bulu INA219)

    OPSIONAL - Solder/Rakit Komponen - Bagian D (INA219 Feather)
    OPSIONAL - Solder/Rakit Komponen - Bagian D (INA219 Feather)
    OPSIONAL - Solder/Rakit Komponen - Bagian D (INA219 Feather)
    OPSIONAL - Solder/Rakit Komponen - Bagian D (INA219 Feather)
    OPSIONAL - Solder/Rakit Komponen - Bagian D (INA219 Feather)
    OPSIONAL - Solder/Rakit Komponen - Bagian D (INA219 Feather)
    OPSIONAL - Solder/Rakit Komponen - Bagian D (Bulu INA219)
    OPSIONAL - Solder/Rakit Komponen - Bagian D (Bulu INA219)

    Jika Anda menggunakan sensor INA219, maka di sinilah Anda memasang kabel ke colokan DC.

    1. Masukkan steker DC ke penutup belakang, dan kencangkan pada tempatnya.
    2. Gunakan besi solder untuk menghubungkan kabel INA219.

      • Kabel Hitam harus menuju ke GROUND untuk setiap steker DC.
      • Kabel abu-abu harus masuk ke steker INPUT DC
      • Kabel Biru harus masuk ke colokan OUTPUT.

    Langkah 6: Pasang Penutup Belakang dan Colokkan USB

    Langkah terakhir dalam perakitan perangkat keras adalah memasang penutup belakang pada tempatnya - menggunakan sekrup M2 (4). Dari sana, colokkan kabel USB, sambungkan ke PC Anda, dan lanjutkan ke langkah-langkah perangkat lunak!

    Langkah 7: Siapkan Lingkungan AWS

    Siapkan Lingkungan AWS
    Siapkan Lingkungan AWS

    Seperti yang saya nyatakan di intro, premis solusinya adalah sebagai berikut:

    1. Terminal, yang didukung oleh ESP32, menggunakan koneksi MQTT (melalui Wifi) untuk berkomunikasi dengan cloud AWS.
    2. AWS cloud melakukan sebagian besar pemrosesan dan berfungsi sebagai relai antara Monitor dan layanan yang diminta.

    Ada beberapa hal yang perlu kita lakukan dalam langkah ini:

    Pertama, Anda perlu mengatur lingkungan AWS Anda, jika Anda belum melakukannya. Instruksi ini mengasumsikan Anda memiliki Akun AWS yang sudah disiapkan, jadi instruksi tentang pengaturan akun cloud tidak disertakan. Karena itu, langkah-langkahnya lurus ke depan dan dapat ditemukan di sini.

    Setelah Anda melewati langkah itu, Anda perlu membuat beberapa layanan, jadi masuklah ke konsol AWS.

    Buat Sesuatu dan Unduh Kunci

    AWS IoT Core memfasilitasi komunikasi antara AWS cloud dan layar. Anda harus membuat "benda" dan mengunduh sertifikat untuk mendukung komunikasi.

    [Catatan: sebagian besar instruksi ini diambil dari panduan yang ditulis oleh Moheeb Zara, AWS Evangelist]

    1. Buka konsol AWS dan pilih AWS IoT Core.
    2. Di konsol AWS IoT, pilih Daftarkan hal baru, Buat satu hal.
    3. Beri nama hal baru "starTrekESP32". Biarkan bidang yang tersisa disetel ke defaultnya. Pilih Berikutnya.
    4. Pilih Buat sertifikat. Hanya sertifikat, kunci pribadi, dan unduhan Amazon Root CA 1 yang diperlukan agar ESP32 dapat terhubung. Unduh dan simpan di tempat yang aman, karena digunakan saat memprogram perangkat ESP32.
    5. Pilih Aktifkan, Lampirkan kebijakan.
    6. Lewati menambahkan kebijakan, dan pilih Daftarkan Hal.
    7. Di menu sisi konsol AWS IoT, pilih Aman, Kebijakan, Buat kebijakan.
    8. Beri nama kebijakan AllowEverything. Pilih tab Lanjutan.
    9. Tempel di template kebijakan berikut.
    10. { { "Versi": "2012-10-17", "Pernyataan": [{ "Efek": "Izinkan", "Tindakan": "iot:*", "Sumber Daya": "*" }] }
    11. Pilih Buat. (Catatan: Ini hanya disarankan untuk memulai. Setelah Anda merasa nyaman dengan semuanya bekerja, silakan kembali dan ubah ini menjadi sesuatu yang lebih ketat.)
    12. Di konsol AWS IoT, pilih Aman, Sertifikasi.
    13. Pilih yang dibuat untuk perangkat Anda dan pilih Tindakan, Lampirkan kebijakan.
    14. Pilih AllowEverything, Lampirkan.
    15. Sebelum Anda pergi, klik "Pengaturan" (di menu sebelah kiri). "Titik akhir khusus" Anda akan ditampilkan; simpan itu ke file teks… Anda akan membutuhkannya saat mengkonfigurasi ESP32.

    Buat file Lambda Kosong

    Lambda adalah bentuk komputasi tanpa server, jadi kami tidak perlu khawatir tentang perangkat keras apa pun di sini. Pada akhirnya, di sinilah kami akan menempatkan kode yang telah diperbarui (yang akan kami lakukan beberapa langkah). Untuk saat ini, kami hanya ingin membuat placeholder, jadi…

    1. Masuk kembali ke konsol AWS (jika Anda keluar) dan klik Lambda.
    2. Klik tombol "Buat Fungsi".
    3. Di halaman berikutnya, masukkan nama dasar, seperti starTrekDisplay
    4. Pilih Node.js 12. X
    5. Di bawah izin:

      • Jika Anda tahu jalan di sekitar Lambda, dan terbiasa dengannya, maka Anda dapat memilih opsi apa pun yang masuk akal. Anda akan memerlukan izin di CloudWatch, IotCore, S3 (baca dan tulis).
      • Jika Anda tidak yakin dengan izin, pilih "Buat peran baru dengan izin Lambda dasar". Tuliskan nama peran tersebut. Nanti, kami akan mengubah izin.
    6. Klik Buat Fungsi.
    7. Setelah satu menit, Anda akan memasuki layar baru dengan cuplikan kode "hello world". Gulir ke bawah ke Pengaturan Dasar dan klik "Edit"
    8. Ubah batas waktu dari 3 detik menjadi 2 menit dan 0 detik. Catatan: kode Anda tidak boleh berjalan lebih dari 5-10 detik… namun, kami membutuhkan waktu lebih lama untuk autentikasi awal Anda dengan Microsoft (untuk fungsionalitas kalender). Setelah Anda mengautentikasi, Anda dapat mengubahnya menjadi 20 detik.
    9. Tekan simpan.

    Buat Aturan Iot

    1. Tetap di konsol Lambda dan gulir ke atas. Pilih "Tambah Pemicu".
    2. Pilih AWS IoT. Kemudian pilih "Aturan Kustom".
    3. Pilih "Buat Aturan Baru".

      • Nama Aturan: Koneksi ESP
      • Pernyataan kueri aturan: "SELECT * FROM 'startTrekDisplay/pub'
    4. Klik "Tambah"

    Buat Bucket dan Folder S3

    1. Navigasikan ke AWS Console dan pilih S3.
    2. Anda memerlukan ember dan folder untuk menyimpan file autentikasi. Folder ini harus bersifat pribadi. Saya sarankan Anda menggunakan ember apa pun yang sudah Anda miliki dan beri nama buat folder bernama "starTrekDisplay". Catatan - jika Anda tidak memiliki ember, buat ember menggunakan petunjuk di sini.

    Perbarui Izin - Jika Anda mengizinkan Lambda membuat peran untuk Anda, Anda harus mengikuti langkah ini

    1. Masuk ke konsol AWS dan pilih IAM
    2. Klik ROLES, lalu pilih nama role yang Anda buat tadi.
    3. Klik lampirkan kebijakan, lalu pilih kebijakan berikut:

      • AWSIoTAkses Penuh
      • AmazonSNSAkses Penuh
      • CloudWatchAkses Penuh
      • AmazonS3Akses Penuh

    Langkah 8: Unduh Kunci Perangkat Lunak dan Siapkan Layanan Pihak Ketiga

    Unduh Kunci Perangkat Lunak dan Siapkan Layanan Pihak Ketiga
    Unduh Kunci Perangkat Lunak dan Siapkan Layanan Pihak Ketiga

    Saya menggunakan layanan pihak ketiga berikut dalam proyek:

    1. API Waktu Dunia - untuk waktu
    2. API Layanan Cuaca Nasional - untuk cuaca
    3. Microsoft Graph API untuk akses ke kalender saya
    4. Google Fitness API untuk akses ke informasi kebugaran

    Anda perlu menyiapkan akun dan mengunduh kunci untuk memanfaatkan layanan yang sama

    API Waktu Dunia - untuk waktu

    API ini tidak memerlukan kunci, jadi tidak diperlukan tindakan untuk membuatnya berfungsi.

    API Layanan Cuaca Nasional - untuk cuaca

    API Layanan Cuaca Nasional gratis, dan tidak diperlukan kunci API. Namun, mereka meminta Anda menyampaikan informasi kontak (dalam bentuk email) di setiap permintaan (sebagai bagian dari file header). Anda akan menambahkan informasi kontak ke kode di langkah berikutnya.

    OPSIONAL - Microsoft Graph API dan Google Fitness API

    Ini adalah bagian paling kompleks dari pengaturan kode. Perangkat kami tidak memiliki keyboard lengkap… oleh karena itu kami menggunakan sesuatu yang disebut OAUTH untuk Perangkat Terbatas untuk mengakses kalender kami. Sayangnya, Anda harus membuat "aplikasi" Azure dan Google App agar kode Anda dapat menggunakan OAUTH untuk perangkat terbatas.

    Petunjuk untuk membuat aplikasi ada di sini untuk penggemar Microsoft di sini untuk Google. Berikut adalah beberapa hal yang harus Anda ketahui:

    • Anda harus membuat akun cloud Azure dan Google. Ini gratis, dan Anda tidak akan dikenakan biaya apa pun
    • Microsoft:

      • Anda akan diminta untuk menentukan pengguna apa yang dapat menggunakan aplikasi tersebut. Saya sarankan Anda memilih "Akun di direktori organisasi apa pun dan akun Microsoft pribadi". Ini akan memungkinkan Anda untuk menggunakan akun Microsoft pribadi dan akun perusahaan (dalam banyak kasus).
      • Anda akan ingin memilih aplikasi "Seluler dan Desktop", namun Anda tidak perlu mengisi semua informasi (karena ini adalah aplikasi pribadi). Ini berarti Anda tidak dapat membuat aplikasi Anda tersedia untuk dunia…. tapi tidak apa-apa dalam hal ini
      • Setelah aplikasi Anda disiapkan, Anda harus memilih izin yang diperlukan. Saya meminta izin terkait profil dan kalender (lihat gambar di galeri untuk daftar lengkap izin). Anda harus memilih set yang sama ini. Jika Anda menambahkan lebih banyak izin, maka Anda perlu mengubah cakupan dengan tepat di langkah berikutnya.

    Langkah 9: Ubah dan Unggah Kode AWS

    Instruksi ini mengasumsikan Anda sudah familiar dengan pengembangan Node.js dan Lambda. Unduh file tertaut, dan buat modifikasi untuk memperbarui:

    • Aplikasi Microsoft dan informasi Klien
    • Kunci Google
    • Alamat email untuk pelacakan Layanan Cuaca Nasional
    • Nama ember S3
    • Nama folder S3
    • Titik Akhir AWS

    Anda juga harus mengunduh pustaka simpul berikut:

    1. aws-sdk
    2. zona waktu momen
    3. aksen

    Setelah perubahan tersebut dibuat, unggah kode ke lambda placeholder yang Anda buat sebelumnya.

    Langkah 10: Siapkan Arduino IDE dan Unduh Perpustakaan

    Panduan ini juga mengasumsikan Anda sudah familiar dengan Arduino. Anda perlu memastikan IDE Anda diatur untuk bekerja dengan Adafruit ESP32. Ikuti petunjuk di sini jika Anda memerlukan bantuan.

    Setelah ini selesai, unduh pustaka berikut:

    • Adafruit_GFX (dari pengelola perpustakaan)
    • Adafruit_HX8357 (dari pengelola perpustakaan)
    • TFT_eSPI (dari pengelola perpustakaan)
    • TFT_eFEX (https://github.com/Bodmer/TFT_eFEX)
    • PubSubClient (dari pengelola perpustakaan)
    • ArduinoJson (dari manajer perpustakaan)
    • Adafruit_STMPE610 (dari pengelola perpustakaan)
    • Adafruit_MPR121 (dari pengelola perpustakaan)
    • Adafruit_INA219 (dari pengelola perpustakaan)
    • Adafruit_Sensor (dari pengelola perpustakaan)
    • Adafruit_BME680 (dari pengelola perpustakaan)
    • Nada32 (https://github.com/lbernstone/Nada)

    Selanjutnya kita perlu memodifikasi beberapa perpustakaan:

    1. Buka folder PubSubClient (di folder Arduino/Library) dan buka "PubSubClient.h". Temukan nilai untuk MQTT_MAX_PACKET_SIZE dan ubah menjadi 2000.
    2. Selanjutnya buka folder TFT_eSPI, dan buka file " User_Setup_Select.h". Komentari setiap baris "termasuk users_setup…" dan tambahkan baris ini:

    #termasuk

    Setelah itu, unduh file Custom_Tricorder.zip yang ditautkan dan ekstrak file ".h" ke lokasi " TFT_eSPI / User_Setups" di folder perpustakaan Arduino Anda. Saya

    Sekarang, kita dapat beralih ke memperbarui kode Arduino

    Langkah 11: Perbarui & Instal Kode Arduino dan Libatkan

    Perbarui & Instal Kode Arduino dan Libatkan!
    Perbarui & Instal Kode Arduino dan Libatkan!

    Kode Arduino

    Unduh dan unzip file tertaut untuk kode Arduino. Buka tab rahasia.h. Anda harus memperbarui yang berikut ini:

    • WIFI_SSID = perbarui dengan SSID wifi Anda
    • WIFI_PASSWORD = perbarui dengan kata sandi wifi Anda
    • TIMEZONE = perbarui dengan zona waktu Anda dari daftar ini
    • LAT (Anda dapat menggunakan layanan seperti "https://www.latlong.net" untuk menemukan Lintang dan Bujur Anda
    • LNG
    • AWS_IOT_ENDPOINT = Anda seharusnya menyimpan ini dari sebelumnya. Seharusnya terlihat seperti "dx68asda7sd.iot.us-east1-amazonaws.com"
    • AWS_CERT_CA
    • AWS_CERT_CRT
    • AWS_CERT_PRIVATE

    Anda juga akan mengunduh sertifikat dari langkah sebelumnya. Buka lalu di editor catatan (misalnya notepad) dan tempel teks di antara ' R"EOF(' dan ')EOF";'. Pastikan untuk menyertakan "-----BEGIN CERTIFICATE-----" atau "-----BEGIN RSA PRIVATE KEY-----".

    File Gambar

    ESP32 hadir dengan sistem file kecil. Kami menggunakan sistem file ini untuk menyimpan gambar untuk program kami. Anda harus menginstal alat yang memungkinkan Anda mengunggah file.

    1. Pertama, kunjungi tutorial mendalam tentang Tutorial Nerd Acak.
    2. Setelah ini berfungsi, Anda dapat mengunggah file di folder data (juga termasuk dalam file zip).

    Mengikutsertakan

    Unggah kode Arduino terakhir, dan selesai!

    Catatan - Nama Star Trek dan gambar Star Trek dimiliki oleh CBS/Paramount. Mereka memiliki kebijakan yang cukup longgar dalam hal cosplay dan fiksi penggemar - harap baca di sini jika Anda memiliki pertanyaan.

    Kontes Fandom
    Kontes Fandom
    Kontes Fandom
    Kontes Fandom

    Hadiah Pertama dalam Kontes Fandom

    Direkomendasikan: