Dnešný článok sa bude bližšie zaoberať systémom DOMINATOR pre športy typu Airsoft, Paintball, ktorý bol vytvorený ako ekvivalent k RFID DOMINATOR-u, ktorý som realizoval v minulosti. DOMINATOR využíva tlačidlá pre používateľský vstup namiesto RFID vstupu.
Funkcie tlačidiel:
- Tím (RED) - Po stlačení tlačidla sa rozsvieti červená LED dióda (dióda zeleného tímu zhasne), začne sa počítať čas červeného tímu na displeji
- Tím (GREEN) - Po stlačení tlačidla sa rozsvieti zelená LED dióda (dióda červeného tímu zhasne), začne sa počítať čas zeleného tímu na displeji
- Rozhodca - Po stlačení tlačidla sa čas na displeji zastaví
- Eraser - Po stlačení tlačidla sa čas na displeji zastaví a časy sa vyresetujú na 00:00:00
Jedlivé tlačidla sú pripojené interným rezistorom hodnoty 20kΩ k 5V Arduina, teda sa spínajú proti zemi. Zapojenie sa nazýva INPUT_PULLUP, jedná sa teda o Active low signál, ktorý Arduino overuje (reprezentuje stlačenie). Systémová logika pre DOMINATOR je navrhnutá na funkcii millis(), ktorá vracia počet milisekúnd od štartu procesora. Vďaka tomu je možné systém efektívne riadiť na základe časovo orientovaných akcií s možnosťou obsluhovať paralélne rôzne časové akcie - eventy krátkymi programovými cyklami - ktoré sú navrhnuté dostatočne efektívne nato, aby sa neobmedzovali.
Logika stopiek systému sa vykonáva každých 1000 milisekúnd. Logika obsahuje kontrolu aktívneho tímu na bode, pripočítavanie času a jeho následné vykreslenie na LCD znakový displej. Maximálny časový rozsah systému, ktorý jemožné na displej vykresliť je 99 hodín, 59 minút a 59 sekúnd.
DOMINATOR je vhodný aj pre použitie na niekoľko-denných akciách, na štýl Fort Benning, ktorý trvá 2 dni. Rovnako tak i pre športové areály, ktoré môžu takýto herný mód ponúknuť do svojho portfólia z hľadiska jeho univerzálnosti a možností klonovania na viacero DOMINATOR bodov, ktoré je možné v hernom poli rozmiestniť.
Okrem logiky systému je možné spúšťať aj iné časovo orientované eventy, napríklad overovať dĺžku stlačenia tlačidla. Každý tím môže obsadzovať bod držaním tlačidla po určitú dobu, napríklad 10 sekúnd. Druhý tím pri obsadení bodu musí držať tlačidlo 20 sekúnd, nakoľko sa za prvých 10 sekúnd dostane bod do neutrálneho stavu a následným držaním tlačidla ďalších 10 sekúnd už bod obsadí tento tím. V štandardnej verzii Tlačidlového Dominatora je reakcia na stlačenie tlačidla okamžitá.
Video na ukážku funkčnosti:
Schéma zapojenia pre Airsoft DOMINATOR s tlačidlovým vstupom:
K projektu existuje Shareware verzia, ktorú je možné využívať zdarma. Verzia slúži najmä na overenie kompatibility hardvéru s plnou verziou projektu. Shareware verzia je limitovaná na meranie času pre každý z tímov maximálne 15 sekúnd, potom sa daný čas zastaví. Druhým obmedzením je 30 sekundová inicializacia celého systému po pripojení napájania.
Shareware i plná verzia je dostupná vo forme strojového kódu, t.j. .hex programu, ktorý je možné cez nástroj AVRDUDE, alebo XLoader nahrať do mikrokontroléru Arduino Uno, alebo Nano. Pri záujme o plnú verziu projektu - martinius96@gmail.com. Strojový kód plne korešponduje so schémou zapojenia, pričom Shareware verzia nemá implementovaný buzzer. Export programu je bez Bootloadera a exportovaný pre Arduino Uno, respektíve AVR AtMega328P-
Rozšírené info k projektu Tlačidlový DOMINATOR s odkazom na strojové kódy zdarma:
https://martinius96.github.io/Airsoft-DOMINATOR-RFID/button-dominator.html
K projektu existuje aj rozšírená verzia, ktorá umožňuje definovať dĺžku stlačenia tlačidla (štandardne 5 sekúnd), ktorá je potrebná pre obsadenie bodu členom tímu.