raČunalniŠtvo in informatiko · 2017. 11. 28. · vrs – visoko regalno skladišče cpu –...
TRANSCRIPT
UNIVERZA V MARIBORU
FAKULTETA ZA ELEKTROTEHNIKO,
RAČUNALNIŠTVO IN INFORMATIKO
Aljaž Komprej
POSODOBITEV IN OPTIMIZACIJA PROGRAMSKEGA DELA KRMILJENJA LINIJE
ZA PRIPRAVO AKUMULATORSKIH POSOD
Diplomsko delo
Maribor, september 2015
I
Diplomsko delo univerzitetnega študijskega programa
POSODOBITEV IN OPTIMIZACIJA PROGRAMSKEGA DELA KRMILJENJA
LINIJE ZA PRIPRAVO AKUMULATORSKIH POSOD
Študent: Aljaž Komprej
Študijski program: UN ŠP Elektrotehnika
Smer: Avtomatika in robotika
Mentor(ica): izr. prof. dr. Marjan Golob, univ. dipl. inž. elektrotehnike
Mentor v gospodarski
družbi:
Uroš Podovšovnik, univ. dipl. inž. elektrotehnike
Lektor(ica): Anica Ovnič, prof.
Maribor, september 2015
II
III
ZAHVALA
Zahvaljujem se mentorju v podjetju in na
fakulteti za pomoč in vodenje pri opravljanju
diplomskega dela.
Hvala tudi vsem v podjetju in na fakulteti za
podporo in uspešno vodenje pri izdelavi
projekta.
Posebna zahvala velja staršem, ki so mi
omogočili študij.
IV
POSODOBITEV IN OPTIMIZACIJA PROGRAMSKEGA DELA
KRMILJENJA LINIJE ZA PRIPRAVO AKUMULATORSKIH
POSOD
Ključne besede: avtomatizacija proizvodnje, krmiljenje, programirljivi logični
krmilnik, programska oprema, akumulatorske baterije.
UDK: 658.52.011.56(043.2)
Povzetek
To diplomsko delo vsebuje opis in izdelavo programskega dela krmilnega sistema
avtomatizirane proizvodne linije za izdelavo akumulatorskih posod v podjetju TAB, d. d.
Opisan je postopek načrtovanja in pisanja programa, ki predstavlja jedro
prenovljenega krmilnega sistema. Končni rezultat diplomskega dela je prenovljen
delujoč krmilni sistem.
V
MODERNIZATION AND OPTIMIZATION OF SOFTWARE FOR
CONTROLLING THE BATTERY CONTAINER ASSEMBLY LINE
Key words: automatization of production, control, programmable logic controller,
software, accumulator batteries.
UDK: 658.52.011.56(043.2)
Abstract
This bachelor degree contains the description and the procedure of making the software
for controlling the battery container assembly line at TAB, d.d. It includes the
procedure of planning and writing the program which represents the essence of
modernized control system. The final result of this bachelor degree is working,
modernized control system.
VI
VSEBINA
1 UVOD ...................................................................................................................... 1
1.1 KRATKA PREDSTAVITEV PODJETJA TAB, D. D. .................................................. 2
2 PROIZVODNA LINIJA ........................................................................................ 3
2.1 OPIS PROIZVODNJE V SPE TOPLA .................................................................... 3
2.2 OPIS LINIJE ZA PRIPRAVO AKUMULATORSKIH POSOD ......................................... 5
2.3 NAČRT POSODOBITVE OBSTOJEČEGA STANJA LINIJE ......................................... 8
3 UPORABLJENA STROJNA IN PROGRAMSKA OPREMA .......................... 9
3.1 PROGRAMIRLJIVI LOGIČNI KRMILNIK ................................................................. 9
3.2 NADZORNA PLOŠČA – UPORABNIŠKI VMESNIK HMI ........................................ 10
3.3 SIEMENS PROGRAMSKO OKOLJE TIA PORTAL ............................................... 10
3.4 PROGRAMSKO ORODJE STEP7 IN PROGRAMIRANJE ........................................... 11
4 IZVEDBA PROGRAMSKEGA DELA PROJEKTA ....................................... 12
4.1 VODILO PRI IZDELAVI PROGRAMA ................................................................... 12
4.2 NEKAJ UPORABLJENIH UKAZOV ....................................................................... 14
4.2.1 V lestvičnem programiranju – ladder basic instructions ........................... 14
4.2.2 V STL programiranju – STL Basic instructions ......................................... 14
4.3 FUNKCIJSKI BLOKI V PROJEKTU ....................................................................... 15
4.3.1 Krmiljenje glave luknjača posod ................................................................ 15
4.3.2 Krmiljenje transporta na postaji luknjanja ................................................ 19
4.3.3 Krmiljenje postaje za nalivanje lepila ........................................................ 21
4.3.4 Krmiljenje sistema transportnih trakov za COS strojem ............................ 22
4.4 FUNKCIJE V PROJEKTU ..................................................................................... 23
4.4.1 Funkcije s klici funkcijskih blokov .............................................................. 23
4.4.2 Funkcija za ročno delovanje linije ............................................................. 24
4.4.3 Funkcija alarmov ........................................................................................ 25
4.5 ORGANIZACIJSKI BLOKI V PROJEKTU ............................................................... 26
4.5.1 Organizacijski blok 1 – Main [OB1] .......................................................... 26
4.5.2 Organizacijski blok 100 – Complete_restart [OB100] .............................. 27
4.6 ZASLONI OPERACIJSKEGA PANELA – HMI SCREENS ........................................ 28
VII
4.6.1 Funkcije glavnega zaslona ......................................................................... 28
4.6.2 Zasloni za upravljanje ročnih komand ....................................................... 29
4.6.3 Zasloni za nastavitve časov ........................................................................ 31
5 ZAGON IN TESTIRANJE POSODOBLJENE LINIJE .................................. 33
6 SKLEP ................................................................................................................... 34
7 VIRI, LITERATURA ........................................................................................... 35
8 PRILOGE .............................................................................................................. 36
8.1 SEZNAM SLIK ................................................................................................... 41
8.2 NASLOV ŠTUDENTA ......................................................................................... 42
8.3 NASLOV GOSPODARSKE DRUŽBE ..................................................................... 42
8.4 KRATEK ŽIVLJENJEPIS...................................................................................... 42
VIII
UPORABLJENE KRATICE
OP, TP – operacijski panel, touch panel
PLK – programirljivi logični krmilnik
TAB – Tovarna akumulatorskih baterij
PbO – svinčev oksid
H2O – voda
H2SO4 – žveplena kislina
HVT – high voltage test
HRDT – high rate discharge test
VRS – visoko regalno skladišče
CPU – central process unit (centralna procesna enota)
HMI – human machine interface (vmesnik človek-stroj)
TIA – totally integratet automation
PC – personal computer (osebni računalnik)
FB – funkcijski blok
FC – funkcija
DB – podatkovni blok
OB – operacijski blok
SFB – sistemski funkcijski bloki
SCL – strukturiran tekst
SFC – sistemske funkcije
LAD – lestvični diagram
FBD – funkcijsko blokovni diagram
STL – seznam ukazov
GRAPH – grafični sekvenčni diagram
Diplomsko delo, Aljaž Komprej Stran 1
1 UVOD
V nalogi je opisan potek izvedbe projekta posodobitve proizvodne linije za pripravo
akumulatorskih posod. Prav tako je podan opis delovanja posodobljene proizvodne linije.
Diplomsko delo smo si zamislili z mentorjem v gospodarski družbi in tehniško ekipo v
podjetju TAB, d. d., natančneje v enoti SPE Topla, ki predstavlja del podjetja in se ukvarja
s proizvodnjo akumulatorjev.
Odločitev za posodobitev in optimizacijo linije za pripravo akumulatorskih posod je
posledica stanja obstoječega krmilnega sistema, ki je bil skozi čas podvržen več
improviziranim predelavam. Posledica tega so nepreglednost sistema, oteženo vzdrževanje
sistema in povečano tveganje napak ter posledično večje število zastojev proizvodne linije.
Za uspešno izvedbo posodobitve smo se morali podučiti o novi programski in strojni
opremi, ki smo si jo izbrali za krmiljenje linije v industrijskem okolju.
Diplomsko delo zajema predvsem programski del projekta posodobitve in optimizacije
krmilnega sistema. Vključuje tako razvoj programov, kot tudi testiranje nove aplikacije in
opis postopkov pri zagonu posodobljene linije.
Naloga je sestavljena iz uvodne predstavitve podjetja, v katerem se je delo izvrševalo,
opisa celotne proizvodne linije in linije za pripravo akumulatorskih posod, opisa
uporabljene strojne in programske opreme ter izvedbe programskega dela projekta. Na
koncu je opisan tudi postopek in rezultati testiranja naloge.
Diplomsko delo, Aljaž Komprej Stran 2
1.1 Kratka predstavitev podjetja TAB, d. d.
Podjetje TAB, d. d. je bilo ustanovljeno pred natanko petdesetimi leti kot ena izmed
temeljnih organizacij združenega dela Rudnika Mežica, kjer ima predelava svinca več kot
350-letno tradicijo. TAB proizvaja vse vrste svinčevih baterij v treh moderno opremljenih
tovarnah, na treh različnih lokacijah.
Diplomsko nalogo smo opravljali v Črni na Koroškem, kjer se nahaja tovarna za štartne
baterije znamk TAB, Topla, Vesna in Starter Vesna z letno kapaciteto 2,0–2,5 milijonov
kosov.
Slika 1.1: Logotip podjetja1
Podjetje ima certificirana sistema kakovosti in ravnanja z okoljem po zahtevah
mednarodnih standardov ISO 9001, ISO 14001 in ISO TS 16949 za avtomobilski program
za SPE Topla.
Proizvodnja vključuje tudi izdelavo raznih baterij za vojaške namene.
Visokokakovostne baterije, ki jih proizvaja TAB, d. d., so znane po celem svetu, še posebej
v Evropi, Aziji in Ameriki.2
1 Vir slike: http://www.bikenomad.com/UserFiles/Image/Logo/logo_tab_batcrijc1.jpg.jpg
2 Opis podjetja povzet po spletni strani podjetja TAB, d. d.: http://www.tab.si/index.php/content/display/9
Diplomsko delo, Aljaž Komprej Stran 3
2 PROIZVODNA LINIJA
V zgornji Mežiški dolini je imelo kopanje in predelava svinčeve rude večstoletno tradicijo.
Zaradi bližine kakovostnih primarnih izdelkov iz svinca se je tam pred pol stoletja razvilo
podjetje, ki se ukvarja z izdelavo svinčenih akumulatorskih baterij. Proizvodnja podjetja
TAB se je v teh letih močno razširila. Zaradi sledenja trendom moderne industrije in
visokim ambicijam se proizvodnja venomer posodablja in dograjuje.
2.1 Opis proizvodnje v SPE TOPLA
Prvi del proizvodnje v SPE Topla predstavlja priprava prahu svinčevega oksida (PbO).
Priprava prahu se vrši v dveh mlinih. Kot vstopni material se uporablja rafinirani svinec.
Proces oksidacije v mlinu, ki ga omogočata povišana temperatura zaradi trenja med
svinčenimi valjčki in vpihan zrak (kisik), ustvarja na površini valjčkov tanko plast
svinčevega oksida. Skorja PbO se med mletjem lušči ter s pomočjo pretoka zraka skozi
mlin in preko filtrov transportira v 60-tonske silose.
Iz prahu PbO se v mešalcih paste z dodajanjem vode (H2O), žveplene kisline (H2SO4) ter
aditivov pripravi pasta, ki se na pastirnih linijah kot aktiven material vtisne v svinčene
mrežice. Te se v predhodnem postopku izdelujejo z vlivanjem v kalupe ali po postopku
ekspandiranja neskončnega svinčenega traku.
Zlagalni stroj iz posameznih plošč formira kupe plošč (slika 2.1). Roboti te kupe zložijo na
kovinske palete. Sledi proces zorenja in sušenja plošč v zorilno sušilnih pečeh.
Slika 2.1: Svinčene plošče
Diplomsko delo, Aljaž Komprej Stran 4
Po končanem procesu zorenja in sušenja se plošče transportirajo do avtomatiziranih
montažnih linij. Ovijalni stroji negativne plošče ovijejo v separator ter formirajo pakete,
katerih konfiguracija je odvisna od tipa baterij, ki se trenutno proizvaja na liniji. COS stroj
očisti zastavice, z vlivanjem mostičkov poveže pozitivne ter negativne plošče v paketu ter
vstavi pakete v akumulatorske škatle. Te škatle se predhodno pripravijo na liniji za
pripravo posod (luknjanje posod, nalivanje lepila).
Postopki, ki sledijo na montažni liniji so: kontrola kratkega stika v celici, medcelično
varjenje, termično lepljenje pokrova, varjenje polov, čiščenje polov in preverjanje tesnosti.
Slika 2.2: Sestava akumulatorske baterije1
Tako pripravljene »suhe« baterije se zložene na lesenih paletah kot polizdelek in se
skladiščijo v avtomatskem visoko regalnem skladišču (VRS).
V nadaljnjem postopku se uskladiščene baterije (po potrebi) dovažajo iz skladišča v
oddelek formacije, kjer se nalijejo z elektrolitom, ter transportirajo na formacijske mize,
kjer se po predpisanih režimih polnijo z električnim tokom.
Po končanem postopku formiranja baterije potujejo skozi »finish« linijo, kjer se dolije ali
zamenja elektrolit v baterijah, vstavijo se zamaški, baterija se očisti in posuši. Sledita še
dielektrični test (HVT – high voltage test), pri katerem se med polom baterije in njenim
ohišjem pod visoko napetostjo meri prebojni tok ter tako imenovani šok test (HRDT - high
rate discharge test), pri katerem se baterija kratkotrajno obremeni z visokim tokom (meri se
padec napetosti na polih, ki mora biti manjši od predpisane za določen tip baterije).
1 Vir slike 3: http://www.solarstik.com/sites/default/files/content/lead-acid-battery_diagram.png
Medcelična stena
Zaščitno ohišje
Zračne line
Negativni pol Pozitivni pol
Negativna elektroda
(svinec)
Pozitivna elektroda
(PbO)
Medcelični konektorji
Elektrolit
Diplomsko delo, Aljaž Komprej Stran 5
Sledi opremljanje baterij z nalepkami ter pakiranje. Baterije so tako pripravljene za
odpremo ali vnovično kratkotrajno skladiščenje v VRS.
Opisani procesi v proizvodnji so deloma ali popolnoma avtomatizirani. V podjetju se na
področju avtomatizacije uporabljajo različni tipi krmilnikov, različnih proizvajalcev
(Siemens, Allen Bradley, Mitsubishi). Trend, ki je prisoten že nekaj časa, je tudi uvajanje
robotov (KUKA) na oddelkih, kjer se izvaja manipulacija s polizdelki in končnimi izdelki
(paletizacija, depaletizacija).
2.2 Opis linije za pripravo akumulatorskih posod
Linija za pripravo akumulatorskih posod se sestoji iz treh logično ločenih enot:
- trakovi za transport posod,
- luknjač posod,
- enota za nalivanje lepila (nalivanje vročega lepila – hotmelt).
Sistem je skoraj v celoti avtomatiziran. Prisotnost delavca je potrebna samo na začetku
linije, kjer je potrebno prazne plastične posode postaviti na začetek transportnega traku.
Tekoči trak je sestavljen iz več trakov, ki jih je mogoče krmiliti ločeno.
Posode ena za drugo potujejo do postaje za luknjanje baterij (luknjač posod), ki se izvaja
na prekatnih stenah akumulatorske posode. Luknjanje je potrebno za kasnejše povezovanje
elementov med ločenimi prekati. Ko pride baterija pod luknjač (senzor) se trak pod glavo
luknjača ustavi. Glava z rezili se spusti do mehansko nastavljene višine, ki ustreza tipu
proizvajanih baterij, aktivira prijemala za ravnanje in nameščanje baterije v pravo pozicijo
ter prične z luknjanjem. V ta namen je glava opremljena s hidravlično gnanimi rezili.
Ustrezen električni signal stisne rezila, da predrejo steno prekata. Po določenem času se
rezila odprejo. Odpad ostane v rezilih.
Diplomsko delo, Aljaž Komprej Stran 6
Slika 2.3: Luknjač akumulatorskih posod s transportnim trakom
Ko glava konča z luknjanjem, se prijemala umaknejo, glava pa se dvigne v izhodiščni
položaj. Tekoči trak pod luknjačem se ponovno vključi in preluknjano posodo odpelje do
postaje za nalivanje lepila. Postaja je opremljena s svojim transportnim trakom. Istočasno
se na postaji za luknjanje posod dvigne plošča, namenjena zbiranju odpada, ki je ostal v
rezilih. Ta se iz rezil odstrani s postopkom izpihovanja.
Na nadzorni plošči je mogoče izbrati način delovanja brez luknjanja. V tem primeru
posode prosto potujejo skozi postajo.
Na postaji za nalivanje lepila se na dno prekatov posode nalije staljeno lepilo. Posoda z
zmanjšano hitrostjo potuje pod šobami za doziranje lepila. Nalivanje se izmenično vklaplja
in izklaplja glede na položaj baterije pod šobami. Pri tem je pomembno, da se lepilo ne
razliva po stenah prekata.
Glava luknjača
Prva zapora z
optičnim
stikalom
Druga zapora z
dvema optičnima
stikaloma
Izmetna plošča
Prijemala
Rezila
Diplomsko delo, Aljaž Komprej Stran 7
Slika 2.4: Postaja za nalivanje vročega lepila
Posoda nalita z lepilom se v nadaljevanju transportira v COS stroj, kjer se v posodo
vstavijo elementi – gradniki akumulatorskih celic. Ker je pomembno, da se lepilo v posodi
do postopka vstavljanja elementov na COS stroju ne strdi, je med enoto za nalivanje lepila
in COS strojem vzpostavljena enostavna komunikacija (DI/DO). Baterijska posoda se tako
skozi postajo za nalivanje lepila spusti šele, ko je COS stroj pripravljen za vstavljanje
elementov.
Na nadzorni plošči je mogoče izbrati način delovanja brez nalivanja lepila.
Sistem za pripravo akumulatorskih posod krmili še dva transportna traka, ki se nahajata za
COS strojem. Traka skrbita za dostavo baterij na naslednji stroj v montažni liniji.
Senzorji in aktuatorji uporabljeni v sistemu so:
- enajst optičnih stikal za detekcijo pozicije baterije na transportnih trakovih ter
detekcijo sten v akumulatorski posodi,
- devet magnetnih stikal za detekcijo položaja pnevmatskih cilindrov,
- pet elektromotorjev za pogon transportnih trakov,
- dvanajst pnevmatskih cilindrov (zapore na transportnih trakovih, pomik glave
in njenih sestavnih delov),
- hidravlični cilinder ( rezila na glavi luknjača).
Ventili za
doziranje lepila
Prvo optično
stikalo
Senzor za
zaznavanje sten
Senzor za zaznavanje
notranjih sten
Druga zapora
Prva zapora
Diplomsko delo, Aljaž Komprej Stran 8
2.3 Načrt posodobitve obstoječega stanja linije
Prvotno je bil sistem za pripravo posod sestavljen iz treh ločenih krmilnih enot.
Prva enota je bila namenjena krmiljenju transportnih trakov ter zalogovnika
akumulatorskih posod. Druga enota je skrbela za upravljanje luknjača posod. Obe enoti sta
bili zasnovani s svojima krmilnikoma (Siemens S7-300) in uporabniškima vmesnikoma
(Simatic OP, operacijski panel) v ločenih elektro omaricah.
Tretji sistem, namenjen nalivanju lepila v posode, je bil krmiljen s preprosto relejsko
tehniko.
Slika 2.5: Začetni del linije za pripravo akumulatorskih posod
Cilj postopka posodobitve je bil združiti tri ločene sisteme v skupni sistem, ki bo krmiljen
z enim krmilnikom PLC ter upravljan preko sodobnega zaslona, občutljivega na dotik (TP
- touch panel).
Seznam del, ki jih je bilo potrebno opraviti v postopku optimizacije:
- analiza obstoječega stanja,
- priprava idejne zasnove posodobitve krmiljenja,
- priprava elektro načrtov,
- elektroinštalacijska dela,
- priprava programa za PLK in TP,
- testiranje programa in zagon posodobljene linije.
Diplomsko delo, Aljaž Komprej Stran 9
3 UPORABLJENA STROJNA IN PROGRAMSKA OPREMA
V tem poglavju sledi opis izbrane strojne in programske opreme, s katero smo posodobili
in optimizirali proizvodno linijo za pripravo akumulatorskih posod.
3.1 Programirljivi logični krmilnik
V sodobnih industrijskih sistemih se za izvedbo logičnega in sekvenčnega vodenja
najpogosteje uporabljajo programirljivi logični krmilniki (PLK).
PLK so zasnovani z namenom izrabe računalniških zmogljivosti za logično krmiljenje
procesov. So računalniki, prirejeni za vodenje procesov, kar pomeni, da so opremljeni z
vhodno/izhodnimi moduli, robustno zgrajeni za industrijsko okolje in preprosti za
programiranje. PLK so tako eden od temeljnih gradnikov industrijske avtomatizacije.1
Za izvedbo krmiljenja proizvodne linije smo se odločili za krmilnik S7-300, ki spada v
družino programirljivih logičnih krmilnikov vodilnega nemškega proizvajalca na tem
področju, podjetja Siemens. V projektu posodobitve je bil zaradi enostavnosti aplikacije
uporabljen najmanj zmogljiv krmilnik CPU 312 iz družine krmilnikov S7-300.
Vhodne in izhodne module smo uporabili kar obstoječe, torej tiste, ki so bili uporabljeni v
prejšnjem krmiljenju te linije. Uporabili smo vhodni modul z 32 vhodi in dva s 16 vhodi.
Izhodni moduli našega krmilnika so po eden z 32 in drugi s 16 izhodi. Konfiguracijo
strojne opreme krmilnika v projektu ponazarja spodnja slika (slika 3.1).
Slika 3.1: Konfiguracija strojne opreme PLK v projektu
1 Povzeto po knjigi Avtomatika, Gašper Mušič, Ljubljana 2014
Diplomsko delo, Aljaž Komprej Stran 10
3.2 Nadzorna plošča – uporabniški vmesnik HMI
Vizualizacija osnovnih funkcij strojev je dandanes eden ključnih dejavnikov v
avtomatizirani industriji. Naprave HMI (human machune interface) ali vmesniki med
človekom in strojem so zelo učinkoviti za upravljanje aplikacij.
V projektu posodobitve linije za pripravo akumulatorskih posod smo uporabniški vmesnik
izvedli z operacijskim panelom SIMATIC HMI KTP600 Basic color, ki ima 6-palični
zaslon na dotik s šestimi funkcijskimi tipkami. Operacijski panel je s krmilnikom povezan
preko MPI povezave.
Slika 3.2: Operacijski panel SIMATIC HMI KTP600
3.3 SIEMENS programsko okolje TIA portal
TIA portal predstavlja koncept popolnoma integrirane avtomatizacije (totally integreted
automation). Med ključne komponente sistemov industrijske avtomatizacije spadata
programirljivi krmilniki SIMATIC S7 in sistem za nadzor in upravljanje SIMATIC HMI.
Vsebuje široko paleto predlog in funkcij, ki jih le izberemo, konfiguriramo in že delujejo.
Vsebuje tudi močno podporo vizualizaciji s SIMATIC WinCC Basic.
Diplomsko delo, Aljaž Komprej Stran 11
3.4 Programsko orodje Step7 in programiranje
SIMATIC STEP 7 je najbolj prepoznavno programsko okolje v industrijski avtomatizaciji.
Novejša verzija v TIA portalu vsebuje funkcije prijazne do uporabnika. Takšne funkcije,
kot so povleci-spusti, kopiraj-prilepi in samodejno dopolnjevanje (autocompletion),
naredijo delo programerja hitrejše in učinkovitejše.
Programiranje krmilnikov v programskem jeziku Step7, izvedemo na več različnih načinov
po standardu IEC 61131-3. Ti programski jeziki so:
- strukturiran tekst (structured text – SCL), lestvična logika (ladder logic – LAD)
in funkcijsko blokovni diagram (function block diagram – FBD),
- seznam ukazov (statement list – STL) in koračno sekvenčno programiranje
(step sequence programming – GRAPH, SFC).
Program za krmiljenje linije smo pisali kombinirano v programskih jezikih LAD in STL.
Uporaba lestvične logike je precej enostavna in predvsem vizualna. S seznamom ukazov
prihranimo nekaj prostora in v primeru vključevanja več spremenljivk poenostavimo
pisanje programa. Pomembno je tudi poznavanje obeh programskih jezikov, saj večina
inženirjev v industriji stremi k optimalnem in razumljivem pisanju programov.
Uporabniški program v Step 7 delimo na šest različnih tipov programskih blokov:
- organizacijski bloki (OB),
- funkcijski bloki (FB),
- funkcije (FC),
- podatkovni bloki (DB),
- sistemski funkcijski bloki (SFB),
- sistemske funkcije (SFC).
Programski bloki se vsak s svojo prioriteto med seboj razlikujejo po funkciji ter nalogi.
Diplomsko delo, Aljaž Komprej Stran 12
4 IZVEDBA PROGRAMSKEGA DELA PROJEKTA
Programski inženirji krmilnih naprav imajo različne možnosti programiranja krmilnih
sistemov. Kot smo že omenili, ponuja programsko okolje TIA portal najrazličnejše spektre
programiranja v programskem jeziku Step 7 in projektiranja operacijskih panelov. V tem
poglavju so predstavljeni načini reševanja problemov uporabljeni na našem sistemu.
4.1 Vodilo pri izdelavi programa
Vodilo pri izdelavi programa, ki bo skrbel za krmiljenje linije za pripravo akumulatorskih
posod, je bilo ohraniti obstoječo funkcionalnost linije ter izvesti optimizacijo delovanja
nekaterih komponent.
Program mora biti pregleden in logično sestavljen. V ta namen je razdeljen na več
funkcijskih blokov, ki predstavljajo logično celoto. Funkcijskim blokom (FB) so prirejene
notranje spremenljivke. Prenos aktualnih vrednosti in stanj v funkcijski blok in iz njega, se
izvaja izključno preko vhodnih, izhodnih in vhodno-izhodnih spremenljivk. Preko teh poti
med drugimi poteka tudi izmenjava signalov med posameznimi funkcijskimi bloki.
Funkcijski bloki se v programskem ciklu kličejo v funkcijah (FC) in organizacijskih blokih
(OB). Na spodnji sliki (slika 4.1) so prikazani programski bloki projekta v TIA portalu.
Slika 4.1: Programski bloki v TIA portalu
Diplomsko delo, Aljaž Komprej Stran 13
Koda posameznih programskih blokov se izvaja zaporedoma. Prvi, ki se izvede ob zagonu
oziroma ob priklopu glavne napetosti, je operacijski blok [OB100]. Takoj, ko se ta izvede,
program teče v bloku [OB1], ki velja za glavnega, iz katerega se kličejo vsi ostali
funkcijski bloki ali funkcije. Potek izvajanja programa je predstavljen v spodnjem
diagramu (slika 4.2).
Slika 4.2: Diagram poteka programskih blokov
Podatkovni bloki DB1, DB2, DB3 in DB6 so bloki, v katerih so spremenljivke, ki jih lahko
uporabljamo samo v pripadajočih funkcijskih blokih. Ti se lahko ustvarijo samodejno, ko v
funkcijskem bloku inicializiramo notranje spremenljivke.
Spremenljivke v podatkovnih blokih DB4, DB5, DB7 in DB8 lahko uporabimo v katerem
koli funkcijskem bloku, funkciji ali organizacijskem bloku. Nekatere spremenljivke iz
podatkovnega bloka [DB8] lahko najdemo tudi funkciji [FC1].
Diplomsko delo, Aljaž Komprej Stran 14
4.2 Nekaj uporabljenih ukazov
4.2.1 V lestvičnem programiranju – ladder basic instructions
- Bitne logične operacije: normalno odprt in normalno zaprt kontakt, izhodna
tuljava, set/reset, flip-flop, negativna fronta (negative signal edge);
- Časovniki: S_ODT (časovnik z zakasnitvijo);
- Primerjalniki: = = (equal comparator), < > (not equal comparator);
- Operacije za pomik: MOVE operacija;
- Operacije za preverbo programa: JMP (operacija za skok);
Slika 4.3: (1.) Negativna fronta in flip-flop, (2.) časovnik S_ODT, (3.) primerjalnik not
equal, (4.) ukaz za pomik MOVE
4.2.2 V STL programiranju – STL Basic instructions
- Bitne logične operacije: A (in), AN (in ne), O (ali), = (enakost), R ('reset'), S
('set'), SET (postavi RLO na '1');
- Operacije za preverbo programa: JU (brezpogojni skok), JL (skok na 'labelo'),
JCN (skoči, če je RLO '0'),
- Razširjeni ukazi: T_COMV (pretvorba oblik časov v programiranju Step7).
Slika 4.4: (1.) A (logični in), JCN (skoči, če je RLO = 0), L (load), T (transfer), NOP 0 (ne
naredi nič), (2.) SET (RLO na '1'), R ('reset'), S ('set'), (3.) pretvornik časov T_CONV
1. 2. 3. 4.
1. 2. 3.
Diplomsko delo, Aljaž Komprej Stran 15
4.3 Funkcijski bloki v projektu
Zagotavljanje logičnega zaporedja korakov opravil, ki jih nadzorujejo posamezni
funkcijski bloki, je izvedeno z avtomati stanj.
4.3.1 Krmiljenje glave luknjača posod
Vrstice programa, ki se nahajajo pred avtomatom stanj, so ukazi, ki se izvedejo vsak
programski cikel neodvisno od aktualnega koraka avtomata stanj. V prvem programskem
segmentu bloka (Slika 4.5) je razvidno, da se pri preklopu v ročni način delovanja avtomat
stanj inicializira (prehod v korak S0).
Uporabniku se ponuja možnost izbire načina delovanja linije brez luknjanja posod. V
drugem programskem segmentu je razvidno, da izklop luknjanja povzroči prehod avtomata
stanj v korak S12, kjer izvedejo za ta način potrebne funkcije.
V tretjem segmentu je opisano delovanje ob izgubi krmilne napetosti na PLK-ju. Prva dva
ukaza predstavljata pogoja - primerjalnika stanj. Pogoja sta izpolnjena, ko se avtomat stanj
nahaja v korakih različnih od S3 in S13.
Slika 4.5: Začetne vrstice v FB1
Pred avtomatom stanj se v vsakem programskem ciklu inicializirajo vse izhodne
spremenljivke (OUT) (slika 4.6). Nadaljnje izvajanje programa znotraj avtomata stanj te
spremenljivke po potrebi ponovno postavi na logično 1.
Diplomsko delo, Aljaž Komprej Stran 16
Slika 4.6: Ponastavitev vseh izhodov v FB1
Delovanje glave je razdeljeno v 14 korakov (slika 4.7).
Slika 4.7: Avtomat stanj v FB1
V koraku S0 glava luknjača čaka na signal s strani funkcijskega bloka [FB3]
(trak_luknjač), da je nova baterija pripravljena za luknjanje. Hkrati glava [FB1] traku
[FB3] sporoča, da je pripravljena za izvedbo novega cikla luknjanja.
Diplomsko delo, Aljaž Komprej Stran 17
Slika 4.8: Korak S0 v FB1
Za prehod v naslednje stanje morajo biti izpolnjeni začetni pogoji:
- način delovanja z luknjanjem omogočeno,
- glava zgoraj,
- izmetna plošča spodaj.
Položaj aktuatorjev signalizirajo magnetna stikala na pnevmatskih cilindrih.
Ko transport [FB3] sporoči, da trak stoji, se vključi časovnik (timer5). Uporabljen je
časovnik z zakasnitvijo vklopa S_ODT (slika 4.9). Ta ob signalu na vhodu prične z
odštevanjem nastavljenega časa. Po preteku časa svoj izhod postavi na logično »1«. Signal
pošilja toliko časa, dokler ta ni več postavljen na ena oziroma je resetiran. V primeru, da
časovnik teče in vhod pred pretekom časa izgubi signal, na izhodu ne dobimo nobenega
signala (slika 4.10). Za prehod med stanji je uporabljena funkcija MOVE.
Slika 4.9: Uporaba časovnika v FB1
primerjalnik Equal
Diplomsko delo, Aljaž Komprej Stran 18
Slika 4.10: Pulzni diagram časovnika S_ODT
V koraku S1 (slika 4.11) se aktivira pomik glave navzdol. Povratni signal s končnega
stikala na pnevmatskem cilindru, ki signalizira pozicijo glave spodaj, povzroči prehod
avtomata stanj v korak S2. Če optični senzor ne zaznava več posode na postaji ali če
transport [FB3] umakne pogoj, avtomat stanj preklopi v stanje S11, v katerem se glava
vrne v zgornji - izhodiščni položaj, avtomat stanj pa se inicializira (korak S0).
Slika 4.11: Korak S1 v FB1
Za vse naslednje korake avtomata stanj je program zgrajen po podobnem principu.
Diplomsko delo, Aljaž Komprej Stran 19
V koraku S2 se na začetku ponovno postavi izhod za pomik glave, saj se ta, kakor vsi drugi
izhodi, pred izvajanjem avtomata stanj inicializira. V tem koraku se dodatno aktivirajo še
prijemala za ravnanje posode. Aktivno stanje magnetnega stikala, ki signalizira pozicijo
zaprtih ravnal, povzroči prehod avtomata stanj v korak S3. V koraku S3 se postavi izhod za
aktiviranje rezil. Rezila niso opremljena s končnimi stikali, zato detekcija pozicije ni
mogoča. Za ustrezno izvedbo postopka luknjanja je zaradi tega, v tem koraku, uporabljen
časovnik (S_ODT), ki postopek luknjanja zaključi (odpiranje rezil) po določenem času.
Čas luknjanja je nastavljiv na nadzorni plošči.
Ko se rezila vrnejo v izhodiščno lego, se lahko prijemala odprejo. Aktivno stanje
magnetnega stikala , ki signalizira odprtost prijemal, povzroči prehod v stanje, v katerem
se izvede dvig glave v zgornji, izhodiščni položaj. Aktivno stanje magnetnega stikala , ki
signalizira pozicijo glave zgoraj, je pogoj za nadaljevanje izvajanja programa. Transportu
[FB3] se pošlje signal, ki sprosti blokado transportnega traku ter omogoči odpiranje
zapirala in s tem transport posode naprej proti postaji za nalivanje lepila. V nadaljevanju se
aktivira pozicioniranje izmetne plošče v položaj za sprejem odpadnega materiala. Nanjo se
iz luknjača izpihnejo ostanki plastike. Po končanem izpihovanju, se izmetna plošča
umakne, glava [FB1] pa transportu [FB3] pošlje signal, ki sporoča da je glava pripravljena
na izvedbo naslednjega cikla luknjanja.
4.3.2 Krmiljenje transporta na postaji luknjanja
Transportni sistem pod luknjačem sestavljajo tekoči trak, dve zapori in trije optični
senzorji. Prva zapora (divider) je namenjena ločevanju posod, ki so na vstopnem traku
nanizane druga zraven druge. Druga zapora (stoper) je namenjena ustavljanju baterije pod
glavo luknjača. Eno optično stikalo je nameščeno za prvo zaporo, preostali dve optični
stikali pa pred in za drugo zaporo.
Krmiljenje transportnega sistema pod luknjačem izvaja funkcijski blok Trak_luknjac
[FB3]. Začetni del funkcijskega bloka je zgrajen podobno, kot blok FB1 (pogoji za
aktiviranje avtomata stanj, obnašanje v primeru izbranega ročnega načina, obnašanje v
primeru pritisnjene tipke E-Stop …)
Avtomat stanj tvori deset korakov. V prvem koraku S0 se izvaja čakanje na posodo iz
vstopnega traku. Transportni trak je vklopljen, prva zapora je odprta. Ko senzor za prvo
zaporo baterijo zazna, se druga zapora zapre. Ko tipalo za prvo zaporo izgubi signal, torej
ko je posoda že zapustila območje prve zapore (korak S1), se slednja zapre in s tem
Diplomsko delo, Aljaž Komprej Stran 20
omogoči medsebojno ločevanje baterij. V ta namen je v programu uporabljen gradnik za
detekcijo negativne fronte, ki ob izgubi signala postavi izhod na »1« (Slika 4.12).
Slika 4.12: Korak S1, Network 13 z negativno fronto v FB3
V koraku S2 transport [FB3] čaka na signal s strani glave [FB1], ki sporoča, da je glava
pripravljena na za začetek novega cikla luknjanja. Če se po prejemu signala posoda nahaja
na mestu, se tekoči trak ustavi. Po poteku časovnika z nastavljivim časom, ki je potreben
za ustavljanje motorja (korak S3), se glavi pošlje signal o pripravljenosti posode za
luknjanje.
Prehod iz koraka S4 v korak S5 je mogoč samo v primeru, ko glava opravlja svoje naloge,
torej ne pošilja nobenih signalov.
V obeh stanjih sta vključeni tudi vrstici za vklop alarma. Ta se sproži takrat, ko je program
v načinu z luknjanjem in zazna predmet na prvem optičnem senzorju. Tukaj so še različni
pogoji za prehod v stanje S6. Eden od teh je izpolnjen, ko izgubimo signala na optičnih
senzorjih za prvo in pred drugo zaporo, samo v S5 pa kateri koli prejeti signal od luknjača.
Transportni trak se ponovno vključi in pot se sprosti.
Preluknjana posoda nato potuje naprej. Če je za njo še kakšna, jo najprej zazna prvo
optično stikalo in na enak način, kot smo opisali zgoraj, dodamo negativno fronto, s katero
tokrat vključimo le prvo zaporo. Nato preluknjana posoda potuje mimo tretjega senzorja za
drugo zaporo, ki se po enakem principu vključi z negativno fronto tega stikala.
Sedaj sta vključeni obe zapori in posoda je ponovno na mestu pod glavo luknjača. Program
nato preide v korak S2 in ponovno izvede vse že naštete funkcije. Vključeni so tudi ukazi
in pogoji, ki se izvedejo takrat, ko uporabnik izbere način brez luknjanja. Takrat motor
traku nemoteno deluje in posode neovirano potujejo naprej do naslednje postaje, to je
vlivanje lepila.
negativna fronta
Diplomsko delo, Aljaž Komprej Stran 21
4.3.3 Krmiljenje postaje za nalivanje lepila
Krmiljenje postaje za nalivanje lepila se izvaja v funkcijskem bloku Hot_melt [FB2]. Blok
združuje funkcijo doziranja lepila ter krmiljenje pripadajočega transportnega sistema.
Transportni sistem na postaji za nalivanje lepila sestavljajo transportni trak, dve zapori ter
optični stikali pred zaporo in na koncu traku. Zaporama je v simbolni tabeli namenjen
samo en izhod, saj delujeta izmenično. To pomeni, ko je ena vklopljena, je druga
izklopljena in obratno. Sistem za nalivanje lepila je sestavljen iz ventila za doziranje lepila,
senzorja za zaznavanje zunanjih robov posode ter senzorja za zaznavanje prekatov znotraj
posode.
Avtomat stanj se izvaja v sedmih korakih.
V prvem koraku S0 sta motor transportnega traku in druga zapora vključena. Ob prihodu
predmeta do optičnega stikala, ki se nahaja tik pred drugo zaporo, program preide v korak
S1. Posoda na mestu pred zaporo čaka na signal naslednje postaje, to je postaja za
vstavljanje paketov svinčenih plošč. Ta postaja ni vključena v program in je krmiljena s
svojim sistemom. Lepilo, ki se naliva, mora biti sveže in nestrjeno, zato moramo počakati,
da je naslednja postaja BM prosta in pripravljena na nadaljnje delo.
Slika 4.13: Korak S2, Network 15, pogoji za prehod v stanje doziranja lepila
Če signala od BM-a v koraku S1 ni, se vključi časovnik in po preteklem času se v koraku
S5 ustavi tekoči trak. Ko naslednja postaja pošlje signal, program preide v korak S2, kjer
se druga zapora izključi (torej se izmenično vključi prva) in posoda potuje naprej. Zaznata
jo optično stikalo za zaznavanje zunanjih sten (v programu Opt2) in stikalo za zaznavanje
prekatov v posodi (Opt3). Ko slednje izgubi signal oz. ne vidi notranje stene (negativna
fronta), postavi statično spremenljivko (#sr_tag) na logično 1 (slika 4.13). S postavitvijo te
Diplomsko delo, Aljaž Komprej Stran 22
spremenljivke se vključi nov časovnik, ki določa čas pred nalivanjem lepila. Program nato
omogoči prehod v korak S3. V tem koraku je potrebno resetirati poprej nastavljeno
spremenljivko in vključiti doziranje lepila. Slednje se ustavi po poteku časovnika z
nastavljivim časom nalivanja lepila. Omogoči se prehod v korak S6, kjer ob prihodu
naslednje notranje stene do optičnega senzorja nad posodo program ponovi cikel nalivanja
od koraka S2 naprej. Ta cikel se ustavi, ko drugi senzor za zaznavanje zunanjih sten več ne
pošilja signala. Takrat se prične izvajati korak S4. Vključi se izhod za povišano hitrost
motorja transportnega traku. Na ta način posoda napolnjena s svežim lepilom kar najhitreje
potuje do naslednje postaje. Edini pogoj za prehod v naslednji korak, to je nazaj na začetek
v korak S0, je negativna fronta oziroma izguba signala na zadnjem optičnem senzorju na
koncu postaje za nalivanje vročega lepila.
4.3.4 Krmiljenje sistema transportnih trakov za COS strojem
Transport je sestavljen iz dveh ločenih transportnih trakov in štirih optičnih senzorjev.
Prvo stikalo je nameščeno na začetku četrtega tekočega traku in zaznava tiste predmete, ki
pridejo iz predhodne postaje. Na začetku in na koncu petega traku imamo po en senzor.
Zadnji je postavljen na klančini, ki sledi tekočim trakovom.
Ta del linije je namenjen predvsem za zbiranje zaloge elementov pred naslednjo postajo.
Koda za krmiljenje transporta za postajo BM, torej postajo, kjer se v posode vstavljajo
paketi, se nahaja v funkcijskem bloku [FB4].
Program se izvaja v šestih korakih.
Na samem začetku motorji transportnih trakov niso v teku. Pogoj za pogon prvega je signal
optičnega stikala na koncu postaje za vstavljanje paketov (korak S0). Takoj, ko posoda
pride, stikala na začetku drugega traku vključijo še slednji (korak S1). Prva posoda se tako
pripelje do konca transporta.
Ko BM spusti na transport več posod, kot jih lahko naslednja postaja za klančino sprejme,
se te pričnejo na transportu sistematično nabirati. Optično stikalo na klančini je postavljeno
ravno tako, da je pokrito, ko so na koncu tri posode. Ko stikalo na klančini pošilja signal o
mirovanju posode, se takoj zatem vključi časovnik, ki ob izteku sproži signal za prehod v
korak S2. Naslednja posoda, ki pride po transportu, več ne sme biti na klančini, saj so tam
lahko samo tri. V koraku S3 se drugi tekoči trak ustavi, ko optično stikalo na koncu tega
traku pošlje signal.
Diplomsko delo, Aljaž Komprej Stran 23
Ko so na celotnem transportu štiri posode ali več, se motor drugega tekočega traku ne sme
vključiti. V naslednjih korakih se prvi trak izmenično vklaplja in izklaplja. To je potrebno
zaradi zaloge izdelkov, ki so pripravljeni za nadaljnjo izdelavo. Ko pride posoda na prvi
tekoči trak in drugi stoji, se ob izgubi signala na prvem optičnem senzorju sproži časovnik,
ki po preteklem času ustavi tekoči trak. V isto stanje se vrnemo ob prihodu vsake naslednje
posode, razen ko je trak že poln in stikalo na začetku drugega traku zazna predmet. V tem
primeru program pošlje signal COS stroju naj preneha z delovanjem.
Oba transportna trakova se vključita vedno, ko posode na klančini ne stojijo več. To se
zgodi, razen v prvem in drugem koraku, v vseh ostalih.
4.4 Funkcije v projektu
4.4.1 Funkcije s klici funkcijskih blokov
Funkciji [FC1] in [FC2] kličeta vse funkcijske bloke, ki smo jih prej opisali. Funkcijske
bloke vključimo v funkcijo tako, da preprosto povlečemo blok iz projektnega drevesa v
samo funkcijo. Orodje nato zahteva samodejno izdelavo Instance podatkovnega bloka
(Instance data block) oziroma podatkovnega bloka notranjih spremenjlivk. Za kasnejše
klicanje vhodov in izhodov smo blokom dodali spremenljivke, ki smo jih definirali v
drugem podatkovnem bloku (Shared data block), ki pa dovoli dostop do spremenljivk
vsem blokom. To lahko vidimo tudi v diagramu poteka (slika 4.2).
V prvi funkciji Tovorne1 [FC1] kličemo funkcijski blok za krmiljenje glave Glava [FB1]
in blok, ki vključuje kodo transporta pod luknjačem, Trak_luknjac [FB3] (slika 4.14).
Diplomsko delo, Aljaž Komprej Stran 24
Slika 4.14: Klic funkcijskih blokov v funkciji s pripadajočimi vhodi in izhodi
Kot je razvidno iz zgornje slike, smo za vhode in izhode funkcijskih blokov uporabili
spremenljivke iz podatkovnih blokov ali pa kar simbole na krmilniku, ki so zapisani v
simbolni tabeli (tag table). Vključili smo tudi različne tipe spremenljivk, kot so T za
časovnike in M spominske bite v samem CPU-ju krmilnika.
Na enak način smo storili tudi v funkciji Tovorne2 [FC2], kjer smo klicali funkcijska bloka
[FB2] in [FB4].
4.4.2 Funkcija za ročno delovanje linije
V funkciji ROCNO [FC4] smo ob njenem izvajanju najprej ponastavili vseh devetnajst
izhodov linije, ki pripadajo funkcijskima blokoma Tovorne1 in Tovorne2. To smo storili s
tem namenom, da smo lahko linijo nadzirali iz prvotne točke, ko ne deluje noben trak in se
ne izvaja nobena funkcija.
Tudi v ročnem načinu se ne smejo izvajati nekateri ukazi hkrati, ali ko so nekateri izhodi
že postavljeni. Paziti moramo torej, da se glava luknjača ne spusti, če je vključena izmetna
plošča, saj bi jo tako poškodovali. Takšne ukaze smo napisali v nekaj vrsticah kode (slika
4.15).
Diplomsko delo, Aljaž Komprej Stran 25
Slika 4.15: Ukazi, ki se izvedejo ob izbiri načina ročno
4.4.3 Funkcija alarmov
Funkcija Alarmi1 [FC3] je namenjena vklapljanju alarmov ob nepravilnostih ali
nepredvidenih dogodkih v sistemu. Alarme smo določili za kritične točke, kjer lahko pride
do takšnih nevšečnosti ali celo do nevarnosti nepremišljenega posega človeka v območje
delovanja stroja.
Opozorila se vključijo takrat, ko se neka funkcija ne vključi v določenem času. Takšni
primeri so:
- pomik glave luknjača – glava po določenem času ni spodaj ali zgoraj, kar
morata zaznati magnetni stikali;
- pomik prijemal – prijemalo za ravnanje posode le-te ni zagrabilo ali spustilo;
- pomik izmetne plošče – izmetna plošča ni spuščena ali dvignjena;
- izpad hidravlične črpalke, frekvenčnega pretvornika in krmilne napetosti.
Diplomsko delo, Aljaž Komprej Stran 26
Slika 4.16: Primer vključitve dveh alarmov v funkciji Alarmi1
Vse alarme smo nato vzporedno povezali v skupni izhod, ki vklaplja alarmno okno na
operacijskem panelu.
V to funkcijo smo dodali še ukaze za signalizacijo semaforja, ki se nahaja nad omarico.
Rdeča luč gori vedno, ko se pojavi skupni signal alarmov, to je prej omenjeni skupni izhod.
Rumena sveti samo takrat, ko uporabnik izbere način ročno. Ob pravilnem delovanju v
avtomatskem načinu brez kakršnih koli opozoril pa gori zelena luč.
4.5 Organizacijski bloki v projektu
4.5.1 Organizacijski blok 1 – Main [OB1]
Organizacijski blok Main predstavlja osnovno ciklično procesiranje vseh operacij
celotnega programa. Namenjen je klicanju vseh funkcij in funkcijskih blokov v programu.
Najprej smo enačili vse izhode, ki smo jih z različnimi spremenljivkami, ki pomenijo isto
vrednost, klicali tekom programa. Primer združitve dveh izhodov iz različnih podatkovnih
blokov z izhodi na krmilniku je prikazan na spodnji sliki (slika 4.17).
Diplomsko delo, Aljaž Komprej Stran 27
Slika 4.17: Del kode v OB1 z inicializacijo izhodov
Inicializacija vhodov poteka na podoben način (slika 4.18).
Slika 4.18: Del kode v OB1 z inicializacijo vhodov
V tem bloku smo poleg klica vseh funkcij izvedli tudi pretvorbo vseh časov, ki jih lahko
uporabnik nastavi na operacijskem panelu. V časovnikih se uporablja samo čas oblike
S5Time, ki ni tako prijazen do uporabnika kot običajen čas oblike Time, ki ga poznamo v
vsakdanjem življenju. Zato je bilo potrebno izvesti pretvorbo teh oblik (slika 4.19).
Slika 4.19: Del kode v OB1 s pretvorbo različnih oblik časa
4.5.2 Organizacijski blok 100 – Complete_restart [OB100]
V industriji je izredno pomembna uporaba organizacijskega bloka 100, ki se izvede samo
ob zagonu oziroma ob ponovnem zagonu ali restartu krmiljenja linije.
Naprava, v našem primeru linija, vsebuje stikalo za izklop v sili, ki preko varnostnega
sistema Pilz prekine krmilno napetost napajalnika krmilnika. Zaradi nevarnosti nepravilne
ustavitve sistema ob izgubi napajanja moramo nekatere izhode vezati preko tega sistema.
Izhoda, ki smo si ju izbrali in sta pomembna za takojšno ponastavitev, sta pomik glave in
pomik rezil luknjača nazaj. Ob vsakem ponovnem zagonu sta ta dva izhoda resetirana.
Blok se preneha izvajati ko je glava luknjača zgoraj.
Diplomsko delo, Aljaž Komprej Stran 28
4.6 Zasloni operacijskega panela – HMI Screens
Vse funkcije zaslonov je potrebno prilagoditi željam uporabnikov in jih napraviti čim bolj
pregledne in dostopne.
Gumbe za prehod med zasloni nastavimo z zelo enostavno funkcijo povleci-spusti. To
storimo tako, da iz projektnega drevesa na levi strani zaslona enostavno s klikom
povlečemo okno zaslona na izbrani zaslon in tako se nam pojavi gumb s podanimi
nastavitvami.
Našemu projektu smo v konfiguraciji HMI zaslonov prilagodili še več drugih objektov. Za
vpis in odčitavanje časov, ki smo jih uporabili v programu, ter ostalih procesnih veličin,
smo vstavili funkcijo ''I/O field''. Nekaj gumbov in stikal smo našli v globalnih knjižnicah
TIA portala.
Za učinkovito upravljanje linije preko operacijskega panela je bilo uporabniku potrebno
podati navodila za uporabo funkcij operacijskega panela.
Navodila smo razdelili v tri kategorije. Prva kategorija je opis funkcij na glavnem zaslonu,
od koder dostopamo tudi do vseh ostalih zaslonov. Drugi del navodil predstavljajo zasloni
s funkcijami vseh ročnih komand sistema. Tretji del so vse funkcije za nastavitev časov, ki
so potrebni za izvajanje določenih delov linije. Kategorija za nastavitev časov je predvsem
zaradi varnosti dostopna samo z vpisom uporabniškega imena in gesla, ki je znana vsem
uporabnikom. Takšen način zaščite je uporabljen samo zaradi morebitnega nenadnega in
nepremišljenega pritiskanja po zaslonu v primeru panike ali nepoznavanja sistema.
4.6.1 Funkcije glavnega zaslona
Glavni zaslon operacijskega panela služi kot pregled in nadzor osnovnih in
najpomembnejših funkcij proizvodne linije. Od tod lahko uporabnik dostopa do vseh
ostalih nadzornih funkcij in nastavitev krmiljenja linije. Na glavnem zaslonu se najprej
prikažejo tudi vse napake oziroma alarmi, ki jih lahko tukaj tudi potrdimo in ponovno
preverjamo.
Diplomsko delo, Aljaž Komprej Stran 29
Slika 4.20: Glavni zaslon
Na zgornji sliki (slika 4.20) so prikazane vse osnovne funkcije glavnega ali ''HOME''
zaslona. S številkami od ena do sedem si sledijo osnovne funkcije, ki jih lahko uporabnik
nadzira ali z njimi upravlja. Te so:
1. prikaz načina delovanja (ROČNO ali AVTOMATSKO),
2. stanje luknjača – vklop (ON) ali izklop (OFF),
3. stanje hotmelta (doziranja lepila) – vklop (ON) ali izklop (OFF),
4. gumb ROČNO – preklop na zaslon z ročnimi komandami,
5. gumb SETUP – preklop na zaslon z nastavitvami časov (zaščiten z geslom in
uporabniškim imenom),
6. gumb ALARM – prikaz alarmnega okna,
7. gumb ALARM ACKN. – potrditev alarmov.
4.6.2 Zasloni za upravljanje ročnih komand
Ročno lahko uporabnik upravlja z osemnajstimi različnimi komandami v sistemu. Za
vsako funkcijo ročne postavitve izhoda je bilo potrebno definirati gumb na zaslonu
operacijskega panela. Razvrstili smo jih na tri zaslone, ki jih je mogoče medsebojno
preklapljati. Gumbi za preklop med izhodi so postavljeni čisto na dnu zaslona. Med njimi
je tipka HOME za preklop na glavni zaslon.
1
.
2
.
7
.
6
.
5
.
4
.
3
.
Diplomsko delo, Aljaž Komprej Stran 30
Slika 4.21: Prvi zaslon ročnih komand
Zgornja slika (slika 4.21) prikazuje gumbe za postavitev ročnih komand samo na prvem
zaslonu. Ukazi, ki jih najdemo na vseh treh zaslonih za ročno upravljanje, so:
- trak pred luknjačem – motor transportnega traku pred luknjačem,
- trak luknjač – motor transportnega traku pod glavo luknjača,
- trak hotmelt – motor transportnega traku na postaji nalivanja lepila,
- trak HM hitro – preklop frekvenčnega pretvornika v povišano hitrost,
- trak 1 za BM – motor prvega transportnega traku za COS strojem,
- trak 2 za BM - motor prvega transportnega traku za COS strojem,
- izmetna plošča – dvig oz. spust plošče,
- izmet in izpih odpada hkrati,
- pomik glave – dvig oz. spust glave luknjača,
- prijemalo – levo in desno prijemalo za ravnanje posode
- prebijači naprej – potisk rezil naprej,
- prebijači nazaj – potisk rezil nazaj,
- hidravlična črpalka – vklop oz. izklop hidravlične črpalke,
- divider pred luknjačem – zapora pred luknjačem,
- stoper na luknjaču – zapora pod glavo luknjača,
Diplomsko delo, Aljaž Komprej Stran 31
- stoper na HM – vključuje izmenični vklop oz. izklop zapor na postaji hotmelt,
- doziranje lepila – vklop oz. izklop ventilov za doziranje lepila.
4.6.3 Zasloni za nastavitve časov
V programu najdemo devet različnih nastavitev časov. Okna za nastavitev časov v
sekundah so porazdeljena na treh zaslonih, ki jih je prav tako mogoče medsebojno
preklapljati.
Slika 4.22: Prvi zaslon za nastavitve časov
Zgornja slika (slika 4.22) prikazuje gumbe za nastavitev časov samo na prvem zaslonu.
Ukazi, ki jih najdemo na vseh treh zaslonih za nastavitve časov, so:
- prebijači NAPREJ / NAZAJ – čas, ki ga potrebujejo rezila, da jih hidravlika
potisne naprej in nazaj;
- IZMET / IZPIH odpada – čas, potreben za izmet in izpih odpada iz rezil;
- preden začne nalivati lepilo – čas, ko senzor od zgoraj zazna notranje stene oz.
prekate in prične z nalivanjem lepila;
- čas nalivanja lepila – čas, ko se lepilo naliva v posodo;
- glava gre dol – čas, ki je potreben da se glava lahko spust,i ko trak obstoji;
- preden trak stoji na hotmeltu – čas, ko luknjač ne prejme signala od BM-a in
nato obstoji;
Diplomsko delo, Aljaž Komprej Stran 32
- preden se ustavi trak luknjač – čas, ki je potreben, da se trak na luknjaču
zaustavi in lahko prične z luknjanjem;
- čas, ko je posoda na klancu – preden drugi trak za BM obstoji (posode se na
klančini naberejo in pokrijejo stikalo);
- čas pomikanja za zalogo – na prvem traku za BM (priprava zaloge na traku
takoj za COS strojem – čas ustavljanja).
Diplomsko delo, Aljaž Komprej Stran 33
5 ZAGON IN TESTIRANJE POSODOBLJENE LINIJE
Zagon posodobljene linije za pripravo akumulatorskih posod je potekal med kolektivnim
dopustom podjetja. Pred tem je bilo potrebno za izdelavo elektro načrtov podjetju, ki jih
izdeluje, posredovati simbolno tabelo vseh uporabljenih vhodov in izhodov krmilja. Ko so
bili načrti napravljeni je vzdrževalna služba pričela z montažo krmilnika in njegovih
modulov z vsemi pripadajočimi vhodnimi in izhodnimi povezavami.
S končanjem povezovanja strojne opreme z aktuatorji v sistemu se je pričel test vseh
vhodov. Signale optičnih stikal se preprosto preveri s prekinitvijo optičnega snopa.
Pravilnost namestitve povezave preverimo z utripanjem lučke na vhodu krmilnika ob
prekinitvi snopa. Pravilnost delovanja nekaterih magnetnih stikal smo preverili s fizičnim
pomikom glave luknjača. Ostale smo lahko preverili kasneje v ročnem načinu delovanja.
Najpomembnejša je pravilna vezava stikala za izklop v sili in izhodnega modula, ki smo ga
vezali mimo varnostnega stikala. Ob pritisku na varnostno stikalo proces izgubi krmilno
napetost. Preko te napetosti pa niso napajani izhodni signali, ki morajo biti zaradi varnosti
neprekinjeni.
Naslednji koraki testiranja linije so bili vzpostavitev povezave s krmilnikom in naložitev
konfiguracije ter programa na PLK. Preko operacijskega panela smo nato pričeli z
zagonom ročnega delovanja linije. V ročnem delovanju smo testirali vse izhodne
spremenljivke. Pri nekaterih izhodih je bilo potrebno v programu popraviti obrnjeno logiko
(npr. prijemala glave, zapora pod luknjačem, zapori na postaji za vlivanje lepila).
Avtomatsko delovanje linije smo preverili šele, ko smo bili prepričani o pravilnem
delovanju vseh ročnih funkcij, torej izhodov, in vhodov krmilnika. Sledilo je popravljanje
napak programa in optimizacija po željah uporabnikov.
Linijo smo nato v obeh načinih (ročno in avtomatsko) testirali v kočljivih situacija, na
primer ob izpadu napetosti med samim luknjanjem. Takrat se morajo ob prvem zagonu
rezila pomakniti nazaj in odpreti prijemala ter šele nato se glava pomakne nazaj v prvotni
položaj.
Zaradi želje po čim učinkovitejšem in optimalnem delovanju krmiljenja linije ter
morebitnih odstopanj od prvotnih zamisli bodo po vsej verjetnosti potrebni kakšni manjši
popravki aplikacije. Vzdrževanje programskega dela linije smo nekoliko olajšali s
komentarji v kodi programa.
Diplomsko delo, Aljaž Komprej Stran 34
6 SKLEP
Vsebina diplomske naloge se navezuje na posodobitev programskega dela linije za
pripravo akumulatorskih posod v podjetju TAB, d. d..
Sama linija je bila sprva sestavljena iz več zapletenih krmilnih sistemov in ostankov linij in
aktuatorjev, ki niso bili več v uporabi. Ideja odgovornih v podjetju je bila posodobitev te
zastarele linije, ki je z vsemi nepotrebnimi deli oteževala vzdrževanje in sam nadzor.
Za učinkovito avtomatiziran sistem smo izbrali Siemensov krmilnik z dovršenim zaslonom
na dotik, ki uporabniku omogoča enostavno upravljanje.
V uvodnem poglavju naloge je kratka predstavitev podjetja, kjer smo opravljali tudi
praktično izobraževanje, ki se je navezovalo na spoznavanje s programsko in strojno
opremo krmilnikov nemškega proizvajalca Siemens. To podjetje je z izdelki s področja
programirljive krmilne tehnike eno vodilnih v Evropi.
Program smo pisali v programskem okolju TIA portal, ki predstavlja združeno celoto vseh
predhodnih okolij za programiranje krmilnikov in HMI zaslonov. V prihodnosti se bomo
inženirji na tem področju vsekakor še srečevali s tem okoljem in novimi generacijami
krmilnikov. Znanje s tega področja inženirjem omogoča zaposlitve v najrazličnejših
proizvodnih podjetjih.
V diplomskem delu je predstavljena proizvodnja akumulatorskih baterij in linije, kjer se je
naloga izvršila. Opisan je postopek programiranja za krmiljenje posameznih delov linije in
njihovih aktuatorjev ter združena celota programskega dela.
Posodobljena linija je bila med vsakoletnim remontom preizkušena v skoraj vseh
situacijah. To pomeni, da je bilo najprej preizkušeno ročno delovanje in nato avtomatsko.
Med avtomatskim delovanjem je bilo potrebno preveriti še nepredvidene situacije, kot je
izpad krmilne napetosti v kočljivih trenutkih.
Linija se je nato z manjšimi popravki zagnala in postala del proizvodnje akumulatorskih
baterij.
Diplomsko delo, Aljaž Komprej Stran 35
7 VIRI, LITERATURA
[1] B. Kovač, Strokovni dogodek Novosti TIA Portala, SVET ELEKTRONIKE, 07/08,
(2013), 21-22.
[2] G. Mušič, Avtomatika, 1. izd., Založba FE in FRI, Ljubljana, 2014
[3] Siemens AG, Simatic STEP 7 in the TIA portal, Intuitive and efficient engineering –
from the microcontroller to the PC-based controller, 6ZB5310-0PX02-0BA3, Siemens AG,
Nürnberg, 2012.
[4] Siemens AG, SIMATIC, Programming with STEP7 - MANUAL, 05/2010, 6ES7810-
4CA10-8BW0, Siemens AG, Nürnberg, 2010.
[5] Siemens AG, Simatic STEP 7 Professional / WinCC Advanced V11 for Sample project
Filling Station, 11/2011, A5E03728923-01, Siemens AG, Nürnberg, 2011.
Diplomsko delo, Aljaž Komprej Stran 36
8 PRILOGE
PRILOGA A:
SIMBOLNA TABELA:
MODUL 1 – INPUT ADDRESS 0
Ime simbola Naslov Komentar
%I0.0
Opt_HM1 %I0.1 optično stikalo posoda na hotmeltu
Opt_za_HM %I0.2 optično stikalo na izhodu HotMelta
Opt_HM2 %I0.3 optično stikalo za zaznavanje posode na HM
Opt_HM3 %I0.4 optično stikalo za zaznavanje prekatov na HM
BM_signal %I0.5 signal od BM za HotMelt
%I0.6
%I0.7
MODUL 1 – INPUT ADDRESS 1
Opt_pred_tr4 %I1.0 optično stikalo bat. na začetku traku 4
%I1.1
Opt_na_tr4 %I1.2 optično stikalo bat. na začetku traku 5
Opt_na_tr5 %I1.3 optično stikalo bat. na koncu traku 5
Opt_na_klancu %I1.4 optično stikalo bat. na traku Daga klančina
izpad_frekv %I1.5 izpad frekvenčnega reg.
ROCNO/AVTO %I1.6 izbira ročno / avtomatsko
Krmilna_napetost %I1.7 krmilna napetost
Diplomsko delo, Aljaž Komprej Stran 37
MODUL 2 – OUTPUT ADDRESS 4
%Q4.0
Trak1_T %Q4.1 start GF1 trak pred luknjačem TOV
Trak_HM_hitro %Q4.2 GF3 na hotmeltu hitro
Trak3_T %Q4.3 start GF3 trak hotmelt TOV
%Q4.4
Trak4_T %Q4.5 start GF4 trak 1 za BM TOV
%Q4.6
Trak5_T %Q4.7 start GF5 trak 2 za BM TOV
MODUL 2 – OUTPUT ADDRESS 5
%Q5.0
Trak2_T %Q5.1 start GF2 trak luknjač TOV
%Q5.2
%Q5.3
Motor_hidravlike %Q5.4 KN motor hidravlike luknjač
%Q5.5
%Q5.6
%Q5.7
Diplomsko delo, Aljaž Komprej Stran 38
MODUL 2 – OUTPUT ADDRESS 6
%Q6.0
%Q6.1
Signal_od_HM_za_BM %Q6.2 signal od hotmelta za BM – posoda na izhodu
BM_spusti_posodo %Q6.3 signal od BM za hotmelt – spusti posodo
%Q6.4
%Q6.5
%Q6.6
Prebijaci_naprej %Q6.7 EMV Prebijači naprej - TOV
MODUL 2 – OUTPUT ADDRESS 7
%Q7.0
Prijemalo %Q7.1 EMV Prijemalo za ravnanje posode - TOV
Izmetna_plosca %Q7.2 EMV Izmetna plošča - TOV
Stoper_pred_lukn_l %Q7.3 EMV Divider levi pred luknjačem - TOV
Stoper_pred_lukn_d %Q7.4 EMV Divider desni pred lunjačem - TOV
Stoper_na_lukn %Q7.5 EMV Stoper levi in desni na luknjaču - TOV
Izmet_odpada %Q7.6 EMV Izmet odpada - TOV
Izpih_odpada %Q7.7 EMV Izpih odpada - TOV
Diplomsko delo, Aljaž Komprej Stran 39
MODUL 3 – INPUT ADDRESS 8
%I8.0
%I8.1
%I8.2
%I8.3
Hidravlicna_crpalka %I8.4 magnetno stikalo hidravlična črpalka luknjača
%I8.5
%I8.6
%I8.7
MODUL 3 – INPUT ADDRESS 9
Glava_zgoraj %I9.0 magnetno stikalo glava zgoraj - TOV
Glava_spodaj %I9.1 magnetno stikalo glava spodaj - TOV
Desno_prijemalo %I9.2 magnetno stikalo desno prijemalo - TOV
Levo_prijemalo %I9.3 magnetno stikalo levo prijemalo - TOV
Izmet_desno_dol %I9.4 magnetno stikalo izmet desni cilinder dol - TOV
Izmet_desno_gor %I9.5 magnetno stikalo izmet desni cilinder gor - TOV
Izmet_levo_dol %I9.6 magnetno stikalo izmet levi cilinder dol - TOV
Izmet_levo_gor %I9.7 magnetno stikalo izmet levi cilinder gor - TOV
Diplomsko delo, Aljaž Komprej Stran 40
MODUL 4 – INPUT ADDRESS 13
Opt_pred_luk %I13.0 optično stikalo pred na vhodu v luknjač - TOV
Opt_na_lukn %I13.1 optično stikalo na postaji luknjač - TOV
Opt_za_lukn %I13.2 optično stikalo za stoperjem na luknjaču - TOV
%I13.3
%I13.4
%I13.5
%I13.6
%I13.7
MODUL 5 – OUTPUT ADDRESS 16
Stoper_HM %Q16.0 EMV Stoper na postaji HotMelt
%Q16.1
Doziranje_lepila %Q16.2 EMV doziranje lepila 1 HM
%Q16.3
%Q16.4
%Q16.5
%Q16.6
%Q16.7
Diplomsko delo, Aljaž Komprej Stran 41
MODUL 5 – OUTPUT ADDRESS 17
%Q17.0
Red %Q17.1 semafor rdeča
Yellow %Q17.2 semafor rumena
Green %Q17.3 semafor zelena
%Q17.4
%Q17.5
Pomik_glave %Q17.6 EMV Pomik glave - TOV
Prebijaci_nazaj %Q17.7 EMV Prebijači nazaj - TOV
8.1 Seznam slik
Slika 1.1: Logotip podjetja …….……………………………………………..………….…………….. Slika 2.1: Pb plošče ………..………………………………………………………………….…………… Slika 2.2: Sestava akumulatorske baterije ………………..…………..………...…………….. Slika 2.3: Luknjač akumulatorskih posod s transportnim trakom ………….….…… Slika 2.4: Postaja za nalivanje vročega lepila ………..……………………………………….. Slika 2.5: Začetni del linije za pripravo akumulatorskih posod ……………..……….. Slika 3.1: Konfiguracija strojne opreme PLK v projektu …………………………………… Slika 3.2: Operacijski panel SIMATIC HMI KTP600 …..………………………………………. Slika 4.1: Programski bloki v TIA portalu …………..……………………………………………. Slika 4.2: Diagram poteka programskih blokov …………….………………………………… Slika 4.3: (1.) Negativna fronta in flip-flop, (2.) časovnik S_ODT, (3.) primerjalnik ________..Not equal, (4.) ukaz za pomik MOVE ……………….……………………….……. Slika 4.4: (1.) A (logični in), JCN (skoči če je RLO = 0), L (load), T (transfer), NOP _________0 (ne naredi nič), (2.) SET (RLO na '1'), R ('reset'), S ('set'), (3.) _________pretvornik časov T_CONV …………………………....………..……………………….. Slika 4.5: Začetne vrstice v FB1 ………………..……………………………………………………… Slika 4.6: Ponastavitev vseh izhodov v FB1 ……………………………………………………… Slika 4.7: Avtomat stanj v FB1 ……………………………..………………………………………….. Slika 4.8: Korak S0 v FB1 …………..…………………………………………………………………….. Slika 4.9: Uporaba časovnika v FB1 ………………………………………….…………………….. Slika 4.10: Pulzni diagram časovnika S_ODT …..………………………………………………… Slika 4.11: Korak S1 v FB1 ..……………………………………………………………………………….. Slika 4.12: Korak S1, Network 13 z negativno fronto v FB3 ..…………………………….. Slika 4.13: Korak S2, Network 15, pogoji za prehod v stanje doziranja lepila …… Slika 4.14: Klic funkcijskih blokov v funkciji s pripadajočimi vhodi in izhodi ………..
2 3 4 6 7 8 9 10 12 13 14 14 15 16 16 17 17 18 18 20 21 24
Diplomsko delo, Aljaž Komprej Stran 42
Slika 4.15: Ukazi, ki se izvedejo ob izbiri načina ročno ..…………………………………… Slika 4.16: Primer vključitve dveh alarmov v funkciji Alarmi1 ………………….………. Slika 4.17: Del kode v OB1 z inicializacijo izhodov …………………………………………… Slika 4.18: Del kode v OB1 z inicializacijo vhodov ……………………………………………. Slika 4.19: Del kode v OB1 s pretvorbo različnih oblik časa .……………………………. Slika 4.20: Glavni zaslon …………………………………………………………………………..……… Slika 4.21: Prvi zaslon ročnih komand ……………………………………………………………... Slika 4.22: Prvi zaslon za nastavitve časov ………………………………………………………..
25 26 27 27 27 29 30 31
8.2 Naslov študenta
Ime in priimek: Aljaž Komprej
Naslov: Lampreče 23
Pošta: 2393 Črna na Koroškem
Tel.študenta: 00 386 41 684 657
e-mail študenta: [email protected]
8.3 Naslov gospodarske družbe
Podjetje: TAB Tovarna akumulatorskih baterij d.d.
Sedež: Polena 6, 2392 Mežica
Naslov izvedbe dela: Mušenik 18, 2393 Črna na Koroškem
Telefon: 00 386 2 87 02 300
Telefax: 00 386 2 87 02 305
e-mail: [email protected]
8.4 Kratek življenjepis
Rojen: 9. 8. 1993 v Slovenj Gradcu
Šolanje:
- Osnovna šola Črna na Koroškem
- Šolski center Ravne na Koroškem, Gimnazija Ravne na Koroškem
- Univerza v Mariboru, Fakulteta za elektrotehniko, računalništvo in informatiko
Univerzitetni študijski program Elektrotehnika, smer Avtomatika in robotika
Diplomsko delo, Aljaž Komprej Stran 43
Diplomsko delo, Aljaž Komprej Stran 44
Diplomsko delo, Aljaž Komprej Stran 45