Pengontrol Penggabungan Sensor

Halaman ini menjelaskan cara merakit pengontrol revisi 2 untuk rig uji fusi sensor. Tes fusi sensor adalah bagian dari Camera Image Test Suite (Camera ITS) di Compatibility Test Suite (CTS). Pengontrol rev2 dirancang untuk memudahkan perakitan dan mengurangi biaya. Manfaat tambahan adalah isolasi suplai antara elektronik dan servos dan kontrol hingga enam servos dari satu pengontrol.

Ikhtisar pengontrol fusi sensor revisi 2

Rig uji fusi sensor

Rig uji fusi sensor memberikan gerakan tetap telepon untuk pengujian yang dapat direproduksi. Telepon diputar di depan target kotak-kotak untuk memungkinkan pengambilan gambar dengan telepon di berbagai posisi. Rig uji memutar telepon di sekitar pusat kamera dari sumbu 90 derajat dan kembali dalam waktu sekitar 2 detik. Gambar 1 menunjukkan dua telepon bergerak dalam rig uji fusi sensor.

Gerakan telepon di rig uji

Gambar 1. Pergerakan telepon di rig uji

Kontrol motor servo

Motor servo analog di rig uji adalah servos posisional yang dikendalikan menggunakan modulasi lebar-pulsa (PWM). Contoh kontrol posisi tipikal ditunjukkan pada Gambar 2. Sinyal kontrol memiliki periode 20 ms. Mengubah lebar pulsa ke lebar minimum menggerakkan motor ke posisi netral dan mengubah lebar pulsa ke lebar maksimum menggerakkan motor 180 derajat searah jarum jam.

Deskripsi kontrol servo

Gambar 2. Deskripsi kontrol servo tipikal

Implementasi pengontrol fusi sensor

Untuk mengontrol gerakan motor servo melalui sebuah host, rig uji fusi sensor memerlukan koneksi USB. Kontroler rev2 rig uji menggunakan papan Arduino UNO R3 yang terhubung dengan USB dengan papan perutean khusus (atau pelindung ) yang dipasang di atasnya. Pelindung dua lapis dirancang dengan alat desain PCB online sumber terbuka dan tersedia di https://easyeda.com/portmanc/servo_controller . Tampilan atas dan bawah pelindung perutean khusus ditunjukkan pada Gambar 3 dan 4.

Tampilan atas pelindung perutean khusus

Gambar 3. Pelindung perutean khusus (tampilan atas)

Tampilan bawah pelindung perutean khusus

Gambar 4. Pelindung perutean khusus (tampilan bawah)

Pengontrol fusi sensor rev2 dapat mengontrol hingga enam rig fusi sensor dari satu host. Tampilan atas menunjukkan garis besar silkscreen untuk memasang enam header motor 3-pin di sepanjang sumbu tengah. Ada konektor tambahan di bagian atas yang tidak digunakan untuk proyek ini. Tampilan bawah menunjukkan garis besar silkscreen untuk koneksi header 4 dan 8-pin yang diperlukan untuk dipasangkan dengan UNO, colokan listrik 5 V, dan kapasitor bypass 10 uF.

Untuk mengisolasi arus servo, daya untuk servos disediakan melalui jack 5 V eksternal. Elektronik UNO diberi daya secara terpisah melalui konektor USB, dan tidak ada pembagian daya antara kedua papan. Perhatikan bahwa soket daya eksternal yang ada pada UNO tidak digunakan dan tertutup dalam desain enklosur untuk menghindari kebingungan saat menyambungkan daya ke pengontrol.

Merakit pengontrol fusi sensor rev2

Bill of Material (BOM)

jumlah Keterangan PN/Tautan
1 Papan perutean fusi sensor setebal 1,6 mm https://easyeda.com/portmanc/servo_controller
1 Arduino UNO R3 https://store.arduino.cc/usa/arduino-uno-rev3
1 2.1x5.5 mm, lubang tembus 5 V, jack barel sudut kanan 101179
1 Kapasitor tantalum 16 V, 10%, 10 uF TAP106K016CCS
1 1x2, jarak 200 mil (5,08 mm), melalui lubang header Kontak Phoenix 651-1755736
6 1x3x, pitch 100 mil (2,54 mm), header pria melalui lubang 732-5316-ND
1 1x8x, pitch 100 mil (2,54 mm), header pria melalui lubang 732-5321-ND
1 1x4x, pitch 100 mil (2,54 mm), header pria melalui lubang 732-5317-ND
3 Kebuntuan wanita-wanita 11 mm (lebar 5 mm, ulir M3-0,5) R30-1001102
4 Kebuntuan pria-wanita 6 mm (lebar 5 mm, ulir M3-0,5) R30-3000602
3 Sekrup mesin pan-head M3-0,5 6 mm 36-9191-3-ND
4 Sekrup mesin kepala datar M3-0,5 8 mm XM2510008A20000
2 Sekrup mesin kepala datar M3-0,5 6 mm XM2510006A20000
6 #4, 1/2 dalam sekrup logam lembaran kepala bundar 90925A110
1 5 V, 15 W catu daya terdaftar UL, colokan 2,1x5,5 mm (motor) 36-9191-3-ND

Alat lain yang dibutuhkan

  • Besi solder, solder, pengisap solder
  • Obeng kepala Phillips kecil
  • Obeng Torx ukuran T10

Mengisi papan perutean

Isi bagian atas dan bawah papan perutean dengan bagian-bagian yang sesuai dengan garis besarnya. Untuk bagian bawah papan, header laki-laki dapat disejajarkan dengan menempatkan header ke lokasi yang benar di papan Arduino dan menempatkan papan perutean di atas konektor. Header 1x8 dan 1x4 kemudian dapat disolder di tempatnya, menjamin keselarasan yang baik antara Arduino dan papan perutean. Hal yang sama dapat dilakukan untuk colokan listrik, tetapi shim diperlukan untuk perakitan yang ketat karena colokan listrik tidak bertumpu pada Arduino setelah perakitan. Setelah menyolder kapasitor bypass, bagian atas papan dapat diisi dengan enam header jantan 1x3 untuk kontrol motor dan header Kontak Phoenix 1x2. Perhatikan bahwa header harus diorientasikan sehingga bagian bawah konektor snap in mengarah ke motor untuk memberikan ruang maksimum untuk pemasangan motor.

Ketika semua komponen disolder di tempatnya, sistem dapat dirakit menggunakan standoff dan sekrup. Ada empat standoff 6 mm laki-laki-perempuan untuk memberikan stabilitas mekanis antara Arduino dan bagian bawah penutup plastik. Namun, hanya ada tiga perbedaan 11 mm female-female antara Arduino dan custom shield karena satu lubang di Arduino (yang dekat dengan pin SCL) tidak dapat digunakan karena kedekatannya dengan female header di Arduino. Pasang tiga kebuntuan perempuan-perempuan ke tiga kebuntuan laki-laki-perempuan untuk mengamankan kebuntuan ke Arduino. Kemudian pasang pelindung papan perutean ke standoff dengan tiga sekrup M3. Gambar 5 menunjukkan tampilan akhir yang dikonseptualisasikan dari perisai penduduk yang dipasang pada Arduino. Gambar 6 menunjukkan foto sistem yang terisi dan terpasang.

Tampilan akhir yang dikonseptualisasikan dari perisai yang dipasang di Arduino

Gambar 5. Perisai terisi dengan header, colokan listrik, dan spacer ditampilkan (tampilan akhir yang dikonseptualisasikan)

Atasan perisai yang terisi

Gambar 6. Perisai rev2.2 terisi terpasang pada Arduino (tampilan atas)

Kandang pengontrol

Pengontrol termasuk enklosur khusus. Gambar mekanik ditunjukkan pada gambar 7.

Gambar mekanis kandang

Gambar 7. Gambar mekanis selungkup

Kontroler rakitan dipasang ke enklosur melalui empat sekrup countersunk melalui pelat bawah enklosur. Enklosur dapat dipasang melalui enam sekrup rakitan kepala bulat dan dua kepala datar. Informasi terkait, seperti urutan nomor servo dan suplai eksternal 5 V, terukir di bagian atas plastik. Gambar 8 menunjukkan foto pengontrol di dalam selungkup rakitan.

Sistem rakitan di dalam kandang

Gambar 8. Sistem rakitan di dalam kandang

Kontrol perangkat lunak dari host

Kode mikro dapat diunduh ke UNO untuk menetapkan pin PWM ke sinyal motor dan menentukan rentang lebar pulsa untuk sudut yang berbeda. Kode mikro untuk kontrol putaran servo dari enam motor HS-755MB disertakan dalam Sumber daya lainnya . Bagian itu juga menyertakan tautan ke program sederhana yang disebut rotator.py , yang memutar servos.

Menggunakan pengontrol rev2

Penggunaan kamera ITS:

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

Dengan skrip pengujian yang disertakan:

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

Sumber daya lainnya

Unduhan gambar mekanik

Unduhan kontrol perangkat lunak