Isi kandungan:

LUAR BIASA: 6 Langkah
LUAR BIASA: 6 Langkah

Video: LUAR BIASA: 6 Langkah

Video: LUAR BIASA: 6 Langkah
Video: Andmesh - Hanya Rindu (Official Music Video) 2024, Julai
Anonim
ADUH
ADUH
ADUH
ADUH

Aduh adalah Pembantu Katarak Tidak berguna Omnidirectional peribadi anda. Semasa pengecaman wajah melanda Zeitgeist, OUCH memukul anda! OUCH bukan sahaja tahu bagaimana rupa anda, tetapi juga tahu bagaimana menjengkelkan! Tidak seperti kakak, mesin ini sangat kelihatan dan hanya memenuhi satu tujuan: Untuk menjadikan hidup anda sedikit lebih buruk. Adakah anda pernah lupa cermin mata hitam anda di rumah dan terkejut dengan pantulan terang? OUCH membolehkan anda menghidupkan kembali momen ini berulang kali. Dengan memantulkan cahaya dari sumber cahaya paling terang di sekeliling anda secara langsung, ia akan memastikan bahawa anda tidak akan menikmati satu saat pun di sekitarnya.

Awas, atau JAUH mungkin perkara terakhir yang pernah anda lihat!

Projek ini dijalankan sebagai sebahagian daripada seminar Reka Bentuk Komputasi dan Fabrikasi Digital dalam program master ITECH.

Ogos Lehrecke | Max Zorn

Bekalan

Bahagian elektronik:

Arduino

  • Arduino UNO

    • 2x Reely Mini-Servo S0009
    • Fotoresist 4x
    • Perintang 4x 10k
    • Potensiometer 2x
    • Kabel pencetak USB 1x

Pai raspberi

  • Rasberry Pi 4

    • 1x RaspiCam
    • 4x Reely Mini-Servo S0009
    • 1x PCA9685 Pemacu Servo 12-bit PWM 16-Saluran
    • Bekalan kuasa luaran DC 5v
    • 1x Rasberry Pi 5.1V - bekalan kuasa 3Amp (atau setara luaran)
    • 1x MAKERFACTORY HC-SR05 Ultraschallsensor (MF-6402156)
    • Perintang 1x 470 Ohm
    • Perintang 1x 320 Ohm

Bahagian bercetak 3D:

OUCH terdapat dalam pelbagai bentuk dan saiz. Untuk versi ini, kami menggunakan pencetak 3D untuk mencetak mekanisme tersuai.

  • 4 x Berdiri
  • 2 x Pangkalan S
  • 1 x Pangkalan L
  • 2 x Double Base Pusing
  • 1 x Putaran Asas Tunggal
  • 1 x Set Sokongan Paksi S
  • 1 x Set Sokongan Paksi M
  • 1 x Set Sokongan Paksi L
  • 1 x Pemasangan Kamera
  • 1 x Pemasangan Ringan
  • 1 x Pemasangan Cermin

Sebagai pilihan, anda boleh menggunakan reka bentuk Menara yang disediakan, untuk komponennya:

  • 1 x Menara (bukannya 4 x Berdiri)
  • 1 x Base S & 1x Base M (bukannya 2 x Base S)

Bahagian lain:

  • Mylar
  • 1 x Gelang getah
  • 1 x tali leher
  • Skru Flathead 12 M5 x 160
  • 2 Skru Flathead M5 x 80

Alat:

  • Pencetak 3D
  • Pemutar Skru H3.0
  • Senapang Gam Panas

Langkah 1: Langkah 1: Mencetak Bahagian

Sekiranya anda mempunyai akses ke pencetak 3D, anda boleh mencetak mekanisme khusus untuk menempatkan Servos dan memasang tiga komponen utama.

Untuk komponen Wajah, kita memerlukan:

  • 2 x Berdiri
  • 1 x Pangkalan L
  • 1 x Berganda Pangkalan Berputar
  • 1 x Set Sokongan Paksi M
  • 1 x Pemasangan Sensor Kamera & Jarak Jauh

Komponen Cahaya memerlukan:

  • 1 x Berdiri
  • 1 x Pangkalan S
  • 1 x Berganda Pangkalan Berputar
  • 1 x Set Sokongan Paksi S
  • 1 x Pemasangan Ringan

Komponen Mirror terdiri daripada yang berikut:

  • 1 x Berdiri
  • 1 x Pangkalan S
  • 1 x Single Base Berputar
  • 1 x Set Sokongan Paksi L
  • Pemasangan Cermin

Akhir sekali, anda juga boleh mencetak menara yang disediakan.

Sekiranya anda ingin menggunakannya sebagai asas untuk ketiga-tiga komponen, anda perlu menyesuaikan matematik vektor dalam kod dengan sewajarnya. Selanjutnya, sambungkan komponen Wajah dengan Base M dan bukannya Base L ke menara.

Langkah 2: Langkah 2: Membuat Cermin

Langkah 2: Membuat Cermin
Langkah 2: Membuat Cermin
Langkah 2: Membuat Cermin
Langkah 2: Membuat Cermin

Untuk membuat komponen Cermin anda sendiri, potong sekeping bulat Mylar dan letakkan di atas bahagian cermin bercetak 3d. Kemudian gunakan gelang getah terlebih dahulu untuk memperbaikinya. Jalur getah harus dipasang di dalam alur di sekitar komponen. Kemudian gunakan tali leher untuk mengikat sambungan dengan lembut, jangan terlalu ketat. Sekarang anda boleh mula meregangkan Mylar sehingga anda mendapat permukaan cermin yang berkilat. Akhir sekali, ketatkan tali leher dan nikmati pantulan wajah cantik anda!

Langkah 3: Langkah 3: Menyusun Komponen

Langkah 3: Menyusun Komponen
Langkah 3: Menyusun Komponen
Langkah 3: Menyusun Komponen
Langkah 3: Menyusun Komponen
Langkah 3: Menyusun Komponen
Langkah 3: Menyusun Komponen
Langkah 3: Menyusun Komponen
Langkah 3: Menyusun Komponen

Komponen Muka

  1. Panaskan Servo penumbuk di bahagian pemotong yang sesuai
  2. Lekatkan penyambung Servo ke dalam alur, yang terletak di bahagian bawah bahagian bawah
  3. Pasang kedua-dua bahagian asas, supaya Servo saling bersambung dengan penyambung
  4. Gunakan skru Servo untuk memasang penyambung ke Servo
  5. Panaskan sekeping penyambung kedua ke dalam alur yang sesuai, yang terletak di bahagian atas sokongan paksi
  6. Gunakan 4 baut M5 untuk memautkan sokongan paksi ke dasar berputar
  7. Panaskan Servo kedua ke pelekap
  8. Luncurkan kamera pada pin
  9. Pasang sensor jarak ultrasonik ke dudukan, baik melalui skru atau pelekat panas
  10. Sambungkan pelekap kamera / sensor ke sokongan paksi, Servo sekali lagi harus meluncur ke bahagian penyambung
  11. Gunakan skru Servo untuk memasang penyambung ke Servo
  12. Skru Pi Raspberry dan servo driver ke sekeping papan lapis (Pastikan jaraknya sesuai dengan lubang Base L)
  13. Skru komponen Wajah ke dudukan, menggunakan bolt M5

Komponen Cermin

  1. Ikuti langkah 1 hingga 7
  2. Sambungkan Cermin ke sokongan paksi
  3. Lekatkan pendirian cermin ke papan lapis, supaya komponen Cermin dan Muka sejajar
  4. Skru komponen Mirror ke dudukan, menggunakan bolt M5

Komponen Cahaya

  1. Ikuti langkah 1 hingga 7 dari atas
  2. Benarkan sensor cahaya melalui lubang pelekap di bahagian bawah salib bayang
  3. Sambungkan salib bayang ke sokongan paksi, Servo sekali lagi harus meluncur ke bahagian penyambung
  4. Gunakan skru Servo untuk memasang penyambung ke Servo
  5. Lekatkan dudukan ke papan lapis, supaya komponen Cahaya, Cermin dan Wajah diselaraskan dan Cermin berada di antara komponen Wajah dan Cahaya
  6. Skru komponen Wajah ke dudukan, menggunakan bolt M5

* Semua komponen juga dapat dipasang ke menara, namun pertimbangkan kompleksitas pengkodan dan pendawaian yang meningkat dan waktu percetakan. Sekiranya anda ingin menggunakan menara, gunakan bahagian Base M dan bukannya Base L untuk komponen Face dan skru bahagian Base ke menara menggunakan eyelet dan bolt M5.

Langkah 4: Langkah 4: Konfigurasikan Papan

Langkah 4: Konfigurasikan Papan
Langkah 4: Konfigurasikan Papan
Langkah 4: Konfigurasikan Papan
Langkah 4: Konfigurasikan Papan
Langkah 4: Konfigurasikan Papan
Langkah 4: Konfigurasikan Papan

Berikut adalah rajah pendawaian untuk ketiga-tiga komponen tersebut. Pelacak matahari bertindak pada gelungnya sendiri di Arduino dan menghantar kedudukan servo ke Rasberry Pi melalui port USB bersiri. Sensor jarak pilihan boleh disambungkan ke bahagian depan pan / tilt piCamera untuk membuat triangulasi sasaran yang lebih kuat. Di sini kita akan meletakkannya dalam garis lurus dan hanya rata-rata vektor sehingga tidak diperlukan.

Empat servo disambungkan ke pemacu servo PCA9685 yang dikuasakan oleh bekalan kuasa 5v luaran. Dua dari servo mengendalikan kuali dan kecondongan untuk kamera pelacak wajah, sementara dua yang lain, mengawal kuali dan kecondongan untuk cermin.

Langkah 5: Kodnya:

Kodnya
Kodnya

Kod untuk projek ini boleh dibahagikan kepada dua bahagian: Kod penjejakan cahaya Arduino dan kod penunjuk muka / cermin muka python.

Kod Arduino:

Kod ini adalah versi yang sedikit diubah suai dari projek pengesanan matahari dari geobruce. Ini adalah rujukan yang baik untuk mengetahui lebih banyak mengenai komponen penjejakan suria dan lebih banyak butiran boleh didapati di halaman arahan ini. Nilai intensiti cahaya diambil dari 4 perintang foto dan rata-rata mencari kawasan paling terang dan menyesuaikan servo dengan sewajarnya. Kami kemudian menuliskan nilai sudut servo ke port bersiri.

Kod Python:

Kod ini mengintegrasikan CV terbuka untuk membuat mekanisme kecondongan pengintip muka serta mendorong servo untuk cermin. Anda perlu melalui beberapa langkah untuk memuat turun CV terbuka di Raspberry pi anda. Terdapat banyak sumber untuk ini tetapi saya sangat menyukainya dengan pyimagesearch. Jalan-jalan lengkap proses ini boleh didapati di sini. Catatan: Kami telah memuat turun perpustakaan CV terbuka ke dalam persekitaran maya yang kami jalankan semua kodnya, jika anda memutuskan untuk melakukan ini, pastikan anda memuat turun semua kebergantungan ke dalam persekitaran maya yang anda jalankan dan bukan Pi itu sendiri.

Setelah memuat turun CV terbuka, kod ini juga memerlukan beberapa lagi kebergantungan (dipasang pada persekitaran tertentu yang anda jalankan) untuk dijalankan:

  • Adafruit ServoKit: Halaman penuh mengenai proses memuat turun pada raspberry Pi boleh didapati di sini.
  • imutil
  • kekenyangan
  • gpiozero (jika menggunakan sensor jarak)

Untuk penjejakan wajah, skrip memerlukan argumen (--faces) yang merupakan fail.xml yang digunakan openCv untuk mencari wajah. Anda harus meletakkan fail ini dalam direktori yang sama dengan skrip python. Saya telah memberikannya dalam muat turun dan juga boleh didapati di sini.

Langkah 6: Menjalankan Kod

Menjalankan Kod
Menjalankan Kod
Menjalankan Kod
Menjalankan Kod

Setelah anda memuat turun semua kod dalam direktori yang sama dan menyediakan persekitaran maya anda dengan CV terbuka, anda sudah bersedia untuk menjalankannya.

  1. Buka prompt arahan pada pi anda
  2. Taipkan workon cv (atau mana sahaja nama yang anda pilih untuk persekitaran maya anda)
  3. Tukar direktori ke tempat anda menyimpan fail anda (cd (jalan ke fail))
  4. Baris terakhir menjalankan program dan menentukan fail lata haar. (python Face3.py --faces haarcascade_frontalface_default.xml)

Semasa anda menjalankannya, anda akan melihat aliran video dari picam muncul di skrin dan command prompt akan mula mencetak nilai servo dari keenam-enam servo.

Dan anda sudah selesai! Bergantung pada kualiti servo yang anda miliki, anda mungkin ingin menentukurkannya secara khusus untuk meningkatkan ketepatan sistem anda. Kami akhirnya perlu mengubah semua rentang PWM agar mereka berfungsi dengan baik.

Disyorkan: