Съдържание:

Контролиран RC автомобил с виртуална реалност: 9 стъпки
Контролиран RC автомобил с виртуална реалност: 9 стъпки

Видео: Контролиран RC автомобил с виртуална реалност: 9 стъпки

Видео: Контролиран RC автомобил с виртуална реалност: 9 стъпки
Видео: Предсказания на Семейство Симпсънс Които Все Още не са се Сбъднали 2024, Юли
Anonim
Image
Image

Искали ли сте някога да бъдете намалени и да управлявате плавателен съд като Innerspace или Fantastic Voyage? Е, мисля, че това е толкова близо, колкото ще получите в кратък срок!

Ето терена:

Автомобил с дистанционно управление в реалния живот, пилотиран от командната конзола за виртуална реалност. Това означава, че привързвате слушалки за VR, завъртате превключвател на RC кола, след което можете да пилотирате от VR с видео емисия на живо право към лицето си.

Има неща, които внедрих, които можете да контролирате на VR Car.

  1. Колела
  2. Клаксон
  3. Светлини

Всички те имат някакъв бутон или лост във VR, които можете да обърнете или превключите, за да управлявате колата.

За пълното репо и повече информация, вижте моя Github и моя уебсайт!

Стъпка 1: Материали и инструменти

Материали и инструменти
Материали и инструменти
Материали и инструменти
Материали и инструменти

Механични:

Комплект шаси с 4 колела

Електрически:

  • Кодиране на колела
  • 3S 1300mAh батерия
  • Arduino Uno
  • Моторният щит на Arduino
  • Пиезо електрически зумер
  • Малък светодиод
  • XT60 конектори
  • Boost / Buck Converter

Компютър:

  • Всяка вградена компютърна система: Raspberry Pi, Jetson Nano и др.
  • USB камера (за предпочитане - 180 градусова камера)

Инструменти / Екстра:

  • Поялник
  • Някои VR настройки - имам Oculus Rift
  • Мултиметър

Стъпка 2: Конструирайте кола

Конструирайте кола
Конструирайте кола
Конструирайте кола
Конструирайте кола
Конструирайте кола
Конструирайте кола

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

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

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

Стъпка 3: Поялни схеми

Поялни схеми
Поялни схеми
Поялни схеми
Поялни схеми

Тази част е доста досадна, но не сложна. Ако следвате картината и измерите всичко, преди да отрежете проводника, не е толкова лошо.

Докато правите това, трябва също да калибрирате своя доларов конвертор, за да изведете правилното напрежение. Raspberry Pi и Jetson Nano и двете приемат 5v, но батерията ни е на 11.1v. Така че, трябва да се уверим, че не пържим нашата електроника. За да направите това, включете батерията във входната страна на конвертора. Докато батерията е включена, използвайте своя мултицет, за да измерите изходната страна на доларовия конвертор. Използвайте малка отвертка с плоска глава, за да завъртите потиенциометъра на конвертора, докато изходното напрежение е 5v. След като изходът е правилен, няма да се налага да завъртате потиенциометъра повече.

Стъпка 4: Инсталирайте зависимости на вградена система

Инсталирайте зависимости на вградена система
Инсталирайте зависимости на вградена система

Тук не трябва да се прави много, но все пак е изключително важно.

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

След това отворете терминал и въведете следното:

sudo apt актуализация

sudo apt инсталирате openssh-сървър

sudo apt инсталиране на python-pip pip инсталиране на numpy pip инсталиране на opencv-python pip инсталиране на pyzmq

След като тези неща са инсталирани, трябва да се уверим, че независимо от порта, в който е включен arduino, той винаги се разпознава. Така че, ние пишем това, което се нарича UDEV правила. Това са правила за вашата операционна система, които управляват какво се случва, когато включите нещата. Искаме да идентифицираме arduino, когато е включен, и да му дадем име за достъп до него. Това име ще бъде "arduino_0". За да направим това, ще използваме вътрешния сериен номер на arduino, за да го идентифицираме.

udevadm info -a -n /dev /ttyUSB1 | grep '{serial}' | глава -n1

Това ще изплюе стойност за серийния номер, продължете и копирайте тази стойност.

След това трябва да редактираме (или да създадем, ако не съществува) файл, наречен "99-usb-serial.rules". Този файл се намира в следния път на файла "/etc/udev/rules.d/99-usb-serial.rules". Както споменах, ако този файл не съществува, просто го създайте и поставете в следващия ред с VALUE_FROM_ABOVE, заменен с вашата стойност от преди.

SUBSYSTEM == "tty", ATTRS {serial} == "VALUE_FROM_ABOVE", SYMLINK+= "arduino_0"

Това казва на операционната система, че когато види този специфичен сериен номер, да го нарече arduino_0.

Последното нещо, което трябва да направите тук, е да изтеглите pushArucoVideoPullCommands.py и да го поставите на лесно достъпно място. Бих препоръчал началната директория за вашия потребител, тъй като това ще е мястото, където по -късно ще включим SSH във вградената система.

Стъпка 5: Настройка на статичен IP адрес

Настройка на статичен IP адрес
Настройка на статичен IP адрес

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

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

Придвижете се до администраторската секция на вашия рутер, обикновено (за повечето рутери) това става, като отворите уеб браузър и отидете на „192.168.1.1“. Той ще ви помоли да влезете, а типичното стандартно потребителско име и парола за повечето рутери е "admin".

След като отидете там, отидете до нещо, което споменава „DHCP сървър“. Това е процес, който работи на вашия рутер и следи кои устройства са свързани към него чрез техния MAC адрес, който винаги е постоянен. Искаме да изберем устройствата, които ни интересуват около компютъра на наземната станция и вградената система и ги добавете към резервираната клиентска секция. Това ще им даде статичен ip всеки път, когато са свързани към този рутер.

Уверете се, че сте задали IP на вградената система на 192.168.1.122 IP на наземната станция може да бъде зададен на всичко.

Стъпка 6: Качете код в Arduino

Качете код в Arduino
Качете код в Arduino

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

На вашата Arduino IDE отидете на Sketch-> Include Library-> Manage Libraries … След това потърсете Adafruit Motor Shield Library. Инсталирайте тази библиотека, след това качете кода на вашия arduino, нищо друго не трябва да се изисква.

Стъпка 7: Прикрепете верига и компютър към колата

Прикрепете верига и компютър към колата
Прикрепете верига и компютър към колата

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

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

Стъпка 8: Настройка на VR среда

Настройка на VR среда
Настройка на VR среда

Този раздел ще изглежда малко по -различно в зависимост от това каква настройка на VR имате. Какъвто и да е случаят, използвах SteamVR за разработване на този софтуер, така че може да се наложи да го инсталирате.

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

Просто трябва да изтеглите и разархивирате файла със света Unity за изграждане и да сте готови да стартирате VR_Bot.exe.

Стъпка 9: Изпълнете всичко заедно

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

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

В същото време ще трябва да включите батерията към вградената система и тя да се стартира автоматично и да се свърже с вашия рутер. След като се стартира, SSH в него. За достъп до това ще ви трябва някакъв терминал на наземната станция, препоръчвам GitBash.

SSH означава Secure Shell и това е протокол за сигурен достъп до отдалечени системи. В нашия случай това ще ни даде достъп до вградената система от наземната станция. Щракнете тук, за да научите повече.

Трябва да знаете потребителското име, с което сте настроили вградената си система. За потребителското име по подразбиране на raspberry pi е „pi“и паролата „raspberry“.

След като бъде инсталиран, отворете терминал и въведете следното:

ssh {Потребителско име на вградената система}@192.168.1.122

Това ще отвори терминал във вградената система.

Веднъж там, просто трябва да изпълните скрипта на python, който копирахме по -рано.

python /path/to/pushArucoVideoPullCommands.py

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

Тогава сте добре да започнете да шофирате и да се забавлявате!

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