Pengontrol Android 13

Halaman ini menjelaskan cara merakit pengontrol Android 13, yang mengontrol gerakan untuk rig pengujian penggabungan sensor dan pencahayaan untuk ITS-in-a-box. Pengujian penggabungan sensor adalah bagian dari Camera Image Test Suite (Camera ITS) di Compatibility Test Suite (CTS). Pengontrol Android 13 memungkinkan otomatisasi dengan mengontrol pencahayaan rig dan motor servo untuk scene pengujian yang memerlukan kontrol rotasi dan pencahayaan.

Ringkasan pengontrol Android 13

ITS-in-a-box menyediakan lingkungan pengujian yang konsisten dengan jarak tetap antara tablet pengujian dan ponsel pengujian, selain pencahayaan yang konsisten tanpa sumber cahaya eksternal. Pengontrol Android 13 mengotomatiskan kontrol servo dan kontrol pencahayaan, serta menghilangkan kebutuhan untuk memutar DUT secara manual untuk pengujian scene penggabungan sensor dan untuk menyalakan dan mematikan lampu secara manual untuk pengujian yang dikontrol pencahayaan.

Kontrol servo dan pencahayaan di rig pengujian

Perangkat pengujian fusi sensor menyediakan gerakan tetap ponsel untuk pengujian yang dapat direproduksi. Ponsel diputar di depan target kotak-kotak untuk memungkinkan pengambilan gambar dengan ponsel di berbagai posisi. Untuk test_sensor_fusion, servo memutar ponsel di sekitar pusat sumbu kamera 90 derajat dan kembali dalam waktu sekitar 2 detik. Untuk test_video_stabilization, servo memutar ponsel di sekitar pusat sumbu kamera 10 derajat dan kembali berulang kali untuk meniru gerakan ponsel saat mengambil video sambil berjalan. Gambar 1 menunjukkan dua ponsel yang bergerak di rig pengujian fusi sensor. Gambar 2 menunjukkan satu ponsel yang bergerak di rig pengujian fusi sensor.

Gerakan ponsel di rig pengujian

Gambar 1. Gerakan ponsel di rig pengujian untuk test_sensor_fusion

Gerakan ponsel di rig pengujian

Gambar 2. Gerakan ponsel di rig pengujian untuk test_video_stabilization

Kontrol motor servo

Motor servo analog di rig pengujian adalah servo posisional yang dikontrol menggunakan modulasi lebar pulsa (PWM). Contoh kontrol posisi standar ditunjukkan pada Gambar 3. Sinyal kontrol memiliki periode 20 ms. Mengubah lebar pulsa ke lebar minimum akan menggerakkan motor ke posisi netral dan mengubah lebar pulsa ke lebar maksimum akan menggerakkan motor 180 derajat searah jarum jam.

Deskripsi kontrol servo

Gambar 3. Deskripsi kontrol servo umum

Kontrol pencahayaan

Untuk mengontrol gerakan motor servo dan lampu menggunakan komputer host, rig uji fusi sensor memerlukan koneksi USB. Pengontrol Android 13 menggunakan board Arduino UNO R3 yang terhubung ke USB dengan board pemilihan rute kustom (atau shield) yang dipasang di atasnya. Pengontrol Android 13 dapat mengontrol hingga tiga servo rotator rig fusi sensor, dan hingga tiga sistem pencahayaan dalam kotak ITS atau satu rig fusi sensor dari satu komputer host.

Pengontrol Android 13 revisi 3.0 memungkinkan pengguna menonaktifkan reset otomatis saat port serial Arduino dibuka melalui USB. Fungsi reset otomatis diaktifkan saat pengontrol dicolokkan ke host lain atau digunakan untuk kasus pengujian lainnya. Pengguna dapat mengaktifkan atau menonaktifkan reset otomatis menggunakan tombol fisik di pengontrol.

Pengontrol Android 13 dapat berfungsi dengan Camera ITS-in-a-box apa pun. Pengontrol Android 13 dapat dihubungkan ke kamera ITS-in-a-box (RFoV, WFoV, Modular) atau kotak Sensor Fusion untuk melakukan pengujian yang dikontrol pencahayaan. Mulai Android 15, semua pengujian yang dikontrol pencahayaan disertakan dalam scene_flash dan dapat dijalankan menggunakan kotak fusi sensor, kecuali scene_low_light, yang memerlukan tablet untuk tampilan diagram dan harus dijalankan menggunakan dalam kotak ITS Kamera.

Untuk pengujian di scene_flash dan scene_low_light, lingkungan gelap dengan lampu dimatikan diperlukan untuk memicu fungsi flash otomatis di ponsel pengujian. Gambar 4 menunjukkan lampu di dalam kotak ITS yang dimatikan dan dinyalakan oleh pengontrol Android 13.

Kontrol lampu dalam ITS-in-a-box

Gambar 4. Lampu dimatikan dan dinyalakan untuk test_auto_flash

Histori revisi

Tabel berikut menjelaskan histori revisi pengontrol Android 13 dan menyertakan link download ke setiap versi file produksi.

Tanggal Revisi Download file produksi Log perubahan
Agustus 2024 3.0
  • Menambahkan pengabaian reset otomatis sehingga lampu tidak diaktifkan selama komunikasi dengan DUT
Desember 2022 2,2
  • Menambahkan opsi untuk memesan papan PCB terisi dari EasyEDA
  • Menghapus penundaan palsu setelah servo bergerak dalam kode mikro Arduino
  • Mengubah standoff dari logam menjadi nilon
  • Mengubah MOSFET melalui lubang menjadi MOSFET yang terpasang di permukaan
  • Mengubah kapasitor dari 10 uF menjadi 1.000 uF
Maret 2022 1
  • Menambahkan kemampuan kontrol pencahayaan.
  • Diubah dari 6 kontrol servo menjadi 3 kontrol pencahayaan dan 3 kontrol servo

Penyiapan pengontrol Android 13

Bagian ini menjelaskan cara menyiapkan pengontrol Android 13.

Komponen yang diperlukan

Anda dapat membeli pengontrol Android 13 melalui salah satu vendor yang memenuhi syarat atau Anda dapat membuat pengontrol sendiri. File produksi terdiri dari file Gerber PCB, bill of material (BOM) PCB, informasi penempatan PCB, dan file STEP lampiran. Untuk mendownload file produksi, lihat tabel di Histori revisi.

Jika membuat pengontrol sendiri, Anda harus memiliki board Arduino UNO R3. Jika membeli pengontrol melalui vendor yang memenuhi syarat, Arduino akan disertakan.

Penutup pengontrol Android 13 adalah komponen opsional, tetapi direkomendasikan yang melindungi pengontrol dan memblokir port USB yang tidak digunakan untuk mencegah error penyiapan. Untuk detail tentang harga dan opsi untuk pengontrol, hubungi vendor yang memenuhi syarat.

Prosedur penyiapan

Untuk menyiapkan pengontrol Android 13, ikuti langkah-langkah berikut:

  1. Hubungkan adaptor 12 V (untuk pencahayaan) dan 5 V (untuk servo) ke colokan daya yang sesuai (Gambar 5).

    Lokasi adaptor daya

    Gambar 5. Lokasi adaptor daya

  2. Hubungkan lampu ITS-in-a-box atau Sensor Fusion box Anda ke salah satu colokan output saluran pencahayaan (Gambar 6). Bergantung pada penggunaan batang lampu, gunakan adaptor sesuai kebutuhan (Gambar 7).

    Lokasi output pencahayaan

    Gambar 6. Lokasi output saluran pencahayaan

    Konverter colokan jantan 3,5 mm x 1,35 mm ke colokan jack betina 5,5 mm x 2,1 mm

    Gambar 7. Adaptor yang menghubungkan daya pencahayaan ke pengontrol

  3. Untuk menyiapkan scene sensor_fusion, hubungkan servo ke salah satu header koneksi saluran servo.

    Lokasi koneksi saluran servo

    Gambar 8. Lokasi koneksi servo

    Untuk pengontrol revisi 3.0, saat menghubungkan pengontrol ke host baru, tombol reset otomatis harus disetel ke Enable.

    Untuk revisi 3.0, pengontrol menyertakan tombol reset otomatis yang dapat diaktifkan atau dinonaktifkan. Saat pengujian, sebaiknya setel tombol reset otomatis ke Disable untuk mencegah semua lampu mati sesaat di awal setiap pengujian saat its_base_test membangun komunikasi dengan pengontrol Arduino. Hal ini sangat penting saat menjalankan pengujian paralel (ITS berjalan secara bersamaan dengan sistem pencahayaan rig pengujian yang terhubung ke pengontrol yang sama).

    Reset Lokasi Otomatis

    Gambar 9. Tombol reset otomatis

  4. Hubungkan pengontrol ke host dengan kabel USB-A.

    Lokasi USB-A

    Gambar 10. Port koneksi USB-A ke host

Gambar 11 menunjukkan contoh penyiapan pengontrol Android 13 yang telah selesai untuk satu sistem pencahayaan dan servo.

Lokasi USB-A

Gambar 11. Menyelesaikan penyiapan pengontrol Android 13

Kontrol software dari penyelenggara

Kode mikro dapat didownload ke UNO untuk menetapkan pin PWM ke sinyal motor dan menentukan rentang lebar denyut untuk sudut yang berbeda. Kode mikro untuk kontrol rotasi servo dari enam motor HS-755MB disertakan dalam Referensi lainnya. Bagian tersebut juga menyertakan link ke program sederhana yang disebut rotator.py, yang memutar servo.

Menggunakan pengontrol Android 13

Penggunaan ITS Kamera:

python tools/run_all_tests.py device=device_id camera=0 rot_rig=arduino:1 scenes=sensor_fusion

Dengan menyertakan skrip pengujian:

python rotator.py --ch 1 --dir ON --debug

Download kontrol software