Агуулгын хүснэгт:
Видео: DIY VR гүйлтийн зам- Basys3 FPGA-Digilent уралдаан: 3 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:01
Та ширээний програм, тоглоомоо ажиллуулах боломжтой VR гүйлтийн зам барихыг хүсч байна уу? Дараа нь та зөв газартаа хүрлээ!
Уламжлалт тоглоомд та хулгана, гар ашиглан хүрээлэн буй орчинтой харилцдаг. Тиймээс бид гүйлтийн зам болон тоглоомын хооронд нийцтэй байдлын асуудал гарахгүйн тулд хулгана, гартай ижил төрлийн дохио илгээх шаардлагатай байна. Эдгээр төхөөрөмжийг салгахын оронд бид аль болох ойрхон дуурайх чадвартай өөрийн төхөөрөмжийг бүтээх болно.
Хулганы оролтын хувьд бид ээлжлэн дамжуулагч ба дамжуулагчгүй зүсмэлүүдтэй дискийг ашиглах бөгөөд дээр нь жижиг офсет бүхий хоёр утас гулсдаг. Удирдах зөвлөл нь утаснаас ирж буй дохиог уншиж, 00, 11, 10, 01 гэсэн дөрвөн хослолын аль нэгийг өгөх бөгөөд үүнийг бид баруун зүүн хөдөлгөөнөөр шууд орчуулж болно.
Дээш чиглэсэн хөдөлгөөний хувьд дискний оронд бид 0 ба 1-ийн ижил загвартай хавтанг ашиглах болно.
Гарыг дуурайдаг модулийн оролтын хувьд бид бэхэлгээг бэхлэх савааны үен дээр унтраалга байрлуулах болно. Та ямар ч чиглэлд гишгэх үед саваа бага зэрэг нугалж, улмаар унтраалгыг нээнэ.
(Төсөл үргэлжилж байгаа бөгөөд үүнийг сайжруулах боломжтой гэдгийг санаарай, тиймээс илүү сайн болгох ямар нэгэн зөвлөгөө хүлээж байна)
Алхам 1: Суурь
Суурь нь хүндийн төв багатай байх тул хүнд материал ашиглах шаардлагатай болно. Миний хувьд би гипс болон антенны диск ашиглан хонхойсон хөгц хийсэн боловч бусад хэрэгслийг ашиглаж болно (жишээ нь йогийн бөмбөг). Мөөгөнцөр хатсаны дараа БСХС эсвэл ижил төстэй материалаар хийсэн ижил диаметртэй хоёр диск дээр байрлуулна. БСХС -ийн хоёр дискний хооронд зайг байрлуулах болно. Эдгээр дискний хооронд ирмэг дээр холхивч бүхий гурвалжин профайлыг байрлуулах болно. Өөр нэг холхивчийг гурвалжны орой дээр перпендикуляр байрлуулж, дискэн дээр шүргэсэн орой дээр байрлуулна. Илүү нарийвчлалтай байхын тулд илүү их холхивч ашиглаж болно. Гурав дахь зурагт үзүүлсэн шиг оройны аль нэг дээр саваа байрлуулна. Энэхүү саваа нь тоглогчийг байрлуулах морины оосортой.
Өөр нэг тогтмол гадна саваа нь утсыг дэмжихэд ашигладаг бөгөөд эргэлтийн хөдөлгөөнийг лавлах цэг болгон ашигладаг.
Алхам 2: 2 оролтын менежмент
Хар хайрцагны үүднээс авч үзвэл төхөөрөмж нь дараах оролттой байх болно: x, y хулганы тоолуурын 4 холболт, хулганы товчлуурын 2 холболт, сумны товчлуурын 4 холболт. Гаралтыг 4 хулганаар дүрсэлсэн: 2 нь хулганы PS2 холболтын хувьд, нөгөө нь гарны PS2 холболтын хувьд 2 байна. PS2 протоколын талаар илүү дэлгэрэнгүй тайлбар авахын тулд та дараах сайтыг шалгаж болно:
Самбарын оролтын хувьд би JB (1 -ээс 0 хүртэл) дижитал тээглүүрийг сонгосон. … 11001100… гэсэн дарааллыг харгалзан хоёр оролтыг уншвал бид тоолуурын гурван төлөвийг ялгаж чадна.
1. тоолох;
2. Доош тоолох;
3. Одоогийн утгыг хадгалах;
Count_Type модуль яг үүнийг хийдэг. Хэрэв оролтод өөрчлөлт орсон бол модуль нь тохируулах мессежийг хүлээн авахгүй бол 8 битийн тоолуурт (8_bit_count.vhd файлд хэрэгжүүлсэн) тохирох мессежийг илгээдэг бөгөөд энэ нь одоогийн утгаас хасах буюу хасах болно.
Толгойг дээш доош чиглүүлэхэд ижил санааг ашигладаг боловч дискний оронд 0 & 1-ийн ээлжлэн солигддог ижил гүйдэг шугаман профайлыг ашиглана.
Алхам 3: VHDL -ийн хэрэгжилт
Танилцуулгад дараах модулиудыг хавсаргав.
1. Count_Type: энэ модуль нь хоёр дахь алхамд тайлбарласан диск эсвэл профайлаас хоёр оролтын утсыг тайлах ажлыг гүйцэтгэдэг;
2. 8bit_count: энэ модуль нь Count_Type -аас кодлогдсон мессежийг тайлбарлаж, тоолуурыг нэмэгдүүлэх буюу багасгах;
3. 3bytepacket: энэ модуль нь зүүн ба баруун товчлуурын статусыг удирдаж, өгөгдлийг форматладаг тул үүнийг PS2 протоколд ашигладаг 3 байтын өгөгдлийн пакетад оруулах боломжтой;
4.clk12khz: энэ модуль нь тодорхой бүрэлдэхүүн хэсэг, процессууд дээр ажилладаг PS2 протоколд зориулагдсан 12 кГц цагийг өгдөг;
5. MessageManager: энэ модуль нь 3 байтын өгөгдлийн пакетийг илгээж, тайлбарлаж, PC -ээс ирсэн мессежийн хариуд зохих хариуг өгдөг.
6. PS2Interface: энэ модуль нь төхөөрөмж болон хост (PC) хоорондын харилцааны протоколыг интерфэйс болгодог (энэ модулийг зөв ажиллахын тулд дибаг хийх, нарийвчилсан үнэлгээ хийх шаардлагатай байдаг).
Зөвлөмж болгож буй:
Нислэгийн зураглалын өгөгдлийг ашиглан бөөрөлзгөнө PI гүйлтийн зурвасын гэрэл: 14 алхам (зурагтай)
Нислэгийн зураглалын өгөгдлийг ашиглан бөөрөлзгөнө PI гүйлтийн зурвасын гэрэл: Энэ чийдэн нь хэд хэдэн шалтгаанаас үүдэлтэй бөгөөд би дээгүүрээ нисдэг онгоцыг үргэлж сонирхож, зуны улиралд амралтын өдрүүдэд эргэн тойронд нисдэг нэлээд сонирхолтой онгоцнууд байдаг. Хэдийгээр та тэднийг өнгөрч байхад нь л сонсох хандлагатай байдаг
Цахилгаан хэрэгслийг ажиллуулахын тулд гүйлтийн зам DC хөтөч мотор ба ХОУХ -ны хурд хянагч ашиглана уу: 13 алхам (зурагтай)
Цахилгаан хэрэгсэлд гүйлтийн гүйдлийн гүйдлийн хөтөч мотор, ХОУХ -ны хурд хянагч ашиглана уу: Металл хайчлах тээрэм, токарийн машин, өрмийн машин, хөрөө, зүлгүүр гэх мэт цахилгаан багаж хэрэгслийг шаарддаг. Санамсаргүй байдлаар ихэнх гүйлтийн замууд нь 80-260 VDC хөдөлгүүрийг ашигладаг
Гүйлтийн гутал хатаагч: 6 алхам (зурагтай)
Гүйлтийн гутал хатаагч: Энэ бол миний өмнө нь оруулсан зааварчилгааны өөрчлөлт юм. Төхөөрөмж нь 60 Вт чийдэнгээр халаасан хайрцагт агаар татаж, төхөөрөмжийн дээд хэсэгт байрлах 3/4 инчийн хоолойгоор гадагшлуулдаг бөгөөд ингэснээр гутал хатдаг. Энд үзэл баримтлалыг харуулсан линк байна
30 м гүйлтийн секундомер (Arduino): 6 алхам (зурагтай)
30 М гүйлтийн секундомер (Arduino): Энэхүү төслийг Финляндын бейсболын дасгалжуулагч, 30 метрийн гүйлтийн бага тоглогчдын хурдыг шалгах зорилгоор тусгайлан хийсэн болно. Энэхүү arduino projeckt нь миний судалж буй хичээлийн төсөл байв. Төсөл нь сайн муу талуудтай байсан боловч одоо ядаж л ажил хэрэг болж байна
Олон өнгийн гүйлтийн зурвасын гэрэл: 4 алхам
Олон өнгийн гүйлтийн зурвасын гэрэл: Энэхүү зааварчилгаа нь энэ сайт дээрх янз бүрийн LED нарны шил, шөнийн гэрлийн зааврын өөрчилсөн хувилбар юм. Энэ бол миний анхны зааварчилгааны нийтлэл бөгөөд одоогоор үзэл баримтлалын нотолгоо юм. Засвар хийх төлөвлөгөө аль хэдийн эхэлчихсэн байгаа. Энэ аав