Satura rādītājs:

Konfekšu mešanas robots ar Arduino, pārstrādātām detaļām un Dlib: 6 soļi
Konfekšu mešanas robots ar Arduino, pārstrādātām detaļām un Dlib: 6 soļi

Video: Konfekšu mešanas robots ar Arduino, pārstrādātām detaļām un Dlib: 6 soļi

Video: Konfekšu mešanas robots ar Arduino, pārstrādātām detaļām un Dlib: 6 soļi
Video: Пёс отчаянно выл на весь двор, не давая жизни жителям дома, но узнав причину, люди остолбенели 2024, Novembris
Anonim
Konfekšu mešanas robots ar Arduino, pārstrādātām detaļām un Dlib
Konfekšu mešanas robots ar Arduino, pārstrādātām detaļām un Dlib

Izmantojot dažas pārstrādātas detaļas, Arduino + motora vairogu un Dlib datora programmatūru, jūs varat izveidot strādājošu konfektes metēju sejai.

Materiāli:

  • Koka rāmis
  • Klēpjdators/dators (vēlams viens jaudīgāks par Raspberry Pi!).
  • Arduino (vēlams Uno vai tāds, kas atbilst jūsu motora vairogam.)
  • Arduino motora vairogs (es izmantoju veco Adafruit vairogu, kā šeit joprojām tiek pārdots)
  • Jebkura standarta tīmekļa kamera
  • Maza mazgātāja

Pārstrādātas detaļas:

  • Korpuss (veca metāla kaste darbojas labi.)
  • Pakāpju motors, līdzstrāvas motors no izjauktā vecā printera.
  • Vecs printera barošanas avots
  • Konfekšu dozators (liels jogurta trauks).

Gatavā produkta iekšējās daļas nedaudz atgādinās pievienoto pārskatu.

Brīdinājums

Pirms vadu savienošanas/pārinstalēšanas noteikti atvienojiet strāvu Arduino/motora iestatīšanai. Noteikti pievienojiet strāvu pareizai polaritātei!

Šis ir vidēja līmeņa projekts, kurā tiek izmantots Arduino un programmatūra, kas jāinstalē vai jāapkopo datorā. Norādījumi var atšķirties un tika pārbaudīti, strādājot ar Ubuntu.

Ja neizmantojat veco Adafruit motora vairogu, jums, iespējams, būs jāpielāgo Arduino kods atbilstoši izmantotajam motora vairogam.

1. darbība: urbt, savienot un piestiprināt motoru

Urbt, savienot un uzstādīt motoru
Urbt, savienot un uzstādīt motoru
Urbt, savienot un uzstādīt motoru
Urbt, savienot un uzstādīt motoru

Izurbiet korpusā caurumus, pievienojot pakāpju motoru, lai tīmekļa kamera varētu pārvietoties augšpusē, un dozators varētu griezties apakšā.

Pakāpju motori var pārvietoties nelielos soļos (4 vadi), atšķirībā no līdzstrāvas motoriem (2 vadi), kas darbojas atpakaļ/uz priekšu, nevis pa soļiem.

Līdzstrāvas motoram ir 2 vadi (darbojas abos virzienos), papildu soļu motoram būs 4 divās spolēs (pārbaudiet ar multimetra pretestības mērītāju, lai redzētu, kur spoles ir pievienotas, kā aprakstīts šeit.)

Ja jūs izmantojat veco Adafruit vairogu, kā manā piemērā, jums vajadzētu savienot līdzstrāvas konfekšu vērpšanas motoru ar motoru Nr. 3 un pakāpienu pie pirmajiem diviem motoriem (#1, #2), kā aprakstīts to dokumentācijā.

Pēc pievienošanas pievienojiet motorus Arduino motora vairogam, kas piestiprināts pie Arduino. Lai iegūtu vislabākos rezultātus, ir ieteicams motoriem pievienot otru barošanas avotu, ko jūs varat pievienot līdzstrāvas izejai uz 2 ASV dolāru sienas kārpu no lietotu veikalu.

2. darbība: konteinera piestiprināšana

Konteinera piestiprināšana
Konteinera piestiprināšana
Konteinera piestiprināšana
Konteinera piestiprināšana
Konteinera piestiprināšana
Konteinera piestiprināšana
Konteinera piestiprināšana
Konteinera piestiprināšana

Izmēriet jogurta trauka vai cita liela plastmasas konteinera centru un izurbiet turētāju, kas ir lielāks par motora galu.

Piestipriniet konteineru pie kastes, izmantojot nelielu paplāksni - Krazy -līmējiet to konteinera apakšā un pie elektromotora vārpstas.

Ļaujiet līmei nožūt dienu vai divas, lai tā pilnībā sacietētu - iespējams, vēlēsities ievietot nelielu starpliku starp kastīti un vērpšanas trauku, lai pārliecinātos, ka tā nav saliekta.

3. solis: izveidojiet nelielu caurumu konfekšu metējam

Izveidojiet nelielu caurumu konfekšu metējam
Izveidojiet nelielu caurumu konfekšu metējam

Kad vērpējs ir pareizi piestiprināts, izmantojiet asa naža galu, lai iezīmētu nelielu caurumu, lai konfektes varētu izmest no gala - tam vajadzētu būt tieši virs dibena, kur atrodas lūpa.

(Lai iegūtu vislabākos rezultātus, uz dozatora vāka gala var ievietot apmēram 30 konfektes, kas būs apakšā.)

Turpiniet viegli konturēt ar asu nazi, līdz tas iznirst, atstājot nelielu caurumu (pēc vajadzības varat to paplašināt).

4. darbība: Arduino iestatīšana

Ja vēl neesat instalējis Arduino programmatūru, iegūstiet to no

www.arduino.cc/en/Main/Software

Jebkurai jaunākajai versijai vajadzētu darboties.

Pārbaudiet līdzstrāvas/pakāpju motoru, izmantojot piemērus, kas sniegti jūsu Arduino Shield piemēra kodā.

Ja jūs izmantojat šo vairogu (joprojām ir pieejams no dažiem tālākpārdevējiem), varat tieši izmantot manu kodu:

github.com/programmin1/HowToTrainYourRobot…

Kad esat pārbaudījis un varat izdalīt konfektes, Arduino sērijas logā ievadot “d”, ir pienācis laiks to savienot ar Dlib atpazīšanas ierīci.

5. darbība: Dlib iestatīšana

Dlib (https://dlib.net/) nodrošina atvērtā pirmkoda, viegli lietojamu bibliotēku attēlu atpazīšanai. Instalējiet Python Dlib moduli, izmantojot:

sudo pip instalējiet Dlib

- vai -

sudo easy_install Dlib

Pagaidiet, līdz Dlib instalēs un kompilēs. (Jums būs nepieciešams dators ar vēlams pāris RAM atmiņas, vai arī jums būs jāgaida ilgs laiks un jāpaplašina mijmaiņas vieta). Kods tīmekļa kameras modulim izmanto arī OpenCV, tāpēc palaidiet:

sudo apt-get instalēt python-opencv

Instalēšanas darbības var atšķirties, ja izmantojat MacOS vai citas operētājsistēmas.

Tagad iegūstiet sejas noteikšanas orientieru datus no

dlib.net/files/shape_predictor_68_face_land…

Izsaiņojiet to (izmantojot arhīva pārvaldnieku/7zip) un ievietojiet to mapē HOME/Lejupielādes/shape_predictor_68_face_landmarks.dat

6. darbība: sejas atpazīšanas ierīces pievienošana robotam

Sejas atpazīšanas ierīces pievienošana jūsu robotam
Sejas atpazīšanas ierīces pievienošana jūsu robotam

Pievienojiet datoram Arduino kontrolējošo USB un pārbaudiet, vai pastāv fails "/dev/ttyACM0" (šī ir ierīce, uz kuru jāsūta sērijas komandas). Ja tas nedarbojas un cits līdzīgi nosaukts direktorijs, kas tiek parādīts mapē /dev, kad to pievienojat, aizstājiet /dev /ttyACM0 failā faceDetectThreadCorrelationCV2FaceSmile.py repo.

Pievienojiet tīmekļa kameru (ja jūsu izmantotajā datorā nav iebūvētas tīmekļa kameras) un palaidiet šo.py failu komandrindā vai ar komandu Run/F5 Geany teksta redaktorā. Ja vēlaties klēpjdatorā izmantot otru/ārēju tīmekļa kameru, iespējams, vēlēsities mainīt "VideoCapture (0)" uz "VideoCapture (1)", lai izmantotu otru tīmekļa kameru, kuru varat novietot uz pakāpju motora virs robota kastes.

Ja viss noritēs labi, redzēsit smaida kontūru, kad seja atrodas tīmekļa kameras priekšā.

Izlasiet kopsavilkumu un.py faila avota kodu, lai redzētu matemātiku par to, kā darbojas smaida noteikšana no punktiem, ko Dlib dod no sejas orientiera funkcionalitātes.:)

Ieteicams: