INHOUDSOPGAWE:
Video: DIY VR-loopband- Basys3 FPGA-Digilent-wedstryd: 3 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:24
Wil u 'n VR -loopband bou waarop u u lessenaarprogramme en -speletjies kan bestuur? Dan het u op die regte plek gekom!
In konvensionele speletjies gebruik u die muis en die sleutelbord om met die omgewing te kommunikeer. Daarom moet ons dieselfde soort seine stuur as 'n muis en 'n sleutelbord, sodat daar geen verenigbaarheidskwessies tussen ons loopband en die spel is nie. In plaas daarvan om hierdie toestelle uitmekaar te haal, sal ons ons eie toestel skep wat dit so na as moontlik kan simuleer.
Vir die insette van die muis gebruik ons 'n skyf met afwisselende geleidende en nie-geleidende snye, waarop twee drade, met 'n klein offset, skuif. Die bord sal die seine van die drade lees en ons een van vier kombinasies gee: 00, 11, 10, 01, wat ons direk in links-regs beweging kan vertaal.
Vir die opwaartse beweging, in plaas van 'n skyf, gebruik ons 'n bord met dieselfde patroon van 0's en 1's.
As insette vir die module wat die sleutelbord simuleer, sal ons skakelaars op die gewrig van 'n staaf hê wat die harnas hou. As u in enige rigting stap, buig die staaf effens en maak die skakelaar oop.
(Hou in gedagte dat die projek nog aan die gang is en verbeter kan word, so ek wag vir enige advies wat dit kan verbeter)
Stap 1: Basis
Die basis moet 'n lae swaartepunt hê, daarom moet 'n swaar materiaal gebruik word. In my geval het ek gips en 'n antenneskyf gebruik om 'n konkawe vorm te maak, maar ander maniere kan gebruik word (bv. Joga -bal). Nadat die vorm droog is, word dit op twee skywe van dieselfde deursnee van MDF of 'n soortgelyke materiaal geplaas. 'N Spasieer word tussen die twee MDF -skywe aangebring. Tussen hierdie skywe word 'n driehoekprofiel geplaas met laers aan die rande. 'N Ander stel laers sal loodreg op die hoekpunte van die driehoek geplaas word en aan die bokant raak. Vir 'n beter presisie kan meer laers gebruik word. 'N Stok sal op een van die hoekpunte geplaas word, soos in die derde prentjie getoon. Hierdie staaf hou die harnas waarin die speler geplaas sal word.
'N Ander vaste buitestang word gebruik om die drade te ondersteun en ook as 'n verwysingspunt vir die rotasiebeweging.
Stap 2: 2 Insetbestuur
Vanuit 'n black-box oogpunt sal die toestel die volgende insette hê: 4 verbindings vir die x, y muis tellers, 2 verbindings vir die muisknoppies en 4 verbindings vir die pyltjie sleutels. Die uitset word verteenwoordig deur 4 penne: 2 vir die muis PS2 -verbinding en nog 2 vir die sleutelbord PS2 -verbinding. Vir 'n meer gedetailleerde beskrywing van die PS2-protokol, kan u die volgende webwerf besoek:
As insette vir die bord het ek JB (1 tot 0) digitale penne gekies. Met inagneming van die volgorde … 11001100…, gelees op die twee insette, kan ons onderskei tussen drie toestande van die tellers:
1. Tel op;
2. Tel af;
3. Stoor die huidige waarde;
Die Count_Type -module doen presies dit. As daar 'n verandering in die invoer is, stuur die module 'n gepaste boodskap na die 8 -bit -teller (geïmplementeer in die 8_bit_count.vhd -lêer), wat die huidige waarde optel of aftrek, tensy 'n herstelsignaal ontvang word.
Dieselfde idee word gebruik vir die opwaartse beweging van die kop, maar in plaas van 'n skyf, moet 'n glylynige profiel met dieselfde afwisselende 0 & 1-patroon gebruik word.
Stap 3: VHDL -implementering
By die aanbieding is die volgende modules aangeheg:
1. Count_Type: hierdie module hanteer die dekodering van die twee ingangdrade vanaf die skyf of die profiel, beskryf in die tweede stap;
2. 8bit_count: hierdie module interpreteer die gedekodeerde boodskap van Count_Type en verhoog of verminder die tellers;
3. 3bytepacket: hierdie module bestuur die status van die linker- en regterknoppies en formateer die data sodat dit ingevoer kan word in die 3 -greppatapakket wat in die PS2 -protokol gebruik word;
4.clk12khz: hierdie module gee 'n klok van 12khz spesifiek vir die PS2 -protokol waarop sekere komponente en prosesse werk;
5. MessageManager: hierdie module stuur die 3 -byte datapakket, interpreteer dit en gee die gepaste antwoord as antwoord op 'n boodskap van die rekenaar.
6. PS2Interface: hierdie module koppel die kommunikasieprotokol tussen die toestel en die gasheer (rekenaar) aan (hierdie module benodig 'n bietjie ontfouting en 'n deeglike herwaardering om behoorlik te kan werk).
Aanbeveel:
FPGA Cyclone IV DueProLogic Controls Raspberry Pi -kamera: 5 stappe
FPGA Cyclone IV DueProLogic Controls Raspberry Pi Camera: Ten spyte van die FPGA DueProLogic is amptelik ontwerp vir Arduino, gaan ons die FPGA en Raspberry Pi 4B oordraagbaar maak. FPGA om die hoek van
FPGA Cyclone IV DueProLogic - drukknop en LED: 5 stappe
FPGA Cyclone IV DueProLogic - drukknop en LED: In hierdie tutoriaal gaan ons die FPGA gebruik om die eksterne LED -stroombaan te beheer. Ons gaan die volgende take uitvoer (A) Gebruik die drukknoppies op FPGA Cyclone IV DuePrologic om LED te beheer. (B) Flash LED aan & periodiek af Video demo -laboratorium
FPGA Cyclone IV DueProLogic Controls Servomotor: 4 stappe
FPGA Cyclone IV DueProLogic Controls Servomotor: In hierdie tutoriaal gaan ons Verilog -kode skryf om die servomotor te beheer. Die servo SG-90 word vervaardig deur Waveshare. As u die servomotor koop, ontvang u moontlik 'n datablad wat die werkspanning, maksimum wringkrag en die voorgestelde Pu
Mojo FPGA Development Board Shield: 3 stappe
Mojo FPGA Development Board Shield: Koppel u Mojo -ontwikkelingsbord aan eksterne insette met hierdie skild. Wat is die Mojo -ontwikkelingsbord? Die Mojo -ontwikkelingsbord is 'n ontwikkelingsbord rondom die Xilinx spartan 3 FPGA. Die bord is gemaak deur Alchitry. FPGA's is baie handig
Maak 'n sensor uit 'n FPGA: 4 stappe
Maak 'n sensor uit 'n FPGA: die meeste vervaardigers het ten minste een keer in hul lewe 'n termometer probeer bou, miskien is die een wat hulle tuis het nie slim genoeg nie, of dink hulle dat hulle die volgende NEST kan bou. Tog het hulle op 'n stadium 'n mikrobeheerder met hul toestand gehad