SISUKORD
1. SISSEJUHATUS 32. LABORATOORSED TÖÖD 42. 1. Distribution
Station 4
2.1.1. Eesmärk 4
2.1.2.
Eskiis 4
2.1.3. Seadme
töökirjeldus 4
2.1.4. Funktsionaal
plokkskeem 5
2.1.5. Tegevuskava 6
2.1.6.
Algoritm 9
2.2. Isamasin 13
2.2.1. Eesmärk 13
2.2.2. Eskiis 13
2.2.3. Seadme töökirjeldus 13
2.2.5. Tegevuskava 13
2.2.6. Algoritm 16
2.3.
Mitsubishi RV-2AJ 22
2.3.1. Eesmärk 22
2.3.2. Eskiis 22
2.3.3. Seadme töökirjeldus 22
2.3.4. Funktsionaal plokkskeem 23
2.3.5. Tegevuskava 24
2.3.6. Algoritm 26
2.4.
KUKA 31
2.4.1. Eesmärk 31
2.4.2. Eskiis 31
2.4.3. Seadme töökirjeldus 31
2.4.5. Algoritm 33
3. Ülevaate kasutatud keskkondadest 353.1.
CIROS Mechatronics 35
3.2. CIROS Robotics 37
3.3. sPlan 6.0 38
3.4. COSIMIR
INDUSTRIAL 39
3.5. SIMATIC 42
KOKKUVÕTE 46
1.
SISSEJUHATUS
Antud
aine eesmärk on
robotitehnika tutvustamine kuni erinevate robotite
programmeerimiseni. Kursuse käigus tegeletakse robotitehnika teooria
omandamisega ning praktilise tööga. Praktiliste tööde käigus
tutvustatakse erinevate robotite olemust, nende võimalusi ning nende
programmeerimiseks kasutatavaid erinevaid keskkondi ja testimiseks
simulaatoreid. Lisaks eelnevale on aine eesmärgiks ka
robotitega seonduvate esinevate probleemidega
tutvumine ning omandada kogemusi
nende lahendamisel.
2.
LABORATOORSED TÖÖD
2. 1.
Distribution Station
2.1.1.
Eesmärk
Seadme
programmeerimine vastavalt seadme töökirjeldusele ning koostatud
tegevuskavale. Robotmooduliga, Siemensi kontrolleri
programmeerimiskeelega RTL ning SIMATIC tarkvaraga tutvumine.
2.1.2.
Eskiis
Joonis
1. Seadme Distribution
Station eskiis
2.1.3.
Seadme töökirjeldus
Masina
sisselülitamisel ei ole manipulaatori
käpa asend teada, kõik
ajamid seisavad ja
RESET indikaator on süttinud.
Indikaatorid annavad seadme operaatorile juhiseid. Reset indikaator viitab
sellele, et jätkamiseks tuleb vajutada RESET nuppu. Pärast RESET
nupu vajutamist selle indikaator
kustub ning manipulaatori
käpp liigub algasendisse, milleks on käpa kõige vasakpoolseim asend.
Süttib START nupu indikaator. START nuppu vajutades liigub käpp
kõige parempoolseimasse asendisse ja detail lükkatakse
etteandesilindri mõjul käpa vasakpoolseimasse asendisse nii, et
käpp saab selle haarata olles vasakpoolseimas asendis. Seejärel
liigub manipulaatori käpp vasakpoolseimasse asendisse ja haarab
detaili ning käpp liigub kõige vasakpoolseimasse asendisse, kus
detail vabastatakse. Seejärel käpp liigub uue detaili järgi, kui
seade töötab AUTO režiimis ning kui seade on MANUAL režiimis,
siis jääb ta paremapoolsesse asendisse ning START indikaator
süttib.
2.1.4.
Funktsionaal plokkskeem
Joonis
2. Seadme Distribution
Station funktsionaalne plokkskeem [1]
2.1.5.
Tegevuskava
Joonis
3. Seadme Distribution
Station
programmeerimise tegevuskava
2.1.6.
Algoritm
Vastavalt
ülaltoodud tegevuskava järgi sai koostatud järgnev algoritm
programmis Simatic S7. [2]
OB1 Network :
1 S1 to S2Kui
S1 ja reset vajutatud siis kustub reset
nupp , manipulaatori käpp
liigub
vasakule
ja
siire programmilõiku S2
A
"S1" M0.0
A
"RESET" I1.3 -- Reset
R
"S1" M0.0
R
"IND_RES" Q1.1 -- Reset indikaator
S
"3M1" Q0.3 -- manip käpp vasakule
R
"3M2" Q0.4 -- manip käpp paremale
S
"S2" M0.1
Network:
2 S2 to S3Kui
s2 ja manipulaatori käpp on vasakulsiis manipulaatori käpp seisata,
indikaator
start süttib ja läheme S3-e
A
"S2" M0.1
A
"3B1" I0.4 -- manip käpp vasakul
R
"S2" M0.1
R
"3M1" Q0.3 -- manip käpp vasakule
R
"3M2" Q0.4 -- manip käpp paremale
S
"IND_START" Q1.0 -- Start indikaator
S
"S3" M0.2
Network:
3 S3 to S4Kui
s3 ja start vajutatud siis indikaator start kustub ja
liigume S4
A
"S3" M0.2
A
"START" I1.0 -- Start nupp
R
"S3" M0.2
R
"IND_START" Q1.0 -- Start indikaator
S
"S4" M0.3
Network:
4 S4 to S5Kui
S4 ja detailipäring siis
manipulaator paremale ja lõpuks S5
A
"S4" M0.3
A
"IP . FI" I0.7 -- Detaili
päring R
"S4" M0.3
R
"3M1" Q0.3 -- manip käpp vasakule
S
"3M2" Q0.4 -- manip käpp paremale
S
"S5" M0.4
Network:
5 S5 to S6Kui
S5 ja manipulaatori käpp paremal siis käpp seisata ja liigume S6
A
"S5" M0.4
A
"3B2" I0.5 -- manip käpp paremal
R
"S5" M0.4
R
"3M2" Q0.4 -- manip käpp paremale
S
"S6" M0.5
Network:
6 S6 to S7kui
S6 ja magazinis pole detaile siis Indikaator Q1=1 , indikaator
start=1.
A
"S6" M0.5
A
"3B4" I0.6 -- magazin tühi
S
"IND_Q1" Q1.2 -- Magazin tühi
S
"IND_START" Q1.0 -- Start indikaator
R
"S6" M0.5
S
"S7" M0.6
Network:
7 S6 to S8Kui
s6 ja ei ole tühi siis s8
A
"S6" M0.5
AN
"3B4" I0.6 -- magazin tühi
R
"S6" M0.5
S
"S8" M0.7
Network:
8 S7 to S8Kui
s7 ja
magasin ei ole tühi ja start on vajutatud siis läheme edasi
S8
A
"S7" M0.6
AN
"3B4" I0.6 -- magazin tühi
A
"START" I1.0 -- Start nupp
R
"S7" M0.6
R
"IND_Q1" Q1.2 -- Magazin tühi
R
"IND_START" Q1.0 -- Start indikaator
S
"S8" M0.7
Network:
9 S8 to s9A
"S8" M0.7
R
"S8" M0.7
S
"1M1" Q0.0 -- Detaili etteandmine
S
"S9" M1.0
Network:
10 S6 to S9A
"S6" M0.5
R
"S6" M0.5
S
"1M1" Q0.0 -- Detaili etteandmine
S
"S9" M1.0
Network:
11 s9 to s10Kui
s9 ja detail ette antud siis edasi. manipulaatori käpp paremale.s10
A
"S9" M1.0
A
"1B1" I0.2 --
Etteande silkolb detaili etteandmine
S
"3M1" Q0.3 -- manip käpp vasakule
R
"3M2" Q0.4 -- manip käpp paremale
R
"S9" M1.0
R
"1M1" Q0.0 -- Detaili etteandmine
S
"S10" M1.1
Network:
12 S10 to s11Kui
s10 ja manipulaatori käpp on vasakul, siis detaili haaaramine ja
S11.
A
"S10" M1.1
A
"3B1" I0.4 -- manip käpp vasakul
R
"3M1" Q0.3 -- manip käpp vasakule
R
"1M1" Q0.0 -- Detaili etteandmine
R
"2M2" Q0.2 -- Detaili eemaldamine sisse lülitatud
S
"2M1" Q0.1 -- Vaakumpumba sisse lülitamine
R
"S10" M1.1
S
"S11" M1.2
Network:
13 S11 to s12Kui
s11 ja detail haaratud siis detaili etteandmise lõpp ja manipulaator
liigub
paremale.
Siis S12
A
"S11" M1.2
A
"2B1" I0.3 -- Detail haaratud
R
"S11" M1.2
R
"1M1" Q0.0 -- Detaili etteandmine
R
"2M1" Q0.1 -- Vaakumpumba sisse lülitamine
S
"3M2" Q0.4 -- manip käpp paremale
S
"S12" M1.3
Network:
14 S12 to S13Kui
s12 ja käpp paremal siis manip käpp seisma, detail vabastada ja S13
A
"S12" M1.3
A
"3B2" I0.5 -- manip käpp paremal
R
"3M2" Q0.4 -- manip käpp paremale
R
"S12" M1.3
R
"2M1" Q0.1 -- Vaakumpumba sisse lülitamine
S
"2M2" Q0.2 -- Detaili eemaldamine sisse lülitatud
S
"S13" M1.4
Network:
15 S13 to s14Kui
s13 ja detail vabastatud siis manip käpp liigub vasakule. Detaili
vabastamise
lõpp ja liigume S14.
A
"S13" M1.4
AN
"2B1" I0.3 -- Detail haaratud
R
"S13" M1.4
R
"2M2" Q0.2 -- Detaili eemaldamine sisse lülitatud
S
"3M1" Q0.3 -- manip käpp vasakule
S
"S14" M1.5
Network:
16 S14 to S15Kui
manipulaatori käpp on vasakul siis käpp seisata. ja s15
A
"S14" M1.5
A
"3B1" I0.4 -- manip käpp vasakul
R
"S14" M1.5
R
"3M1" Q0.3 -- manip käpp vasakule
R
"3M2" Q0.4 -- manip käpp paremale
S
"S15" M1.6
Network:
17 S15 to S4Kui
Automaatne valitud siis s4
A
"S15" M1.6
AN
"AUT_MAN" I1.2 -- Automaatne_manuaalne
R
"S15" M1.6
S
"S4" M0.3
Network:
18 S15 to s3Kui
manuaalne, siis s3 tagasi
A
"S15" M1.6
A
"AUT_MAN" I1.2 -- Automaatne_manuaalne
R
"S15" M1.6
A
"IND_START" Q1.0 -- Start indikaator
S
"S3" M0.2
Network:
19 Stop nupu vajutamineKui
stop nupp vajutatud siis kõik väljundid nullida , ind reset süttib
AN
"STOP" I1.1 -- Stop nupp
JNB
_001
L
2
T
QW 0
L
W#16#100
T
MW 0
_001:
NOP 0
OB100Network:
1Kõik
väljundid nullida ja S1=1 ind_reset=1
L
2
T
QW 0
L
W#16#100
T
MW 0
Ülaltoodud
2 algoritmi
laeti kontrollerisse Sišššemens C300 ning selleks
konfigureeriti kontroller
korrektse töö jaoks järgnevalt: Simatec
tarkvaras avati vastav projekt, seadistati
Hardware
nii, et IO
seadmed oleks aadressidel 0...1 ning laeti vastav programm
kontrollerisse.
2.2.
Isamasin
2.2.1.
Eesmärk
Kasutades
Siemens S7
300C kontrollerit programmeerida pneumoajamitega
seade ISAMASIN.
2.2.2.
Eskiis
Joonis
4. Seadme Isamasin
eskiis
2.2.3.
Seadme töökirjeldus
Seadme
pingestamisel hakkab reset indikaator põlema.Reset nupu vajutamisega
liigub algasendisse A ning reset indikaator kustub. Start indikaator
läheb põlema. Start nupu vajutamisel kustub stardi indikaator ning liigub detaili kohale ja haarab detailist. Kui detail on haaratud
siis liigub töötsooni, vabastab detaili ning liigub punkti C. Ootab
punktis C kuni töötlus valmis ning liigub punkti B ja viib valmis
toote punkti D. Ja siis liigub uuesti algusesse ja
tsükkel kordub.
Stop
indikaator läheb põlema siis kui on vajutatud Stop nuppu.Stop nupu
vajutuse peale läheb ka reset nupp põlema .2.2.4.
Funktsionaal plokkskeem
2.2.5.
Tegevuskava
Joonis 5.
Seadme Isamasin
programmeerimise tegevuskava
2.2.6.
Algoritm
Network:
1 AJAVIIDE1AJAVIIDE1
A
"AEG1_START" M10.0 --
AJAVIITE 1
KÄIVITAMINE L
S5T#100MS
SD
"AJAVIIDE1" T0
Network:
2 AJAVIIDE2AJAVIIDE2
A
"AEG2_START" M10.1 -- AJAVIITE2 KÄIVITAMINE
L
S5T#1S
SD
"AJAVIIDE2" T1
Network:
3 STEP1=>STEP2KUI
STEP1=1 JA RESET ON VAJUTATUD SIIS MANIPULAATOR LIIGUB ÜLES JA SIIRE
PR
LÕIKU
STEP2
A
"STEP1" M0.0
A
"RESET" I0.3
R
"STEP1" M0.0
R
"MANIPALLA" Q1.1 -- MANIPULAATOR LIIGUB ALLA
S
"MANIPYLES" Q1.0 -- MANIPULAATOR ÜLESSE
S
"STEP2" M0.1
Network:
4 STEP2=>STEP3KUI
STEP2=1 JA MANIPULAATORI KÄPP ON
ÜLEVAL , SIIS KÄPP LIIGUB VÄLJA
JA SIIRE PR
LÕIKU
STEP3
A
"STEP2" M0.1
A
"MANIPYLEVAL" I1.0
R
"STEP2" M0.1
R
"MANIPSISSE" Q1.5 --
IMINAPP LIIGUB
KESKPUNKTI POOLE
S
"MANIPVALJA" Q1.4 -- IMINAPP LIIGUB KESKPUNKTIST EEMALE
S
"STEP3" M0.2
Network:
5 STEP3=> STEP4 KUI
STEP3=1 JA MANIPULAATORI KÄPP VÄLJAS, SIIS KÄPP LIIGUB VASAKULE JA
SIIRE PR
LÕIKU
STEP4
A
"STEP3" M0.2
A
"MANIPVALJAS" I1.5
R
"STEP3" M0.2
R
"MANIPPAREMALE" Q1.2 -- MANIPULAATOR KEERAB PAREMALE
S
"MANIPVASAKULE" Q1.3 -- MANIPULAATOR KEERAB VASAKULE
S
"STEP4" M0.3
Network:
6 STEP4=>STEP5KUI
STEP4=1 JA MANIPULAATORI KÄPP VASAKUL SIIS KÄPP PEATATDA,
VAAKUM VÄLJA
START_IND=1,RESET_IND=0,
SIIRE PR LÕIK STEP5
A
"STEP4" M0.3
A
"MANIPVASAKUL" I1.2
R
"STEP4" M0.3
R
"VAAKUM" Q1.6
R
"RESET_IND" Q0.1
S
"START_IND" Q0.0
S
"STEP5" M0.4
Network:
7 STEP5=>STEP6KUI
STEP5=1 JA START NUPP ON VAJUTATUD,SIIS KÄPP LIIGUB SISSE JA SIIRE
PR LÕIKU
STEP6
A
"STEP5" M0.4
A
"START" I0.0
R
"STEP5" M0.4
R
"START_IND" Q0.0
R
"MANIPVALJA" Q1.4 -- IMINAPP LIIGUB KESKPUNKTIST EEMALE
S
"MANIPSISSE" Q1.5 -- IMINAPP LIIGUB KESKPUNKTI POOLE
S
"STEP6" M0.5
Network:
8 STEP6=> STEP7 KUI
STEP6=1 JA KÄPP ON SEES SIIS KÄPP LIIGUB PAREMALE JA SIIRE PR LÕIKU
STEP7
A
"STEP6" M0.5
A
"MANIPSEES" I1.4
R
"STEP6" M0.5
R
"MANIPVASAKULE" Q1.3 -- MANIPULAATOR KEERAB VASAKULE
S
"MANIPPAREMALE" Q1.2 -- MANIPULAATOR KEERAB PAREMALE
S
"STEP7" M0.6
Network:
9 STEP7=>STEP8KUI
STEP7=1 JA KÄPP ON PAREMAL, SIIS KÄPP LIIGUB ALLA JA SIIRE PR LÕIKU
STEP8
A
"STEP7" M0.6
A
"MANIPPAREMAL" I1.3
R
"STEP7" M0.6
R
"MANIPYLES" Q1.0 -- MANIPULAATOR ÜLESSE
S
"MANIPALLA" Q1.1 -- MANIPULAATOR LIIGUB ALLA
S
"STEP8" M0.7
Network:
10 STEP8=STEP9KUI
STEP8=1 JA MANIPULAATOR ON ALL, SIIS VAAKUMPUMP SISSE,
AJAVIIDE KÄIVITADA
JA
SIIRE
PR LÕIKU STEP9
A
"STEP8" M0.7
A
"MANIPALL" I1.1
R
"STEP8" M0.7
S
"VAAKUM" Q1.6
S
"AEG2_START" M10.1 -- AJAVIITE2 KÄIVITAMINE
S
"STEP9" M1.0
Network:
11 STEP9=>STEP10KUI
STEP9=1 JA AJAVIIDE ON LÄBI, SIIS AJAVIIDE PEATATADA, KÄPP LIIGUB
ÜLES JA
SIIRE
PR LÕIKU10
A
"STEP9" M1.0
A
"AJAVIIDE2" T1
R
"STEP9" M1.0
R
"AEG2_START" M10.1 -- AJAVIITE2 KÄIVITAMINE
R
"MANIPALLA" Q1.1 -- MANIPULAATOR LIIGUB ALLA
S
"MANIPYLES" Q1.0 -- MANIPULAATOR ÜLESSE
S
"STEP10" M1.1
Network:
12 STEP10=>STEP11KUI
STEP10=1 KÄPP ON ÜLEVAL, SIIS MANIPULAATOR LIIGUB VASAKULE, SIIRE
PR LÕIKU
STEP11
A
"STEP10" M1.1
A
"MANIPYLEVAL" I1.0
R
"STEP10" M1.1
R
"MANIPPAREMALE" Q1.2 -- MANIPULAATOR KEERAB PAREMALE
S
"MANIPVASAKULE" Q1.3 -- MANIPULAATOR KEERAB VASAKULE
S
"STEP11" M1.2
Network:
13 STEP11=>STEP12KUI
STEP11=1 JA KÄPP ON VASAKUL, SIIS LIIGUB KÄPP VÄLJA JA SIIRE PR
LÕIKU
STEP12
A
"STEP11" M1.2
A
"MANIPVASAKUL" I1.2
R
"STEP11" M1.2
R
"MANIPSISSE" Q1.5 -- IMINAPP LIIGUB KESKPUNKTI POOLE
S
"MANIPVALJA" Q1.4 -- IMINAPP LIIGUB KESKPUNKTIST EEMALE
S
"STEP12" M1.3
Network:
14 STEP12=>STEP13KUI
STEP12=1 JA KÄPP ON VÄLJAS SIIS LIIGUB MANIPULAATORI KÄPP ALLA JA
SIIRE PR
LÕIKU
STEP13
A
"STEP12" M1.3
A
"MANIPVALJAS" I1.5
R
"STEP12" M1.3
R
"MANIPYLES" Q1.0 -- MANIPULAATOR ÜLESSE
S
"MANIPALLA" Q1.1 -- MANIPULAATOR LIIGUB ALLA
S
"STEP13" M1.4
Network:
15 STEP13=>STEP14KUI
STEP13=1 JA KÄPP ON ALL, SIIS VAAKUMPUMP VÄLJA,AJAVIIDE SISSE JA
SIIRE PR
LÕIKU
STEP14
A
"STEP13" M1.4
A
"MANIPALL" I1.1
R
"STEP13" M1.4
R
"VAAKUM" Q1.6
S
"AEG2_START" M10.1 -- AJAVIITE2 KÄIVITAMINE
S
"STEP14" M1.5
Network:
16 STEP14=>STEP15KUI
STEP14=1 JA AJAVIIDE LÄBI, SIIS KÄPP ÜLES, AJAVIIDE VÄLJA JA
SIIRE PR LÕIKU
STEP15
A
"STEP14" M1.5
A
"AJAVIIDE2" T1
R
"STEP14" M1.5
R
"AEG2_START" M10.1 -- AJAVIITE2 KÄIVITAMINE
R
"MANIPALLA" Q1.1 -- MANIPULAATOR LIIGUB ALLA
S
"MANIPYLES" Q1.0 -- MANIPULAATOR ÜLESSE
S
"STEP15" M1.6
Network:
17 STEP15=>STEP16KUI
STEP15=1 JA KÄPP ON ÜLEVAL, SIIS KÄPP LIIGUB SISSE JA SIIRE PR
LÕIKU STEP16
A
"STEP15" M1.6
A
"MANIPYLEVAL" I1.0
R
"STEP15" M1.6
R
"MANIPVALJA" Q1.4 -- IMINAPP LIIGUB KESKPUNKTIST EEMALE
S
"MANIPSISSE" Q1.5 -- IMINAPP LIIGUB KESKPUNKTI POOLE
S
"STEP16" M1.7
Network:
18 STEP16=>STEP17KUI
STEP16=1 JA KÄPP ON SEES, SIIS KÄPP LIIGUB ALLA JA SIIRE PR LÕIKU
STEP17
A
"STEP16" M1.7
A
"MANIPSEES" I1.4
R
"STEP16" M1.7
R
"MANIPYLES" Q1.0 -- MANIPULAATOR ÜLESSE
S
"MANIPALLA" Q1.1 -- MANIPULAATOR LIIGUB ALLA
S
"STEP17" M2.0
Network:
19 STEP17=>STEP18KUI
STEP17=1 JA MANIP ON ALL, SIIS VAAKUMPUMP SISSE, AJAVIIDE2 KÄIVITADA
JA
SIIRE
PR LÕIKU STEP18
A
"STEP17" M2.0
A
"MANIPALL" I1.1
R
"STEP17" M2.0
S
"VAAKUM" Q1.6
S
"AEG2_START" M10.1 -- AJAVIITE2 KÄIVITAMINE
S
"STEP18" M2.1
Network:
20 STEP18=>STEP19KUI
STEP18=1 JA AJAVIIDE2 LÄBI, SIIS AJAVIIDE VÄLJA, KÄPP ÜLES JA
SIIRE PR
LÕIKU
STEP19
A
"STEP18" M2.1
A
"AJAVIIDE2" T1
R
"STEP18" M2.1
R
"AEG2_START" M10.1 -- AJAVIITE2 KÄIVITAMINE
R
"MANIPALLA" Q1.1 -- MANIPULAATOR LIIGUB ALLA
S
"MANIPYLES" Q1.0 -- MANIPULAATOR ÜLESSE
S
"STEP19" M2.2
Network:
21 STEP19=>STEP20KUI
STEP19=1 JA KÄPP ON ÜLEVAL, SIIS KÄPP LIIGUB PAREMALE JA SIIRE PR
LÕIKU
STEP20
A
"STEP19" M2.2
A
"MANIPYLEVAL" I1.0
R
"STEP19" M2.2
R
"MANIPVASAKULE" Q1.3 -- MANIPULAATOR KEERAB VASAKULE
S
"MANIPPAREMALE" Q1.2 -- MANIPULAATOR KEERAB PAREMALE
S
"STEP20" M2.3
Network:
22 STEP20=>STEP21KUI
STEP20=1 JA KÄPP ON PAREMAL, SIIS KÄPP LIIGUB VÄLJA JA SIIRE PR
LÕIKU
STEP21
A
"STEP20" M2.3
A
"MANIPPAREMAL" I1.3
R
"STEP20" M2.3
R
"MANIPSISSE" Q1.5 -- IMINAPP LIIGUB KESKPUNKTI POOLE
S
"MANIPVALJA" Q1.4 -- IMINAPP LIIGUB KESKPUNKTIST EEMALE
S
"STEP21" M2.4
Network:
23 STEP21=>STEP22KUI
STEP21=1 JA KÄPP ON VÄLJAS, SIIS KÄPP LIIGUB ALLA JA SIIRE PR
LÕIKU STEP22
A
"STEP21" M2.4
A
"MANIPVALJAS" I1.5
R
"STEP21" M2.4
R
"MANIPYLES" Q1.0 -- MANIPULAATOR ÜLESSE
S
"MANIPALLA" Q1.1 -- MANIPULAATOR LIIGUB ALLA
S
"STEP22" M2.5
Network:
24 STEP22=>STEP23KUI
STEP22=1 JA KÄPP ON ALL, SIIS VAAKUM VÄLJA, AJAVIIDE2 SISSE JA
SIIRE PR
LÕIKU23
A
"STEP22" M2.5
A
"MANIPALL" I1.1
R
"STEP22" M2.5
R
"VAAKUM" Q1.6
S
"AEG2_START" M10.1 -- AJAVIITE2 KÄIVITAMINE
S
"STEP23" M2.6
Network:
25 STEP23=>STEP24KUI
STEP23=1 JA AJAVIIDE LÄBI, SIIS AJAVIIDE2 VÄLJA, KÄPP ÜLES JA
SIIRE PR
LÕIKU
STEP24
A
"STEP23" M2.6
A
"AJAVIIDE2" T1
R
"STEP23" M2.6
R
"AEG2_START" M10.1 -- AJAVIITE2 KÄIVITAMINE
R
"MANIPALLA" Q1.1 -- MANIPULAATOR LIIGUB ALLA
S
"MANIPYLES" Q1.0 -- MANIPULAATOR ÜLESSE
S
"STEP24" M2.7
Network:
26 STEP24=>STEP25KUI
STEP24=1 JA KÄPP ON ÜLEVAL, SIIS KÄPP VASAKULE JA SIIRE PR LÕIKU
STEP25
A
"STEP24" M2.7
A
"MANIPYLEVAL" I1.0
R
"STEP24" M2.7
R
"MANIPPAREMALE" Q1.2 -- MANIPULAATOR KEERAB PAREMALE
S
"MANIPVASAKULE" Q1.3 -- MANIPULAATOR KEERAB VASAKULE
S
"STEP25" M3.0
Network:
27 STEP25=>STEP5KUI
STEP25=1 JA KÄPP ON VASAKUL SIIS SIIRE PR LÕIKU STEP5
A
"STEP25" M3.0
A
"MANIPVASAKUL" I1.2
R
"STEP25" M3.0
S
"STEP5" M0.4
Network:
28 STOPP AJAMID
SEISATAKSE, VAAKUM JÄÄB SISSE
AN
"STOP" I0.1
JNB
_100
L
W#16#100
T
MW 0
L
W#16#0
T
MW 1
L
W#16#240
T
QW 0
_100:
NOP 0
2.3.
Mitsubishi RV-2AJ
2.3.1.
Eesmärk
Kasutades
Mitsubishi CR1-571 kontrollerit ja COSIMIR Industrial keskkonda, et
programmeerida
robot RV-2AJ.
2.3.2.
Eskiis
Joonis
6. Mitsubishi RV-2AJ
eskiis
2.3.3.
Seadme töökirjeldus
Robot
on algasendis ja ootab detaili. Kui detail on saabunud siis viib
värvikontrolli. Siis liigub silindri kõrvale ning tuvastab värvi.
Seejärel tõstab detaili augutuvastusse, kus keeratakse detail
õigesse asendisse. Seejärel viiakse
silinder kohta, kus keeratakse
kaan peale. Vastavalt värvile viiakse õigesse magasini. Seejärel
naaseb robot algasendisse. Must silinder viiakse tagumisse magasini,
teised esimesse.
2.3.4.
Funktsionaal plokkskeem
Joonis
7. Mitsubishi RV-2AJ
funktsionaalne plokkseem
2.3.5.
Tegevuskava
Joonis
8. Mitsubishi RV-2AJ
tegevuskava
2.3.6.
Algoritm
Järgnevalt
toodud välja antud seadme programm.
10 'defineerime
andurid 20 DEF IO PART_AV=BIT,8 'DETAILI
TUVASTUS 30 DEF IO B1=BIT,10 'VÄRVI TUVASTUS
40 DEF IO
B2=BIT,9 'AVA TUVASTUS
50 'defineerime muutujad
60 DEF
INTE KIIRE '
MUUTUJA DEFINEERMINE
70 KIIRE = 100 'MUUTUJA
ALGVÄÄRTUSTAMINE
80 DEF INTE AEGLANE 'MUUTUJA DEFINEERMINE
90
AEGLANE = 40 'MUUTUJA ALGVÄÄRTUSTAMINE
100 DEF INTE
M1 'muutuja initsialiseerimine
110 M1=0 'muutuja
algväärtustamine
120 DEF POS POORE 'positsiooni
defineermine
130 POORE=(+0.0,+0.0,+0.0,+1.0,+0.0) 'positsioon käpa
orientatsiooni muutmiseks
140
'PÕHIPROGRAMMI ALGUS
150 *ALGUS 'SILT ALGUS
160
MVS P1 'LIIGUB P1
170 P11.A=0.0 'P11 ORIENTATSIOONI
NULLIMINE
171 P11.Z=161.4 'P11 positsiooni kõrguse
algväärtustamine
172 P12.A=-90.0/1.57 'P12 ORIENTATSIOONI
V22RTUSTAMINE
173 P13.A=-90.0/1.57 'P13 ORIENTATSIOONI
V22RTUSTAMINE
174 P10.A=0.0 'P10 ORIENTATSIOONI NULLIMINE
180
P9.Z=155.8 'P9 positsiooni kõrguse algväärtustamine
190
HCLOSE 1 '
HAARATS LAHTI
200 SPD KIIRE 'SEAN KIIRUSE KIIRE
210
'DETAILI OLEMASOLU KONTROLL
220 IF (PART_AV = 1) THEN MVS P2
ELSE GOTO *ALGUS
'KUI DETAIL OLEMAS, 'SIIS LIIGUB P2-E,
230
'VASTASEL JUHUL LIIGUB sildile
OOTA 240
'S1
250 SPD AEGLANE 'SEAN KIIRUSE AEGLANE
260 MVS
P3 'LIIGUB P3
270 HOPEN 1 'SULGEB HAARATSI
280
'S2
290 DLY 1 'AJAVIIDE 1S
300 MVS P2 'LIIGUN
POSITSIOONI P2
310 SPD KIIRE 'SEAN KIIRUSE KIIRE
320 MVS
P4 'LIIGUN POSITSIOONI P4
330 SPD AEGLANE 'SEAN KIIRUSE
AEGLANE
340
'S3
350 MVS P5 'LIIGUN POSITSIOONI P5
360 HCLOSE
1 'AVAB HAARATSI
370 MVS P4 'LIIGUN POSITSIOONI P4
380
'S4
390 SPD KIIRE 'SEAN KIIRUSE KIIRE
400 MVS P6 'LIIGUN
POSITSIOONI P6
410 SPD AEGLANE 'SEAN KIIRUSE AEGLANE
420 MVS
P7 'LIIGUN POSITSIOONI P7
430
'DETAILI VÄRVUSE KONTROLL
432'kui on must detail, siis M saab
väärtuse 1
440
IF (B1 = 0) THEN GOTO *TING1 ELSE GOTO *TING2
441*TING1 'silt
TING1
442 M1=1 'M1 muutuja yheks
443 GOTO *
JUMP 'hyppa
sildile JUMP
444 *TING2
445 M1=0
449 *JUMP
450
'MUUTUJA KONTROLL
460 IF (M1 = 1) THEN P9.Z=P9.Z-2.5 ELSE
P9.Z=P9.Z 'kui on must detail, siis langetame käppa 2.5mm võrra
461
IF (M1 = 1) THEN P11.Z=P11.Z-3.0 ELSE P11.Z=P11.Z
470
'S5
480 DLY 1 'AJAVIIDE 1S
490 MVS P6 'LIIGUN
POSITSIOONI P6
500 SPD KIIRE 'SEAN KIIRUSE KIIRE
510 MVS
P8 'LIIGUN POSITSIOONI P8
520 SPD AEGLANE 'SEAN KIIRUSE
AEGLANE
530 MVS P9 'LIIGUN POSITSIOONI P9
540 SPD
KIIRE 'SEAN KIIRUSE KIIRE
550 HOPEN 1 'HAARATS KINNI
560
DLY 0.5 'AJAVIIDE 500MS
570
'S6
580 MVS P8 'LIIGUN POSITSIOONI P8
590 MVS
P10 'LIIGUN POSITSIOONI P10
600 SPD AEGLANE 'SEAN KIIRUSE
AEGLANE
610 MVS P11 'LIIGUN POSITSIOONI P11
620 DLY
0.5 'AJAVIIDE 500MS
630
'AVA ASUKOHA
TUVASTAMINE 631 *AYES 'kuni pole ava tuvastatud,
siis keerame käppa
641 IF (B2=0) THEN GOTO *NO 'ja suurendame
käpa orientatsiooni
643 P11=P11+POORE 'P11-le liidetakse
POORE juurde, et suurendada ROLL-i
660 MVS P11 'liigub
positsiooni p11
661 GOTO *AYES 'ning liigume P11
662 *NO
663
P10.A=P11.A+0.56 'salvestame leitud poordenurga ka P10-s
680
'S7
690 MVS P10 'LIIGUN POSITSIOONI P10
700
P12.A=P10.A 'positsioonis P12 keeratakse käppa nii, et silinder
läheks
710 P13.A=P10.A '
pulga otsa
720 MVS
P12 'LIIGUN POSITSIOONI P12
730 DLY 0.5 'AJAVIIDE 500MS
740
'S8
750 MVS P13 'LIIGUN POSITSIOONI P13
760 HCLOSE
1 'HAARATS LAHTI
770 DLY 0.5 'AJAVIIDE 500MS
780
'S9
790 MVS P12 'LIIGUN POSITSIOONI P12
800 DLY
0.5 'AJAVIIDE 500MS
810 MVS P14 'LIIGUN POSITSIOONI
P14
820 MVS P15 'LIIGUN POSITSIOONI P15
830
'S10
840 HOPEN 1 'HAARATS KINNI
850 DLY 0.5 'AJAVIIDE
500MS
860 MVS P14 'LIIGUN POSITSIOONI P14
870
'S11
880 SPD KIIRE 'SEAN KIIRUSE KIIRE
890 DLY
0.5 'AJAVIIDE 500MS
900 MVS P20 'LIIGUN POSITSIOONI P20
910
'MUUTUJA KONTROLL
920 IF (M1=1) THEN MVS P18 ELSE MVS P16 'kui on
must detail, siis liigutakse P18
930
'S12
940 SPD AEGLANE 'SEAN KIIRUSE AEGLANE
950
'MUUTUJA KONTROLL 1
960 IF (M1=1) THEN MVS P19 ELSE MVS P17 'kui
on must detail, siis liigutakse P18-st
970
'S13
980 HCLOSE 1 'HAARATS LAHTI P19-nesse, vastasel juhul
P16 -> P17
990 DLY 0.5 'AJAVIIDE 500MS
1000
'MUUTUJA KONTROLL 2
1010 IF (M1=1) THEN MVS P18 ELSE MVS P16 'kui
on must detail, siis P19->P18
1020
'S14
1030 SPD KIIRE 'SEAN KIIRUSE KIIRE
1040 MVS
P20 'LIIGUN POSITSIOONI P20 'vastasel juhul P17->P16
1050
GOTO *ALGUS 'Mine sildile ALGUS
Seadme
programmeerimise käigus selgus, et andurid B1 ja B2 on vastupidi
ning manipulaatori käpa sulgemise ja
avamise ajamid olid samuti
vastupidi seatud. Ka programmeerimise käigus andis kontroller
mitmeid kordi veateateid, mille tähenduste kohta uurisime lähemalt
vastavas juhendist. Ennem ülaloleva programmi kontrollerisse
laadimist tutvusime RV-2AJ
Teach board -iga, millega oli võimal kõiki
operatsioone teha, mida ka ülal on kasutatud. Nt programmeerimine,
manipulaatori liigutamine, positsioonide koordinaatide tuvastamine.
Joonis Teach board-ist on joonisel 9. Joonis 10 kujutab roboti
kontrollerit, millega juhiti robotit. Joonisel on võti keeratud Ext
mode-i, mis
laseb kontrollerit programmeerida läbi arvuti. Teach
mode on Teach boardi jaoks ning OP mode on kontrolleris olevate
programmide jooksutamiseks.
Chng disp nupu abil saab infot hetke
programmi, roboti kiiruse ning programmi hetke reanumbri kohta. SVO
ON kuvab servode seisu – kui süttinud siis servod on töövalmis.
Joonis
9. Mitsubishi RV-2AJ
roboti Teach board
Teach
board-i kasutamiseks peab
deadman
lülitit,
mis asub puldi tagakülje, all hoidma keskmises asendis. Nuppudega
TOOL , JOINT ja XYZ
saab valitakse koordinaadistikku, mille järgi manipulaatorit
liigutama hakkatakse.
Hoides all nuppu
STEP /
MOVE ja vajutades
telgede ja pöördenurkade tähistega tähistatud
nuppe saab liigutada
manipulaatorit. Kiiruse muutmiseks on nupud FORWARD ja BACKWARD. MENU
nupuga pääseb menüüsse, kus on võimalik programmeerida(TEACH),
koodi kontrollida(RUN) ja muid funktsioone kasutada. Menüüs
liikumiseks kasutatakse tumehalle nooltega nuppe, mis asuvad puldi
nupustikul paremal.
Joonis
10. Mitsubishi CR1-571
2.4. KUKA
2.4.1.
Eesmärk
Programmeerida
Pisa torni sarnane torn erinevatest silindritest. Tutvuda KUKA
juhtimise ja programmeerimise ning KRL programmeerimiskeelega.
2.4.2.
Eskiis
Joonis
11. Roboti KUKA eskiis
2.4.3.
Seadme töökirjeldus
Seadme
käivitamisel on manipulaator algasendis. KUKA Teach board-ilt
pannakse tööreziim AUT peale, misjärel manipulaator haarab detaili
ja paneb selle ettenähtud torni kohale. Seejärel võetakse järgmine
detail ja pannakse võetud detail torni kohale, aga
seekord eelmise
silindri peal 2mm nihutatud Y telje suunas,e t tekiks Pisa torni
meenutav kalle. Nii tehakse 4 silindriga kokku ja viimaks
manipulaator ajab torni ümber.
Teach
board-iga juhiti manipulaatori haarats vastavasse positsiooni ning
seejärel arvutiga vajutati MOTION nuppu, mis salvestab hetke
positsiooni. Nii salvestati kõikide silindrite haaramiseks vajaliku
positsioonid ning torni positsioon ning torni iga taseme jaoks
positsioon. Teach board-ilt programmi jooksutamiseks panid AUT režiim
ning rohelise nupuga board-i tagaküljel sai programmi sammhaaval
edasi lasta (STEP reziim aktiveeritud) ja kontrollida programmi tööd.
Haaratsi sisse ja välja lülitamiseks valiti COMMANDS-
LOGIC -OUT-OUT,
kus sai vahetada haaratsi seisu. Haaratsi seisu vahetamiseks peab nii
avavat, kui ka sulgevad releed lülitama vastavasse seisu, nt
GripperClose=1 ja GripperOpen=0. Eelnevat tutvustab joonis 12.
Joonis
12. Haaratsiga
sulgemine -
avamine Manipulaatori
liigendite koordinaatide vaatamiseks on
MONITOR -i funktsionaalsus,
kus saab näha karteesiani ja telgede järgi liigendite asendeid
jälgida. Joonisel 13 on toodud MONITOR-i funktsionaaluse kujutis.
Joonis
13. Liigendite
asendid
Kui
robotil tekib mingi viga, siis antakse sellest teada vastaval
tabloo .
Kui tekib viga, siis pult enam ei reageeri ja peab veateate
tunnustama enne, kui jätkata saab. Antud veateade on näha joonisel
14.
Joonis
14. Vea- ning
tavateadete tabloo
Joonis
15. Teach board
Ülaltoodud
joonisel 15 on näha värvidega tähistatud nupud – punane nupp
muudab tööreziimi, siniste nuppudega saab muuta liigendite asendit
ning rohelisega tähistatud nupuga saab ridahaaval programmis edasi
liikuda (kui valitud sammhaaval liikumise reziim).
2.4.5.
Algoritm
Joonis
16. Pisa
torni programmi kood
3.
Ülevaate kasutatud keskkondadest
Järgnevalt
antakse põgus ülevaade praktika ajal kasutatud
tarkvara keskkondadest ning nende tähtsamatest kasutatud funktsioonidest.
3.1. CIROS
Mechatronics
Keskkonda
CIROS Mechtronics [3] kasutati robotimooduli Distribution Station
simuleerimiseks. Algselt avati antud mooduli
reference
model,
mis andis väga selge ülevaate mooduli tööst. Pärast antud
moodulile programmi kirjutamist avati samas programmis
user model,
millega sai simuleerida kirjutatud programmi tööd. Eelnev näha
vastavalt joonisel 17 ja joonisel 18. Selleks kopeeriti kirjutatud
programmi projektikaust My
documents /CIROS Mechatronics/S7/ kausta
alla. Programmi kirjutamiseks kasutati tarkvara SIMATIC
manager .
Joonis
17. CIROS Mechatronics reference model-i avamineJoonis
18. CIROS Mechatronics user model-i avamineCIROS
Mechatronics tarkvaras kontrolliti simuleerimist erinevate käskudega,
mis näha joonisel 19.
Joonis
19. CIROS Mechatronics keskkond
3.2. CIROS
Robotics
Keskkonda
CIROS Robotics [4] kasutati roboti Mitsubishi RV-2AJ käitumise
simuleerimiseks. Keskkonna avamisel tuli valida Models, MPS robot
stations, MPS-RobotAssemblyStation,
Open user model. Tekkis
ekraanile roboti visualisatsioon ning selle andurite ning sisendite ja
manipulaatori käpa seisunditest. Simuleerimiseks
käsud on näha joonisel 20. Jooniselt näha ka lahter, kuhu
kirjutatakse programmi kood keeles MELFAIV ning positsioonide
sisestamislahter.
Joonis
20. CIROS Robotics simuleerimiskäsudKasulikeks
käskudeks osutusid Renumber, mis
lisas koodiridadele vajalikud
ridade
numbrid ette.
Project Management aknast saab täpsustada
programmi .mb4 ning .pos faile. Fail .mb4 on ettenähtud
programmikoodi jaoks ning .pos positsioonide loetelu jaoks. Joonis 21
kajastab eelnevaid funktsioone.
Joonis
21. CIROS Robotics Project Management
3.3. sPlan
6.0
Joonis
22. Keskkond sPlan 6.0Joonisel
22 näha tarkvara sPlan, mille abil koostati erinevate projektide
tegevuskavad ja
funktsionaalsed plokkskeemid.
3.4.
COSIMIR INDUSTRIAL
MITSUBISHI
RV-2AJ programmeerimiseks arvuti ja kontrolleri CR1-571 vahendusel
kasutasime COSIMIR INDUSTRIAL keskkonda, mis on CIROS keskkonna
eelkäija. Kontrollerisse programmi sisestamiseks tuleb eelnevalt
luua uus Projekt -> File ->Project Wizard. Projekti nime
andmine ja see järel tuleb valida kasutatav robot.
Joonis
23. COSIMIR Industrial
keskkond
Kontrolleriga side loomiseks
tuleb valida
Extras
->
Settings ->
Communication Port.Joonis
24. Pordi seadetesse
sisenemine
Communication
Port’i
aknas valida
vastava roboti jaoks nõutavad
seaded . Antud juhul RV-2AJ puhul
valisime
A - and E - Types ,
Port:
COM2,
Baud rate :
38.4k ja teised seaded jäävad nii algväärtustele.
Joonis
25. Communication
Port settingsKui
Communication
Port’i seaded paika
pandud, võib kontrollida kontrolleri ühendust noolega
näidatud nupul.
Joonis
26. Kontrolleri ja
arvuti ühenduse kontrollimine
Kui
ühendus olemas, tuleb kontrollida
Project
Management’st
millised MB4 ja POS failid seal
Source
Fail’
ides asuvad ja
vajadusel need õigetega asendada.
Joonis
27. Project
Management-> Source Files
Programmi
Online
mode’s olles saab
Jog Operation aknas
muuta roboti
asukohta (koordinaate).
Joonis
28. Jog Operation aken
3.5.
SIMATIC
SIMATIC
keskkonnas uue projekti tegemiseks tuleb
kõigepealt valida CPU
(Joonis 29).
Joonis
29. CPU valimine
Järgmiseks
valida Blocki nimi (Joonis 30).
Joonis
30. Blocki valimine
Seejärel
panna oma projektile nimi ning projekt on koostatud (Joonis 31).
Joonis
31. Projekti nime
sisestamine
Seejärel
avaneb selline aken (Joonis 32). TN3_DISTR -> SIMATIC 313C-2DP ->
CPU 313C-2-DP -> S7 Prgogram(1) ->
Blocks . Seal on näha enda
loodud Blocki OB1. Kahekordsel klikkimisel avaneb aken, kuhu saab
kirjutada põhiprogrammi ( Joonis 33).
OB100
lisatakse ise – parem klõps ->
Insert New Project -> Organization Block. Sellesse Blocki lisatakse programmi algseadistus.
Joonis
32. Blockide asukoht
Joonis
33. OB1 -
programmitekst
Mälupiirkonna
seadistamiseks - TN3_DISTR -> SIMATIC 313C-2DP. Selles kaustas
avada Hardware (Joonis 34).
Joonis
34. Mälupiirkonna
seadistamine
Sümbolite
määramiseks - TN3_DISTR -> SIMATIC 313C-2DP -> CPU
313C-2-DP -> S7 Program(1) . Seejärel avada aken Symbols. (Joonis
35). Siin saab defineerida sümboleid. Sümbolitele antakse
aadressid– sisendite, väljundite, mälupiirkondade, taimerite jne
. Lisaks määratakse andmetüüp ning saab lisada ka kommentaari.
Joonis
35. Sümbolite tabel
KOKKUVÕTE
Antud
kursuse käigus omandati baasteadmisi programmeeritavatest
loogikakontrol-leritest(PLC), erinevatest ajamitest ja anduritest
ning robotite ehitusest ja toimimisest. Samuti tutvuti erinevate
tarkvaraliste keskkondadega ja robotite programmeerimis-keeltega nagu
RTL, MELFAIV ja KRL. Tutvuti lähemalt Siemens S7 C300 kontrolleriga
kahes praktilises ülesandes.
Robotitega
tegeledes tuleb ette küllaltki palju probleeme – läbiviidud
praktilistest töödest selgus, et andurite ja ajamite paigutus ning
ühendused ei pruugi olla alati originaalseadmele kohased, vaid
riistvara pideva uuenemise või muude põhjuste tõttu võivad olla
andurid ning ajamid ühendatud erinevalt. Selliste probleemide
vältimiseks tuleks uue roboti kallale
asudes kindlasti ise veenduda,
kuidas täpsemalt on andurid ja ajamid ühendatud.
VIITED
1.
sPlan7.0.
http://www.abacom-online.de/uk/html/splan.html (Kättesaadav 11.06.15)
2.
Simatic S7.
http://w3.siemens.com/mcms/simatic-controller-software/en/pages/default.aspx (Kättesaadav 11.06.15)
3.
CIROS mechatronics.
http://www.ciros-engineering.com/en/products/virtual-learning/ciros-mechatronics/ (Kättesaadav 11.06.15)
4.
CIROS robotics.
http://www.ciros-engineering.com/en/products/virtual-learning/ciros-robotics/(Kättesaadav
11.06.15)
2
Kõik kommentaarid