Scannergame: Unterschied zwischen den Versionen

Aus LaborWiki
Wechseln zu: Navigation, Suche
K (protokol)
Zeile 231: Zeile 231:
|  
|  
|-
|-
| Server
| Player
| MovetoGPSCoordtoRespawn
|
|-


| Server
| Player
| MovetoGPSCoord
|
|-


| Server
| Server
Zeile 276: Zeile 289:
| IhasGPSCoord
| IhasGPSCoord
| Koordinaten
| Koordinaten
|-
| Player
| Server
| IPickedUpItemID
| ItemID
|-
| Server
| Player
| YouGainedBonus
| SpecialBonus (reduced WeaponSound, reduced LED brigtnes, more health, stronger Weapon, instagib?, ...)
|-
|-



Version vom 28. August 2011, 20:58 Uhr

     
Scannergame

Release status: experimental [box doku]

LaborLogo2.png
Description try to capture your friends with electronic hardware support
Author(s)  siro, Pl4nkton, Soeren (siro)
Last Version  0.1




Einleitung

Diese Seite beschäftigt sich mit dem Aufbau der Hardware, die für ein elektronisches "Fangen-Spiel" benötigt wird. Dabei wird mit Barcodelesern-ähnlichen Handgeräten nach Mitspielern gesucht. Ein allgemein gebräuchlicher Begriff ist Wikipedia: Lasergame/Laserforce, jedoch hat dieses Projekt nichts mit Lasern zu tun. Wir verwenden keine Laser, nur LEDs. Da es sich bei den Handgeräten um Scanner handelt, die aktiv keine Signale aussenden (, um Mitspieler zu fangen/markieren), handelt es sich hierbei nicht um Schusswaffen nach Waffengesetz §1 Abs 2. , noch um Markierungsgeräte !

Ideen

Facts:

  • Jeder Mitspieler trägt eine Weste mit $n Infrarot-LEDs und einem Controller (Atmega?).
  • Dieser steht in Verbindung mit (einem?) Server via Funk.
  • Der Server kennt alle Clients und weißt jedem eine $ID zu.
  • Mann muss auf dem Spielfeld bleiben (in Reichweite des Servers)
  • Jede LED sendet Packete, bestehend aus 9 bit
  • Jeder Spieler hat einen Barcode-ähnlichen Handscanner. Aufbau ?
  • Wird ein anderer Spieler "gescannt" erhält dieser über Funk eine Nachricht.
  • Verschiedene Scanner ? Hohe Reichweite, mittlere, geringe ?
  • Items ?
  • Positionsbestimmung der Spieler?

Konzept

Jeder Mitspieler trägt eine Weste, an der sich Infrarot-LEDs befinden, ein Handscanner und eine Mikrokontroller mit Funkschnittstelle. Jede LED sendet andere Daten aus, 9 bit mit Hilfe der USART.
Der Handscanner lassen sich die Daten empfangen, decodieren und auswerten.
Auf dem Spielfeld können beliebige Objekte platziert werden, insofern diese auch Daten aussenden. Hier kommt das RLCTF ins Spiel.
Der Empfänger braucht mindestens 10 "Bursts", die maximale Baudrate beträgt demnach 38kHz/ 10 = 3800 baud

Wiimote als Empfänger ? -- Kann bis zu 4 Infrarot-Quellen gleichzeitig orten.

Test-Equipment

  • IR-Transmitter with selectable Carrier-Frequencies.
Gesendet werden 9bit über die USART, mit einem kleinen Trick. Der TX pin ist über Widerstand und Kondensator angeschlossen an den INT0.
Immer wenn der Pegel wechselt wird ein Interrupt getriggert, welcher den Timer setzt PWM auf dem OC1A pin auszugeben.
Mit einem 36 Khz Träger sind so 4000 bit/s möglich.
  • IR-Receiver with bar graph LEDs.

Hardware

Scannergame/target

Scannergame/scanner

Scannergame/haupt

Scannergame/server

Scannergame/ir_test_transmitter

Scannergame/ir_test_receiver

Scannergame/target_test


MultiCell Li-Ion Managment
Load Balancer


Funkmodule
Zur Auswahl stehen: Funkmodule


Display Prinzipiell ist eigentlich jedes Grafikdisplay geeignet - man könnte theoretisch auch ein altes Handy schlachten und das dann nehmen. Viele Displays sind zudem nur eine sehr begrenzte Zeit verfügbar bis sie durch neuere/andere Modelle ersetzt werden...

Die Software zur Darstellung sollte daher auf vielerlei Auflösungen möglichst einfach anpassbar sein, sodaß man einfach nur die Display library tauschen und ggf. einige Makros ändern muss.

Name/Hersteller Preis Eckdaten Pro/Cons
Palmtech, PC0151212 ~10 EUR RGB (16bit), 128x128, Controller: ST7637 * Klein / Leicht / Günstig
Sparkfun LCDs http://www.sparkfun.com/categories/147 RGB Mit connector !!!

Energieverbrauch

  • Li-Ion: Belastung 0,2C. Bei 4Ah also maximaler Entladestrom 0,8A.
  • Bei Maximalbelastung 45VAh -> Akku mit 50VAh notwendig oder Load-Balancing.
  • Wahrscheinliche gemittelte Leistung:
Name/Hersteller Anzahl Leistung max Leitung idle Duty cyle Gesamt
STM32F105 1
RFM12BP 1
GPS-Module 1
MicroSD-Card 1
RGB-LED 8*3
IR-LED 8*3

Spannungsversorgung

Welches Teil braucht welche Spannung ?

Name/Hersteller Betriebs-Spannung von Betriebs-Spannung bis gewählte Betriebs-Spannung
STM32F105 2.0 3.6 3.3
RFM12BP 3.3 / 12 3.3 & 12
microSD 3.3 3.3 3.3
GPS 1.8 1.8 1.8
PCA9922 3.3 5.5 3.3
74AHC573 2.0 5.5 3.3

Protokoll

From To What Value ???
Server All TimeStamp (Milli-)Sekunden seit Serverstart
Server All GameStart Spielmodus (Capture the Flag, Free for all, ...)
Server All GameStop Winner (Player n, Team n)
Server Player YouHaveSpawnedandYouareAlivenow
Server Player MovetoGPSCoordtoRespawn
Server Player MovetoGPSCoord
Server Player YouAreDeadandWillSpawnin Spawntime (Sekunden bis zum Spawn)
Server Player YouAreDeadfromNow Deathtime (Sekunden bis zum Spawn ?)
Server Player YouhasbeenhitatX Hit (Attacker ID, Zeitpunkt, berechneter Schaden)
Server Player Ping (/Pong) Latenz (in Millisekunden)
Player Server Pong (/Ping) Latenz (in Millisekunden)
Player Server IhitPlayerIDPosX Hit (Victim ID, Zeitpunkt, WaffenID)
Player Server IhasGPSCoord Koordinaten
Player Server IPickedUpItemID ItemID
Server Player YouGainedBonus SpecialBonus (reduced WeaponSound, reduced LED brigtnes, more health, stronger Weapon, instagib?, ...)

Links

Lasergames in Deutschland

Wiiremote

Wii IR camera as standalone sensor