[ Príspevkov: 3 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.02.14
Prihlásený: 20.04.26
Príspevky: 404
Témy: 152 | 152
Bydlisko: Poprad-okolie

Dnes by som vám rád predstavil už takmer prachom zapadnutý projekt, ktorý som kedysi vytváral pre airsoftový tím. Požiadavka bola naprogramovať DOMINATOR cez Arduino, ktorý by bol univerzálny a spĺňal náležitosti, ktoré by mal mať správny DOMINATOR a trošku ho zmenil, čo sa týka spôsobu ovládania.

Čo ten DOMINATOR vlastne je?
Jedná sa o zariadenie, ktoré sa používa pri hraní herného módu King of the Hill, teda kráľa kopca (bodu). Zariadenie by malo disponovať displejom s dvomi časmi pre oba herné tímy. Tím, ktorý sa k DOMINATORU dostane stlačí tlačidlo a čas sa začne pripočítavať jeho tímu. (Oba časy sú počiatočne nastavené na 00 hodín, 00 minút a 00 sekúnd). Čas sa pripočítava do momentu, kým bod neobsadí iný tím a tlačidlom nezmení pripočítavanie času na svoju stranu. Nakoľko som chcel projekt odlíšiť, využil som RFID čítačku, ktorá dokáže čítať karty a kľúčenky na 13.56MHz (existuje aj ekvivalent na 125kHz) a týmto spôsobom môžeme nahradiť mechanické tlačidlá.
DOMINATOR cez Arduino pre Airsoft / Paintball / Nerf Wars

Ako teda systém funguje s RFID čítačkou oproti mechanickým tlačidlám?
RFID čítačka dokáže čítať karty a kľúčenky na spomínanej frekvencii vo vzdialenosti do 3-5cm. Vyžaduje sa teda fyzická prítomnosť niektorého člena tímu. Každý člen tímu má kartu, alebo kľúčenku, ktorej kód je vopred zaznamenaný a uložený do programu. Každý kód je priradený k tímu. Načítanie karty signalizuje aj hlásič - buzzer, ktorý oznamuje zmenu. Čas sa začne pripočítavať tímu, ktorý kartu, alebo kľúčenku priložil. Okrem dvoch tímov som využil aj špeciálne kľúčenky pre organizátora, ktorý dokáže po priložení karty zapauzovať čas v prípade sťažnosti hráča na zásah, zranenie, alebo kvôli inej situácii v hre, ktorá by mohla inému tímu priniesť výhodu. Súčasťou systému je ešte jeden používateľ - tzv. eraser, ktorý dokáže časy vynulovať a zapauzovať zároveň. Používa sa napríklad pri neplatnom odštartovaní hry, neplatnom priložení kľúčenky (napríklad vyradený hráč). Systém nie je limitovaný počtom členov tímu, záleží najmä od pamäťovej náročnosti pre beh programu, nakoľko celý systém pracuje s interným timerom - millisom.
DOMINATOR cez Arduino pre Airsoft / Paintball / Nerf Wars
Aký hardvér bol využitý?
Riadiaci mikrokontróler - Arduino Nano pre prototyp/Atmega328P pre hotový projekt
    2x led diódy - indikácia, ktorému tímu sa pripočítava čas (modrá/červená)
    20x4 LCD displej - displej s real-time časmi tímov
    2x relé - pre pripojenie svetiel na 230V (SSR/elmg.) - napríklad v noci - funkčnosť na základe ledky
    1x hlásič
    1x RFID čítačka RC522 na 13.56MHz
    12x karty/kľúčenky (5x pre tímy, 1x organizátor, 1x eraser)
Princíp programu:
Program pracuje s millisom, čo je procesorový čas od zapnutia. V pravidelných intervaloch, raz za 0.01 sekundy sa vykoná logika systému, ktorá overuje, či sa už niektorému tímu má pripočítavať čas, ak áno, čas sa počíta a vyobrazuje, teda 100x sa vypíše na LCD displej za sekundu, teda 100x refresh/sekunda. Pri využití intervalu 0.001 sekundy bol systém nepresný a komunikácia s rýchlosťou 1000x refresh/sekunda po I2C zbernici na displej nefungovala korektne, nakoľko nejaký čas zaberalo aj samotné čítanie kariet. Knižnica RFID pre čítačku RC522 dokáže prerušením indikovať záznam karty, čo aktivuje hlásič. Na základe výsledku overenia cez jednoduchú if podmienku s adresami kariet (fyzickými) aktivujeme premennú, ktorá pracuje s časom a má v sebe logiku - desatiny, sekundy, minúty a hodiny.

V systéme sú 2 podprogramy, ktoré sú tvorené bool premennými. Každá bool premenná je pre jeden tím. Ak sa nastaví na true, začne sa vykonávať logika pre ten daný tím. Ak sa priloží kľúčenka rovnakého tímu, nič sa nezmení. Ak sa priloží kľúčenka iného tímu, bool pre tím, ktorému sa počítač čas sa zmení na false a pre tím, ktorému sa začne počítať čas na true. Ak kľúčenku priloží organizátor, obe bool premenné sa nastavia na false. Hodnoty - sekundy, minúty a hodiny sú uložené v dynamických globálnych premenných, s ktorými sa vo vnútrie true boolových hodnôt pracuje. Ak kľúčenku priloží eraser, obe bool premenné sa nastavia na false a všetky globálne premenné na 0.
Incializácia premenných
DOMINATOR cez Arduino pre Airsoft / Paintball / Nerf Wars
Prevod načítanej karty na jedinečný tvar v DEC tvare + zapnutie hlásiča na 4kHz po dobu 1s
DOMINATOR cez Arduino pre Airsoft / Paintball / Nerf Wars
Snippet logiky kariet pre tím 1 - jeho bool premenná nastavená na true
DOMINATOR cez Arduino pre Airsoft / Paintball / Nerf Wars
Logika systému bežiaca každých 10ms
DOMINATOR cez Arduino pre Airsoft / Paintball / Nerf Wars
Logika systému pre prvý tím:
DOMINATOR cez Arduino pre Airsoft / Paintball / Nerf Wars
Vykreslenie výsledkov na displej
DOMINATOR cez Arduino pre Airsoft / Paintball / Nerf Wars
Aký je maximálny časový rozsah systému?
Maximálny časový rozsah pri aktuálnom nastavení pozície na LCD displeji je maximálny rozsah 99 hodín, 59 minút, 59 sekúnd. V skutočnosti ale systém dokáže bežať až takmer 50 dní do pretečenia millisu.
Pre koho je systém vhodný?
Systém je vhodný pre tímy, amatérskych hráčov, ktorí si chcú hru prikrášliť, taktiež aj pre niekoľko-dňové akcie typu Fort Benning, možnosť využiť v externých i interných priestoroch, vhodné aj pre športový areál prevádzkujúci Airsoft/Paintball. Nastavenie adries a program sa nahrá iba raz a funguje nepretržite, až ho hráči "zodrú" I keď... Skôr zničia.. Celý systém je možné osadiť i na DPS. Rozmer závisí najmä od použitého displeja, dá sa použiť 20x4 ako na foto vyššie, alebo 16x2, ktorý dokáže výrazne zmenšiť výsledný rozmer DPS.

Niečo z testovania: - princíp funkčnosti
Video: https://www.youtube.com/watch?v=cx90uJY1UUM
Wiring Arduino pin --> periféria (kompatibilné pre R3 dosky + Nano)

Arduino a prepojenie s LCD s I2C prevodníkom
    A4 --> SDA
    A5 --> SCK/SCL
    5V --> Vcc
    GND --> GND

Arduino a prepojenie s čítačkou RC522
    3.3V --> 3.3V
    GND --> GND
    D9 --> RST
    D10 --> CS
    D11 --> MOSI
    D12 --> MISO
    D13 --> SCK

Arduino a prepojenie hlásiča - v prípade 3-pinového treba priviesť ešte 5V z Arduina
    D5 --> INPUT
    GND --> GND

Arduino a prepojenie LED + relé
    5V --> 5V relé
    GND --> GND
    D3--> Anóda dióda + relé IN2
    D4 --> Anóda dióda + relé IN1

Knižnice:
RFID - https://github.com/miguelbalboa/rfid
I2C pre LCD - https://github.com/fdebrabander/Arduino-LiquidCrystal-I2C-library

Ak vás projekt zaujal, navštívte i môj web, kde sa môžete o projekte dozvedieť viac: https://arduino.php5.sk/airsoft-dominator.php
Cieľom článku bolo ukázať využitie Arduina ako herného prvku - DOMINATORA pre extrémne športy typu Airsoft, Paintball, Nerf Wars.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.02.14
Prihlásený: 20.04.26
Príspevky: 404
Témy: 152 | 152
Bydlisko: Poprad-okolie

1300 videní a žiadna reakcia?
Ani kladná, ani záporná? :)


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 05.08.11
Prihlásený: 17.04.26
Príspevky: 1671
Témy: 63 | 63
Bydlisko: BA

co ti poviem, ak by si zacal popularnejsiu temu, napr home automation mal by si asi vacsiu odozvu aj medzi laikmi.
ale aby sa nepovedalo, mal by som par bodov:
1. karty su pre rychly outodovy sport neprakticke, lebo sa blbo nosia a malo vydrzia, klucenky su uz o nieco lepsie, vies kupit/vyrobit lacne naramky na ruku na ktore ich pripevnis a hracovi to bude zavadzat minimalne.
popr. osobne by som na taketo nieco kupil rovno mikroRFIDy a a tie vsadil do nejakych naramkov. https://goo.gl/X89znW
popr odkukat nieco z komercnej zfery? napr. https://www.youtube.com/watch?v=tzXaAVGXHIc
2. rozmyslam ci by nebolo jednoduchsie naratavat jednotky klasicky do stovkovej sustavy a preratat ich v az v momente zobrazenia na 60kovu
3. to zobrazovanie na maly display - pre hraca by bolo mozno zaujimave vediet priebezne casove fondy pocas hry, takze povedzme na nejakej palici panel s 6cifernymi dvojfarebnymi displaymi, kde by kazde tri sekundy preblikol aktualny casovy fond jedneho a druheho teamu. .. len taka predstava z prvej
4. ak to chces mat outdoor, musis tomu vyriesit nepremokavu, narazuvzdornu krabicu a napajanie, ktore to vydrzi zivit aspon pol dna s blbuvzdornym nabijanim, napriklad z baterky auta.


 [ Príspevkov: 3 ] 


DOMINATOR cez Arduino pre Airsoft / Paintball / Nerf Wars



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Airsoft / Paintball DOMINATOR - Arduino + RFID

v Články

0

1730

09.03.2019 13:16

martinius96

V tomto fóre nie sú ďalšie neprečítané témy.

P: RFID DOMINATOR pre Airsoft

v Bazár

1

904

03.01.2024 1:38

martinius96

V tomto fóre nie sú ďalšie neprečítané témy.

Airsoft & Paintball

[ Choď na stránku:Choď na stránku: 1 ... 26, 27, 28 ]

v Diskusia

827

38308

26.08.2021 10:35

hkckoo

V tomto fóre nie sú ďalšie neprečítané témy.

Capture points (DOMINATION) - Airsoft - Arduino + WiFi

v Články

0

3370

24.02.2019 0:27

martinius96

V tomto fóre nie sú ďalšie neprečítané témy.

Ovládanie relé cez Arduino s webaplikáciou

v Články

0

1614

10.02.2019 0:23

martinius96

V tomto fóre nie sú ďalšie neprečítané témy.

Mastermind - Logik cez Arduino a LCD

v Články

1

2683

23.08.2019 15:37

vaci

V tomto fóre nie sú ďalšie neprečítané témy.

Crysis wars cez lan(hamachi)

v Hry a herné konzoly

3

1231

28.11.2008 13:21

kele

V tomto fóre nie sú ďalšie neprečítané témy.

Star Wars BattleFront 2 cez hamachi

v Hry a herné konzoly

2

765

15.03.2008 17:21

DeltaClone

V tomto fóre nie sú ďalšie neprečítané témy.

Ovládanie hlasom pre Arduino/NodeMCU/ESP32/Raspberry/Orange Pi ... projekty

v Mikropočítače

1

2962

16.09.2017 9:16

ado130

V tomto fóre nie sú ďalšie neprečítané témy.

Paintball v BA

v Diskusia

4

890

24.06.2009 21:11

Andreso

V tomto fóre nie sú ďalšie neprečítané témy.

Gotcha! paintball (pc hra) internet

v Hry a herné konzoly

0

1026

07.03.2010 11:48

Nick_177

V tomto fóre nie sú ďalšie neprečítané témy.

Airsoft-AK47

v Diskusia

28

2189

30.10.2009 18:06

Svolo

V tomto fóre nie sú ďalšie neprečítané témy.

Hladam elektrotechnika pre navrh el. obvodu pre LED Driver ovladany cez Atmega

v Ponuka a dopyt práce

1

1129

09.12.2016 16:07

rezystor

V tomto fóre nie sú ďalšie neprečítané témy.

I/P: Airsoft samopal Tokyo Marui MP5A4

v Bazár

19

1588

01.06.2012 18:37

Sabone

Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie.

P: Airsoft - KWC SIG SAUER GSR 1911 METAL CO2

v Bazár

4

651

23.11.2013 11:58

DJ46

V tomto fóre nie sú ďalšie neprečítané témy.

Arduino

v Backend

6

814

05.04.2018 17:25

ado130



© 2005 - 2026 PCforum, edited by JanoF