====== Cvičení====== Cvičí: Vladimír Smutný, Pavel Krsek, Vladimír Petrík, David Woller, Tomáš Jochman \\ Domácí úlohy se odevzdávají do [[https://cw.felk.cvut.cz/brute/|odevzdávacího systému]]. ===== Forma cvičení ===== Cvičení je rozděleno do několika částí s různou formou. Část cvičení je věnována výkladu používání programu Matlab a návodu k domácím pracem. \\ V části cvičení studenti samostatně řeší jednoduché úlohy s roboty s narůstající složitostí. Každé cvičení této části je završeno odevzdáním vyřešené úlohy do odevzdávacího systému. V této etapě studenti pracují samostatně, odevzdané úlohy jsou [[courses:b3b33rob:automaticke_hodnoceni|automaticky hodnoceny]] a získané body se započítávají do zápočtu a ke zkoušce. \\ Část cvičení je věnována samostatné práci studentů ve dvojicích na praktické úloze. Cvičení je organizováno formou otevřených laboratoří. Cvičení probíhá na robotech CRS, robotu Bosch a robotech Mitsubishi v místnosti JP-B-415. Tyto roboty jsou vyčleněny v daném semestru jen pro samostatnou práci studentů tohoto předmětu. Práce probíhá i mimo čas vyhrazený v rozvrhu předmětu Robotika. \\ ===== Podmínky zápočtu ===== * Byly odevzdány všechny domácí úlohy včetně zpráv. Úlohy musí správně řešit zadaný problém. * Byla odevzdána zpráva praktické úlohy, cvičící ji s Vámi prodiskutoval a schválil. * Byly předvedeny programy praktické úlohy, které fungují uspokojivě za podmínek specifikovaných ve zprávách. * Za domácí úlohy lze získat cca 19 bodů. * Za praktickou úlohu lze získat 20 bodů. * Za testu v semestru lze získat 12 bodů. * Za zkoušku lze získat 49 bodů. ===== Časový plán cvičení ===== V zimním semestru 2021-2022 bude v období mezi 28.9. a 17.11. 2021 úterní cvičení opožděno o jeden týden vlivem státních svátků. - Úvod, organizace, BOZP, matlab a ladění programů, zadání 1. domácí práce kartézské - válcové - sférické souřadnice.{{ :courses:b3b33rob:robotika1cviceni.pdf |Informace}} - Od algoritmu k funkčnímu programu, pracovní návyky programátora, tipy a triky kódování a ladění. Dopady reprezentace čísel v počítači na přesnost numerického výpočtu, stabilita numerických výpočtů. Zadání a řešení 2. domácí práce - Eulerovy úhly. - Příklady jednoduchých kinematických struktur a jejich řešení: Počet stupňů volnosti, počet kloubů, ramen, smyček v paralelním manipulátoru. {{ :courses:b3b33rob:maticova_metoda.pdf |prezentace}}. - Paralelní roboty. Zadání a řešení 3. domácí práce - přímá a inverzní kinematická úloha planárního paralelniho manipulátoru. {{ :courses:b3b33rob:kinematika_paralelniho_robota_2_.pdf | prezentace}} - Ukázka práce s roboty v laboratoři, bezpečnost práce s roboty. Prohlídka CIIRC. - Denavitova-Hartenbergova notace. Zadání a řešení 4. domácí práce - Denavitova-Hartenbergova notace. Kreslení ve 3D v matlabu {{ :courses:b3b33rob:dh_notace_1_.pdf | prezentace }} - Převody mezi popisy rotace. - Transformace souřadnic. - Cvičení odpadá (28.9. a 17.11.) - Kalibrace robotu, zadání a řešení 5. domácí práce - kinematická kalibrace robotu. - Zpracování obrazu - Vektorová metoda {{ :courses:b3b33rob:vektorova_metoda.pdf |prezentace}} - Plánování pohybu [[https://github.com/petrikvladimir/rob_planning|zdrojový kód]] - Odevzdávání praktických prací, konzultace k domácím úlohám ===== Učebny ===== Kontaktni hodiny probíhají v učebně E-132. Pro praktickou úlohu jsou vyhrazena robotická pracoviště v laboratoři JP-B415. Je nutné si rezervovat předem hodiny na práci. ===== Boj proti plagiátorství ===== V rámci předmětu se požaduje samostatná práce. [[https://cw.felk.cvut.cz/doku.php/help/common/plagiaty_opisovani|O plagiátorství podrobněji]] Je dovoleno užívat různé knihovny, které implementují standardní algoritmy. V takovém případě je třeba ve zprávě citovat, co jste použili. Není dovoleno používat práce Vašich kolegů či předchůdců. Každý tvůrce je odpovědný za to, že se jeho dílo nedostane do rukou dalším kolegům. V případě odevzdání shodných prací se penalizují všichni dotčení studenti, tedy i ti, kteří dali dílo k dispozici. Tato definice plagiátorství nijak nezužuje obvyklé zvyklosti na této univerzitě, a proto mohou být obvyklým způsobem trestány i jiné formy porušování studijních předpisů a zvyklostí. ===== Zadání praktické úlohy ===== [[courses:b3b33rob:sbirani_kostek|Sbírání kostek]], praktická úloha pro roboty [[help:common:robot_crs|CRS]] a pro robot [[help:common:robot_mitsubishi_rv-6sdl|Mitsubishi RV6SDL]].\\ [[courses:b3b33rob:kresleni_obdelniku|Kreslení největšího obdélníku]], praktická úloha pro robot [[help:common:robot_bosch|Bosch]].\\ [[courses:b3b33rob:skladani_svetriku|Skládání svetříku]], praktická úloha pro robot [[help:common:robot_mitsubishi_rv-6s|Mitsubishi RV6S]].\\ \\ === Úkoly === - Analyzujte popsaný problém. - Popište principy, které použijete k řešení problému, a na jejich základě sestavte postup řešení. - Postup implementujte a vyzkoušejte. - Odvoďte, za jakých podmínek bude Vaše řešení fungovat. - Vyhotovte zprávu o úloze, ve které zdokumentujete všechny kroky, zhodnoťte výsledky. === Obsah zprávy === Zpráva by měla obsahovat minimálně následující informace: - Název práce, jména řešitelů, datum. - Stručný popis řešeného problému. - Rozbor problému, návrh postupu řešení, očekávaná funkčnost sytému (specifikace). - Změny specifikace, ke kterým došlo v průběhu řešení. - Řešení problému, matematický popis, algoritmy. - Implementace (nezacházet do detailů). - Experimentální výsledky. - Diskuse výsledků, co by bylo vhodné na Vaší práci zlepšit, kdyby bylo více času a prostředků. - Doporučení pro příští cvičení. Navrhněte, co by bylo vhodné zlepšit na cvičeních ze strany cvičících (úlohu, materiální vybavení, dokumentaci,...). - Přílohy (jsou-li nutné). Zpráva ani specifikace by neměly obsahovat věcné ani gramatické chyby. Měly by být formulovány jasně a jednoznačně. Formální matematické zápisy by měly být ve formě používané v matematických knihách, ne ve formě programátorského pseudokódu. === Jak napsat správně zprávu === [[help:common:writing_style|Jak napsat správně zprávu]] === Odevzdávání práce === * Zprávu a programy nahrajte do odevzdávacího systému. * V zápočtovém týdnu vypíšeme rezervační systém na předávání zpráv. Před a po zápočtovém týdnu pošlete minimálně 48 hodin předem email cvičícímu, ve kterém navrhnete Vám vyhovující termíny odevzdání. Jeden ze cvičících odpoví, jestli mu některý z navržených termínů vyhovuje a upřesní čas. * Zpráva může být vysázena v libovolném nástroji, který umí sázet také matematiku, kterou zpráva jistě bude obsahovat. * Zpráva a demonstrace řešení se předvádí najednou. * Zpráva i implementace může být vrácena na přepracování, pokud obsahuje vážné nedostatky. * Zpráva se považuje za odevzdanou, pokud je převzata cvičícím (s poznačeným datem odevzdání). * Při odevzdávání musí být přítomni všichni řešitelé. ===== Základní prostředky pro řešení úloh ===== Počítačové konto na Karlově náměstí. [[help:common:ladeni_programu|Psaní a ladění programů]] ==== MATLAB ==== * Univerzitní licence matlabu: [[https://download.cvut.cz/|https://download.cvut.cz]] * Stručný úvod do matlabu s ukázkami: [[http://cmp.felk.cvut.cz/cmp/courses/ROB/labsmaterial/matlab/matlab_intro_1.html|Úvod-1]] ([[http://cmp.felk.cvut.cz/cmp/courses/ROB/labsmaterial/matlab/matlab_intro_1.m|M-File]]), [[http://cmp.felk.cvut.cz/cmp/courses/ROB/labsmaterial/matlab/matlab_intro_2.html|Úvod-2]] ([[http://cmp.felk.cvut.cz/cmp/courses/ROB/labsmaterial/matlab/matlab_intro_2.m|M-File]]) a [[http://cmp.felk.cvut.cz/cmp/courses/ROB/labsmaterial/matlab/hilbert.m|funkce hilbert]]. * [[http://www.petercorke.com/Robotics_Toolbox.html| Robotický toolbox ]] ==== SW pro řízení robotu - knihovna Bluebot ==== [[help:common:bluebot_toolbox|BlueBot knihovna]], návod k použití. ==== Roboty pro praktickou úlohu ==== * Robot CRS je angulární robot se 6 stupni volnosti. V úloze je možné ho ovládat z Matlabu nebo z Pythonu. * Robot Bosch je robot SCARA se 4 stupni volnosti. V úloze je možné ho ovládat z Matlabu nebo z Pythonu. V tomto semestru ho nelze použít. * Robot Mitsubishi RV6S je angulární robot se 6 stupni volnosti. V úloze je možné ho ovládat z prostředí ROS. * Robot Mitsubishi RV6SDL je angulární robot se 6 stupni volnosti, jde o prodlouženou verzi robotu RV6S s trochu modernější řídicí jednotkou. V úloze je možné ho ovládat z prostředí ROS. ==== Robot CRS ==== [[help:common:robot_crs|Robot CRS]] ==== Robot Bosch SR 450 ==== [[help:common:robot_bosch|Robot Bosch SR 450]] ==== Robot Mitsubishi RV6S ==== Řízení robotu: [[help:common:robot_mitsubishi|Mitsubishi ROS interface ]] [[help:common:robot_mitsubishi_rv-6s|Robot Mitsubishi RV6S]] [[courses:b3b33rob:hidden:rv6s_manuals|Manuály (po přihlášení)]] ==== Robot Mitsubishi RV6SDL ==== Řízení robotu: [[help:common:robot_mitsubishi|Mitsubishi ROS interface ]] [[help:common:robot_mitsubishi_rv-6sdl|Robot Mitsubishi RV6SDL]] [[courses:b3b33rob:hidden:rv6sdl_manuals|Manuály (po přihlášení)]] ==== Kamera Chameleon ==== [[help:common:kamera_matlab_chameleon_en| Kamera Chameleon (EN)]] [[https://cw.fel.cvut.cz/b202/_media/courses/b3b33lar/krsek_lar21_cs.pdf| Elementární zpracování obrazu]] ==== 3D model souřadnicového systému ==== {{:courses:b3b33rob:ccs_model.jpg?200|}} [[https://www.thingiverse.com/thing:1778163| Odkaz]] ===== Spojení ===== Vladimír Smutný sedí v místnosti B-608b, telefon 7280, vladimir.smutny@cvut.cz,\\ Pavel Krsek sedí v místnosti B-608a, telefon 4194, pavel.krsek@cvut.cz,\\ Vladimír Petrík sedí v místnosti B-640a, telefon 4225, vladimir.petrik@cvut.cz.\\ David Woller sedí v místnosti B-324, David.Woller@cvut.cz.\\ Tomáš Jochman sedi v místnosti B-115, tomas.jochman@cvut.cz\\ Libor Wagner (technická podpora) sedí v místnosti B-635, libor.wagner@cvut.cz\\ Všichni sedí v budově B, CIIRC, ulice Jugoslávských partyzánů v Dejvicích.