Съдържание:
- Стъпка 1: Неща, от които ще се нуждаете
- Стъпка 2: Тялото на робота
- Стъпка 3: Глава и лице на робота
- Стъпка 4: Персонализирани печатни платки
- Стъпка 5: Захранване
- Стъпка 6: Окончателно сглобяване
- Стъпка 7: Софтуер
- Стъпка 8: Кодове
- Стъпка 9: Демо
Видео: Тинку: личен робот: 9 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:52
От sw4pFollow Още от автора:
Здравей, Тинку не е просто робот; това е личен робот. Това е всичко в един пакет. Той може да вижда (компютърно зрение), да слуша (обработка на речта), да говори и да реагира на ситуацията. Той може да изразява емоции и списъкът с неща, които може да прави, продължава. Дадох му име; Наричам го Тинку.
Кратко въведение за това, което може да направи, е
-
Компютърно зрение
- Разпознаване на лица
- Проследяване на лица
- Правете снимки и записвайте видео
- Разпознайте маркерите на ArUco
-
Обработка на реч
- Офлайн обработка на реч (откриване на Hotword)
- Той може да разбере какво казвате, като открие Hotwords.
-
Експресни емоции
- Той движи главата си за невербална комуникация и за изразяване на чувства.
- Той показва изображения и gifs на екрана си, за да поддържа текущите настроения.
-
Движете се
Той може да се движи наоколо с помощта на колелата си и да идентифицира местата с помощта на маркери ArUco
-
Избягване на препятствия
Той има сонарни сензори, така че винаги е наясно с обкръжението си и може да избягва препятствията
Може да направи много повече неща. Можете също така да внедрите какви нови функции искате.
Стига да говорим.
РЕДАКТИРАНЕ: Тялото на Тинку започна да се напуква, така че трябваше да го прекроя напълно. Ето новите изображения, напълно свежи и по -добри Tinku. Съжалявам, нямам изображенията на стъпките за препроектиране на Tinku.
Стъпка 1: Неща, от които ще се нуждаете
Тялото на робота
- Акрилен лист
- MDF плоскост
- Малки L скоби
- Пакет гайка и винт
Сервомотори, двигатели и колела
- Dynamixel AX-12A (3 броя)
- Комплект болт и гайка от биолоид
- Двигатели (2 броя)
- Писти (2 опаковки)
- Релсови колела (4 броя)
- L скоби за двигатели (2 броя)
- L скоба за манекен на вал на колелото (2 броя)
- Манекен вал на колелото (2 броя)
- Биолоидна рамка F8
- Bioloid Frame F3 (2 броя)
- Биолоидна рамка F2
- Биолоидна рамка F10
Електроника
- Arduino
- Raspberry Pi или Udoo Quad
- Шофьор на мотор
- Уеб камера Logitech-c270 (има вграден микрофон)
- Ултразвукови датчици за разстояние (6 броя)
- Lipo батерия (3300 Mah 3S)
- Усилващ регулатор на напрежение (DC-DC)
- Регулатор на понижаващо напрежение (DC-DC)
- Сензорен екран (7 инча)
- USB хъб (Само ако използвате Udoo Quad, защото има само 2 USB порта)
- 7404 шестнадесетичен инвертор IC
- 74HC244 IC
- 14 -пинова IC база
- 20 -пинова IC база
Съединители и кабели
- Съединител за мъжка батерия T-plug
- Гъвкав HDMI кабел (само ако екранът ви има HDMI конектор)
- Микро USB кабел
- Три щифта женско-женски репликационен кабел (6 броя)
- Мрежов щепсел за DC барел (2 броя)
- Серво конектори на Dynamixel (3 броя)
- USB кабел от A до B (само ако не идва с Arduino)
- Кабелни проводници
- Кабелни платки
- Burg ленти
За производство на печатни платки
- Меден ламинат
- Ецвет за печатни платки (Fecl3)
- Перфорирана печатна платка
- Свредло 1 мм
Разни
- Лепило
- Радиаторни тръби
- Стойности
Забележка: Тук използвам платката Udoo, защото има по -добра изчислителна скорост от моята малинова pi 2. Използвам външен Arduino, а не вградения Arduino на платката Udoo, защото всичките ми сензори и модули са съвместими с 5v, а Arduino в Udoo платката е съвместима с 3v.
Стъпка 2: Тялото на робота
За да подготвя тялото на робота, използвах акрилния лист и го нарязах в определен размер, за да направя структура като кутия. Споменах измерението на всяка страна на тялото в изображението.
- Изрежете акрилния лист според определения размер.
- Пробийте дупки на определени места, за да монтирате двигателите, сензорите, стойките и да съедините всяка плоча заедно.
- Пробийте по -голям отвор в основната плоча и горната плоча за преминаване на кабели.
- Направете малък прорез от долната страна на предния и задния панел, така че проводниците, идващи от ултразвуковия сензор, да могат да преминат.
Време е да подготвите и монтирате двигателите и пистите.
- Запоявайте допълнителни проводници към щифтовете на двигателя, така че проводникът да може да достигне до драйверите на двигателя.
- Монтирайте скобите на двигателя и фиктивните скоби на вала на колелото върху основната плоча на робота.
- Свържете двигателите и манекена на вала на скобите, след което свържете колелата.
- Съберете пистите и направете цикъл.
- Каишка на колелата. Имайте предвид, че пистата не се отпуска и има достатъчно напрежение върху нея.
Сега съединете предния, задния и единия страничен панел на основния панел с помощта на малки L скоби. Не монтирайте горния панел и единия страничен панел, така че да имаме достатъчно място за монтиране на електрониката на робота.
Стъпка 3: Глава и лице на робота
Вече дадохме тяло и колела на нашия робот. Сега е време да му дадем глава, шия и лице.
Врат:
Най -сложната част в главата на робота е шията. Така че първо ще го приготвим. Сервизите на Dynamixel са малко объркващи за работа, но са надеждни и издръжливи. За него има много монтажни скоби, така че можете да ги свържете по всякакъв начин.
Гледайте този видеоклип за по -добро обяснение как да свържете динамичните сервомотори заедно.
- Поставете гайки в сервомоторите на динамика, за да ги монтирате с рамки.
- Поставете биолоидна рамка F8 в центъра на горния панел и маркирайте пробивни отвори и ги пробийте.
- Прикрепете рамката на биолоида F8 към едно от сервоустройствата, след което монтирайте рамката на биолоида F8 върху горния панел.
- Присъединете се към всяко серво заедно с различни рамки и подгответе врата.
- Свържете сервомоторите един към друг с помощта на динамични три-пинови серво конектори.
Очи и уши:
Използвам уеб камерата Logitech-c270 като око за моя робот. Това е добра камера, която може да прави снимки и да записва видео в 720p. Той също така има вграден микрофон, така че става ухо и за моя робот. След дълга мозъчна атака установих, че най -доброто място за монтиране на камерата е в горната част на екрана. Но за да монтирам камерата, се нуждая от стойка за камера. Така че нека направим един.
- Извадете металните парчета от уеб камерата, които са предоставени, за да й придадете известна тежест.
- Изрежете две части от MDF плочата, една квадратна и една триъгълна с размери, показани на изображението.
- Пробийте дупка в основата на уеб камерата и върху квадратния MDFpiece. Направете прорез на квадратното парче, за да поставите проводника на уеб камерата в него.
- Залепете парчетата MDF заедно, за да образувате Т-образна форма. Монтажът на камерата е готов.
- Преди да свържете монтажа на камерата и камерата заедно, първо подгответе главата.
Глава:
Главата на робота е свързана със сервомоторите. Тя трябва да бъде възможно най -лека, така че главата да не натоварва много сервомоторите. Затова използвах MDF плочата вместо акрилен лист.
- Изрежете парче MDF плоскост с размери (18см x 13см) и пробийте дупки, за да монтирате екрана.
- Поставете биолоидна рамка F10 в центъра на MDF плочата и маркирайте пробивни отвори и ги пробийте.
- Поставете биолоидна рамка F10 и биолоидна рамка F2 от всяка страна на MDF плочата и ги съединете заедно с помощта на гайка и винт.
- Сега залепете стойката на камерата от задната страна на дъската.
- Присъединете се към биолоидна рамка F2 с края на серво конфигурацията.
- Монтирайте екрана на MDF плочата с помощта на стойки.
- Прикрепете уеб камерата към стойката на камерата.
Сега главата и лицето на робота са пълни.
Стъпка 4: Персонализирани печатни платки
Сега е време да разтворите някои fecl3 и да офортите някои ПХБ.
Защо направих персонализирани печатни платки?
- Нямам динамичен серво контролер, така че трябва да направя такъв.
- Трябва да свържа много сензори към Arduino по по -чист начин, затова направих щит за Arduino.
Нека направим.
- Изтеглете файловете на печатни платки и ги отпечатайте върху меден ламинат.
- Издърпайте медно облицования ламинат с помощта на fecl3
- Пробийте 1 мм отвори за монтаж на интегрални схеми и лента.
- За да накарате заглавията за подреждане на щитове да се плъзгат надолу по пластмасовите запушалки на лентата burg към края на щифтовете.
- Запоявайте основите на IC и ивицата на печатни платки.
- Предоставих схемите за справка.
Забележка - Използвайте софтуера 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.
- Pyautogui - Pyautogui е пакет за симулиране на натискане на клавиши на клавиатура или движение на мишката.
- Numpy - въведете „pip install numpy“в черупката на Linux и натиснете enter. Толкова е просто.
- Pyserial - Pyserial е пакет, насочен към серийна комуникация чрез python. Ще го използваме за комуникация с Arduino.
Стъпка 8: Кодове
Хардуерната част е завършена. Софтуерната част е завършена. Сега е време да дадем душа на този робот.
Нека кодираме.
Кодът за този робот е донякъде сложен и в момента добавям още функционалности към него. Затова съм хоствал кодовете в моето хранилище на Github. Можете да го проверите и да клонирате/изтеглите кодове от там.
Сега това не е просто робот; сега е Тинку.
Стъпка 9: Демо
Демонстрация. даеееее !!
Това са някои от основните демонстрации. Предстоят много по -интересни.
Очаквайте още актуализации и ако имате някакви съмнения, не се колебайте да коментирате.
Благодаря ви, че прочетохте моя проект. Ти си страхотен.
Ако този проект ви харесва, моля, гласувайте го в конкурса за микроконтролер и роботика
Честито създаване;-)
Препоръчано:
Arc Reactor a La Smogdog, много личен проект : 13 стъпки (със снимки)
Arc Reactor a La Smogdog, много личен проект …: Какво общо имам с тези двама момчета? Този път не е брадата! Всички имаме дупка в гърдите си, ами аз и Лео сме родени с Pectus Excavatum, Старк трябваше да спечели своя :-) Pectus Excavatum е (вижте го тук: https: // bg .wikipedia.org/wik
Личен детектор на мълния: 5 стъпки (със снимки)
Личен детектор на мълния: В този проект ще създадем малко устройство, което да ви предупреждава за близки удари наблизо. Общата цена на всички материали в този проект ще бъде по-евтина от закупуването на търговски мълниеприемник и ще можете да усъвършенствате уменията си за създаване на вериги
Личен асистент: 9 стъпки (със снимки)
Личен асистент: В тази инструкция ще ви покажа как можете да използвате силата на ESP8266, креативността в софтуерния дизайн и програмирането, за да направите нещо готино и образователно. Нарекох го Личен асистент, защото е с джобен размер ти и можеш да дадеш
[Робот Arduino] Как да си направим робот за улавяне на движение - Робот Thumbs - Серво мотор - Изходен код: 26 стъпки (със снимки)
[Робот Arduino] Как да си направим робот за улавяне на движение | Робот Thumbs | Серво мотор | Изходен код: Thumbs Robot. Използва се потенциометър на серво мотор MG90S. Много е забавно и лесно! Кодът е много прост. Има само около 30 реда. Изглежда като заснемане на движение. Моля, оставете всеки въпрос или обратна връзка! [Инструкция] Изходен код https: //github.c
IRobot Създайте личен домашен робот: 16 стъпки (със снимки)
IRobot Create Personal Home Robot: Представяме ви личен домашен робот, изграден около платформата iRobot Create и компютърна система mini-itx. Никога не е било по -лесно и по -достъпно да проектирате и изграждате роботи, като използвате икономиите от мащаба от софтуера, компютъра, играчката и