Pro mezinárodní soutěž v robotice "ROBO2020" vznikla tato časomíra a tento článek...
Donate
- zdrojový kód pro Arduino IDE, data pro 3D tiskárnu, soubor pro Excel (příjem dat z robo2020 přes USB), dráha pro roboty
Funkce časomíry
Po zapnutí časomíry se na displeji zobrazí text "ROBO2020" a následně se nastaví stav pro test IR bran (je vidět text, zda je brána 1 (2) aktivní "ON", nebo není aktivní "OFF"). Stav IR bran je zároveň signalizován zelenou LED zabudovanou v IR bráně a signalizován pípáním piezo reproduktoru.
Po stisknutí tlačítka "hra" (tlačítko je umístěné na horní části časomíry), nebo pomocí tlačítka "HRA" v mobilní aplikaci spustíme novou hru. Na panelu bude zobrazeno jako "New game!". Následně na panelu bliká text ">START" do doby, než prvně projede vozítko IR bránou start. Do této doby neběží odpočet hry (7 minut).
Po projetí IR brány "start" se spustí odpočet celé soutěže (7 minut) a zároveň měření času projetí 1. kola (L1). Po projetí IR brány "stop" se do Excelu odešlou výsledky 1. kola. Následně na panelu bliká text ">START" do doby, než projede vozítko IR bránou start. Odpočet soutěže (7 minut) stále běží. Duo LED diody (zelená/červená) signalizují stav bran. Podrobněji je vše vidět ve videu níže...
Video - ukázka chodu časomíry
Video - ukázka z mobilní aplikace
Video - BT nepřipojeno
Video - BT připojeno
Tabulka v Excelu s načtenými daty
Po ukončení každého kola (nebo vypršení času soutěže 7 minut) se do Excelu odešle
- datum a čas ukončení kola
- status kolo 1, 2, 3 (LAP1..), vypršení času před dokončením kol (MAXRUNTIME!) nebo všechno v pořádku (RUNTIMEOK)
- stav IR bran (start, stop)
- čas kola (1, 2, 3) v ms
- celkový čas soutěže (7 minut) v ms
Zároveň se po ukončení všech kol soubor uloží na disk v PC pod názvem "ROBO2020_L1-xxxx_L2-xxxxx_L3-xxxx.xlsm" kde xxxx jsou časy v ms jednotlivých kol (v reálu se nikdy nestane, aby byl název souboru 2x stejný).
Časomíra je napájena (230V) a propojena skrze USB do PC. V PC (Windows 10 - 64bit) spustíme MS Office 2016 Excel soubor: ROBO2020CZ.xlsm (nebo anglická verze ROBO2020EN.xlsm). Stiskneme tlačítko "Spojení s panelem". V okně USB port nastavíme dostupný port (stejné číslo com portu pod kterým vidí desku Arduino IDE, v mém případě port 51) a rychlost komunikace 9600 baudů. Po stisknutí tlačítka "připojit" dojde k restartu robo2020 panelu. Ladící informace si můžeme nechat vypsat po stisknutí tlačítka LOG->.
Arduino deska do Excelu odesílá přes USB data
Příklad výpisu na sériové lince
CUSTOMBOX1,LABEL,LAP1
CUSTOMBOX2,LABEL,LAP2
CUSTOMBOX3,LABEL,LAP3
CUSTOMBOX1,SET,0
CUSTOMBOX2,SET,0
CUSTOMBOX3,SET,0
Date,Time,Status,IRstart,IRstop,Lap1,Lap2,Lap3,Runtime
CLEARSHEET
DATA,DATE,TIME,LAP1,OK,OK,11574,-,-,16474,AUTOSCROLL_20
CUSTOMBOX1,SET,1
DATA,DATE,TIME,LAP2,OK,OK,-,11104,-,32278,AUTOSCROLL_20
CUSTOMBOX2,SET,1
DATA,DATE,TIME,LAP3,OK,OK,-,-,7200,39578,AUTOSCROLL_20
CUSTOMBOX3,SET,1
DATA,DATE,TIME,RUNTIMEOK,END,END,11574,11104,7200,39578,AUTOSCROLL_20
SAVEWORKBOOKAS,ROBO2020....