Visual Programming Backend for a Mobile Robot
Podpora vizuálního programování mobilního robota
diplomová práce (OBHÁJENO)
Důvod omezené dostupnosti:
Přílohy práce nebo její části jsou nepřístupné v souladu s čl. 18a odst. 7 Studijního a zkušebního řádu Univerzity Karlovy v Praze ve spojení s čl. 9 opatření rektora č. 6/2010.
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/2089Identifikátory
SIS: 165381
Kolekce
- Kvalifikační práce [11242]
Autor
Vedoucí práce
Oponent práce
Bednárek, David
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Softwarové systémy
Katedra / ústav / klinika
Katedra teoretické informatiky a matematické logiky
Datum obhajoby
6. 2. 2017
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Angličtina
Známka
Výborně
Klíčová slova (česky)
vizuální programovací jazyk, virtuální stroj, mobilní robot, BlocklyKlíčová slova (anglicky)
visual programming language, virtual machine, mobile robot, BlocklyNázev práce: Podpora vizuálního programování mobilního robota Autor: Bc. Ondřej Staněk Katedra: Katedra softwarového inženýrství Vedoucí diplomové práce: RNDr. David Obdržálek, Ph.D. e-mail vedoucího: David.Obdrzalek@mff.cuni.cz Abstrakt: V této práci se autor zabývá návrhem a implementací řešení pro programování malých mobilních robotů pomocí vizuálních programovacích prostředků. Součástí práce je výběr vhodného front-endu pro vizuální programování i vytvoření back-end vrstvy umožňující běh programu v mobilním robotovi. Pro vykonávání kódu je vytvořen virtuální stroj, který běží v rámci původního firmware robota na 8-bitovém mikrokontroleru s omezenými prostředky. Vrstva generátoru kódu překládá vizuální reprezentaci programu do sekvence instrukcí bajtkódu, jež je následně interpretována v mobilním robotovi. Řešení podporuje typické rysy procedurálních programovacích jazyků, zejména: proměnné, výrazy, podmíněné příkazy, cykly, statická pole, funkční volání a rekurzi. Důraz je kladen na robustnost implementace. K ověření a udržení kvality kódu jsou použity metody automatického testování. Klíčová slova: vizuální programovací jazyk, virtuální stroj, mobilní robot, Blockly Powered by TCPDF (www.tcpdf.org)
Title: Visual Programming Backend for a Mobile Robot Author: Bc. Ondřej Staněk Department: The Department of Software Engineering Supervisor: RNDr. David Obdržálek, Ph.D. Supervisor's e-mail address: David.Obdrzalek@mff.cuni.cz Abstract: In this work, the author designs and implements a solution for programming small mobile robots using a visual programming language. A suitable visual programming front-end is selected and back-end layers are created that allow execution of the program in a mobile robot. The author designs and implements a virtual machine that runs alongside the original robot firmware on an 8-bit microcontroller with limited resources. A code generator layer compiles the visual representation of the program into a sequence of bytecode instructions that is interpreted on board of the mobile robot. The solution supports typical features of procedural programming languages, in particular: variables, expressions, conditional statements, loops, static arrays, function calls and recursion. The emphasis is put on robustness of the implementation. To verify and maintain code quality, methods of automated software testing are used. Keywords: visual programming language, virtual machine, mobile robot, Blockly Powered by TCPDF (www.tcpdf.org)