Repozitár projektu - Firmvér Shareware pre Tlačidlový Dominator: Domination Timer firmware
Pri záujme o firmvér pre tlačidlový DOMINATOR v strojovom kóde kontaktujte na:

martinius96@gmail.com

Zoznam ľudí, ktorí obdržali firmvér plnej verzie projektu Tlačidlový DOMINATOR. Vzápätí "zabudli" zaplatiť a reagovať na e-maily:
  • Lukáš Kočka - lukasskockaa@gmail.com (Slovensko)
  • Jakub Pochrzęst - jpochrzest@gmail.com (Łódź, Poľsko)
  • Marco "Kixg" Gesell - gesell2000@googlemail.com (Hamburg, Nemecko)
  • Arduino LCD Tlačidlo Stopky Schéma I2C Paintball DOMINATOR

    Tlačidlový DOMINATOR - stopky pre Airsoft | Paintball


    Entity v projekte tlačidlový DOMINATOR:

    Tím RED - tlačidlo pre používateľský vstup
    Tím RED
    Tím GRE - tlačidlo pre používateľský vstup
    Tím GRE
    Rozhodca - tlačidlo pre používateľský vstup
    Rozhodca
    Eraser - tlačidlo pre používateľský vstup
    Eraser

    Popis projektu Tlačidlový DOMINATOR


    Tlačidlový DOMINATOR je zariadenie - stopky pre športy typu Airsoft, Paintball, ktoré vzniklo ako ekvivalent k projektu RFID Dominator. Rozdielom je implementácia tlačidlového vstupu pre hráčov namiesto RFID vstupu kartou. Stopky využívajú riadiaci mikrokontróler Arduino (Arduino Uno / Nano), prípadne samostatný čip (Atmel) ATmega328P, ktorý ovláda celú logiku systému. Súčasťou stopiek je LCD znakový displej rozmeru 16x2 (16 znakov x 2 riadky), respektíve 20x4, na ktorom sa dynamicky vyobrazujú časy jednotlivých tímov. V hre sú implementované 2 tímy - RED tím a GRE tím, ktoré proti sebe hrajú a snažia sa o obsadenie a následné udržanie tohto bodu po čo najdlhšiu dobu. 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.


    Tlačidlový DOMINATOR využíva tlačidlový vstup pre akciu obsadenia bodu členom tímu, rovnako aj pre vstup entity rozhodcu a erasera. Celkom teda 4 tlačidlá pre 4 entity systému (tím RED, tím GRE, Rozhodca, Eraser), využívajú sa spínacie tlačidlá zapojené v režime INPUT_PULLUP. Stlačením tlačidla sa privedie GND signál na vstupný digitálny vývod Arduina (Active-LOW spínací signál). Používajú sa spínacie tlačidlá, nie rozpínacie (nereagovali by na logiku systému, boli by vždy všetky softvérovo "stlačené"). Časy sú vypísané na LCD znakový displej rozmeru 16x2, prípadne 20x4, ktorý komunikuje s riadiacim mikrokontrolérom po I2C zbernici.


    Ak tím člen tímu RED obsadí bod stlačením tlačidla, spustí sa buzzer, ktorý krátkym pípnutím ohlási zmenu na bode. 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. V prípade, že bod obsadí tím GRE a člen tímu stlačí príslušné tlačidlo, opäť sa ozve buzzer, rozsvieti sa dióda tímu GRE, čas tímu RED sa pauzuje a počíta sa čas tímu GRE, ktorý bod obsadil. Ak svoje tlačidlo stlačí organizátor (rozhodca), oba časy sa zapauzujú až do momentu, kým nevykoná používateľský vstup člen niektorého z tímov. Tento typ vstupu je tak vhodný pre spustenie prestávky, ale môže taktiež ukončiť hru pre jej vyhodnotenie. Tlačidlový DOMINATOR má ešte štvrté tlačidlo pre entitu eraser, ktorá oba časy zapauzuje a vynuluje na počiatočné hodnoty ako po spustení stopiek Tlačidlový DOMINATOR. Slúži pre reštart hry, inicializáciu novej hry.


    Projekt je vhodný pre Airsoft akcie, športové areály, čí Airsoft tímy, ktoré si môžu dané zariadenie zostrojiť. Výhodou systému Tlačidlový DOMINATOR je, že ho je možné klonovať a vytvoriť si X bodov s totožnou konfiguráciou prostredníctvom strojového kódu, ktorý je možné nahrávať do neobmedzeného počtu Arduino dosiek a čipov a zaručuje totožný chod aplikácie. Hráči tak môžu v hre obsadzovať viacero bodov, pričom sa na konci hry sčíta čas, ako dlho bol ktorý bod obsadený ktorým tímom. Je možné využiť aj tlačidlá s integrovanou dútnavkou, ktorá zlepší čítateľnosť a odhalí farbu jednotlivých tlačidiel v šere, tme.

    Tlačidlový DOMINATOR je dostupný v dvoch verziách:
    • Základná verzia - reaguje okamžite na stlačenie tlačidla tímu pre obsadenie bodu
    • Rozšírená verzia - vyžaduje držanie tlačidla príslušného tímu po dobu 5 sekúnd pre obsadenie bodu
      • V prípade Rozhodcu / Erasera je reakcia systému na stlačenie okamžitá

    Výpis časov na LCD znakovom displeji 20x4:


    Výpis časov na LCD znakovom displeji 20x4 - Arduino Domination Timer - DOMINATOR

    Kompatibilný riadiaci hardvér pre tlačidlový DOMINATOR:



    Periférie pre tlačidlový DOMINATOR:



    Princíp funkčnosti projetku Tlačidlový DOMINATOR po hardvérovej stránke:


    Tlačidlá sú zapojené v režime INPUT_PULLUP, využívajú interný 20 kΩ PULLUP rezistor, ktorý drží logickú úroveň HIGH na digitálnom vstupe. Pri stlačení tlačidla sa privedie signál úrovne LOW na digitálny vstup. Na základe typu tlačidla a použitej verzie firmvéru dokáže Arduino overiť dĺžku držania tlačidla, pričom sa nezávisle na tom vykonáva aj logika počítadla. Pri splnení podmienky zmeny na bode spustí Arduino pípnutie buzzra, aplikuje digitálne stavy na LED diódy. Logika systému sa nezávisle na stavoch digitálnych vstupov 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 rozšíriť firmvér pre hru DOMINATOR na 3 alebo 4 tímy.

    RFID Dominator - hra pre 4 tímy
    Maximálny rozsah času, ktorý môže byť vypísaný v systéme: 99 hodín, 59 minút a 59 sekúnd
    Spotreba: cca 20mAh pri 5V napájaní. Vhodné napájať cez powerbanku, nabíjačku od telefónu s USB výstupom.

    Tlačidlový DOMINATOR za behu v Airsoft hre


    Airsoft Dominator RFID

    Tlačidlový DOMINATOR - ukážka funkčnosti a logiky systému



    Tabuľkové zapojenie vývodov - Tlačidlový DOMINATOR - plne odpovedá schéme zapojenia:


    Arduino Uno / Nano (ATmega328P) I2C prevodník pre LCD displej
    GND GND
    5V Vcc
    A4 (Hardware SDA) SDA
    A5 (Hardware SCL) SCL
    Arduino Uno / Nano (ATmega328P) Buzzer (hlásič)
    GND GND
    5V Vcc
    D5 IN
    Arduino Uno / Nano (ATmega328P) LED diódy
    GND GND
    D4 IN (RED) LED
    D3 IN (GREEN) LED
    Arduino Uno / Nano (ATmega328P) Tlačidlá (INPUT_PULLUP)
    GND GND
    D6 IN (GREEN)
    D7 IN (ERASER)
    D8 IN (Rozhodca)
    D9 IN (RED)

    Schéma zapojenia - Tlačidlový DOMINATOR:


    Airsoft Dominator RFID

    Testovací program (Shareware) - Tlačidlový DOMINATOR so strojovým kódom


    Zdrojový kód - tlačidlový Dominator pre Airsoft postavený na platforme Arduino
    K projektu Tlačidlový DOMINATOR je dostupná Shareware verzia zdarma vo formáte strojového kódu (.hex), ktorý je kompatibilný pre AVR ATmega328P (Arduino Uno, Nano, Pro Mini). Verzia umožňuje merať maximálne 15 sekúnd hry pre každý tím, pričom je časy možné resetovať cez Eraser tlačidlo. Cieľom verzie je overiť kompatibilitu s vašim hardvérom. V Github repozitári je dostupný strojový kód. Firmvér funguje pre najpoužívanejšie I2C adresy prevodníkov 0x27 a 0x3F, ale podporuje aj špecifické adresy pozmenené na moduloch. Strojový kód je možné nahrať do mikrokontroléru Arduino Uno cez softvér AVRDUDE - súčasť Arduino IDE, prípadne s GUI rozhraním cez XLoader - ľahšie na použitie.

  • AVRDUDE je nutné spustiť cez CMD (príkazový riadok) je nainštalované s prostredím Arduino IDE. Nachádza sa v C:/Users/User/Documents/ArduinoData/packages/arduino/tools/avrdude/6.X.X-arduino/bin
  • XLoader je Windows aplikácia (spusiteľný .exe nástroj) s jednoduchým grafickým rozhraním, ktoré umožňuje výber firmvéru - strojového kódu (.hex), cieľovej platformy a vie dynamicky ukázať COM port, na ktorom sa zariadenie nachádza.

  • Dostupný firmvér (Shareware) - Tlačidlový DOMINATOR


    Názov firmvéru (v priečinku button_dominator) Určené pre Stiahnuť
    Shareware.hex Testovací firmvér projektu Tlačidlový Dominator, umožňuje merať čas 15 sekúnd pre každý tím, pričom je možné čas vynulovať a znova merať 15 sekúnd. Určené pre LCD znakový displej rozmeru 16x2, alebo 20x4 s I2C prevodníkom. Tento firmvér môže byť otestovaný priamo v on-line simulátore Wokwi, ktorý je možné spustiť v prehliadači: https://wokwi.com/projects/333897447732413011 Stiahnuť firmvér
    V prípade najnovších čínskych klonov Arduino Nano, ktoré majú "Old Bootloader" je nutné nahrávať rýchlosťou 57600 baud/s! Pri iných verziách s novším Bootloaderom 115200 baud/s (táto rýchlosť je použitá aj v AVRDUDE príkaze pre nahratie strojového kódu).

    Nahrávanie Shareware verzie projektu Tlačidlový DOMINATOR do Arduina cez XLoader


    XLoader - Arduino - AVRDUDE - Tlačidlový DOMINATOR - testovací program

    Všeobecný videonávod pre upload firmvéru do Arduina cez XLoader