Sunteți pe pagina 1din 56

Capitolul 5.

Sisteme de conducere cu automate rogramabile

Capitolul 5

SISTEME DE CONDUCERE CU AUTOMATE PROGRAMABILE


Flexibilitatea, fiabilitea, insensibilitea la perturbaii precum i o serie de cerine privind facilitile oferite la introducerea sau la modificarea programelor de lucru sunt cteva din caracteristicile de baz ce se impun la ora actual echipamentelor de conducere pentru majoritatea aplicaiilor ce utilizeaz roboi industriali. ntr-o mare msur, aceste cerine sunt acoperite de automatele programabile. Un automat programabil este un sistem specializat destinat pentru tratarea problemelor de logic secvenial i combinaional, simulnd structurile logice de comand prntr-o configuraie elastic, programabil. Prin concepia sa, automatul programabil este adaptabil pentru funcionarea n mediu industrial, poate opera ntr-o plaj larg de temperatur i umiditate, este uor adaptabil la interfaarea cu orice proces i nu pune probleme deosebite privind formarea personalului de deservire datorit facilitilor de programare oferite. Toate aceste caracteristici, la care se mai pot aduga robusteea general a echipamentului i preul de cost relativ redus, fac ca automatele programabile s constituie o pondere important n sistemele de conducere ale roboilor industriali.

5.1 Caracteristici generale


Arhitectura general a unui automat programabil este desfurat n jurul unei magistrale de date la care sunt conectate circuitele de intrare ieire, unitatea central i memoria sistemului (fig. 5.1). Variabilele de intrare sunt realizate sub forma diverselor elemente de comand i msurare incluse n sistemele operaionale i auxiliare ale roboilor: limitatoare de pozitie, mrimi mecanice de la traductoare de deplasare incrementale sau absolute sau chiar de la sisteme de msurare analogic dup o conversie analog-numeric.

Capitolul 5. Sisteme de conducere cu automate rogramabile

Variabilele de ieire dirijeaz acionarea elementelor de execuie de tipul contactoarelor, electrovalvelor, elementelor de afiare, etc. Unitate de comand Memorie
Bloc de control Bloc de oper logic Circuite de interfa ieire

Variabile de intrare

Circuite de interfa intrare

Variabile de ieire

Unitate central
Unitate de programare

Figura 5.1 Circuitele de interfa intrare-ieire au rolul de a converti semnalele de intrare de diverse forme n semnale logice adaptate unitaii centrale i de a transforma semnalele logice ale unitaii n semnale de ieire corespunztoare acionrii impus de sistemul de for al robotului. Unitatea de comand coordoneaz toate transformrile de date furnizate de proces, efectueaz operaii logice asupra datelor recepionate i asigur alocarea corespunztoare a rezultatelor obinute la ieirile programate. De asemenea, executa i o prelucrare de informaie numeric de la proces, rezultatul acestor operaii condiionand starea operatorilor logici ai unitii de control. Unitatea de programare permite introducerea i definitivarea programului n raport cu evoluia robotului i cu modificrile impuse n secvenele funcionale de baz ale acestuia. Soluiile adoptate de proiectanti cuprind dou versiuni; o consol autonom cu memorie proprie sau o consol ce opereaza mpreuna cu automatul utiliznd memoria acestuia. Prima variant ofer avantajul unei programri simple, ntr-un birou de proiectare, a doua implic cuplarea direct la automat deci implicit programarea se realizeaz nemijlocit n intimitatea procesului tehnologic condus. Unitatea central este, n principiu, o unitate logic capabil s interpreteze un numr mic de instruciuni care exprim funciile de baz ntr-un proces de conducere; instruciuni de evaluare a unor expresii booleeene cu pstrarea rezultatului la o variabil din memorie sau la o ieire, instruciuni de numrare sau temporizare, instruciuni aritmetice de adunare, scdere, comparaie, etc. De
155

Capitolul 5. Sisteme de conducere cu automate rogramabile

asemenea, pot fi utilizate instruciuni de salt condiionat, instruciuni de subrutine i instruciuni de indexare. Executarea instruciunilor este ciclic, ceea ce determin o simplificare considerabila a structurii logice interne i evit introducerea unui sistem de ntreruperi prioritare. innd cont de constantele de timp proprii acionrii roboilor industriali, se impune ca timpul de baleaj al unui program de conducere s fie inferior celei mai mici constante de timp. n acest fel, se asigura preluarea tuturor informaiilor privind elementele semnificative ale micarii i interpretarea lor imediat. Memoria automatelor programabile stocheaza programe de date i este, n generel, o memorie de dimensiune mica, ntre 1k i 16k cuvinte, standardizate de obicei la 8 sau 16 bii. Memoria este segmantat n zone: una rezervat variabilelor de intrare-ieire, alta variabilelor ce definesc starea intern a automatului i ultima este destinata programului ce urmeaz s fie executat. O caracteristic esenial a automatelor o constituie simplitatea limbajului de programare. O persoan, nefamiliarizart cu tehnici specifice de informatic, poate sa programeze usor i rapid un automat. Programarea const ntr-o scriere direct a unor secvene de instruciuni sau de ecuatii plecnd de la o diagram, organigrame de stri, expresii logice, etc. Unele automate utilizeaz, pentru programare, un limbaj similar unei logici cablate, altele prefer limbaje simbolice de tip boolean, ceea ce le confer o suplete deosebit.

5.2 Sistemul de interfa automat - robot


Conectarea unui automat la dispozitivele de intrare ieire ale unui robot se realizez prin intermediul unor circuite de interfat ce asigur compatibilitatea ntre tensiune i putere a semnalelor transmise. Aceste circuite primesc de la sistemele de msurare i senzoriale ale robotului informaia de msurare corespunztoare sau genereazacatre sistemul de acionare al acestuia mrimile de comand adecvate. Primul tip de circuite definete sistemul de interfaare pe intrare al automatului, iar al doilea pe ieire. Mrimile transmise pot reprezenta variabile de tip secvenial sau variabile numerice n conformitate cu structura algoritmilor de comand utilizai i cu modalitile de prelucrare intern, n automat, a informaiei de operare. Aceste mrimi sunt captate de la robot sau sunt transmise ctre acestea n mod periodic, conform procedurii de dialogare utilizat de automat. Trebuie subliniat, nca odata, absena unui sistem de ntreruperi n structura intern a automatului ceea ce

156

Capitolul 5. Sisteme de conducere cu automate rogramabile

impune interogarea periodic a mrimilor de intrare (de la robot) i activarea tot periodica a canalelor de ieire (spre robot).
Magistral de date Magistral de adrese Magistral de control

INTERFA INTRARE

INTERFA IEIRE

Intrri secveniale

Intrri numerice

Ieiri secveniale

Ieiri numerice

Figura 5.2 Pentru realizarea unor faciliti privind sistemul de adresare a acestor variabile, mrimile corespunztoare sunt organizate pe module, un modul cuprinznd un numr bine precizat de variabile n corelaie cu dimensiunile magistralelor utilizate i cu mrimea cmpului de variabile. Dialogul automat robot poate fi realizat n trei moduri: 1) la fiecare nceput de ciclu program sunt achiziionate toate mrimile de intrare, se genereaz toate iesirile determinate n ciclul precedent iar ulterior se tece la execuia programului propriu-zis; 2) sunt achiziionte inti intrrile, se execut programul i se genereaz ieirile obinute dup noua execuie a programului; 3) intrrile i ieirile sunt achiziionate sau generate la cerere, n conformitate cu structura logic a programului.

5.2.1. Sistemul de interfa pe intrare


Informaiile de intrare n automat sunt reprezentate de o serie de variabile de tipul tot sau nimic ce definesc anumite poziii sau stri funcionale ale robotului precum i de variabilele numerice obinute la ieirea traductoarelor de deplasare. Aceste mrimi definesc, n ansamblu, cmpul de variabile de intrare ( I ) ce constituie sursa unor operanzi primari n prelucrarea ulterioar a informaiei. Selecia acestor mrimi se obine prin mai multe nivele de adresare n funcie de numrul de intrri aplicate i modul lor de organizare. n figura 5.3 este
157

Capitolul 5. Sisteme de conducere cu automate rogramabile

prezentat o schem general de adresare pe doua nivele. Cei k A bii ai vectorului de adres sunt defalcai n
k A = k1 + k 2

unde k1 i k 2 realizeaz adresarea pe cele dou nivele de adresa, respectiv. Activarea celor dou linii de multiplexoare este controlata prin semnalele de validare v1 i v 2 .
Magistral de date Magistral de adrese Magistral de control

v1
v
2

1 MUX 2

kA k2 k1

1 MUX 1

MUX 12
CI
1 Ik

MUX 1P
CI CI CI

CI
1 I1

CI

I 12

I k2

I 1p

I kp

Figura 5.3 Pentru realizarea compatibilitii electrice cu magistralele automatului semnalele primare de la intrare sunt prelucrate n circuite specializate CI. Acestea asigur adaptarea de impedana necesar , separarea galvanic a sursei primare, traductorul, de circuitele interne ale automatului, formarea semnalului electric n tensiune la parametrii acceptai de logic interna a acestuia etc. Circuitul reprzentat n fig. 5.4 constituie o configuraie utilizat pe larg n acest scop [21,54]. Acesta contine un prim grup de elemente ce asigura detecia semnalelor pozitive cu o amplitudine suficient de mare (deci eliminarea semnalelor pozitive de amplitudine redus), diodele D i DZ i un circuit de filtrare de tip trece-jos, R1 , R2 , C1 . A doua parte a circuitului este obinut dntr-un formator cu prag de tip trier Schmit ce permite obinerea caracteristicilor rectangulare i de nivel constant pentru semnalele prelucrate. Cele dou pri sunt cuplate prntr-un
158

Capitolul 5. Sisteme de conducere cu automate rogramabile

element optocuplor OC ce asigur totodat separarea galvanic fat de sursa primar. Sistemul acesta asigur transferul mrimilor de intrare pe magistrala de date a automatului. Dac prelucrarea logic intern a automatului este numai de tip secvenial, magistrala de date cuprinde o singur linie pe care vehiculeaz informaia respectiv. n cazul n care procesorul automatului este de tip numeric atunci magistrala cuprinde n mod curent 8 linii D0 , D1 ,....D7 . Variabilele de
intrare de tip secvenial sunt preluate de linia D0 iar vectorul de intrare numeric este transferat n paralel pe cele 8 linii ale magistralei. + D ui DZ R1 C1 R2 OC TS uo

Figura 5.4 Robotul poate accepta ca variabile de tip secvenial toate mrimile generate dup principiul tot sau nimic, deci limitatoare de poziie, limitatoare de cap de curs, senzori de proximitate, anumiti senzori tactili, traductoare de for moment cu prag etc. Toate aceste mrimi sunt organizate pe module i conectate direct, sau dupa cteva adaptri, la bornele de intrare ale interfeei. Variabilele numerice provin direct din traductoarele de msurare absolute sau din circuitul numeric (numrtorul de impulsuri) asociat msurii incrementale. n aceast categorie pot fi incluse, de asemenea, mrimile furnizate de traductoare senzoriale de tip analogic dup conversia acestora n mrimi numerice. Se pot enumera astfel traductoarele de deplasare de tip potentiometric, majoritatea senzorilor tactili de tip piele artificial, traductoarele de fort moment etc.

5.2.2. Sistemul de interfa pe ieire


Transferul datelor de la automat spre sistemul de acionare al robotului sau spre anumite dispozitive ale instalaiei tehnologice se realizeaz prin tehnici de demultiplexare succesiv, n funcie de numarul de variabile controlate {54} . Variabilele de ieire furnizate de automat pot fi de tip secvenial pentru acionarea unor circuite de for cu sistem de comand pe poart (tiristoare, triacuri), a unor
159

Capitolul 5. Sisteme de conducere cu automate rogramabile

relee intermediare, contractoare, etc., fie de tip numeric pentru controlul unor bucle de reglare din sistemul de conducere al robotului. n fig. 5.5 este prezentat un sistem de interfa cu decodificarea paralel a vectorului de adres. Cei k A bii de adres fiind segmentati n dou grupe cu k1 i respectiv k 2 bii. Fiecare segment servete pentru adresarea demultiplexoarelor DMUX1, DMUX2, funcionarea n paralel a acestora permind selecia simultan a cilor de activare pentru circuitele ieirilor secveniale i numerice. Propriu-zis, informaia de ieire veehiculat pe magistrala de date este nscris n circuite de memorie de tipul bistabilelor D (componentele secveniale cuplate la linia D0 ) i n registre de ieire (commponentele numerice). Activarea funciei de scriere n aceste componente se obine prin controlul semnalului de tact cu circuitele demultiplexoare menionate i prin semnalele de validare VM emise de magistrala de control. Magistral de control Magistral de adrese Magistral de date D0 VM DMUX1 k1 k2 kA DMUX2 VM

D Q

D Q

D Q MCE

D Q

D Q MCE

D Q

D Q MCE

E0

E1 Ep-1 Ieiri scalare

1 EN 0

1 EN 7

EN 0p EN 7p Ieiri numericee

Figura 5.5 Cuplarea sistemului de interfa la robot se realizeaz prin circuite de ieire specializate CE ce permit adaptarea electric cu sistemul de acionare al robotului, realizarea niveleului de putere solicitat de circuitele de fort precum i separarea galvanic a etajelor [22,54] . Circuitul este construit sub forma unui etaj amplificator de tip Darlington (fig. 5.6) la care comanda este dat prntr-un element optocuplor OC. n ieirea
160

Capitolul 5. Sisteme de conducere cu automate rogramabile

amplificatorului este montat sarcina propriu-zis, protejat la supratensiuni prntro diod de protecie D. Aceste configuraii de circuite sunt utilizate de obicei la transferul variabilelor de tip secvential, informaiile numerice sunt transferate direct n circuitele de control numeric, forma acestora fiind compatibil cu sistemele de prelucrare utilizate n buclele de conducere numeric. Ansamblul acestor mrimi definete cmpul variabilelor de ieire secveniale E sau numerice EN. n majoritatea programelor de conducere, aceste mrimi sunt generate la sfrsitul unor operaii logice sau aritmetice i marcheaz de obicei finalizarea unor secvene funcionale. n unele cazuri, prelucrarea logic executat ntr-o anumit faz necesit apelarea unor variabile de ieire determinate ntr-o faz necesit apelarea unor variabile de ieire determinate ntr-o faz anterioar. Pentru a facilita aceste operaii, unele automate conin o memorie suplimentar (RAM) n care se nscriu valorile ieirilor simultan cu nscrierea n circuitele de ieire. Se obine astfel n memorie o imagine a mrimilor de ieire ce poate constitui o surs pentru operanzii implicai n programele automatului.

D OC ui T Rsarcin

Figura 5.6

5.3. Automate programabile cu operare scalar


Automatele din aceast clas de sisteme realizeaz prelucrarea logic a unor variabile secveniale scalare a cror reprezentare numeric este redat ntr-un singur bit. Aceste variabile sunt intlnite frecvent ntr-o clas larg de roboi i manipulatoare att ca mrimi de comand pentru sisteme de acionare de tipul contactelor, releelor, tiristoarelor sau electroventilelor ct i ca mrimi de intrare, furnizte de o serie de traductoare sau senzori ce opereaz dup principiul tot sau nimic.

161

Capitolul 5. Sisteme de conducere cu automate rogramabile

Din punct de vedere funcional, aceste echipamente acoper toate structurile de comand asimilabile unor automate finite combinaionale sau secveniale, structuri intlnite la numeroase tipuri de roboi industriali. Toate aceste elemente, la care se adaug facilitaile deosebite de implementare a programelor de conducere, robusteea echipamentului precum i preul de cost destul de modest fac ca automatele din aceast categorie s reprezinte o soluie atractiv pentru utilizarea lor ntr-un sistem de conducere.

5.3.1. Structura de baz


Configuraia de baz a acestui automat deriv din caracteristicile generale ale unei prelucrri scalare de informaie [54,77]: evaluarea rapid a semnalelor furnizate de robot, prelucrarea logic a acestor semnale, memorarea rezultatelor acestor prelucrri sau generarea unor comenzi spre ieire, ctre sistemul condus. n acest sens, arhitectura acestui automat va cuprinde: modul de intrare-ieire pentru interfaarea cu exteriorul, un procesor pentru prelucrare logic i blocuri de memorie pentru inmagazinarea programelor i datelor prelucrate. Structura general a acestui automat se poate urmri n figura 5.7. Toate blocurile sistemului sunt conectate la o magistral (linie) de date pe care vehiculeaz informaia de intrare-ieire i informaiile stocate n memorie sau prelucrate n unitaile interne ale automatului. Programele sunt introduse ntr-o memorie MP (EPROM 4k x 16) adresabil de la un numrtor de adrese NA. Instruciunile sunt transferate ntr-un registru RI i decodificate n decodificatorul DI. n funcie de tipul instruciunii prelucrate, un circuit de control CC asigur transferul necesar de informaie iar unitatea logic UL realizeaz prelucrarea logic specificat. Sistemul conine o memorie MI 91k x 1) ce permite stocarea rezultatelor operaiilor logice efectuate. Aceasta constituie suportul de stare pentru implementarea modelelor de automate finite ce constituie baza algoritmilor de conducere. Dialogul cu exteriorul automatului este realizat cu module de interfa pentru variabile de intrare i ieire, de tipul celor discutate n paragraful precedent. Sistemul cuprinde, de asemenea, un bloc de temporizare N T ce permite programarea unor regimuri de lucru dependente de o baz de timp sau a unor funcii de contorizare a unor evenimente de la proces.

162

Capitolul 5. Sisteme de conducere cu automate rogramabile

NA PROGRAM GT GS CC DI RI MP CONSOL

UL Magistral (linie de date) Magistral de adrese

MI

Magistral control bloc N/T Module I I1 Ik


Figura 5.7

Module E E1 Ek

O instruciune a automatului are 16 bii i cuprinde trei pri principale: codul operatiei, cmpul variabilei apelate (operandul) i adresa acesteia [21].
D15 D14 D13D12 Cod operaie D11D10 D9 D8.....D 4 D3D 2 D1D 0 Cmp operand Adres operand

Primii patru bii D15 D12 desemneaz codul operaiei ce urmeaz a fi efectuat, urmatorii bii D11 D10 identific cmpul operandului, variabila respectiv putnd fi o variabil de intrare I, o variabil de ieire E, o variabil intern, din memorie, M, sau o variabil obinut prin operaii de numrare temporizare T. (tabelul 5.1). Ultimii 10 bii definesc adresa efectiv a operanzilor, deci aceste sisteme pot opera cu cel mult 1024 mrimi de intrare, ieire i interne. Cei patru bii de cod permit selectarea a 16 operaii logice, interpretarea acestora i execuia lor fiind realizate n blocuri RI, DI i unitatea logic UL. Unitatea logic este realizat n sistemul cu acumulator astfel inct rezultatul fiecrei prelucrri logice este memorat ntr-un registru specializat, un acumulator. innd cont de variabilele de tip scalar implicate n aceste operaii, rolul de
163

Capitolul 5. Sisteme de conducere cu automate rogramabile

acumulator l va juca la aceste sisteme un bistabil, notat convenional prin A (acumulator).

Tipul var iabilei Cmp operand D11 D10 Intrare 0 0 Ieei 0 1 Memorie 1 0 1 1 Temporizare

Simbol I E M T

Tabelul 5.1. Variabilele automatului Prelucrarea informaiei continut ntr-o instruciune cuprinde un numr bine precizat de secvene, executate ciclic ntr-o succesiune impus. Aceste cicluri, definite n mod curent ca cicluri masin, servesc pentru structurarea circuitelor de control, a generatoarelor de stri i de tact (GS i GT). innd cont de simplitatea operaiilor realizate, un astfel de automat opereaza ntr-un singur ciclu masin definit prin secvenele: 1) se extrage instruciunea din memorie; 2) se decodific cmpurile instruciunii; se extrag datele din adresele specificate ; 3) 4) se execut operaia logic specific i se memoreaz rezultatul; Ultima secven implic memorarea rezultatului fie n bistabilul acumulator A, fie n memorie sau n modulele ieire i temporizare.

5.3.2. Instruciunile automatului


Cei patru bii ai codului de operare indic posibilitatea utilizarii a 16 instruciuni. Aceste instruciuni pot fi grupate n: - instruciuni de transfer de date; - instruciuni de prelucrare logic; - instruciuni speciale; Instruciunile de transfer determin o deplasare dirijata a informiei, existent ntr-o zon a automatului, spre anumite elemente de memorie. Prin acest transfer se realizeaz, pe de o parte, detectarea schimbrilor de stare a unor
164

Capitolul 5. Sisteme de conducere cu automate rogramabile

semnale de intrare sau ieire (memorate temporar) sau din memorie iar, pe de alt parte, acestea permit salvarea unui rezultat al unei operaii logice anterioare. Aceste modaliti de transfer sunt realizate prin instruciunile: 1) LD LDC STO STOC Adr Adr Adr Adr X X X X

2)

Instruciune LD (LCD) realizeaz ncrcarea n bistabilul A a ultimei valori (sau a complementului ei) ce defineste o variabila de intrare I, memorie intern M, numrare temporizare T sau iesire E (imaginea canalelor de ieire n memoria automatului), identificate prin adresa general (adr X).
A (adr X ) A adr X

A doua instruciune determin transferul valorii logice memorate n bistabilul A ntr-o locaie de adres ( adr X ), unde X poate fi o variabila de ieire, memorie sau de numrare-temporizare.

(adr (adr

X) A X) A

Instruciunile logice ale automatului permit executarea unui numr minim de operaii logice ce asigur acoperirea complect a oricrei funcii booleene. Aceste instruciuni definesc o operaie logic n care un operand este intotdeauna bistabilul A, al doilea operand X este o variabil de intrare, memorie, numrare-temporizare sau imaginea n memorie a canalelor de ieire , iar rezultatul final este memorat n A. AND adr X ANDC adr X Instruciunea realizeaz funcia I ntre coninutul bistabilului A i operandul X (sau complementul acestuia). 3)

165

Capitolul 5. Sisteme de conducere cu automate rogramabile

A A. A A.

(adr

(adr

X) X

4) unde se realizeaz funciile

OR adr X ORC adr X

A A + (adr A A + adr

X) X

5) XOR adr X

determin funcia logic SAU EXCLUSIV

A A (adr X )
6) CMA ZA

Aceste instruciuni sunt asociate bistabilului A determind complementarea acestuia ,

A A
sau aducerea sa la valoarea logic 0.

A0
Implementarea printr-un automat a unor funcii de tip secvenial impune condiionarea explorrii instruciunilor din program de anumite rezultate ale unor operaii anterioare. Acestea implic introducerea unor instruciuni speciale de salt. 7) J Adr JC Adr

166

Capitolul 5. Sisteme de conducere cu automate rogramabile

Instruciunea J i JC determin salt n desfsurarea programului la adresa definit prin Adr. Prima provoac salt necondiionat de coninutul bistabilului A. Dac A=1 saltul se produce , dac A=0 , se execut instruciunea urmtoare . Pentru facilitarea unor operaii de ieire se utilizeaz un set de instruciuni care aduc o variabil adresat n starea logic 1 sau 0 . 8) S Adr X R Adr X Instruciunile determin funcia SET (inscriere 1 logic) respectiv RESET (nscriere 0 logic) asupra locaiei definit prin ( adr X ) n funcie de starea logic a bistabilului A.

( Adr ( Adr

X ) 1 dac

X ) 0 dac

A =1 A =1

Dac coninutul bistabilului este 0 funciile respective devin inoperante.

5.3.3. Implementarea programelor de conducere


Avnd ca referin configuraia hardware oferit de automat i setul de instruciuni al acestuia se poate trece la construirea programelor de conducere ale unui robot. Aceast implementare poate fi sintetizat n cteva etape [21,54,77] descrierea complect a condiiilor de funcionare ale robotului, 1) precizarea tuturor secvenelor funcionale, a circuitelor de lucru precum i a regimurilor specifice de operare. Trebuie prezentate detaliat toate variabilele ce definesc poziia robotului, traductoarele utilizate, aspecte legate de calitatea semnalelor furnizate i modul lor de interpretare. n condiiile existenei unui sistem senzorial, trebuiesc analizate semnalele generate de acesta i modificrile impuse regimurilor de lucru normale. Se impune o analiz riguroas a sistemului de acionare al robotului precizndu-se modalitaile de comand, caracteristicile semnalelor, parametrii acestora etc. 2) analiza configuraiei automatului astfel nct acesta s acopere cantitativ i calitativ funcionarea robotului. Acesta revine la stabilirea necesarului de memorie, a dimensiunii modulelor de intrare-ieire i a compatibilitii electrice a semnalelor. Se impune, de asemenea precizarea condiiilor industriale de lucru ale automatului, nivelul perturbaiilor externe, regimurile de alimentare electrice etc.
167

Capitolul 5. Sisteme de conducere cu automate rogramabile

3) elaborarea documentului surs sub forma unei organigrame de stri care s acopere toate condiiile formulate n etapa 1. n acest sens organigrama trebuie s redea detaliat strile funcionale, condiiile de comutare de la o stare la alta, mrimile de ieire generate n fiecare stare, ciclurile, regimurile de lucru de tip subrutina etc. 4) se aloca variabile n automat I,E,M care s acopere semnalele de intrare furnizate de robot, variabilele de comand pentru sistemul de acionare al robotului i variabilele de stare, respectiv. 5) Se scrie programul de conducere cu setul de instruciuni al automatului. n principiu, aceast scriere trebuie s parcurg urmatoarele etape: a) instruciuni pentru iniializarea strilor; b) instruciuni pentru acoperirea fiecrei stri; c) instruciuni pentru simularea tuturor traseelor logice din organigram. Stri 1 2 3 4 1 Intrri x1 x2 x3 x4 0 Ieiri Z1 Z2 Z3 Z4 b Figura 5.8 De obicei, condiiile de iniializare impun aducerea n starea 1 logic a variabilei din memoria M asociat strii iniiale a automatului i stergerea tuturor celorlalate variabile de stare.
168

3 0

Z1 X1

Variabile M M 001 M 002 M 003 M 004 Variabile I I 001 I 002 I 003 I 004 Variabile E E 001 E 002 E 003 E 004

1 0

Z2 X2 4 a 1

3 1

Z3 X3

Z4

Capitolul 5. Sisteme de conducere cu automate rogramabile

Instruciunile pentru acoperirea unei strri trebuie s redea toat informaia continut n aceast condiiile de activare a strii n momentul cnd robotul intr n ea i dezactivarea acesteia cnd este depsita i generarea funciilor de ieire ctre sistemul de comand al robotului, specificndu-se fazele de anclasare (valoarea 1) ale acestora i de declanclaare (valoarea 0). Aceste condiii sunt realizate prin scrierea unui set de instruciuni ce implementeaz: - apelarea din memorie a variabilei M ce corespunde strii; - stergerea conditionat a tuturor variabilelor M asociate strilor ce preced starea respectiv; stergerea conditionat a tuturor variabilelor de ieire E generate n strile precedente; - generarea variabilei de ieire E asociat strii. Pentru exemplificare, se va considera o evolutie descris prin organigrama de stri din figura 5.8.a. Organigrama cuprinde patru stri 1-4, fiecare genernd o ieire proprie z i , evoluia strilor fiind realizat prin variabilele de intrare xi specificate. Alocarea variabilelor n automat corespunzator variabilelor din organigram este realizat n figura 5.8.b. Implementarea programului se obine n conformitate cu etapele specificate mai sus. 0001 ZA 2 STOC M001 3 STO M002 4 STO M003 5 STO M004 Primele instruciuni definesc iniializarea strilor, introducndu-se n starea M001 valoarea logic 1 iar n celellte variabile M002-M004 valoarea 0. Deci, automatul si va ncepe evoluia plecnd din starea iniial 1. Instruciunile urmtoare implementeaz pentru fiecare stare informaia asociat i traseele logice ce deriv din ea.

0006 7 8 9 0010

LD R S ANDC

M001 M002 E002 E001 I001

Apelul variabilei de stare I Sterge starea precedenta Sterge iesirea precedenta Genereaza iesirea starii I Traseul logic 1 2
169

Capitolul 5. Sisteme de conducere cu automate rogramabile

1 2 3 4 5 6 7 8 9 0020 1 2 3 4 5 6 7 8 9 0030 1 2 3 4 0025

S LD AND S LD R R S ANDC S LD AND S LD R R S AND S LD R R S S J

M002 M001 I001 M003 M002 M001 E001 E002 I002 M001 M002 I002 M001 M003 M001 E001 E003 I003 M002 M004 M002 E002 E004 M003 0006

Traseul logic 1 3

Starea 2 Traseu logic 2 1

Starea 3

Traseul logic 3 2

Starea 4

Traseul logic 4 3

Instruciunile asociate traseelor logice descriu practic funcia logic a traseului. Existena unor trasee multiple face necesar actualizarea bistabilului A cu informaia ultimei stri, ntruct coninutul acestuia poate fi alterat de prelucrarea impus de ultimul traseu logic implementat. Astfel, n instruciunea 0012 se rencarc A cu valoarea logic a strii 1. Trebuie remarcat, de asemenea, c traseul logic 3 3 nu este implementat, acesta fiind realizat intrinsec prin stabilirea locaiei de memorie M003 n absena oricror modificri a variabilei de intrare I003 ce condiioneaz evoluia strii.

170

Capitolul 5. Sisteme de conducere cu automate rogramabile

RND 3

RND 2

RND 1

EVACUARE

RC

OC CLI

ncrcare

BT

L1 L2 L3 L4 L5 Figura 5.9

CLD AM RM

Ultima instruciune 0025 determin un salt n program la prima instruciune ce succede zonei de iniializare. 6) programul este introdus prin consola de programare a automatului n memoria intern a consolei, n regim de verificare. Dupa efectuarea verificrii i corectarea eventualelor erori, acesta este introdus n memoria program pentru utilizare.

5.4. Conducerea unui manipulator n instalaii de tratare termic


Analiza detaliat a procedurilor de implementare este ilustrat prin programul de conducere a unui manipulator utilizat n manipularea pieselor la punctele de ncrcare ale unor cuptoare pentru tratarea termic. n figura 5.9 este prezentat schema tehnologic a unui cuptor rotativ de tratare i funciile de manipulare solicitate. Piesele supuse tratrii termice sunt dispuse pe sectoare axiale, n trei rnduri (zone), astfel nct s se asigure o incrcare optim a suprafeei cuptorului.
171

Capitolul 5. Sisteme de conducere cu automate rogramabile

Acionarea cuptorului este astfel calculat nct o rotaie complet corespunde timpului necesar pentru efectuarea procesului de tratare. Micarea cuptorului este discontinu, de fiecare dat cnd un sector ajunge n dreptul punctului de ncrcare, cuptorul se oprete i manipulatorul avanseaz realiznd ncrcarea complet cu piese a sectorului. Alimentarea cuptorului este realizat cu o banda transportoare BT, cu avans controlat, ce poziioneaz cte o piesa n dreptul punctului de ncrcare. Prezena piesei ntr-o poziie corect este semnalat de traductorul PP. Pentru transferul pieselor n cuptor, manipulatorul M execut cicluri funcionale fixe, corespunztor operaiilor de prindere, transfer i depunere ale pieselor n celel trei zone, succesiv. Poziionarea manipulatorului se realizeaz prin limitatoarele L1 L5 , primele trei indicnd poziia n cele trei zone ale cuptorului, limitatorul L4 specificnd poziia n dreptul benzii transportoare iar L5 desemnnd poziia retras, neoperaional a acestuia. De asemenea, funcia de manipulare implic utilizarea a doi senzori, GRD, GRI indicnd starea deschis sau inchis a griperului. Fazele tehnologice i secvenele de manipulare sunt: - manipulatorul este retras n poziie L5; banda transportoare avanseaz i aduce o noua pies n punctul de ncrcare; - manipulatorul avanseaz n poziia L4; se nchide griperul; - manipulatorul avanseaz n zona disponibil a cuptorului (ncrcarea ncepe cu zona cea mai deprtat, zona 1), griperul se deschide i piesa este depus; - manipulatorul se retrage n poziia iniial L5; - se testeaz ncrcarea sectorului. Dac acesta nu este plin, se rencepe ciclul de ncrcare de la secvena nti. Dac sectorul este plin, se roteste cuptorul aducnd un nou sector n punctul de ncrcare. Poziionarea cuptorului este realizat cu un limitator OC antrenat de o cam a sistemului de acionare. Trebuie subliniat faptul c similar operaiei de ncrcare se produce descrcarea pieselor, dup ce cuptorul a executat o rotaie de cca 315 grade. Tabelul 5.2. cuprinde lista variabilelor de intrare i ieire afectate acestui sistem precum i codificarea lor pentru implementarea pe un automat programabil. Variabile De intrare OC PP Cod I 001 I 002 Specificatii Oprire cuptor Prezenta Variabila de ieire RRRC AB
172

Cod E001 E002

Specificatii Reglaje cuptor Avans band

Capitolul 5. Sisteme de conducere cu automate rogramabile

piesa L1 L2 L3 L4 I 009 I 003 I 004 AM Limitatoare de pozitie RM brat manipulator IGR DGR E003 E004 E005 E006 Avans manipulator Retragere manipulator nchidere griper Deschidere griper Validare numarator Incrementare numarator

I 006 Griper deschi s I 008

GRI GRD

Griper inchis

IN

E008

n figura 5.10 este prezentat oganigrama strilor. Se observ existena a 11 stri, trecerea dintr-o stare n alta fiind condiionat de comutarea unor variabile. Astfel, n starea 1 se initiaz avansul benzii transportoare, tranziia n starea 2 fiind determinat de aducerea piesei n punctul de ncrcare (PP=1). n aceast stare ncepe avansul manipulatorului (AM) pn la atingerea poziiei de ncrcare L4 ce determin trecerea n starea 3. Manipulatorul se oprete i se comand nchiderea griperului (IGR) pn se atinge condiia de griper nchis (GRI=1) ce indic tranziia n starea 4. Se valideaz (VN) un sistem de 3 numratoare NUM1, NUM2, NUM3, ce identific depunerile n zonele 1, 2 i 3, respectiv. Aceste numratoare pot fi incrementate printr-un semnal provocat de fiecare depunere n cuptor, de exemplu GRD. Dac secvena de lucru corespunde manipulrii primei piese, ce se va depozita n rndul 1, atunci NUM1=0 i evoluia automatului se produce n starea 5. Dac se pune a doua pies, NUM1=1 i NUM2=0, tranziia se realizeaz n starea 6. A treia pies determin o evoluie pe traseul NUM=1, NUM2=1 n starea 7. Cele trei numratoare sunt realizate n cadrul modulelor de numrare ale automatului i vor fi apelate ca variabile cu adresele T001, T002 i T003 respectiv. Poziionarea manipulatorului la captul cursei este identificat prin starea 8, indiferent de zona n care s-a efectuat depozitarea piesei. Dup depunerea piesei (DGR=1), manipulatorul se retrage, starea 9, pn n poziia iniial atins n starea 10. n aceast stare se testeaz NUM3. Dac NUM3=0, nu au fost efectuate cele trei depuneri i procesul se reia de la starea 1. Dac NUM3=1, toate piesele s-au
173

Capitolul 5. Sisteme de conducere cu automate rogramabile

depus n sectorul respectiv, se trece n starea 11 determinnd rotaia cuptorului i trecerea ntr-un nou sector dup care se revine n starea iniiala 1. n starea 11 se sterge totodat adresarea numaratoarelor pentru a permite o noua numratoare.

174

Capitolul 5. Sisteme de conducere cu automate rogramabile

AB PP 1 AM L4 1 0

IGR GRI 1 VN NUM1 0

4 1

0 1 NUM2 6 0 L2 1 0 AM 0

AM L1 1 0

AM L3 1

DGR GRD 1 RM L5 1 0

10 0 NUM3 1 11 RC,VN 1
175

OC

Capitolul 5. Sisteme de conducere cu automate rogramabile

Figura 5.10 Pentru acoperirea celor 11 stri, n automat se vor aloca variabilele interne. Cu aceste elemente, tinnd cont de codificarea variabilelor de intrare i ieire (tabelul 5.2) i de regulile de implementare stabilite mai sus, instruciunile programului de conducere vor fi: 0001 2 2 0012 3 4 5 6 7 8 9 0020 1 2 3 4 5 6 7 8 9 0030 1 2 3 4 5 6 7 8 9 ZA STOC STOC STO LD R R R S AND S LD R R S AND S LD R R S AND S LD R R S ANDC S LD AND

M001 M002 M011 M001 M011 M010 E001 E002 I002 M002 M002 M001 E002 E003 I006 M003 M003 M002 E003 E005 I008 M004 M004 M003 E005 E007 T001 M005 M004 T001
176

Initializare

Starea 1

Transfer n starea 2

Starea 2 Transfer n starea 3

Starea 3

Transfer n starea 4

Starea 3

Transfer n starea 5

Transfer n starea 6

Capitolul 5. Sisteme de conducere cu automate rogramabile

0040 1 2 3 4 5 6 7 8 9 0050 1 2 3 4 5 6 7 8 9 0060 1 2 3 4 5 6 7 8 9 0070 1 2 3 4 5 6 7

ANDC S LS AND AND S LD R S LD R S LD R S LD AND S LD AND S LD AND S LD R R R R S AND S LD R R S AND S

T002 M006 M004 T001 T002 M007 M005 M004 E003 M006 M004 E003 M007 M004 E003 M005 I003 M008 M006 I004 M008 M007 I00 M008 M008 M005 M006 M007 E003 E006 I009 M009 M009 M008 E006 E004 I007 M010
177

Transfer n starea 7

Starea 5

Starea 6

Starea 7

Transfer 5 8

Transfer 6 8

Transfer 7 8

Starea 8

Transfer n starea 9

Starea 9 Transfer n starea 10

Capitolul 5. Sisteme de conducere cu automate rogramabile

9 0080 1 2 3 4 5 6 7 8 9 0090 1 2

LD R R ANDGC S LD AND S LD R R S AND S J

M010 M009 E004 T003 M001 M010 T003 M011 M011 M010 E007 E001 I001 M001 0013

Starea 10 Transfer 10 1

Transfer 10 11

Starea 11

Transfer n starea 1

5.5. Automate programabile cu operare vectorial


Complexitatea algoritmilor de conducere pentru o gam larg de roboi i manipulatoare, formele specifice de semnale generate de unele echipamente de msurare sau senzoriale ca i modalitaile caracteristice de interpretare a acestora impun extinderea operaiilor de prelucrare de la nivel de bit la o prelucrare aritmetic i logic de tip cuvnt, vectorial. Aceste automate sunt realizate de obicei prin configuraii de microprocesoare de 8 sau 16 bii, folosind eficient facilitile oferite de acestea att n ceea ce priveste capacitatea de memorie, operaii logico-aritmetice i interfaarea cu mediul extern. Utilizarea unor operanzi vectoriali n aceste automate nu exclude prelucrarea logic a unor operanzi scalari la nivel de bit. Aceste operaii se mentin n continuare ntruct foarte multe funcii de manipulare specifice unor clase de roboi implic, pe lang controlul numeric al traiectoriei, operaii logice asupra unor mrimi secveniale (scalare). Din acest motiv, una din configuraiile cele mai ntlnite de automate din aceste clase conine structura de tip biprocesor pentru operanzi scalari i unul pentru operanzi vectoriali (numerici) cu o gestionare adecvat a resurselor comune. O structur de acest fel este prezentat n figura 5.11[22,54].

178

Capitolul 5. Sisteme de conducere cu automate rogramabile

UC NA 16

MP

Consol program
instruciune

12

Controler Linie date

UL

UCp

RAM

ROM Magistral de date (D0 D7) Magistral de contrtol Magistral de adrese

(D )

IM

MI

MIS

MES

MEN

MIN

I1

Ip

E1 E p Figura 5.11a

EN1 EN r

IN1 IN r

Programul utilizator este realizat din instruciuni pe 16 bii i este rezident ntr-o memorie de tip EPROM. Controlul programului este realizat de o unitate UC ce permite avansarea pas cu pas a instruciunilor sau prin salt. B15 B11 0 Cod instrtuciune B15 B11 1 Cod instrtuciune B11 Adres operand 1 B11 Adres operand p
179

B0 B11 = 0 Adres operand B8

Instruciune scalar

B11 = 1

Instruciune numeric

Capitolul 5. Sisteme de conducere cu automate rogramabile

Figura 5.11b Instruciunile extrase din MP au o destinaie precis, ctre procesorul scalar sau ctre cel numeric, n funcie de tipul acesteia. Indentificarea este realizat pntrun bit, B11 n formatul fiecrei instruciuni. Dac instruciunea este de tip scalar ( B11 = 0 ), n acest caz primii patru bii B15 B12 ce definesc codul sunt prelucrai ntr-o unitate logic a procesorului scalar iar ultimii bii sunt interpretai ntr-un controler. Operaiile executate de procesor sunt de acelasi tip ca la orice automat sacvenial, ele implicnd transferuri de date i operaii logice asupra unor variabile din memoria intern MI i din modulele de intrare i ieire scalar, MIS i respectiv MES. Instruciunile numerice sunt interpretate n unitatea central UC a microprocesorului ce servete ca suport procesorului vectorial. Aceste instruciuni definesc o serie de operaii aritmetice i de transfer asupra unor mrimi de format vectorial ce au ca surs unul din canalele de intrri numerice din MIN, o variabil din memoria intern RAM sau ROM sau o variabil de tip imediat rezident n instruciuni. Destinaia prelucrrilor poate fi o ieire numeric din MEN sau o locaie din memoria intern RAM. Trebuie subliniat faptul c, dei operaiile de prelucrare logic i aritmetic sunt realizate de cte un procesor specializat, resursele scalare i vectoriale ale sistemului sunt gestionate n comun. n acest sens, procesorul numeric are acces la informaiile de tip scalar rezidente n modulele procesorului respectiv, aceste mrimi condiionnd efectuarea operaiilor aritmetice i logice. Aceast gestionare se obine printr-un control eficient al vehiculrii de informaie pe magistralele celor dou procesoare, control realizat cu modulul IM (interfa de magistrale). Aceste posibilitai de apelare la resursele scalare i vectoriale permit utilizarea unor instruciuni complexe n care sunt implicate ambele tipuri de mrimi. n mod curent, variabila scalar obinut n procesorul scalar condiioneaz prelucrarea logico-aritmetic din procesorul vectorial. O astfel de variabil este numit n mod curent variabila martor.Pentru exemplificare, s considerm instruciunea AND ce realizeaz funcia logic S i ntre doi operanzi vectoriali aflai al adresele numerice AN1, AN2, respectiv, i cu memorarea rezultatului n AN3. Aceast instruciune se scrie sub forma AND AS, AN1,AN2,AN3. AS definete adresa variabilei scalare ce funcioneaz ca martor n sensul urmtor :

180

Capitolul 5. Sisteme de conducere cu automate rogramabile dac AS = 1 atunci ( AN 3 ) ( AN 2 ) ( AN 1 ) dac AS = 0 operape specificat nu are loc

Utilizarea unor astfel de instruciuni faciliteaz implementarea unui program de conducere ntruct acesta sintetizeaz att condiia de generare a strii sistemului la un moment dat ct i pe cea de transfer n starea urmatoare. Setul de instruciuni al unui astfel de automat cuprinde n general toate operaiile logice curente NU, I, SAU, I-NU, SAU-NU, SAU-EXCLUSIV efectuate asupra unor operanzi scalari sau vectoriali precum i gama de operaii aritmetice utilizate n mod curent n implementri numerice. Ca referin se poate consulta setul de instruciuni al automatului AP-117 produs de intreprinderea Automatica-Bucuresti (Anexa 1). Aceste instruciuni asigur, de asemenea, o serie de facilitai n organizarea programelor, a ciclurilor funcionale, a programelor de iniializare i a regimurilor de lucru de tip subrutin. n acest fel, limbajul acestor automate constituie un suport software adecvat pentru implementarea legilor de conducere la o gam de roboi industriali. De asemenea, compatibilitatea hardware la nivelul sistemelor de acionare i de msurare este pe deplin realizabil prin intermediul interfeelor scalare sau numerice prezentate mai sus.

5.6. Conducerea unui robot n liniile automate de sudur pentru caroserii auto
Una din aplicaiile cele mai solicitate de conducere robotizat i care reprezint totodata una din primele ncercri de implementare a roboilor n sistemele de fabricaie industriala o constituie sudarea automat a caroseriilor de autoturisme n liniile de montaj. Din punce de vedere al sistemului de conducere, o astfel de aplicaie impune programarea robotului s execute o traiectorie impus prin punctele implicate de operaiile de sudur i corelarea acestor miscri cu evoluia general a liniei de asamblare. Pentru exemplificare se va analiza sistemul de programe necesar pentru o celula de sudur utilat cu un robot n coordonate cilindrice condus cu un automat n configuraie biprocesor (AP 117), (fig. 5.12.).

181

Capitolul 5. Sisteme de conducere cu automate rogramabile

q3

q4 q5

q6
Linie sudur

q1

q2

Figura 5.12 Robotul posed 6 grade de libertate din care operaiile de sudura solicitate cer numai 4: q1 , q 2 , q3 i q5 . Miscrile pe fiecare grad de libertate sunt msurate cu traductoare de deplasare de tip incremental pentru miscrile de translaie q 2 i
q3 i de tip absolut pentru miscrile de rotaie q1 , q5 . Traiectoria complet a robotului este prezentat n figura 5.13. Starea iniial, de pornire, corespunde punctului A. Traiectoria este defalcat pe segmente, fiecare segment corespunznd unei secvene funcionale precise definit printr-un singur grad de libertate al miscrii. Pentru a facilita implementarea legii de control, pe fiecare segment s-au notat prin variabilele q i k j parametrii de baz ai deplasrii. Astfel, indicele I

desemneaz gradul de libertate i = (1,2,...6) n sensul pozitiv sau negativ iar valoarea din parantez definete cota micrii.
A
+ q3 (k1 )

( )

B
q2 (k 2 )

q1+ (k8 )

+ q2

( ) (k 4 )
k5 , q1

q3 (k 7 )

G Fm 1
+ q5 (k3 )

+ q5 (k3 ) q5 (k3 ) F1 + q5 (k3 ) D1 q5 (k3 ) D2

Linie de sudur

0 x

y
Fm

q5 (k3 )

Puncte de sudur

Dm

Figura 5.13
182

Capitolul 5. Sisteme de conducere cu automate rogramabile

n prima faza a miscrii robotul execut o apropiere de linia tehnologic, pe traseul A,B,C,pintr-o miscare de translaie q 2 n sens pozitiv pe o cot k1 i o miscare de translaie q 2 n sens negativ pe cota k 2 . n punctul C este rotit terminalul cu o miscare q5 n sens negativ pn ce electrodul de sudur atinge caroseria (cota k 3 ), punctul D1 . Acest punct reprezint primul punct de sudur, atingerea lui anclasnd cuplarea sursei de curent a generatorului de sudur.Dupa un timp prestabilit, curentul este decuplat, terminalul se roteste n sens invers

(k 3 )) revenind n punctul C. n faza urmtoare se produce reorientarea braului ctre urmtorul punct de sudur, operaie realizat din doua miscri q1 (k 4 ) i + q 3 (k 5 ) (punctul F1).
+ 5

(q

Noul punct de sudur D2 implic din nou rotaia terminalului n sens negativ la cota . Aceste faze sunt reluate ciclic pn se acoper intreaga linie de sudur (m puncte). Dupa revenirea din ultima sudur (punctul Fm 1 ), robotul revine n punctul iniial al traiectoriei ( Fm 1 GHA) prin trei secvene definite prin
+ + + parametrii q 2 (k 6 ) , q 3 (k 7 ) q1 (k 8 ) . Analiza detaliat a traiectoriei permite realizarea, n etapa urmtoare, a organigramei de stri pentru construcia programului utilizator. Organigrama strilor (fig. 5.14) cuprinde 13 stri. Prima stare, starea 1 realizeaz legatura ntre miscarea robotului i cea a liniei de montaj.

183

Capitolul 5. Sisteme de conducere cu automate rogramabile

a 1
AC AC

q1

PC PC

0 1

k4 1 8
+ q3

+ q3

k1 1
3
q2

0 9 10 0 1 0

k5 INC R

k2
4
q5

m 1

11 k3 1
5

+ q2

0 k6 1 12 0 1
q3

SUDURA

T1

k7 1 13 0
+ q1

q5

k3 1 a

k8 1 b 184

Capitolul 5. Sisteme de conducere cu automate rogramabile

Figura 5.14 n aceasta stare, se comand avansul carasoriei AC pn la poziionarea corect a acesteia n punctul de lucru (PC=1). Strile urmtoare 2-4 determin miscarea robotului pn la primul punct de sudur D1 . Fiecare stare este asociat miscrii pe cte un grad de libertate, condiia de trecere la o nou stare fiind obinut la realizarea cotei prescrise n decizia ce succede strii. Starea 5 realizeaz funcia tehnologic (SUDUR) prin cuplarea curentului n circuitul electrodului de sudur un timp prestabilit T1 . Dup acest interval de timp automatul comut n starea 6 ceea ce nseamn decuplarea curentului i renceperea miscrii terminalului i braului. Strile 6-8 acoper segmentele de traiectorie D C F1 corespunztoare retragerii terminalului i reorientrii braului. Analiza traiectoriei indic existena unor cicluri de miscare ntre puncte de CF1 . Aceste cicluri pot fi acoperite prin formarea unui contor tipul CD1 incrementat la sfrsitul fiecrui ciclu, starea 9, i testat n starea 10. Dac numrul de cicluri m nu este realizat se execut un salt n starea 5 cu reluarea ciclului tehnologic, dac condiia este indeplinit se trece in strile 11,12,13 prin care se controleaz revenirea robotului n poziia iniial A. Implementarea sistemului de conducere impune executarea a doua programe, unul desemnnd programul utilizator realizat prin transpunerea n limbajul automatului a organigramei de stri i al doilea, programul de iniializare necesar pentru generarea condiiilor iniiale ale mrimilor de stare i numerice. Rezervarea n automat a unor variabile scalare i numerice pentru acoperirea mrimilor implicate n sistemul fizic al robotului se realizeaz dup o procedur similar cu cea utilizat n 5.4.

Stri 1 2 3 .

Variabile n AP M001 M002 M0003 .

Intrri Scalare

Variabile n AP

185

Capitolul 5. Sisteme de conducere cu automate rogramabile

. .

. .

q2 q3
PC E 011

I 001 I 002 I 003 I 004

13

M013

Intrri numerice q1 q5

Variabile n AP N 0001 N 0002

Iesiri scalare

q1+ q1
+ q2 q2

Variabile n AP E 001 E 002 E 003 E 004 E 005 E 006 E 007 E 008 E 009 E 010 E 011

+ q3 q3 + q5

Cote prescrise K1 K2 K3 K4 K5 K6 K7 K8 T1
m o

numerice Adrese numerice MN 0001 MN 0002 MN 0003 MN 0004 MN 0005 MN 0006 MN 0007 MN 0008 MN 0009 MN 0010 MN 0011

AC SUDURA INCR

Fiecrei stri se aloc o variabil n memoria secvenial M001-M013. Traductoarele de tip increment ce ofer mrimile de tip scalar q 2 , q 3 sunt
186

Capitolul 5. Sisteme de conducere cu automate rogramabile conectate la intrrile scalare I001 i I002. Traductoarele de tip absolut q1 , q 5 sunt cuplate pe doua intrri numerice IN0001 i IN0002. Iesirile automatului sunt numai de tip scalar (E001-E011), miscrile pe traiectorie neimplicnd un algoritm de reglare numeric. Pentru atingerea parametrilor traiectoriei, n memoria numeric a automatului sunt introduse date ce definesc cotele miscrilor MN001-MN0008. n cotinuare, se va expune detaliat structura programului utilizator i a celui de iniializare(notaiile i simbolurile sunt prezentate n Anexa 1). 0000 ! M001 1 R M013 2 R E001 3 S E009 Aceste instruciuni realizeaz apelul variabilei din memorie asociat strii 1, stergerea strii precedente M013 i iesirea corespunztoare E001 precum i generarea iesiri de comand, avansul caroseriei E009. 4 5 . S I003 M002

Se obine transferul condiionat n starea 2(M002) dac variabila scalar PC este n 1, n caz contrar pstrndu-se starea activ 1 (M001=1) 6 7 8 9 0010 ! R R S CSC M002 M001 E009 E005 M002, I002, MN 0001, MN 0101, M003

Acest set de instruciuni asociat strii 2 controleaz evoluia pe segmentul AB al traiectoriei. Instruciunea CSC determin o contorizare n sens cresctor a variabilei I002, condiionat de variabila scalar M002. La atingerea valorii prescrise n MN001, variabila scalar M003 devine 1 asigurnd astfel tranziia n starea 3. 0011 2 3 ! R R M003 M002 E005
187

Capitolul 5. Sisteme de conducere cu automate rogramabile

4 5 6 7 8 9

S CSC ! R R CID

E004 M003, I001, MN0002, MN0102, M004 M004 M003 E004 M004, MN0003, IN0002, E008, M005

Prima stare a acestui grup de instruciuni implementeaz starea 3 cu transfer condiionat n starea 5 de contorizarea impulsurilor traductorului q 2 (I001). A doua parte, definete starea 4 n care se realizeaz rotaia terminalului, miscarea q5 . Controlul miscrii este obinut prin instruciunea CID ce realizeaz comparaia cotei numerice prescrise n MN0003 cu cea oferit de traductorul absolut IN0002. Dac aceasta identitate nu este realizat, variabilele scalare de ieire au valorile E0008=1, M005=0. La atingerea valorii prescrise, E008=0, M005=1 realiznd deci tranziia n starea urmtoare 5 i totodat anularea miscrii generat n starea 4. 0020 1 2 3 ! R S TMP2 M005 M004 E010 M005, MN0009, MN0103, M006

Aceste instruciuni acoper starea 5 prin care se cupleaz operaia de sudur (E010). Durata operaiei este controlat de o instruciune de temporizare TMP2 ce anclanseaz un generator de impulsuri software cu perioada 0.1s, contorizarea impulsurilor find realizat la adresa numeric NM0103. Atingerea valorii prescrise T1 rezident la adresa MN0009 determin comutarea variabilei de stare M006. 0024 5 6 7 8 9 30 1 2 3 4 ! R R CID ! R CID ! R S CSC M006 M005 E010 M006, MN0003, IN0002, E007, M007 M007 M006 M007, MN0004, IN0001, E002, M008 M008 M007 E005 M008, I002, MN0005,MN0103, M009
188

Capitolul 5. Sisteme de conducere cu automate rogramabile

Ultimul set de instruciuni determin evoluia pe segmentele de traiectorie DC F1, prin doua rotaii ai parametrilor q5 i q1 i o translaie prin q3 . Se obine astfel starea 9 ce ncheie un ciclu funcional i genereaz un semnal de incrementare E011. 0035 6 7 8 9 40 1 2 3 4 5 6 7 8 9 50 1 2 ! R R S S R R CSC ! ./ S ! . S TRAD TRAD TRAD TRAD M009 M008 E005 E011 M010 M009 E011 M010, I004, MN0010, MN0104, M101 M010 M101 M004 M010 M101 M011 M010, MN0011, MN0101 M010, MN0011, MN0102 M010, MN0011, MN0103 M010, MN011, MN0104

Aceste instruciuni evalueaz valoarea contorului creat prin reintroducerea ieirii E011 ca variabil de intrare I004 i contorizarea ei. Atingerea valorii prescrise m(MN0010) determin comutarea unei variabile intermediare M101. n funcie de valoarea logic a acesteia, se determin dou trasee logice, unul ce indic transferul prin salt n starea 4, iar al doilea indic continuarea evoluiei (cnd numrul de cicluri s-a ncheiat) n starea 11. Pentru a asigura un calcul numeric corect, n fiecare nou ciclu se terg locaiile de memorie utilizate pentru contorizare (MN0101 MN0104) prin instruciunea TRAD. 0053 ! 4 R M011 M 010
189

Capitolul 5. Sisteme de conducere cu automate rogramabile

5 6 7 8 9 60 1 2 3 4 5 6 7 8 9

R S CSC ! R R S CSC ! R R CID TRAD TRAD END

M101 E003 M011, I001, MN0006, MN0105, M012, M012 M011 E003 E006 M012, I002, MN0007, MN0106, M013 M013 M012 E006 M013, MN0008, IN0001, E001 M013, MN0011, MN0105 M013, MN0011, MN0106

Ultimele instruciuni determin evoluia pe segmentele finale Fm , G, H, A, cu tergerea corespunztoare a adreselor numerice MN0105 i MN0106 n vederea unei reutilizri a programului. Partea de iniializare a programului cuprinde instruciunile de iniializare a strilor (mrimi scalare) i a adreselor numerice implicate n memorarea parametrilor traiectoriei. n mod normal, punerea n funciune a automatului implic stergerea tuturor locaiilor din memoria scalar, deci iniializarea nseamn nscrierea valorii logice 1 n starea iniiala M001 a automatului. Programul de iniializare este nscris ncepnd cu adresa 0100 (aleas din considerente de spaiu de programare). 0100 Z 1 / 2 = M001 3 ATV MN0001,0011,K1,Kg,T1,m,0 4 END Ultima instruciune, n ambele prti ale programului,este END ceea ce determin revenirea automat la adresa 0000.

5.7. Conducerea unui robot n coordonate carteziene

190

Capitolul 5. Sisteme de conducere cu automate rogramabile

n capitolul @ a fost studiat comportarea cinematic i dinamic a unui robot ce opereaz n coordonate carteziene (fig.2.8). Aceste tipuri de roboi constitue soluia cea mai utilizat n manipularea pieselor pentru operaii de sortare, depozitare n magazii, cmpuri de stocaj, etc. Schema simplificat a unui astfel de robot este prezentat n figura 5.16. z
A x1 , y j , z s

)
y

z y x
A xi +1 , y j +1 , z j

zon de stocare x Figura 5.16 Pentru aceste sisteme, cerinele de manipulare uzuale solicit o poziionare numeric n coordonate xi , y j , controlul pe axa Z fiind realizat de obicei prin

variabile scalare, limitatoare de poziie. n acest sens, msurarea distanei pe axele x,y se va efectua cu traductoare incrementate de poziie, iar pe axa Z, dou limitatoare Z s , Z i vor marca cele dou poziii extreme, superioar i respectiv inferioar ale griperului de manipulare. n mod normal, automatul ce controleaz acest robot este conectat ntr-o relaie de subordonare master-slave cu un alt automat ce supervizeaz un sistem complet de prelucrare i transport, acesta dictnd coordonatele de manipulare, n funcie de anumite criterii specifice automatului slave iar acesta, la rndul lui, executnd poziionarea robotului.

191

Capitolul 5. Sisteme de conducere cu automate rogramabile

CTD

0
TD

1 2 AD

DSD

4
Poz. xi

Poz. y j

Final cot

1 6
Z Zj

1 a Stri Variabile n AP 1 M 001 2 M 002


192

Capitolul 5. Sisteme de conducere cu automate rogramabile

. . . 6 Intrri scalare X Y Zi
Zj TD

. . . M 006 Variabile n AP I 001 I 002 I 003 I 004 I 005 Variabile n AP IN 0001 IN 0002 Variabile n AP E 001 E 002 E 003 E 004 E 005 E 006 E 007 Variabile n AP MN 0001 MN 0002
193

Intrri numerice Cota xi +1 Cota y j +1 Intrri scalare CTD

Avans X

Avans X Avans Y + Avans Y Avans Z + Avans Z


Adrese numerice CTD xi

Capitolul 5. Sisteme de conducere cu automate rogramabile

yj xi +1 y j +1

MN 0003 MN 0004 E 005 b Figura 5.17

Pentru exemplificare se va considera traiectoria ntre dou puncte A xi , y j , z s i B xi +1 , y j +1 , z i , o evoluie de acest fel constituind o structura

tipic n orice operaie de manipulare.Organigrama de stri ce permite implementarea unui astfel de program este prezentat n figura 5.17,a. n starea iniial 1 se genereaz iesirea CTD (Cerere Transfer Date) ctre automatul master care transfer aceste date sub protocolul TD (Transfer Date). n consecin, automatul slave trece n starea 2 n care se realizeaz acceptarea datelor (AD). Pentru transferul datelor numerice se folosesc dou intrri numerice IN0001 i IN0002, cte una pentru fiecare dintre axele X,Y. Pentru a delimita sensul de evoluie al robotului, adreselor numerice, ce definesc poziia actual i cea viitoare, li se vor rezerva locaii diferite n memorie. Astfel, cotele xi , y j , vor fi memorate n MN0001 i MN0002 iar cotele xi +1 ,
y j +1 (cota urmtoare) n MN0003 i MN0004, respectiv figura 5.17,b.

Implementarea acestor stri, i a transferului de date implicate n ele se obine pintr-o procedur similara cu cea utilizat n paragraful precedent: 0000 1 2 3 4 5 6 7 8 9 10 ! R R S . S ! R R TRAD TRAD M001 M005 E007 E001 I005 M002 M002 M001 E001 M002, IN0001, MN0003 M002, IN0002, MN0004

194

Capitolul 5. Sisteme de conducere cu automate rogramabile

Dupa aceast actualizare a datelor, automatul determin sensul de deplasare, 0011 2 3 4 5 S ! R COM COM M003 M003 M002 M003, MN0001, MN0003, M101, M102 M003, MN0002, MN0004, M103, M104

Instruciunile COM realizeaz urmtoarele condiii logice:

(MN 0001) (MN 0003)

atunci M 101 = 1, M 102 = 1, x + = 1

(MN0001)> (MN0003) atunci M101=1, M102=0, x-=1 (MN0002) (MN0004) atunci M103=0, M104=1, y+=1 (MN0002)> (MN0004) atunci M103=1, M104=0, y-=1

n acest mod, variabilele M101 M104 identific sensul de deplasare iar distanele impuse pe fiecare ax se obin din diferenele de coordonate ntre strile iniiale i finale: 0015 SUB M003, MN0001, MN0003, M111, MN0005 6 SUB M003, MN0002, MN0004, M112, MN0006 Miscrile pe axe se obin avnd ca referina variabilele M101 M104 prin instruciunile: 0017 8 9 20 1 2 3 4 ! S CSC ! S CSC ! S M101 E003 M101, I001, MN0005, MN0101, M004 M102 E002 M102, I001, MN0005, MN0102, M004 M103 E005
195

Capitolul 5. Sisteme de conducere cu automate rogramabile

5 6 7 8 9 30 1 2 3 4 5 6 7 8

CSC ! S CSC ! R R R ! R R R . S

M103, I002, MN0006, MN0103, M005 M104 E004 M104, I002, MN0006, MN0103, M005 M004 M003 E003 E002 M005 M003 E004 E005 M004 M006

Atingerea cotei( xi +1 ) este marcata de comutarea variabilelor M004 i M005 n 1 logic, ceea ce determina anularea tuturor miscarilor precedente i trecerea n starea 6. 0039 40 1 2 3 4 5 6 7 ! R R S . S TRAD TRAD END M006 M004 M005 E007 I004 M001 M006, MN0003, MN0001 M006, MN0002, MN0004

Ultimele instruciuni desemneaz coborarea griperului n poziia inferioar, deci atingerea punctului B pe traiecorie. De asemenea, se realizeaz un transfer de date n sensul:

xi xi +1 y j y j +1
ceea ce permite trecerea la o nou stare.
196

Capitolul 5. Sisteme de conducere cu automate rogramabile

Programul de iniializare ncepe de la adresa 0100 i are forma:

0100 1 2 3 4

Z / = M001 ATV MN0001, 0002, 0, 0 END

Iniializarea variabilelor numerice impune numai memorarea poziiei iniiale a robotului presupus la cota xi , y y = (0,0 ) .

5.8. Programare prin instruire


5.8.1 Principii generale

n capitolul 2 al lucrrii s-a specificat c una din cele mai eficiente metode de determinare a legii de control cinematice a unui robot este programarea prin instruire. Aceast metod repezint o procedur realist de tratare a problemelor de conducere n condiiile existenei, fie a unei informaii incomplete asupra spaiului de operare, fie a unei structuri funcionare cu un grad de complexitate deosebit. n astfel de cazuri, determinarea legii de conducere prin procedurile curente este, dac nu imposibil, n orice caz extrem de dificil. I PROGRAM a

R a R

Figura 5.18 Instruirea reprezint, n esent, o metod prin care legea de conducere se determin pe baza informaiei furnizat n timpul evoluiei robotului sub comand manual, pe o traiectorie dorit, informaiile obinute prin msurtori directe n
197

Capitolul 5. Sisteme de conducere cu automate rogramabile

aceast micare servind ce elemente de referin pentru regenerarea ei n condiii de lucru operaionale. Pentru a pune n eviden particularitaile specifice ale unui proces de instruire, se vor analiza comparativ cele dou sisteme de conducere, conducere prin program i prin instruire (fig 5.18). In prima variant legea de conducere este specificat n intregime n program. Aceasta conine toat strategia de micare, pentru orice situaie previzibil a variabilelor n care evolueaz robotul impunndu-se aprioric o comportare corespunztoare. Se cere, deci, o cunoastere perfect a tuturor condiiilor de operare i determinarea anticipat a unei strategii adecvate. ntr-o conducere prin instruire, robotul, ntr-o prim etap, execut sub control manual o traiectorie dorit. Mrimile de comand acioneaz direct atta asupra robotului, impunndui-se miscarea, ct i asupra automatului. Parametrii traiectoriei sunt msurati i automatul asociaz n fiecare faz, coordonatele micrii cu variabilele de instruire active (fig 5.18). ntr-o etapa ulterioar, datele acumulate de automat vor reprezenta informaia de baz pentru regenerarea traiectoriei iniiale. Se disting astfel dou faze ale unui proces de instruire: instruirea propriuzis i execuia instruirii.

5.8.2. Mrimi n procesul de instruire


Variabilele de instruire reprezint ansamblul mrimilor de intrare prin care robotul execut o funcie dorit i care sunt interpretate simultan de automat pentru definirea secvenelor de instruire. Aceste mrimi determin pe de o parte micarea robotului , iar pe de alt parte, prin asocierea cu alte mrimi specifice procesului de instruire, permit identificarea exact a tuturor momentelor procesului de instruire. n mod normal, instruirea este realizat prin setul de variabile de intrare prin care se comand manual poziia robotului. n acest caz, se spune ca instruirea este obinut prin variabile externe. n unele situaii, micarea robotului este executat direct de operator, prin aciunea sa nemijlocit asupra braului robotului. n aceste cazuri, variabila de instrure asociat secvenei este dedus intrinsec de automat, o astfel de funcionare desemnnd o instruire prin variabile interne. Variabilele de instruire se exprim printr-un vector de instruire

I = (I 1 , I 2 ,....I P )

198

Capitolul 5. Sisteme de conducere cu automate rogramabile

Variabilele de ieire sunt variabile generate in procesul de instruire prin care se execut nemijocit comanda robotului. Acestea sunt definite printr-un vector de ieire:

E = (E1 , E 2 ,...E Q )
n cele mai dese cazuri, dimensiunile vectorului de instruire I i de ieire E coincid ( p = q ). De asemenea, exist o coresponden strns ntre componentele celor doi vectori, fiecrei variabile de instruire I j asociidu-se o variabil de ieire Ej . Secvena de instruire reprezint o faz de miscare n intervalul creia vectorul variabilelor de instruire este constant. Acest lucru impune pstrarea constant a parametrilor ce definesc segmentul de traiectorie corespunztor, ceea ce n cele mai dese cazuri, revine la meninerea nemodificat a vectorului variabilelor de ieire E. Secvenele de instruire sunt identificate de automat n faza de instruire i servesc pentru regenerarea traiectoriei n faza de execuie. Deci, secvenele de instruire realizeaz legatura ntre cele doua faze ale instruirii. O secvena de instruire este identificat prin dou mrimi: vectorul de instruire i parametrii ce definesc segmentul de traiectorie. S J = (I ( j ), P( j ))

unde I ( j ) reprezint vectorul de instruire al secvenei j, iar P ( j ) desemneaz vectorul parametrilor segmentului de traiectorie asociat. Acetia din urma pot fi parametri de pozitie (distan, mrime unghiular) sau vitez i chiar acceleraie. O traiectorie instruit nu va putea fi reprezentat ca o mulime ordonat de secvene, S1 , S 2 ,.......S11 , S12 ,....S m unde i2 = i1 + 1 desemneaz relaia strict de ordine a mulimii. Regenerarea traiectoriei n faza de execuie presupune utilizarea unei proceduri care, pe de o parte s reconstituie secvena i, pe de alta parte, s pstreze relaia de ordine stabilit. Pentru facilitarea acestor operaii se introduc dou mrimi: matricea de instruire i matricea de date. Matricea de instruire este un tablou de dimensiune (m x p) ce red sintetic variabilele de instruire asociate fiecrei secvene. Numarul de linii m corespunde numerului de secvene al procesului iar numrul de coloane p este egal cu dimensiunea vectorului de instruire.
199

Capitolul 5. Sisteme de conducere cu automate rogramabile

Propriu-zis, matricea de instruire (fig. 5.19) este o matrice binar (cu elemente 0 i 1) unde un element M ij reprezint variabila de instruire I j n secvena S i .

U ij = I j (i )

Figura 5.19 Implementarea celor dou faze ale procesului de instruire impune rezervarea ntr-o zon de memorie scalar a spaiului necesar pentru memorarea acestei matrici. n acest fel se obine, faza de instruiere, imaginea complect a mrimilor ce au fost implicate n operaia respectiv iar, n a dou faza, aceast imagine constitue suportul pentru regenerarea miscrilor. Matricea de date defineste parametrii segmentului de traiectorie pe care evolueaz robotul n fiecare secvena de instruire.

d12 ...... d1 p d11 ...... ........ ........ ........ ........ D = ....... ......... d ij ....... ........ ........ ......... d m1 d m 2 ........ d mp

Un element dij reprezint valoarea parametrului ce caracterizeaz micarea pe axa j n secvena S i . Dimensional, aceast matrice este identic cu cea de
200

Capitolul 5. Sisteme de conducere cu automate rogramabile

instruire, fiecare coloan a matricei reprezentnd deci multimea valorilor coordonatelor generalizate pentru o evoluie complect pe traiectorie.

9.8.3. Structura programelor de instruire


Un program de instruire cuprinde dou prti principale: implementarea procesului de instruire propiu-zis i execuia instruirii(fig.5.20). Elaborarea programului de instruire implic n principiu construirea unei structuri software ce acoper matricele de instruire i de date. Schema logic a acestor programe este prezentat n figura 5.21. n programele de instruire se implementeaz matricea de instruire U linie cu linie prin explorarea secvenial a vectorului de instruire I j . Daca ntr-o anumit contrar cptnd valoarea 0. Simultan, n memoria numeric se intoduce parametrul d ij asociat micrii respective. Procedura continu pn la epuizarea tuturor secvenelor de instruire. n procesul de execuie, matricele U i D vor fi eplorate i vor genera micrile corespunztoare. Dac U ij este 1, atunci n secvena i se va activa variabila de iesire E j , controlul micrii fiind realizat prin parametrul d ij . Dac U ij este 0, atunci iesirea E j va fi ignorat n secvena respectiv. Cele doua programe sunt precedate de un program de iniializare n care, pe de o parte sunt aduse la valorile logice i numerice dorite anumite locaii ale variabilelor interne iar, pe de alta parte, se prefigureaz o rezervare a spaiilor de memorie necesare implementrii programelor. Din analiza prezentat se poate remarca c implementarea acestor programe implic poceduri curente de tratare logic i numeric.

secven S i o variabil I j (i ) este activ, variabila U ij asociat devine 1, n caz

201

Capitolul 5. Sisteme de conducere cu automate rogramabile

0000:

EXECUIA INSTRUIRII END

Adr. Instr:

EXECUIA INSTRUIRII END

Adr. Iniial:

EXECUIA INSTRUIRII END

Figura 5.20 Structura detaliat a fiecarei prti din program va depinde de resursele software ale automatelor utilizate. n cele ce urmeaz, aceast procedur va fi ilustrat pe automatul AP-117 descris anterior.

202

Capitolul 5. Sisteme de conducere cu automate rogramabile

START INSTRUIRE p, m i = 1, j = 1 Secvena Si Citete Ij(i) Se calculeaz uij, dij

j=j+1

i=i+1

j p

im

STOP INSTRUIRE

203

Capitolul 5. Sisteme de conducere cu automate rogramabile

START EXECUIE INSTRUIRE i = 1, j = 1 Secvena Si Citete uij Citete dij Execut Ej(i) j=j+1 i=i+1 Final Ej(i) DA
j p

NU

DA

im

DA

STOP

Figura 5.21

5.8.4 cilindrice

Programarea prin instruire a unui robot n coordonate

Se va considera robotul n coordonate cilindrice (5.8.3) la care, pentru simplitatea analizei, se va studia numai funcia de instruire a braului (fig. 5.22,a).

204

Capitolul 5. Sisteme de conducere cu automate rogramabile

Punctul terminal al bratului T I se impune o micare ciclica pe traiectoria A B C D E F G H A utiliznd cei trei parametri ai micrii q1 , q 2 , q3 pe fiecare articulaie. Fiecare ciclu cuprinde opt segmente de traiectorie, fiecare segment fiind definit printr-o coordonat specific q i . Aceste elemente permit construirea principalelor mrimi din procesul de instruire:
q3

G T H A z C D x 0 y B

F E

q1

q2

Figura 5.22

I = [I 1 , I 2 ....I 6 ]

S = {S1 , S 2 ....S 6 }
Variabilele de instruire I i sunt asociate micrilor n sensul urmator: I 1 i
I 2 definesc instruirea pe coordonatele q1 n sens pozitiv i negativ, respectiv I 3 i I 4 pe q 2 iar I 5 i I 6 pe q3 . ntr-un mod similar, sunt alocate variabilele de ieire Ej .

E = [E1 , E 2 ...E 6 ]

Matricea de instruire i de date va avea dimensiunule (8 x 6) i vor necesit rezervri corespunztoare n memoria scalar i cea numeric. De exemplu, spaiul alocat matricei de instruire va fi definit prin variabile de memorie.

M 101 M 201 M 301 ...M 601 M 102 M 202 M 302 ...M 602 U = ... ... ... ... M 108 M 208 M 308 ...M 608

205

Capitolul 5. Sisteme de conducere cu automate rogramabile

Pentru a simplifica tratarea procedurii, se va considera c n fiecare secven este activ o singur variabil de miscare, deci segmentul de traiectorie corespunztor va fi definit printr-un singur parametru. n consecin, matricea de date D devine un vector de date cu urmtoarea alocare n memoria numeric:

MN 0 101 MN 0 102 D= ... ... ... MN 0 108

Variabile de intrare calare I1 I2 . . . I6 q1 q2 q3 STEP

Variabile n AP I 101 I 201 . . . I 601 I 001 I 002 I 003 I 020

Variabile de Iseire scalare E1 E2 . . . E6

Variabile n AP E 101 E 201 . . . E 601

Variabilele scalare ce intervin n construcia programelor sunt codificate dup criteriile expuse anterior (tabelul 5.4). n aceast implementare, parametrii q1 , q 2 , q3 se consider msurai prin traductoare incrementale ale caror semnale

q1 , q 2 , q 3 sunt interpretate ca mrimi scalare. O mrime specific acestei faze este variabila de salt STEP. Aceasta este utilizat pentru delimitare, n faza de instruire, a unei secvene S i , i iniializarea procesului de transfer la S i +1 . Semnalul STEP este furnizat n mod curent de operator dup fiecare segment de
traiectorie parcurs de robot. n afara variabilelor precizate, implementarea programelor cere exploatarea secvenelor de instruire pas cu pas. Aceast operaie se realizeaz printr-un vector de secvena S obinut din variabilele de memorie scalar M,
206

Capitolul 5. Sisteme de conducere cu automate rogramabile

S = (M 001, M 002,......M 008)

Programul de instruire propriu-zis ncepe la o adres specific ADRESA DE INSTRUIRE i are forma ADR. INSTR: ! . S ! . S . . . ! . S M001 I101 M101 M001 I201 M201

M001 I601 M601

Aceste instruciuni exploreaz prima linie a matricei de instruire inscriind n variabilele respective valori 0 sau 1 dup cum variabilele de instruire respective sunt active sau nu. n continuare, se determin primul element d1 al vectorului de date D prin contorizarea impulsurilor traductoarelor de msurare. ! + + = CSC TRAD I001 I002 I003 M011 M011, M301,FFFF, MN0001, M012 I020, MN0001, MN0101

Se consider c un singur traductor de deplasare este activ, deci impulsurile necesare se pot obine printr-un operator SAU pe cele trei intrri I001, I002, I003 cu stocare final n variabila M011. Comutarea acestei variabile este contorizat n locaia MN0001. La nchiderea secvenei, prin variabila I020 (STEP) valoarea stocat n MN0001 este transferat n vectorul de date MN0101. Valoarea FFFF introdus mai sus desemneaz limita maxim de impulsuri ce pot fi contorizate n locaia numeric respectiv, limit semnalat de conutarea variabilei M012.
207

Capitolul 5. Sisteme de conducere cu automate rogramabile

SNA RPT END

I020, M002 I020, ADR. INSTR., 0001, 0008

Ultimele instruciuni determin saltul la a dou celul a registrului de secvene (M002) i repetarea ciclului de instruciuni de mai sus de 8 ori cu o valoare index egala cu 1. A doua parte a programului, partea de execuie a instructiunii se realizeaz ntr-o manier similar. 0000: !S ! S . . . ! S M101 E101 M201 E201

M601 E601

Prin aceste instruciuni este explorat matricea de instruire U. Locaiile ce conin valoarea logic 1 comut variabila de ieire corespunztoare determinnd deci micarea pe un anumit parametru. ! + + = CSC I001 I002 I003 M013 M001, M013, MN0101, MN010, M014

Acest set de instruciuni determin coordonatele micrii, comparnd valoarea msurat de traductoare cu cea nscris n vectorul de date (MN0101). La atingerea cotei, variabila M014 comut n starea 1. ! R R M014 E101 E201
208

Capitolul 5. Sisteme de conducere cu automate rogramabile

. . . R SNS RPT END

E601 M014, M002 M014, 0000, 0001, 0008

Ultimele instruciuni desemneaz anularea iesirilor active n secvena anterioar, comutarea registrului de secven pe o noua poziie i repetarea ntegului set de instruciuni de opt ori, lungimea complet a traiectoriei instruite.

209

S-ar putea să vă placă și