Съдържание:

Тинку: личен робот: 9 стъпки (със снимки)
Тинку: личен робот: 9 стъпки (със снимки)

Видео: Тинку: личен робот: 9 стъпки (със снимки)

Видео: Тинку: личен робот: 9 стъпки (със снимки)
Видео: ИЗПЛЮЙ КАМЪЧЕТО - Епизод 10 2024, Ноември
Anonim
Тинку: личен робот
Тинку: личен робот

От sw4pFollow Още от автора:

Нематериална повърхност
Нематериална повърхност
Нематериална повърхност
Нематериална повърхност
Изтрит Instructable
Изтрит Instructable
Изтрит Instructable
Изтрит Instructable
Картонено пиано
Картонено пиано
Картонено пиано
Картонено пиано

Здравей, Тинку не е просто робот; това е личен робот. Това е всичко в един пакет. Той може да вижда (компютърно зрение), да слуша (обработка на речта), да говори и да реагира на ситуацията. Той може да изразява емоции и списъкът с неща, които може да прави, продължава. Дадох му име; Наричам го Тинку.

Кратко въведение за това, което може да направи, е

  1. Компютърно зрение

    • Разпознаване на лица
    • Проследяване на лица
    • Правете снимки и записвайте видео
    • Разпознайте маркерите на ArUco
  2. Обработка на реч

    • Офлайн обработка на реч (откриване на Hotword)
    • Той може да разбере какво казвате, като открие Hotwords.
  3. Експресни емоции

    • Той движи главата си за невербална комуникация и за изразяване на чувства.
    • Той показва изображения и gifs на екрана си, за да поддържа текущите настроения.
  4. Движете се

    Той може да се движи наоколо с помощта на колелата си и да идентифицира местата с помощта на маркери ArUco

  5. Избягване на препятствия

    Той има сонарни сензори, така че винаги е наясно с обкръжението си и може да избягва препятствията

Може да направи много повече неща. Можете също така да внедрите какви нови функции искате.

Стига да говорим.

РЕДАКТИРАНЕ: Тялото на Тинку започна да се напуква, така че трябваше да го прекроя напълно. Ето новите изображения, напълно свежи и по -добри Tinku. Съжалявам, нямам изображенията на стъпките за препроектиране на Tinku.

Стъпка 1: Неща, от които ще се нуждаете

Неща, от които ще се нуждаете
Неща, от които ще се нуждаете
Неща, от които ще се нуждаете
Неща, от които ще се нуждаете
Неща, от които ще се нуждаете
Неща, от които ще се нуждаете
Неща, от които ще се нуждаете
Неща, от които ще се нуждаете

Тялото на робота

  1. Акрилен лист
  2. MDF плоскост
  3. Малки L скоби
  4. Пакет гайка и винт

Сервомотори, двигатели и колела

  1. Dynamixel AX-12A (3 броя)
  2. Комплект болт и гайка от биолоид
  3. Двигатели (2 броя)
  4. Писти (2 опаковки)
  5. Релсови колела (4 броя)
  6. L скоби за двигатели (2 броя)
  7. L скоба за манекен на вал на колелото (2 броя)
  8. Манекен вал на колелото (2 броя)
  9. Биолоидна рамка F8
  10. Bioloid Frame F3 (2 броя)
  11. Биолоидна рамка F2
  12. Биолоидна рамка F10

Електроника

  1. Arduino
  2. Raspberry Pi или Udoo Quad
  3. Шофьор на мотор
  4. Уеб камера Logitech-c270 (има вграден микрофон)
  5. Ултразвукови датчици за разстояние (6 броя)
  6. Lipo батерия (3300 Mah 3S)
  7. Усилващ регулатор на напрежение (DC-DC)
  8. Регулатор на понижаващо напрежение (DC-DC)
  9. Сензорен екран (7 инча)
  10. USB хъб (Само ако използвате Udoo Quad, защото има само 2 USB порта)
  11. 7404 шестнадесетичен инвертор IC
  12. 74HC244 IC
  13. 14 -пинова IC база
  14. 20 -пинова IC база

Съединители и кабели

  1. Съединител за мъжка батерия T-plug
  2. Гъвкав HDMI кабел (само ако екранът ви има HDMI конектор)
  3. Микро USB кабел
  4. Три щифта женско-женски репликационен кабел (6 броя)
  5. Мрежов щепсел за DC барел (2 броя)
  6. Серво конектори на Dynamixel (3 броя)
  7. USB кабел от A до B (само ако не идва с Arduino)
  8. Кабелни проводници
  9. Кабелни платки
  10. Burg ленти

За производство на печатни платки

  1. Меден ламинат
  2. Ецвет за печатни платки (Fecl3)
  3. Перфорирана печатна платка
  4. Свредло 1 мм

Разни

  1. Лепило
  2. Радиаторни тръби
  3. Стойности

Забележка: Тук използвам платката Udoo, защото има по -добра изчислителна скорост от моята малинова pi 2. Използвам външен Arduino, а не вградения Arduino на платката Udoo, защото всичките ми сензори и модули са съвместими с 5v, а Arduino в Udoo платката е съвместима с 3v.

Стъпка 2: Тялото на робота

Тялото на робота
Тялото на робота
Тялото на робота
Тялото на робота
Тялото на робота
Тялото на робота
Тялото на робота
Тялото на робота

За да подготвя тялото на робота, използвах акрилния лист и го нарязах в определен размер, за да направя структура като кутия. Споменах измерението на всяка страна на тялото в изображението.

  1. Изрежете акрилния лист според определения размер.
  2. Пробийте дупки на определени места, за да монтирате двигателите, сензорите, стойките и да съедините всяка плоча заедно.
  3. Пробийте по -голям отвор в основната плоча и горната плоча за преминаване на кабели.
  4. Направете малък прорез от долната страна на предния и задния панел, така че проводниците, идващи от ултразвуковия сензор, да могат да преминат.

Време е да подготвите и монтирате двигателите и пистите.

  1. Запоявайте допълнителни проводници към щифтовете на двигателя, така че проводникът да може да достигне до драйверите на двигателя.
  2. Монтирайте скобите на двигателя и фиктивните скоби на вала на колелото върху основната плоча на робота.
  3. Свържете двигателите и манекена на вала на скобите, след което свържете колелата.
  4. Съберете пистите и направете цикъл.
  5. Каишка на колелата. Имайте предвид, че пистата не се отпуска и има достатъчно напрежение върху нея.

Сега съединете предния, задния и единия страничен панел на основния панел с помощта на малки L скоби. Не монтирайте горния панел и единия страничен панел, така че да имаме достатъчно място за монтиране на електрониката на робота.

Стъпка 3: Глава и лице на робота

Image
Image
Главата и лицето на робота
Главата и лицето на робота
Главата и лицето на робота
Главата и лицето на робота
Главата и лицето на робота
Главата и лицето на робота

Вече дадохме тяло и колела на нашия робот. Сега е време да му дадем глава, шия и лице.

Врат:

Най -сложната част в главата на робота е шията. Така че първо ще го приготвим. Сервизите на Dynamixel са малко объркващи за работа, но са надеждни и издръжливи. За него има много монтажни скоби, така че можете да ги свържете по всякакъв начин.

Гледайте този видеоклип за по -добро обяснение как да свържете динамичните сервомотори заедно.

  1. Поставете гайки в сервомоторите на динамика, за да ги монтирате с рамки.
  2. Поставете биолоидна рамка F8 в центъра на горния панел и маркирайте пробивни отвори и ги пробийте.
  3. Прикрепете рамката на биолоида F8 към едно от сервоустройствата, след което монтирайте рамката на биолоида F8 върху горния панел.
  4. Присъединете се към всяко серво заедно с различни рамки и подгответе врата.
  5. Свържете сервомоторите един към друг с помощта на динамични три-пинови серво конектори.

Очи и уши:

Използвам уеб камерата Logitech-c270 като око за моя робот. Това е добра камера, която може да прави снимки и да записва видео в 720p. Той също така има вграден микрофон, така че става ухо и за моя робот. След дълга мозъчна атака установих, че най -доброто място за монтиране на камерата е в горната част на екрана. Но за да монтирам камерата, се нуждая от стойка за камера. Така че нека направим един.

  1. Извадете металните парчета от уеб камерата, които са предоставени, за да й придадете известна тежест.
  2. Изрежете две части от MDF плочата, една квадратна и една триъгълна с размери, показани на изображението.
  3. Пробийте дупка в основата на уеб камерата и върху квадратния MDFpiece. Направете прорез на квадратното парче, за да поставите проводника на уеб камерата в него.
  4. Залепете парчетата MDF заедно, за да образувате Т-образна форма. Монтажът на камерата е готов.
  5. Преди да свържете монтажа на камерата и камерата заедно, първо подгответе главата.

Глава:

Главата на робота е свързана със сервомоторите. Тя трябва да бъде възможно най -лека, така че главата да не натоварва много сервомоторите. Затова използвах MDF плочата вместо акрилен лист.

  1. Изрежете парче MDF плоскост с размери (18см x 13см) и пробийте дупки, за да монтирате екрана.
  2. Поставете биолоидна рамка F10 в центъра на MDF плочата и маркирайте пробивни отвори и ги пробийте.
  3. Поставете биолоидна рамка F10 и биолоидна рамка F2 от всяка страна на MDF плочата и ги съединете заедно с помощта на гайка и винт.
  4. Сега залепете стойката на камерата от задната страна на дъската.
  5. Присъединете се към биолоидна рамка F2 с края на серво конфигурацията.
  6. Монтирайте екрана на MDF плочата с помощта на стойки.
  7. Прикрепете уеб камерата към стойката на камерата.

Сега главата и лицето на робота са пълни.

Стъпка 4: Персонализирани печатни платки

Персонализирани печатни платки
Персонализирани печатни платки
Персонализирани печатни платки
Персонализирани печатни платки
Персонализирани печатни платки
Персонализирани печатни платки

Сега е време да разтворите някои fecl3 и да офортите някои ПХБ.

Защо направих персонализирани печатни платки?

  • Нямам динамичен серво контролер, така че трябва да направя такъв.
  • Трябва да свържа много сензори към Arduino по по -чист начин, затова направих щит за Arduino.

Нека направим.

  1. Изтеглете файловете на печатни платки и ги отпечатайте върху меден ламинат.
  2. Издърпайте медно облицования ламинат с помощта на fecl3
  3. Пробийте 1 мм отвори за монтаж на интегрални схеми и лента.
  4. За да накарате заглавията за подреждане на щитове да се плъзгат надолу по пластмасовите запушалки на лентата burg към края на щифтовете.
  5. Запоявайте основите на IC и ивицата на печатни платки.
  6. Предоставих схемите за справка.

Забележка - Използвайте софтуера Express PCB, за да отворите.pcb и Express SCH софтуера, за да отворите.sch файла.

Стъпка 5: Захранване

Захранване
Захранване
Захранване
Захранване

Поддържането на постоянна мощност в различните електронни модули и двигатели на робота е много необходимо. Ако мощността падне под граничната стойност в който и да е модул, това ще доведе до проблем и е много трудно да се идентифицира причината за това.

Основният източник на енергия в този робот е 2200mAh 3S Lipo батерия. Тази батерия има три клетки и изходното напрежение е 11,1 волта. Платката Udoo се нуждае от 12v захранване, а платката Arduino се нуждае от 5v захранване. Затова решавам да използвам два регулатора на напрежение, единият е повишаващ, а другият е понижаващ. Единият ще поддържа текущото захранване за всички 12v модули, а другият ще поддържа текущото захранване за всички 5v модули.

Изображението съдържа ръчно рисувани схеми.

  • Запоявайте регулаторите на напрежението върху перфорираните платки на печатни платки.
  • Запоявайте съединителя на мъжкия акумулатор с T-щепсел към входа на двата регулатора на напрежението.
  • Свържете изхода „заземяване“на двата регулатора.
  • Свържете жаковете за постоянен ток към всеки изход на регулатора. Поддържайте дължината на проводниците достатъчно, така че да може да достигне платката Udoo/Raspberry Pi и Arduino.
  • Запоявайте ивицата burg към всеки изход на регулатора като допълнителна изходна мощност в случай, че се нуждаем от нея в бъдещата модификация.
  • Преди да свържете захранването към някой от електронните модули, калибрирайте изхода на всеки регулатор с помощта на потенциометър за подстригване, осигурен точно на 12v и 5v.

Стъпка 6: Окончателно сглобяване

Окончателно сглобяване
Окончателно сглобяване
Окончателно сглобяване
Окончателно сглобяване
Окончателно сглобяване
Окончателно сглобяване

Време е сега. След толкова много стъпки е време да сглобите всеки модул заедно. Развълнуван? Е аз съм.

  • Изрежете правоъгълно парче от MDF плоскостта с размери (30см х 25см). Тази платка е основата за монтаж на електронни модули. Не искам да пробивам много дупки в основната акрилна плоча, затова използвам MDF плоскост. Той също така помага при скриването на проводници под него, за да изглежда нашият робот спретнат и чист.
  • Поставете модули върху плочата от MDF и маркирайте монтажните отвори и ги пробийте. Направете няколко допълнителни дупки, за да преминете проводниците под плочата от MDF.
  • Присвоих номера на някои дупки, така че ми става лесно да ги препратя и вие да разберете схемите на окабеляване.

Захранване:

  • Монтирайте захранващия модул на платката и прекарайте 12v и 5v жака през отвора номер 1 и издърпайте 12v жака през отвора номер 2 и издърпайте 5v жака през отвора номер 3.
  • Засега държа батерията разхлабена, защото понякога се налага да я изваждам и зареждам.

Шофьор на мотор:

  • Издърпайте проводниците, свързани към двигателите, през отвора номер 4 и ги свържете към платката на драйвера на двигателя.
  • Двигателите се нуждаят от 12v захранване, за да работят правилно, така че свържете 12v и GND щифт на драйвера с изхода на 12v регулатора на напрежението.
  • Свържете щифтовете на драйвера на двигателя към Arduino според кода.

Arduino:

  • Преди да монтирате Arduino, прекарайте проводниците на трите ултразвукови сензора през задния панел и прекарайте проводниците на останалите три ултразвукови сензора през предния панел и ги издърпайте през отвора номер 3.
  • Монтирайте Arduino и прикрепете сензорния щит върху него.
  • Дадох номера на всички ултразвукови сензорни проводници, така че да е лесно да се отстраняват грешки в случай на грешка. Свържете щифтовете на сензора към щита, започвайки от номер 1 до 6 последователно.
  • Свържете 5v захранващия жак към Arduino.

Серво контролер Dynamixel:

  • Монтирайте серво контролера на динамика на дъската.
  • Свържете 12v и GND щифт на серво контролера с изхода на 12v регулатора на напрежението.
  • Свържете щифта 5v и GND на серво контролера с изхода на регулатора на напрежение 5v.
  • Свържете щифтовете на серво контролера и Arduino според кода.
  • Оставете изходния извод за серво изключен засега. Включете го, след като монтирате горния панел на робота.

Udoo / Raspberry Pi:

Забележка: Преди да изпълните стъпките по -долу, уверете се, че вече сте инсталирали операционната система на MicroSD картата и сте я поставили в платката Udoo / Raspberry Pi. Ако не, следвайте връзките за инсталиране на Raspbian на Raspberry Pi или Udoobuntu на дъската на Udoo.

  • Монтирайте Udoo / Raspberry Pi на дъската и свържете към него гнездото за захранване.
  • Ако използвате Udoo, свържете USB концентратора към един от USB жаковете.
  • Свържете HDMI кабела и микро USB кабела към него. Тези щифтове се използват за подаване на данни и захранване към екрана.
  • Свържете Arduino към Udoo / Raspberry Pi с помощта на USB кабел от A до B.

Горен панел:

  • Прикрепете горния панел към страничните, предните и задните панели на робота с помощта на L скоби.
  • Свържете HDMI кабела, микро USB кабела към екрана и уеб камерата към платката Udoo / Raspberry Pi.
  • Свържете три-пиновия серво конектор, идващ от базовото динамично-динамично серво, със серво контролера. Моля, погрижете се кой пин е DATA, GND и +12v. Вижте изображенията в раздела „Глава и лице на робота“за по -добра справка. Ако свържете проводниците в обратен ред, това може да повреди сервомоторите.

Ултразвукови сензори за разстояние:

Последното парче от пъзела. След това нашето сглобяване почти приключи.

  • Изрежете шест правоъгълни парчета от MDF плоскостта/акрилен лист с размери (6см x 5см).
  • Пробийте дупки в тях на необходимите места.
  • Прикрепете ултразвуковите сензори към всяка платка и прикрепете всички платки с основния панел на робота.
  • Свържете сензорите с конектори.

Най -накрая е свършено. Свържете батерията и стартирайте Udoo/Raspberry Pi

Стъпка 7: Софтуер

Хардуерът е пълен, но без софтуер този робот е просто кутия. Списъкът на софтуера, от който се нуждаем, е

  • TightVNC
  • Python
  • OpenCV
  • Снежно момче
  • Някои пакети на python

    • Пявтоги
    • буца
    • pyserial
    • pyaudio

TightVNC:

TightVNC е безплатен софтуерен пакет за дистанционно управление. С TightVNC можете да видите работния плот на отдалечена машина и да го контролирате с вашата локална мишка и клавиатура, точно както бихте го направили седнал отпред на този компютър.

Ако имате допълнителна клавиатура и мишка, това е добре. Ако не, инсталирайте TightVNC на вашия лаптоп и следвайте тези стъпки.

За първи път свържете клавиатурата и мишката към Udoo / Raspberry Pi. Свържете се с wifi мрежа. Отворете терминала и въведете

$ ifconfig

  • Запишете IP адреса на робота.
  • Отворете TightVNC във вашия лаптоп. Въведете IP адреса в необходимото поле и натиснете Enter. Вола! Вече сте свързани. Използвайте тъчпада и клавиатурата на вашия лаптоп за достъп до робота.

Python:

Python е много популярен и гъвкав език, затова го използвам като основен език за програмиране на този робот.

Тук използвам python 2.7, но ако искате, можете да използвате и python 3. За щастие Python идва предварително инсталиран както в Udoobuntu, така и в Raspbian OS. Така че не е необходимо да го инсталираме.

OpenCV:

OpenCV е библиотека с отворен код, насочена главно към компютърно зрение в реално време. OpenCV с Python е много лесен за използване. Инсталирането на OpenCV е малко тромаво, но има много много лесни за следване ръководства. Моят личен фаворит е този. Това ръководство е за Raspberry Pi, но можете да го използвате и за Udoo платка.

Снежен момък:

Snowboy е библиотека, написана от Kitt.ai момчета, насочена главно към офлайн обработка на реч/откриване на горещи думи. Той е много лесен за използване. Следвайте тази връзка, за да инсталирате snowboy на Raspberry Pi. Ако използвате дъската Udoo, отидете на този проект, написан от мен, за да инсталирате snowboy в Udoo.

Пакети на Python:

Следвайте тези лесни за използване ръководства, за да инсталирате някои пакети на python.

  1. Pyautogui - Pyautogui е пакет за симулиране на натискане на клавиши на клавиатура или движение на мишката.
  2. Numpy - въведете „pip install numpy“в черупката на Linux и натиснете enter. Толкова е просто.
  3. Pyserial - Pyserial е пакет, насочен към серийна комуникация чрез python. Ще го използваме за комуникация с Arduino.

Стъпка 8: Кодове

Хардуерната част е завършена. Софтуерната част е завършена. Сега е време да дадем душа на този робот.

Нека кодираме.

Кодът за този робот е донякъде сложен и в момента добавям още функционалности към него. Затова съм хоствал кодовете в моето хранилище на Github. Можете да го проверите и да клонирате/изтеглите кодове от там.

Сега това не е просто робот; сега е Тинку.

Стъпка 9: Демо

Image
Image

Демонстрация. даеееее !!

Това са някои от основните демонстрации. Предстоят много по -интересни.

Очаквайте още актуализации и ако имате някакви съмнения, не се колебайте да коментирате.

Благодаря ви, че прочетохте моя проект. Ти си страхотен.

Ако този проект ви харесва, моля, гласувайте го в конкурса за микроконтролер и роботика

Честито създаване;-)

Препоръчано: