10322859 Roboti Industriali Utilizati La Taiere Si Procese Conexe
Roboti industriali
-
Upload
laura-mili -
Category
Documents
-
view
264 -
download
11
description
Transcript of Roboti industriali
1
1.1. DEFINIŢII, DOMENII DE UTILIZARE, EVOLUŢIE
Robotul este un sistem automatizat de înalt nivel al cărui principal rol este manipularea pieselor şi uneltelor,înlocuind acţiunea umană.
Principalele aplicaţii în care utilizarea roboţilor industriali are avantaje evidente sunt: încărcarea şi descărcarea maşinilor unelte cu comandă numerică; sudură prin puncte sau pe contur; operaţii de ansamblare; vopsire; turnarea în forme a pieselor mari; controlul calităţii; manipularea substanţelor toxice, radioactive;
Robotul industrial este definit în prezent ca un manipulator tridimensional, multifuncţional, reprogramabil,capabil să deplaseze materiale, piese, unelte sau aparate speciale după traiectorii programate, în scopul efectuăriiunor operaţii diversificate de fabricaţie.
Importanţa acordată roboticii, domeniile de activitate semnificative sunt prezentate în figura 1.1.:
Fig. 1.1. a. Repartiţia roboţilor industriali pe domenii de activitate; b. Evoluţia parcului de roboţi industriali înprincipalele ţări dezvoltate
Roboţii mobili (independenţi) utilizaţi din ce în ce mai mult în diverse aplicaţii pentru a îndeplinisarcini complexe în spaţii sau medii în care accesul omului este dificil sau imposibil: mediu marin laadâncimi foarte mari, inspecţia anumitor instalaţii din industria chimică sau nucleară.
Nanoroboţi, medicină pentru microoperaţii.
14%
8%
17%
39%
20%
2%
Turnatorie
Vopsire
Deservire MU
Sudura
Intretinere
Alte domenii
19%
4%
8%
25%
21%
23%
Ansamblare
Vopsire
Deservire MU
Sudura
Intretinere
Alte domenii
0
10000
20000
30000
40000
50000
S.U.A. Japonia Germania Franta Anglia Italia
Ro
bo
ti
1985
1990
1995
2000
a.
b.
2
Maşini unelte
Maşini unelte cu comandă program (CP)1. comandă prin came profilate;2. comandă prin copiere după şablon;3. comandă secvenţială.
Maşinile unelte cu comandă numerică (CN) Maşini unelte cu comandă numerică asistată de calculator (CNC).
Sistemul CNC faţă de sistemul CN are numeroase avantaje:1. un software mai puternic (set de instrucţiuni extins al noilor generaţii de procesoare);2. utilizarea limbajelor de programare evoluate simplifică activitatea de programare;3. memoria RAM de mare capacitate permite memorarea tuturor programelor – piesă acestea putând fi
testate şi corectate pe echipament;4. posibilitate de adaptare la diverse tipuri de maşini unelte prin modificări hardware minime datorită
interfeţei programabile cu echipamentele convenţionale;5. scăderea volumului hardware prin implementarea software a unor funcţii a acestuia;6. scăderea semnificativă a timpului de depanare datorită facilităţilor de autotestare şi diagnoză.
1.2. TERMINOLOGIE SPECIFICĂ ROBOTICII
Pentru diferitele componente ale roboţilor industriali, figura 1.2., s-au definit termeni specifici care vor fiutilizaţi şi în lucrarea de faţă prin preluarea termenilor din literatura anglo – saxonă.
Fig. 1.2. Robot industrial bază; structură purtătoare; articulaţia pumnului; efector; element cuplor; axă.
Sursă deenergie
Sistem de programare
Sisteme de comandă,acţionare şi senzorial
axa 5
axa 1
Bază
axa 6
axa 3
axa 2
axa 4
Structura mecanică
structurăpurtătoare:axe 1, 2, 3
articulaţia pumnului:axe 4, 5, 6
3
Arhitectura de bază a roboţilor industriali actuali este prezentată în figura 1.3.:
Fig. 1.3. Arhitectura roboţilor industriali
mediu de lucru; sarcină; structura mecanică; sistem de acţionare; sistem de comandă; sistem de prelucrare senzorial; sistem de programare; sursa de energie; I / O modulul de intrări – ieşiri; magistrala industrială.
1.3.1. Clasificarea manipulatoarelor şi roboţilor pe generaţiiClasificarea pe generaţii foloseşte drept criteriu de bază capacitatea maşinii de percepere şi interpretare a
semnalelor din mediul exterior, precum şi de adaptare la mediu în timpul procesului de lucru.
Manipulatoarele manuale (prima generaţie); Manipulatoare automate (generaţia a doua); Manipulatoare inteligente (generaţia a treia); Roboţii industriali din prima generaţie sunt manipulatoare automate programabile, având cel puţin 3 axe
(dintre care cel puţin 2 axe sunt programabile prin învăţare sau printr-un limbaj simbolic).
Roboţii industriali din generaţia a doua; Roboţii industriali din generaţia a treia sunt dotaţi cu senzori inteligenţi (prelucrare locală a informaţiei) şi
utilizează elemente de inteligenţă artificială; Roboţii inteligenţi sunt dotaţi cu programe de inteligenţă artificială avansate, au capacitate de autoinstruire.
Majoritatea roboţilor industriali folosiţi în prezent sunt din generaţia 1 şi 2.
SISTEM DEPROGRAMARE
P
SURSĂ DE ENERGIE
SISTEM DECOMANDĂ
C
SISTEM DEACŢIONARE AXE
SISTEM DEPRELUCRARESENZORIAL
STRUCTURĂMECANICĂ
MEDIU DE LUCRU
comenzi axe
măsurări traductoriinterni
sarcină
măsurăritraductori
externi
Mo
dul
ul
sen
zori
alşi
de
dec
izie
Mo
du
lul
oper
aţio
nal
instrucţiuni ROBOT INDUSTRIAL
I / O
magistralăindustrială
4
1.3.2. Clasificarea roboţilor industriali în funcţie de scara evolutivă a treptelor de automatizareSursa de
informaţiiEnergia Treapta Descriere
10 Maşină care se autoperfecţionează:robot cu inteligenţă artificială
9 Maşină cu program adaptabil în funcţie decondiţiile externe: robot cu elemente deinteligenţă artificială, robot industrialgeneraţia 3
Mediul exterior
8 Maşină care îşi corectează programul înfuncţie de condiţiile de lucru: maşinăunealtă cu comandă adaptativă
7 Maşină universală programabilă: sistem saucentru de prelucrare cu CNC, robotindustrial generaţia 2
Program variabil(programabilitate)
6 Maşină monooperaţie programabilă: maşinăunealtă cu CN, robot industrial generaţia 1
5 Maşină automată pentru operaţii multiple:strung cu prelucrare automată, automat demontajProgram fix
Electrică
Hidraulică
Pneumatică
4 Maşină automată monooperaţie: automat demontaj rigid, manipulator automat
3 Sculă mecanizată, maşină comandatămanual, manipulator manual (teleoperator)
2 Sculă de mânăOm
Mecanică
Manuală 1 Mână
Clasificarea roboţilor industriali în funcţie de complexitateCaracteristica Generaţia 1 Generaţia 2 Generaţia 3
Generareatraiectoriei
punct cu punct pe contur prin interpolator de traiectorie
Controlulpoziţiilor
limitatoare depoziţie asociate cu traductoare
analogice
traductoare numerice traductoare numerice asistatede senzori inteligenţi
Capacitateamemoriei
un singur program:pentru traiectorie zeci depoziţii, pentru programulaplicaţie sute instrucţiuni
max. 2 Ko
mai multe programe:pentru traiectorie sute depoziţii, pentru programulaplicaţie sute instrucţiuni
max. 5 Mo
limitată la capacitatea destocare a HDD
Modul deprogramare
prin învăţare directă, limbajmaşină sau simbolic
limbaj propriu de nivel înaltderivat din limbajele deprogramare Pascal, C
limbaj de nivel înalt,programare orientată pe
obiecte
Legătura cuexteriorul
interblocări şi sincronizăriîntre robotul industrial şi
poziţia unor piese saudispozitive, comenzile
maşinilor deservite
Senzori tactili, de efort,proximitate şi vizuali (cameră
video)
senzori inteligenţi (sonar,telemetru laser, camere video,
etc.) cu prelucrare locală ainformaţiei
Capacitatea dedecizie
nu avansează în program decâtdacă sunt confirmate condiţiilede interblocare şi sincronizare
programate
capabil să ocolească obstacole,să identifice forma unui numărlimitat de obiecte în funcţie decontur, masă, rugozitate printraductori şi dispozitive deapucare special adaptate
identifică forma obiectelorîmprăştiate în funcţie de
caracteristicile proprii şi lepoziţionează în poziţia corectă
de montaj; alege ordineaoperaţiilor, traiectoriile optime
1.4. Parametrii tehnici ai roboţilor 19
PARAMETRII TEHNICI AI ROBOŢILOR
Cunoaşterea parametrilor tehnici permite alegerea corectă (raport preţ/ performanţă) a robotuluicare urmează să deservească procesul ce se intenţionează a fi modernizat. Parametrii tehnici cei maiimportanţi sunt:
Rezoluţia unui sistem este dată de mărimea unităţii elementare pe care acesta o poate procesa. Încazul roboţilor rezoluţia depinde de: rezoluţia sistemului de programare; rezoluţia traductorilor ce asigură controlul în buclă închisă.
Precizia statică exprimă diferenţa între poziţia comandată Pc şi media poziţiilor realizate Pm dedispozitivul efector.
Fig. 1.3. Precizia statică
comandaoritmiarecmecanicsistemrecROBOTezROBOTrec PPRP lg5,0
Repetabilitatea statică de poziţionare reprezintă o mărime statistică asociată noţiunii de precizie,pe care o completează. Astfel pentru aceeaşi mişcare, în condiţii identice de mediu şi sarcină, semăsoară poziţiile finale ale efectorului care, vor prezenta o anumită dispersie Pi ; i=1…n , figura 1.4., faţăde poziţia comandată Pc :
Fig. 1.4. Definirea rezoluţiei, preciziei şi a repetabilităţii statice
Valoarea maximă absolută a dispersiei de poziţionare în raport cu valoarea medie de poziţionare Pm
reprezintă repetabilitatea statică a robotului.
0
z
x
poziţia comandatăXc ; Yc ; Zc
Pc
Pm
Pi , i=1..n
poziţia medie realăXm ; Ym ; Zm
poziţii realizate
Prec
y
precizie rezoluţierepetabilitate
Pc Pm Pi
scară măsurătraductor poziţie
1. Introducere în robotică20
Spaţiul de lucru al manipulatorului sau robotului este dat de volumul în care este posibil să segăsească elementele structurii mecanice. Spaţiul de lucru util este volumul maxim, descris detotalitatea mişcărilor robotului, în care se poate găsi efectorul în timpul funcţionării conform figurii1.5.:
Fig. 1.5. Spaţiul de lucru util
Numărul gradelor de libertate este dat de numărul maxim al deplasărilor posibile ale efectoruluifără a include mişcarea de prehensiune.
Sarcina utilă reprezintă masa maximă pe care o poate manipula dispozitivul de prehensiune alrobotului (valori uzuale în gama 0,5…20 Kg).
Performanţele constructive şi de comandă ale aceleiaşi clase de roboţilor pot diferi destul de mult,în funcţie de producător, dacă sunt comparaţi parametrii tehnici. De aceea de multe ori sunt preferaţiurmătorii parametri globali de analiză: parametrul privind supleţea şi eficienţa intervenţiei în spaţiul de lucru:
]/[; 31 Nm
G
VK (1.8)
unde V este volumul spaţiului de lucru; G – greutatea robotului în condiţii de funcţionare. parametrul capacităţii gravitaţionale specifice de manipulare:
G
GK 1
2 (1.9)
unde G1 reprezintă greutatea obiectului manipulat. parametrul de apreciere globală a calităţilor tehnice:
]/[; 313 mmm
PG
GVK
rec
(1.10)
unde Prec reprezintă precizia statică de poziţionare.Pentru valori mari ale parametrului global K3 se apreciază că pe ansamblu, robotul industrial analizat
îndeplineşte într-un grad mai înalt standardele de performanţă.
3.300
750
1501.0302.460
1.120
Rmax = 2.550
2. STRUCTURA MECANICĂ A ROBOŢILOR
2.1. ARHITECTURA GENERALĂ A ROBOŢILOR
2.1.1. Noţiuni despre mecanisme
Grade de libertate. Poziţia şi orientarea unui solid nedeformabil în spaţiu, într-un sistem decoordonate, este definită prin maxim 6 numere reale independente: 3 unghiuri de rotaţie , , , în raport cu axele de coordonate x, y, z; coordonatele carteziene x, y, z ale unui punct caracteristic al solidului.
Legături mecanice. Numărul de grade de libertate al unei legături mecanice este determinat denumărul de mişcări independente permis de legătură. În tabelul 2.1. sunt prezentate cele mai uzualelegături mecanice în reprezentare plană şi spaţială:
Tabelul 2.1. Reprezentarea legăturilor mecaniceDenumirelegătură
Reprezentare plană Reprezentare spaţială K
translaţie 1
rotaţienelimitată
1
rotaţielimitată
1
translaţieelicoidală
1
pivot 2
rotulă 3
plană 4
C1
C2 C1C2
C2
C1
C2
C1
C2 C1
C2
C1
300
300
C1
C2
C1
C2
C2
C1 C1
C2
C1
C2
C1
C2
C2
C1 C1
C2
Mobilitatea mecanismelor. Este un parametru caracteristic determinat de numărul mişcărilorindependente posibile. Mobilitatea unui robot este identică cu numărul de axe (mai puţin dispozitivulde prehensiune). Pentru roboţii industriali mobilitatea are valorile 3 m 7.Numărul gradelor de libertate necesar executării unei anumite operaţii se numeşte grad de libertate asarcinii Ks 6.
Redondanţă, poziţie particulară. Dacă Ks < m pentru toate configuraţii unui robot, atunciacesta este redondant: are un număr de axe mai mare decât numărul de axe necesar efectuăriioperaţiilor de complexitatea cerută de procesul tehnologic.
Fig. 2.1. Roboţi industriali cu redondanţă
Dacă Ks < m numai pentru anumite configuraţii ale structurii mecanice, acestea se numesc poziţiiparticulare caracterizate de redondanţă locală, figura 2.2.:
Fig. 2.2. Poziţie particulară cu redondanţă locală
Lanţ cinematic. Structura mecanică a roboţilor este realizată din corpuri rigide Cj legate prinlegături mecanice Lj astfel încât să formeze lanţuri cinematice funcţionale. Cele mai uzuale legăturisunt cele de translaţie, rotaţie nelimitată şi rotaţie limitată. În funcţie de aplicaţie la construcţiastructurii purtătoare (primele 3 axe) se utilizează următoarele variante de lanţuri cinematice: lanţ cinematic deschis; lanţ cinematic arborescent; lanţ cinematic închis.
axa 1 axa 5
axa 1
axa 8
a. b.
Fig. 2.3. Lanţuri cinematice: a. deschis; b. arborescent; c. închis
Coordonate articulare, coordonate operaţionale.Coordonatele articulare (de axă) sunt mărimi, variabile în timp (unghiuri, lungimi), ce definescconfiguraţia structurii mecanice a robotului la un moment dat.
Fig. 2.4. Coordonate articulare
Coordonatele operaţionale xi (i = 1…m) sunt variabilele care definesc poziţia şi orientarea obiectuluimanipulat în raport cu un sistem de coordonate fix [O0, x0, y0, z0], ataşat bazei robotului (batiului).
Fig. 2.5. Coordonate articulare, operaţionale
a. b. c.
C1
L1
Cj+1
C2
Cn
L2
Lj
Lj+1
Ln
Ln-1
O
q2q1
y0
x0
z0
qj ; j=1…m
O0
qj-1
xi ; i=1…12
2.1.1. Structuri mecanice purtătoare cu lanţ cinematic deschis
Structurile purtătoare ale roboţilor industriali au în general 3 axe care asigură poziţionarea generală.Structurile mecanice pot fi identificate prin lista simbolurilor legăturilor mecanice pornind de la baza robotului(T – legătură mecanică de translaţie, R - legătură mecanică de rotaţie).
Structura carteziană (TTT).
Fig. 2.6. Structură purtătoare carteziană
Structura cilindrică (RTT).
Fig. 2.7. Structură purtătoare cilindrică
Rezoluţia roboţilor cu structură purtătoare cilindrică nu este constantă, ea depinde de mărimea razei de rotaţie rdintre axa coloanei centrale şi poziţia efectorului.
Fig. 2.8. Rezoluţia pentru elongaţia maximă
mmR purtatoarestructuraez 94,0180
500.1000.10
360
Rezoluţia roboţilor cu structură cilindrică este net inferioară celor cu structură carteziană pentru aceeaşi echipare atraductorilor de poziţie.
rmin
rmax
rmin = 0,5 m
rmax = 1,5 m
rmax
Structura sferică (RRT).
Fig. 2.9. Structură purtătoare sferică
impulsmmR translatieaxaez /01,0000.1
10
(2.3)
impulsmmR rotatieaxaez /17,0180
000.1000.1
360
36
1
Structura bi-cilindrică (RRRT).
Fig. 2.10. Structură purtătoare bi-cilindrică
Roboţii cu structură bi-cilindrică, cunoscuţi şi sub numele SCARA sunt utilizaţi cu precădere în operaţii deansamblare de precizie.
Structură bi-sferică (RRR).
Fig. 2.11. Structură purtătoare bi-sferică
.
2.1.2. Structuri mecanice purtătoare cu lanţ cinematic închis
Elementele suplimentare ataşate structurilor purtătoare cu lanţ cinematic deschis, pot fi utilizate în acelaşitimp pentru consolidarea şi echilibrarea statică a structurii prin preluarea unei părţi din încărcarea generată depropria greutate a axelor, figura 2.12.:
Fig. 2.12. Structuri purtătoare: a. lanţ cinematic deschis; b. lanţ cinematic închis
Se observă că plecând de la o structură purtătoare bi-sferică, rezultă o nouă structură purtătoare, în lanţ cinematicînchis, mai complexă, dar care asigură o precizie mai bună concomitent cu creşterea sarcinii utile manipulate(axa 3 nu mai deplasează elementele de acţionare şi control aferente). Dezavantajul principal al structurilor culanţ cinematic închis este determinat de reducerea flexibilităţii şi a spaţiului de lucru util datorită limitărilorimpuse de legăturile mecanice suplimentare.
a. b.
2.1.3. Structura mecanică a articulaţiei pumnului
Structuri cu mişcări independente. Rolul principal al articulaţiei pumnului este de a asigura orientarea defineţe a dispozitivului efector cu un nivel de flexibilitate cât mai ridicat. cu axe ortogonale concurente; cu axe ortogonale neconcurente.
Fig. 2.13. Structura articulaţiei pumnului cu axe ortogonale concurente
Structura cu axe ortogonale neconcurente elimină dezavantajul limitării curselor unghiulare ale anumitoraxe, obţinându-se la nivelul efectorului o flexibilitate maximă, figura 2.14.:
Fig. 2.13. Structura articulaţiei pumnului cu axe ortogonale neconcurente
O structură cu axe neconcurente, foarte performantă ca nivel de flexibilitate, este articulaţia bi-conică, dezvoltatăde firma Kuka:
Fig. 2.14. Structura bi-conică cu axe neconcurente
O
P
E
P
O
O1
P
E
O2
O2
O1
O1
P
E
O2
Pentru îndeplinirea anumitor aplicaţii ce nu solicită ocolirea unor obstacole (vopsire cupistol, sudură pe contur, operaţii de debitare) şi care utilizează dispozitive sau uneltecu simetrie spaţială, este suficientă o structură a articulaţiei pumnului cu două axe:
Fig. 2.14. Structura articulaţiei pumnului cu 2 axe ortogonale
Structuri cu mişcări dependente. Utilizează un mecanism de orientare tip trompăde elefant, figura 2.15., format din elementele de ghidare Gi, conectate prin legăturilesferice Li. Poziţionarea în spaţiu a elementului cuplor EC se realizează ca rezultat alprepoziţionării simultane a elementelor de ghidare Gi sub acţiunea cablurilor C1, C2,C3, C4 fixate la un capăt de elementul cuplor EC, celălalte capete fiind acţionate demotoarele liniare corespunzătoare.
.
Fig. 2.15. Structură a articulaţiei pumnului de tip trompă de elefant
Calităţile articulaţiei pumnului se determină în funcţie de coeficientul de serviciu definit ca raport între unghiul de serviciu şi valoarea sa teoretică maximă 2:
2 (2.4)
Unghiul de serviciu este definit ca deplasarea spaţială unghiulară maximă aefectorului în raport cu centrul de mişcare P (prin intermediul căruia se asigură fixareala structura mecanică purtătoare).
O1
P
E
P
E
Gi
Li
C1
C2C3
C4
E
P
EC
1
2.2. DISPOZITIVUL EFECTOR
În funcţie de domeniul aplicaţiei dispozitivele efectoare pot diferi foarte mult având în vedere scopul pentrucare au fost proiectate: dispozitive efectoare cu rol de prehensiune; dispozitive efectoare pentru operaţii de sudură; dispozitive efectoare pentru vopsire; dispozitive efectoare pentru prelucrări cu unelte specializate.
Dispozitive efectoare cu rol de prehensiune.
Fig. 2.16. Etapele procesului de prehensiune
Fig. 2.17. Dispozitive de prehensiune din echiparea standard a unui robot industrial
axa dispozitiv prehensiune axa dispozitiv poziţionare
axa obiect manipulat
1. poziţionare
2. centrare
3. fixare - defixare
1
2
3
4
2
Dispozitive de prehensiune cu acţiune unilaterală. Acţionează pe o singură faţă a obiectului manipulat: dispozitive de prehensiune tip ventuză; dispozitive de prehensiune magnetice.
Fig. 2.18. Dispozitive de prehensiune tip ventuză cu vid:a. ventuză aderentă; b. pompă de vid; c. ventuză orientabilă şi generator de vid cu ajutaj
Fig. 2.19. Dispozitiv de prehensiune magnetic
Dispozitive de prehensiune cu acţiune bilaterală. Realizează prinderea obiectului manipulat într-unsistem de pârghii articulate asemănătoare unui cleşte, forţa de apăsare F fiind dependentă de construcţiamecanismului articulat şi geometria obiectului manipulat.
s
s
F
F m
m
Fig. 2.20. Mecanism de prehensiune bilaterală cu caracteristică mecanică constantă
F
aer FP
A
FP
A
ptotală = pstatică + pdinamică
ps
Ptpd
a. b. c.
12
1
3
4
F
M
s
sm
F
s0
Fmax
Fmin
domeniu delucru
3
Fig. 2.21. Mecanism de prehensiune bilaterală cu caracteristică mecanică rapid crescătoare
Dispozitive de prehensiune cu acţiune bilaterală cu acţionare pneumatică:
Fig. 2.22. Dispozitive de prehensiune cu acţiune bilaterală şi acţionare pneumatică
F
CH
s
sm
F
s0
Fmax
Fmin
domeniu delucru
Freglată
a. b.
1
3
1
21
2 3
56 478
c. d.1
4
5
9
4
Fig. 2.23. Dipozitiv de prehensiune multiplu
Dispozitive de prehensiune cu acţiune multiplă, adaptive.
Fig. 2.24. Dispozitive de prehensiune cu acţiune multiplă pentru manipularea obiectelor fragile
Fig. 2.25. Dispozitive de prehensiune:a. cu degete deformabile formate din segmente articulate; b. cu degete deformabile pneumatice
piesa 2 20
piesa 3 13
piesa 1 15
1 - cuplor;2 - placă port dispozitive;3 - dispozitiv de prehensiune;4 - piesă (sculă).
1
2
3
4
1
3
4
2
aer comprimat3
14
1
2
M2 M1
34
5
aercomprimat
a. b.
5
Fig. 2.26. Dispozitive de prehensiune cu bacuri adaptabile:a. autoadaptabile la forma obiectului; b. cu geometrie programată
Fig. 2.27. Dispozitiv de prehensiune adaptiv de tip mână mecanică
Dispozitive efectoare pentru operaţii de sudură
Fig. 2.27. Dispozitiv efector pentru sudarea prin puncte
1
2
3
1
2
4
1
2
3
5
1deblocat
blocat
2
31 2
a. b.
6
Fig. 2.28. Dispozitiv efector pentru operaţii de sudură pe contur
Dispozitive efectoare pentru operaţii de vopsire
Fig. 2.29. Dispozitive efectoare pentru operaţii de vopsire:a. cu pistol automat de vopsire; b. cu pistol electrostatic
Fig. 2.30. Dispozitive efectoare pentru vopsire în straturi subţiri:a. cu mişcare combinată; b. cu mişcare oscilantă în plan vertical
G
2
1
3
4
7
5
6
8
a. b.
1
2
1
3
2
1
2
3
4
a. b.
7
Fig. 2.31. Dispozitivul efector al manipulatoarelor de vopsire reciprocatoare
Dispozitive efectoare pentru prelucrări cu unelte specializate
Fig. 2.32. Dispozitive efectoare pentru prelucrări mecanice:a. găurire; b. debavurare; c., d. finisare, şlefuire
1
2
3
a. b.
M
M
M
a.
b.
c. d.
1
1
2
34
23
4
AXA ROBOTIZATĂ
ARHITECTURA AXEI ROBOTIZATE
Deplasarea efectorului în vederea realizării unei sarcini este rezultatul deplasării corelate a unuianumit număr de axe. Pentru deplasarea controlată a axei aceasta cuprinde următoarele componente:
Fig. 3.1. Arhitectura axei robotizate
sistemul de comandă; distribuitorul de energie; sursa de energie; elementul de execuţie; adaptorul de mişcare; axa mecanică; traductoarele de axă.
ADAPTOARE DE MIŞCARE
Adaptorul de mişcare are rolul de a transmite şi eventual de a modifica parametrii cinematici şidinamici furnizaţi la axul elementului de execuţie astfel încât să se asigure parametri optimi demişcare pentru axa mecanică. Cele mai utilizare adaptoare de mişcare pentru distanţe mici între axa
elementului de execuţie şi axa mecanică sunt: sisteme adaptoare tip camă - tachet; sisteme adaptoare tip reductor (cele mai utilizate); sisteme adaptoare tip şurub - piuliţă;Adaptoare de mişcare utilizate pentru distanţe mari între axele în mişcare: sisteme adaptoare cu roţi dinţate concentrice; sisteme adaptoare cu curele.
Sistem decomandă
+
corector distribuitorde energie
sursă deenergie
element deexecuţie
mecanicăaxă
pierderi
eforturiparazite
traductoareaxă
viteză
poziţie
-
x*
xr
adaptormişcare
Adaptoare de mişcare pentru distanţe mici între axele de mişcare
Camă - tachet..
Fig. 3.2. Sistem de adaptare a mişcării tip camă - tachet
Reductoare. Sunt utilizate cu precădere în cazul sistemelor de acţionare electrice pentrumicşorarea vitezei concomitent cu creşterea cuplului disponibil. Reductoarele utilizate în roboticătrebuie să fie de calitate deosebită, cu jocuri foarte mici (de dorit nule) pentru a asigura o precizie de
poziţionare a părţii mecanice cât mai ridicată. Reductoare cu roţi dinţate cu dantură dreaptă : Reductoare cu roţi dinţate cu dantură înclinată: Reductoare cu roţi conice:
Fig. 3.3. Echipare axă: reductoare cu roţi dinţate, roţi conice
1
2
3
1 – camă excentrică;2 – tachet;3 – resort.
reductorconic
intrare axa 1intrare axa 2
reductor curoţi dinţate
mecanică axa 1
mecanică axa 2
Z1 Z2
i =Z :Z
flanşă ieşire
Reductoare cu roată melcată:
Fig. 3.4. Reductor cu roată melcată
Reductoare tip pinion – cremalieră:
Fig. 3.5. Reductor pinion – cremalieră fără joc (angrenare prin două pinioane)
Reductoare planetare:
Fig. 3.6. a. Reductor cu roţi dinţate în două trepte: 1- pinion de intrare; 2 – pinion intermediar; 3 –pinion de ieşire; b. Reductor planetar: 1 – pinion de intrare; 4 – sateliţi; 5 – coroană cu danturare
interioară (ieşire reductor).
3
1 – cremalieră; 2 - pinion; 3 – corp reductor;4 – bară de torsiune (elimină jocul);4 – servomotor.
1
2
4
5
12
3
1
4
5
a. b.
Reductoare armonice sunt variante perfecţionate de reductoare planetare:
Fig. 3.7. Reductor armonic: a. schema cinematică; b. părţi componente
Şurub – piuliţă. Sunt elemente adaptoare ce transformă mişcarea de rotaţie în mişcare de translaţie,fiind utilizate cu precădere pentru axe de translaţie.
Fig. 3.8. Reductor şurub – piuliţă: a. schema cinematică; b. soluţii constructive
Fig. 3.9. Reductor şurub – piuliţă cu bile: a. detaliu; b. soluţie constructivă axă translaţie
Z0
Z11
1
2
2
5
Z1
4
Z0
54
a. b.
3
1 2
1 2
a. b.
1
2 43
5
Adaptoare de mişcare pentru distanţe mari între axele de mişcare
Roţi dinţate cu axe concentrice. Astfel de sisteme adaptoare sunt utilizate în cazul axelor dedimensiuni mici la care problema spaţiului de montare a elementului de execuţie precum şi greutateaaxei reprezintă probleme critice de acţionare pentru proiectant.
Fig. 3.10. Soluţie de amplasare a elementelor de acţionare şi adaptoarelor de mişcare
Fig. 3.11. Soluţii ce utilizează adaptoare de mişcare cu roţi dinţate cu axe concentrice
Curele. Se utilizează pentru transmisia mişcării la distanţe mari acolo unde este necesar un
sistem adaptor cu gabarit şi greutate minim, cu inerţie redusă şi randament mecanic foarte bun.: curele trapezoidale; curele cu dinţi; curele din bandă de oţel;
lanţuri cu zale.
M5M4
M6
M5
M4
M5
M4 axa 4
axa 5
axa 4
axa 5
axa 6
Fig. 3.12. Soluţii de echipare a axelor cu adaptoare de mişcare: robot ABB, tip SCARA
Fig. 3.13. Adaptoare de mişcare pentru distanţe mari între axe:a. transmisie cu mişcări independente; b. transmisie prin cuplaje cu mişcări dependente
axa 1curele bandă
oţel
Bază
transmisie cuaxe
concentrice
axe 1, 2
motoare cureductoare
curea dinţată
şurub cu bile
axa 2axe 3, 4
motoare cureductoare
cuplajaxa 4
M1
M2
axa 2
M3
axa 3
axa 1
M4
axa 4
M
axa 2
axa 3
axa 4
C1
a. b.
C2
C3
C4
SISTEME DE ACŢIONARE
Sistemul de acţionare al axei robotizate este format din: element de execuţie; distribuitor de energie; sursa de energie.
Consideraţii generale privitoare la acţionarea axei robotizate
Se consideră două axe succesive ale unui robot prevăzut cu adaptoare de mişcare întreelementele de execuţie şi structura mecanică a axelor conform figurii 3.14.:
Fig. 3.14. Mărimi caracteristice unui sistem robotizat
Motoarele de acţionare M1, M2 trebuie să învingă cuplurile rezistente statice, dinamice şi aleatoare cepot apare la deplasarea pe traiectorie: cuplurile statice sunt determinate de forţa gravitaţională şi forţele de frecare; cuplurile dinamice sunt generate de forţele ce apar la deplasarea axelor şi pot fi următoarele:
- cuplul de inerţie, determinat de momentul de inerţie este proporţional cu acceleraţia axei;- cuplul Coriolis, determinat de forţa Coriolis este proporţional cu produsul vitezelor
axelor succesive (apare în cazul mişcărilor combinate);- cuplul centrifug, determinat de forţa centrifugă, apare la nivelul axei următoare (axa 2)
celei luate în considerare în procesul de evaluare şi este proporţional cu pătratul vitezei derotaţie a acesteia.
cuplul sarcinii manipulate este un cuplu variabil, suplimentar care apare în situaţia în care robotuldeplasează obiecte ce pot fi de dimensiuni şi forme diferite ca urmare şi cu momente statice şi deinerţie diferite;
cuplurile aleatoare sunt cupluri exterioare robotului care pot apărea în procesul de ansamblare sauprelucrare în special la nivelul dispozitivului de prehensiune şi care determină eforturisuplimentare la nivelul axelor de poziţionare.Pentru acţionarea axei robotizate pot fi alese trei soluţii în funcţie de puterea (cuplul) solicitată
motorului de acţionare şi timpul de răspuns impus:- acţionare hidraulică; acţionare pneumatică; acţionare electrică.
1
2
M1, i1 M2, i2
1
2
Mm1, M1
Mst axa1
Mm2
J1,2+sarcină
Mst axa2
J2Mst sarcină
Ma
Js
Mm2, M2
Sisteme de acţionare hidraulice
Sistemele de acţionare hidraulice sunt utilizate pentru acţionarea a 40 % din parcul mondial deroboţi industriali fiind preferate în cazul roboţilor de forţă datorită următoarelor avantaje: raport foarte bun între puterea dezvoltată şi greutatea elementelor de execuţie care sunt robuste şi
fiabile ; elementele de execuţie hidraulice lucrează la viteze moderate (pot lipsi adaptoarele de mişcare); datorită incompresibilităţii uleiului, sistemului i se conferă suficientă rigiditate pentru a menţine
poziţiile programate; au timp de răspuns mic şi cu sisteme performante de comandă se pot atinge precizii de poziţionare
foarte bune; fluidul hidraulic (ulei) are rol de lubrifiant şi agent de răcire; este preferat datorită siguranţei în funcţionare pentru utilizări în medii explozive (vopsitorii), cu
praf (turnătorii) sau corozive (acoperiri galvanice).
Principalele dezavantaje ale sistemelor de acţionare hidraulice sunt următoarele: costul sistemului de acţionare este ridicat şi necesită operaţii de întreţinere pretenţioase; elementele hidraulice sunt dificil de miniaturizat deoarece necesită secţiuni de trecere a fluidului
(volum element) determinate de debitul şi presiunea de lucru; se pretează în cazul roboţilor cu ciclu de lucru lent.
Elemente de execuţie hidraulice. Cele mai utilizate sunt cilindrul hidraulic care realizeazădirect mişcarea de translaţie şi motorul hidraulic care realizează mişcarea de rotaţie.
ppresiunetensiuneU determină forţa (cuplul);
QvolumicdebitcurentI determină viteza de translaţie sau rotaţie;
pQPhidraulicaputereelectricaputereP
Cilindrul hidraulic.
Fig. 3.15. Cilindrul hidraulic
Motorul hidraulic.
Fig. 3.17. Schema funcţională a motorului hidraulic
S
x(t)
Qi Qe
pi(t)Vi(t)
pe(t)Ve(t)
V = 2V0
F(t)
ms
Fv(v)
Ff
pi(t)
pe(t)
Qsc(t)
Qi(t)
Qe(t)
M Js
M
Mm
Mr
Mvr
d
Distribuitoare de energie hidraulică. Distribuitoarele hidraulice au rolul de a controla
energia hidraulică transmisă elementelor de execuţie. distribuitoare de comandă; distribuitoare proporţionale; servodistribuitoare.
Distribuitoare de comandă. Se realizează pentru diferite debite (l / min) DN6…DN100 şipresiuni de lucru 315…1.000 bar.
Fig. 3.20. Distribuitor hidraulic de comandă cu simplu efect, cu 2 căi şi 2 poziţii, revenire mecanică
Fig. 3.21. Distribuitor hidraulic de comandă cu dublu efect, cu 4 căi şi 3 poziţii, revenire mecanică
Distribuitoare proporţionale. Reglează direcţia debitului şi în mod continuu mărimea acestuia: electromagnet de comandă proporţional; traductor inductiv de poziţie a sertarului de comandă (opţional funcţie de variantă);
bloc electronic de comandă care include în principal surse de alimentare, ieşiri în curent, intrăripentru semnale de programare şi intrări de măsură (opţional).Electromagnetul de comandă proporţional denumit şi motor liniar este prezentat în figura 3.22.:
T
B
P
A
41
26 3
T5
2 - 0 - 1
P
A
T
B7
P
A
4 1
2
3
5
P
A
0 - 1
Fig. 3.22. Electromagnet de comandă proporţional: a. în poziţie neutră; b. acţionat
Alimentarea bobinelor de comandă 3 cu un curent de o anumită polaritate determină în întrefierurilearmăturii un flux suplimentar c care modifică echilibrul fluxurilor rezultante s , d în zonele dinstânga – dreapta:
dscpdcps
dscpdcps
I
I
;;
;;(3.25)
Rezoluţia traductorului atinge 2 m ceea ce îl face indicat în măsurarea deplasărilor foarte mici.
Fig. 3.23. Traductor de translaţie inductiv
Fig. 3.24. Distribuitor proporţional direct comandat, cu traductor de poziţie
13 6 2 5 4 5 2 6
P
A
T
B
0
N S
N S S N
S N N S
N S S N
S N
s
1234 6
7
5
a. b.
I = 0 +I
=
~
Umăsură
u~
Z1
Z2
u1
=
~
demodulator
generator
miez ferită
0
Fig. 3.25. Caracteristica de comandă a unui distribuitor proporţional, surse de erori
Distribuitoare proporţionale pilotate. Pentru debite mari acţionarea electrică a sertarului decomandă nu mai este posibilă datorită forţelor rezistente mari. un distribuitor proporţional cu comandă directă prin electromagneţi proporţionali; un distribuitor pentru debitul proiectat, ce poate fi echipat opţional cu un traductor de poziţie.
Fig.3.26. Distribuitor proporţional pilotat
I [mA]
s [mm]Q [l/min]
0
s(I)
I1 I2
eroare dehisterezis
eroare derepetabilitate
5 2 1 4 2 5
7
9
10
13
12 11
comandă A
comandă B
P
A
T
B
YX
Y
8
Servodistribuitoare. În procesele de reglare la nivelul axei robotizate, procese rapide, esteimportant ca distribuitorul de energie să prezinte şi o bună dinamică. La distribuitoarele hidrauliceproporţionale comandate cu electromagneţi proporţionali această cerinţă este limitată de inductivitateamare a bobinei electromagnetului şi din acest motiv sunt preferate sistemele de comandă hidraulice tipservosupapă.Servosupapa este un amplificator hidraulic cu comandă electrică format din: motor electric de comandă; amplificator hidraulic de tip placă de recul şi duze.
Fig. 3.27. Motorul electric de comandă al servosupapei
Fig. 3.28. Amplificator hidraulic servosupapă: a. schema de principiu; b. caracteristica de presiune
61
2
3
4
7
5Mm
I I
a. b. c.
13
A P T B
pA pB
511
pApB
s [mm]0
p = pB - pA
0
b.a.
Fig. 3.29. Servosupapă
Fig. 3.30. Servodistribuitor cu două trepte şi revenire mecanică
7 1
2
6 6
4
3
5
8
9 9
10
11
12
13
P
A
T
B
1
2
7
3
6
5
4
8
9
Fig. 3.31. Caracteristici de reglare ale servodistribuitoarelor
Caracteristica statică de debit prezintă două puncte de lucru semnificative: punctul de lucru A corespunzător funcţionării servodistribuitorului în regim apropiat de zona de
blocare, în jurul punctului zero; punctul de lucru B corespunzător funcţionării servodistribuitorului în regim deschis.
Fig. 3.32. Caracteristica de presiune a servodistribuitorului
Q
I
200 % -0,5…1,5 % S
suprapunere negativă
suprapunere pozitivă
Q
I50 %
+0,5…1,5 % S
Q
I
100 %0…0,5 % S
suprapunere zero
A
A
B
[%]nQ
Q
[%]nI
I
Servodistribuitoare cu două trepte şi revenire barometrică.
Fig. 3.33. Servodistribuitor cu două trepte şi revenire barometrică
Servodistribuitoare cu două trepte şi revenire electrică.
Fig. 3.34. Servodistribuitor cu două trepte şi revenire electrică
P
A
T
B
5
4
1
26
3
8
9
10 11
P
A
T
B1
26
45
8
9
10 11 3
7 12
Caracteristica dinamică de frecvenţă, alături de principalii parametri statici, este foarte importantă înalegerea tipului de servodistribuitor în funcţie de parametrii de reglare solicitaţi de aplicaţie.
Sistem derevenire
Barometric[%]
Mecanic[%]
Electric[%]
Histerezis 3,0 2,0 0,5Sensibilitate 1,0 0,5 0,2Intervalinversare
2,0 1,0 0,2
Asimetriecurgere
5,0 5,0 5,0
Fig. 3.35. Comparaţia unor parametri statici şi a caracteristicilor de frecvenţă ale servodistribuitoarelor
Aparate hidraulice proporţionale.
Supapa proporţională de limitare a presiunii direct comandată. Este utilizată caelement de reglare automată a presiunii maxime din circuitul hidraulic supravegheat (exemplu pentrureglarea forţei maxime de strângere la dispozitivele de prehensiune în funcţie de caracteristicileobiectului manipulat).
Fig. 3.36. Supapă proporţională de limitare a presiunii
revenire barometricărevenire mecanică
revenire electrică
Qn < 30 l/min; p = 140 bar; s = 25 %
P
T
p
I
123 47 6 5
8
Supapa proporţională de reglare a presiunii pilotată. o supapă proporţională de limitare a presiunii cu rol de element de reglare; bloc de menţinere a presiunii ce lucrează ca o rezistenţă hidraulică variabilă;
elemente adiţionale opţionale: siguranţă de presiune maximă, supapă de sens.
Fig. 3.37. Supapă proporţională de reglare a presiunii, echipată cu supapă de sens şi siguranţă depresiune maximă
Supapa proporţională de debit. Supapa proporţională de reglare a debitului menţineconstant debitul programat independent de temperatura şi presiunea uleiului. Pentru a realiza aceastăfuncţie de reglare supapa utilizează ca element hidraulic de control o balanţă de presiune cu două căiîn circuitul de alimentare, figura 3.38.:
Fig. 3.38. Balanţă de presiune cu 2 căi în circuitul de alimentare
2113
2021 14
5
4
6
7
8
2216193
17
18
9
10
11
12
15
B
A Y
B
A Y
supapă proporţională dereglare a presiunii
supapă proporţională dereglare a presiunii cu
supapă de sens şi siguranţăde presiune maximăAB
p1 ; A0
pi ; Qi
p1 ; Q1
ps ; A0
ps
B
A
ps
Q
1
42
8
7 3
2
6 5
Fig. 3.39. Supapă proporţională de debit
Surse de energie hidraulică
Fig. 3.40. Sursă de energie hidraulică
1
2
345
A
B
68
7
3~
F1
Ba
N2
P
T
Ph
Sp
Ss
F3
F2Ac
M
Elementehidraulice
max.
min.
TuNu
Ru
1
Aplicaţii ale sistemelor de acţionare hidraulică în robotică.
Sistemele de acţionare hidraulică utilizate în robotică se pot realiza cu elemente hidrauliceclasice în cazul în care în cadrul aplicaţiei robotul execută un ciclu de deplasări fix sau cuelemente de hidraulică proporţională (programabile electronic sau numeric) în cazul în carerobotul execută sarcini complexe: ciclu de deplasări la viteze variabile, control activ al forţei deprehensiune.
Aplicaţii cu elemente hidraulice clasice.
Fig. 3.41. Scheme de acţionare hidraulică a axei robotizate: a. cu reglarea vitezei în ambeledirecţii şi a cursei maxime; b. cu reglarea vitezei în ambele direcţii şi frânare hidraulică lină la
capăt de cursă
Modulul electronic al elementelor hidraulice proporţionale. Aparatele hidrauliceproporţionale sunt concepute să lucreze prin conectare la un modul electronic specializat, decomandă şi control. Modulul electronic este conceput astfel încât performanţele elementuluihidraulic (partea mecanică) să fie îmbunătăţite iar fenomenele perturbatoare să fie eliminate saulimitate.
Ss1 R2Ss2R1
F
D
RF1
PhSp
RF2
Ba
P
A
T
B
C
Ss1
R2
Ss2
R1
F
D
daxă
S1
PhSp
S2
C
Ba
P
A
T
B
a. b.
p
p1 p2
2
Fig. 3.42. Schemă hidraulică de reglare a poziţiei axei robotizate
Fig. 3.43. Schemă hidraulică de reglare a vitezei axei robotizate
-
+ U
I
A
P
A
T
B
U
xServoamplificator
±10 V
R1
1
C
Tpu
SD
5
23 4
6
Ma
7=
K1
K1start
Kssens
PI
-X+XKS
-+
A
P
A
T
B
U
s
Amplificator distribuitor proporţional
10 V
MH
1
Am
TG
DP
5
2 3
4
13
Ma
87
9
14
12
11
10
U
I
U
II
IPID
6
A
PI
K1K2
K3
R1 R2R3
K1viteză 1
K2viteză 2
K3viteză 3
Kssens
Ks
s
s*
v
v*
3
Fig. 3.44. Schemă hidraulică de reglare a presiunii
Aplicaţii cu elemente hidraulice cu comandă numerică.
Fig. 3.45. Sistem de poziţionare electrohidraulic cu comandă numerică pentru axe de rotaţie
-
+
U
I
A
P
A
T
B
U
p
Servoamplificator
C
SD
5
2 3 4
6
Ma
7=
PI
9
R3
R2
K
8
±10 V
R1
1
K1
K1start
Kssens
MPP
Z1
Z2
A B
T P
CT1 CT2 MH
C1 C2
J
DH7
start -stop
frecvenţă
sens
DV
1
Sisteme de acţionare pneumatice
Sistemele de acţionare pneumatice reprezintă 21 % din totalitatea sistemelor de acţionare aleroboţilor industriali. Sistemele de acţionare pneumatice au următoarele avantaje: fiabilitate ridicată în medii industriale dificile, rezistenţă la şocuri şi vibraţii; capacitate de suprasarcină; preţul aparatelor, conecticii şi al elementelor de comandă mai mic decât al sistemelor hidraulice sau
electrice similare; existenţa unor surse ieftine şi relativ răspândite de energie pneumatică în mediul de producţie
industrial.Principalele dezavantaje care limitează utilizarea sistemelor pneumatice în robotică sun legate deurmătoarele aspecte: poziţionare grosieră (cu elemente de comandă clasice), performanţe dinamice reduse datorită
compresibilităţii aerului; capacitate redusă a elementelor de execuţie de a dezvolta cupluri (forţe) importante datorită presiunii
de lucru reduse la 6…10 bari; pierderi importante de presiune pe conductele de aducţiune la punctele de lucru situate de obicei la
distanţă faţă de staţia de preparare a aerului comprimat; necesită instalaţii suplimentare de tratare a aerului comprimat care îndepărtează umiditatea şi
realizează emulsionarea cu vapori de ulei pentru a preveni coroziunea elementelor pneumatice.
Cilindrul pneumatic.
fer
fea
FFF
FFFF
ra
fr
fa
FF
FFFF
FFFF
12
21
Fig. 3.47. Cilindri pneumatici: a. cu simplu efect; b. cu dublu efect şi simplă acţiune;
S
x(t)
Qi Qe
pi(t)Vi(t)
F(t)
ms
Fe Ff
D1
a.
x(t)
p1(t)V1(t)
p2(t)V2(t)
F1(t)
ms
F2(t)
Ff
D1
D2
S1 S2
b.
S
x(t)
p1(t)V1(t)
p2(t)V2(t)
F1(t)
ms
F2(t)
Ff
ms
Ff
c.
2
c. cu dublu efect şi dublă acţiune
Fig. 3.38. Cilindri pneumatici: a. în tandem; b. de precizie
Fig.3.39. Cilindru pneumatic cu sistem de frânare la capăt de cursă
a. b.
0
v
x
xf
v1
vf
0
p
x
xf
p1
p2
pf
p1
p2
a. b.
xf
p1; V1 pf; Vf
p1 p2
41
9
3 2
7 8
6 5
3
Fig. 3.40. Grafice de funcţionare: a. evoluţia presiunii de frânare; b. evoluţia vitezei pistonului
Motorul pneumatic cu membrană cu simplă acţiune.
Fig. 3.41. Motor pneumatic cu membrană
Motoare pneumatice rotative.
Motorul pneumatic (hidraulic) rotativ cu cremalieră.
Fig. 3.42. Motorul pneumatic rotativ cu cremalieră
p1
123
4
5
6 7
8
Fs(p1)
Fa Fe
P
T
P
T
14
23
1
4
4
Fig. 3.43. Variante constructive de motoare pneumatice rotative cu cremalieră
Motoare rotative cu palete.
Fig. 3.44. Motoare pneumatice cu palete: a. unisens; b. reversibil
Motoare rotative cu pistoane.
Fig. 3.45. Motor rotativ cu pistoane radiale
B
A
1
3
4
2
5
7
1
72
6
a. b.
B
A
2
3
4
1
5
6
C
e
R
2
6
F
NTk
7
d
rk
5
1
Fig. 3.46. Motor rotativ cu pistoane radiale şi rotor dublu
Motoare rotative cu pistoane axiale. Sunt motoare volumice reglabile, de turaţiimari care datorită dispunerii axiale a cilindrilor de lucru, figura 3.47., prezintă ostructură compactă şi ca urmare un moment de inerţie redus.
000000
Fig. 3.47. Motor rotativ cu pistoane axiale
1 – stator;2 – rotor;3 – conexiune;4 – cilindru;5 – fus distribuitor;6 – rulment;7 – ax ieşire;8 - garnitură
12 3
4
5
7
6
8
F
TR
1234
5
7
8 9
6
5
6
N
r
6
Distribuitoare de energie pneumatică.
Fig.3.48. Servodistribuitor pneumatic cu control digital (HR Textron)
Sursa de energie pneumatică. Sursele de energie pneumatică pot fi individuale(de mică putere deservesc un post de lucru) sau centralizate, caz în care există ostaţie de tip industrial de preparare a aerului comprimat care este distribuit prinreţea către consumatori.
Fig. 3.49. Sursă de energie pneumatică
PA BT T
>
1
2
3
4
5
6
3~
F
Ca
C
K
RD
Ua
H2O
R1
Ac
MElemente
pneumatice
Ra
max. 10 bar 2…4 bar
A
Rp
max.
min.
7
Aplicaţii ale sistemelor de acţionare pneumatică în robotică.
Fig. 3.50. Sistem de poziţionare pneumatic
CF
R2
Ss1
R1
D1
D2
R3 D3
P
A
T
B
CC
p1p0
P
A
P
A
P
P
Q1.1 Q1.2 Qn.1 Qn.2Qk.1 Qk.2
CF
M
Sisteme de acţionare electrice
Sistemele de acţionare electrice s-au răspândit în ultimul timp foarte mult fiind preferate în echiparearoboţilor de precizie ce manipulează sarcini mici sau mijlocii datorită compatibilităţii între sistemele decomandă, distribuitoarele de energie, elementele de execuţie şi senzori care lucrează în exclusivitate cu mărimielectrice analogice sau digitale.Principalele avantaje ale sistemelor de acţionare electrice sunt:
permit realizarea unor programe complexe de control a mişcării (viteză sau cuplu);
elementele de execuţie se pretează controlului digital, au timp de răspuns mic, sunt precise şi nepoluante;
sursa de energie este disponibilă în orice mediu industrial şi exceptând roboţii mobili, alimentarea sistemuluinu necesită echipamente auxiliare cu volum important ca în cazul sistemelor hidraulice sau pneumatice;
preţul de cost al distribuitoarelor de energie este avantajos mai ales în cazul acţionărilor de mică şi medieputere datorită folosirii circuitelor integrate inteligente ce cumulează pe o singură structură integratăfuncţiile blocurilor de comandă şi forţă a acţionării;
Principalele dezavantaje sunt determinate de următoarele aspecte: elementele de execuţie funcţionează la viteze ridicate şi cuplu redus (la aceeaşi putere) ca urmare pentru
acţionarea axei robotizate sunt necesare adaptoare de mişcare care datorită jocurilor mecanice limiteazăprecizia sistemului;
raportul putere – greutate al elementelor de execuţie electrice este defavorabil în raport cu elementele deexecuţie hidraulice;
în lipsa alimentării robotului elementele de execuţie nu pot păstra poziţia axei mecanice ca urmare sistemulde acţionare trebuie prevăzut cu elemente de frânare care cresc greutatea şi complexitatea sistemului şi astfelnu se permite manevrarea manuală a structurii mecanice atunci când se impune deplasarea ei din zona delucru în poziţia de casă;
posibilitatea formării arcului electric (fenomene de comutaţie dinamică) între componentele în mişcare,limitează domeniile de folosire exclusiv la cele fără praf, vapori sau gaze inflamabile.
Elemente de execuţie
În robotică datorită unor cerinţe specifice impuse elementelor de acţionare: putere specifică cât mai mare,fiabilitate, moment de inerţie mic, domeniu larg de variaţie a turaţiei fără încălzire excesivă, capacitate desuprasarcină, întreţinere minimă, caracteristici de reglare liniare, s-au impus servomotoarele de curent continuurealizate în diverse variante, respectiv motoarele pas cu pas în special datorită preciziei de poziţionare.
Servomotoare de curent continuu.
Servomotoare cu rotor cilindric cu crestaturi.
Fig. 3.56 Servomotor de c.c. cu excitaţie electromagneticǎ
1
2
3
1 – circuit magnetic;2 – pol principal;3 – rotor cu crestǎturi;4 – pol auxiliar.
4
3. Axa robotizată90
Fig. 3.57. Servomotor de c.c. cu excitaţie realizatǎ cu magneţi metalici remanenţi (Alnico)
Fig. 3.58. Servomotor de c.c. cu excitaţie realizatǎ cu magneţi metalici coercitivi (ferite)
1
2
5
1 – circuit magnetic;2 – pol principal (magnet);3 – talpǎ pol principal;4 – bobinǎ magnetizare;5 – rotor cu crestǎturi;.
N
S
S
N
NS
3N S
N
S
N
S
N
S
N
S
4
1
24
1 – carcasǎ din aluminiu;2 – pol principal (magnet);3 – rotor cu crestǎturi4 – canale ventilaţie;
3N
SN
S
S
N
S
S
N
N
S
N
S
N
SN
N
S
N
S
SN
S
N
Servomotorul cu rotor disc şi întrefier axial.
Fig. 3.58. Servomotor de c.c. cu rotor disc
Fig. 3.59. Servomotor de c.c. cu rotor pahar
Servomotorul cu antrenare directă (Direct Drive).
Fig. 3.60. Servomotor de c.c. cu antrenare directǎ (Direct Drive)
N S
N S
1
8
4
3
2
7
6
5
1110
9
1 – flanşe feromagnetice;2 – magnet permanent;3 – disc rotoric;4 – înfǎşurare rotor;5 – colector;6 – ax;7 – perie colectoare;8 – înfǎşurare de compensaţie (magnetizare);9 – flanşǎ;10- ventilator;11- rulment.
=
S
N+
-
0
1
2
4
1 – carcasǎ din aluminiu;2 – stator;3 – rotor;4 – colector;5 – zonǎ interior rotor;6 – ax antrenat direct.
3N
SN
S
S
N
S
S
N
N
S
N
S
N
SN
N
S
N
S
SN
S
N
5
6
N
S
N
S 1
2
3
6
47
8
9
1
11
12
13
1 – înfǎşurare rotoricǎ;2 – rotor pahar;3 – cilindru exterior;4 – magnet permanent;5 – talpǎ polarǎ;6 – cilindru masiv interior;7 – admisie aer comprimat;8 – perie;10 – scut din aluminiu;10 - rulment;11 - ax motor;12 - colector;13 – bornǎ de alimentare.
5
3. Axa robotizată92
Servomotorul fără perii (DC Brushless).
Fig. 3.61. Servomotor de c.c. Brushless
Fig. 3.62. Servomotor de c.c. Brushless cu rotor exterior
Servomotorul Brushless Direct Drive.
Fig. 3.63. Servomotor de c.c. Brushless Direct Drive
1 – rotor;2 – stator;3 – pol stator;4 – conector înfǎsurǎri stator;5 – conector resolver;6 – resolver;7 – cuplaj elastic;8 – rulment;9 – ax servomotor.
1
24
5
6
78
3
N
S
9
magneţi (Neodim) rotor
înfǎşurarestator 9 poli
capete înfǎşurǎrifaze
nul steaînfǎşurǎri
lagǎr din bronz grafitat
talpǎ polarǎ
ax motor (legǎturǎ)
N
S
rotor
înfǎşurǎristator
scut
magneţificşirulment
conectori
resolver
ax servo
Motoare pas cu pas. Motorul pas cu pas (MPP) este o maşinǎ sincronǎ ce realizeazǎ princonversie electro – mecanicǎ discretǎ o funcţie univocǎ între impulsurile de comandǎ aplicatestatorului şi unghiul de rotaţie al rotorului (la fiecare impuls de comandǎ rotorul executa un pas). Ceimai importanţi parametri ai motoarelor pas cu pas sunt: unghiul de pas este unghiul existent între două poziţii consecutive ale rotorului la aplicarea unui
impuls de comandă; frecvenţa maximǎ de mers în gol este frecvenţa maximǎ a impulsurilor de comandă pe care o poate
urmări motorul fără pierderea sincronismului; frecvenţa maximă de start - stop în gol este frecvenţa maximă a impulsurilor de comandă la care
motorul poate porni, opri sau reversa fără omisiuni de paşi, în lipsa sarcinii la arbore; cuplul maxim de start - stop este cuplul rezistent aplicat pe arbore, la care motorul poate porni,
opri sau reversa fără omisiuni de paşi, la o frecvenţa de comandă şi un moment de inerţie date. viteza unghiularǎ definitǎ ca produsul între unghiul de pas şi frecvenţa de comandă.Principalele avantaje ale motoarelor pas cu pas pentru utilizarea în roboticǎ sunt: univocitatea conversiei numǎr de impulsuri – deplasare; este compatibil cu comanda digitalǎ; precizie de poziţionare şi rezoluţie unghiularǎ de pânǎ la 0,5 /pas; poate fi utilizat în circuit deschis la porniri, opriri şi reversări fără pierderi de paşi; memorează poziţia;Dezavantaje motorului pas cu pas: viteza maximǎ în sarcinǎ pentru motoarele de putere (maxim 5 kW) este limitatǎ la valoarea de
500…300 rpm (frecvenţa de comandǎ nu depǎşeşte 1…2 kHz) în funcţie şi de sistemul decomandǎ;
rotaţia este discontinuǎ şi produce vibraţii în special la frecvenţe joase; caracteristica mecanicǎ M(f) este puternic cǎzǎtoare şi pentru aceleaşi caracteristici constructive şi
electrice cuplul mediu scade odatǎ cu micşorarea pasului unghiular.
Motorul pas cu pas cu reluctanţǎ variabilǎ.
Fig. 3.68. Motorul pas cu pas cu reluctanţǎ variabilǎ (4 faze, 24 paşi, 15 /pas):a. alimentare unidirecţionalǎ o fazǎ, F1; b. alimentare unidirecţionalǎ o fazǎ, F2
1
2
3
4
5
6
*F1
F1
*F2
*F3
*F4
F4
F3
F2
12
3
4
5
6
*F1
F1
*F2
*F3
*F4
F4
F3
F2
p=15
2
1
3
a. b.
dr
ds
pI
Creşterea numǎrului de paşi pe rotaţie se poate realiza prin danturarea polilor statorici astfel încât, înfuncţie de lǎţimea polului, pe acesta sǎ avem un numǎr de dinţi zps, uniform distribuiţi cu un pas dentardps egal cu pasul dentar al dinţilor rotorului dr.
Fig. 3.69. Pol statoric danturat şi dinţi rotorici în configuraţie Darrieus
Cuplul dezvoltat de motorul cu reluctanţǎ variabilǎ poate fi menţinut şi la rezoluţii unghiulareimportante prin utilizarea mai multor circuite magnetice cu configuraţie geometricǎ simplificatǎ(diferenţǎ de reluctanţǎ, frecvenţǎ de comandǎ ridicatǎ), cuplate în paralel pe acelaşi ax motor. Practics-au impus douǎ variante constructive: un ansamblu de minim douǎ motoare identice, având circuitele statorice aliniate şi rotoarele
cuplate pe acelaşi ax, decalate spaţial; un motor cu un singur circuit statoric şi mai multe rotoare cuplate pe acelaşi ax, decalate spaţial.
Fig. 3.70. MPP cu reluctanţǎ variabilǎ şi circuite magnetice multiple (3x3 faze)
ds
dr
1
2
3
1 – pol stator;2 – dinte stator;3 – dinte rotor.
p
dr
dr3
1
*F1(1) *F1(2) *F1(3)
1
2
7
5
3
6
4
8
9
1 – circuit magnetic;2 – pol statoric MPP1;3 – rotor MPP1;4 – dinte rotoric;5 – rotor MPP2;6 – rotor MPP3;7 – ax motor;8 – rulment;9 – scut.
Motorul pas cu pas cu magneţi permanenţi.
Fig. 3.71. Motorul pas cu pas cu magneţi permanenţi: a. construcţia motorului cu 4 faze şi 3 perechi depoli rotorici (12 paşi, 30 /pas); b. varianta cu numǎr mare de poli rotorici
motorul pas cu pas cu magneţi permanenţi şi alimentare unidirecţionalǎ; motorul pas cu pas cu magneţi permanenţi şi alimentare bidirecţionalǎ.
Fig. 3.72. Înfǎşurǎrile statorice ale MPP cu magneţi permanenţi:a. MMP cu alimentare unidirecţionalǎ (m = 4); b. MMP cu alimentare bidirecţionalǎ (m = 2)
În aplicaţii care cer o poziţionare precisă, îmbunǎtǎţirea rezoluţiei unghiulare (0,5/pas) se poateobţine prin creşterea numǎrului de faze pânǎ la m = 5 şi utilizarea variantelor constructive
multicircuit, cu rotoare decalate.
2
3
N+
-
S
a. b.
*F1
*F3
*F4
*F2
4=90
N
N
S
1
4
5
1=0
2=30
3=60
S
N
N
S
S
+ +
+
+ ++
*F1 *F2
*F3 *F4
++
*F1 F1
*F2 F2
-
-
(-) (+)
++
-
-
(-) (+)
a. b.
Motorul pas cu pas hibrid. Motorul hibrid este cel mai utilizat în aplicaţii deoarece combină celemai bune caracteristici ale motorului cu reluctanţă variabilă şi motorului cu magneţi permanenţi: cuplu volumic şi vitezǎ importante; rezoluţie foarte bunǎ; memorarea poziţiei în lipsa alimentǎrii.
Fig. 3.73. Motor pas cu pas hibrid
Modalitǎţi de comandǎ a fazelor MPP. Comutaţia fazelor motorului pas cu pas dupǎ un anumitprogram asigurǎ rotaţia câmpului magnetic statoric şi determinǎ performanţele maşinii. Principalelesecvenţe de comandǎ a MPP sunt: secvenţa simplǎ (one phase on); secvenţa dublǎ (two phases on); secvenţa mixtǎ (half steep); secvenţa cu pas redus (mini steeping).
Secvenţa simplǎ constǎ în comutaţia succesivǎ a câte unei faze a motorului, acestea putând fialimentate prin blocul electronic de comutaţie în mod unidirecţional (MRV, MMP, MH) saubidirecţional (MMP, MH). Alimentarea unidirecţionalǎ are dezavantajul realizǎrii unui flux în întrefier
şi implicit a unui cuplu mai mic (solenaţia la un pas de comutare: fazasiN ). Alimentarea
bidirecţionalǎ, în acest caz, presupune înserierea bobinelor polilor opuşi şi reducerea la jumǎtate a
numǎrului de faze concomitent cu creşterea cuplului (solenaţia la un pas de comutare: fazasiN2 ):
dr
dr2
1
*F1(1) *F1(2)
1
2
7
3
6
4
8
9
1 – circuit magneticstator;2 – pol statoric;3 – rotor 1;4 – dinte rotoric;5 – magnet permanent;6 – rotor 2;7 – ax motor;8 – rulment;9 – scut.
N S
N S
5
N S
Fig. 3.78. Comanda MPP în secvenţǎ simplǎ (one phase on):a. MPP cu alimentare unidirecţionalǎ (m = 4); b. MMP cu alimentare bidirecţionalǎ (m = 2)
Secvenţa dublǎ de comandǎ a fazelor constǎ în alimentarea simultanǎ a douǎ faze succesive pentu amǎri cuplul motorului, numǎrul de paşi fiind acelaşi ca în cazul secvenţei simple de comandǎ. Datoritǎfaptului cǎ realizeazǎ un cuplu mǎrit în cazul tuturor tipurilor de MPP, aceastǎ modalitate de comandǎa fazelor motorului este preferatǎ în majoritatea aplicaţiilor deoarece algoritmul de comandǎ rǎmânerelativ simplu iar în cazul comenzii cu microprocesor (cazul roboţilor) acest aspect nu creazǎ problemesuplimentare.
*F1
*F3
*F2
*F4 SN
*F1
*F3
*F2
*F4
S
N
S
N
N S
UF1
t
UF2
t
UF3
t
UF4
t
Np
t
UF1
t
UF2
t
Np
t
a.
*F1
F1
*F2
F2
S
N
S
N
S
N
a.
*F1
F1
*F2
F2
S
N
S
N
S
N
a.
b.
Fig. 3.79. Comanda MPP în secvenţǎ dublǎ (two phases on):a. MPP cu alimentare unidirecţionalǎ (m = 4); b. MMP cu alimentare bidirecţionalǎ (m = 2)
Secvenţa mixtǎ de comutaţie a fazelor constǎ în alimentarea succesivǎ a unei faze urmatǎ dealimentarea a douǎ faze astfel încât sǎ se obţinǎ dublarea numǎrului de poziţii de echilibru şi scǎdereapasului unghiular la jumǎtate (half steep), în conformitate cu figura 3.80.. Alimentarea motorului este
asimetricǎ ca urmare cuplul va prezenta o scǎdere faţǎ cazul cu secvenţǎ dublǎ de cumutaţie.
*F1
*F3
*F4
S
N
UF1
t
UF2
t
UF3
t
UF4
t
Np
t
UF1
t
UF2
t
Np
t
a.
*F1
F1
*F2
F2S
N
S
N
S
N
a.
*F1
F1
*F2
F2
S
N
S
N
a.
b.
*F2
N SS
N
*F1
*F3
*F4
S
N
*F2
N SS
N
SNSNN
SS NS N
Fig. 3.80. Comanda MPP în secvenţǎ mixtǎ (half step):a. comutaţia fazelor la MPP cu alimentare unidirecţionalǎ (m = 4); b. diagrame semnale de comandǎ
pentru MPP cu alimentare unidirecţionalǎ (m = 4) şi bidirecţionalǎ (m = 2)
Fig. 3.81. Secvenţa de comandǎ cu pas redus a MPP prin metoda tensiunilor de fazǎ variabile
a.
b.
UF1
t
UF2
t
UF3
t
UF4
t
Np
t
UF1
t
UF2
t
Np
t
*F1
*F3
*F4
S
N
*F2
N S
*F1
*F3
*F2
*F4
S
N
*F1
*F3
*F2
*F4 N SS
N N
SSN
1
r
2
1
r
2
1
r
2
r2
Caracteristica mecanicǎ M() a motoarelor pas cu pas depinde de caracteristicile motorului dar şide cele ale distribuitorului electronic de energie. Uzual caracteristica mecanicǎ este prezentatǎ înplanul cuplu motor – frecvenţǎ de comandǎ:
Fig. 3.82. Caracteristica mecanicǎ a motorului pas cu pas
Distribuitoare de energie electricǎ.
Distribuitoare de energie pentru motoarele de curent continuu.
Fig. 3.83. Punte în H
Puntea în H permite reglarea vitezei motorului de curent continuu prin modificarea valorii medii atensiunii Ua aplicate bobinajului statoric (comandǎ PWM):
emc
a TTT
tUU ;;
M
M0
0
Mr
f ()
f0maxf0max START-STOP
A - caracteristica de funcţionare;B – caracteristica limitǎ dedemaraj.
A
B
fmax
M=
T1 D4
D1T4
T3D2
D3 T2
U=
Ua
T
Ua
U
t
Ia
Comanda motoarelor Brushless
În funcţie de cerinţele aplicaţiei se utilizeazǎ trei moduri de comandǎ: comandǎ trapezoidalǎ (Six steps, Brushless DC); comandǎ sinusoidalǎ (Sine wave, Brushless AC); comanda vectorialǎ (Field Oriented Control).
Fig. 3.84. Principiul comenzii trapezoidale a motorului Brushless DC:a. caracteristica cuplului la motorul de c.c. cu magneţi permanenţi; b. comutaţia fazelor
Fig. 3.85. Comanda trapezoidalǎ a motorului Brushless DC:
r
s
1
2
3
4
5
6
sens rotaţie
M
-M
0
90
defazaj câmp rotoricfaţǎ de câmpul statoric
M
poziţia idealǎ-30
+30
a. b.
T1 D1
D4T4
T2 D2
D5T5
T3 D3
D6T6
A
B
C
EB
EA
EC
iA
iC
Buffersenzori
Hall
LogicPWM
-
+
-
+
iA
iB
iC
-
+regulator vitezǎ
Protecţiei2t
regulator curent
Tgvreal
ireal
poziţie rotorvp
ip
PI
PI
A/D
Fig. 3.85. strategia de comandǎ PWM a invertorului de tensiune pentru controlul curentului în fazelemotorului
Comanda sinusoidalǎ asigurǎ un control foarte bun al cuplului şi poziţiei rotorului în baza unuialgoritm care urmǎreşte asigurarea cuplului motor într-un mod cât mai eficient posibil, adicǎ la uncurent minim, obţinut la alimentarea simultanǎ a celor trei faze cu curenţi de sintezǎ sinusoidalirezultaţi în conformitate cu relaţiile:
aeMC
aeMB
aeMA
Ii
Ii
Ii
240sin
120sin
sin
(3.70)
unde IM este curentul maxim necesar realizǎrii cuplului care sǎ asigure parametrii de mişcare impuşiaxei; e – unghiul electric ce defineşte poziţia câmpului magnetic statoric; a – unghiul electric decomutaţie în avans.Practic modalitatea de comandǎ este similarǎ cu comanda motorului sincron cu undǎ de tensiunesinusoidalǎ de frecvenţǎ variabilǎ şi din acest motiv în literatura de specialitate apare şi sub denumireaBrushless AC. Pentru un curent de fazǎ I constant, cuplul motor rezultant M este constant (riplu nul) şireprezintǎ suma cuplurilor generate de fiecare fazǎ în parte MA,B,C , numai în cazul în care se asigurǎstrict generarea unor curenţi de formǎ sinusoidalǎ.
t
t
t
iA
iB
iC
T/6
T/3
T2+T6 T1+T6 T1+T5 T3+T5 T3+T4 T2+T4
EA
EB
EC
T2
T6
T1 T3
T5 T4 t
t
.Fig. 3.86. Principiul comenzii sinusoidale a motorului Brushless AC:
a. generarea tabelului de corelaţie amplitudine – unghi ir() pentru unda sinusoidalǎ; b. poziţiacâmpului învârtitor statoric faţǎ de câmpul rotoric
Fig. 3.87. Schema de principiu a unui sistem digital de comandǎ sinusoidalǎ
t
PWMU
-U
UA
iA
0
R
PunteH
PunteH
PunteH
ControlPWM
UA(iAp)
iA
iB
iC
ControlPWMUB(iBp)
ControlPWMUC(iCp)
ConvertorD/A
ConvertorD/AUC
DSP
Tabelsin - ir()
ir,A,B
iAp
iBp
UCp=-UAp-UBp
ConvertorA/D
vp
sens
regulator curent
-
+PI
-
+PI
UAp
UBp
-
U
r
s
faza1
faza2faza3
sens rotaţie(ir)
(-ir)0
1.000imp/rot
(250poziţia idealǎ
-90
a. b.
1.024
0
rezoluţie pas
comandǎ în avans
Distribuitoarele de energie pentru MPP trebuie sǎ rǎspundǎ într-o mǎsurǎ cât mai mareurmǎtoarelor cerinţe: limitarea supratensiunilor de comutaţie generate la comutaţia fazelor motorului; controlul curentului şi menţinerea sa la o valoare cât mai apropiatǎ de valoarea nominalǎ pentru un
domeniu de frecvenţe de comandǎ cât mai extins; amortizarea vibraţiilor de pas ale rotorului; controlul parametrilor de mişcare impuşi; posibilitatea realizǎrii unor secvenţe de comandǎ diferite pentru a putea controla diferite variante
constructive de MPP dintr-o gamǎ de puteri.Schema de principiu a unui distribuitor de energie în buclǎ închisǎ este prezentatǎ în figura 3.87.:
Fig. 3.88. Distribuitor de energie cu funcţionare în buclǎ închisǎ pentru MPP
Modulul de forţǎ se realizeazǎ în mod diferit în funcţie de modul de comandǎ a fazelor:unidirecţional (MRV, MP, MH) sau bidirecţional (MP, MH). Modulul de forţǎ este foarte important îndeterminarea parametrilor dinamici ai distribuitorului de energie şi implicit ale performanţelemotorului pas cu pas. Deoarece caracteristica mecanicǎ a MPP este puternic cǎzǎtoare, s-au cǎutatsoluţii electronice de ameliorare a comportamentului dinamic al ansamblului motor – distribuitor deenergie care în principal urmǎresc: limitarea într-un timp cât mai scurt a supratensiunilor de comutaţie şi limitarea pierderilor de
putere în elementele de protecţie; stabilizarea cât mai rapidǎ a curentului de fazǎ la valoarea nominalǎ; amortizarea rapidǎ oscilaţiilor rotorului în jurul poziţiei de echilibru pentru a realiza poziţionǎri
precise la frecvenţe de comandǎ cât mai ridicate.
Fig. 3.89. Modul de forţǎ unidirecţional
P
ControlPWMcurentfaze
TIRO
Comparatordigital
Bloc reglarevitezǎ
(frecvenţǎ)DSP
Tabel f(N)
fRegistrudate
intrare
d(Np)/dt
N
regulator curent
vp
sens
cuplu la v=0
-
+PI
f
N
N
UPWM
setare tipsecvenţǎ
F1…4
poziţie Np
Blocgenerare
secvenţe decomandǎ
ModulforţǎfazeH
iA
U
iA
i max
MPP
fc
vr
Rf; Lf
D1.1
D1
T1
R
U=
Rf; Lf
D2.1
D2
T2
R
Rf; Lf
D3.1
D3
T3
R
Rf; Lf
D4.1
D4
T4
R
Fig.3.90. Forţarea în tensiune a curentului în fazele MPP:a. schema electronicǎ de forţǎ pentru o fazǎ; b. diagramele de tensiune şi curent
Fig.3.91. Forţarea în tensiune a curentului în fazele MPP cu control PWM:a. schema electronicǎ de forţǎ pentru o fazǎ; b. diagramele de tensiune şi curent
Fig. 3.92. Modul de forţǎ unidirecţional cu circuit de amortizare electronicǎ a vibraţiilor rotorului
a.
t2
b.
Rf; Lf
TD1.1
D1
T1
R1
D2
t1
R2
T2
T3
Un
=
U1
=
Monostabilfaza 1
t
In
t2
U;I
I(U1)
Un
U1
t1 T
I(Un)
a.
iB T2
b.
Rf1,L
Uc
D1
T1
R1
D2
Uc
R2
T2
R3C
U1
=
Comparator cuhisterezis
faza 1
t
In
D3
U;I
Imax
U1
t2
Imin
t2
Rf; Lf
CT1
R
U=
Rf; Lf
CT2
R
Rf; Lf
T3
R
Rf; Lf
T4
R
M
A
B Mfaza1
Mfaza2
t1 t2 t3t
0
Uf2
Mrez
Fig. 3.93. Distribuitor de energie bidirecţional în buclǎ deschisǎ
MPP(1,1,400);comandǎ axa1, sens pozitiv, 400 paşi
MPP(2,1,200);comandǎ axa2, sens pozitiv, 200 paşi
MPP(3,0,800);comandǎ axa3, sens negativ, 800 paşi
…void MPP(int motor, int sens, int paşi) funcţia de comandǎ a motorului{int n;
if(motor==1) condiţie comandǎ motor axa1(D2 = 1)if(sens)==1 condiţie rotire sens pozitiv(D0 = 1)
for(n=0; n<=paşi; n++) buclǎ generare impulsuri programate{outport(lpt,6); setare registru date ptr. impuls(D1=1):delay(1); setare duratǎ impulsoutport(lpt,4); setare registru date ptr. pauzǎ impuls(D1=0):delay(1); setare durata pauzǎ impuls
}}…
SENS 1
SENS 2CONTROL
HOME
SYNC
VREF
ENABLE
RESET
HALF/FULL
CLOCK
CW/CCW
GND
33nF22K
R+5V
OSC
+36 V
A
B
C
D
INH 1
INH 2
RS1 RS2
D5 D6 D7 D8
D1 D2 D3 D4
C
O1
O2
O
2
3
1
O1151
89
5
10
1
1
6
7
4
7
9
814
122
17
19
2
15
1018
133111
16
6
5
D0
D1
D2
D7
2
3
4
5
6
7
8
9
RI
+5V
4
F1
F2
SPPRegistru Date
L297 L298
D0 D1 D2… D7
0 1 1
D0 D1 D2… D7
0 0 1
5. Modelarea roboţilor
MODELAREA ROBOŢILOR
Modelarea sistemului mecanic al roboţilor reprezintǎ etapa de bazǎ ce permite elaborarea comenzii axelorîn conformitate cu obiectivul de mişcare impus prin program. Realizarea modelului mecanic presupunedeterminarea unui set de ecuaţii ce descriu într-o mǎsurǎ cât mai corectǎ comportarea tuturor componentelorsistemului articulat al robotului din punct de vedere al poziţiilor, vitezelor şi acceleraţiilor în interacţiunea lor cumediul de lucru. Majoritatea roboţilor industriali au o structurǎ mecanicǎ deschisǎ, consideratǎ rigidǎ şi înfuncţie de complexitatea sarcinii, pot fi comandaţi pe baza urmǎtoarelor modele:
modelul geometric, permite calculul în regim static al poziţiilor structurii mecanice consideratǎ ca fiindformatǎ din corpuri elementare rigide de formǎ regulatǎ, cu dimensiuni şi mase cunoscute;
modelul cinematic, permite calculul în regim static al vitezelor structurii mecanice consideratǎ ca fiindformatǎ din corpuri elementare rigide
modelul dinamic, permite calculul în regim dinamic al cuplurilor şi forţelor active şi rezistente având învedere forţele de inerţie, gravitaţionale, exterioare şi admiţând o serie de ipoteze simplificatoare:inflexibilitatea segmentelor şi articulaţiilor mecanice, se neglijeazǎ efectul forţelor Coriolis.
REPERAREA UNUI PUNCT ÎN SISTEME DE COORDONATE
Pentru a descrie matematic deplasǎrile mecanice este necesar ca acestea sǎ fie raportate la un sistem dereferinţǎ astfel ales încât ecuaţiile rezultate sǎ fie cât mai simple. Poziţia unui reper – punct într-un sistem de
referinţǎ cartezian OjXjYjZj, de versori kji ,, este determinatǎ de trei coordonate carteziene
zyxPrep ,,1
Fig. 5.1. Reperarea unui punct într-un sistem de referinţǎ de coordonate carteziene
Vectorul de poziţie PO j ce determinǎ poziţia punctului P se determinǎ cu relaţia:
kzjyixPOj (5.1)
Acest sistem de coordonate este cel mai utilizat în descrierea proceselor tehnice dar nu poate fi utilizat directdecât pentru modelarea roboţilor cu structurǎ mecanicǎ cartezianǎ. Pentru modelarea roboţilor cu structurǎmecanicǎ cilindricǎ este preferat din punct de vedere al volumului de calcule sistemul de referinţǎ de coordonate
cilindrice zrPrep ,,1 , conform figurii 5.2.:
Oj
Xj
Zj
Yj
x
y
z
P
i
j
k
Fig. 5.2. Reperarea unui punct într-un sistem de referinţǎ de coordonate cilindrice
Pentru a facilita exploatarea rezultatelor de cǎtre utilizator acestea se pot exprima la alegere în coordonatecarteziene dupǎ realizarea transformǎrii de coordonate:
zz
ry
rx
;sin
;cos
zz
x
y
yxr
;
;22
arctg (5.2)
Reperarea unui punct într-un sistem de referinţǎ de coordonate sferice rep ,,1 Prep se face
conform figurii 5.3., în funcţie de raza de poziţie şi unghiurile de azimut şi elevaţie :
Fig. 5.3. Reperarea unui punct într-un sistem de referinţǎ de coordonate sferice
Transformarea de coordonate sferice în coordonate carteziene se realizeazǎ cu relaţia:
cos
;sinsin
;cossin
z
y
x
(5.3)
Oj
Xj
Zj
Yj
x
y
z
P
r
Oj
Xj
Zj
Yj
P
5. Modelarea roboţilor
În cazul roboţilor industriali existǎ câteva puncte de interes ale cǎror coordonate trebuiesc cunoscute pentru a seputea controla eficient axele robotului şi realiza operaţiile impuse de procesele tehnologice. Unui robot industrialli se pot ataşa urmǎtoarele sisteme de referinţǎ, în coformitate cu figura 5.4.:
sistemul de referinţǎ absolut WCS (World Coordinate System), este sistemul de referinţǎ legat de bazarobotului, într-un punct stabilit de constructor şi în raport cu care se determinǎ toate poziţiile sistemuluimecanic;
sistemul de referinţǎ al sculei TCS (Tool Coordinate System), este sistemul de referinţǎ ataşat în punctulactiv al dispozitivului de prehensiune sau sculei (ex.: vârfului electrodului de sudurǎ);
sistemul de referinţǎ al senzorului SCS (Sensor Coordinate System), este sistemul de referinţǎ legat uzual deun senzor de viziune care are în câmpul sǎu vizual sau de mǎsurǎ efectorul ale cǎrui poziţii le determinǎ;
sistemul de referinţǎ al programatorului PCS (Program Coordinate System), este un sistem de referinţǎjudicios ales, definit de programator în raport cu WCS, pentru a simplifica operaţiile de calcul a traiectoriilorde lucru majoritare.
Fig. 5.4. Sistemele de referinţǎ uzuale ataşate unui robot
TRANSFORMĂRI DE VECTORI ŞI COORDONATE
5.2.1. Reperarea solidului în sistemele de coordonate
Pentru a caracteriza deplasarea spaţialǎ a unui solid, acestuia i se asociază un sistem de referinţǎ orientatdupǎ o direcţie particularǎ şi având originea (de preferat) în centrul sǎu de greutate:
Fig. 5.5. Posibilitǎţi diverse de asociere a sistemului de referinţǎ unui corp solid
y0
x0
z0
qj ; j=1…m
O0
WCS
TCS
PCS
TCP
SCS
câmp vizual ===
În raport cu sistemul de coordonate absolut WCS legat de baza robotului O0X0Y0Z0, poziţia unui solid înspaţiul cartezian este determinatǎ dacǎ este cunoscutǎ poziţia originii Oi a sistemului de coordonate asociatsolidului şi orientarea axelor sistemului de coordonate OiXiYiZi în raport cu sistemul de coordonate absolut WCS:
Fig. 5.6. Reperarea solidului în sistemul de coordonate absolut WCS
iiiji kajaiaOO 131211
unde iii kji ,, sunt vectorii unitari ai sistemului de referinţǎ OiXiYiZi.
Matricea de poziţie Vij care dă coordonatele originii noului reper rep(j) în raport cu sistemul de referinţǎOiXiYiZi, este de forma:
13
12
11
a
a
a
Vij
Metoda cosinusurilor directoare. Vectorii unitari ai noului sistem de referinţǎ OjXjYjZj se pot exprimaîn funcţie de vechiul sistem de referinţǎ OiXiYiZi cu relaţia matricialǎ:
i
i
i
j
j
j
k
j
i
ttt
ttt
ttt
k
j
i
332313
322212
312111
unde: 111 cost 112 cost 113 cos t
221 cost 222 cost 223 cos t
331 cost 332 cost 333 cos tsunt cosinusurile directoare ale unghiurilor formate de fiecare axǎ a noului sistem (al doilea indice) în raport cuaxele vechiului sistem de referinţǎ (primul indice).
O0Oi
O0
X0
Z0
Y0
WCS
i
j
k
OiOj
Oi
Xi
Zi
Yi
Oj
Xj
Zj
Yj
rep(j)
rep(i)
5. Modelarea roboţilor
Matricea cosinusurilor directoare transpusǎ se numeşte matricea de rotaţie Rij şi defineşte orientarea reperuluirep(j) în raport cu vechea poziţie rep(i):
333231
232221
131211
ttt
ttt
ttt
Rij
Matricea de rotaţie are proprietatea:
jiij
T
ij RRR 1
Cunoaşterea celor două matrici caracteristice (5.5, 5.7) permite determinarea completă a poziţiei unui reper în
raport cu altul prin intermediul matricei de trecere neomogene:
13333231
12232221
11131211
attt
attt
attt
Aij
Matrice de trecere omogenă ( 44 ):
1000
13333231
12232221
11131211
attt
attt
attt
Tij
nnkkjjijin TTTTT 111 ......
unde Tk,k+1 sunt matricile de trecere omogene corespunzătoare unei treceri de la rep(k) la rep( 1k ).
Exemplul 1. Translaţia după o axă cu valoarea d
Fig. 5.5. Translaţia dupǎ axa X cu valoarea d
Valorile cosinusurilor directoare:
0011 XX 1cos 1 90
011 XY 0cos 1 90011 XZ 0cos 1
90012 YX 0cos 2 0
012 YY 1cos 2 90012 YZ 0cos 2 (5.12)
90013 ZX 0cos 3 90
013 ZY 0cos 3 0013 ZZ 1cos 3
O0X0
Z0
Y0
WCS
d
O1X1
Z1
Y1
Matricea de trecere omogenă:
1000
0100
0010
001
,
d
dxTrans
Exemplul 2. Rotaţia după o axă cu unghiul
Fig. 5.6. Rotaţia dupǎ axa X cu unghiul
Valorile cosinusurilor directoare:
01 1cos 1 901 0cos 1 901 0cos 1 902 0cos 2 2 coscos 2 902 sincos 2 903 0cos 3 903 sincos 3 3 coscos 3
Matricea de trecere omogenă:
1000
0cossin0
0sincos0
0001
,
xRot
Exemplul 3. Rotaţie şi translaţie după aceeaşi axă
În cazul mişcărilor succesive, poziţia finalǎ se obţine din produsul matricial al matricilor de trecereomogene corespunzătoare fiecărei mişcări. Matricea de trecere omogenă finalǎ:
1000
0cossin0
0sincos0
001
,,02
d
xRotdxTransT
O0X0
Z0
Y0
WCS
O1 X1
Z1
Y1
+
-
5. Modelarea roboţilor
Exemplul 4. Rotaţie şi translaţie după axe diferite
333390,2,222,1111,000022110
ZYXOZYXOZYXOZYXOYRotdZTransdXTrans
Fig. 5.7. Rotaţii şi translaţii dupǎ axe diferite
Matricea finalǎ de trecere omogenǎ este de forma:
1000
001
0010
100
1000
0001
0010
0100
1000
100
0010
`0001
1000
0100
0010
001
2
1
2
1
3d
d
d
d
TO
Metoda unghiurilor Euler. Poziţia axelor noului reper rep(j) poate fi definitǎ în raport cu vechiul reperrep(i) în funcţie de trei unghiuri rezultate prin trei rotaţii succesive realizate în urmǎtoarea ordine:
jjjjYRotjjjjXRotiiiiZRotiiii ZYXOZYXOZYXOZYXOjii ,1111,1111, 11
Fig. 5.8. Unghiurile lui Euler
O0X0
Z0
Y0WCS
d1
O1X1
Z1
Y1
O2O3
X2
Z2
Y2
d2
Y3
X3
Z3
90
-90
OiOi+1
Xi
Zi
Yi
Xi+1
Zi+1
Yi+1
Oi+1Oj-1
Xj-1
Zj-1
Yj-1
Xi+1
Zi+1
Yi+1
Oj-1Oj
Xj-1
Zj-1
Yj-1
Xj
Zj
Yj
100
0cossin
0sincos
cossin0
sincos0
001
100
0cossin
0sincos
ijR
Corespunzǎtor unei deplasǎri în spaţiu a sistemului OjXjYjZj ataşat unui corp solid, se determinǎ matricea de
trecere omogenǎ (Euler), având în vedere şi matricea de poziţie:
1000
coscossinsinsin
sincoscoscoscossinsinsincoscoscossin
sinsinsincossinsincossincossincoscos
i
i
i
ijz
y
x
T
Metoda Denavit – Hartenberg. Determinarea poziţiei unui solid orientat rep(j) în raport cu alt solid
orientat rep(j-1) poate fi determinatǎ prin intermediul a patru parametri de poziţie j, aj, dj, j definiţi astfel:
jjjjXRotdZTransaXTransZRotjjjj ZYXOZYXOjjjjjjjj
),(),(),(),(1111 1111 (5.22)
Fig. 5.9. Reperarea unui solid conform convenţiei Denavit - Hartenberg
aj
Xj
Zj
Yj
j
Oj-1
Xj-1
Zj-1
Yj-1
j
Oj-1
Xj-1
Zj-1
Yj-1
OjOj-1
Xj-1
Zj-1
Yj-1dj
cupla j
cupla j+1
cupla j-1
5. Modelarea roboţilor
Matricea de trecere omogenǎ Denavit - Hartenberg corespunzǎtoare cuplei de ordin jeste de forma:
1000
0cossin0
0sincos0
0001
1000
100
0010
001
1000
0100
00cossin
00sincos
1
jj
jj
j
j
jj
jj
jjd
a
DH
(5.23)
1000
cossin0
sinsincoscoscossin
cossinsincossincos
1
jjj
jjjjjjj
jjjjjjj
jjd
a
a
DH
(5.24)
MODELUL GEOMETRIC AL ROBOŢILOR
Modelul geometric direct
Modelul geometric direct permite determinarea poziţiei şi orientǎrii dispozitivului efector (TCP,sculǎ) date de coordonatele operaţionale xi în funcţie de coordonatele articulare qj furnizate detraductoarele de poziţie montate pe axele robotului.Determinarea modelului geometric direct presupune utilizarea unor ipoteze de calcul simplificatoare: baza robotului este fixǎ şi acesteia i se ataşeazǎ sistemul de referinţǎ global WCS de axe O0X0Y0Z0; structura mecanicǎ este formatǎ din segmente rigide; cuplele cinematice sunt fǎrǎ frecǎri, neelastice şi fǎrǎ jocuri; nu existǎ obstacole în volumul de lucru al robotului; pentru execuţia sarcinilor de lucru este suficient controlul poziţiei şi orientǎrii dispozitivului
efector.În baza celor menţionate se poate reprezenta modelul geometric direct al robotului conform figurii5.13.:
Fig. 5.13. Modelul geometric direct al robotului
Modelul geometric direct se reduce la un set de ecuaţii algebrice (sau o ecuaţie matricialǎ) ce dau înmod explicit valorile coordonatelor operaţionale în funcţie de poziţia spaţialǎ a axelor robotuluidefinitǎ de coordonatele articulare:
QFXqqqfx mii ;...,, 21 (5.37)
Modelul geometric direct poate fi obţinut prin urmǎtoarele metode: metoda analizei geometrice directe, este o metodǎ indicatǎ numai în cazul structurilor mecanice
simple, cu numǎr redus de grade de libertate (maxim trei); metode matriciale (metoda cosinusurilor directoare, metoda DH, metoda vectorilor de rotaţie),
sunt metode de analizǎ sistematice ce permit rezolvarea structurilor mecanice cu un numǎr marede grade de libertate.
5.3.4. Modelul geometric invers
Modelul geometric invers permite determinarea configuraţiei în care trebuie sǎ ajungǎ structuramecanicǎ a robotului (a vectorului coordonatelor articulare qj) astfel încât dispozitivul efector sǎ fiepoziţionat în poziţia doritǎ xi, în conformitate cu modelul prezentat în figura 5.19.:
Fig. 5.19. Modelul geometric invers
Modelgeometric
direct
q1
q2
.
.qm
xi
Modelgeometric
invers
q1
q2
.
.qm
xi
Modelul geometric invers este utilizat în programarea deplasǎrilor dispozitivului efector al roboţilor petraiectorii continuii, direct în sistemul de coordonate al sculei TCS. Determinarea vectorului decomandǎ qm a articulaţiilor robotului presupune determinarea soluţiilor ecuaţiei:
XFQxxxfq imm
1
21
1 ;...,, (5.65)
Rezolvarea ecuaţiei (5.65) se poate face pe cale geometricǎ în cazul structurilor mecanice simple,respectiv analitic pe baza modelului geometric direct sau prin metode numerice în cazul structurilorcomplexe. Soluţiile matematice multiple oferǎ pentru o poziţie xi impusǎ a dispozitivului efectordiverse configuraţii teoretic posibile ale structurii mecanice, în conformitate cu figura 5.20.a., b.:
Fig. 5.20. Soluţii multiple ale structurii mecanice pentru aceeaşi poziţie a dispozitivului efector
Pentru a alege soluţia optimǎ dintre soluţiile analitice posibile, algoritmul de comandǎ a axelorrobotului trebuie sǎ realizeze o serie de filtrǎri având în vedere urmǎtoarele aspecte: se eliminǎ acele soluţii care nu se încadreazǎ strict între limitele constructive de mişcare ale
fiecǎrei axe, în conformitate cu figura 5.20.c.:
maxmin jjj qqq (5.66)
se alege soluţia care conduce la deplasarea optimǎ a fiecǎrei axe astfel încât timpul de execuţie amişcǎrii sǎ fie minim.
Determinarea modelului geometric invers pe baza analizei geometrice
Pentru a exemplifica aceastǎ metodǎ se considerǎ o structurǎ mecanica purtǎtoare de tip sferic(vezi figura 5.14) cu trei grade de libertate care se poate reprezenta simplificat în funcţie decoordonatele articulare 1, 2, d3, conform figurii 5.21. Se presupune cunoscutǎ poziţia impusǎ prinprogram [XO3, YO3, ZO3], a punctului terminal O3, în sistemul de referinţǎ WCS şi se urmǎreştedeterminarea vectorului de comandǎ q a axelor.
O
xi
O
xi
qjmax
qj
xi
a. b. c.
Fig. 5.21. Modalitatea geometricǎ de determinare a modelului geometric invers pentru o structurǎ mecanicǎpurtǎtoare de tip sferic
22
33 OO YXr (5.67)
22
321 3
3
3
3 ;; O
O
O
OZrd
r
Zarctg
X
Yarctg (5.68)
Rezultǎ vectorul de comandǎ a axelor în funcţie de poziţia impusǎ punctului terminalO3 pe traiectorie:
q
222
22
3
2
1
333
33
3
3
3
OOO
OO
O
O
O
ZYX
YX
Zarctg
X
Yarctg
d
(5.69)
Metoda geometricǎ de determinare a modelului geometric invers (vectorului de comandǎ) esteoperabilǎ în cazul roboţilor cu maxim 3 grade de libertate, pentru structuri mecanice mai complicaterezultǎ ecuaţii laborioase dificil de utilizat practic.
X0
Y0
1
2
d3
O3
Z0
ZO3
XO3
YO3
r
O0
O3’
6. COMANDA ROBOŢILOR
Sistemul de comandǎ al unui robot are rolul de a controla în timp real operaţiile executate deacesta în baza unui program, în strânsǎ corelaţie cu modificǎrile din spaţiul sǎu de lucru. Sistemele decomandǎ ale roboţilor actuali s-au dezvoltat foarte mult faţǎ de începutul anilor ’80, când s-auimplementat primii algoritmi funcţionali de inteligenţǎ artificialǎ (IA), dar sunt încǎ departe deperformanţele de analizǎ şi decizie ale unui operator uman. Pentru roboţii industriali sarcinile impusede procesele de producţie nu implicǎ decât foarte rar utilizarea unor sisteme de comandǎ sofisticatespecifice roboţilor inteligenţi şi al cǎror raport performanţǎ/preţ rǎmâne încǎ prohibitiv pentru unmediu de producţie industrial.
6.1. ARHITECTURA MATERIALǍ A SISTEMULUI DECOMANDǍ A ROBOŢILOR
6.1.1. Funcţiile sistemului de comandǎ
Principalele funcţii pe care trebuie sǎ le asigure sistemul de comandǎ al unui robot indiferent desoluţia constructivǎ utilizatǎ sunt urmǎtoarele:- funcţia de procesare a datelor interne de la programe şi externe de la senzori, dispozitivele
periferice;- funcţia de elaborare a comenzilor cǎtre sistemele distribuite de comandǎ şi control.Sistemul de comandǎ trebuie conceput astfel încât sǎ permitǎ rezolvarea urmǎtoarelor sarcinispecifice:
Calibrarea robotului.
Fig. 6.1. Calibrarea unei axe echipate cu traductor de poziţie incremental:a. deplasare cu vitezǎ lentǎ din poziţia iniţialǎ; b. activare senzor final cursǎ axǎ, resetare contor poziţie; c.
deplasare controlatǎ spre poziţia de referinţǎ; d. poziţie de referinţǎ (HOME)
Învǎţǎrea punctelor ce jaloneazǎ traiectoria. Pentru a realiza o anumitǎ sarcinǎ, efectorulrobotului trebuie sǎ urmeze anumite traiectorii şi în puncte bine definite sǎ efectueze o serie de operaţiiprogramate.
3X.4X 0000.00 0211.6 0005.31
a. b. c. d.
6. Comanda roboţilor252
Fig. 6.2. Puncte de trecere şi de oprire
Înainte de a se putea executa o anumitǎ traiectorie este necesar sǎ fie definite punctele de oprire şitrecere care vor impune în final profilul traiectoriei dorite. Punctele unei traiectorii pot fi definite îndouǎ moduri: prin învǎţare directǎ; prin introducerea de la tastatura de programare a valorilor rezultate în urma unor calcule
geometrice.
Generarea traiectoriilor. Traiectoriile dispozitivului efector depind de tipul sarciniisolicitate care poate să permită deplasări libere (fără constrângeri) între două puncte sau poate solicitadeplasări impuse după o linie sau arc de cerc cu respectarea anumitor parametri cinematici dedeplasare pe traiectorie. În funcţie de aceste cerinţe sistemele de comandă sunt proiectate să generezeunul din urmatoarele tipuri de traiectorii: traiectorie punct cu punct TPP; traiectorie continuă TC.
Deoarece forma traiectoriei la deplasarea între două puncte nu poate fi cunoscută de utilizatornumai anumite aplicaţii se pot realiza cu roboţii dotaţi cu astfel de sisteme de comandă şi în plus suntnecesare precauţii suplimentare pentru prevenirea coliziunilor, figura 6.3.:
Fig. 6.3. Traiectorii punct cu punct:a. traiectorie cu coliziune; b. prevenirea coliziunii prin adăugarea unor puncte suplimentare de trecere
Generarea traiectoriilor cu geometrie impusă (operaţii de sudură pe contur, debitări de materiale,etc.) se poate realiza numai cu sisteme de comandă dotate cu un interpolator de traiectorie care săpermită interpolări liniare şi circulare între punctele de plecare şi destinaţie. Astfel de interpolatoaregenerează prin calcul, în funcţie de precizia sistemului de comandă, coordonatele spaţiale pentru un
punct deoprire
punct detrecere
1
2
1
2
3
punct deoprire
puncte detrecere
1
2
4
punct deoprire
3
punct deoprire
1
2
4 3
a. b.
6.1. Arhitectura materialǎ a sistemului de comandǎ 253
anumit număr de puncte de trecere situate între punctul de plecare şi destinaţie astfel încât peansamblu dispozitivului efector să i se asigure o deplasare liniară sau circulară (cu o anumită rază).
Fig. 6.4. Traiectorii continue:a. cu interpolare liniară; b. cu interpolare circulară; c. generarea unei traiectorii oarecare
Execuţia operaţiilor de intrare – ieşire. Ca parte a unui sistem de producţie automatizat robotulpoate fi conectat prin intermediul unui modul de intrări – ieşiri la sistemele de comandă ale maşinilorunelte CNC, dispozitivelor auxiliare şi de transfer, cu alţi roboţi.
Asigurarea securităţii. În vederea asigurării securităţii personalului de exploatare dar şi alechipamentului, sistemul de comandă trebuie să asigure întreruperea de urgenţă a sarcinii derulate derobot în cazul apariţiei unui eveniment excepţional: acţionarea butonului de oprire de urgenţă de către un operator sau a unui senzor de securizare al
perimetrului spaţiului de lucru; defectarea sistemului de acţionare a unei axe, cu pierderea contolului; atingerea neprogramată a cursei maxime permise la nivelul unei axe; depăşirea cuplului maxim dezvoltat de o axă ca urmare a unei coliziuni.
punct deoprire
1
2
a. b.
punct deoprire
r2
punct deoprire
1
2
interpolareliniară
interpolarecirculară
c.
r1
puncte detrecere
3
6. Comanda roboţilor256
6.1.2. Arhitectura generală a sistemului de comandă
Arhitectura sistemului de comandă a roboţilor nu diferă foarte mult de cea a unui sistem de calculpentru controlul proceselor fiind în general formată din următoarele elemente de bază în conformitateşi cu figura 6.5.: unitatea centrală de procesare a datelor numerice CPU realizată cu un procesor capabil să execute
instrucţiuni complexe şi calcule matematice în virgulă mobilă; memorie de program (EPROM) şi de date (RAM); magistrale de date, adrese şi control; porturi de intrare/ieşire prin care se asigură legătura directă cu mediul de lucru; porturi de comunicaţie adaptate unor echipamente cu care robotul se conectează; sistemul de comandă a elementelor de acţionare a axelor mecanice a robotului; module de interfaţare cu diverse echipamente periferice ce facilitează exploatarea sistemului:
consolă de programare, monitor, imprimantă, unitate floppy-disk, etc.
Fig. 6.5. Arhitectura generală a unui sistem de comandă pentru roboţi
Sistemcontrol
acţionări axe
magistrala de control
magistrala de date D0…Dx
Unitatea centrală deprocesare
P
Senzori externicu ieşiri digitale,
analogice
Elementeexterne deexecuţie
EPROM sauHDD
Programe firmăşi aplicaţii
Interfaţăcomunicaţie
RS232, I2C,LPT, USB, LAN
magistrala de adrese A0…Ay
RAM
Memoria de datecentrală
Generatorsemnale
ceas
Porturi
I/O digitale,analogice
MTP
Senzoriinteligenţi
sonar, CCD,forţă
Interfaţăvideo
terminal SVGA,afişor LCD
floppy-disk;imprimantă;consolă programare;calculator central.
Meniucontrolrobot
6.2. Arhitectura generalǎ a sistemului de comandǎ 257
În sistemele robotizate complexe (celule de fabricaţie flexibile) care necesită un număr foartemare de canale I/O, funcţiile porturilor I/O sunt preluate de echipamente mult mai performante de tipulautomatelor programabile (Programmable Logic Controler) cărora li se transferă funcţia de comandăşi control a echipamentelor auxiliare (maşini - unelte, sistem de transfer a semifabricatelor, sistem desecurizare a perimetrului etc.) ce deservesc postul robotizat.
Fig. 6.6. Automatul programabil din sistemul de comandă a roboţilor GE Fanuc
Deoarece postul robotizat este un integrator de sisteme digitale, caracterul schimbului de date întreechipamentele care sunt interconectate este foarte diversificat şi adesea sunt necesare multiplesuporturi de comunicaţie ce lucrează după standarde (protocoale de comunicaţie) diferite.
a. b. c.
Fig. 6.7. Module de comunicaţie pentru reţele industriale:a. modul pentru reţea DH; b. modul pentru reţea Profibus – DP; c. modul pentru reţea Device Net
Controlul sistemului de acţionare numeric a axelor robotului este asigurat de un sistem cumicrocontoler (slave) ce pilotează un număr de 4…6 unităţi de acţionare (extensibil până la 10..16).Controlul simultan al axelor robotului se efectuează ciclic pe baza unui algoritm de comandă ce are învedere prescrisele de poziţie, viteză ale efectorului şi valorile măsurate, furnizate de traductoare,pentru poziţiile şi vitezele axelor.
1
6
3
4
2
5
1 – unitatea centrală a PLC;2 – modul I/O;3 – conector universal;4 – Bus sistem (fund de sertar);5 – borne conexiuni modul I/O;6 – capac de protecţie cu etichete.
PLC
Device Net (0,5Mb/s)
ISA/PC104
DataHighway0,23 Mb/s
Profibus – DP (12 Mb/s)
PLC
6. Comanda roboţilor258
Fig. 6.8. Module inteligente pentru acţionări numerice în robotică:a. modul de comandă pentru motoare Brushless DC; b. modul de comandă pentru MPP
Pentru a facilita dialogul operator – robot sistemul de comandă este dotat cu un terminal care înfuncţie de complexitate poate cumula unele din următoarele funcţii: terminal de control manual (teach pendant) este utilizat cu precădere la roboţii din generaţia I
pentru a facilita operatorului, aflat în spaţiul de lucru al robotului, comanda şi controlul vizual aldeplasărilor la nivelul fiecărei axe, în faza de învăţare a punctelor traiectoriei;
consolă de programare este un terminal inteligent ce permite comunicaţia cu procesorul master alsistemului de comandă, tratarea şi afişarea locală a informaţiilor; în scopul simplificării operaţiilorde implementare a aplicaţiilor asigură următoarele funcţii principale:- calibrarea axelor robotului;- oprirea de urgenţă, activarea sistemului de acţionare în modul manual numai dacă există
confirmarea că terminalul este ţinut de operatorul uman;- învăţare poziţii prin operaţii de poziţionare în mod manual cu programarea parametrilor de
deplasare: tip de deplasare, viteză, acceleraţie;- editarea instrucţiunilor programelor utilizator în scopul corectării şi finisării acestora în
conformitate cu parametrii reali ai procesului de automatizare;- realizarea operaţiilor de intrare - ieşire prin citirea intrărilor, forţarea ieşirilor şi afişarea stării
acestora;- încărcarea din şi salvarea în memoria sistemului de comandă a programelor de firmă (sistemul
de operare, drivere) şi aplicaţie;- testarea programelor aplicaţie în modul automat: pas cu pas sau în ciclu continuu cu analizarea
automată a ciclului de lucru programat şi furnizarea caracteristicilor principale ale acestuia învederea optimizării;
- monitorizarea stării variabilelor din program pentru facilitarea operaţiilor de depanare aprogramelor aplicaţie;
- furnizarea unor scheme logice de diagnoză avansată a erorilor raportate şi datate de sistemulrobotizat cu posibilitatea accesării on – line a documentaţiei tehnice (scheme electronice,conexiuni conectori, setări parametri, etc.) sau a oricărei baze de date necesare, prin navigarepe Internet.
a. b.
6.2. Arhitectura generalǎ a sistemului de comandǎ 259
Fig. 6.9. Consolă de programare GE Fanuc Robotics
Toate echipamentele electrice şi electronice ce compun sistemul de comandă, mai puţin consolade programare, sunt protejate într-un dulap de comandă ce asigură un grad de protecţie adecvatmediului industrial (minim IP54), figura 6.10. Încălzirea sau răcirea aerului din interiorul dulapului decomandă se realizează prin schimbarea controlată a polarităţii tensiunii continui de alimentare acelulelor.
Fig. 6.10 Dulap de comandă pentru roboţi din generaţia III, GE Fanuc Robotics
Fereastradiagnoză
erori
1 – afişaj multi – windows; 2 – selectare funcţii;3 – taste navigare în meniu; 4 – taste alfanumerice;5 – selector nivel viteză; 6 – rotaţie efector X, Y, Z;7 – translaţie efector X, Y, Z; 8 – buton STOP deurgenţă.
1
2
3
4
5 6
7
8
1 4
5
3
6
2
1 – dulap de comandă;2 – suport dulap;3 – schimbător termic sistemclimatizare;4 – selector mod de lucru;5 – consolă de programareportabilă;6 – panou general alimentare,semnalizări.
6.1.4. Arhitecturi de comandă monoprocesor
Arhitectura cu microcontroler. Aceast tip de arhitectură este utilizat cu precădere pentrucomanda roboţilor industriali din generaţia I a căror traiectorie este generată punct cu punct. Sistemulde comandă, figura 6.17., este format dintr-un calculator IBM/PC cu resurse relativ modeste (minim386, HDD 120 Mb, RAM 4 Mb) la care se conectează prin portul serial RS232 controlerul robotului cepoate fi la rândul său conectat cu un terminal de comandă manuală a axelor:
Fig. 6.17. Arhitectura sistemului de comandă cu controler (elementele marcate)
+
Sistemacţionare
Mecanicăaxe
eforturiparazite
Traductoareaxe
-
q*
qr
Sistem controlsupervizorcomandă
- LAN;- Ethernet;- radio;- GSM.
Magistralǎ de comunicaţieindustrialǎ
Flo
ppy
-dis
k
Imp
rim
antǎ
Po
rtu
rico
mu
nic
aţie
RS
232
US
BIr
D
Unitate centralǎ P
Spaţiu lucrurobot
Programutilizator
Programfirmǎ
Controlmanual axeprogramare
O
I
ROBOT
IBM/PC
Controler robot C
Comandǎ axeRS232C
Modul I/O
instrucţiuni/date
6.1.5. Arhitecturi de comandă multiprocesor
Consideraţii generale privind necesitatea procesării paralele. Pentru procesarea număruluiimportant de instrucţiuni şi date necesar unui control în timp real există teoretic două soluţii: utilizarea unui sistem monoprocesor foarte performant în raport cu cerinţele fiecărui proces
controlat secvenţial; utilizarea unui sistem format din mai multe procesoare cu performanţe mult mai modeste şi mai
ieftine dar perfect adaptate fiecărui proces controlat în mod independent.
Capacitatea de procesare a unui sistem paralel este determinată de posibilitatea acestuia de aidentifica porţiunile de program care pot fi executate în paralel şi de a planifica execuţia acestora însistem în funcţia de resursele disponibile la un moment dat. Unitatea elementară de planificare estenumită proces. Pentru crearea unui proces este necesar un sistem de operare (Unix, Windows NT)capabil să îndeplinească următoarele acţiuni: crearea şi iniţializarea structurilor de date referitoare la proces; alocarea unui spaţiu de memorie; încărcarea procesului în spaţiul de memorie alocat; trecerea procesului în coada listei cu procesele planificate pentru execuţie.Pe durata execuţiei unui program, un proces poate fi în următoarele stări:
Fig. 6.26. Diagrama de stări a unui proces
După creare un proces este în starea de aşteptare până când planificatorul decide trecerea procesului înexecuţie pe un procesor k. Dacă procesul în execuţie conţine o instrucţiune de intrare – ieşire, operaţielentă, consumatoare de timp, procesul trece în starea blocat. După finalizarea operaţiei I/O procesuleste deblocat şi trece în starea de aşteptare pentru a fi planificat la execuţia instrucţiunilor rămase.
Procesul mai poate trece din starea de execuţie în starea de aşteptare dacă spaţiul de timp alocattalocat procesorului k, în mod discontinuu la nivelul sistemului paralel, a expirat.
Arhitecturi MIMD cu memorie distribuită.
Fig. 6.28. Arhitectură multiprocesor MIMD cu memorie distribuită
Pregătit înaşteptare
Planificat
În execuţie
Rezident înmemorie
Procesor kactiv
Suspendat după talocat
Blocat înaşteptare
Procesor kîn operaţie I/O
EvenimentI/O
Cerere I/O
În aşteptare după I/O
Reţea de interconectare
Procesor 1
Memorie 1
Interfaţă 1
Procesor n
Memorie n
Interfaţă n
……..
Unitate deprocesare
Unitate deprocesare
send receive
I/O
Fig. 6.29. Topologii ale reţelelor de interconectare multiprocesor
Arhitecturi MIMD cu memorie partajată.
Fig. 6.30. Arhitectură multiprocesor MIMD cu memorie partajată
Arhitecturi multiprocesor pentru roboţi. Arhitectura sistemului de comandă trebuie săcorespundă funcţilor cerute unui robot din generaţiile II sau III, funcţii ce tind să devină tot maicomplexe. Ca urmare a volumului foarte mare de date ce trebuiesc prelucrate în timp real de sistemulde comandă, în prezent se utilizează arhitecturi de comandă cu funcţii distribuite, figura 6.31., cepermit execuţia locală a sarcinilor de către microprocesoare specializate, mult mai rapide şi care pot
P2
P1
P3
Pj
Pn
Pk
P2
P1
P3
Pj
Pn
Pk
P0
P2
P1
P3
Pj
Pn
Pk
a. b. c.
P0P1
P2
P4
P3
P6
P5 P3 P4 P5 P6 P7 P8
P1 P2
P0
C1 C2 C3
d. e.
Reţea de interconectare
Memorie partajată
……..
Arbitru dereţea
Procesor 1
Interfaţă 1
Procesor n
Interfaţă n
semnale control reţeaBusy, Request, Grant
I/O
lucra în paralel astfel încât schimbul de date cu procesorul central se face numai la nivel de informaţiiprelucrate respectiv sarcini generale de executat. Pentru integrarea robotului în mediul industrial deproducţie se utilizează reţele industriale de comunicaţie ce fac legăturile cu nivelele de conducereierarhic superioare sau cu alţi roboţi, automate programabile ce conlucrează la realizarea unei sarcinicomune.
Fig. 6.31. Arhitectura multiprocesor a sistemului de comandă a roboţilor (elementele marcate)
Sisteme multiprocesor de comandă a roboţilor mobili. Aflate în plină dezvoltare, sistemelerobotizate mobile trebuie să execute sarcini pe care omul nu le poate îndeplini în medii cu un nivelmare de periculozitate sau inaccesibile: căutarea persoanelor în zone de dezastru, construcţiisubmarine, explorare terestră sau extraterestră sunt câteva dintre exemplele sarcinilor complexe şi
+
Modul I/OC
Comandǎaxe C
Sistemacţionare
Mecanicăaxă
eforturiparazite
Traductoareaxă
- camerǎ video;- traductor forţǎ
-
q*
qr
Sistem senzorialDSP
Sistem controlsupervizorcomandă
- LAN;- Ethernet;- radio;- GSM.
Reţea de comunicaţieindustrialǎ
Flo
ppy
-dis
k
Imp
rim
antǎ
Po
rtu
rico
mu
nic
aţie
indu
stri
ale
US
B8
02.
11a/
b/c
Unitate centralǎ P
Spaţiu lucrurobot
Programutilizator
Programefirmǎ
ProgrameIA
k
1
m
1
O
O
q
q
.
.
.
.
Consolǎprogramare
P
OI
Interpolatortraiectorie
ROBOT
IBM/PC
ambianţelor ostile în care roboţii sunt de dorit să funcţioneze cu un nivel înalt de autonomie şifiabilitate.
Fig. 6.32. Robot mobil Mars Rover, Jet Propulsion Laboratory, NASA
Fig. 6.34. Schema de principiu a sistemului de comandă multiprocesor pentru un robot mobil
RS232USB
TVtuner
IBM/PC
D/Aradio
micro coliziune
2,4 GHzvideo
433 MHz
receptorUHF
emiţătorUHF
video camerăpanoramică
video
20 MHzcontrolmanual
BS2pmaster
A/Dradio
receptorradio
interfaţărelee
RCS
Sonar1C slave
RCS
Sonar2C slave
BusolăC slave
Camera 1C slave
reţea I2C
LCDC slave
PWM
RS232
camerăcontrol local
RC
S
platformă mobilă
1 – cameră video stereoscopică;2 – panouri solare;3 – braţ pentru recoltare probe ;4 – sistem de acţionare integrat ;5 – antenă transmisie imagini.
1
2
3
4
5
Fig. 6.35. Robot mobil autonomUniversitatea Ştefan cel Mare, Laboratorul de roboţi
1 – unitatea centrală;2 – afişaj LCD;3 – sonar;4 – camera video;5 – busolă digitală;6 – emiţător 2,4 GHz;7 – interfaţă cu relee;8 – bus I2C.
12
3
45
6
7
8
6.2. MODALITĂŢI DE GENERARE A TRAIECTORIEI
6.2.1. Generarea traiectoriilor cu ajutorul limitatorilor de poziţie
Cea mai simplă şi ieftină modalitate de control a deplasărilor unei axe robotizate este utilizarea unuiansamblu de came montate pe partea mobilă a axei controlate, a căror poziţii se pot regla în raport cu douămicroîntrerupătoare fixate pe partea mecanică fixă.
Fig. 6.35. Contolul deplasărilor axei cu limitatori de poziţie
Această metodă de control este adecvată manipulatoarelor şi roboţilor pneumatici care lucrează după un ciclusimplu, care se modifică foarte rar, fără să necesite precizie mare şi constă în general în manipulări de obiecte încursul operaţiilor de încărcare – descărcare.
6.2.2. Generarea traiectoriilor de tip punct cu punct
Dacă în spaţiul de lucru al robotului se consideră două puncte A0 de plecare şi A4 de sosire, pentru aparcurge spaţiul dintre ele există teoretic o infinitate de traiectorii. Dintre acestea o posibilă variantă acceptabilăo constituie cea care asigură „drumul cel mai scurt” din punct de vedere al timpului şi care poate fi realizatăavând în vedere posibilităţile sistemului de comandă şi limitele de deplasare la nivelul fiecărei axe.
Generarea mişcării pe traiectorii punct cu punct (TPP) se face în spaţiul coordonatelor articulare prinmemorarea în faza de învăţare a unui şir de puncte care ulterior sunt parcurse în mod secvenţial. Memorarea unuipunct ce corespunde poziţiei selectate a efectorului implică memorarea unui vector care conţine valorilecoordonatelor articulare ce definesc implicit poziţia selectată. Timpul de calcul pentru generarea mişcării TPPeste minim deoarece sistemul de comandă trebuie să asigure pentru fiecare axă doar controlul vitezei şi poziţiei,la deplasarea de la un punct la altul, prin măsurarea datelor furnizate de traductorii de poziţiei ai axelor implicate
în mişcare şi compararea acestora cu coordonatele articulare memorate.. În funcţie de strategia de comandă a
1 – riglă cu canale;2 – camă reglabilă;3 – microîntreruptor multiplu;4 – cablaj electric.
1
2
3
2
d1 d1d2 d2
I1
I2
Sistemcomandă
+V
4
S1; 2
axelor, la deplasarea între punctele selectate, există următoarele posibilităţi de generare a triectoriilor punct cupunct: traiectorie punct cu punct de tip secvenţial; traiectorie punct cu punct nesincronizată; traiectorie punct cu punct sincronizată.
Traiectoria de tip punct cu punct secvenţială este generată prin comanda secvenţială a fiecărei axe. Sistemulde comandă nu poate controla în timp real decât viteza şi poziţia unei singure axe la un moment dat.
Fig. 6.36. Generarea traiectoriei prin comandă punct cu punct secvenţială
Traiectoria de tip punct cu punct nesincronizată este generată prin comanda simultană a tuturoraxelor robotului respectânduse criteriul timpului minim de mişcare la nivelul fiecărei axe, figura6.37.b.
Fig. 6.37. Evoluţia principalilor parametri de mişcare în cazul TPP nesincronizate:a. parametrii de mişcare la nivelul unei axe; b. evoluţia vitezelor axelor
Sistemul de comandă trebuie să calculeze pentru fiecare axă durata mişcării tk precum şi momentele de comutaţiece corespund modificării profilului vitezei astfel încât să nu fie depăşite limitele maxime de viteză vmk şiacceleraţie amk. Şi în acest caz viteza şi traiectoria dispozitivului efector între punctele de deplasare nu pot ficontrolate, ca urmare traiectoria este de tip liber, nereversibilă dar deoarece toate axele pleacă simultan aceasta
A0 A1A1
A2
A3A2
A3
A0
t
amk
vmk
t
x1k
tak tpk tfk
t0
x2k
x3k
t
vm1
vm2
t
vm4
t3 t1 t2
t0
t
vm3
t4
0
0
0
0
0
a. b.
are o formă mult mai regulată apropiiduse mai mult de traseul optim, figura 6.38.. Ca urmare timpul de deplasareîntre puncte este mult mai scurt.
Fig. 6.38. Generarea traiectoriei prin comandă punct cu punct nesincronizatăTraiectoria de tip punct cu punct sincronizată se obţine prin comanda simultană a axelor la viteze astfel calculateîncât toate axele să ajungă la destinaţie simultan (sincronizat).
Fig. 6.39. Strategia de comandă în cazul comenzii TPP:a. nesincronizată; b. sincronizată
Soluţiile trebuie să satisfacă condiţia miic vv :
n1i2
ax4tatav mii
2
s
2
mismi
ic ...;
(6.8)
Această strategie de comandă este cea mai utilizată în cazul roboţilor din generaţia I deoarecemişcările fiind simetrice în ambele sensuri de deplasare se obţin traiectorii reversibile, deplasareaaxelor conduce teoretic către optimul de traiectorie posibil de generat cu un sistem de comandă fără
A0
A1
A2
A1
A2 A3A4A3 A4
A0
x2<x1<x3
t
vm1
vm2
t
vm4
t3 t1 t2
t0
t
vm3
t4
0
0
0 t
v1c
vm2
t
v4c
S2 S2
ts
t0
t
v3c
S4
0
0
0
S1S1
a. b.
S3
S3
S4
interpolator, figura 6.40.:
Fig. 6.38. Generarea traiectoriei prin comandă punct cu punct sincronizată
6.2.3. Generarea traiectoriilor de tip continuu
Generarea unei traiectorii continuii apare ca necesitate în cazul unor sarcini complexe ce presupundeplasarea dispozitivului efector după un profil complex iar procesul tehnologic impune un control avansat curespectarea strictă a parametrilor de mişcare: viteză, acceleraţie, eroare. Pentru a răspunde acestor cerinţe estenecesar ca sistemul de comandă să genereze coordonatele de mişcare în spaţiul coordonatelor operaţionaleurmând ca acestea să fie transformate, pe baza modelelor inverse, în coordonate articulare pentru a se asiguraprescrisele de poziţie şi viteză sistemului de acţionare a axelor. Transformările de coordonate necesită calculecomplexe ceea ce impune creşterea performanţelor sistemului de comandă multiprocesor care trebuie să dispunăde procesoare matematice capabile să execute operaţii în virgulă mobilă. Sistemul de comandă memoreazăcoordonatele punctelor de trecere şi oprire care jalonează traiectoria. Între aceste puncte traiectoria poate să fieimpusă astfel încât, dispozitivul efector se va deplasa: liniar, circular după o rază dată sau va urmări o funcţieprecizată analitic. Sarcina generării traiectoriei impuse revine interpolatorului de traiectorie care are rolul de agenera între două jaloane ale traiectoriei un set de puncte de trecere prin a căror parcurgere să se asiguredeplasarea dispozitivului efector pe o traiectorie cât mai apropiată de forma impusă.
Fig. 6.41. Generarea traiectoriei continui cu interpolare liniară în cazul roboţilor cu axe de rotaţie
Datorită performanţelor pe care le ating roboţii cu traiectorie continuă (generaţia II şi III) sunt utilizaţi înoperaţii de sudură pe contur, debitare, vopsire, operaţii de ansamblare complexe ce implică complianţă activă,controlul de calitate al produselor, operaţii de debavurare.
A4
A0
A4
A0
A1
A4 A2 A4A3 A4
X
Y
Z
J1
J2
J3
Jk
puncte de trecere
traiectorie cuinterpolare liniară
traiectorieinterpolată reală
Traiectorii continuii generate prin urmărirea unui obiect ţintă. Sistemele de control a tariectorieiprezentate au fost dezvoltate pentru aplicaţii în care dispozitivul efector al robotul execută anumite operaţiideplasânduse în raport cu o piesă fixă. În funcţie de modul în care piesele sosesc în flux se pot utiliza douăsoluţii:
Montarea bazei robotului pe o axă suplimentară de translaţie aşezată paralel cu banda transportoare şi carese deplasează cu aceeaşi viteză astfel încât pe durata operaţiilor să nu existe mişcare relativă între robot şipiesă, figura 6.42.a.
Programarea dinamică a mişcărilor dispozitivului efector, în funcţie de datele locale furnizate de sistemulde analiză video, prin adăugarea unei mişcări relative fiecarui jalon predefinit al traiectoriei de prelucrareastfel încât să se compenseze mişcarea piesei, figura 6.42.b.
Fig. 6.42. Generarea traiectoriilor continuii cu urmărirea unui obiect ţintă:a. metoda axei de translaţie sincronizată; b. metoda compensării dinamice a deplasării piesei
vbandă
vrobot= vbandă zona desincronizare
vbandă
a. b.
6.2.4. Interpolatoare de traiectorie
Roboţii avansaţi din punct de vedere al comenzii utilizează modele cinematice sau dinamice care operează
cu vectorul de poziţie s ,,,,, ZYX sau cu vectorul viteză.
s
zyxZYX ,,,,,
...
al efectorului
(vezi subcapitolul 5.4). Algoritmul de interpolare trebuie să rezolve două probleme:
generarea traiectoriei impuse prin calculul unei succesiuni de puncte intermediare ijs între punctul de
plecare s(i) şi cel de sosire s(i+1) care în mod obligatoriu trebuiesă aparţină spaţiului de lucru şi să respecte resticţiile de viteză şi acceleraţie impuse structurii mecanice;
rezolvarea problemei cinematice inverse prin care, pentru fiecare punct intermediar ijs definit al
traiectoriei se determină vectorii coordonatelor articulare de poziţie iq sau viteză iq
ce devin prescrise
pentru sistemul de acţionare a axelor pentru a conduce astfel efectorul în punctul calculat.Roboţii din generaţia II utilizează un algoritm de interpolare direct care urmăreşte numai realizarea parametrilortraiectoriei în timp ce, roboţii din generaţia III ce beneficiază de elemente de inteligenţă artificială utilizează unalgoritm de interpolare adaptiv mult mai versatil prin care, dispunerea punctelor intermediare şi elementeletraiectoriei sunt modificate în timp real în funcţie de datele furnizate de traductorii inteligenţi asociaţi:
Fig. 6.43. Nivele de control ierarhic la generarea traiectoriilor cu interpolare
Datele finale de la traductorii inteligenţi prelucrate de programele de inteligenţă artificială (IA) servesc lacalculul următorului jalon al traiectoriei cu o periodicitate TIA ce depinde de capacitatea de calcul a procesoarelordin această buclă. Traiectoria este aleatore nefiind definită în programul principal decât la nivel de obiectiv, ea semodifică în permanenţă în funcţie de datele senzorilor (ex. în operaţiile de debavurare a pieselor turnate
Programprincipal
ProgrameIA
Elaboraretraiectorie
Modelinvers
Condiţionăritraiectorie
Algoritminterpolator
Terminal controlmanual
s(i)*
interpolaredirectă
interpolareadaptivă
sj(i)* sj(i)
*
qj(i)* qj(i)
*
Controleracţionări axe
Acţionărim axe robot
qj1(i)*
qjm(i)*
qj(i)
sj(i)
TCS
camerăvideo
WCS
CCS
s(i)*
traiectoria se adaptează în funcţie de nivelul optim al forţei de apăsare dintre piatră şi piesă).Pentru a asigura deplasarea efectorului între punctele intermediare sistemul de acţionare trebuie să controlezeprecis deplasările axelor, în funcţie de datele dela traductorii de poziţie, cu o periodicitate Ta ce nu trebuie să
depăşească câteva zeci de milisecunde astfel încât să se respecte condiţia: IAia TTT .
Algoritmul de elaborare a traiectoriei calculează acceleraţiile şi vitezele de palier ale efectorului pe diferitelesegmente ale traiectoriei astfel încât deplasarea acestuia între jaloane să se facă în timp optim cu respectareadatelor din program şi a constrângerilor impuse de limitele sistemului mecanic, conform figurii 6.44.:
Fig. 6.44. Generarea traiectoriei efectorului cu puncte de trecere şi oprireşi a profilului de viteză optim
Algoritmii de interpolare directă se realizează în două variante:
algoritm de interpolare cu comandă în poziţie, ce transformă vectorul de poziţie s al efectorului într-unvector de comandă în poziţie a axelor q;
algoritm de interpolare cu comandă în viteză, ce transformă vectorul viteză.
s al efectorului într-un vector
de comandă în viteză a axelor
q .
Algoritm de interpolare cu comandă în poziţie (absolut).
Dacă se consideră o deplasare a efectorului între jaloanele traiectoriei is şi 1is , acest tip de
interpolator calculează cu o rată de eşantionare Ti prescrisa vectorului de poziţie a punctelor intermediare *
ijsşi pe baza modelului geometric invers determină vectorul prescriselor de poziţie pentru buclele de acţionare ale
axelor robotului *
ijq .
sj(i)
sj+1(i)
s(i-1)
s(i)
s(i+1)
zona deaccelerare 1
zona defrânare 2
punct trecere
zona deracordare
zona defrânare 1 zona de
accelerare 2
sj(i)=ct. sj(i+1)=ct.
sj(i)
sj(i+1)
s
t
s(i-1) ss(i) s(i+1)
punct de oprire
punct de oprire
eroare de traiectorie
ijijijij qqqq 11 ;*
m
i1j
1
i1j
q
q
... (6.9)
Fig. 6.45. Generarea comenzii la nivelul axei cu un algoritm de interpolare în poziţie:a. poziţia axei; b. viteza axei
i
ij
ijT
*
(6.10)
Algoritm de interpolare cu comandă în viteză (incremental).
Algoritmul are ca mărime de intrare din programul principal prescrisa de poziţie a efectorului *
is la
deplasarea între jaloanele traiectoriei. Pe intervalele de eşantionare interpolatorul definineşte vitezele de
deplasare pe traiectorie *
ijs
care sunt transformate de modelul cinematic invers (5.87) în prescrise de viteză
ale axelor de acţionare *
ijq
. Deplasarea între punctele intermediare la nivelele de viteză prescrise permite
obţinerea unor deplasări elementare ale axelor calculabile cu relaţia:
ijijiijij qqTqq 1
*
(6.12)
Poziţia axelor pe durata parcurgerii celor n puncte intermediare este:
njijiijij qTqq ...
*
11
(6.13)
unde ijq 1 este vectorul de poziţie a axelor calculat la pasul anterior.
Conform algoritmului de calcul prezentat interpolatoarele incrementale sunt sensibile la erorile de calcul şi
Viteză axăqj
k
qk1(i)
*
qkn-1(i)
*
profil idealde viteză
Ti
profilviteză
calculat
qkj(i)
*
qkj-1(i)
*
t
Poziţie axăqj
k
qk(i-1)
*
qk(i)
*
traiectoriaprogramată
Ti
traiectoriarealizată
qkj(i)
*
qkj-1(i)
qkj(i)
kj(i)
t1 n 1 n
a. b.
model deoarece prin concepţie cumulează erorile de la paşii intermediari.
Fig. 6.46. Generarea comenzii la nivelul axei cu un algoritm de interpolare în viteză:a. viteza axei; b. poziţia axei corectată la depăşirea erorii admisibile
Îmbunătăţirea performanţelor interpolatorului se poate face prin introducerea unor algoritmi de corecţiecapabili să elaboreze un semnal de corecţie atunci când eroarea de urmărire a traiectoriei depăşeşte valoareamaxim admisă conform figurii 6.47.:
Fig. 6.47. Algoritmul de corecţie a erorii de poziţie pentru interpolatorul incremental
Viteză axăqj
k
qk1(i)
*
qkn-1(i)
*
profil idealde viteză
Ti
profilviteză
calculatqk
j(i)*
qkj-1(i)
*
t
1 n
b.
Poziţie axăqj
k
qk(i-1)
qk(i)
traiectoriaprogramată
Ti
traiectoriarealizată
qkj(i)
qkj-1(i)
kj(i)
t
1 n
a.
corecţie
Elaboraretraiectorie
sj(i) calculat sj+1(i)*
M. cinematicinverssj(i) măsurat
M. geometricdirect
M. geometricinvers
sj(i)
qj(i)
Bloc derivare
qj+1(i)*
qj(i)
Sistemacţionare
qj+1(i)*
corectat
TP
C1
C2
qj(i)
6. Comanda roboţilor314
6.4. UTILIZAREA AUTOMATELOR PROGRAMABILEPENTRU COMANDA DISPOZITIVELOR AUXILIARE ALE
SISTEMELOR ROBOTIZATE
Automatul programabil (Programable Logic Controler) a apărut ca oalternativă flexibilă, ieftină şi sigură la panourile cu logică cablată (cu relee).Automatele programabile s-au dezvoltat şi diversificat continuu astfel încât în prezentacestea realizează o multitudine de funcţii: logice, de temporizare, numărare, calculearitmetice, analiză de date, de comunicaţie cu alte echipamente ale sistemului deautomatizare. AP este un echipament electronic digital, construit pentru a controla întimp real procese logice secvenţiale în medii industriale eterogene. Automatulprogramabil a fost dezvoltat ca urmare a solicitărilor din industria americană aautomobilelor, aflată în plină dezvoltare în anii ’60, de a dezvolta benzi de fabricaţieautomatizate.
Pentru a reduce preţul de producţie producătorii au solicitat un sistem numeric decontrol fiabil şi flexibil care să poată fi utilizat în medii industriale, să poată fi uşor deprogramat şi de întreţinut de personalul tehnic şi să fie reutilizabil. În cazul liniilorclasice de producţie de fiecare dată când era schimbat modelul de maşină, sute depanouri cablate cu relee, proiectate să deservească un proces de automatizare specificerau dezafectate.
Agresiunile mediului industrial perturbator se datorează următorilor factorii: mediului fizic şi mecanic caracterizat prin vibraţii, şocuri (care solicită contactele,sudurile componentelor electronice), umiditate (un procent mai ridicat de 80%provoacă condensaţii şi accelerează coroziunea, iar unul inferior valorii de 35%favorizează crearea de potenţiale electrostatice), temperatură ridicată a mediuluiambiant local (50…60 C), prin vecinătatea cu cuptoare, reactoare, furnale fierbinţicare pot duce la funcţionarea la limita de toleranţă admisă de unele componente; poluării chimice, concretizate prin existenţa unui număr important de factoriparticulari distructivi cum ar fi gazele corozive (Cl2, H2S, SO2), vaporii dehidrocarburi, pudre metalice (degajate în secţiile de prelucrări mecanice, turnătorii) sauminerale (degajate în betoniere); ca mijloace de protecţie împotriva poluării chimiceproducătorii utilizează lăcuirea circuitelor imprimate şi instalarea filtrelor, cu rolul de aelimina praful sau gazele;
perturbaţiilor electrice, dintre care o incidenţă mai mare o au interferenţeleelectromagnetice ca rezultat a cuplajelor capacitive sau inductive, paraziţi de origineelectrostatică şi fenomenele termoelectrice (prin efectul Peltier).
Divizia Hydramatic de la General Motors a elaborat primul controler logicprogramabil în anul 1968. Piaţa dădea naştere produselor a două dintre cele mai mariîntreprinderi: Modicon şi Allen – Bradley. În Franţa, primele automate programabileau apărut pe piaţă în anul 1971 la întreprinderile: Merlin – Gérin şi Alspa. [MICH 89].Avantajele automatelor programabile sunt multiple şi pe diferite planuri: flexibilitate în configurare, automatul programabil poate conduce procese diferite,iar modificările procesului de producţie se realizează de această dată la nivel software(funcţii logice), modificările de program sunt mai uşor de implementat decâtmodificările la nivel hardware;
6.4. Utilizarea automatelor programabile pentru comanda dispozitivelor auxiliare 315
siguranţă, dispozitivele electronice sunt mai sigure şi mai uşor de întreţinut decâtreleele mecanice; cost scăzut, sistemele numerice sunt capabile să realizeze software funcţiicomplexe la un cost scăzut; facilităţi de exploatare şi depanare, echipamentul de programare al automatelorpoate furniza informaţii asupra funcţionării sistemului, listarea circuitelor cu probleme,soluţii de remediere a avariilor.
Printre aplicaţiile ce se pot realiza cu automatele programabile se numără:– automatizarea liniilor şi fluxurilor de fabricaţie şi de montaj, a bancurilor de probăşi control a calităţii produselor, gestiunea mecanizată a depozitelor, împachetarea şiîncărcarea produselor finite, etc.;– automatizarea utilajelor (maşini unelte, compresoare, maşini de sudare, ascensoareroboţi de manipulare);– optimizarea proceselor tehnologice: automatizarea turnătoriilor, dozarea şiamestecul produselor, controlul debitelor în instalaţiile de pompare, uscarea controlată,tratamente termice.– aplicaţii SCADA (Supervisory Control and Data Aquisition).
6.4.1. Arhitectura automatelor programabile
Structura unui automat programabil este formată în principal din unitatea centrală,sursa de alimentare, module de intrare/ieşire numerice şi analogice ce asigură schimbulde date cu procesul controlat, module de control a axelor de acţionare numerică,modulul de comunicaţie şi consola de programare:
Fig. 6.44. Arhitectura automatelor programabile
Consola deprogramare
Proces tehnologic
Unitateacentrală
Sursa dealimentare
Modul I/Onumerice
Modulcomandănumerică
axe
Modul I/Oanalogice
Modulcomunicaţie Rezerve
Elemente execuţie:distribuitoare de
comandă, contactoare,relee, c-dă. PWM
Traductoare numerice:microîntreruptoare,
senzori de proximitate,poziţie, viteză
Elemente execuţie:motoare de c.c.,
motoare pas cu pas
Elemente execuţie:(servo)distribuitoare
proporţionale,prescrise analogice
Traductoare analogice:senzori de nivel, distanţă,
forţă, resolvere
IBM/PC
RS 232AP
LAN, Internet, CAN,Modbus, RS 485
6. Comanda roboţilor316
Unitatea centrală este dezvoltată în jurul unui microprocesor în cazulmicroautomatelor programabile (cu maxim 128 I/O) respectiv a două microprocesoare,master şi supervizor, în cazul automatelor de talie medie (până la 1024 I/O) şi mare(peste 4096 I/O). Pentru a-şi îndeplini sarcinile, unitatea centrală trebuie să prelucrezenumeroase informaţii. Aceste prelucrări constau în transferuri de date, comparaţii,puneri în format (conversii), calcule matematice, operaţii pe bit, sincronizare.Magistralele sistemului trebuie să permită schimbul rapid şi eficient al informaţiilor(10 Mocteţi/secundă). Capacitatea magistralei este adaptată informaţiilor care circulăprin ea: lungimii cuvintelor, adreselor, numărului semnalelor de control, etc. Viteza detransfer a magistralelor, condiţionează în sens larg performanţele generale ale unităţiicentrale.
Memoria AP este formată din memoria rezervată programelor sistemului şimemoria rezervată programelor utilizatorului. Sistemul de operare al automatuluiprogramabil este stocat într-o memorie EPROM şi conţine toate informaţiile necesarefuncţionării sistemului şi exploatării sale (sistemul de operare este un program careserveşte aceluiaşi scop ca şi DOS sau Windows într-un calculator). O parte esterezervată logicii de bază, creată, dezvoltată şi furnizată de constructor (firmware).Capacitatea memoriei variază în funcţie de volumul bazei logice de la câţiva Ko încazul microautomatelor la 1…10 Mo în cazul automatelor multiprocesor prevăzute cualgoritmi sofisticaţi de funcţionare şi diagnoză. Programul utilizatorului este stocatdupă finalizare într-o memorie (E)EPROM a cărei capacitate (8 Ko…256 Ko) depindede tipul automatului şi complexitatea aplicaţiei. În faza de dezvoltare a programuluiacesta este stocat şi rulat din memoria RAM a calculatorului sau consolei deprogramare utilizate pentru editare şi depanare. Programul constă dintr-o succesiunede operatori care permit realizarea funcţiilor logice cerute. Instrucţiunile sunt stocateîn adresele consecutive ale memoriei (E)EPROM şi executate automat, în ordine, prinadresarea consecutivă a locaţiilor memoriei, prin intermediul unui contor alprogramului. Formatul tip a unei instrucţiuni a automatului programabil este prezentatîn figura 6.45. pentru un cuvânt de 32 biţi:
Fig. 6.45. Formatul instrucţiunilor automatelor programabile
În funcţie de posibilităţile oferite de sistem, prin formatul instrucţiunii se rezervă ozonă de 6…8 biţi pentru codificarea operaţiei sau funcţiei ce urmează să fie executată.Următorii 3 biţi definesc tipul de variabilă: intrare I, ieşire O, memorie M, canaltemporizare T, contor numărare C, bloc date D, funcţii speciale F. Modul de adresare aspaţiului de memorie disponibil este definit de următorii 3 biţi: adresare absolută,indirectă, indexată, imediată sau relativă. Ultima zonă este rezervată adreseioperandului care se poate găsi în memoria RAM a sistemului sau în regiştrii de lucru ai
3 biţi tip operand
registrul cel mai puţin semnificativ
3 biţi tip adresare
registrul cel mai semnificativ
adresă operand8 biţi codul operaţiei
32 11617
6.4. Utilizarea automatelor programabile pentru comanda dispozitivelor auxiliare 317
procesorului. Datele folosite de AP pe parcursul rulării programului sunt stocateautomat în memoria RAM a sistemului (independent de acţiunile utilizatorului). Zonade date este organizată în subzone care stochează un anumit tip de date dintre care celemai semnificative sunt: imaginea stării intrărilor I, stochează starea (1 sau 0) a intrărilor de la senzorii şi
traductoarele digitale din proces; imaginea stării ieşirilor O, stochează datele binare (1 sau 0) care vor activa sau
dezactiva dispozitivele de execuţie din proces; starea variabilelor de memorie, utilizate pentru păstrarea unor rezultate parţiale; starea numărătoarelor C, stochează tipul (cu numărare înainte, înapoi, înainte/
înapoi), valoarea curentă, valoarea setată; starea canalelor de temporizare T, stochează tipul (temporizare la acţionare,
revenire, monostabil), valoarea curentă, valoarea setată; date numerice D, stochează datele utilizate pentru conversiile de numere,
compararea blocurilor de date etc. funcţii F, stochează starea şi datele funcţiilor speciale folosite de programul
utilizator.Informaţia stocată în memoria RAM a automatului este temporară şi poate fi menţinutăun timp limitat cu ajutorul surselor auxiliare: supercapacitor (2…4 luni) sauacumulator (1…2 ani).
Pentru a asigura schimbul de informaţii cu procesul controlat, AP pot fi prevăzutecu o mare varietate de module I/O care prezintă particularitatea de a fi specialproiectate pentru un mediu industrial puternic poluat electromagnetic. Modulele deintrări digitale pentru a realiza în bune condiţii funcţia principală de achiziţie trebuiemai întâi să efectueze adaptarea semnalului industrial prin: aducerea la o formă cât maiapropiată de semnalele digitale standardizate, eliminarea informaţiilor parazite,decuplarea circuitului de forţă (din proces) de circuitul de procesare al automatului.
Formatarea semnalului industrial constă într-o succesiune de operaţii în urmacărora se obţine un semnal calibrat, utilizabil. Deoarece semnalele de intrare potproveni din circuite electrice de curent continuu (uzual) dar şi din circuite de curentalternativ mai întâi se realizează o redresare bialternanţă şi filtrare urmată de ocalibrare prin care semnalul este adus în limitele admise de semnalele logice digitalecu ajutorul unor circuite electronice de tip Trigger-Schmidt, varistor sau diodă Zenner,figura 6.46.a. Intrările digitale pot lucra în logică pozitivă sau negativă.
Eliminarea informaţiilor parazite de înaltă frecvenţă cu caracter pasager, careîncadrându-se în nivelul logic au trecut de circuitele de formatare, se face cu ajutorulunui filtru trece jos (exponenţial) ce acţionează numai în funcţie de energiasemnalului. Constanta de timp a filtrului se alege în intervalul 5…20 ms, fiind deaproximativ două ori mai mare decât timpul de rulare a programului. Prezenţa filtruluiare dezavantajul creşterii timpului minim de achiziţie a datelor de la canalele de intrareşi implicit determină scăderea performanţelor sistemului prin scăderea vitezei de rularea programului utilizator. Din acest motiv majoritatea producătorilor oferă posibilitateadezactivării (hard) a filtrului în cazul intrărilor neperturbate electromagnetic ceea cepermite scăderea timpului de achiziţie la valori de 0,5…1 ms.
Nivelul tensiunilor de intrare standardizate este de 24, 48, 110, 220 V c.c. sau c.a.în cazul semnalelor provenite de la microîntreruptoare, senzori inductivi de
6. Comanda roboţilor318
proximitate sau 5V (TTL) respectiv 15 V (CMOS) în cazul semnalelor achiziţionate dela senzorii şi traductoarele digitale inteligente, cu prelucrare locală a informaţiei.Pentru a se preveni avarierea circuitelor digitale ale AP (5 V) în cazul unor defecte deizolaţie în circuitele electrice din proces, este obligatorie separarea galvanică a acestorcircuite prin dispozitive optoelectronice.
Fig. 6.46. Canale de intrare:a. intrare digitală de c.c. şi c.a.; b. intrare digitală pentru semnale de mare viteză
Pentru procese rapide intrările automatului programabil pot fi configurate sălucreze ca numărătoare de mare viteză HSC (High Speed Counter) cu operare pefrontul pozitiv/negativ al impulsului standardizat (5..15 V, factor umplere 20% ÷80%), figura 6.46.b. Fiecare numărător realizează procesarea directă a semnalului tipimpuls, cu frecvenţa maximă de 10 kHz, pentru implementarea aplicaţiilor de controlindustrial ca: măsurarea debitelor, a vitezei motoarelor de acţionare, contorizareaoperaţiilor rapide de încărcare/descărcare a materialelor, memorarea poziţiei în buclelede reglaj în poziţie. Datorită costului ridicat canalele de intrare se realizează grupat pemodule de intrari, echipate cu 8 sau 16 canale.
Canalele de ieşire au rolul de a asigura comanda elementelor de execuţie dinproces cu asigurarea separării galvanice şi a nivelului de putere solicitat. În funcţie decurentul solicitat canalele de ieşire se realizează în următoarele variante constructive: cu ieşire pe tranzistor, pentru c.c. curenţi de maxim 1A, tensiune U = 5…24 V c.c.; cu ieşire pe releu, pentru alimentarea consumatorilor c.c. şi c.a., curent maxim pe
D1
+5 V
O1
R1
MOV
R2
LED1
R3
Un
itat
eace
ntr
ală
Automat programabil
Filtru
T=5…20 ms
V1
Proces
IN1
COM
P1
S1
D1
+5 V
O1
R1
R2
LED1
R3
Un
itat
eace
ntr
ală
Automat programabil
+V1
Proces
HSC
COM MV1
Filtru
T=100 s
a.
b.
c.c.sau
c.a.
6.4. Utilizarea automatelor programabile pentru comanda dispozitivelor auxiliare 319
contact 2A pe sarcină rezistivă, tensiune U = 24…240 V; cu ieşire pe triac, pentru alimentarea consumatorilor de curent alternativ de putere,
curent maxim de 10 A pe sarcină rezistivă, tensiune U = 24…240 V.Ieşirile pe tranzistor se utilizează numai în curent continuu ca ieşiri standard
pentru curenţi mici (maxim 1 A) şi în special pentru ieşiri de mare viteză tip PWM, cutimp mic de răspuns 0,1 ms. Etajul de putere este realizat cu tranzistor bipolar (npn saupnp) sau cu tranzistor MOSFET pentru puteri mai mari. Prin utilizarea facilităţii PWMeste posibilă generarea unui profil particularizat de viteză pentru comanda unui motorde c.c de mică putere sau comanda în poziţie a unei vane de reglare a debitului, figura6.47.:
Fig. 6.47. Canal de ieşire pe tranzistor
Alimentarea sarcinii comandate se poate face la alegere de la sursa internă aautomatului în cazul unui curent de maxim 1…2 A (pe toate ieşirile) sau de la o sursăexternă adaptată consumatorilor comandaţi, prin setarea conexiunii J1. Fiabilitatea şidurata de viaţă a ieşirilor pe tranzistor este mult mai mare decât a ieşirilor pe relee dardeoarece au o capaitate redusă de suprasarcină ieşirile trebuie protejate obligatoriu prinsiguranţe fuzibile rapide montate în exteriorul automatului.
Ieşirile pe releu, cu contacte normal deschise, pot controla aplicaţii precumpornirea motoarelor, comanda bobinelor contactoarelor, electromagneţilordistribuitoarelor de comandă, lămpilor de semnalizare.
Fig. 6.48. Canal de ieşire pe releu
D1
RsOUT1
Automat programabil Element execuţie
+5 V
K1K1
LED1
R3
Un
itat
eace
ntr
ală
COM1
F1
c.c.sauc.a.
U
D1
Rs
+5…24 V
T1
OUT1
Automat programabil Element execuţie
DZ1
+5 V
O1
R1R2
LED1
R3
Un
itat
eace
ntr
ală
COM1
F1
+24Vint
=
PWM
+24VextJ1
6. Comanda roboţilor320
Timpul de răspuns este relativ mare datorită constantei electromecanice a releului (15ms), ca urmare pot fi comandate numai dispozitive de execuţie lente. Capacitateafiecărui contact este de 2…10 A, dispozitivele comandate fiind alimentate de la o sursăexternă de c.c. sau c.a. Anduranţa mecanică tipică a contactelor este de 20.000 operaţiiîn timp ce anduranţa electrică este de aproximativ 200.000 de operaţii şi depinde detipul şi valoarea sarcinii comutate. Ieşirile trebuie prevăzute în exterior cu siguranţepentru a proteja contactele în cazul unui scurtcircuit pe sarcină.
Canalele de ieşire pe triac sunt mai puţin uzuale fiind folosite numai pentrucomanda sarcinilor de curent alternativ, figura 6.49.:
Fig. 6.49. Canal de ieşire pe triac
Pentru a asigura o mai mare flexibilitate de exploatare în prezent producătorii deAP realizează module I/O ale căror canale sunt configurabile software ca intrări sauieşiri în funcţie de necesităţile sistemului controlat.
Numărătoarele utilizate de automatele programabile sunt de trei tipuri: cunumărare înainte (CTU), cu numărare înapoi (CTD) şi cu numărare înainte/înapoi(UDC). Numărătoarele de mare viteză HSC sunt realizate hardware spre deosebire denumărătoarele uzuale care sunt implementate software şi ca urmare au funcţionareadependentă de durata ciclului AP. Majoritatea producătorilor recomandă utilizareanumărătoarelor normale (software) dacă perioada evenimentelor ce trebuiesccontorizate este mai mare decât dublul ciclului AP şi numai numărătoare HSC pentruaplicaţiile care nu se încadrează în această condiţie. Majoritatea AP actuale utilizeazănumărătoare pe 16 biţi ca urmare limitele de numărare depind de modul de afişare avariabilei contorizate: 0…9.999 (numărător zecimal 16 biţi BCD), -32.768…32.767(numărător binar 16 biţi cu semn), 0…65.535 (numărător binar 16 biţi).Forma generală a unui numărător înainte (înapoi) este prezentată în figura 6.50.:
Fig. 6.50. Numărător înainte (înapoi)
RsOUT1
Automat programabil Element execuţie
OT1
COM1 F1
110…220 V c.a.
U~
+5 V
R2
LED1
R3
Un
itat
eace
ntr
ală
Fs
C00003
RESET
COUNT UP (DOWN)IN0
IN2
IN0
C00
IN2
N=3
t
6.4. Utilizarea automatelor programabile pentru comanda dispozitivelor auxiliare 321
Numărătorul este identificat prin litera C urmată de un număr nnn a cărui valoaremaximă depinde de tipul AP, funcţionează cu două semnale de intrare: IN0 pentrunumărare înainte sau înapoi (COUNT) şi IN2 pentru ştergerea conţinutului registruluide numărare (RESET). Numărătorul mai conţine un registru în care este memoratăvaloarea setată până la care sau de la care se numără evenimentele (exemplu C00numără înainte până la 3). La atingerea valorii setate variabila C00 ia valoarea 1 logic.Numărătoarele înainte/înapoi utilizează trei canale de intrare: IN0 pentru numărareînainte (COUNT UP), IN1 pentru numărare înapoi (COUNT DOWN) şi IN2 pentruştergerea conţinutului registrului de numărare (RESET). Conţinutul registrului denumărare creşte sau scade în funcţie de semnalele de intrare şi numai la atingereavalorii setate (exemplu valoarea 4), variabila C02 ia valoarea 1 logic, conformdiagramelor de semnal prezentate în figura 6.51.:
Fig. 6.51. Numărător înainte/înapoi
Canalele de temporizare sunt utilizate cel mai frecvent pentru a genera un intervalde timp controlabil înainte de a se executa un anumit eveniment. Pentru realizareaacestei funcţii generale (cu implementare software) se pot utiliza următoarele tipuri decanale de timp: canal de timp cu temporizare la acţionare TON (Timer On-Delay); canal de timp cu temporizare la revenire TOFF (Timer Off-Delay); canal de timp de tip monostabil TMON (Timer Monostabile); canal de timp cu acumulare TAC (Timer Accumulating);
Canalele de timp cu temporizare la acţionare sunt cele mai utilizate deoarecerealizează o întârziere programabilă faţă de un semnal de lansare, fiind echivalentulsoftware al releelor de timp cu aceeaşi funcţie. Canalul de timp este setat prin programla valoarea temporizării dorite şi care pentru canalele pe 16 biţi este un număr dinintervalul 0…65535. În funcţie de baza de timp generată de la unitatea centrală (uzualx0,1 s sau x0,01 s) se pot obţine întârzieri maxime de până la 6.553,5 s, valoare carepoate fi mărită prin cascadarea unui număr corespunzător de canale de timp TON.Controlul funcţionării se realizează cu o variabilă de intrare care poate fi un canal deintrare (control hardware) sau un canal de ieşire, timp, o variabilă de memorie, etc.(control software). Dacă condiţia logică de intrare este adevărată (exemplu IN0 = 1),canalul de timp TON este lansat şi se începe măsurarea timpului programat a căruivaloare curentă este accesibilă utilizatorului prin intermediul consolei de programare.După scurgerea timpului setat variabila de timp T00 de tip TON este validată automatşi rămâne în această stare atâta timp cât condiţia logică de intrare rămâne adevărată.
C02004
RESET
COUNT UPIN0
IN1
IN0
C02
IN2
C02=1
tIN2
COUNT DOWN
C02=3 C02=4
IN1
6. Comanda roboţilor322
Dacă semnalul de control devine fals înainte de trecerea timpului setat, canalul detemporizare TON este resetat urmând să fie lansat din condiţii iniţiale imediat cecondiţia de intrare redevine adevărată, conform graficelor de semnal prezentate înfigura 6.51.:
Fig. 6.51. Canal de timp cu temporizare la acţionare TON
Canalele de timp cu temporizare la revenire TOFF realizează funcţia detemporizare opusă unui canal TON. Pentru lansarea temporizării este mai întâinecesară îndeplinirea condiţiei logice de intrare (exemplu IN0 = 1), se valideazăautomat variabila de timp T001 iar din momentul schimbării stării condiţiei de intrare,pe frontul descrescător, începe măsurarea timpului. La atingerea valorii setate variabilade timp T01 trece în starea 0 logic. Activarea variabilei de intrare pe duratatemporizării determină ştergerea registrului de timp iar temporizarea se reia de la zeroimediat ce condiţia logică de intrare devine falsă, conform figurii 6.52.:
Fig. 6.52. Canal de timp cu temporizare la revenire TOFF
Canalele de timp de tip monostabil se utilizează pentru generarea unei temporizăricu durată impusă şi care, pe durata acestui interval de timp, nu este afectă demodificarea condiţiei logice de intrare. Această funcţie este deosebit de utilă în cazulaplicaţiilor ce utilizează semnale de la traductoare a căror durată este foarte scurtădatorită specificului procesului sau care sunt însoţite de numeroase semnaleperturbatoare: exemplu comutaţia mecanică a unui microîntrerupător. În acest mod serealizează o filtrare a semnalului de intrare şi în plus se poate reţine starea intrării untimp suficient pentru ca unitatea centrală să identifice modificarea stării logice.Lansarea temporizării se face din momentul în care condiţia logică de intrare devineadevărată (exemplu IN0 = 1), se validează automat variabila de timp T002 careblochează acţiunea eventualelor semnale de intrare, conform figurii 6.53.:
TONT00020
T00=2 s
STARTIN0
CLK
IN0
T00TON
t = 20x0,1 s
tceas intern
x0,1s; x0,01s
T00=0 sT00=0 s (Reset)
TOFFT01015
T01=1,5 s
STARTIN0
CLK
IN0
T01TOFF
t = 15x0,1 s
tceas intern
x0,1s; x0,01s
T01=0 s (Reset)Start
6.4. Utilizarea automatelor programabile pentru comanda dispozitivelor auxiliare 323
Fig. 6.53. Canal de timp de tip monostabil TMON
Canalele de timp cu acumulare măsoară durata totală a un eveniment repetitivpână la apariţia unei comenzi de ştergere. Funcţionarea în acest mod necesită douăcanale de intrare: unul IN0, pentru declanşarea contorizării impulsurilor de la bazainternă de timp şi unul IN1, pentru ştergerea conţinutului registrului acumulator alduratei evenimentului monitorizat. Canalul de timp poate fi setat pentru o anumităvaloare (exemplu 1 s) şi atunci când durata cumulată a evenimentului urmărit atingeaceastă valoare, variabila de timp T03 este validată şi poate fi utilizată în program.Dacă condiţia logică de intrare devine falsă înainte de atingerea valorii setate, valoareacurentă a timpului este reţinută şi contorizarea reîncepe de la această valoare imediatce condiţia de intrare redevine adevărată. Procesul de contorizare continuă (dacă seatinge limita de timp procesul se reia din nou de la valoarea zero) până la apariţia unuisemnal de ştergere. Semnalul de ştergere forţează automat şi variabila setată lavaloarea zero.
Fig. 6.54. Canal de timp cu acumulare TAC
Conducerea numerică a acţionărilor electrice dintr-o celulă flexibilă robotizatăpoate fi realizată cu ajutorul automatelor programabile AP multiprocesor sau acomenzilor numerice asistate de calculator CNC în cazul aplicaţiilor pretenţioase.Arhitectura AP multiprocesor permite prelucrarea informaţiilor la nivelul unor modulespecializate ce funcţionează după un program propriu. Nivelul înalt de specializare aacestor module dotate cu microprocesor şi memorie proprie asigură prelucrarea localăa datelor, micşorarea timpilor de transfer a datelor deoarece pe magistrală suntvehiculate doar rezultate finale, figura 6.55. Rezultatele finale sunt transmise în zona
TMONT02015
T02=1,5 s
STARTIN0
CLK
IN0
T02TMON
t = 15x0,1 s
tceas intern
x0,1s; x0,01s
T02=0 s (Start)
TACT03010
T03=1,4 s
STARTIN0
CLK
IN0
T03TAC
t = 10x0,1 s
t
ceas internx0,1s; x0,01s
T03=1 s
T03=0,5 s
IN1RESET
IN1
T03=1,8 s T03=0,4 s
6. Comanda roboţilor324
de memorie comună de unde sunt puse la dispoziţia unităţii centrale sau a celorlaltemodule specializate ce pot accesa şi utiliza aceste date conform unui protocol intern.
Figura 6.55. Arhitectura modulelor specializate utilizate în AP multiprocesor
Programarea modulelor specializate se limitează la selectarea parametrilor de lucruprin utilizarea, la nivelul consolei de programare, a unor casete de dialog interactiv.Unitatea centrală controlează modul de desfăşurare secvenţială a aplicaţiei şisupervizează funcţionarea modulelor specializate. Cele mai utilizate module sunt: modul intrări – ieşiri numerice; modul intrări – ieşiri analogice; modul intrări analogice cu prag reglabil; modul reglare PID; modul de comandă autoadaptiv PIDD2; modul control acţionări axe.
Modulele de intrări – ieşiri numerice nu echipează decât AP de nivel superior cepot prelucra date numerice a căror mărime este uzual de 16 biţi. Un modul este formatprin reunirea a 16 intrări sau ieşiri digitale care sunt multiplexate în bloc pentru a seputea conecta astfel un număr mai mare de elemente I/O fără a creşte excesiv preţulautomatului. Pentru separarea variabilelor binare de cele numerice se utilizeazăcodificarea diferită a operanzilor astfel încât cuvântele de 16 biţi să fie interpretate caun ansamblu.
Modulele de intrări – ieşiri analogice se utilizează în aplicaţiile care necesităprelucrarea unei mărimi analogice sub formă numerică sau invers. Ieşirile analogicesunt simplu de realizat cu ajutorul convertoarelor digital – analogice a căror tehnologie
PROCES
mag
istr
ale
inte
rne
32
biţ
i
EPROM
Program modulspecializat
RAM
Date locale
P
MagistraleAP
A0…A10
D0…D31
Controlermagistrale
Date Control
Unitateacentrală
Adrese
magistrala de control
magistrala de date D0…Dx
magistrala de adrese A0…Ay
INTERFAŢĂDEDICATĂ
PROCES
Motoare c.c.MPP
Traductoare poziţieI/O analogice
Reţele industriale
Modulspecializat
6.4. Utilizarea automatelor programabile pentru comanda dispozitivelor auxiliare 325
este bine pusă la puct şi nu ridică probleme tehnice sau de preţ deosebite. Intrărileanalogice sunt mult mai dificil de realizat şi au preţuri de cost ridicate (100...150€/canal). Marea majoritate a convertoarelor analog – numerice lucrează pe 10…12 biţicea ce limitează valoarea minimă a semnalului analogic ce poate fi prelucrat numericşi necesită timpi de conversie de 1...2 μs. Din acest motiv pentru adaptarea semnaluluide intrare se utilizează amplificatoare performante cu câştig programabil iar pentrureducerea costurilor, canalele analogice sunt multiplexate ceea ce conduce la oîntârziere suplimentară de încă 1 μs şi limitează frecvenţa maximă a semnalelorachiziţionate la 100 kHz.
Fig. 6.56. Echiparea standard a unui automat programabil de clasa medie GE Fanuc
Modulul cu intrări analogice şi prag reglabil asigură modificarea stării logice aunei variabile asociate intrării atunci când, semnalul analogic monitorizat depăşeşte ovaloare prestabilită. Aplicaţiile tipice ale acestor module sunt realizarea protecţiiloracţionărilor la: suprasarcină, depăşirea temperaturii maxim admise, supraturaţie, limităcurent pornire, etc.
Modulele de control a acţionărilor, figura 6.57.a., asigură comanda în viteză şipoziţie a uneia sau a mai multor axe (4…14), cu posibilităţi de interpolare, după o legede mişcare ce variază în timp în conformitate cu cerinţele procesului tehnologiccontrolat. Aceste module asigură acţionării poziţionări în limita unui nivel de eroareadmis cu respectarea parametrilor cinematici de mişcare. Modulele de acţionare suntspecial echipate pentru acţionări cu motoare de curent continuu sau motoare pas cupas, figura 6.57.b. Măsurarea poziţiei şi vitezei axei se realizează cu traductoareincrementale, absolute sau de tip resolver, figura 6.57.c., conectate la intrărispecializate care pot achiziţiona date de la 1…4 traductoare cu o rată de 0,8 ms pentrucontrolul poziţiei şi 32 ms pentru controlul vitezei. Modulele de acţionare actualepermit controlul parametrilor de mişcare (poziţie, viteză, acceleraţie, pantă acceleraţie– frânare, limite deplasare axă) în funcţie de timp prin programarea unui număr de200…500 puncte de control (set point). Pentru obţinerea unor sisteme de acţionare
Unitateacentrală
Modul specializat de comunicaţieRS232, DeviceNet, Ethernet
Sursa dealimentare
Modul ieşiri digitale Modul intrări digitaleModul specializat
intrări/ieşiri analogice
Borne de conexiunicu procesul
6. Comanda roboţilor326
numerică performante este necesară cunoaşterea modelului sistemului de acţionareinclusiv a sarcinii acţionate. Modulele permit calculul şi identificarea parametrilorsistemului prin aplicarea la intrări a unor semnale de excitaţie şi analiza semnalelor deieşire. Se identifică astfel un model real pe baza căruia se calculează parametriioptimizaţi ai regulatoarelor în funcţie de semnalele perturbatoare variabile. Controlulprecis al parametrilor acţionării este realizat cu regulatoare numerice PID sauregulatoare numerice adaptive de tip PIDD2, care se pot programa prin instrucţiunispeciale. Timpul de calcul afectat unei bucle de reglare este de 5…10 ms ceea ce estesatisfăcător pentru majoritatea sistemelor de acţionare a căror constantă de timp esteuzual de ordinul sutelor de ms. Module specializate cu funcţii de reglare PID suntdisponibile şi separat, un modul asigurând controlul pentru maxim 20…30 bucle dereglare într-un timp de 250 ms.
Fig. 6.57. Module specializate: a. modul acţionare motoare c.c. (GE Fanuc); b. modul acţionaremotoare pas cu pas (Allen-Bradley); c. Modul traductori poziţie (GE Fanuc)
Numărul de module specializate care pot lucra pe o platformă comună de APmultiprocesor depinde capacitatea unităţii centrale, posibilităţile de control şi transfer adatelor pe magistrale, ca urmare majoritatea producătorilor oferă sisteme ce pot lucracu maxim: 31 module specializate (Telemecanique TSX87), 64 module specializate(GE Fanuc 90-70 PLCs).
6.4.2. Funcţionarea automatelor programabile
Caracteristica unică a automatelor programabile o reprezintă funcţionarea după unciclu închis, în care instrucţiunile programelor de sistem şi aplicaţie sunt executatesuccesiv până la ultima după care ciclul de parcurgere a instrucţiunilor se reia cu primainstrucţiune. Un ciclu de funcţionare cuprinde două faze: faza de realizare a funcţiilor de sistem, care implică rularea subprogramelor interne
prin care este asigurată funcţionarea UC, funcţia de autodiagnoză, schimburile dedate cu exteriorul şi între modulele sistemului;
faza de rulare a programului utilizator, în care sunt executate funcţiile logice,calculele matematice solicitate prin instrucţiuni.
a. b. c.
6.4. Utilizarea automatelor programabile pentru comanda dispozitivelor auxiliare 327
Timpul de execuţie a unui ciclu în ipoteza parcurgerii tuturor instrucţiunilor (nu seexecută instrucţiuni de salt) este determinat în principal de următorii factori:capacitatea de procesare, numărul de canale I/O, mărimea programului utilizator.Capacitatea de procesare a unităţii centrale este exprimată prin timpul necesar deexecuţie a unei secvenţe de program de 1 kcuvânt de memorie (uzual 0,6 ms…0,22ms/k). Timpul de acces la un modul I/O digital cu 16 canale este în medie de 0,1…0,5ms, timp necesar pentru achiziţia sau transferul unui cuvânt de 16 biţi. Având învedere caracteristicile tehnice ale unui AP performant pe 16 biţi cu maxim 80 moduleI/O, 240 kocteţi memorie utilizator şi o capacitate de procesare de 0,22 ms/K, rezultădurata maximă a ciclului automatului de: ms40662201205080Tciclu ,,, ,
valoare care este în principal determinată de timpul necesar efectuării operaţiilor deintrare – ieşire. Tendinţa în controlul industrial este de a utiliza automate programabilecu configuraţii simplificate, plasate lângă proces, în locul celor centralizate cu multecanale I/O, al căror program este mai dificil de implementat în practică şi eventual dereconfigurat. Ca urmare în realitate chiar AP performante utilizează un număr multmai mic de module I/O (uzual 6…10) ceea ce limitează şi necesarul de memoriepentru programul utilizator la 8…32 Ko iar timpul real al ciclului de funcţionare scadela 6…10 ms. Modul general de execuţie al programelor (sistem operare + utilizator)începe cu faza de achiziţie a stării intrărilor, a căror valori sunt transferate în memoriaRAM de date, urmează execuţia instrucţiunilor din programul utilizator iar rezultateleecuaţiilor logice, calculelor matematice sunt stocate în subzonele corespunzătoare dinmemoria de date. În faza finală valorile variabilelor de ieşire din memoria RAM sunttransferate canalelor de ieşire, după care ciclul se reia în conformitate cu figura 6.58.a.:
Fig. 6.58. Tipuri de cicluri de funcţionare ale automatelor programabile: a. ciclu standard; b. ciclu cuintrări achiziţionate grupat şi ieşiri activate la cerere; c. ciclu distribuit cu activare I/O la cerere
Pentru o viteză mai mare de răspuns canalele de ieşire se pot activa la cerere adică
Citeşte intrări
Execuţieprogram
Scrie ieşiri
Citeşte intrărila cerere
Execuţieprogram
Scrie ieşirila cerere
Execuţieprogram
Scrie ieşirila cerere
Citeşte intrărila cerere
Citeşte intrări
Execuţieprogram
Scrie ieşirila cerere
Execuţieprogram
Scrie ieşirila cerere
c.b.a.
Tci
clu
6. Comanda roboţilor328
imediat ce o funcţie logică de ieşire a fost rezolvată, figura 6.58.b. sau pentru ointeractivitate îmbunătăţită cu procesul, se achiziţionează numai intrările şi seactivează numai ieşirile care intervin în secvenţa de program aflată în derulare curentă,figura 6.58.c. Scăderea timpului ciclului AP se poate face şi la nivel de programareprin utilizarea în cadrul programului principal a unui număr de subrutine (maxim60…200) care simplifică programarea şi reduc semnificativ numărul de instrucţiunicare se repetă (memoria utilizată). Organizarea ciclului de funcţionare devine mult maicomplicată în cazul în care intervin instrucţiunile de salt (ne)condiţionat respectiv încazul AP multiprocesor echipate cu module specializate ce efectuează şi calculenumerice (mari consumatoare de timp). În astfel de situaţii durata ciclului defuncţionare nu mai este constantă şi pentru a nu se perturba derularea secvenţială aprogramului principal, calculele numerice se derulează separat pe procesoarespecializate, interogate periodic de procesorul supervizor, urmând ca la finalizarearezultatelelor acestea să fie folosite. Deoarece în AP multiprocesor ciclul defuncţionare este aleator, în funcţie de cerinţele din proces, o măsură eficientă decontrol a derulării secvenţiale a programului principal constă în utilizarea unui punctde control (watchdog timer) care verifică reluarea ciclului într-un timp maxim permisşi evită blocarea programului (subrutinelor) într-o eventuală buclă infinită prinactivarea programului de autodiagnoză. Acest program este un program de sistemconceput să asigure supravegherea funcţionării corecte a procesorului, transferurilor dedate, alimentărilor. Este lansat la alimentarea automatului şi la începutul fiecărui ciclude funcţionare, trecerea testelor de securitate permite lansarea în execuţie aprogramului utilizatorului, conform schemei de principiu din figura 6.59.:
Fig. 6.59. Ciclu de funcţionare cu durată aleatoare
Schimbul de informaţii între diversele module ale automatului se face pemagistrala de date, fiind sincronizat în funcţie de semnalul de ceas intern prin comenzitransmise de procesorul central pe magistrala de control. În faza de achiziţie aintrărilor, procesorul rulează un subprogram al sistemului de operare prin careadresează succesiv, prin magistrala de adrese, pentru o perioadă de timp determinată,modulele de intrări conectate la senzorii din proces. Stările senzorilor sunt transferatepe magistrala de date în memoria RAM a sistemului. Există o corespondenţă riguroasăîntre adresele imaginilor biţilor asociaţi intrărilor şi ieşirilor şi bornele de racordare acablurilor la regleta automatului. Programul utilizator este executat de unitatea centrală
Subrutină 1
Subrutină 2
Subrutină 1
Programprincipalsecvenţial
instrucţiune de saltWatchdog
timer
Reset
Programautodiagnoză
6.4. Utilizarea automatelor programabile pentru comanda dispozitivelor auxiliare 329
sub controlul subprogramelor sistemului de operare. Execuţia unei instrucţiuni deprogram utilizator începe prin adresarea locaţiei curente a memoriei de program(E)EPROM. Adresa instrucţiunii curente este păstrată de contorul de program pânăcând logica de control îl incrementează/încarcă la/cu următoarea adresă executabilă.Instrucţiunea curentă este transferată pe magistrala de date într-un buffer deinstrucţiuni (o instrucţiune poate avea unul, două sau mai multe cuvinte de memorie).Formatul instrucţiunii din registrul de instrucţiuni corespunde formatului general:primii 8 biţi codifică operaţia de executat, următorii 3 biţi indică tipul operandului(subzona din memoria de date) iar ultimii conţin adresa operandului căruia i se aplicăoperaţia în execuţie. În funcţie de codul operaţiei şi tipul operandului, decodorul deinstrucţiuni va conţine adresa de început a subrutinei asociate operaţiei ce trebuieexecutată de automat şi care este stocată în memoria EPROM aferentă sistemului deoperare. Procesarea microinstrucţiunilor subrutinei asigură execuţia operaţiei curenteal cărei rezultat este transferat în subzona corespunzătoare memoriei de date. Dupăprocesarea logică a ultimei instrucţiuni a programului utilizator, unitatea centralăexecută subrutina sistemului de operare prin care noile stări ale variabilelor de ieşiresunt transferate succesiv din memoria de date spre canalele modulelor de ieşire pentrua controla stările elementelor de execuţie din proces.
Fig. 6.45. Execuţia instrucţiunilor în unitatea centrală
00001 00110010010
00110 00110010010
00001 00110010010
0000
2.048
Memorie programutilizator
magistrala de control
magistrala de date D0…Dx
magistrala de adrese A0…Ay
00110 00110010010
00110001 10010 0000000000000000 Contor program
Decodor instr.
mag
istr
ale
inte
rne
32
biţ
i
EPROMSistem operare
APLogică comandă
Registru instrucţiuni 32 biţi
RAM
Imagini IImagini O
Variabile MVariabile TVariabile C
microinstrucţiunisubrutine
Pcentral
MagistraleAP
00110001100
100
A0…A10
D0…D31
Controlermagistrale
Adrese/Date ControlUnitatea centrală
Buffer instrucţiuni
Date numerice D
Funcţii F
6.4. Utilizarea automatelor programabile pentru comanda dispozitivelor auxiliare 339
Tranziţia este o barieră ce separă două etape succesive şi care permite desfăşurareaunisens a procesului. Fiecărei tranziţii i se asociază o funcţie booleană numităreceptivitate care exprimă condiţia logică necesară pentru trecere. Pentru ca tranziţiade la o etapă la alta să fie autorizată sunt necesare două condiţii: receptivitatea să fie îndeplinită; etapa precedentă să fie activă.
Fig. 6.53. Condiţia de activare a unei tranziţii
Dacă mai multe etape concurente sunt condiţionate de aceeaşi tranziţie (ŞIConvergent), această situaţie se reprezintă prin două linii orizontale paralele şi condiţiade realizare a etapei următoare este determinată de activarea tuturor etapelor reunite şiîndeplinirea receptivităţii asociate tranziţiei unice. Regulile de funcţionare a metodeiGrafcet impun ca după efectuarea unei tranziţii etapa anterioară să treacă în stareinactivă:
Fig. 6.54. Tranziţia în cazul etapelor concurente (ŞI Convergent):a. tranziţie neautorizată; b. tranziţie autorizată; c. etapa următoare activă
Dacă o etapă şi receptivitatea asociată tranziţiei condiţionează activarea simultană aunor etape divergente (următoare) atunci se foloseşte opţiunea ŞI Divergent , figura6.55.a. Dacă în procesul de automatizare există două variante independente pentruactivarea unei etape atunci se utilizează opţiunea SAU Convergent, figura 6.55.b., iar
3 Pornire transportormotor M1
T007=1
2 Temporizare laintrare T007=3 s
etapă
receptivitate
etapă
Temporizare la acţionare TON cuvaloarea de 3 s
Ttranziţie activă dacă etapa 2 esteactivă şi T007=1
Activarea etapei 3 cu o întârziere de 3 sde la activarea etapei 2
3
2
C1=0
2
3
2
C1=1
2
3
2
C1=1
2
a. b. c.
6. Comanda roboţilor340
dacă procesul comportă la un moment dat o ramificaţie logică în care ambele ramuriindependente sunt condiţionate de aceeaşi etapă se foloseşte opţiunea SAU Divergent,figura 6.55.c.:
Fig. 6.55. Structuri concurente:a. ŞI Divergent cu activare simultană; b. SAU Convergent; c. SAU Divergent cu activare independentă
Exemplul 8. Realizarea saltului condiţionat în program respectiv repetarea în buclă a unei secvenţede program.
Fig. 6.56. Structuri Grafcet concurente
Pentru a reprezenta în program secvenţe de cod care se repetă de mai multe ori estesuficient ca secvenţa să fie prezentată explicit într-o zonă de program şi apoi de câteori este necesar, aceasta poate fi înlocuită cu un bloc de tip etapă care prezintă două
7
C1=1
5
4
2
C2=1
3 8
C7=1
a. b. c.
6
C1=0
C4=0
9 15
8
C9=0
C10
9
10
C9=1
C11
11-18
8
C9
C10
9
10
C11=1
C11
11
Salt condiţionaţ la etapa 11dacă etapa 8 este activă şi dacătranzitivitatea C9=0.Dacă C9=1 derulare normală aetapelor 9,10,11
Reluare condiţionată a etapelor9,10 atât timp cât etapa 10rămâne activă şi tranzitivitateaC11=0
6.4. Utilizarea automatelor programabile pentru comanda dispozitivelor auxiliare 341
bare verticale şi o eticheta care precizează numărul etapelor ce sunt incluse în acesta(numărul etapei de început şi de sfârşit). Pentru scrierea instrucţiunilor AP înconformitate cu structura logică creată prin Grafcet se asociază fiecărei etape ovariabilă internă de memorie care va fi imaginea stării etapei în program şi se respectăregulile menţionate anterior care conduc la ecuaţia generală:
ii1i1ii ECEEE (6.24)
unde Ei este etapa următoare etapei Ei-1 considerată activă; Ei+1 – etapa următoareetapei Ei considerată inactivă; Ci – receptivitatea asociată tranziţiei de la etapa Ei-1 laetapa Ei.
Exemplul 9. Se consideră un post robotizat format dintr-un robot, o masă rotativă indexată cu patrupuncte de lucru P0-P3 şi două transportoare tip bandă rulantă, figura 6.57. Robotul preiasemifabricatele încălzite la 300 C de pe transportorul 1 şi le depune pe masa indexată dacă postulP0 este liber. Masa rotativă permite rotiri cu câte 90 astfel încât semifabricatul trece succesiv prinposturile: P1 – presare la cald, P2 – găurire, P3 – poansonare cod fabricaţie. Blocarea mesei rotativeîn poziţie de lucru se realizează cu un cilindru pneumatic. Piesele prelucrate sunt preluate de robotdin postul P0 şi depuse pe transportorul 2. Controlul postului este asigurat de un automatprogramabil cu 32 I/O, ce controlează funcţionarea mesei rotative şi a transportoarelor şi carelucrează în ciclu sincronizat cu robotul.
Fig. 6.57. Elementele auxiliare ale unui post de prelucrări mecanice robotizat
Y1.1
Robot
Flux semifabricate Flux piese prelucrate
Y1.2
S1.1S1.2
Y2.1
Y5.2
S2.1
Y6.2
Y5.1
S3.2
Y4.1
Y3.2S5.1
S4.2
Y3.1
Y2.2
Y6.1
Y4.2
S3.1
S2.2
S5.2
S6.1S6.2
S4.1
S6.1
S8
S9S7
90
P0
P1
P2
P3
M1 M2
6. Comanda roboţilor342
Modul de alocare a variabilelor de intrare – ieşire şi funcţiile îndeplinite de senzorii şi elementele deexecuţie din sistem sunt prezentate în Tabelul 6.12.:
Tabelul 6.12. Alocare variabile I/OSimbol în
schema electricăVariabilă
I/OFuncţie în proces
S1.1. I000 Confirmare rotire masă indexată cu 90 S1.2. I001 Confirmare retragere cilindru rotire masăS2.1. I002 Confirmare indexare (blocare) masă în poziţia de lucruS2.2. I003 Confirmare deblocare masă rotativăS3.1. I004 Confirmare presă ridicatăS3.2. I005 Presostat confirmare presiune maximă de presareS4.1. I006 Confirmare post presare avansat (în poziţie de lucru)S4.2. I007 Confirmare post presare retrasS5.1. I008 Confirmare post găurire avansatS5.2. I009 Confirmare post găurire retrasS6.1. I010 Confirmare post poansonare avansatS6.2. I011 Confirmare post poansonare retrasS7 I012 Confirmare prezenţă semifabricat la încărcareS8 I013 Confirmare prezenţă piesă în post P0 după încărcare/ la descărcareS9 I014 Confirmare prezenţă piesă prelucrată pe transportor după descărcare
I020 Confirmare robot în poziţie de aşteptareY1.1. O000 Comandă distribuitor pneumatic rotire masă rotativăY1.2. O001 Comandă retragere cilindru rotire masăY2.1. O002 Comandă indexare (blocare) masă în poziţia de lucruY2.2. O003 Comandă deblocare masă rotativăY3.1. O004 Comandă ridicare presăY3.2. O005 Comandă presare semifabricatY4.1. O006 Comandă avans post presare (în poziţie de lucru)Y4.2. O007 Comandă retragere post presareY5.1. O008 Comandă avans post găurireY5.2. O009 Comandă retragere post găurireY6.1. O010 Comandă avans post poansonareY6.2. O011 Comandă retragere post poansonareM1 O012 Comandă motor acţionare transportor semifabricateM2 O013 Comandă motor acţionare transportor piese prelucrate
O020 Autorizare ciclu 1 robot (încărcare semifabricat)O021 Autorizare ciclu 2 robot (descărcare piese prelucrate)T000 Temporizare TMON=6s, timp funcţionare transportor 2
Pentru desfăşurarea în bune condiţii a ciclului de automatizare este necesar ca programul AP sărespecte următoarele condiţii: comanda rotirii mesei O000=1 nu poate fi făcută până când nu există confirmarea că s-a facut
deblocarea sa I003=1 şi unităţile de prelucrare sunt retrase I007, I009, I011=1; avansul unităţilor de prelucrare nu poate fi făcut decât dacă masa este indexată şi este confirmată
de către unitatea de comandă a robotului poziţia de aşteptare a acestuia I020=1; încărcarea pieselor semifabricat în postul P0 nu poate fi făcută decât dacă masa rotativă este
blocată, există confirmarea că s-a depus piesa prelucrată anterior pe banda transportoare,I014=1, nu există piesă semifabricat I013=0, s-a emis de către AP autorizarea pentru ciclul demanipulare piese O020=1 şi există piesă semifabricat pe banda transportoare I012;
Având în vedere condiţiile menţionate, în figura 6.68. se prezintă programul de control aldispozitivelor auxiliare prin utilizarea metodei Grafcet. S-a prezentat numai modulul de funcţionare înciclu automat.
6.4. Utilizarea automatelor programabile pentru comanda dispozitivelor auxiliare 343
Fig. 6.58. Digrama Grafcet pentru modulul de funcţionare în ciclu automat (parţial)
Modulele de funcţionare în ciclu manual şi avarie necesită definirea unui număr suplimentar devariabile şi în general pot avea o complexitate mai mare decât a modulului aferent funcţionării înciclu automat deoarece trebuie să răspundă unui număr mult mai mare de situaţii (faze) posibil deîntâlnit în practica de exploatare.
0
I020
1
I003I007I009I011I012
Fază iniţializare: O003, O004, O007, O009, O011=1
2
I000I003
Rotire masă O000=1 (Y1.1)
3
I000I002
Indexare masă O002=1 (Y2.1)
6
I012
Pornire transportor1 O012=1 (M1)
7
I013I020
Oprire transportor O012=0;Autorizare ciclu 1 robot O020=1
8
I004I006
Avans presă O006=1 10
I010
Avans poanson O010=19
I008
Avans găurire O008=1
I013I014 I013
4 Autorizare ciclu 2 robot O021=1(M1)
5 Pornire transportor2 O013=1 (M2)
I014I020
6-7 Încărcare semifabricat în P0
T000
I013I020
1-3 Rotire – indexare masă rotativă
I000I002
11
I005
Presare O005=1
12
I004
Ridicare O004=1
13
I007
Retragere presă O007=1 11
I009
Retragere găurire O009
I011
Retragere poanson O011=115
Reset Watchdog timer16
6. Comanda roboţilor330
6.4.3. Principii de programare a automatelor programabile
Rularea ciclică a programului aplicaţie în automatele programabile a impusfolosirea unor principii de programare diferite de cele utilizate în mod curent deinformaticieni chiar dacă, în prezent, setul de instrucţiuni al ambelor sisteme estefoarte apropiat Automatele programabile dispun de un set de instrucţiuni de bazăfoarte puternic (chiar pentru seriile microAP) care totalizează 100…150 funcţii, la carese adaugă în funcţie de clasă şi echipare noi instrucţiuni specifice modulelorspecializate.
Primul limbaj de programare dezvoltat de constructorii de AP a fost limbajul cucontacte care este utilizat şi în prezent datorită similitudinilor cu schemele electrice deacţionare, fapt ce facilitează exploatarea şi înţelegerea programului de un personal fărăpregătire superioară. Funcţiile logice realizate tradiţional prin conexiuni complexeîntre diversele contacte ale echipamentelor electrice sunt înlocuite prin funcţii logicestabilite între variabile de program, cărora li se asociază stările mărimilor fizice dinprocesul controlat. Mărimile din proces sunt variabile de intrare I, variabie de ieşire O,variabile interne de memorie M, contoare de evenimente C, canale de temporizare T,regiştri de date R, la care se adaugă variabilele de sistem S proprii automatului, fiecareavând un rol funcţional bine precizat şi stabilit de proiectant în tabelul de alocarevariabile conform exemplului prezentat în Tabelul 6.5.:
Exemplul 1. Modul de organizare şi asociere a variabilelor din programul AP.
Tabelul 6.5. Tabel alocare variabileSimbol aparat
în schemaelectrică
Variabilăasociată
Datevariabilă
Rol funcţional în proces/program
S1 I000 1 bit (hard) Selector ciclu funcţionare în mod Manual… … …
S23 I035 1 bit (hard) Senzor confirmare prezenţă piesă în post găurireI035…I048 Neutilizat
K1 O000 1 bit (hard) Contactor trifazat pornire motor bandă rulantă M1… … …Y1 O011 1 bit (hard) Distribuitor hidraulic rotire masă transfer flux1
O012…O016 Neutilizat- C000… 16 biţi (soft) Contor (înainte) numărare piese bune
C008…C255 Neutilizat- T000… 16 biţi (soft) Temporizator (acţionare) impuls ungere ghidaj
M000… 1 bit (hard) Stare intermediară avarie sistem ventilaţieS50 R000… 10 biţi (hard) Valoare digitală poziţie masă indexată1 (freze) de
la traductor absolut poziţie- S000… 1 bit Indică baterie descărcată CPU – setări firmă
P1 AI001… 16 biţi (hard) Intrare analogică senzor temperatură cuptor1V6 AO001… 16 biţi (hard) Ieşire analogică prescrisă turaţie motor avans6… … Continuare
Tehnica limbajului cu contacte conduce la diagrame în scară (Ladder Diagram)simplu de înţeles, de urmărit ca funcţii logice şi în consecinţă uşor de depanat. Scriereaprogramului se face linie cu linie de la stânga la dreapta şi în ordinea execuţiei. Pentru
6.4. Utilizarea automatelor programabile pentru comanda dispozitivelor auxiliare 331
editarea programului se utilizează programe de firmă (firmware) care au capacitatea dedetectare a erorilor, permit inserarea de comentarii pentru a facilita înţelegereaintenţiilor programatorului şi pot efectua translarea automată a schemelor logice cucontacte în instrucţiuni specifice automatului (Instructions List). Principalele funcţiilogice (Bit Operation Functions) şi semnificaţia lor sunt prezentate în Tabelul 6.6.
Tabelul 6.6. Principalele funcţii logice utilizate pentru programarea APSimbol electric Simbol AP
Ladder DiagramSimbol AP
Instructions ListSemnificaţie în program
LOAD I001Încărcare acumulutator cu stareavariabilei (de tip I, O, C, T, M, R, S)
LOAD NOT I004Încărcare acumulutator cu stareanegată a variabilei
LOAD I001OR T002
SAU logic între varibile binare(word), rezultatul memorat înacumulator (registru date)
LOAD I001AND M002
ŞI logic între variabile binare (word),rezultatul memorat în acumulator(registru date)
LOAD R001XOR R002OUT R003
SAU EXCLUSIV între variabileword, rezultatul memorat în registrulR003
LOAD condiţieSHIFTL R001
003OUT R002
Deplasare stânga/dreapta a biţilor uneivariabile word (16 biţi) prezente laintrarea IN cu un număr de poziţii datde constanta de la intrarea N. Stareabitului ce intră în registru este la B1iar a ultimului bit ieşit este la B2.Rezultatul este memorat în R002.
LOAD condiţieROR R001
005OUT R002
Rotire stânga/dreapta a biţilorvariabilei word de la intrarea IN cu unnumăr de poziţii dat de constanta de laintrarea N. În cazul ROR, bitul ce iesedin registru (LSB) este introdus prinpartea opusă a acestuia (MSB).Rezultatul este memorat în R002.
LOAD condiţieSETBIT R001
003CLEARBIT R001
005
Activare în 1 logic/ştergere 0 logic, abitului variabilei word de la intrareaIN, menţionat prin valoarea constanteisau conţinutul registrului de laintrarea BIT.
vezi exemplul 3
Comutator secvenţial cu deplasare înfuncţie de intrarea DIR. Bitul precizatde valoarea intrării STEP este setat în1 iar ceilalţi biţi ai registrului de lucrude la ST sunt setaţi în 0. Deplasareabitului activ în R006 se face în limitavalorii registrului de control R031=10
S1 I001
S4 I004
S1
KT2
I001
T002
S1 K2 I001 M002
XORWORD
Econdiţie
IN1R001
IN2R002 Q
R003
OK
SHIFTLWORD
Econdiţie
INR001
NNB 3 Q
M002
OK
B1M001
B2
R002
NB 3
RORWORD
Econdiţie
INR001
NNB 5
Q
OK
R002
SET BITWORD
Econdiţie
INR001
BIT(R042)
OK
R030…R032
BIT SEQ10
Econdiţie
RM001
DIRM002
R006
OK
STEPNB2
ST
6. Comanda roboţilor332
Exemplul 2. Blocul reprezentat de funcţia logică XOR WORD realizează funcţia SAU EXCLUSIV întrecuvintele de memorie aflate la adresele R001 şi R002, de fiecare dată când condiţia I001= 1 esteadevărată. Rezultatul procesat este memorat în locaţia de memorie cu adresa R003. De la un ciclu laaltul conţinutul locaţiilor de memorie aflate la adresele R001 şi R002 se poate schimba.
Fig. 6.46. Funcţia logică SAU EXCLUSIV
Exemplul 3. Realizarea unui comutator secvenţial pas cu pas ce setează succesiv, în mod sincron, biţiiregistrului de lucru R006 care activează canalele de ieşire asociate elementelor de execuţie cecomandă un manipulator. Blocul comutator este activat de un semnal de tact Q000 provenit de la ungenerator de impulsuri cu frecvenţa reglabilă (vezi exemplul 6). Semnalul de pornire în ciclu este datde intrarea I000 activată la apăsarea butonul de start (fără reţinere) şi care produce resetarea biţilorregistrului de lucru R006 mai puţin a bitului 1 care este setat în starea 1 logic. Modul de parcurgere asucesiunii de mişcări este determinată de activarea/dezactivarea variabilei de memorie M002, careasigură incrementarea/decrementarea pasului curent, memorat în registrul de control pas curentR030. Acest registru poate fi setat ca retentiv astfel încât la oprirea manipulatorului, poziţia curentă(numărul pasului) este salvată în memoria de date. La pornire, valoarea acestui registru estetransferată automat intrării STEP prin care se setează numărul pasului de pornire (prin definiţie este1). Numărul de paşi este stabilit de valoarea registrului de control mărime secvenţă paşi R031=10.
6.47. Comutator secvenţial pas cu pas utilizat pentru comanda unui manipulator automat
R003
XORWORD
E
IN1R001
IN2R002
Q
OK
I0011 1 1 0 1 0 0 0 1 1 1 0 0 0 0 1
1 0 1 0 1 1 1 0 1 0 0 0 1 0 1 1
0 1 0 0 0 1 1 0 0 1 1 0 1 0 1 0
R001
R002
R003
Conţinut memorie RAM
I001 – confirmare rotire stânga axa 1;I002 – confirmare ridicare axa 2;I003 – confirmare avans axa 3;…I010 – confirmare rotire dreapta axa 1.
I000
Ridicare axa 2
R030…R032
BIT SEQ10
E
R
DIR
R006
OK
STEP
ST
Q000
M002
R006.1Q001
Rotire stânga axa 1
R006.2 Q002
R006.3 Q003Avans axa 3
I001
I002
I003
R006.10 Q010I010Rotire dreapta axa 1
6.4. Utilizarea automatelor programabile pentru comanda dispozitivelor auxiliare 333
Funcţiile de ieşire (Relay Functions) asigură activarea canalelor de ieşire prinintermediul cărora sunt comandate elementele de execuţie: bobine contactoare, relee,bobine distribuitoare hidraulice, pneumatice, servomotoare, lămpi semnalizare. Înprocesul de automatizare este uneori necesar să se menţină starea variabilelor de ieşireşi la apariţia unei situaţii de avarie determinată de întreruperea alimentării cu energiesau la modificarea modului de funcţionare Run – Stop – Run. Pentru aceste situaţii esteposibil să se reţină starea variabilelor de ieşire prin setarea acestora de tip retentiv.Starea curentă a variabilelor retentive (numai de tip O, M, R, AO) este salvată înmemoria de date protejată, prin alimentarea de la o sursă suplimentară sausupercapacitor ce asigură o autonomie de câteva luni.
Tabelul 6.7. Principalele funcţii de ieşire utilizate pentru programarea APSimbol electric Simbol AP
Ladder DiagramSimbol AP
Instructions ListSemnificaţie în program
OUT O001Activare variabilă ieşire asociată (O,M, S, R, G) fără reţinere stare înmemorie după oprire sau defect PLC
OUT R001Activare variabilă ieşire asociată cureţinere stare în memorie după opriresau defect PLC (variabilă tip retentiv)
OUT O001Activare variabilă ieşire asociată dacăîn ciclul anterior condiţia de activare afost 0 iar în ciclul curent este 1
OUT O001Activare variabilă ieşire asociată dacăîn ciclul anterior condiţia de activare afost 1 iar în ciclul curent este 0
SET M003Activare variabilă ieşire asociată pecondiţia de activare şi menţinere pânăla o comandă RESET
RST M003Dezactivare variabilă ieşire asociatăpe condiţia de activare şi menţinerepână la o comandă SET
Exemplul 4. Comanda şi protecţia termică a unui motor electric de curent continuu. Pornireamotorului se face prin acţionarea butonului S1 căruia i s-a asociat variabila de intrare I000 şiactivarea ieşirii O000 ce alimentează bobina contactorului K1. Oprire motorului se face la acţionareabutonul S2 (I001) sau la suprasarcină când se activează automat protecţia termică F2(I002).
Fig. 6.46. Diagrama cu contacte şi secvenţa de cod pentru programul de comandă a unui motor
O001K1
R001
MTIP Word data
Traductor poziţie
O001
O001
M003
S
H1Avarie răcire
H1Avarie răcire M003
R
I000
O000
I001 I002 O000
00 LOAD I000 Acţionare buton pornire S1 (intrare I000);01 OR O000 SAU automenţinere prin ieşire O000;02 AND NOT I001 ŞI neacţionare buton stop S2 (intrare I001);03 AND NOT I002 ŞI neacţionare protecţie termică F2 (intrare I002);04 OUT O000 Alimentare bobină releu K1 (activare ieşireO000).
S1
F2
K1
F1
M1M=
K1
F2
S2
K1
6. Comanda roboţilor334
Dezvoltarea programelor complexe necesită utilizarea unor funcţii de control aderulării fluxului de instrucţiuni (Control Functions). Acestea au rolul de a simplificaoperaţiile de programare, oferă claritate şi posibilităţi sporite de implementare şidepanare a aplicaţiilor.
Tabelul 6.8. Principalele funcţii de control utilizate pentru programarea APSimbol electric Simbol AP
Ladder DiagramSimbol AP
Instructions ListSemnificaţie în program
DO IO
Funcţia asigură citirea la cerere, peparcursul unui ciclu, a unui grup deintrări sau ieşiri începând de la adresaindicată la ST şi până la cea indicatăla END. Dacă este specificată o adresăla ALT noile valori ale intrărilor suntmemorate aici, sau pentru ieşiri sunttransferate de aici.
LOAD I001CALL Sub1
Execuţia unei subrutine Sub1 urmatăde revenirea în program lainstrucţiunea următoare
LOAD I001JMP eticheta1
Salt codiţionat de starea variabileiI001, peste un număr de instrucţiuni,până la adresa menţionată
MCS 4Secvenţăautomatizare
LOAD I002MCS 4
Lansarea condiţionată în execuţie asecvenţei de control numărul 4 (setinstrucţiuni), la activarea variabilei deintrare I002
SecvenţăautomatizareENDMCS 4
…OUT O022ENDMCS 4
Marcarea sfârşitului secvenţei decontrol numărul 4
END Marcarea sfârşitului de program
Exemplul 5. Secvenţa de control MCS0 este activată de intrarea I000 şi determină execuţiacondiţionată a instrucţiunilor care urmează până la ENDMCS0. În lipsa condiţiei de validare,instrucţiunile sunt executate cu dezactivarea ieşirilor (Q001 = 0) mai puţin pentru canalele de ieşirecu stare setată care îşi menţin starea (dacă Q002 este setată activă, rămâne Q002 = 1).
Fig.6.49. Diagrama cu contacte pentru o secvenţă de control
ENDMCSn
n = 0…7
(R001)
DO IO
condiţie
STI007
ENDI011
OK
ALTM001
I001
>> eticheta1
I001
CALLSub1
MCSn
n = 0…7I001
END
MCS0
I000
T003
Q001
Condiţie activare secvenţăMCS0, I000=1
Q001=I000*I001
Q002
I001
I002S
ENDMCS0
Q002=1
Sfârşit secvenţă control MCS0
6.4. Utilizarea automatelor programabile pentru comanda dispozitivelor auxiliare 335
Pentru controlul unor etape ale proceselor de automatizare foarte important estecontrolul precis al timpului cât acestea sunt active sau inactive. Din acest motivautomatele programabile dispun de diverse tipuri de canale de temporizare a cărorbază de timp poate fi setată într-un interval larg: 0,01 s…1 (60) s. Pentru numărareaevenimentelor din proces (număr de cicluri, piese bune, piese rebut, , etc.) se utilizeazăcontoare de evenimente cu numărare într-o singură direcţie (înainte sau înapoi)respectiv cu numărare în ambele direcţii (la evaluarea numărului de paşi elementariefectuaţi în operaţiile de poziţionare a axelor ).
Tabelul 6.9. Principalele funcţii de temporizare, numărare utilizate pentru programarea APSimbol electric/
SemnalSimbol AP
Ladder DiagramSimbol AP
Instructions ListSemnificaţie în program
LOAD T001_10MSOUT Q011 (5 ms)
Impuls cu durată fixă şi DA = 50 %:0,01 s; 0,1 s; 1 s; 60 s.
LOAD I020D Q011
LOAD I020D NOT Q011
Impuls activat pe frontulcrescător/descrescător al uneivariabile (senzor activ un timp foartescurt – risc să nu poată fi citit).Impulsul este valid numai pe durataciclului în desfăşurare.
LOAD I003TON T001
40LOAD T001OUT Q005
Canalele de temporizare (TON,TOFF, TMR, TMON) generează unanumit tip de întârziere, faţă demomentul validării condiţiei dedeclanşare, dat de baza de timpselectată şi valoarea presetată PV.
LOAD I008CTU C001
10LOAD C001OUT Q005
Contoarele cu numărare înainte,înapoi sau în inel, numărăevenimentele pînă la valoareapresetată PV, moment în care esteactivată ieşirea Q. Resetareacontorului se face la activarea intrăriiR sau la depăşirea valorii setate(CTR). Ieşirea CV contorizeazăvaloarea curentă din numărător.
LOAD I000AND NOT I001CTUD C002
20LOAD C002OUT Q005
Contoarele cu numărare înainte şiînapoi, numără evenimentele într-unsens sau celălalt în funcţie de condiţiade intrare activată. Dacă valoareapresetată PV este egală cu valoareanumărată se activează ieşirea Q.
LOAD I001HSC Q001
Numărătoarele de mare viteză HSCutilizează o intrare de numărare Cpentru semnale de frecvenţă ridicată(10 kHz) şi o ieşire Q activată înfuncţie de modul de lucru setat prinprogramarea registrelor: limite denumărare LL, HL, valoare activareieşire ONP, valoare dezactivareOFFP, bază timp TB, presetare PV
T001_10MS
T_xxxx
Q011
Tciclu AP
D
I020 Q011
DNOT
I020 Q011
T001
TON0,1x40
condiţie
Rcondiţie
PV17
Q
CV40
T1
T2
C001
CTU(CTD;CTR)
condiţie
RM003
PV3
Q
CV10
UP/D
C002
CTUD
condiţie1
RM004
PV8
Q
CV20
condiţie2UP
D
AR030
HSCcondiţie
LLR001
PV
R004Q
ONP
R003
C
HLR002 R005OFFP
R006TB
6. Comanda roboţilor336
Exemplul 6. Realizarea unui generator de semnal cu factor de umplere reglabil prin utilizarea unuicanal de timp cu temporizare la acţionare T001 (reglează timpul t1) şi a unui canal de timp cutemporizare la revenire T002 (reglează t2).
Fig.6.50. Diagrama cu contacte şi secvenţa de cod pentru un generator de semnal
Operaţiile matematice sunt indispensabile în realizarea programelor complexe carenecesită efectuarea unor calcule pentru determinarea deplasărilor reale, calcululadaptiv al parametrilor de proces prin utilizarea unor formule fizice, etc. Unitateacentrală a automatelor programabile actuale dispune de funcţii matematice suficient deputernice astfel încât să execute calculele solicitate în controlul proceselor deautomatizari industriale.
Tabelul 6.10. Principalele funcţii de matematice utilizate pentru programarea APSimbol electric Simbol AP
Ladder DiagramSimbol AP
Instructions ListSemnificaţie în program
LOAD I005ADD
Funcţiile matematice standard sunt:Adunarea (ADD) , Scăderea (SUB),Înmulţirea (MUL), Împărţirea (DIV),Calcul rest (MOD). La validareacondiţiei se efectuează operaţia asupraoperanzilor de la intrările IN1 şi IN2.Dacă rezultatul calculelor de la ieşireaQ se încadrează în domeniul de calculse activează ieşirea OK.
LOAD I001ASIN (0.2)
Funcţiile matematice specialeacţionează asupra unui singuroperand: Radical (SQRT), Sinus(SIN), Cosinus (COS), Tangentă(TAN) şi inversele lor, Logaritm(LOG), Exponenţială (EXPT),Conversie (RAD/DEG).
Funcţia Scalare (SCALE) măsoarădomeniul de variaţie OHI, OLO, alunei mărimi analogice ce acţioneazăasupra intrării IN. Domeniul de lucrueste definit de valorile IHI, ILO.Ieşirea Q conţine valoarea curentă.
I000
END
Q001
LOAD I0 Validare generator semnal;ANDNOT T2 Condiţie lansare temporizare T1;TON T1 Setare parametri canal
40 temporizare T1 la 4 s;LOAD T1 Citire stare canal timp T1;TOFF T2 Setare parametri canal
20 temporizare T2 la 2 s;LOAD T2 Citire stare canal timp T2;OUT Q1 Validare ieşire dacă T2=1;END Sfârşit program.T002
T002T001
TON0,1x40
Rcondiţie
PV
Q
CV40T002
TOFF0,1x20
Rcondiţie
PV
Q
CV40
T001
ADDINT
condiţie
IN1R003
IN2R023
QK
Q10
ASIN
condiţie
INR023
QK
Q0.2
SCALEINTcondiţie
ILOR121
OHIR023
QK
QR122
IHIR120
OLOR123
INAI004
6.4. Utilizarea automatelor programabile pentru comanda dispozitivelor auxiliare 337
Funcţile matematice operează numai cu operanzi de acelaşi tip (16 sau 32 biţi) iarrezultatele trebuie memorate în zone de memorie sau regiştri cu aceeaşi mărime,pentru care s-a precizat tipul de variabilă: tip întreg cu semn (INT), tip întreg cu semnîn dublă precizie (DINT), tip real (REAL).
Exemplul 7. Calculul restului REST împărţirii numărului de piese sortate şi verificate NSORT, aflateîn containerul de ambalare, la numărul de piese dintr-o cutie de ambalaj NCUTIE. Rezultatulîmpărţirii este memorat în registrul R023 utilizat ca valoare presetată pentru numărătorul înainteC001 care numără (intrarea I022) cutiile ambalate ce trec spre magazia de stocare. Valoarea curentăa cutiilor ambalate este stocată în memoria cu reţinere M041. Sfârşitul fazei de ambalare estesemnalizat de activarea ieşirii Q021 care permite trecerea la faza următoare a procesului.
Fig.6.51. Diagrama cu contacte pentru o secvenţă de calcule matematice
Utilizarea senzorilor inteligenţi, a modulelor inteligente, a sistemelor decomunicaţie prin reţele industriale presupune şi realizarea schimbului de date,procesate în diverse formate, între aceste module şi unitatea centrală. Funcţiile carefacilitează şi controlează transferurile de date sunt Funcţiile de Transfer Date (MoveData).
Tabelul 6.11. Principalele funcţii pentru transferul datelor utilizate la programarea APSimbol electric Simbol AP
Ladder DiagramSimbol AP
Instructions ListSemnificaţie în program
LOAD I005MOV R020
R030
Funcţia Deplasează date (MOVExxxx), copie o dată (în format bit)dintr-o locaţie de memorie specificatăla intrarea IN în locaţia de destinaţiespecificată la ieşirea Q.
LOAD I001BLKMV R023
Funcţia Deplasează bloc (BLKMVINT) copie un bloc de date format dinşapte constante, de la intrărileIN1...IN7, în locaţiile de memoriecorespunzătoare, începând cu locaţiade memorie indicată la ieşirea Q.
MODINT
IN1NSORT
IN2REST
QK
QNCUTIE
END
I022
T001
C001
CTU
M
RM003
PV4
Q
CVR023
UP
M041
Q021
DIVINT
IN1NSORT
IN2R023
QK
QNCUTIE
Calculul numărului de cutii R023 şi alpiselor bune neambalate REST;
Sfârşit fază curentă de ambalare;
Numărare cutii ambalate stocate în magazie;
MOVEWORD
2condiţie
INR030
QK
QR020
BLKMVINTcondiţie
IN2CON2
IN3 R023
QK
Q
CON3
IN1CON1
IN4CON4
IN5CON5
IN6CON6
IN7CON7
6. Comanda roboţilor338
LOAD I001BLKCLR R020
Funcţia Şterge bloc (BLKCLRWORD) şterge datele din memorieîncepând de la adresa indicată laintrarea IN, pe o lungime egală cuvaloarea de definiţie a variabilei.
Bloc comandă (IN):
adr lungime blocadr+1 cu/fără confirmareadr+2 stare pointer mem.adr+3 offsetadr+4 timp stare activăadr+5 timp comunicaţieadr+6 date transmise…adr+133
Această funcţie asigură comunicaţiaUC cu modulele specializate. Lavalidarea funcţiei, blocul de comandăa cărui adresă de început se găseşte laintrarea IN este transmis cătremodulul a cărui adresă (rack/slot) estespecificată la intrarea SYSID. Portulutilizat pentru comunicaţie estespecificat la intrarea TASK. O eroarede comunicaţie activează ieşirea FT.
Programarea automatelor programabile cu GRAFCET. Funcţiile prezentatereprezintă baza minimă de plecare în programarea automatelor programabile.Utilizarea convenabilă a acestora permite rezolvarea majorităţii problemelor legate decontolul proceselor simple de automatizare. În cazul proceselor complexe careutilizează AP din clasa superioară cu sute sau mii de canale I/O, metodele de sintezăminimală a funcţiilor logice (metoda Huffman), aplicabile în cazul proceselor simple,devin inoperabile datorită faptului că preţul calculelor de minimizare nu este justificatprin căştigul realizat la nivelul economiei de resurse sau al simplificării înţelegeriifuncţiilor de comandă. În plus, în prezent AP lucrează la viteze mari, dispun de omultitudine de funcţii performante (implementate software) care simplifică foarte multsarcina programatorului, constrângerile acestuia şi conduc implicit la realizarea unorscheme simple, uşor de urmărit şi puţin probabil susceptibile unor operaţii deminimizare. Din păcate metodele intuitive de programare, utilizate de practicieni, suntbazate pe experienţa acumulată şi ca urmare imposibil de generalizat sau transmis.
Grafcet este o metodă grafică neminimală, sistematică, simplă şi operaţională deprogramare a AP bazată pe conceptul de etapă şi tranziţie. Prin etapă se defineşte ofază a procesului automat căreia i se poate asocia o acţiune stabilă asupra sistemului. Oetapă este reprezentată printr-un dreptunghi numerotat şi un dreptunghi ce conţine untext care descrie acţiunea asociată. O etapă este activată dacă este îndeplinită condiţiadin amonte, lucru marcat printr-un cerc plin, poziţionat în interiorul dreptunghiuluinumerotat ce indică faza, conform figurii 6.52.:
Fig. 6.52. Tipuri de etape: a. etapă inactivă; b. etapă iniţială; c. etapă activă şi acţiunea asociată
BLKCLRWORD
condiţie
IN
QK
R020
COMMREQcondiţie
INR001
TASK
FT
R003
C
SYSIDR002
6
a.
6 Pornire transportormotor M3
I002M023T007
c.
10
b.