Retro herná konzola
Zo stránky SensorWiki
Autori: | Lukáš Hurtiš | |
Študijný odbor: | Aplikovaná informatika | 3. Bc. (2018) |
Opis projektu
Čo
Herná konzola pre dvoch hráčov, využívajúca emuláciu rôznych starších videoherných systémov (napr. Nintendo, Sega, Atari, Playstation)
Prečo?
Medzi moje najväčšie záľuby patrí hranie videohier. Napriek tomu,že neustále sledujem vývoj a pokrok herných konzol a hier, rozhodol som sa spraviť Retro konzolu, kde si môžeme pripomenúť začiatky videohier a hlavne vidieť veľký pokrok, ktorý nastal za posledné roky.
Analýza
- Vyhotovenie návrhu celého produktu vo forme 3D modelu za pomoci modelovacieho programu Catia
- Zakúpenie setu ovládacích prvkov (joystick-y, button-y) pre dvoch hráčov
- Zakúpenie Raspberry Pi 2 model B
- Zakúpenie enkodéru I-PAC2
- Zakúpenie 12V ventilátora určeného na chladenie
- Zakúpenie ostatných elektrických súčiastok (vodiče, prípojky, vypínač...)
- Zhotovenie hlavnej konštrukcie z 8mm preglejky pomocou laserového vyrezávača
- Inštalácia a konfigurácia operačného systému Raspberry Pi
- Osadenie ovládacích prvkov do vrchnej dosky boxu
- Zapojenie všetkých elektrických súčiastok
Popis riešenia
3D návrh
Návrh bol vytvorený v programe Catia
RENDER
Technický výkres
Kvôli problémom vzniknutým v pokročilom štádiu vyhotovavania finálneho produktu museli byť zmenené niektoré parametre.
os X = 570mm (pôvodne 600)
os Z = 90mm (pôvodne 88)
Set ovládacích prvkov
Sada obsahuje:
- 6 ovládacích tlačidiel pre každého hráča
- 3 systémové tlačidlá
- 2 joystick-y
Každý Button má svoj mikrospínač, ktorý obsahuje dva piny:
- Trigger ktorý vysiela signál, keď je tlačidlo stlačené.
- Uzemnenie (GND).
Raspberry Pi
Pre projekt som zvolil Raspberry pi 2 mobel B, nakoľko jeho výkon je dostačujúci na emulovanie všetkých použitých systémov.
Špecifikácie:
- ARM procesor 0.9GHZ , 4 jadrá
- RAM 1GB
- výstupy: 4x USB 2.0 , HDMI , LAN , Audio Jack 3,5mm
- operačný systém sa bootuje z microSD
- napájanie 5V microUSB
I-PAC 2
Jedná sa o klávesnicový enkodér, ktorý emuluje stláčanie konkrétnych kláves po prijatí trigger signálu z určitého tlačidla hráča. Táto verzia je priamo určená pre 2 hráčov.
Všetky emulované klávesy sa dajú upravovat a meniť podľa potreby pomocou dodávaného utility programu WinIPAC V2.
Má nízku latenciu, vďaka čomu je pre hry výborným riešením.
Zapojenie:
- Doska enkodéru je rozdelená na 2 časti. (Hráč 1 a Hráč 2)
- Na každom tlačidle spojíme samostatným vodičom trigger pin mikrospínača s príslušným slotom na doske enkodéru.
- Uzemnenie môžeme spojiť spoločným vodičom pre všetky tlačidlá (avšak oddelene pre samostatných hráčov) a slotom GND na doske enkodéru.
- Samotný enkodér zapojíme pomocou USB do raspberry pi.
Chladenie
Vodiče a terminály
- 18 AWG
- materiál: meď
- izolácia: PVC
Terminály na pripojenie vodičov ku konektorom tlačidiel:
Zhotovenie Hlavnej konštrukcie
Návrh boxu
Návrh bol vytvorený OpenSource online generátorom Boxes.py.
Pri odskúšaní jednotlivých nastavení generátora a vyrezania skúšobnej mini-verzie boxu som zistil veľkosti prípadných nepresností laseru a aj konverzie medzi súbormi.
Po finálnom zadaní všetkých nastavaní dostávam svg súbor celého boxu.
V programe InkScape boli následne pridané nápisy a zadané hodnoty rezania/gravírovania
Finálna verzia:
Vyhotovenie
Materiál:
- Preglejka - hrúbka 4mm (Vyrezané 2x a následne zlepené = 8mm)
Rezanie:
Zostavená celá konštrukcia:
Inštalácia a konfigurácia operačného systému Raspberry Pi
Algoritmus a program
Uveďte stručný popis algoritmu, v akom jazyku a verzii vývojového prostredia ste ho vytvorili. Je vhodné nakresliť aspoň hrubú štruktúru programu napríklad vo forme vývojového diagramu. Rozsiahly program pre lepšiu prehľadnosť rozdeľte do viacerých súborov.
Vyberte podstatné časti zdrojového kódu, použite na to prostredie source:
/* A nezabudnite zdroják hojne komentovať */
int main(void) {
printf("Hello, World!\n");
return(0);
}
Nezabudnite však nahrať aj kompletné zdrojové kódy vášho programu!
Zdrojový kód: serial.h a main.c
Výsledok
Nezabudnite zdokumentovať výsledok vašej práce. Určite sem patria fotografie, video a zhodnotenie ako ste spokojní s výsledkom,
Kľúčové slová 'Category', ktoré sú na konci stránky nemeňte.