Съдържание:

Raspberry Pi Cam Tank V1.0: 8 стъпки (със снимки)
Raspberry Pi Cam Tank V1.0: 8 стъпки (със снимки)

Видео: Raspberry Pi Cam Tank V1.0: 8 стъпки (със снимки)

Видео: Raspberry Pi Cam Tank V1.0: 8 стъпки (със снимки)
Видео: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Ноември
Anonim
Image
Image
Raspberry Pi Cam Tank V1.0
Raspberry Pi Cam Tank V1.0

Обичам танковете от малко дете. Изграждането на моя собствена играчка -резервоар винаги е една от мечтите ми. Но поради липсата на знания и умения. Мечтата е просто мечта.

След години на обучение по инженерство и индустриален дизайн. Придобих умения и знания. И благодарение на по -евтините 3D принтери за хоби. Най -накрая мога да направя крачката си.

Какви характеристики искам да притежава този резервоар?

  • Дистанционно управление
  • Окачени колела на празен ход (като истинския резервоар!)
  • Има въртяща се кула и накланящ се пистолет BB може да изстрелва 6 -милиметрови куршуми
  • Може да стриймва видео към контролера, за да можете да го контролирате далеч

В началото планирах да използвам arduino като контролер, но след известно проучване установих, че няма практически начин за поточно предаване на видео от само себе си. Raspberry Pi обаче изглежда добър кандидат за стрийминг на видео. И можете да го управлявате чрез съпруга от телефона си!

Да започваме.

Стъпка 1: Необходими части

За контролиране

Raspberry Pi версия B

Захранван USB концентратор (Belkin F4u040)

USB уеб камера (Logitech C270)

Wifi ключ (Edimax)

Женски към мъжки джъмпер кабел

За шофиране

Два сервомотора или мотора с продължителен въртящ момент (за две задвижващи колела)

Един 1/8 стоманен прът за валове на колела (закупен в депо за дома и евтин)

Десет лагерни лагера (поръчани от Mcmaster)

Някои пружини за окачване (закупен асортимент от пружини в Harbour Freight, евтин)

За кула

Автоматична играчка с пистолет BB

Един DC мотор с голям въртящ момент

Микро серво за накланяне нагоре и надолу

Някаква 1/4 стомана яздеше като оста на оръдието

Други неща

Отпечатах 3D част от повечето части на този резервоар, ако имате лесен достъп до лазерен нож, това също би работило.

Използвах PLA нишка за печат, защото е по -лесно да се справя (без проблеми с опаковката на ABS). Но наистина е трудно да се шлифова, нарязва, пробива по -късно.

Може би си мислите, че 3D печатът е добър за персонализирани части и можете да отпечатате много сложна част като едно цяло. Това е вярно. Мисля обаче, че този начин не е практичен и икономичен за любител. Причините са:

Вашият хоби принтер няма да бъде толкова прецизен.

Ще правите грешки в измерванията и изчисленията (толеранс, подравняване и т.н.).

Както и да е, има доста голям шанс вашите отпечатъци да не работят или да се поберат при първия ви кадър. За малка част е добре, можете просто да промените модела и след това да отпечатате отново. Но за по -голяма и по -сложна част е разочароващо да се знае, че нещо не е наред след часове на печат. Това е загуба на време и материал. Ето моят подход:

Защото всичко е симетрично, отпечатайте само половината от него, опитайте, ако всичко работи добре, отпечатайте цялото.

Моделиране на частта, докато мислите за 3D печат. Възможно ли е да има равна повърхност за закрепване на леглото на принтера? Може ли да се раздели на по -малки парчета, за да се избегне много поддържаща конструкция?

За частите имат много функции (взаимодействат с много други части), разделете модела на модули. Така че, ако една функция се провали, нямате нужда от повторно отпечатване на цялата част. Просто ощипнете модула и го отпечатайте отново. Използвам винтове и гайки, за да ги свържа.

Бъдете добър приятел с ръчни инструменти, ръчен трион, X-acto, електрическа бормашина, пистолет за горещо лепило. Ако можете да поправите грешка при печат, поправете я.

Това обяснява защо резервоарът ми има толкова много части. Все още оправям тези части и след като намерих добра комбинация, мога да ги отпечатам заедно като едно парче. Тогава това би бил моят Cam Tank v2.0.

Стъпка 2: Шофьорска система

Image
Image
Шофьорската система
Шофьорската система
Шофьорската система
Шофьорската система

Окачване

Първоначално направих прототип без никакво окачване, само оси в долния корпус с лагери и колела. Но мислейки за комфорта на оператора (ще го карам, гледайки поточното видео!), Реших да добавя окачване, за да го направя по -хладен.

Имам само няколко пружини, без хидравлика, без листова пружина. Първоначално експериментирах с торсионна система с PLA. (Торсионното окачване е често срещано в някои резервоари). Оказа се, че след няколко усуквания, отпечатаната PLA лента ще омекне и в крайна сметка ще се счупи. ABS може да е по -добър за тази цел, но никога не съм опитвал. И така, след по -нататъшно проучване открих дизайна на окачването на Christie, ето кратко видео, показва как работи.

Окачването christie обаче има толкова много малки части и тогава нямам доверие в принтера си. Затова направих такова окачване.

(образ)

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

Заден обтегач

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

Задвижващи колела и релси

Проектирах тази гъсеница и задвижващи колела в солидни конструкции. Не знам много за машиностроенето, затова не мога да направя изчисление на предавката. Затова симулирах части в solidworks, за да видя дали работи, преди да натисна бутона Print. Всяка писта е свързана с някаква резервна 3 мм нишка. Работи доста добре с малко шлайфане. Но дизайнът на пистата има недостатък, повърхността, докосваща земята, е твърде гладка, че е трудно да се захване. Ако го отпечатам с главата надолу, бих могъл да добавя малко протектор, но това ще струва много поддържащ материал поради зъба. Бъдещи решения: 1: отпечатайте зъба отделно, след което ги залепете. 2. Нанесете спрей боя с гумено покритие.

След това отпечатах корпуса за сервоустройства и се уверете, че задвижващото колело може да бъде прикрепено към серво рамото с винтове.

Стъпка 3: Система за оръжие

Image
Image
Оръжейна система
Оръжейна система
Оръжейна система
Оръжейна система

Тази част е най -вълнуващата за мен. Можете да си купите играчка -резервоар за камера. Но не намерих нито една камера за комбиниране на играчки и оръжие.

Купих тази автоматична играчка със страйкболен пистолет за $ 9.99 на разпродажба. (Сега е около 20 долара и може да опитам нещо по -евтино по -късно) И да го съборя, за да разбера механизма. Мога напълно да отрежа тялото и да го залепя за резервоара си. Но не харесвам грозно изглеждащото полу тяло. Затова направих известно измерване и преработих механичната част. От тези парчета научих урок по 3D печат: винаги ще сгрешите. Необходими са 5 отпечатъка, за да се постави всяка част, и много рязане, шлайфане и горещо залепване, за да работи перфектно.

След като всяка част от пистолета за играчки се движи правилно в моето копирано тяло, отпечатах четири други части, за да закрепя тялото. И добави накланяща се предавка, фуния BB куршум и поддръжка на камерата. Всички тези части са завинтени към тялото на пистолета. В крайна сметка те могат да бъдат комбинирани в поне две части. Но мисля, че още не съм готов.

На основата на кулата добавих микро серво за накланяне и микро DC мотор за въртене.

Тогава започнах да тествам пистолета, свързвам 4 батерии АА и той стреля добре. Бях наистина щастлив, че работи добре. Но на следващия ден открих проблем.

Ето видеото от моето изпитване на оръжие. кулата е свързана към 3v адаптер.

Стъпка 4: Настройте Pi

Това е най-важната част, сърцето на нашия резервоар-Raspberry Pi!

Ако все още не сте играли Raspberry Pi. Препоръчвам да започнете с тази книга: Първи стъпки с малиново пи от MAKE. Можете да получите основите и цялостно разбиране на Pi.

Вземете най -новата raspbian OS.

Следващият инструмент, който много препоръчвам, е Remote Desktop. Ето урока от Адам Райли. След като настроите, можете да видите Pi работния плот на вашия компютър (не е тестван на Mac). По този начин пускането на Pi „голо“означава, че няма нужда от дисплей, мишка и клавиатура. Някои от приятелите ми използват ssh командния ред. Но предпочитам работния плот.

Въз основа на предишни изследвания разбрах, че Raspberry Pi е способен да предава поточно видео. Затова започнах да се занимавам с различни приложения на Pi. Много от приложенията имат дълъг лаг (секунди) или имат ниска честота на кадрите. След няколко седмици лутане по онлайн видеоклипове и уроци, за щастие намерих решението. Видео в youtube за webiopi ми даде много надежди. Повече изследвания ме накараха да повярвам, че това е правилният път.

Webiopi е рамка, която направи връзката между Pi и друго интернет устройство наистина лесна. Той контролира всички Pi GPIOS и след това стартира сървър, съдържащ персонализиран html. Можете да получите достъп до този html от други устройства (компютър, смарт телефон и т.н.) и да щракнете върху бутон в браузъра на разстояние wifi, GPIO се задейства.

Видеоклипът ме изпълни с надежда, базиран е на урок по webiopi-проект cambot. Той е представен в MagPi magzine #9 [html] [pdf] и #10 [html] [pdf]. Благодаря Ерик PTAK!

Следвайки инструкциите стъпка по стъпка, можете да направите камбот на две колела! Ето как работи: свържете два двигателя с H-мост, след това контролирайте H-моста с 6 GPIO пина, за да контролирате посоката и скоростта. Webiopi се използва за контрол на GPIO. И MJPG-стример се използва за поточно видео.

Ако сте нов в Pi или Linux, както бях преди месеци, може да имате малък проблем, след като изпълните всички стъпки. Можете да стартирате кода на python за webiopi и поточното видео поотделно, но не знаете как да ги стартирате заедно? Отне ми известно време да разбера, че можете да добавите & след команда (& наистина е трудно да търсите в google, BTW), това означава, че искате тази команда да се изпълнява на заден план. Така че ще правя това всеки път:

sudo python cambot.py &

sudo./stream.sh

Вярвам, че създавате bash файл, съдържащ горната команда, в един файл и изпълнявате веднъж. Още не съм пробвал.

Така че опитах тази основна настройка с два DC двигателя, тя работи, но моторът, който имам, не е достатъчно мощен. Води ме към друг вариант: непрекъснати серво.

Тогава идва нов въпрос: поддържа ли webiopi PWM сервоуправления?

Отговорът е да, но не сам по себе си: RPIO е необходим за генериране на софтуерна PWM

Инсталиране на RPIO (нямам късмет при първия метод за инсталиране на apt-get. Методът github работи чудесно за мен)

Примерен код и други дискусии

Сега вашият бот е надграден с два сервомотора! Помислете какво можете да направите с допълнителните ръце!

Промених горния примерен код, за да пасне на моя резервоар. Не се нуждаете от степен по компютърни науки, за да направите това. Вие сте добри, стига да разбирате примерния код и да знаете какво да копирате и къде да промените.

Стъпка 5: Електронна връзка

Електронна връзка
Електронна връзка
Електронна връзка
Електронна връзка
Електронна връзка
Електронна връзка

Power bank, който купих, Anker Astro Pro, има два usb порта и един 9v порт (основната причина да купя този). Опитах се да захранвам Pi, wifi dongle и уеб камера с един usb порт. Не се стартира. Затова използвах другия USB порт за захранван USB хъб.

Тогава си помислих, че може би мога да захранвам сервомоторите с USB порта за концентратор. Работи, но wifi връзката е много нестабилна.

За да разреша този проблем, въведох 4 батерии тип АА, за да захранвам нуждите на 6V серво. Ивирах USB кабела, за да изложа заземяващия проводник (черен) и да се свържа със земята на батерията AA.

3 сервомотора, червено до 6V, черно към маса и сигнален щифт, свързан към GPIO щифтове.

Както е планирано, въртящият се купол и моторът на пистолета също трябва да се захранват от 6V с управление на H-мост. Но когато свържа всичко, пистолетът няма да стреля! Изглежда, че моторът се опитва да се върти, но не може да управлява предавките. Изходното напрежение е правилно, но изглежда няма достатъчно ток за задвижване. Опитах и MOSFET без късмет.

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

Стъпка 6: Интерфейс

Image
Image
Интерфейс
Интерфейс
Интерфейс
Интерфейс

Също така промених интерфейсите от примерните кодове на cambot и rasprover. Тъй като планирах да използвам смартфон като контролер, оптимизирах оформлението на телефона си (galaxy note3).

Повечето оформления и стилове могат да бъдат редактирани в index.html. Стилът на бутона по подразбиране (тъмно сиво с черна рамка) е дефиниран в webiopi.css, намиращ се на/usr/share/webiopi/htdocs. Използвах терминал за стартиране на sudo nano, за да го променя.

Видео потокът е разположен в центъра на екрана, контрола за шофиране отляво и контрол на оръжието отдясно. Проектирах управлението на шофирането като два комплекта нагоре (напред), стоп, надолу (назад), които искат по -фин контрол, но във видеото можете да кажете, че понякога е неудобно.

Стъпка 7: План за бъдещето

Както можете да разберете, този проект все още не е завършен. Благодарение на конкурса за малиново пи, през миналата седмица направих много, просто се опитах да го завърша преди крайния срок. Обръща се доста добре, докато открия, че пистолетът не стреля …

Има още много неща за подобряване, но се надявам да научите нещо от моя опит.

Краткосрочен план:

Накарайте пистолета да работи !!!

По -голям контейнер за повече BB

Танкът трябва да изследва света-излезте от домашния wifi!

Настройте ad-hoc възел на Pi, така че телефонът да може да се свързва с него навсякъде

Изпълнете командата резервоар при стартиране

Добавете бутона за изключване, за да изключите безопасно Pi.

Дългосрочен план:

По -добра система за управление за стабилност и сцепление

Проектирайте моята собствена платка вместо макет сега

Запис на видео от първо лице

Друг пистолет? Нека го направим боен кораб!

Добавяне на сензори за самопатрулиране?

Компютърно виждане за автоматично насочване!

Контролирайте резервоара далеч: ще видя всичко у дома!

Стъпка 8: Благодаря за четенето

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

Ако имате някакви въпроси, моля, оставете коментар, ще се опитам да отговоря.

Позволете ми да направя актуализация-Cam Tank2.0-в близко бъдеще.

Най -сетне, ето видео, показващо сценария на битката. Доста е забавно.

Насладете се и ще се видим следващия път!

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