===== Robot Bosch SR 450 ===== Tento návod se týká robotu umístěného v místnosti KNE-132. === Popis ramene === * [[http://cmp.felk.cvut.cz/cmp/courses/ROB/labsmaterial/Bosch/Bosch_03B.gif|Rozměrové schéma]] * {{:help:common:boschsr450dimensions.pdf|Rozměrové schéma včetně příruby}} === Řídicí jednotka === * Řízení robotu - [[http://cmp.felk.cvut.cz/cmp/courses/ROB/labsmaterial/MARS8/robotdrive.pdf|blokové schema (PDF)]] * Robot je řízen jednotkou MARS 8, popsanou v manuálu ([[http://cmp.felk.cvut.cz/~pisa/mars8/mars8_man_cz.html|HTML]], [[http://cmp.felk.cvut.cz/~pisa/mars8/mars8_man_cz.pdf|PDF]]). === Řízení robotu z Matlabu nebo Pythonu === * Pro ovládání robotu lze použit Matlab Toolbox, původní verze [[help:common:bluebot_toolbox|BlueBot]], aktuální verze[[https://github.com/cvut/marocon|Marocon]] na CVUT GitHubu. * Python knihovnu můžete stáhnout nebo naklonovat ze stránky [[https://github.com/cvut/pyrocon|Pyrocon]] na CVUT GitHubu (původní umístění GitHub [[https://github.com/petroolg/robo-spline|robo-spline/Pyrocon]] na stránkách autorky) * Soubory přímo vidíte z v učebně instalovaných počítačů na cestě /bluebot/data/Marocon/src nebo /bluebot/data/Pyrocon/ * Demonstrační program ovládaní z Matlabu je v souboru "test/bbdemo.m" * Demonstrační program ovládaní z Pythonu je v souboru "test.py" * Postupy při ovládání robotu jsou prakticky stejné pro oba jazyky. Lišit se budou pouze příkazy. Postupujte takto: * zapněte robota červeným kolébkovým vypínačem na čelním panelu řídicí jednotky (vypínač se rozsvítí), * pro zahájení komunikace a nezbytnou inicializaci spusťte příkazy: % Matlab rob=bbopen('bosch'); rob=bbinit(rob); # Python rob = robotbosch() c = Commander(rob) c.open_comm(tty_dev) ???/dev/ttyUSB0 ??? c.init() * po výzvě programu stiskněte žluté tlačítko Arm Power (rozsvítí se nad ním žlutá dioda), * po provedení inicializace pokračujte v práci s robotem, * pro ukončení práci v Matlabu spusťte (robot se vrátí do pozice home) % Matlab bbclose(rob); # Python c.soft_home() c.rcon.close() * vypněte robot červeným kolébkovým vypínačem na čelním panelu. * Pokud chcete něco provést uvnitř ochranné klece: * zastavte robota (vyčkejte zastavení pohybu), * spusťte příkaz: % Matlab bbrelease(rob); # Python c.release() (robot se zabrzdí a rozpojí se zpětná vazba, rameno robotu přitom může mírně poklesnout, proto to nedělejte těsně nad podložkou), * otevřete dveře klece (žlutá LED Arm Power zhasne). * Pokud robot dělá něco, co nemá, okamžitě stiskněte tlačítko Emergency stop (červený hříbek). * Návrat do původního stavu po aktivaci Emergency stop nebo po práci uvnitř klece: * odjistěte emergency stop tlačítko (zmačknutím modrého tlačítka na boku "hříbku"), případně zavřete dveře klece, * zmáčkněte červené tlačítko Motion Stop, * zmáčkněte žluté tlačítko Arm Power (rozsvítí se žlutá kontrolní LED Arm Power), * pokračujte posíláním příkazů pro pohyb robota. * Motor se může dostat do chybového stavu, kdy nad písmenem motoru bliká zelená stavová LED a kromě toho svítí červená error LED. V tom případě je třeba spustit z Matlabu příkaz: % Matlab bbresetmotors(rob); # Python c.reset_motors() * Pokud nedojde k vypnutí řídicí jednotky, není nutné nikdy, tedy ani po stisknutí Emergency stop ani po otevření dveří klece, znovu homovat. === Demonstrace možností knihovny Pyrocon === [[https://youtu.be/INk6yFVDUGg|Záznam koordinovaného pohyby po spline křivkách]]