Ponúkam mnou navrhnutý a naprogramovaný softvér vo forme strojového kódu pre AVR platformu Arduino UNO / Nano (ATmega328P) pre projekt RFID Dominator.
Popis projektu:DOMINATOR (Domination Timer) je zariadenie (stopky) navrhnuté pre 2 tímy, ktoré proti sebe hrajú. Stopky sú vhodné pre Airsoft / Paintball herný mód DOMINATION, resp. Capture Hill. Pozostávajú z mikrokontroléra ATmega328P (AVR), ktorý môže byť súčasťou vývojového kitu Arduino (Uno / Nano / Pro Mini), alebo je použitý samostatne (standalone). Pre vizualizáciu časov sa využíva LCD znakový displej (rozmer 16x2 alebo 20x4), ktorý je pripojený k mikrokontroléru a komunikuje s ním.
Časy sú vypísané v dvoch riadkoch pod sebou a sú dynamicky aktualizované v prípade, že je na bode aktívny tím (bod obsadený niektorým tímom). Stopky sú vybavené indikačnými LED diódami vo formách jednotlivých tímov, ktoré signalizujú aktívny tím na bode a hlásičom (piezomeničom), ktorý oznamuje zmenu na bode po priložení RFID karty. Do hry sú implementované tímy - RED tím a GRE tím, ktoré proti sebe hrajú a snažia sa o obsadenie bodu a jeho následné udržanie po čo najdlhší čas. Na začiatku hry sú na displeji vypísané časy 00 hodín, 00 minút, 00 sekúnd pre RED tím, GRE tím.
Každý z členov tímu je vybavený RFID čipom, ktorý je integrovaný v náramku (alebo v karte / kľúčenke). RFID čip vysiela svoj jedinečný identifikátor - UID (unique ID), ktorý je načítaný RFID čítačkou a overený v logike systému ku ktorej entite (tímu) patrí. Jednotlivé náramky môžu byť farebne odlíšené (červené, zelené podľa tímu a funkcie entity), čo umožňuje ich rýchlejšiu distribúciu hráčom, ale aj ich archiváciu a uskladnenie podľa farieb.
Tím RED obsadí bod v momente, keď člen tímu RED priloží svoju kartu k RFID čítačke. Táto akcia spustí buzzer, ktorý ohlási zmenu na bode krátkym pípnutím. Následne sa rozsvieti LED dióda tímu RED na tomto stanovišti a na displeji sa začne pripočítavať čas pre tento tím do momentu priloženia karty člena tímu GRE, Rozhodcu, alebo Erasera. V prípade, že bod obsadí hráč tímu GRE a priloží kartu k RFID čítačke, túto zmenu ohlási buzzer krátkym pípnutím, rozsvieti sa LED dióda tímu GRE (LED dióda tímu RED zhasne), aktuálny čas tímu RED sa zastaví a počíta sa čas tímu GRE, ktorý bod obsadil.Ak svoju RFID kartu priloží Rozhodca, bežiaci čas sa zastaví na aktuálnej hodnote. Bod sa stáva neutrálnym, LED dióda aktívneho tímu zhasne. Zastavenie času trvá do momentu, kým priloží svoju kartu člen tímu RED, alebo tímu GRE. Tento typ karty je tak vhodný pre dočasné zastavenie prebiehajúcej hry, kontrolu zásahu hráča, či zranenia. Zároveň môže byť karta použitá pri ukončení kola hry, pre vyhodnotenie kola, respawn tímov pred pokračovaním. Ak kartu priloží Eraser, oba časy sa zastavia a zároveň sa vynulujú na počiatočnú hodnotu 00 hodín, 00 minút, 00 sekúnd, ktorá sa vypíše na displej. Karta Eraser slúži pre reštart hry, inicializáciu novej hry bez nutnosti power-on cyklu. RFID čítačka reaguje na priloženie RFID karty okamžite vrátane celej logiky projektu Dominator. Projekt je vhodný pre Airsoft akcie, športové areály, čí Airsoft tímy, ktoré si môžu zariadenie Dominator zostrojiť s vlastným hardvérom. Firmvér je univerzálny, ktorý vychádza zo schémy zapojenia, možno využiť aj dostupný DPS návrh pre výrobu dosky plošných spojov. Výhodou projektu RFID DOMINATOR je, že licencia používania oprávňuje používateľa klonovať a vytvoriť si X bodov s totožnou konfiguráciou prostredníctvom strojového kódu.
Strojový kód (.hex) je formát skompilovaného firmvéru pre projekt RFID Dominator pre dodané UID RFID kariet, ktoré sú pred kompiláciou do kódu vložené. Do hry je tak možné umiestniť ľubovoľný počet nezávisle na sebe fungujúcich RFID DOMINATOR bodov, ktoré reagujú na totožné RFID karty podľa jednotnej konfigurácie. Systém RFID Dominator je vyladený, je ho možné okamžite nasadiť do hry.
Princíp funkčnosti projetku RFID DOMINATOR po hardvérovej stránke:RFID čítačka NXP RC522 komunikuje s mikrokontrolérom (Arduino / samostatný čip ATmega328P) po SPI zbernici s hodinovým signálom (SCLK) 4 MHz. Čítačka NXP RC522 reaguje na RFID čip vo vzdialenosti približne 3 cm od antény, pričom má konfigurovateľný zisk antény v rozsahu 18 až 48 dB (48 dB je použité vo finálnej aplikácii pre DOMINATOR). Načítava UID (identifikátor) RFID čipov v dosahu, preposiela tento identifikátor Arduinu. Arduino načítanú adresu karty porovná v multipodmienke, spustí pípnutie buzzra, aplikuje digitálne stavy na LED diódy.
Logika systému sa nezávisle na priložení karty vykonáva každých 1000 ms - 1 Hz rutina (časované cez funkciu millis(), t.j. cez Timer 0). V tejto rutine sa vykonáva kontrola aktívneho tímu s následným pripočítaním času. Čas je dynamicky vykreslený na LCD znakovom displeji 20x4, alebo 16x2. Displej komunikuje s Arduinom po I2C zbernici s hodinovým signálom (SCL) 100 kHz - Standard Speed. Prepis displeja tak trvá do cca 15 ms, pričom sa prepisuje iba riadok daného tímu, ktorý je na bode aktívny. Pri vážnom záujme možno vytvoriť firmvér v strojovom kóde pre ATmega328P, alebo iný mikrokontróler na mieru aj pre iné typy RFID čítačiek: RDM6300, PN532, Wiegand W26, zvýšenie hodinového signálu I2C zbernice až na 400 kHz (Fast Speed). Možné rozšírenie firmvéru pre hru DOMINATOR na 3 alebo 4 tímy (na základe dohody).
Maximálny rozsah času, ktorý môže byť vypísaný na displej: 99 hodín, 59 minút a 59 sekúnd
Spotreba: cca 110mAh pri 5V napájaní. Vhodné napájať cez powerbanku, nabíjačku od telefónu s USB výstupom.
Určenie projektu RFID DOMINATOR:Projekt RFID DOMINATOR je z hľadiska jeho univerzálnosti vhodný pre implementáciu do Airsoft akcií a s možnosťou klonovania firmvéru je tak možné do herného poľa osadiť X DOMINATOR bodov s identickým firmvérom, o ktoré môžu hráči hrať s rovnakými RFID kartami. DOMINATOR sa hodí aj pre tímy, športové areály a ihriská ktoré tak môžu týmto zariadením rozšíriť ponúkané služby a herné módy pre rôzny počet hráčov. Ak sú RFID karty, náramky, respektíve kľúčenky farebne odlíšené, je veľmi ľahké a univerzálne ich distribuovať hráčom na základe ich tímu.
Jednoduchá je aj ich archivácia. Použitie kariet, náramkov, respektíve kľúčeniek je ľahké a zvládnu to všetky vekové kategórie v Airsoft hrách. Samotný RFID čip je chránený v plastovom puzdre, nevadí mu blato, špina, voda, mráz, je plne bezúdržbový. Nemá batériu, čip aktivuje RFID čítačka, ktorá ho vysielaným elektromagnetickým poľom nabije a umožní mu vyslať UID - identifikátor ak je v dosahu RFID čítačky. DOMINATOR je vhodný pre herné módy s rovnakým počtom hráčov v oboch tímoch, napr. DOMINATION, Capture Point (Points v prípade viac klonovaných DOMINATOR bodov).
Cena: 30€ za strojový kód, maximálne 24x UID, pričom 10x RED, 10x GRE, 2x REFEREE, 2x ERASER. Zdrojový kód neposkytujem, strojový kód nie je možné upravovať. Pri dohode možno rozšíriť na viac UID.
Projekt je možné vopred vyskúšať v testovacej (Shareware verzii). Verzia umožňuje overiť kompatibilitu hardvéru pre plnú verziu projektu RFID DOMINATOR. Testovacia verzia umožňuje využiť 4 ľubovoľné RFID karty, každú z nich je možné priradiť jednej entite (1x RED, 1x GRE, 1x REFEREE, 1x ERASER). Obmedzenie merania času je na 15 sekúnd pre každý tím.
Doska plošných spojov - DPSDPS návrh pre projekt RFID DOMINATOR (1.0) je dostupný vo formáte .lppz (LibrePCB). Archív je možné nahrať na webstránky nemeckej firmy AISLER, ktorá vie plošný spoj vyrobiť strojovo vrátane vŕtania, prekovenia otvorov. Štandardná cena výroby je 23€ za tri kusy, čo je minimálny odber (7€/kus). Cena je aj s poštovým a nízkou prioritou s doručením do 3 týždňov od objednania. Na DPS sa odporúča využiť pin headre, nakoľko je tak možné v prípade poruchy vymeniť hardvér bez nutnosti spájkovania. Dištančné stĺpiky je možné nahradiť aj závitovými tyčami. Krabička pre projekt nie je navrhnutá. DPS je možné osadiť do krabičky, alebo na stenu skrz 4 montážne otvory v rohoch DPS. Výrobu je možné realizovať aj u čínskych výrobcov - JLCPCB / PCBWAY...
Projekt má vlastnú webstránku, kde sú vždy aktuálne informácie k projektu. Na webstránke je dostupný aj testovací firmvér, schéma zapojenia mikrokontroléra a periférii:
https://martinius96.github.io/Airsoft-DOMINATOR-RFID/ K dispozícii aj totožné DOMINATOR projekty s manuálnym - tlačidlovým vstupom namiesto RFID aj s možnosťou konfigurácie dĺžky hry / dĺžky stlačenia pre obsadenie bodu.
Súpis kompatibilného hardvéru:Arduino Uno / Nano / samostatný čip ATmega328P
RFID čítačka RC522 (13,56 MHz)
RFID čipy, karty, náramky štandardu ISO/IEC 14443-A
I2C prevodník pre displej
2x LED diódy / možno zameniť za relé pre zapojenie výkonnejších svetiel
Podporovaný firmvér RFID čítačky RC522:0x12 = counterfeit chip - (neoriginálny NXP čip, náhrada)
0x91 = Version 1.0 - (originálny NXP čip)
0x92 = Version 2.0 - (originálny NXP čip)