Ročníkový projekt, Softwarová praxe, bakalářky, diplomky, ...

RNDr. David Obdržálek, Ph.D.

Note: Following info is in Czech. All projects ara available for English students too, please use translation tools for this page and contact me if you are interested.

Preferuji projekty:

Zde je několik předběžných zadání pro různé projekty a práce jako ukázka. Rozhodně to není všechno.
Možné jsou jak velmi hardwarové, tak zcela softwarové a také i teoreticky výzkumné projekty s pilotní „ověřující“ implementací. Pro práci s hardware může být po dohodě k dispozici základní vybavení nástroji, nářadím, zázemím apod.

Některé projekty je možné realizovat jako jednosemestrální bez další návaznosti ve výuce, některé s dalším navázáním na softwarovou praxi, bakalářskou práci atd. Ne všechny všechno.
V případě zájmu mne kontaktujte emailem nebo osobně (Troja, Impakt, 2.p. N238).

  1. Časomíra

    Stručné zadání: Časomíra pro robotické soutěže.
    Na robotických soutěžích měříme čas, výsledky se zapisují do databáze. To se momentálně děje ručně. Cílem je vytvořit systém, který umožní automatické měření a ukládání výsledků jak pro soutěže jednotlivých robotů, tak i pro více robotů zároveň. Například: a) jeden robot po čáře, start/cíl s "fotobuňkou"; b) více robotů na okruhu, jedou několik kol, postupně se zaznamenají časy v jednotlivých kolech. Zde je možné řešení s použitím kamery shlížející na hřiště shora a nalepením vhodných značek na roboty (resp. toto je očekávané řešemí, ale pokud zájemce vymyslí něco jiného, nevadí).
    Lze i pro dva lidi, jeden udělá pořádný software, druhý hardware.
  2. Zpětnovazební řízení reflow pece

    Stručné zadání: Vyměnit SW řízení reflow pece za něco, co ji bude skutečně řídit.
    Reflow pec dálněvýchodní provenience má poněkud problémy s řízením teploty i s hodinami. Hardwarově v pořádku, za SW by autor u nás zápočet nedostal. Úkolem je její řízení nahradit něčím, co to bude měřit správně, bude to správně měřit čas a bude to správně řídit teplotu. Dá se přeprogramovat už existující řídící deska, nebo se dá nahradit nějakým běžně dostupným mikrokontrolerem.
    Pec máme a chceme ji používat.
  3. Elektronické hračky a IoT

    S využitím nějaké programovatelné platformy (Arduino, ESP2866/ESP32, BeagleBone, RaspberryPi atd.) vytvořte nějaký zajímavý objekt / projekt, například hodiny lorda Vetinari, herní konzoli, kinetickou sochu, pomůcku pro každodenní život, novou věc do chytré domácnosti (třeba řízení tepelného čerpadla nebo fotovoltaiky, zabezpečovačku atd.), další IoT zajímavost atd.
    Fantazii se meze téměř nekladou.
  4. Editor čáry

    Stručné zadání: Editor závodní dráhy pro roboty.
    Pro soutěže robotů používáme dráhu z klikaté čáry. Dosud jsem ji maloval v "běžném editoru", ale výrazně lepší by bylo mít na to vlastní editor, který by udržoval zadané parametry (např. minimální poloměr oblouku a hladké navázání segmentů).
  5. Robot Nao v akci

    Stručné zadání: Využít robota Nao
    Získali jsme robota Nao (viz www.aldebaran.com) a je tu prostor pro mnoho různých projektů, které ho využijí. Tento humanoidní robot "umí" spoustu věcí a je možné jej programovat.
    Možné jsou jak výzkumné, tak i čistě medializační projekty na ukázku při propagačních akcích MFF
  6. Formule F1:10

    Stručné zadání: Autonomní formule v měřtku 1:10.
    Máme k dispozici hardware, je třeba vše sesadit a rozpohybovat. Podvozek RC auta 1:10, NVidia Jetson TX2, 3D kamera Structure Sensor, kamera Sony IMX377. laser rangefinder SICK nebo Hokuyo, případně i u-blox GPS. ROS.
    Lze i pro více lidí dohromady.
  7. Hejno robotů

    Stručné zadání: Různé projekty týkající se hejna robotů (swarm robotics).
    Máme víc miniaturních Ozobotů a další hejno trochu větších BoeBot robotů. Je možné realizovat řadu projektů přímo s nimi nebo na jejich podporu. Například:
    - podpůrné: např. sledování scény a poskytování informace o poloze nebo o trajektorii robota(ů) v čase (tj. klasický image processing); centralizované řízení; vyhodnocování "chování" robotů; přenos informace z robotů na PC
    - výzkumné: např. kooperace; distributivní rozhodování; multi-agent planning
    - demonstrační: např. travel salesman; třídění; formace a tanečky
  8. TSe-tse

    Stručné zadání: TS editor - parsing, čistění, editace souborů ve formátu .TS (A DALŠÍCH) bez složitějších úprav. V základní verzi zobrazovat vybraný video stream, označkovat části, které se vypustí a uložit výsledek se zachováním co nejvíce dat z ostatních streamů. Tj. není potřeba (ba ani žádoucí) rekomprese videa/audia.
    Předpokládá se nejdřív rešerše již existujících nástrojů, a při tvrobě TSe-tse přiměřené využití již dostupných knihoven/částí (divil bych se, kdyby se nenašlo nic...). Možno rozšiřovat o uživatelsky přítulné funkce ad libitum...
    Výhoda i nevýhoda: Hodlám to osobně používat.
    I když máme ffmpeg, tak ten vyžaduje textové/číselné zadání parametrů, což pro komfortní značkování částí není zrovna použitelné. Frontendů pár je, ale zatím jsem nenašel vhodný.
  9. Laboratorní robot pro výuku

    Stručné zadání: Vytvoření sady úloh pro výuku mobilní robotiky s využitím robotických „kitů“, které máme k dispozici.
    Výhoda i nevýhoda: Možnost ale i nutnost práce s hardware. Ne nutně návrh a vyrábění nového, ale v elektrice nejspíš bude potřeba se hrabat.
  10. Ester

    Stručné zadání: Znovuoživení robota Ester
    Robot Ester se kdysi velmi úspěšně účastnil soutěží Eurobot. Mechanicky stále dobrý, ale řízení by chtělo zmodernizovat.
  11. Šestikolka

    Stručné zadání: Vylepšení šestikolového robota
    Máme šestikolového robota do lehkého terénu. Platforma je však zastaralá (výpočetně slabý kontroler s malými možnostmi) a trpí mnoha neduhy (nevhodně umístěné senzory, problémy s podkluzujícími koly atd.). Rád bych s použitím moderních komponent robota opět oživil.
  12. Generátor kódu pro editor stavových automatů

    Stručné zadání: Doplnění editoru stavových automatů pro řízení robotů (GFE) o generátor kódu v nějakém vhodném programovacím jazyce. Vygenerovaný kód bude implementací editovaného automatu pro použití v reálném robotovi. Možnost úprav a dalšího vývoje editoru.
  13. SW podpora lokalizace mobilního robota

    Stručné zadání: Máme několik zajímavých senzorů (laser rangefinder, inertial orientation sensor, ultrasonic distance sensor, IR distance sensor...) a několik zajímavých mikroprocesorových/mikrokontrolerových jednotek. Úkol - rozchodit a použít, tj. minimálně správně číst data, lépe i je umět nějak zpracovat.
    Především badatelsko-programátorský projekt. Díky systému ROS už to na střední úrovni není potřeba vymýšlet, ale "jen" posbírat zkušenosti ostatních, kdo už daný senzor na dané platformě využili. Zkušenosti s robotikou jsou vhodné, ochota k práci s hardware je velkou výhodou.
  14. Lokalizace mobilního robota

    Stručné zadání: V souvislosti s předchozím projektem - zpracování dat získaných z nějakých senzorů a jejich využití (interpretace) pro účely lokalizace robota v nějakém prostředí.
    Především badatelský projekt, u kterého bude ale potřeba i programovat. Zkušenosti s robotikou nejsou potřeba, i když by se samozřejmě hodily. Předpokládá se pokračování do bakalářské práce a může to být i téma na dva další levely (Mgr., Ph.D.). Opět, díky ROSu už nějaká základní funkčnost je, čili nebude potřeba to dělat od nuly.
    Výhoda: Velký potenciál projektu (věda, zahraniční konference, soutěže...)
  15. Ground Truth

    Stručné zadání: Vybudovat do robotické laborky systém pro nezávislé sledování pozice mobilních robotů. Nejspíš pomocí rozmístění kamer a označkování robotů (třeba nějakým QR-podobným tagem).
  16. 3D tiskárna

    Stručné zadání: Máme mechaniku 3D tiskárny, chybí ovládání
    Pro prehistorickou 3D tiskárnu, ke které neexistují drivery (a výrobce nespolupracuje) udělat nové řízení, založené na nějakém běžně používaném free řešení typu RAMPS, Ultimaker, RAMBo apod.
    Tohle už je dost "obsolete", ale zkusit by se to i tak dalo.
  17. Autonomní/teleoperovaný robot

    Stručné zadání: Postavení autonomního/teleoperovaného robota a jeho řídícího systému.
    N+1. takový projekt, ale pořád je něco nového.
  18. Vylepšení navigačního algoritmu LLH

    Stručné zadání: Prozkoumání teoretických vlastností navigace robota systémem LLH (low-low-high) a návrh vylepšení pomocí integrace nezávislých dat.
    Místo "navigačního" a "LLH" si můžete dosadit libovolný jiný okruh, jiný algoritmus a jiný nápad na vylepšení...
  19. Magická tabulka

    Naprogramovat robotické rameno UR-5, aby fungovalo jako magická tabulka, "prstem" v bedničce s pískem. Ovládání buď přes app na Androidu nebo ještě lépe pomocí vlastního ovladače (nejlépe z reálné magické tabulky...)
    (prémiový projekt pro zasloužilého robotistu)
  20. Ur-Picasso

    Naprogramovat robotické rameno, aby malovalo na papír podle toho, co uživatel prstem matlá na tabletu.
    (prémiový projekt pro zasloužilého robotistu)
  21. Ur-Signac

    Naprogramovat robotické rameno, aby obraz podle fotky přeneslo v pointilistickém stylu na papír.
    (prémiový projekt pro zasloužilého robotistu)

Pro další představu

Bez ladu a skladu, některé starší projekty pro inspiraci, některé je možné přiměřeně recyklovat: