Obsah:
- Krok 1: Materiály
- Krok 2: Nastavení serveru
- Krok 3: Nastavení Raspberry Pi
- Krok 4: Sestava zbraně
- Krok 5: Hraní her
- Krok 6: Budoucí vylepšení
Video: Infračervený laserový tag s Raspberry Pi Zero: 6 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:23
Tento Instructable vás provede procesem vytvoření hry s infračerveným laserovým tagem pomocí základního serveru a nulového bodu Raspberry Pi pro každého hráče. Projekt do značné míry spoléhá na připojení Wifi ke komunikaci se serverem, díky čemuž je Pi skvělým kandidátem.
Server použitý v tomto projektu byl starý stolní počítač s Linuxem. Počítač nemusí být ničím zvláštním a pravděpodobně by mohl být dokonce spuštěn z Raspberry Pi 3. Server a každý z pi zero musí být během hraní hry připojeny ke stejné síti.
Krok 1: Materiály
Popis a některé odkazy na potřebné materiály jsou uvedeny níže. Níže uvedený seznam materiálu je pro 3 zbraně.
- Serverový počítač (1)
- Raspberry Pi Zero W (3) Adafruit
- Minimálně 4 GB SD karta (3) Amazon
- IR LED vysílač (3)
- IR přijímač (6) Amazon
- Červená LED (3)
- Modrá LED (3)
- Zelená LED (3)
- Pasivní bzučák (3) Amazon
- Tlačítko (6)
- Obrazovka LCD 16x2 s adaptérem I2C (3) Amazon
- Přenosná baterie (3) Amazon
- Mikro na běžný kabel USB (3) Amazon
- PN2222 tranzistor (3)
- Rezistor 100Ω (3)
- Rezistor 1kΩ (9)
Volitelné položky:
- Vesta (3) Amazon
- Prodloužení plochého kabelu (3) Amazon
V tomto projektu jsme nakonec odebrali IR LED vysílač ze staré sady laserových dělových štítků, které měly kolem vysílače černý kužel, aby pomohl zúžit výstřel každé zbraně. Jakýkoli obecný vysílač by však měl fungovat.
Kromě výše uvedených položek byly samotné 3D laserové zbraně vytištěny. Tento projekt by proto také vyžadoval přístup k 3D tiskárně a filamentu. Celkově za tři zbraně dosáhl součet asi 350 $.
Krok 2: Nastavení serveru
První věcí potřebnou k nastavení serveru je instalace služby Mosquitto MQTT Broker. Mosquitto je služba, která poskytuje rámec pro komunikaci mezi každým ze zařízení ve hře. To umožňuje serveru odesílat zprávy každému Pis připojenému ke službě. V terminálu spusťte následující příkazy.
sudo apt-get update
sudo apt-get upgrade sudo apt-get install mosquitto -y sudo apt-get install python3-pip -y sudo pip3 install paho-mqtt
Některá GUI pro server byla vytvořena pomocí návrháře GUI s názvem Pygubu. To lze nainstalovat spuštěním:
pip3 nainstalujte pygubu
Více informací o pygubu najdete na
Jakmile jsou nainstalovány MQTT a Pygubu, vytvořte nový adresář a zkopírujte připojené soubory. Adresář by měl obsahovat:
- ltag.py
- pregame.py
- game_statistics.py
- gvars.py
- pygubu.ui
- pygubu_limited.ui
- home.png
- self.png
- nepřátelé.png
- laser.jpg
Poznámka: Připojené obrázky použité v tomto projektu nebyly vytvořeny vývojovým týmem, a proto si nenárokují autorství.
Krok 3: Nastavení Raspberry Pi
Tento krok bude nutné opakovat na každém Raspberry Pis.
1. Nainstalujte operační systém
Nejprve začněte novou instalací Raspbian. Doporučujeme používat verzi Lite, protože to zvládne méně Pi, ale obě verze by měly fungovat dobře. Stažení naleznete na
2. Nainstalujte MQTT
Dále musíme nainstalovat službu brokera MQTT. K tomu použijeme Mosquitto. V terminálu spusťte následující příkazy.
sudo apt-get update
sudo apt-get upgrade sudo apt-get install mosquitto -y sudo apt-get install python3-pip -y sudo pip3 install paho-mqtt
Mosquitto je služba, která poskytuje rámec pro komunikaci mezi každým ze zařízení ve hře. To umožňuje serveru odesílat zprávy každému Pis připojenému ke službě.
3. Nainstalujte si I2C Tools
Následující příkaz nainstaluje knihovny, které se používají pro obrazovku LCD.
sudo apt-get install -y python3-smbus i2c-tools
sudo apt -get install rpi.gpio -y
V souboru lcddriver.py může být nutné změnit adresu i2c. Adresu lze zjistit zadáním následujícího příkazu.
i2cdetect -y 1
4. Nainstalujte a nakonfigurujte LIRC
Vytvořte nový adresář a stáhněte přiložené soubory do tohoto umístění.
Většina internetových prohlížečů nebude stahovat soubory bez přípon. Abyste tomu zabránili, byly dva soubory nahrány s dočasnými příponami. Jak „lircrc.deleteExtension“, tak „modules.deleteExtension“by ve skutečnosti neměly mít příponu a soubory by měly být po úspěšném stažení přejmenovány na „lircrc“a „moduly“.
Tento krok nainstaluje a konfiguruje závislosti pro balíček LIRC (Linux Infrared Remote Control). Další informace naleznete v návodu k nastavení LIRC na adrese:
Nejprve nainstalujte knihovnu a poté zkopírujte zahrnuté soubory do příslušných adresářů, jak je uvedeno v níže uvedených příkazech. Nakonec restartujte službu lircd.
sudo apt-get install python3-lirc -y
Z nově vytvořeného adresáře spusťte následující příkazy a přesuňte konfigurační soubory do správných umístění.
sudo mv lircd.conf hardware.conf lircrc lirc_options.conf/etc/lirc/
sudo mv moduly /etc /
Potom restartujte službu lircd spuštěním:
sudo /etc/init.d/lircd restart
Dále upravte soubor /boot/config.txt a přidejte následující řádek
dtoverlay = lirc-rpi, gpio_in_pin = 18, gpio_out_pin = 25
Restartujte pi, aby se změny projevily.
sudo restart
5. Povolte I2C a upravte CLIENT pro každého hráče
Dále povolíme rozhraní I2C. To lze provést pomocí
sudo raspi-config
a povolení I2C v nabídce „možnosti rozhraní“.
6. Upravte Player CLIENT a LTSERVER
Adresář hry by nyní měl obsahovat čtyři zbývající soubory.
- i2c_lib.py
- lcddriver.py
- ltsounds.py
- player.py
Posledním krokem při konfiguraci pí je přiřazení každého pi CLIENT čísla a přidání umístění serveru. To se provádí úpravou přiloženého souboru „player.py“pro každé pi tak, aby všechny měly jiné číslo KLIENTA. Číslo CLIENT je přiřazeno na řádku 3 player.py. První pi přiřaďte klientovi „1“, druhému „2“a třetím klientovi „3“.
Řádek LTSERVER by měl být změněn na IP adresu serveru. To lze zjistit zadáním 'ifconfig | grep "inet addr" 'na terminálu serverového počítače.
Krok 4: Sestava zbraně
Pokračujte v zapojení každé z pistolí podle schématu zapojení a schématu výše.
Každá z periferií je připojena k následujícím pinům GPIO na Pi Zero:
- Bzučák: GPIO5
- Spoušť: GPIO26
- Znovu načíst: GPIO12
- IR vysílač: GPIO25
- IR přijímače: GPIO18
- ČERVENÁ LED: GPIO17
- ZELENÁ LED: GPIO27
- MODRÁ LED: GPIO22
- I2C_SDA: GPIO2
- I2C_SCL: GPIO3
Další podrobnosti najdete ve schématu.
V případě potřeby lze laserové zbraně 3D vytisknout pomocí přiložených souborů krokových modelů. Mějte na paměti, že je třeba vytisknout dva soubory „front1STL. STL“.
Krok 5: Hraní her
Hru spustíte spuštěním souboru „ltag.py“na serveru. Jakmile to bude hotové, každý z hráčů se může připojit k serveru spuštěním příslušného souboru „player.py“.
Poznámka: Po připojení baterie může spuštění pi trvat až minutu.
Může být také užitečné přidat úlohu cron, která automaticky spustí soubor player.py, jakmile začne pi. Těžko jsme to dostali do práce a nakonec jsme přidali řádek do souboru „/etc/rc.local“na každé Pis, abychom spustili soubor „player.py“. To umožňuje spuštění hry bez nutnosti SSH do Pi pro spuštění skriptu hráče.
Jakmile je hra spuštěna s připravenými hráči, objeví se grafické uživatelské rozhraní, které umožňuje konfiguraci několika herních nastavení. Hra začíná po stisknutí tlačítka Start.
Po každé hře se zobrazí končící GUI se statistikami o předchozí hře včetně značek, globálních procent a délky hry.
Poznámka: Vzhledem k omezením v softwarových knihovnách nejsou umístění značek zpráv o přesnosti reprezentativní pro skutečné laserové značky. V aktuální verzi je obrázek zprávy o přesnosti přehrávače čistě pro estetiku v naději na budoucí verzi se skutečnou implementací umístění značky.
Krok 6: Budoucí vylepšení
Celkově byl projekt velkým úspěchem. Cestou jsme přemýšleli o několika dalších funkcích, které mohou být přidány do budoucího vydání.
- Robustnější design spouště pro 3D tištěné zbraně
- Rozbalovací nabídka Ukončení GUI pro zobrazení statistik z minulých her
- Více infračervených přijímačů, které lze připojit k vestám hráčů
- Další herní režimy, které lze zvolit v GUI Pregame
- Přesnější algoritmus umístění značky na stránce statistik hráčů
Doporučuje:
Instalace De La Carte TagTagTag Pour Nabaztag: tag / Instalace TagTagTag Board na váš Nabaztag: tag: 23 kroků
Instalace De La Carte TagTagTag Pour Nabaztag: tag / Instalace TagTagTag Board na váš Nabaztag: tag: (anglická verze je uvedena níže) La carte TagTagTag a été créée en 2018 lors de Maker Faire Paris pour faire renaitre les Nabaztag et les Nabaztag: tag . Všechny možnosti financování z účasti na Ulule v červenci 2019, si vous souhaitez
Laserový infračervený teploměr Arduino: 7 kroků (s obrázky)
Laserový infračervený teploměr Arduino: V tomto projektu vám ukážu, jak vytvořit digitální laserový infračervený teploměr s vlastním 3D tištěným pouzdrem
Laserový skener Raspberry Pi: 9 kroků (s obrázky)
Laserový skener Raspberry Pi: Laserový skener je zařízení se zabudovaným systémem Raspberry Pi, které je schopné digitalizovat objekty do souborů sítě .obj pro reprodukci pomocí 3D tisku. Zařízení toho dosahuje využitím liniového laseru a integrovaného PiCam k provádění počítačového vidění. Laser
Sestavte infračervený přijímač Kodi / OSMC a resetujte klobouk pro Raspberry Pi: 5 kroků (s obrázky)
Sestavte infračervený přijímač Kodi / OSMC a resetujte klobouk pro Raspberry Pi: Vybudujte infračervený přijímač Kodi / OSMC a resetujte klobouk pro Raspberry Pi 3 Z celé místnosti bych chtěl: Ovládat Kodi / OSMC běžící na Raspberry Pi pomocí dálkového ovladače Podívejte se, jestli je Raspberry Pi zapnuté Také bych chtěl, aby moje rodina
Laserový zabezpečovací systém Raspberry Pi: 13 kroků (s obrázky)
Laserový zabezpečovací systém Raspberry Pi: Děkujeme, že jste si zkontrolovali moje instrukce. Na konci tohoto pokynu zkonstruujete laserový tripwire systém Raspberry Pi s funkcí upozornění na e -mail, která je zobrazena ve videu. K dokončení tohoto pokynu je třeba, abyste se seznámili