Skip to content
pihrt-comPublic

About

Aplikace na tvorbu pavouka pro playoff s akustickou a světelnou signalizací startu

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Playoff

Stable release Downloads Tests License

Zde naleznete aplikaci pro MS Windows (instalace i portable verze), dokumentaci hardware (zapojení, 3D modely, STL soubory) a firmware pro Arduino.

V aplikaci lze generovat pavouka až pro 28 týmů. Levým tlačítkem zadáváme číslo nebo název týmu, pravým tlačítkem postupujeme tým do dalšího kola. Výsledný pavouk lze uložit, načíst, exportovat do PDF a propojit se startovními semafory. Nebo se lze přepnout do řežimu měření časů jednotlivých kol. Pokud je kolo kratší než 10 vteřin je podbarvené pole červené. Nejkratší čas v kolech je podbarven zeleně.

Aplikace

Magnetická tabule (takto to nemá vypadat)

App (takto vypadá okno aplikace)

Opakovaný odpočet v režimu LAPS

Volba „Povolit odpočet“ zobrazuje časovač také v režimu LAPS, kde je umístěný dole uprostřed nad poli A a B. Pravým tlačítkem se nastavuje společný interval MM:SS; levým tlačítkem se odpočet spustí od maxima nebo se na maximum kdykoliv vrátí a znovu spustí.

Po dosažení nuly se nastavený interval automaticky obnoví a začne další cyklus. Během posledních 10 sekund se pozadí střídá mezi černou a červenou, zatímco text zůstává bílý. Vypnutí volby nebo přepnutí z režimu LAPS cyklus zastaví. Jednorázové spouštění odpočtu v režimu PLAYOFF přes START/OK zůstává beze změny.

V horní liště LAPS jsou samostatná tlačítka SMAZAT pro A a B a mezi nimi červené tlačítko SMAZAT A+B. Společná akce po potvrzení smaže záznamy obou drah a obnoví jejich číslování od jedničky.

Průběžný čas na LED displejích

V nabídce Nastavení lze volbou „Měřit a zobrazit čas kola“ zapnout měření drah A a B. Zatržítko „Odesílat na LED průběžný čas“ navíc zapne pravidelné odesílání běžícího času na příslušný LED displej.

Položka „Rychlost obnovování“ nabízí intervaly od 0,1 s do 1,0 s. Každý displej se aktualizuje jen po dobu běhu své dráhy; po dojezdu se okamžitě odešle přesný konečný čas a druhá dráha může pokračovat. Průběžné odesílání je ve výchozím nastavení vypnuté.

Nastavení se ukládá do uživatelského souboru .playoff_settings.json i do uloženého projektu .setup.

Inicializace USB zařízení

Brána a oba LED displeje se připojují nezávisle. Dočasně nedostupný nebo právě se probouzející displej proto neblokuje druhý displej a při dalším odeslání se zkusí znovu. Potvrzení změny USB nastavení vždy bezpečně odpojí a znovu připojí bránu, aby se okamžitě použil nově vybraný COM port bez nutnosti restartovat aplikaci.

Aktualizace programu

Po potvrzení nové verze se otevře samostatné okno „Aktualizace Playoff“. Zobrazuje připojení k serveru, průběh a velikost stahovaného instalačního souboru, jeho ověření a spuštění instalátoru.

Instalátor se před spuštěním kontroluje podle velikosti a SHA-256 uvedeného v aktualizačním manifestu. Při chybě zůstane okno otevřené se srozumitelnou zprávou a technickými podrobnostmi; uživatel může stahování zopakovat, zavřít updater nebo znovu spustit původní Playoff.


Hardware (Arduino MEGA)

Projekt používá dva nezávislé semafory, dvě laserové brány a komunikaci RS485.

Pinout

Semafor A

Pin Funkce
D9 Red 1
D10 Red 2
D11 Green
D12 Piezo A
D22 Laserová brána A
D25 WS2812B A (16 LED)

Semafor B

Pin Funkce
D3 Red 1
D5 Red 2
D6 Green
D4 Piezo B
D24 Laserová brána B
D23 WS2812B B (16 LED)

Ostatní

Pin Funkce
D8 START tlačítko
D2 RS485 EN
D26 Piezo SUM
RX0/TX0 USB
RX1/TX1 RS485

WS2812B LED pásky

Každý semafor používá samostatný pásek 16 LED.

  • LED 0–7 = RED1
  • LED 8–15 = RED2
  • GREEN = všech 16 LED zeleně

Používá se plynulý náběh a doběh (fade in / fade out) stejně jako u klasických LED výstupů.


Komunikace

PC → Arduino

start

Arduino → PC

ok
finish_a
finish_b
race_finished

False Start

Během odpočtu je sledována laserová brána.

Pokud jezdec vyjede předčasně:

  • vyhlásí se FALSE START
  • spustí se světelná a zvuková signalizace
  • návrat vozidla na start se ignoruje

Vyhodnocení cíle:

Bez false startu

  1. průjezd = odjezd ze startu
  2. průjezd = cíl

Po false startu

  1. průjezd = false start
  2. průjezd = návrat na start
  3. průjezd = cíl

Firmware Brána (semafor mega)

FW 1.0

  • jeden semafor

FW 1.1

  • dva semafory
  • dvě laserové brány

FW 1.2

  • odesílání průjezdů do aplikace

FW 1.3

  • RGB WS2812B pásky
  • opravy false start logiky

FW 1.4

FW 1.5

  • režim brány (playoff/laps) příkazy: mode_playoff a mode_laps

Firmware 7 segmentový displej (nano)

FW 1.0

  • 7 segmentový LED displej ovládaný Arduino Nano, připojený segmenty přes posuvné registry 74HC

3D tisk

Semafory se skládají z:

  • základny s elektronikou
  • základny bez elektroniky
  • držáků světel
  • průhledných světelných prstenců

Modely jsou připraveny pro 3D tisk.


ROBO 2026

Ukázka použití ze soutěže ROBO 2026 – Techmania a SOUE Plzeň


Kredity

  • Arduino MEGA
  • Python
  • Tkinter
  • Adafruit NeoPixel
  • Martin Pihrt (APP, FW)
  • David Netušil (HW, 3D)

Printables

https://www.printables.com/model/1658726-playoff-semaphore-for-robocompetition

PIHRT.COM

https://pihrt.com/elektronika/493-playoff-app-pro-robovehicle

Historie změn

19. 10. 2026 – GitHub/playoff – verze 1.0.15

Do horní lišty LAPS přibylo potvrzované červené tlačítko SMAZAT A+B pro vymazání záznamů obou drah. Opraveno bylo také USB připojování: LED displeje se nyní inicializují a opakovaně zkoušejí nezávisle a změna portu měřicí brány se použije ihned, bez nutnosti aplikaci zavírat a znovu spouštět.

19. 10. 2026 – GitHub/playoff – verze 1.0.14

Verze 1.0.14 přidává do režimu LAPS opakovaný odpočet se společným nastavením MM:SS, spuštěním a resetem levým tlačítkem, automatickým obnovením dalšího cyklu a černo-červeným varovným blikáním během posledních 10 sekund. Režim PLAYOFF si zachovává původní jednorázové spouštění přes START nebo potvrzení semaforu.

18. 10. 2026 – GitHub/playoff – verze 1.0.13

Verze 1.0.13 přidává grafický updater s ukazatelem průběhu a stažené velikosti, průběžnými stavovými zprávami, kontrolou velikosti a SHA-256, bezpečným dočasným souborem, opakováním po chybě a návratem do původní aplikace. README nově zobrazuje živé badge pro stabilní release, počet stažení, GitHub Actions testy a licenci.

18. 10. 2026 – GitHub/playoff – verze 1.0.12

Verze 1.0.12 doplňuje volitelné průběžné odesílání času na LED displeje s obnovováním 0,1–1,0 s, bezpečné slučování pomalých USB zápisů, vybírání odpovědí displeje, uložení nových voleb, testy a rozšířenou nápovědu.

About

Aplikace na tvorbu pavouka pro playoff s akustickou a světelnou signalizací startu

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages