Мазмуну:

Кенди ыргытуучу робот Arduino, кайра иштетилген тетиктер жана длиб менен: 6 кадам
Кенди ыргытуучу робот Arduino, кайра иштетилген тетиктер жана длиб менен: 6 кадам

Video: Кенди ыргытуучу робот Arduino, кайра иштетилген тетиктер жана длиб менен: 6 кадам

Video: Кенди ыргытуучу робот Arduino, кайра иштетилген тетиктер жана длиб менен: 6 кадам
Video: Боль в спине ПРОЙДЁТ ЗА 5 СЕКУНД благодаря ЭТОМУ упражнению 2024, Ноябрь
Anonim
Кенди ыргытуучу робот Arduino, кайра иштетилген бөлүктөр жана Dlib менен
Кенди ыргытуучу робот Arduino, кайра иштетилген бөлүктөр жана Dlib менен

Бир нече кайра иштетилген тетиктер, Arduino + мотор калканы жана Dlib компьютердик программасы менен сиз жүздү аныктоочу момпосуй жасай аласыз.

Материалдар:

  • Жыгачтан жасалган рамка
  • Ноутбук/компьютер (жакшыраак Raspberry Pi караганда бир кубаттуу!).
  • Arduino (Жакшы Uno, же моторуңуздун калканчына туура келген.)
  • Arduino мотор калканы (мен эски Адафрут калканчын колдондум, дагы эле ушул жерде сатылат)
  • Ар кандай стандарттык веб -камера
  • Чакан кир жуугуч

Кайра иштетилген бөлүктөр:

  • Корпус (эски металл куту жакшы иштейт.)
  • Step мотору, эскирген эски принтерден DC мотору.
  • Эски принтердин кубаттуулугу
  • Кенди таркатуучу (Чоң йогурт контейнери).

Даяр продукциянын ички бөлүгү тиркелген серепке окшош болот.

Эскертүү

Зымдарды/кайра туташтыруудан мурун Arduino/мотор орнотууларын өчүргөнүңүздү текшериңиз. Электр кубатын туура полярдыкка туташтырууну унутпаңыз!

Бул Arduino жана компьютериңизге орнотуу же компиляциялоо керек болгон программаны колдонгон орто деңгээлдеги долбоор. Нускамалар ар кандай болушу мүмкүн жана Ubuntuдо иштөөдө сыналган.

Эгерде сиз эски Adafruit мотор калканчын колдонбосоңуз, анда Arduino кодун сиз колдонуп жаткан мотор калканчына тууралашыңыз керек болот.

1 -кадам: бургулоо, туташтыруу жана моторду орнотуу

Бургулоо, туташтыруу жана моторду орнотуу
Бургулоо, туташтыруу жана моторду орнотуу
Бургулоо, туташтыруу жана моторду орнотуу
Бургулоо, туташтыруу жана моторду орнотуу

Корпуста тешиктерди буруңуз, веб -камера үстү менен жылып кетиши үчүн тепкич моторун тиркеп, ал эми диспенсер ылдый жагында айлана алат.

Stepper моторлору кадам менен эмес, артка/алдыга чуркаган DC моторлорунан (2 зым) айырмаланып, кичине кадам менен (4 зым) кыймылдай алышат.

DC моторунда 2 зым бар (эки жакка тең чуркайт), кошумча мотордун 4 катмары эки катушка ээ болот (бул жерде сүрөттөлгөндөй, катуштардын кайда зым болгонун көрүү үчүн мультиметрдик каршылык өлчөгүч менен текшерүү.)

Эгерде сиз менин мисалымдагыдай эски Adafruit калканчын колдонуп жатсаңыз, анда DC момпосуй айлантуучу моторун #3 моторуна, ал эми степперди документтеринде сүрөттөлгөндөй биринчи эки моторго (#1, #2) туташтырышыңыз керек.

Туташкандан кийин, моторлорду Arduino тиркелген Arduino Motor Shieldге туташтырыңыз. Мыкты натыйжаларга жетүү үчүн, моторлорго экинчи кубат менен камсыз кылуу сунушталат, аны сиз экинчи колуңуздагы дүкөндөн $ 2 дубал сөөлүндө DC өндүрүшүнө чейин зымдап өткөрө аласыз.

2 -кадам: Контейнерди тиркөө

Контейнерди тиркөө
Контейнерди тиркөө
Контейнерди тиркөө
Контейнерди тиркөө
Контейнерди тиркөө
Контейнерди тиркөө
Контейнерди тиркөө
Контейнерди тиркөө

Йогурт контейнеринин же башка чоң пластикалык идиштин ортосун ченеп, мотордун аягынан чоңураак кармагычты бургулаңыз.

Контейнерди кичинекей кир жуугучтун жардамы менен кутуга бекиңиз - идиштин түбүнө крази -клей менен, жана электр кыймылдаткычынын шпинделине.

Толук айыгуу үчүн клейди бир -эки күн кургатыңыз - анын кыйшайып калбашы үчүн, куту менен айлануучу контейнердин ортосуна кичинекей аралыкты коюңуз.

3 -кадам: Кенди ыргытуучу үчүн кичинекей тешик жасаңыз

Кенди таштоочу үчүн кичинекей тешик жасаңыз
Кенди таштоочу үчүн кичинекей тешик жасаңыз

Айлангыч туура бекитилгенден кийин, момпосуйдун учунан ыргытылышы үчүн кичинекей тешикти белгилөө үчүн курч бычактын учун колдонуңуз - бул эриндин түбүнөн жогору болушу керек.

(Эң жакшы натыйжага жетүү үчүн, болжол менен 30 даана конфетти диспенсердин капкак учуна жүктөөгө болот, ал түбү болот.)

Кичинекей тешикти калтырып, курч бычак менен акырын чийип туруңуз (тешикти кийинчерээк керек болсо кеңейте аласыз).

4 -кадам: Arduino орнотуу

Эгерде сиз буга чейин Arduino программасын орното элек болсоңуз, аны алыңыз

www.arduino.cc/en/Main/Software

Ар кандай акыркы версия иштеши керек.

DC/Stepper моторун Arduino Shield мисал кодуңузда келтирилген мисалдар менен сынап көрүңүз.

Эгерде сиз бул калканды колдонуп жатсаңыз (кээ бир сатуучулардан дагы эле бар), сиз менин кодумду түз колдоно аласыз:

github.com/programmin1/HowToTrainYourRobot…

Сиз сынап көргөндөн кийин жана Arduino сериялык терезесине "d" деп кирип, конфетти тарата аласыз, муну Длибдин таануучусуна туташтыруу убактысы келди.

5 -кадам: Dlib орнотуу

Dlib (https://dlib.net/) сүрөттү таануу үчүн ачык булак, колдонууга оңой китепкананы камсыз кылат. Python Dlib модулун орнотуу:

sudo пип Dlib орнотуу

- же -

sudo easy_install Dlib

Dlibдин орнотулушун жана компиляциясын күтө туруңуз. (Сизге бир нече оперативдүү оперативдүү эс тутуму бар компьютер керек болот, же сиз көпкө күтүп, алмашуу мейкиндигин кеңейтишиңиз керек болот). Код ошондой эле веб -камера модулу үчүн OpenCV колдонот, андыктан:

sudo apt-get python-opencv орнотуңуз

MacOS же башка операциялык тутумдарды колдонсоңуз, орнотуу кадамдары өзгөрүшү мүмкүн.

Эми жүздү аныктоочу белгилердин маалыматын алыңыз

dlib.net/files/shape_predictor_68_face_land…

Аны ачуу (Archive Manager/7zip менен) жана ҮЙГӨ/Жүктөөлөргө/shape_predictor_68_face_landmarks.dat

6-кадам: Жүз таануучуну сиздин роботко туташтыруу

Жүз таануучуну сиздин роботко туташтыруу
Жүз таануучуну сиздин роботко туташтыруу

Компьютерге Arduino башкаруучу USB туташтырыңыз жана "/dev/ttyACM0" файлы бар экенин текшериңиз (бул сериялык буйруктарды жөнөтүүчү түзмөк). Эгерде ал иштебесе жана аны туташтырганда /devде көрүнүүчү башка окшош аталыштагы каталог болсо, repo ичиндеги faceDetectThreadCorrelationCV2FaceSmile.py файлында /dev /ttyACM0 алмаштырыңыз.

Веб -камераны сайыңыз (эгерде сиз колдонуп жаткан компьютерде эч кандай камтылган веб -камера жок болсо) жана.py файлын командалык сапта же Geany текст редакторунда Run/F5 буйругу менен иштетиңиз. Эгерде сиз ноутбукта экинчи/тышкы веб -камераны колдонууну кааласаңыз, анда "VideoCapture (0)" "VideoCapture (1)" кылып, экинчи вебкамераны колдонуу үчүн, роботтун кутусунун үстүндөгү тепкич моторуна коюңуз..

Эгер баары ойдогудай болсо, вебкамеранын алдында жүз турганда жылмайуунун схемасын көрөсүз.

Карап чыгууну жана.py файлынын баштапкы кодун окуу үчүн, Dlib жүз белгилеринин функционалдуулугунан Dlib берген пункттардан жылмаюуну аныктоо кантип иштээрин көрүүгө болот.:)

Сунушталууда: