MODUL 2 · PROGRAMIRLJIVI LOGIČKI KONTROLERI (PLC) U ROBOTICI
Nastavna jedinica 2.5
Programiranje komunikacije
Dva uređaja spojena kabelom još nisu dva uređaja koja surađuju. Potreban je dogovor o tome tko prvi govori, koliko dugo se čeka odgovor i što se radi kada odgovora nema. Taj se dogovor zove rukovanje signalima i o njemu ovisi hoće li se ćelija nakon smetnje sama vratiti u rad ili će stajati dok netko ne dođe.
- objasniti svrhu rukovanja signalima između PLC-a i robota
- opisati redoslijed zahtjeva, potvrde i dovršetka te ga prikazati dijagramom stanja
- postaviti nadzor vremena i odrediti postupak pri izostanku potvrde
- opisati obradu prekida veze i ponovnog uspostavljanja
- sastaviti plan ispitivanja komunikacije prije puštanja ćelije u rad
- prepoznati česte pogreške u programiranju razmjene signala
Zašto potvrda, a ne samo naredba
Najjednostavniji način da PLC pokrene robota jest da postavi jedan signal i pretpostavi da je robot krenuo. Takav program radi savršeno dok je sve u redu, a raspada se pri prvoj neobičnosti: ako je robot upravo bio u ručnom načinu, ako je kontroler tek završio pokretanje ili ako je signal nestao za vrijeme jednog ciklusa, PLC to neće primijetiti i nastavit će kao da se ciklus odvija.
Zato se svaka radnja izvodi uz potvrdu. PLC postavi zahtjev, robot ga primi i javi da je preuzeo posao, a kada posao dovrši, javi i to. PLC potom povuče zahtjev, robot povuče potvrdu i oba uređaja su u poznatom, praznom stanju iz kojega se može krenuti ponovno. Taj se postupak zove rukovanje signalima.
Rukovanje signalima ima još jednu korist koja se vidi tek u pogonu: u svakom trenutku je moguće reći gdje je ciklus stao. Ako zahtjev stoji, a potvrde nema, problem je na strani robota. Ako potvrda stoji, a PLC je ne povlači, problem je u PLC programu. Bez potvrda ta razlika se ne vidi i traženje uzroka pretvara se u nagađanje.
Tri koraka: zahtjev, potvrda, dovršetak
Razmjena se odvija u tri koraka, svaki s vlastitim signalom. Zahtjev postavlja onaj tko traži radnju i drži ga sve dok radnja traje. Potvrda preuzimanja govori da je druga strana zahtjev primila i počela raditi. Dovršetak govori da je radnja gotova. Tek nakon dovršetka zahtjev se povlači, a povlačenje zahtjeva je znak drugoj strani da povuče svoje signale.
Primjer za otvaranje vrata glodalice u ćeliji ZR-1, zapisan kao redoslijed koraka:
Korak 10: robot postavi doReqDoor = 1 (zahtjev)
Korak 20: PLC provjeri: obrada gotova AND stroj stao
Korak 30: PLC otvori vrata, postavi RB_VrataOtvorena = 1 (potvrda)
Korak 40: robot uđe, izmijeni obradak, izađe
Korak 50: robot postavi doReqDoor = 0 (povlačenje zahtjeva)
Korak 60: PLC zatvori vrata, RB_VrataOtvorena = 0
Korak 70: PLC pokrene obradu, ciklus se nastavljaUočite da robot ne otvara vrata i ne provjerava je li stroj stao — on samo traži. Uvjete provjerava PLC, jer on čuva stanje ćelije. To je ista podjela nadležnosti opisana u prethodnoj jedinici, ovdje zapisana u programu.
Dijagram stanja
Redoslijed koraka najlakše se provjerava ako se nacrta kao dijagram stanja. Svako stanje ima ime, uvjet izlaska i radnje koje se u njemu izvode. Iz svakog stanja mora postojati izlaz i u slučaju kada se očekivani uvjet ne ispuni, inače nastaje stanje iz kojega se ne izlazi.
| Stanje | Radnja | Uvjet prijelaza | Sljedeće stanje |
|---|---|---|---|
| 0 – mirovanje | svi signali na 0 | dopuštenje i ima obradaka | 10 |
| 10 – priprema | upiši broj programa i poziciju | podaci upisani | 20 |
| 20 – pokretanje | postavi zahtjev za start | robot potvrdio preuzimanje | 30 |
| 30 – izvođenje | prati stanje robota | robot javio dovršetak | 40 |
| 30 – izvođenje | prati stanje robota | istekao nadzor vremena | 90 |
| 40 – završetak | povuci zahtjev, povećaj brojilo | robot povukao potvrdu | 0 |
| 90 – smetnja | zaustavi, prikaži poruku | operater potvrdio | 0 |
Dijagram stanja nije samo pomoć pri pisanju programa. On je ujedno i dokument: iz njega se kasnije čita što je ćelija trebala učiniti, pa se pohranjuje uz tablicu signala i shemu.
Nadzor vremena
Svako čekanje u programu mora imati nadzor vremena. Ako se potvrda očekuje unutar 500 ms, a nije stigla ni nakon 3 s, čekanje se prekida i ćelija prelazi u stanje smetnje s jasnom porukom. Program koji čeka bez ograničenja izgleda ispravno na ispitivanju i zaustavi cijelu liniju prvi put kada nešto ne odgovori.
Vrijeme nadzora ne postavlja se nasumično. Uzima se najdulje očekivano trajanje radnje, doda mu se nekoliko ciklusa mreže i ciklusa programa te razumna rezerva. Prekratko vrijeme daje lažne prijave pri svakom usporenju, predugo vrijeme znači da ćelija dugo stoji prije nego što itko sazna da nešto nije u redu.
Poruka koja se pritom prikazuje treba imenovati signal i korak, a ne samo reći da je došlo do pogreške. Poruka Nema potvrde RB_CiklusGotov u koraku 30 nakon 5 s vodi izravno na uzrok; poruka Greška komunikacije ne vodi nikamo.
Prikaz predlaže vrijeme nadzora prema očekivanom trajanju radnje, ciklusima mreže i programa te pokazuje koliko se proizvodnje izgubi dok se smetnja ne prijavi.
Prekid veze i ponovna uspostava
Prekid mrežne veze razlikuje se od izostanka potvrde. Kod prekida ne stiže ništa, pa se svi primljeni podaci moraju smatrati nevažećima. Upravljački uređaj to prepoznaje sam i postavlja dijagnostičku oznaku, a program je mora čitati i reagirati: zaustaviti ciklus, zadržati zatečeno stanje naprava i spriječiti da se zadnja zapamćena vrijednost i dalje upotrebljava kao da je svježa.
Pri ponovnom uspostavljanju veze ne smije se nastaviti ondje gdje se stalo. Stanja se postavljaju u poznati početni položaj, signali se poništavaju s obje strane, a ciklus se pokreće tek nakon potvrde operatera. Razlog je jednostavan: dok veze nije bilo, netko je mogao ručno pomaknuti robota, izvaditi obradak ili otvoriti vrata, pa zatečeno stanje u programu više ne odgovara stvarnosti.
Zapamtite
Nakon prekida veze ćelija se ne nastavlja — ćelija se ponovno pokreće iz poznatog stanja, uz potvrdu operatera.
Ispitivanje i česte pogreške
Komunikacija se ispituje prije nego što se ćelija preda u rad, i to redoslijedom od najjednostavnijeg prema najsloženijem. Najprije se provjerava veza na razini uređaja: vide li se svi sudionici i nema li dijagnostičkih poruka. Zatim se svaki signal provjerava pojedinačno — postavi se na jednoj strani i potvrdi na drugoj, uz zapis u tablicu signala. Tek nakon toga ispituje se ciklus u cjelini, najprije u praznom hodu bez obratka, pa s jednim obratkom, pa u punom taktu.
Na kraju se namjerno izazivaju smetnje: otvori se ograda usred ciklusa, isključi se kontroler robota, izvuče se mrežni kabel. Za svaki od tih slučajeva mora se pokazati da ćelija reagira predvidivo i da se iz nastalog stanja može vratiti u rad. Rezultat svakog ispitivanja upisuje se u zapisnik puštanja u rad.
| Pogreška | Kako se očituje | Kako se izbjegava |
|---|---|---|
| Istodobno postavljeni zahtjev i potvrda | ciklus preskoči korak ili se ponovi | potvrda se postavlja tek nakon otkrivanja zahtjeva |
| Zaglavljeno stanje | ćelija stoji bez poruke | svako stanje ima izlaz i nadzor vremena |
| Nepotvrđen prijelaz | PLC ide dalje, robot još radi | prijelaz samo na potvrdu, ne na vrijeme |
| Predugo vrijeme nadzora | zastoj se primijeti kasno | nadzor prema stvarnom trajanju radnje |
| Prekratko vrijeme nadzora | lažne prijave pri usporenju | dodati rezervu za cikluse mreže |
| Nejasna poruka o pogrešci | traženje uzroka traje | poruka imenuje signal i korak |
Zajedničko svim nabrojenim pogreškama jest da se ne pojavljuju pri ispitivanju u idealnim uvjetima. Pojavljuju se u trećoj smjeni, kada se poklope usporenje mreže, neuobičajen redoslijed radnji operatera i jedan signal koji je propušten. Zato se komunikacija ispituje namjernim izazivanjem smetnji, a ne samo promatranjem uspješnog ciklusa.
Ključni pojmovi
| Pojam | Značenje |
|---|---|
| Rukovanje signalima | Dogovoreni redoslijed zahtjeva, potvrde preuzimanja i dovršetka. |
| Zahtjev | Signal kojim jedan uređaj traži radnju i drži ga dok radnja traje. |
| Potvrda preuzimanja | Signal kojim druga strana javlja da je zahtjev primila. |
| Dijagram stanja | Prikaz stanja programa s uvjetima prijelaza i radnjama u svakom stanju. |
| Nadzor vremena | Ograničenje trajanja čekanja uz prijavu smetnje pri isteku. |
| Zaglavljeno stanje | Stanje iz kojega program nema izlaz jer očekivani uvjet nikada ne nastupi. |
Provjeri se
Kratka provjera prije prelaska na sljedeću jedinicu. Odgovor se potvrđuje klikom, a obrazloženje se prikazuje odmah.
Pitanje 1 od 3
Zašto se svaka radnja izvodi uz potvrdu, a ne samo postavljanjem naredbe?
Potvrde omogućuju da se razlikuje kvar na strani robota od pogreške u PLC programu i da se ciklus prati korak po korak.
Pitanje 2 od 3
Čemu služi nadzor vremena pri čekanju potvrde?
Bez nadzora vremena program čeka neograničeno i ćelija stoji bez poruke o uzroku.
Pitanje 3 od 3
Nakon ponovnog uspostavljanja prekinute veze ciklus se:
Dok veze nije bilo, stvarno stanje ćelije moglo se promijeniti, pa se kreće iz poznatog stanja.
Odgovoreno 0 od 3.