Mündəricat:

ƏLAQƏ: 6 addım
ƏLAQƏ: 6 addım

Video: ƏLAQƏ: 6 addım

Video: ƏLAQƏ: 6 addım
Video: Cinsi əlaqə zamanı qadının 4 nahiyəsinə toxunmaq olmaz (Xanımlar İzləməsin) 2024, Iyul
Anonim
ƏLAQƏ
ƏLAQƏ
ƏLAQƏ
ƏLAQƏ

Ouch şəxsi çox yönlü faydasız katarakt köməkçisidir. Üz tanıma Zeitgeist -i vurduqca, OUCH sizi vurur! OUCH yalnız necə göründüyünüzü deyil, həm də çox əsəbi olmağı da bilir! Böyük qardaşdan fərqli olaraq, bu maşın çox görünür və yalnız bir məqsədi yerinə yetirir: Həyatınızı bir az daha pis etmək. Günəş eynəyinizi evdə heç unutdunuzmu və parlaq əksinə təəccübləndinizmi? OUCH bu anı təkrar -təkrar yaşamağa imkan verir. Ətrafınızdakı ən parlaq işıq mənbəyindən olan işığı birbaşa üzünüzə əks etdirərək, ətrafınızda bir an belə zövq almamağınızı təmin edəcək.

Diqqət yetirin, yoxsa görməyəcəyiniz son şey OUCH ola bilər!

Layihə ITECH magistr proqramında Hesablama Dizaynı və Rəqəmsal İstehsalat seminarı çərçivəsində həyata keçirildi.

Avqust Lehrecke | Maks Zorn

Təchizat

Elektron hissələr:

Arduino

  • Arduino UNO

    • 2x Reely Mini Servo S0009
    • 4x fotorezistorlar
    • 4x10k rezistorlar
    • 2x potensiometr
    • 1x USB printer kabeli

Moruq Pi

  • Rasberry Pi 4

    • 1x RaspiCam
    • 4x Reely Mini Servo S0009
    • 1x PCA9685 16 Kanal 12-bit PWM Servo Sürücü
    • 5v DC xarici enerji təchizatı
    • 1x Rasberry Pi 5.1V - 3Amp enerji təchizatı (və ya xarici ekvivalent)
    • 1x MAKERFACTORY HC-SR05 Ultraschallsensor (MF-6402156)
    • 1x470 Ohm müqavimət
    • 1x 320 Ohm müqavimət

3D çaplı hissələr:

OUCH müxtəlif forma və ölçülərdə gəlir. Bu versiya üçün xüsusi mexanizmləri çap etmək üçün 3D printerdən istifadə etdik.

  • 4 x Stand
  • 2 x Baza S
  • 1 x Baza L
  • 2 x Dönmə Baza İkiqat
  • 1 x Tək Dönmə Baza
  • 1 x Eksen dəstəyi S
  • 1 x Eksen dəstəyi M
  • 1 x Eksen dəstəyi L
  • 1 x Kamera Dağı
  • 1 x İşıq Dağı
  • 1 x Güzgü Dağı

İsteğe bağlı olaraq, komponentləri tənzimləmək üçün təqdim olunan Tower dizaynını istifadə edə bilərsiniz:

  • 1 x Tower (4 x Stand yerinə)
  • 1 x Base S və 1x Base M (2 x Base S yerinə)

Digər hissələr:

  • Mylar
  • 1 x Kauçuk bant
  • 1 x Zip kravat
  • 12 M5 x 160 Düz Vida
  • 2 M5 x 80 Düz Vida

Alətlər:

  • 3D printer
  • H3.0 Tornavida
  • İsti Yapışqan Tabancası

Addım 1: Adım 1: Parçaları çap edin

3D printerə çıxışınız varsa, Servoları yerləşdirmək və üç əsas komponenti bağlamaq üçün xüsusi mexanizmlər çap edə bilərsiniz.

Face komponenti üçün bizə lazımdır:

  • 2 x Stend
  • 1 x Baza L
  • 1 x Dönən Baza İkiqat
  • 1 x Eksen dəstəyi M
  • 1 x Kamera və Məsafə Sensoru Dağı

Light komponenti tələb edir:

  • 1 x Stand
  • 1 x Baza S
  • 1 x Dönən Baza İkiqat
  • 1 x Eksen dəstəyi S
  • 1 x İşıq Dağı

Güzgü komponentləri aşağıdakılardan ibarətdir:

  • 1 x Stand
  • 1 x Baza S
  • 1 x Dönən Baza Tək
  • 1 x Eksen dəstəyi L
  • Güzgü dağı

Nəhayət, təqdim olunan qülləni də çap edə bilərsiniz.

Hər üç komponent üçün əsas olaraq istifadə etmək istəyirsinizsə, koddakı vektor riyaziyyatını buna uyğun olaraq düzəltməlisiniz. Bundan əlavə, Face komponentini Base L əvəzinə Base M ilə bağlayın.

Adım 2: Adım 2: Güzgü hazırlayın

Addım 2: Güzgü hazırlayın
Addım 2: Güzgü hazırlayın
Addım 2: Güzgü hazırlayın
Addım 2: Güzgü hazırlayın

Öz Güzgü komponentinizi hazırlamaq üçün Mylar -ın dairəvi bir hissəsini kəsin və 3d çap olunmuş güzgü hissəsinin üstünə qoyun. Sonra əvvəlcə onu düzəltmək üçün bir rezin bant istifadə edin. Kauçuk bant, komponentin ətrafındakı yivin içərisinə uyğun olmalıdır. Sonra əlaqəni yumşaq bir şəkildə bağlamaq üçün bir fermuar istifadə edin, hələ çox sıxmayın. İndi parlaq, yansıtıcı bir səth əldə edənə qədər Mylar uzatmağa başlaya bilərsiniz. Nəhayət, fermuar bağlayın və gözəl üzünüzün əks olunmasından zövq alın!

Addım 3: Adım 3: Komponentlərin yığılması

Addım 3: Komponentlərin yığılması
Addım 3: Komponentlərin yığılması
Addım 3: Komponentlərin yığılması
Addım 3: Komponentlərin yığılması
Addım 3: Komponentlərin yığılması
Addım 3: Komponentlərin yığılması
Addım 3: Komponentlərin yığılması
Addım 3: Komponentlərin yığılması

Üz Komponenti

  1. Fırlanan bazanın kəsilməsinə uyğun olaraq Servo yumruğunu yapışdırın
  2. Servo konnektorunu alt hissənin altındakı yivə yapışdırın
  3. İki əsas hissəni bir araya gətirin ki, Servo bağlayıcı ilə kilidlənsin
  4. Servo konnektoru düzəltmək üçün Servonun vintini istifadə edin
  5. İkinci bağlayıcı parçanı ox dəstəyinin yuxarı hissəsində yerləşən yivə isti yapışdırın
  6. Eksen dəstəyini fırlanan bazaya vidalaşdırmaq üçün 4 M5 bolt istifadə edin
  7. İsti yapışqan ikinci Servonu dağa yapışdırın
  8. Kameranı sancaqlar üzərində sürüşdürün
  9. Ultrasonik məsafə sensörünü vintlə və ya isti yapışdıraraq montaja bağlayın
  10. Kamera / sensor bağlamasını ox dəstəyinə bağlayın, Servo yenidən bağlayıcı hissəyə sürüşməlidir
  11. Servo konnektoru düzəltmək üçün Servonun vintini istifadə edin
  12. Raspberry Pi və servo sürücüsünü bir kontrplak parçasına vidalayın (Aralarındakı B L deliklərinə uyğun olduğundan əmin olun)
  13. Face komponentini M5 boltlardan istifadə edərək stendlərə vidalayın

Güzgü Komponenti

  1. 1 -dən 7 -dək addımları izləyin
  2. Güzgünü ox dəstəyinə qoşun
  3. Güzgü və Üz komponentinin hizalanması üçün kontrplaka bir güzgü stendi yapışdırın
  4. M5 boltlardan istifadə edərək, Güzgü komponentini stendə vidalayın

İşıq Komponenti

  1. Yuxarıdan 1 ilə 7 arasındakı addımları izləyin
  2. İşıq sensorlarını kölgə salma xaçının altındakı montaj deliklərindən keçirin
  3. Gölgelendirme xaçını ox dəstəyinə bağlayın, Servo yenidən bağlayıcı parçasına sürüşməlidir
  4. Servo konnektoru düzəltmək üçün Servonun vintini istifadə edin
  5. İşıq, Güzgü və Üz komponentinin hizalanması və Güzgü Üz və İşıq komponentləri arasında olması üçün kontrplak üçün stend yapışdırın.
  6. Face komponentini M5 boltlardan istifadə edərək stendlərə vidalayın

*Bütün komponentlər qülləyə əlavə edilə bilər, baxmayaraq ki, kodlaşdırma və naqillərin mürəkkəbliyini və çap müddətini nəzərə alın. Qülləni istifadə etmək istəyirsinizsə, Üz komponenti üçün Lase B yox, Base M hissəsini istifadə edin və Base hissələrini delikli və M5 boltlardan istifadə edərək qülləyə vidalayın.

Adım 4: Adım 4: Lövhələri konfiqurasiya edin

Addım 4: Lövhələri konfiqurasiya edin
Addım 4: Lövhələri konfiqurasiya edin
Addım 4: Lövhələri konfiqurasiya edin
Addım 4: Lövhələri konfiqurasiya edin
Addım 4: Lövhələri konfiqurasiya edin
Addım 4: Lövhələri konfiqurasiya edin

Budur üç komponentin bağlanma diaqramı. Günəş izləyicisi Arduino üzərindəki öz döngəsində hərəkət edir və Servo USB portu vasitəsi ilə servo mövqelərini Rasberry Pi -yə göndərir. İsteğe bağlı məsafə sensoru, hədəfin daha möhkəm üçbucağı yaratmaq üçün tavanın/əyilmənin piCamerasının önünə bağlana bilər. Burada onları düz bir xəttə düzəcəyik və vektorların ortalamasını alacağıq, buna görə tələb olunmur.

Dörd servo, xarici 5v enerji təchizatı ilə təchiz edilmiş PCA9685 servo sürücüsünə bağlıdır. Servolardan ikisi üz izləmə kamerası üçün tavanı və əyilməni idarə edir, qalan ikisi isə tavanı idarə edir və güzgü üçün əyilir.

Addım 5: Kod:

Kod
Kod

Bu layihənin kodu iki hissəyə bölünə bilər: Arduino işıq izləmə kodu və piton üz izləmə/güzgü yerləşdirmə kodu.

Arduino Kodu:

Bu kod geobruce -dən günəş izləmə layihəsinin bir qədər dəyişdirilmiş bir versiyasıdır. Günəş izləmə komponenti haqqında daha çox məlumat əldə etmək üçün böyük bir istinaddır və daha çox məlumatı bu təlimat səhifəsində tapa bilərsiniz. İşıq intensivliyi dəyərləri 4 foto-rezistordan alınır və ən parlaq sahəni tapmaq və servoları buna uyğun olaraq tənzimləmək üçün ortalamaya alınır. Daha sonra servo açı dəyərlərini serial portuna yazırıq.

Python Kodu:

Bu kod, üz izləmə pan əyilmə mexanizmi yaratmaq üçün açıq CV -ni birləşdirir və güzgü üçün servoları idarə edir. Raspberry pi -də açıq CV -ni yükləmək üçün bəzi addımlardan keçməlisiniz. Bunun üçün bir çox qaynaq var, amma pyimagesearch -dən çox xoşum gəlir. Bu prosesin tam yolunu burada tapa bilərsiniz. Qeyd: Açıq CV kitabxanalarını bütün kodu işlədəcəyimiz bir virtual mühitə yüklədik, əgər bunu etmək qərarına gəlsəniz, bütün asılılıqları proqramı işlədiyiniz virtual mühitə yüklədiyinizə əmin olun. Pi özü.

Açıq CV -ni yüklədikdən sonra bu kodun işləməsi üçün daha çox asılılıq (işlədiyiniz xüsusi mühitə quraşdırılmış) tələb olunacaq:

  • Adafruit ServoKit: Moruq Pi üzərində yükləmə prosesinə dair tam bir səhifəni burada tapa bilərsiniz.
  • imutillər
  • əsəbi
  • gpiozero (məsafə sensoru istifadə olunursa)

Üz izləmə üçün skript, OpenCv-in üzləri tapmaq üçün istifadə etdiyi.xml faylı olan bir arqument (--faces) tələb edir. Bu faylı python skripti ilə eyni qovluğa yerləşdirməlisiniz. Yükləmələrdə təmin etdim və burada da tapa bilərsiniz.

Addım 6: Kodun işə salınması

Kodun işlədilməsi
Kodun işlədilməsi
Kodun işlədilməsi
Kodun işlədilməsi

Bütün kodları eyni qovluğa yüklədikdən və virtual mühitinizi açıq CV ilə qurduqdan sonra onu işə salmağa hazırsınız.

  1. Pi -də əmr satırını açın
  2. Workon cv yazın (və ya virtual mühitiniz üçün hansı adı seçmisinizsə)
  3. Faylları saxladığınız qovluğu dəyişdirin (cd (fayllara gedən yol))
  4. Son sətir, proqramı və xüsusiyyətləri haar kaskad faylını işə salır. (python Face3.py -haarcascade_frontalface_default.xml ilə üzləşir)

İşlətdiyiniz zaman ekranda picam -dan bir video axını görünməlidir və əmr istəyi bütün altı servodan servo dəyərlərini çap etməyə başlayacaq.

Və bitirdiniz! Sahib olduğunuz servoların keyfiyyətindən asılı olaraq, sisteminizin düzgünlüyünü artırmaq üçün hər birini xüsusi olaraq kalibrləmək istəyə bilərsiniz. Düzgün işləmələri üçün bütün PWM aralığını düzəltməli olduq.

Tövsiyə: