programovÁnÍ robotŮ jazyk baps2
DESCRIPTION
PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2. Ing. Vladislav Bezouška, Ph.D. Vývojové prostředí – offline programming. Struktura souborů. Textový soubor s částmi programu – je určený pro překladač. *.qll. *.ird. Soubor s kódem programu – je určený k provádění robotem. *.pkt. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/1.jpg)
PROGRAMOVÁNÍ ROBOTŮJAZYK BAPS2
Ing. Vladislav Bezouška, Ph.D.
![Page 2: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/2.jpg)
Vývojové prostředí – offline programming
![Page 3: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/3.jpg)
Struktura souborů
*.ird Soubor s kódem programu – je určený k prováděnírobotem
*.qll Textový soubor s částmi programu – je určený propřekladač
*.pkt Soubor s definicí bodů v prostoru
*.sym Soubor s definicí proměnných
*.err Soubor s hlášením chyb, které se objevily přikompilaci
*.dat Soubor pro deklaraci přiřazení pozice číslicového voliče jednotlivým procesům
![Page 4: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/4.jpg)
Struktura programu
PříkazySoubor *.qllLinkové souboryPřipojuje překladač
Hlavní program
Deklarace
Tělo programu
Podprogramyinterní
Podprogramyexterní
Volání podprog.
Linkové souborylinkování
Volání podprog.
![Page 5: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/5.jpg)
Deklarační část programu
Program POKUS
External: POZICE
Input: 1 = NaPozici
Output: 9 = UCHOP
Real: vaha, delka
Point: P1, P2
;;Include kinematika
Kinematika.qll
;;Control: RHO3
;;Kinematics: RHO3
Deklarace externího procesu
Deklarace vstupů/výstupů
Deklarace proměnných/bodů
Link
deklaračníčásti
![Page 6: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/6.jpg)
Příkazová část programu
begin Začátek programu
Příkazy
Konec programuProgram_end
![Page 7: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/7.jpg)
Příklad programu;Program pro najeti referencnich bodu;------------------------------------
;;CONTROL = rho3;;KINEMATICS: (1=SR60);;SR60.JC_NAMES=A_1, A_2, A_3, A_4;;SR60.WC_NAMES=X_K, Y_K, Z_K, C_K
Program INIT
input:1 = sevreno, ;2 = uvolneno ;
output:5 = uchopit, ;6 = pustit ;
external: pisty
Begin
uchopit = 0pustit = 1
ref_pnt(3) ref_pnt(1) ref_pnt(2,4)
start pisty
Program_End
Definice ŘS
Jméno programu
Deklarace externího procesu
Komentář
Jména a počet KINEMATIK
Jména a počet OS v souř. sys. JC,WC
Definice vstupů
Definice výstupů
Konec programu
Začátek programu
Nastavení log. Výstupu do log. 1 nebo 0
Instrukce pohybu, hledání referenčního bodu– v závorce je uvedeno číslo os které pohyb vykonávají
Spuštění procesu „pisty“ – proces je spuštěn paralelně
![Page 8: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/8.jpg)
Volání externího podprogramu
begin
VRTANI
Program_end
Program VETVENI
External: VRTANI
begin
Halt
Program VRTANI
Program_end
![Page 9: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/9.jpg)
Deklarace pod-procedury
begin
Program_end
Program POKUS
Subroutine OTOC
begin
Return
Sub_end
Return může být použit kdekoli v těle pod-procedury
![Page 10: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/10.jpg)
Vnořování
begin
Return
Program_end
Program HLAVNI
ZASOBNIK
Subroutine ZASOBNIK
Halt
Hlavice
Return
Subroutine Hlavice
![Page 11: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/11.jpg)
Vnořovánís opakováním
begin
RPT_END
Program HLAVNI
RPT 2 Times
RPT 3 Times
RPT_END
Prvníprogram
Druhýprogram
![Page 12: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/12.jpg)
Programování pohybu - přehled
Programování pohybu
Inst
rukc
e po
hybu
(MO
VE
,…)
Def
inic
e ki
nem
atik
y
Inte
rpol
ace
(LIN
EA
R,…
)
Ryc
hlos
t, z
rych
lení
, ča
s(A
, V
, T
IME
,…)
Cílo
vý b
od(T
O,
VIA
,…)
Pod
mín
ky k
once
poh
ybu
(UN
TIL
,…)
![Page 13: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/13.jpg)
Instrukce pohybu - absolutní
P1 = (10,10)
MOVE P1 10
10
X
Y
P1 = (10,10)
MOVE VIA P1, P2
P2 = (20,5)10
10
X
Y
20
5
P1 = (10,10)
MOVE TO P1, P2
P2 = (20,5)
10
10
X
Y
20
5
Lze kombinovat: MOVE VIA P3 TO P1, P2
![Page 14: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/14.jpg)
Instrukce pohybu - relativní
P1 = (10,10)
MOVE_REL P110
10
X
Y
P1 = (5,7)
MOVE_REL APPROX P1, P2
P2 = (10,-5)10
10
X
Y
20
5
P1 = (5,7)
MOVE_REL EXACT P1, P2
P2 = (10,-5)
10
10
X
Y
20
5
Lze kombinovat: MOVE_REL APPROX P3 EXACT P1, P2
7
5 10
-5
7 -5
![Page 15: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/15.jpg)
Instrukce pohybu / Definice kinematiky
;;KINEMATIC = Rob1
REF_PNT (1,2)
Definice jména kinematiky. Další instrukce je platná pro kinematiku Rob1
Automatické najíždění referenčních bodů. V závorce jsou uvedeny osy, které budou hledat referenční body současně.
![Page 16: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/16.jpg)
Instrukce pohybu / Interpolace
MOVE LINEAR TO P1
MOVE_REL LINEAR APPROX P2 EXACT P3
P1
X
Y
P3
P2
MOVE CIRCULAR TO (MP1,EP1)
MOVE_REL CIRCULAR EXACT (MP2,EP21)
EP1
X
Y
MP2
EP2
MP1
Pro zadání obloku potřebujeme 3 body: výchozí bod, koncový bod, střed oblouku
![Page 17: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/17.jpg)
Instrukce pohybu / Interpolace
MOVE PTP TO P1
MOVE_REL PTP EXACT P2
P1
X
Y
P2
![Page 18: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/18.jpg)
Nastavení rychlosti
V=750
MOVE LINEAR P1
Rychlost při PTP pohybu – udává rychlostní faktor
V_PTP =0.8 (0,0001 – 9,9999)
Rychlost při LINEAR nebo CILKULAR pohybu – udává rychlostní faktor (1 – 2000 mm/s)
Globální nastavení rychlosti
Lokální nastavení rychlosti
MOVE LINEAR P2
V=310
MOVE LINEAR P3
MOVE LINEAR WITH V=250 TO P1
MOVE PTP WITH V_PTP=0,7 TO P1
![Page 19: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/19.jpg)
Nastavení zrychlení
A=70
při PTP pohybu – pracuje s max. zrychlenímpři LINEAR nebo CILKULAR pohybu – udává zrychlení (0,001 – 32000 mm/s2)
Globální nastavení zrychlení
Lokální nastavení zrychlení
V=310
MOVE LINEAR P3MOVE LINEAR WITH A=250 TO P1
MOVE LNEAR WITH V=0,7, A=5 TO P1MOVE PTP P3
![Page 20: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/20.jpg)
Nepřímé programování rychlosti
MOVE_REL LINEAR WITH T=8 EXACT P1
P1
X
Y
P1
X
YP3
P2
Dráhu urazí za 8 s
MOVE LINEAR WITH T=5 TO P1,P2,P3
5 s
5 s
5 s
![Page 21: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/21.jpg)
Instrukce pro řízení běhu procesu
WAIT 8.9
MOVE_REL LINEAR APPROX P2 EXACT P3
MOVE_REL LINEAR APPROX P2 EXACT P4
WAIT
(0,01-32000s)
WAIT UNTIL ventil = 1
WAIT UNTIL snimac1 = 1
MOVE TO P2
WAIT UNTIL
=,<>,<=,>=,<,>
HALT Provede se skok na konec programu nebo procedury
JUMP návěští Skok na návěští. Nelze skákat do podprogramu!!!
![Page 22: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/22.jpg)
Instrukce pro řízení běhu procesu
MOVE TO P5
IF w>=180 THEN
ELSE JUMP Zacatek
IF podmínka THEN příkaz ELSE příkaz
Definice proměnnýchTypy: BINARY, INTEGER, REAL, CHARStrukturované typy: ARRAY, POINT,…
REAL: x,y,z
INTEGER: citac
ARRAY [10..10] INTEGER: Pole
SR60.POINT: P1,P2
![Page 23: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/23.jpg)
Paralelní procesy
START Vrtani
EXTERNAL: Vrtani
STOP Vrtani
Řídicí systém může spouštět procesy v režimu multitasking
Spuštění paralelního procesu
Ukončení paralelního procesu
Externí procesy
Interní procesy
ALSO
PARALLEL
PARALLEL_END
MOVE SR60 TO P1
MOVE SR800 TO P2
Další program je spuštěn až po provedení instrukcí všech procesů
Oba pohyby jsou vykonány současně
![Page 24: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/24.jpg)
Výměna nástroje
Výměna nástroje znamená především TRANSFORMACI souř.
TOOL SR60 N1
MOVE LINEAR PCHANGE
1) Nastavení strojních parametrů2) Definice TCP --- Nastavení strojního parametru
--- Definicí souboru: TOOL.DAT
Strojní parametry
Seznam parametrů důležitých pro konfiguraci a funkci systému
Zadávají se přes PHG: např. P10 = 0 (Němčina) P10 = 1 (Angl.)
P10 = 2 (Ital.)
X
Y ZTOOL OFF
![Page 25: PROGRAMOVÁNÍ ROBOTŮ JAZYK BAPS2](https://reader035.vdocuments.pub/reader035/viewer/2022081501/56814713550346895db44ce3/html5/thumbnails/25.jpg)
Komunikační funkce
WRITE / READ
D=0,123
<DATA> + <CR>
WRITE PHG, ´Hodnota =´,D
Potry
PHG V24_1 V24_2 V24_3 V24_4
Formát:
Příklad:
READ pozice
MOVE LINEAR EXACT pozice
(Data jsou typu ASCII string)
Literatura: BOSCH GmbH: BAPS2 Programing Inctruction, 1992.