Logo Robotika.SK Faculty of Electrical Engineering and Information Technology, Slovak University of Technology  Logo Faculty of Mathematics, Physics and Informatics, Comenius University 

Team name: M-TEAM

About the team: Tím ZŠ v Marhani

Assignment: Exchange Our Smiles

Pri riešení tejto úlohy sme sa dosť zdržali a takmer nám nezostal čas na 2. úlohu. Mali sme problém s tým, ako pozberať náhodne rozmiestnené kocky. Zasa sme vyskúšali niekoľko spôsobov.

Ako prvý spôsob nám napadlo zberať kocky pomocou 2 poháňaných pásov otočených k sebe do tvaru písmena V - ako nejaký lievik, ktorý sa pohyboval dopredu. Pásy mali zhŕňať kocky do malého otvoru, za ktorým by sa kocky ukladali do jedného radu v úzkom zásobníku a odtiaľ sa mali kocky vysúvať na správne miesta. Bohužiaľ - nešlo to. Pásy sa hýbali, ale kockám sa nechcelo do otvoru a otvor sa upchával.   

Druhý spôsob bol podobný, z dlhých dielov bol znova poskladaný lievik, do ktorého sa zhŕňali kocky. Nad otvorom sa otáčali pneumatiky tak, aby smerovali kocky do otvoru lievika. Toto uz vyzeralo celkom fajn, len občas došlo k upchatiu lievika. 

Nakoniec sme prišli na toto riešenie:

1. Robot sa hýbe dopredu a zhŕňa kocky, ktoré sú pred ním vo vyznačenom štvorci. Uloženie kociek môže byť náhodné, funguje to stále.

2. Robot zastaví, kocky sú zhrnuté medzi jeho ramenami. Kocky sa zarovnali podľa zadnej steny robota. 

3 . Pomocou stredného motora a ozubenia vysunie tyč, ktorá zatlačí vrstvu vyrovnaných kociek do zásobníka. 

4. Tyč sa vráti nazad, robot sa pohne dopredu a tým zarovná ďalšiu vrstvu kociek, ktoré zostali pred robotom. Nikdy sa nám nestalo, aby sa všetky kocky pri pohybe robota zarovnali do jednej vrstvy.

5. Tyč sa vysúva a zatlačí druhú vrstvu kociek do zásobníka. 

6. Pre istotu urobíme ešte jeden pohyb vpred. Tým zarovnáme prípadné zostavajúce kocky a tyčou ich dotlačíme do zásobníka. Teraz sú už všetky kocky v zásobníku a môžeme robiť smajlíka.

7. Potom otáčame jedným motorom a robot robí oblúk. Na vhodnom mieste pomocou tyče vysunie kocku.

8. Robot sa pohne o kúsok a vydá kocku. Toto spraví ešte 4 - krát a máme spravenú pusu.

9. Ďalej sa robot vyrovná, podíde trocha dopredu a začína robiť nový oblúk.

10. Znova na vhodnom mieste vydá kocky - najprv jedno, potom druhé oko.

11. V závere už len odparkujeme robot do prostriedku stola. Hotovo :)

Prepáčte horšiu kvalitu videa - zrkadlovka nejako nechcela ostriť :( 

Photos:

Videos:

Programs:

Rating:

1. Veľmi pekne spracované riešenie úlohy. Oceňujem i podrobný popis riešenia, kvalitné fotografie a dobre spracované a názorné video.


2. Super riešenie, pekne spravený zásobník, naberanie a vykladanie.

3. Prosím, nedávajte do videa fotky, ktoré si vieme pozrieť aj tak. Video má zachytávať činnosť robota, najlepšie z viacerých smerov a pre viac rozličných prípadov.
To zbieranie kociek ste si trocha zjednodušili, ale zasa rozmiestňovanie kociek je veľmi presné a pekné. Páči sa mi aj konštrukcia robota.

4. Za úlohu Vymeňme si úsmevy získavate 3b. Na videu je ukázané, že robot dokáže zozbierať kocky z rôznych náhodných miest nachádzajúcich sa vo vopred určenom štvorci a vytvoriť smajlíka.

Assignment: Lighthouses

Túto úlohu sme si trocha zjednodušili - nejako nám nezvýšil čas. Naše riešenie vyzerá takto:

1. Postavili sme maják, na ktorom svietila silná ledka z ručnej LED lampy. Pôvodne sme chceli použiť obyčajnú ledku, ale tá svietila tak slabo, že jej svetlo nedokázal farebný snímač spoľahlivo zamerať. Chceli sme, aby maják vysielal svetelné signály v morzeovke. Blikanie sme spravili pomocou tlačítka. Tento spôsob však nebol spoľahlivý, nedokázali sme držať stále rovnaké tempo - časové intervaly pre bodku a čiarku. Tu nám pomohol náš pán učiteľ. Pripojil ledku k relé, ktoré ju zapínalo a vypínalo. Relé bolo ovládané cez Raspberry Pi. Ukázal nám ako môžeme pomocou 3 príkazov v jazyku Python ovládať zapínanie a vypínanie ledky - tak, aby ledka svietila určitý presný čas. Stačilo už len tie príkazy vhodne poukadať. Takto sme vyriešili blikajúci maják. Medzi programami  sú 3 programy pre Raspberry Pi: blikacLEGO.py - týmto programom zablikáme v morzeovke slovo LEGO, blikacMARHAN.py - týmto programom zablikáme slovo MARHAN - obec, kde chodíme do školy. Teda presnejšie - MARHAŇ :) Tretím programom zablikáme rok 2017. Keďže nikto z nás neovláda morzeovku tak sme si pomohli apkou v mobile, ktorá preloží slová do morzeovky.

2. Potom sme na loď umiestnili farebný senzor, ktorý mal merať úroveň dopadajúceho svetla. Celý program na prijímanie morzeovky je v tom, že robot zisťuje, či vysielač svieti alebo nie, ďalej meria trvanie svetla a tmy. Z týchto informácií vie robot povedať, či prišla čiarka, bodka alebo či je pauza vnútri jedného písmena alebo pauza medzi písmenami. Na internete sme zistili, že trvanie čiarky je trikrát tak dlhé ako trvanie bodky. Ďalej že pauza medzi znakmi vnútri v písmene je rovnako dlhá ako trvanie bodky a pauza medzi písmenami je rovnako dlhá ako trvanie čiarky. Aby sme si to zjednodušili, tak sme dali pomalšie tempo ako je v skutočnosti. Vysielanie čiarky nášho majáku trvalo 3 sekundy, vysielanie bodky 1 sekundu. Pauza medzi znakmi v písmene trvala 1 sekundu a pauza medzi písmenami 3 sekundy. Vtedy je pekne vidno rozdiel medzi čiarkou a bodkou a vidno je aj pauzy. 

3. Program pre robota je vlastne jedna nekonečná slučka. Funguje asi tak:

a) Znaky, ktoré prijme robot zapisujeme do súboru v pamäti. Súbor sme pomenovali znaky. Na začiatku zmažeme tento súbor - ak by bol v pamäti súbor z minulého pokusu. 

b) Robot čaká, kým nenamerá úroveň svetla 80. 80 preto, lebo náš maják svieti takou úrovňou.

c) Keď namerá túto úroveň, tak vtedy sa spustí slučka. Zresetujeme stopky (stopky 1), ktoré budú merať trvanie svietenia majáku. Čaká, kým úroveň svetla neklesne pod 80 - vtedy maják zhasol. Hneď odmeria čas svietenia a porovná jeho dĺžku. Ak svietil dlhšie ako 2 sekundy - to znamená,že prišla čiarka a do súboru znaky zapíše čiarku. Ak svietil kratšie , tak do súboru zapíše bodku. To je tá horná vetva v slučke.

d) Hneď po zhasnutí majáku musí merať aj dĺžku tmy. Preto v tej dolnej vetve zrestujeme stopky (stopky 2) a meriame čas kým maják nesvieti. Meriame dovtedy, kým úroveň svetla nie je 80 - vtedy maják znova zasvietil. Zasa zresetujeme stopky (stopky 1) - aby sme merali čas ďalšieho znaku. Zmeraný čas tmy porovnáme - ak je tma kratšia ako 2 sekundy - takto znamená, že išlo o medzeru medzi znakmi vnútri jedného písmena a do súboru nezapíšeme nijaký znak. Ak je čas väčší ako 2 sekundy, tak išlo o medzeru medzi písmenami. Aby to bolo jasné pri čítaní súboru, tak do súboru zapíšeme 5 pomlčiek. Celé to beží v nekonečnej slučke a tak sa zapíše každý znak, čo príde z majáka. Zapísaný súbor potom vyzerá tak, že v každom riadku je buď čiarka, bodka alebo medzera oddeľujúca písmená. Medzi programami je sú 3 súbory, ktoré robot zapísal keď prišla správa so slovom LEGO, MARHAN a 2017. Zapísané znaky v súboroch sú správne - skontrolovali sme to pomocou apky v mobile.  

Photos:

Videos:

Programs:

Rating:

1. Oceňujem podrobný popis vášho trošku upraveného riešenia úlohy a dizajnové prvky robotov. Na videu však nie je dobre vidieť nejakú kontrolu vášho riešenia.

2. Dobrá práca s morzeovkou, od nej to je k rozpoznávaniu signálov len kúsok.

3. Prosím, nedávajte do videa fotky, ktoré si vieme pozrieť aj tak. Video má zachytávať činnosť robota, najlepšie z viacerých smerov a pre viac rozličných prípadov.
Máte veľmi peknú konštrukciu majáka aj lode.

4. Za úlohu majáky získavate 2b. Na videu nie je zobrazené, že jednotka rozoznáva jednotlivé svetelné módy. Ale zato ste si postavili krásnu loď aj maják :)