CourseWare Wiki
Search
Log In
b181
help
common
robot_crs
Warning
This page is located in archive.
Differences
This shows you the differences between two versions of the page.
View differences:
Side by Side
Inline
Go
Link to this comparison view
Both sides previous revision
Previous revision
2021/11/09 13:32 smutny
2021/11/09 13:32 smutny
2021/11/09 13:31 smutny
2018/10/28 10:56 pisa
2018/10/28 10:55 pisa
2018/10/09 14:30 smutny
2018/10/04 18:01 smutny
2018/10/04 17:58 smutny
2018/10/04 17:55 smutny
2018/10/04 17:54 smutny
2018/10/04 17:48 smutny
2018/10/04 14:15 smutny
2018/10/03 20:23 smutny
2018/10/03 20:17 smutny
2018/10/02 08:18 pisa
2018/10/02 08:13 pisa
2018/02/15 17:10 smutny
2018/02/15 17:00 smutny
2018/02/03 10:49 external edit
2017/11/09 18:21 petroolg
2017/11/09 18:21 petroolg
2017/11/09 17:57 petroolg [Ovládání robotu]
2017/11/09 17:24 petroolg [Ovládání robotu]
2017/11/09 17:21 petroolg
2017/11/09 16:37 petroolg [Ovládání z Matlabu]
2011/10/03 14:50 smutny
2011/04/04 08:53 smutny
2010/05/11 11:21 smutny
2010/03/31 16:16 xmatousm
2010/03/18 15:38 smutny
2010/02/17 09:15 smutny
2010/02/17 09:15 smutny
2010/02/17 09:14 smutny
2010/02/17 08:48 smutny
2010/02/17 08:47 smutny
2010/02/16 14:52 smutny created
Go
Next revision
Previous revision
2021/11/09 13:32 smutny
2021/11/09 13:32 smutny
2021/11/09 13:31 smutny
2018/10/28 10:56 pisa
2018/10/28 10:55 pisa
2018/10/09 14:30 smutny
2018/10/04 18:01 smutny
2018/10/04 17:58 smutny
2018/10/04 17:55 smutny
2018/10/04 17:54 smutny
2018/10/04 17:48 smutny
2018/10/04 14:15 smutny
2018/10/03 20:23 smutny
2018/10/03 20:17 smutny
2018/10/02 08:18 pisa
2018/10/02 08:13 pisa
2018/02/15 17:10 smutny
2018/02/15 17:00 smutny
2018/02/03 10:49 external edit
2017/11/09 18:21 petroolg
2017/11/09 18:21 petroolg
2017/11/09 17:57 petroolg [Ovládání robotu]
2017/11/09 17:24 petroolg [Ovládání robotu]
2017/11/09 17:21 petroolg
2017/11/09 16:37 petroolg [Ovládání z Matlabu]
2011/10/03 14:50 smutny
2011/04/04 08:53 smutny
2010/05/11 11:21 smutny
2010/03/31 16:16 xmatousm
2010/03/18 15:38 smutny
2010/02/17 09:15 smutny
2010/02/17 09:15 smutny
2010/02/17 09:14 smutny
2010/02/17 08:48 smutny
2010/02/17 08:47 smutny
2010/02/16 14:52 smutny created
Go
Next revision
Both sides next revision
help:common:robot_crs [2010/05/11 11:21]
smutny
help:common:robot_crs [2018/10/03 20:23]
smutny
Line 1:
Line 1:
===== Robot CRS =====
===== Robot CRS =====
-
Tento popis se týká dvou kusů robotu CRS umístěného v místnosti KNE-132
+
Tento popis se týká dvou kusů robotu CRS umístěného v místnosti KNE-132
, roboty jsou označeny podle dat výroby CRS93 a CRS97.
=== Popis hardwaru ===
=== Popis hardwaru ===
Line 15:
Line 15:
* [[http://cmp.felk.cvut.cz/cmp/courses/ROB/labsmaterial/CRS/CRS-uvod.htm|Robot CRS, stručný popis]]
* [[http://cmp.felk.cvut.cz/cmp/courses/ROB/labsmaterial/CRS/CRS-uvod.htm|Robot CRS, stručný popis]]
-
=== Ovládání
z Matlabu
===
+
=== Ovládání
robotu
===
-
*
Robot je z Matlabu většinou řízen prostřednictvím Toolboxu
[[/
doku
.
php
/
help
/
common/bluebot_toolbox
|
Bluebot
]]
+
*
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 FEL GitLabu.
-
*
Funkce pro řízení robotu CRS jsou v adresáři
:
\\ "\\k333\appl\robots\tools\bluebot". \\ V Matlabu stačí napsat \\ ''addpath \\k333\appl\robots\tools\bluebot''\\ a budete je moci používat
.
+
*
Python knihovnu můžete stáhnout nebo naklonovat ze stránek GitHub [[https
:
//github
.
com/petroolg/robo-spline|robo-spline/Pyrocon]]
-
* Demonstrační program je v souboru "bbdemo.m"
+
* Demonstrační program
ovládaní z Matlabu
je v souboru "
test/
bbdemo.m"
-
*
K odstraně
ní
varování
v
Matlabu o change notification použijte příkaz \\
"
system_dependent DirChangeHandleWarn Never;
"
+
*
Demonstrač
ní
program ovládaní z Pythonu je
v
souboru
"
test.py
"
-
*
P
ři ovládání robotu
postupujte
takto:
+
*
Postupy p
ři ovládání robotu
jsou prakticky stejné pro oba jazyky. Lišit se budou pouze příkazy. Postupujte
takto:
-
* spusťte Matlab,
+
* zapněte robota červeným kolébkovým vypínačem na čelním panelu řídicí jednotky
(
vypínač se rozsvítí
)
,
-
* zapněte robota červeným kolébkovým vypínačem na čelním panelu řídicí jednotky
,
vypínač se rozsvítí,
+
* stiskněte žluté tlačítko Arm Power (rozsvítí se nad ním žlutá dioda),
* stiskněte žluté tlačítko Arm Power (rozsvítí se nad ním žlutá dioda),
-
*
v Matlabu se spustí \\ "
rob=bbopen('CRS93')
"
nebo
" r
=bbopen('CRS97')
"\\
(
inicializuje se komunikace z Matlabu
)
,
+
*
pro zahájení komunikace a nezbytnou inicializaci spusťte příkazy: <code matlab>% Matlab
-
* v Matlabu se spustí \\ " bbinit
(rob)
"\\
(
robot nalezne referenční pozici
)
,
+
rob=bbopen('CRS93')
; %
nebo
rob
=bbopen('CRS97')
;
-
*
normálně pracujete
s robotem,
+
rob=bbinit
(
rob
)
;</code> <code python># Python
-
*
pokud chcete
ukonč
it
práci v Matlabu
spustíte \\ "
bbclose(rob)
"\\
(
robot najede do referenční pozice
)
a
+
rob = robCRS93
(
) # nebo
rob
= robCRS97(
)
+
c = Commander
(
rob
)
+
c.open_comm(tty_dev)
+
c.init()</code>
+
*
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) <code matlab>% Matlab
+
bbclose(rob)
;</code> <code python># Python
+
c.soft_home
()
+
c.rcon.close()</code>
* vypněte robot červeným kolébkovým vypínačem na čelním panelu.
* vypněte robot červeným kolébkovým vypínačem na čelním panelu.
* Pokud chcete něco provést uvnitř ochranné klece:
* Pokud chcete něco provést uvnitř ochranné klece:
* zastavte robota (vyčkejte zastavení pohybu),
* zastavte robota (vyčkejte zastavení pohybu),
-
* spusťte příkaz
"
bbrelease(rob)
"
(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),
+
* spusťte příkaz
: <code matlab>% Matlab
-
* otevř
te
dveře klece (žlutá LED Arm Power zhasne).
+
bbrelease(rob)
;</code> <code python># Python
+
c.release()</code>
(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).
* 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:
* Návrat do původního stavu po aktivaci Emergency stop nebo po práci uvnitř klece:
-
*
odjišt
ěte emergency stop tlačítko (zmačknutím modrého tlačítka na boku "hříbku"), případně zavřete dveře 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,
-
*
zma
čkněte červené tlačítko Motion Stop,
+
*
zmá
čkněte červené tlačítko Motion Stop,
-
*
zma
čkněte žluté tlačítko Arm Power (rozsvítí se žlutá kontrolní LED Arm Power),
+
*
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.
* 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á LED
Err
. V tom případě je třeba spustit z Matlabu příkaz:
\\ "
bbresetmotors(rob)
"\\
+
* 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:
<code matlab>% Matlab
+
bbresetmotors(rob)
;</code> <code python># Python
+
c.reset_motors()</code>
* Pokud nedojde k vypnutí řídicí jednotky, není nutné nikdy, tedy ani po stisknutí Emergency stop ani po otevření dveří klece, znovu homovat.
* Pokud nedojde k vypnutí řídicí jednotky, není nutné nikdy, tedy ani po stisknutí Emergency stop ani po otevření dveří klece, znovu homovat.
+
+
=== Pohyb po hladkých trajektoriích ===
+
* Toolbox BlueBot a knihovna Marocon obsahují funkce pro interpolace trajektorií splinami 2. a 3. řadů.
+
* Matlab-program demonstrující pohyb po splinech robotu CRS je v souboru "test/interp_demo.m"
+
* Pro demonstraci pohybu po splinech v Pythonu z příkazové řádky spusťte <code python>python test.py -a move</code>
+
* Obecný postup pro interpolaci trajektorie
+
* Vytvořit předpis pro nějakou trajektorii v Kartézských souřadnicích (parametrickou nebo po částech lineární)
+
* Nasamplovat body trajektorie (s odstupem 1-5cm)
+
* Převést body trajektorie na IRC
+
* Zavolat na body jednu ze tří funkcí pro interpolaci
+
* Spočítané parametry použit pro pohyb
+
=== Foto robotu ===
* [[http://cmp.felk.cvut.cz/cmp/courses/ROB/labsmaterial/CRS/CRSpredklon.png|Robot CRS v předklonu]]
* [[http://cmp.felk.cvut.cz/cmp/courses/ROB/labsmaterial/CRS/CRSpredklon.png|Robot CRS v předklonu]]
* [[http://cmp.felk.cvut.cz/cmp/courses/ROB/labsmaterial/CRS/CRSpozor.png|Robot CRS v pozoru]]
* [[http://cmp.felk.cvut.cz/cmp/courses/ROB/labsmaterial/CRS/CRSpozor.png|Robot CRS v pozoru]]
-
-
help/common/robot_crs.txt
· Last modified: 2021/11/09 13:32 by
smutny