Lasertag
https://github.com/rene-dev/Lasertag
ACHTUNG: Die Laser mit > 0,4mW Leistung dürfen NICHT ohne Schutz betrieben werden!!!
Waffe
Waffe: Gehirn
Ist das Herzstück in jeder Waffe. Die Raspberry PIs sprechen per WLAN miteinander. Eine Waffe macht den Server, alle anderen joinen in das WLAN und den Server. Per i²c werden das Lasermodul in der Waffe und die Trefferzonenmodule in der Waffe und in der Weste an den Pi angeschlossen.
Bezeichnung | Verwendung | Einzelpreis | Anzahl | Gesamtpreis | Bestellmenge | Anmerkungen | Link |
---|---|---|---|---|---|---|---|
Raspberry Pi A+ | Gehirn | 20 | 1 | 20 | oder irgendein anderer Pi | muss | Reichelt |
TP-LINK TL-WN722N | WLAN Stick | 9 | 1 | 9 | oder TL-WN821N oder anderer | muss | idealo |
MB-MP16DA/EU | Samsung microSDHC EVO 16GB | 11 | 1 | 11 | ab 4GB, sollte schnell sein | muss | idealo |
SPI Touch-Display 320*240 | 5,5 | 1 | 5,5 | muss | ebay china | ||
MAR 1683.1201 | Scharf-Taster vorne, Abzug, Reload | 1,75 | 3 | 5,25 | muss | reichelt | |
WIPPE 1801.6115 | Anschalter | 1,1 | 1 | 1,1 | muss | reichelt | |
5V Step-Up Wandler | 1,3 | 1 | 1,3 | muss | ebay china | ||
18650 Halter | 0,4 | 2 | 0,8 | muss | ebay china | ||
18650 2,5 Ah LiIon Akku | 0 | 2 | 0 | muss | vorhanden | ||
LiIon MicroUSB Lader | 1 | 1 | 1 | muss | ebay china, http://anonymouse.org/cgi-bin/anon-www_de.cgi/http://www.ebay.com/sch/i.html?_odkw=lithium+charger+usb&LH_PrefLoc=2&_sop=15&_from=R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40&LH_BIN=1&_osacat=0&_from=R40&_trksid=m570.l1313&_nkw=lithium+charger+usb+10pcs&_sacat=0 |
||
SPC-2887 | Lautsprecher | 2,5 | 1 | 2,5 | muss | ebay china | |
kleiner Audio Verstärker | 1,6 | 1 | 1,6 | muss | ebay china |
Waffe: Lasermodul
Steuert den Laser, die Front-RGBW LED in Teamfarbe und die IR Sendediode. Der IR_TAKT generiert dauerhaft die 38 kHz Trägerfrequenz. Der IR_TX gibt pro Schuss ein Paar Bytes UART mit der Player ID, dem Schaden und einer checksumme aus was durch das P-FET invertiert wird.
Bezeichnung | Verwendung | Einzelpreis | Anzahl | Gesamtpreis | Bestellmenge | Anmerkungen | Link |
---|
http://www.ebay.de/itm/301511719005
1 Layer Platine | 3 | 1 | 3 | muss | |||
ATmega88PA-AU | CPU | 0,7 | 1 | 0,7 | oder *8PA-AU, *8P-AU, *8A-AU, *8-AU; *=[8,16,32] | muss | Reichelt, ebay china, http://anonymouse.org/cgi-bin/anon-www_de.cgi/http://www.ebay.com/sch/i.html?_odkw=%28ATMEGA88*%2CATMEGA168*%2CATMEGA328*%29+10+-dip+-ATMEGA88V+-ATMEGA168V+-ATMEGA88PV&LH_PrefLoc=2&_sop=15&_from=R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40|R40&LH_BIN=1&_osacat=0&_from=R40&_trksid=m570.l1313&_nkw=%28ATMEGA88*%2CATMEGA168*%2CATMEGA328*%29+10pcs+-dip+-ATMEGA88V+-ATMEGA168V+-ATMEGA88PV&_sacat=0 |
ULN 2803 D | Transistor Array zur LED Ansteuerung | 0,39 | 1 | 0,39 | muss | Reichelt | |
X7R-G0805 100N | SMD-Vielschicht-Keramikkondensator 100N, 10% | 0,05 | 2 | 0,1 | muss | Reichelt | |
X5R-G1210 100 | SMD-Vielschichtkondensator G1210-100UF 6,3V | 0,45 | 2 | 0,9 | muss | reichelt | |
IRLML 6402 | P-FET SOT23: IR-Ansteuerung | 0,15 | 3 | 0,45 | oder AO3401 | muss | Reichelt, ebay china |
VSLY5940 | IR LED 950nm +-3° | 0,7 | 1 | 0,7 | muss | Mouser | |
Osram SFH 4545 | IR LED 950nm +-5° | 0,57 | 1 | 0,75 | muss | z. B. Völkner | |
PTC194600-150 | SMD-1812-PTC-Sicherung 1,5A/3A Überspannungsschutz | 0,18 | 1 | 0,18 | muss | reichelt | |
ZD-5W 5,6V | Zener-Diode 5,0W 5,6V zur Lasersicherheit | 0,35 | 1 | 0,35 | muss | reichelt | |
TS 1117 BCW33 | 3,3V Spannungsregler | 0,3 | 1 | 0,3 | oder *1117 | muss | reichelt |
NXP PUSB2X4Y | ESD Überspannungsschutz für i2c-Bus | 0,2 | 1 | 0,2 | muss | farnell | |
TSOP4338 | IR-Empfänger-Module 38kHz AGC3 | 0,67 | 1 | 0,67 | muss | farnell | |
SMD Wiederstand 0805 | 0,05 | 15 | 0,75 | muss | reichelt | ||
JST-XH 4-Pol Buchse | 0,12 | 2 | 0,24 | muss | ebay china | ||
Stiftleiste | 0,2 | 1 | 0,2 | muss | ebay china | ||
Lasermodul Rot 635nm 0,4mW Klasse 1 mit CE-Zertifikat aus DE | 20 | 1 | 20 | muss | picotronic.de | ||
Cree MC-E RGBW | RGBW Taschenlampen-LED | 7 | 1 | 7 | muss | ebay china | |
Reflektor für RGBW LED | 0,5 | 1 | 0,5 | muss | ebay china |
Trefferzonenmodul
Empfängt die Player-ID des Schützen und leitet sie per i2c an den das Gehirn weiter. 4 RGB-LEDs zeigen was an und ein Hub-Magnet gibt haptisches Feadback.
Bezeichnung | Verwendung | Einzelpreis | Anzahl | Gesamtpreis | Bestellmenge | Anmerkungen | Link |
---|---|---|---|---|---|---|---|
1 Layer Platine | 2 | 1 | 2 | muss | |||
ATTINY 2313A-SU | Sensor und LED ↔ i2c | 0,95 | 1 | 0,95 | muss | Reichelt | |
ULN 2803 D | Transistor Array zur LED Ansteuerung | 0,39 | 1 | 0,39 | muss | Reichelt | |
X7R-G0805 100N | SMD-Vielschicht-Keramikkondensator 100N, 10% | 0,05 | 5 | 0,25 | muss | Reichelt | |
X5R-G1210 100 | SMD-Vielschichtkondensator G1210-100UF 6,3V | 0,45 | 2 | 0,9 | muss | reichelt | |
10mm RDB LED diffus, commen anode (plus) | 0,2 | 4 | 0,8 | 100 | muss | ebay china | |
TSOP4338 | IR-Empfänger-Module 38kHz AGC3 | 0,67 | 4 | 2,68 | muss | farnell | |
TS 1117 BCW33 | 3,3V Spannungsregler | 0,3 | 1 | 0,3 | muss | reichelt | |
SMD Wiederstand 0805 | 0,05 | 13 | 0,65 | muss | reichelt | ||
JST-XH 4-Pol Buchse | 0,12 | 2 | 0,24 | muss | ebay china | ||
Stiftleiste | muss | ebay china | |||||
Hubmagnet | ca. 7 | 1 | 7 | optional | ebay | ||
Lötjumper | 3 | *g* | unbedingt | reichelt |
Sonstiges
Bezeichnung | Verwendung | Einzelpreis | Anzahl | Gesamtpreis | Bestellmenge | Anmerkungen | Link |
---|---|---|---|---|---|---|---|
Nebelmaschine + Nebelfluid B | ? | 1 | ? | optional | |||
UV Lampe | ? | ? | optional |
Kostenabschätzung
Waffe
Was | min Ausbau | max Ausbau |
---|---|---|
Gehirn | 66 | 66 |
Lasermodul | 17 | 78 |
Trefferzonenmodul | 13 | 20 |
Gehäuse und alles andere | 15 | 30 |
Summe | 100 | 194 |
Weste
Was | min Ausbau | max Ausbau |
---|---|---|
4 Trefferzonenmodule | 4*13 | 4*20 |
Stoff, Kabel und alles andere | 15 | 30 |
Summe | 67 | 110 |
Software
Client, Server Kommunikation
Aufbau einer Nachricht: (Befehl, Nachricht)
- Befehl: Befehls ID z.B. 1 für ich möchte mich am Spiel anmelden.
- Nachricht: Im fall von 1 blau oder Grün für das Team zu das man möchte.
Designdokument Config
Waffe ID: uint16_t Name: string Schussmodi[] ID: uint16_t Munitionsname: string Schaden_Schild: uint16_t, Schild/Treffer Schaden_Körper: uint16_t, leben/Treffer Leben_absaugen: uint16_t, leben/s heilen: uint16_t, leben/s Schussfrequenz: uint16_t, ms Magazingröße: uint32_t Anzahl_Schüsse: uint32_t Nachladezeit: uint16_t, ms Laser_Farbe: uint8_t Laser_Schusslänge: uint16_t, ms Sound_Schuss: string Sound_Schuss_magazin_leer: string Sound_nachladen: string Sound_getroffen_werden: string Haptik Player ID: uint16_t Name: string Team: uint8_t Leben: uint16_t Leben_max: uint16_t Schild: uint16_t Schild_max: uint16_t aktuelle Waffe: uint16_t verfügbare Waffen[] Spielmodus Name: string erlaubte Waffen[] Teams_janein: boolean Team_Anzahl: uint8_t Team_maxSpieler: uint8_t Scharfschalten mit Knopf vorne: boolean Flashlight an bei scharf: teamfarbe, weiss, aus TrefferzonenLED_Schultern: teamfarbe, weiss, aus TrefferzonenLED_vorne: teamfarbe, weiss, aus TrefferzonenLED_hinten: teamfarbe, weiss, aus TrefferzonenLED_Waffe: teamfarbe, weiss, aus //i2c: //0 1 2 3 4 5 6 7 8 9 10 11 12 //key_1 key_2 key_3 led_r led_g led_b led_w laser_r laser_g laser_b tx_pid tx_dmg haptik
Notizen
- LED Hardware PWM: PB2 (OC0A), PB3 (OC1A), PB4 (OC1B), PD5 (OC0B)
- PD0 (RXD) + PD2 (INT0)
- IR Sensor: Open Drain version!
- Host: RaspberryPi oder Arietta G25