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.
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.
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.
Gambar 3. Pelindung perutean khusus (tampilan atas)
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.
Gambar 5. Perisai terisi dengan header, colokan listrik, dan spacer ditampilkan (tampilan akhir yang dikonseptualisasikan)
Gambar 6. Perisai rev2.2 terisi terpasang pada Arduino (tampilan atas)
Kandang pengontrol
Pengontrol termasuk enklosur khusus. Gambar mekanik ditunjukkan pada gambar 7.
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.
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
- File produksi selungkup pengontrol fusi sensor Rev2
- Rev2 sensor fusion controller shield file Gerber (rev 2.2)