Виртуал бодит байдлын хяналттай RC машин: 9 алхам
Виртуал бодит байдлын хяналттай RC машин: 9 алхам
Anonim
Image
Image

Та хэзээ нэгэн цагт цомхотгож, дотоод орон зай эсвэл гайхалтай аялал гэх мэт гар урлалын нисгэгч болохыг хүсч байсан уу? Миний бодлоор энэ нь богино хугацаанд мэдэгдэх болно.

Энд давирхай байна:

Бодит амьдрал дахь алсын удирдлагатай машиныг Виртуал Бодит байдлын консолоос жолоодож байна. Энэ нь та VR чихэвчийг оосорлож, RC машин дээрх унтраалгыг эргүүлээд дараа нь шууд видео дамжуулалтаар нүүрэн дээр шууд VR -ээс нисгэгч хийж болно гэсэн үг юм.

Миний хэрэгжүүлсэн зүйл бол та VR машин дээр удирдах боломжтой зүйлүүд юм.

  1. Дугуй
  2. Эвэр
  3. Гэрэл

Эдгээр нь бүгд VR дээр товчлуур эсвэл хөшүүрэгтэй бөгөөд та машинаа жолоодохын тулд эргүүлж эсвэл сольж болно.

Бүрэн репо болон бусад мэдээллийг авахын тулд миний Github болон вэбсайтыг үзээрэй!

Алхам 1: Материал ба багаж хэрэгсэл

Материал ба багаж хэрэгсэл
Материал ба багаж хэрэгсэл
Материал ба багаж хэрэгсэл
Материал ба багаж хэрэгсэл

Механик:

4 дугуйгаар хөтлөгчтэй явах эд анги

Цахилгаан:

  • Дугуй кодлогч
  • 3S 1300mAh батерей
  • Ардуино Уно
  • Arduino мотор бамбай
  • Piezo Electric Buzzer
  • Жижиг LED
  • XT60 холбогч
  • Boost / Бак хөрвүүлэгч

Компьютер:

  • Аливаа суулгагдсан компьютерын систем: Raspberry Pi, Jetson Nano гэх мэт.
  • USB камер (илүү зохимжтой - 180 градусын камертай)

Хэрэгсэл / Нэмэлт:

  • Гагнуурын төмөр
  • Зарим VR тохиргоо - Надад Oculus Rift байна
  • Мультиметр

Алхам 2: Машин барих

Машин барих
Машин барих
Машин барих
Машин барих
Машин барих
Машин барих

Машины явах эд анги нь угсрахад маш хялбар байдаг. Та хөдөлгүүрийг үндсэн самбар дээр өгсөн табуудаар дамжуулан холбох хэрэгтэй. Дугуй, мотороо залгасны дараа камерыг машины урд талд холбоход танд ямар нэгэн зүйл хэрэгтэй болно.

Би уг камерыг суурилуулахын тулд ирсэн картон хайрцгийг ашигласан. Би том L хэлбэрийг хайчилж, камерыг сайтар нүхлэх нүхийг хайчилж авав. Үүний дараа та камерыг дундуур нь зүүж, ар талд нь соронзон хальс тавьж байрлуулах боломжтой. Хэрэв та хүсвэл гэрлийнхээ нүхийг яг одоо хийж болно, эсвэл дараа нь утасны уртыг хэмжихдээ үүнийг хийж болно.

Та мөн дугуйны кодлогчийг нэг дугуйнд холбох хэрэгтэй болно. Аль нь хамаагүй, би үүнийг арын зүүн дугуйнд хийв. Та соронзон дискийг дугуйны гол босоо аманд байрлуулах хэрэгтэй бөгөөд кодлогч нь түүний хажууд байгаа машинд бэхлэгдсэн байх ёстой. Энэ нь маш сайн хүлээж авдаг тул үүнийг шууд хийх шаардлагагүй, гэхдээ аль болох ойрхон байх ёстой. Би кодлогчоо соронзон хальс, зип зангиагаар бэхлэв. Кодлогч бол бидний машины хурдыг хэмжих хэрэгсэл юм.

Алхам 3: Гагнуурын хэлхээ

Гагнуурын хэлхээ
Гагнуурын хэлхээ
Гагнуурын хэлхээ
Гагнуурын хэлхээ

Энэ хэсэг нь нэлээд төвөгтэй боловч төвөгтэй биш юм. Хэрэв та зургийг дагаж, утсаа таслахаасаа өмнө бүх зүйлийг хэмжиж үзвэл энэ нь тийм ч муу биш юм.

Үүнийг хийж байхдаа зөв хүчдэлийг гаргахын тулд та мөн хөрвүүлэгчээ тохируулах хэрэгтэй. Raspberry Pi болон Jetson Nano хоёулаа 5V авдаг, гэхдээ бидний батерей 11.1v байна. Тиймээс бид цахилгаан бараагаа шарсан биш болгох хэрэгтэй. Үүнийг хийхийн тулд батерейгаа хөрвүүлэгчийн оролт талд залгаарай. Батерейг залгуурт залгах үед мултиметрээ ашиглан хөрвүүлэгчийн гаралтын талыг хэмжинэ. Жижиг хавтгай халив ашиглан гаралтын хүчдэл 5v болтол хөрвүүлэгч дээрх потенциометрийг эргүүлнэ. Гаралт зөв болсны дараа потенциометрийг эргүүлэх шаардлагагүй болно.

Алхам 4: Embedded System дээр хараат байдлыг суулгах

Embedded System дээр хараат байдлыг суулгах
Embedded System дээр хараат байдлыг суулгах

Энд хийх зүйл тийм ч их биш боловч гайхалтай чухал хэвээр байна.

Нэгдүгээрт, ашиглах чиглүүлэгчтэйгээ холбогдсон эсэхээ шалгаарай, ингэснээр одооноос автоматаар холбогдох боломжтой болно.

Дараа нь терминалыг нээгээд дараахь зүйлийг бичнэ үү.

sudo apt update

sudo apt install openssh-server

sudo apt install python-pip pip install numpy pip install opencv-python pip install pyzmq

Эдгээр зүйлсийг суулгасны дараа arduino ямар порт руу залгасан байсан ч хамаагүй үүнийг үргэлж хүлээн зөвшөөрдөг эсэхийг шалгах хэрэгтэй. Тиймээс бид UDEV дүрмүүд гэж нэрлэгддэг зүйлийг бичдэг. Эдгээр нь таны үйлдлийн системийн дүрмүүд бөгөөд та ямар нэг зүйлийг залгахад юу болохыг зохицуулдаг. Бид arduino -ийг залгасан үед нь тодорхойлж, түүнд хандах нэр өгөхийг хүсч байна. Энэ нэр нь "arduino_0" байх болно. Үүнийг хийхийн тулд бид arduino -ийн дотоод серийн дугаарыг ашиглан таних болно.

udevadm мэдээлэл -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" рүү очдог. Энэ нь таныг нэвтрэхийг шаардах бөгөөд ихэнх чиглүүлэгчийн стандарт хэрэглэгчийн нэр, нууц үг нь "админ" юм.

Тэнд очсоны дараа 'DHCP сервер гэсэн зүйл рүү очно уу. Энэ нь таны чиглүүлэгч дээр ажилладаг бөгөөд ямар төхөөрөмжүүд нь MAC хаягаараа холбогддог болохыг байнга хянадаг процесс юм. Бид анхаарал халамж тавьдаг төхөөрөмжөө сонгохыг хүсч байна. тухай, газрын станцын компьютер болон суулгагдсан системийг хадгалсан үйлчлүүлэгчийн хэсэгт нэмж оруулаарай. Энэ нь тэдэнд энэ чиглүүлэгчтэй холбогдох бүрт статик ip өгөх болно.

Та Embedded System -ийн IP -ийг 192.168.1.122 болгож тохируулсан эсэхээ шалгаарай. Газрын станцын IP -ийг ямар ч байдлаар тохируулж болно.

Алхам 6: Arduino руу код оруулах

Arduino руу код оруулах
Arduino руу код оруулах

Arduino кодыг байршуулахын тулд бид эхлээд моторын бамбайтай ажиллах номын санг суулгах хэрэгтэй.

Arduino IDE дээрээ Sketch-> Номын санг оруулах> Номын санг удирдах … руу очоод Adafruit Motor Shield номын санг хайж олоорой. Энэ номын санг суулгаад кодыг өөрийн arduino -д байршуулаарай, өөр юу ч шаардлагагүй болно.

Алхам 7: Хэлхээ ба компьютерийг машинд холбоно уу

Хэлхээ ба компьютерийг машинд холбох
Хэлхээ ба компьютерийг машинд холбох

Одоо хэлхээ бий болсон тул бүгдийг машин дээр тавих цаг болжээ. Би худлаа хэлэхгүй, ихэнх зүйлийг соронзон хальсаар хийдэг, учир нь энэ бол надад маш хурдан алгадахад хамгийн хялбар байсан зүйл юм. Дээрх зураг дээр үзүүлсэн шиг угсрах нүхийг суурилуулсан болно.

Машины ихэнх хэсгийг зүгээр л машины орой дээр суух нь амархан байдаг, тиймээс зай багатай бол санаа зовох хэрэггүй.

Алхам 8: VR орчныг тохируулах

VR орчныг тохируулах
VR орчныг тохируулах

Энэ хэсэг нь танд ямар төрлийн VR тохиргоо хийж байгаагаас хамаарч арай өөр харагдах болно. Юу ч болсон хамаагүй би SteamVR -ийг ашиглан энэ програм хангамжийг боловсруулсан тул үүнийг суулгах шаардлагатай байж магадгүй юм.

Та SteamVR -ийг ашиглаж байгаа л бол удирдлага нь өөр өөр хянагчуудад дасан зохицох ёстой. Би хяналтуудыг товчлуур биш харин "Үйлдлүүд" болгон харуулсан тул онолын хувьд энэ нь хүн бүрт тохирсон байх болно.

Та Unity world бүтээх файлыг татаж аваад задлах хэрэгтэй бөгөөд VR_Bot.exe -ийг ажиллуулахад бэлэн байх хэрэгтэй.

Алхам 9: Бүгдийг хамтдаа ажиллуул

Бүгдийг хамтдаа ажиллуул
Бүгдийг хамтдаа ажиллуул
Бүгдийг хамтдаа ажиллуул
Бүгдийг хамтдаа ажиллуул

Тиймээс, одоо бид машины тохиргоог хийж, газрын станцыг холбож, явахад бэлэн болсон тул энэ муу хүүг яаж ажиллуулах вэ? За, Ground Station -ийн үүднээс авч үзвэл та үүнийг өмнө нь үзсэн VR_Bot.exe файлыг ажиллуулахад л хангалттай.

Үүний зэрэгцээ та батерейг суулгагдсан системд залгаж, автоматаар асааж, чиглүүлэгчтэйгээ холбох шаардлагатай болно. Үүнийг ачаалсны дараа SSH -ийг оруулна уу. Үүнд нэвтрэхийн тулд танд газрын буудал дээр ямар нэгэн терминал хэрэгтэй болно, би GitBash -ийг санал болгож байна.

SSH нь Secure Shell гэсэн үг бөгөөд энэ нь алсын системд аюулгүй нэвтрэх протокол юм. Манай тохиолдолд энэ нь Газрын буудлаас суулгагдсан системд нэвтрэх боломжийг бидэнд олгоно. Илүү ихийг мэдэхийн тулд энд дарна уу.

Та суулгагдсан системийг тохируулсан хэрэглэгчийн нэрийг мэдэх хэрэгтэй. Бөөрөлзгөнө pi -ийн хувьд хэрэглэгчийн анхдагч нэр нь 'pi' бөгөөд нууц үг 'бөөрөлзгөнө' юм.

Суулгасны дараа терминалыг нээгээд дараахь зүйлийг бичнэ үү.

ssh {Оруулсан системийн хэрэглэгчийн нэр}@192.168.1.122

Энэ нь суулгагдсан системд терминал нээх болно.

Тэнд очсоны дараа та өмнө нь хуулсан питон скриптийг ажиллуулах хэрэгтэй.

python /path/to/pushArucoVideoPullCommands.py

Үүнийг хийсний дараа Embedded System нь газрын зурвасыг шахаж, командуудыг газрын станц руу хүлээн авч эхэлнэ.

Дараа нь та машин жолоодож, зугаацаж эхлэх нь дээр!

Зөвлөмж болгож буй: