Solusi Waktu Balap node tunggal FPV yang terjangkau
Jika Anda menyukai proyek ini, Anda dapat mendukungnya dengan berkontribusi pada basis kode, menguji dan memberikan masukan, berbagi ide baru, dan membantu menyebarkan Injil PhobosLT. Anda juga dapat mempertimbangkan untuk membelikan saya bubble tea atau bir, ini akan mendorong saya untuk membuat proyek ini lebih baik!
Phobos LapTimer (atau PhobosLT) adalah solusi pengaturan waktu putaran yang sederhana namun hebat untuk pilot FPV 5,8GHz. Ini dirancang untuk penggunaan pribadi dan dengan mempertimbangkan drone kecil (2 inci atau kurang), tetapi tidak ada salahnya menjalankannya dengan drone yang lebih besar! Ini adalah perangkat kecil mandiri yang berdaya sendiri dan berkomunikasi melalui WiFi dengan ponsel, tablet, atau laptop. Tujuan dari proyek ini adalah untuk memiliki perangkat kecil dan mudah digunakan yang dapat digunakan di mana saja kapan pun Anda ingin melakukan sesi latihan lomba whoop di ruang tamu atau di tempat pelatihan lokal bersama teman-teman tanpa repot. Sebagian kode didasarkan pada RotorHazard dan ExpressLRS. Pujian besar diberikan kepada orang-orang di belakang organisasi-organisasi ini, mereka telah melakukan BANYAK hal untuk komunitas dan membentuk masa depan FPV. Jika Anda belum mengetahui proyek-proyek ini dan punya waktu, silakan periksa!
PhobosLT memiliki beberapa fitur berikut:
Waktu node tunggal sistem Analog 5,8GHz, HDZero, Walksnail.
Panggilan suara, opsional termasuk nama pilot.
Pembacaan dan kalibrasi RSSI waktu nyata - memungkinkan pengaturan waktu bahkan di ruangan kecil seperti ruangan berukuran 16m^2 atau 200 kaki^2.
2 putaran berturut-turut dan 3 putaran berturut-turut serta pembacaan opsional dengan cepat (khusus dikembangkan untuk RaceGOW).
Riwayat putaran yang dapat dilihat.
Kemampuan untuk mengatur waktu putaran minimal yang dapat diukur untuk menghindari kesalahan positif.
Alarm tegangan rendah yang dapat dikonfigurasi.
Ukurannya kecil, mudah dibuat.
Relatif murah.
Tidak diperlukan aplikasi tambahan, solusi mandiri.
Rencana pengembangan di masa depan:
Berkedip melalui WiFi atau melalui konfigurator web.
Perangkat keras khusus untuk meminimalkan penyolderan.
Integrasi dengan ExpressLRS dan goggle VRX untuk meneruskan waktu putaran ke OSD.
Integrasi dengan RotorHazard untuk mengukur waktu split.
Mendukung banyak pilot secara bersamaan dengan biaya akurasi yang lebih rendah.
Inti dari proyek ini adalah papan ESP32 + modul RX5808. ESP bertindak sebagai server web yang menyajikan halaman web sederhana dengan semua konfigurasinya. Perangkat apa pun dengan konektivitas WiFi dan browser web dapat digunakan untuk menyambungkannya, mengonfigurasi pengatur waktu, dan mengukur waktu putaran.
Waktu putaran terjadi dengan mengukur RSSI dari waktu ke waktu, memfilternya, dan memeriksa puncak RSSI karena semakin dekat drone ke pengatur waktu, semakin tinggi RSSI. Berdasarkan hal tersebut, kami menyiapkan ambang batas Enter RSSI
dan Exit RSSI
, yang memberi tahu kami kapan harus memotong puncaknya. Waktu antara masuk dan keluar RSSI kemudian digunakan untuk mengukur waktu antara puncak terakhir dan puncak saat ini yang merupakan satu putaran.
Komunikasi dengan klien terjadi melalui WiFi. ESP32 menyiapkan titik akses dan klien menghubungkannya. RSSI ditransmisikan melalui soket web untuk menggambar grafik RSSI secara real time. Konfigurasi, interaksi pengguna, dan peristiwa (seperti memulai pengatur waktu, berhenti, melaporkan waktu putaran) dilakukan menggunakan panggilan istirahat.
Browser dimanfaatkan untuk mengeluarkan suara atau menyebutkan waktu putaran menggunakan pustaka articulate.js, namun pager opsional (namun disarankan) dapat dipasang ke pengatur waktu untuk juga mengeluarkan suara setiap kali puncak terdeteksi atau untuk mengingatkan misalnya ketika pengatur waktu tegangan baterai rendah.
Untuk membuat Phobos LapTimer, Anda memerlukan:
Papan breakout ESP32, sebaiknya dengan USB. Basis kodenya plug and play dengan LilyGo T-ENERGY
yang memiliki slot sel Li-Ion 1s 18650 bawaan dan sirkuit penginderaan tegangan yang siap digunakan. Papan yang didukung:
LilyGo T-ENERGI - direkomendasikan.
LilyGo T-CELL - lebih mahal dari yang di atas tetapi memiliki sirkuit pengisian daya.
ESP32-DevKit - sederhana tapi murah.
Modul RX5808 VRx dengan mod SPI.
Suplai tegangan apa pun - baterai, powerbank, dll. Tergantung pada modul ESP32 yang digunakan.
(Opsional) LED warna apa pun (+ resistor yang cocok untuk mengatur arus).
(Opsional) Buzzer 3v3 hingga 5v DENGAN generator (sangat aktif dan tidak pasif).
Untuk menghubungkan RX5808 ke ESP32 gunakan tabel pinout di bawah ini. Harap perhatikan bahwa pin +5v pada RX5808 harus dihubungkan ke sumber 3v3 untuk menurunkan tegangan RX5808 guna mendapatkan resolusi RSSI yang lebih baik dan untuk membantu pendinginan:
PIN ESP32 | RX5880 |
---|---|
33 | RSSI |
GND | GND |
19 | CH1 |
22 | CH2 |
23 | CH3 |
3V3 | +5V |
Pinout input LED, Buzzer, dan tegangan Baterai opsional namun direkomendasikan:
PIN ESP32 | Periferal |
---|---|
21 | Anoda LED (+) |
27 | Buzzer positif (+) |
35 | Input VBAT MAX 3.3v (kode mengasumsikan pembagi tegangan 1/2 dengan sel Li-Ion 1s) |
Anda dapat menemukan diagram koneksi periferal di bawah. Untuk T-Energy dan T-Cell Anda hanya perlu menghubungkan RX5808 dan buzzer.
Alternatifnya, Anda dapat meminta komunitas membuatkan pengatur waktu untuk Anda. Bertanya-tanya tentang perselisihan!
Saat ini pembuatan firmware dilakukan melalui Visual Studio Code. Penyiapan rantai alat sama persis dengan ExpressLRS, jadi jika Anda sudah menyiapkan dan menjalankan rantai alat ExpressLRS, Anda seharusnya sudah mahir. Persyaratan untuk membangun firmware adalah sebagai berikut:
Kode Visual Studio.
PlatformIO.
Git.
Lakukan langkah-langkah berikut untuk menyiapkan rantai alat di komputer Anda:
Unduh dan instal vscode.
Buka vscode, dan klik ikon Extensions
di toolbar sebelah kanan (lihat Mengelola Ekstensi).
Di kotak pencarian, masukkan platformio, dan instal ekstensi (lihat dokumentasi pio install
).
Instal git.
Langkah terakhir sebelum Anda dapat membuat firmware adalah mengkloning repositori ini ke komputer Anda:
Di VSCode buka palet perintah (menggunakan Cmd+Shift+P
di MacOS atau Ctrl+Shift+P
di Windows)
Masukkan Git: Clone
.
Klik itu.
Kemudian, masukkan URL repo PhobosLT (dapat ditemukan di atas halaman github di bawah tombol Clone
).
Pilih folder tempat Anda ingin menyimpan salinan repositori Anda.
Untuk membuat firmware, klik ikon PlatformIO
pada toolbar di sebelah kiri, yang akan menampilkan daftar tugas. Sekarang, pilih Project Tasks
, perluas PhobosLT
-> General
dan pilih Build
. Anda akan melihat hasilnya di terminal setelah beberapa detik ( Success
).
Sebelum mencoba melakukan flash pastikan ada koneksi antara ESP32 dan komputer melalui USB. Flashing adalah proses dua langkah. Pertama kita perlu mem-flash firmware, lalu image sistem file statis ke ESP32.
Untuk mem-flash firmware, klik ikon PlatformIO
di toolbar sebelah kiri, yang akan menampilkan daftar tugas. Sekarang, pilih Project Tasks
, perluas PhobosLT
-> General
dan pilih Upload
. Anda akan melihat hasilnya di terminal ( Success
). Selanjutnya, lanjutkan ke langkah 2.
Pilih Project Tasks
, perluas PhobosLT
-> Platform
dan pilih Upload Filesystem Image
. Tunggu hasilnya di terminal yang mengatakan Success
. Itu saja! Timer Anda siap digunakan.
Jika ada yang tidak beres - silakan periksa Terminal juga. Ini setidaknya akan berisi petunjuk tentang apa masalahnya. Silakan meminta komunitas untuk bantuan lebih lanjut mengenai perselisihan!
Casing ESP-WROOM-32 dari porlock
Bagian ini akan menjelaskan penggunaan dan konfigurasi pengatur waktu. Aplikasi ini terdiri dari 3 halaman dan sangat mudah digunakan!
Nyalakan pengatur waktu, Anda akan mendengar bunyi bip pendek dan panjang.
Nyalakan perangkat Anda dan nyalakan WiFi.
Tunggu hingga menemukan titik akses WiFi yang dimulai dengan PhobosLT_xxxx
.
Klik dan ketik kata sandi: phoboslt
.
Itu harus menghubungkan dan membuka jendela browser dengan aplikasi untuk Anda. Jika tidak terjadi, buka browser dan ketik 20.0.0.1
.
Voila!
Untuk mengonfigurasi pengatur waktu, Anda perlu mengklik tombol Configuration
. Anda akan disambut dengan layar seperti ini:
Di bawah ini Anda dapat menemukan semua parameter konfigurasi dan deskripsinya:
Channel and Band - atur ke Band dan Channel yang sama dengan drone Anda. Band yang Didukung - A, B, E, Fatshark, RaceBand dan LowBand, masing-masing 8 saluran. Frekuensi - ini adalah bidang statis yang akan menampilkan frekuensi berdasarkan Band dan Saluran yang ditetapkan. Waktu Putaran Minimum - Anda dapat mengatur waktu putaran minimum yang dapat diatur waktunya. Hal ini untuk menghindari kesalahan positif ketika Anda mengalami kecelakaan di gerbang start, atau ketika lintasan Anda sangat sempit dan Anda terbang dekat dengan pengatur waktu beberapa kali dalam satu putaran. Ambang Batas Alarm Tegangan Baterai - mengatur alarm tegangan baterai yang akan terpicu setelah tegangan yang diinginkan tercapai. Kisarannya antara 2.5-4.2v. Jenis Penyiar - Anda memiliki beberapa pilihan tentang bagaimana Anda ingin pengatur waktu melaporkan waktu putaran:
None
tidak ada suara sama sekali.
Beep
hanya akan mengeluarkan bunyi bip singkat saat menyeberang untuk memberi tahu Anda bahwa itu telah terdaftar sebagai satu putaran.
Lap Time
akan mengumumkan waktu putaran (termasuk nama pilot Anda jika kolom Nama pilot diisi).
Two Consecutive Lap Time
akan mengumumkan waktu dua putaran berturut-turut.
Three Consecutive Lap Time
akan mengumumkan waktu tiga putaran berturut-turut.
Tingkat Penyiar - mengontrol kecepatan penyiar membaca waktu putaran. Nama Pilot - bila diisi akan mencantumkan nama pilot saat membaca waktu, misal Pilot1 23.45
. Ini berguna ketika ada lebih dari satu pengatur waktu yang berjalan pada waktu yang sama. Saat berlatih sendiri biarkan kosong.
CATATAN: Setelah dikonfigurasi, pastikan untuk menyimpan konfigurasi dengan mengklik tombol Save Configuration
, jika tidak, perubahan tidak akan diterapkan.
Kalibarsi merupakan langkah yang sangat penting dan perlu dilakukan dengan benar untuk memastikan pengaturan waktu terjadi dengan benar dan setiap putaran dihitung oleh pengatur waktu.
Untuk melakukan kalibrasi, klik tombol Calibration
. Anda akan disajikan dengan dua bilah geser dan grafik yang mewakili RSSI dari waktu ke waktu. Anda dapat menganggap RSSI sebagai kebalikan dari jarak antara drone dan pengatur waktu. Semakin tinggi RSSI semakin pendek jaraknya.
Sebuah node dapat berupa Crossing
atau Clear
. Jika nodenya Clear
, maka timer yakin drone tidak berada di dekat timer karena RSSI-nya rendah. Jika Crossing
, timer yakin ada drone yang lewat karena RSSI-nya tinggi. Keliling putaran akan dicatat setelah Crossing
selesai dan RSSI kembali ke zona Clear
. Kami mengkalibrasinya dengan menetapkan ambang batas Enter
dan Exit
RSSI.
Timer yang terkalibrasi dengan baik akan menunjukkan waktu putaran ketika kita hanya memiliki satu persimpangan ketika drone berada paling dekat dengan timer, misalnya:
Crossing
akan selalu ditandai dengan warna hijau tua, sedangkan Clear
akan berwarna biru.
Untuk mendapatkan nilai awal yang baik untuk Enter
dan Exit
RSSI, lakukan langkah-langkah berikut:
Nyalakan timer dan drone Anda, atur ke daya VTx yang diinginkan, tunggu 30 detik hingga VTx mencapai suhu pengoperasiannya.
Tempatkan drone pada jarak sedikit lebih dari satu gerbang di atas pengatur waktu.
Perhatikan RSSI, kurangi 2-5 poin agar aman - itu harus menjadi Enter RSSI
Anda.
Kurangi 8-10 poin lagi dan tetapkan sebagai Exit RSSI
Anda.
Klik Save RSSI Thresholds
- jika tidak, perubahan tidak akan berlaku.
Saat terbang dengan pilot lain, pembacaan RSSI mungkin lebih rendah karena semua kebisingan yang dihasilkan oleh VTx lain di saluran yang berdekatan. Praktik yang baik adalah menurunkan kedua ambang batas beberapa poin saat terbang dengan pilot lain di udara.
Layar Balapan akan memungkinkan Anda memulai atau menghentikan balapan dan melihat serta menghapus waktu putaran Anda. Setelah diklik tombol Race
, layar akan berubah menjadi ini:
Fungsi tombol:
Start Race
- klik untuk memulai hitungan mundur dan memberi sinyal pada pengatur waktu untuk mulai menghitung putaran.
Stop Race
- tekan saat Anda ingin berhenti menghitung putaran baru. Itu tidak menghapus putaran yang dikumpulkan sejauh ini.
Clear Laps
- membersihkan lap di layar, bisa dilakukan saat balapan sedang berjalan juga.
Setelah Anda berlari beberapa putaran, layar akan terisi dengan waktu putaran:
Bergabunglah dengan saluran Discord kami untuk mendapatkan dukungan dan pertanyaan atau sekadar nongkrong! Semua orang dipersilakan!