+ All Categories
Home > Documents > Probleme automate programabilr

Probleme automate programabilr

Date post: 03-Jun-2018
Category:
Upload: mares-alexandru
View: 218 times
Download: 0 times
Share this document with a friend

of 62

Transcript
  • 8/12/2019 Probleme automate programabilr

    1/62

  • 8/12/2019 Probleme automate programabilr

    2/62

    47

    Programul principal este prezentat n figura 5.2

    Prob

    2

  • 8/12/2019 Probleme automate programabilr

    3/62

    48

    Fig. 5.2 Programul principal

    Prob

    3

  • 8/12/2019 Probleme automate programabilr

    4/62

    49

    Varianta 2: implementarea in limbajul Ladder DiagramPentru controlul acestei aplicaii s-a ales un automat programabil de tip Allen Bradley pentru care s-adezvoltat o diagram Grafcet (fig 5.3) i un program de tip Ladder Diagram (fig. 5.4).

    Fig.5.3 Diagrama Grafcet

    Asocierea intrrilor i ieirilor fizice cu bii din regitrii de intrare / ieire este prezentat n tabelul 5.1:

    Tabelul 5.1

    Intrare fizic Adres intern Ieire fizic Adres intern

    Pornire I:1/1 M1S O:3/1

    l1 I:1/2 M1D O:3/2

    l2 I:1/3 M2S O:3/3

    l3 I:1/4 M2J O:3/4

    l4 I:1/5

    Asocierea etapelor cu bii din fiierul de bit B3 i alegerea fiierului de timer este pezentat n tabelul5.2:

    Prob

    4

  • 8/12/2019 Probleme automate programabilr

    5/62

    50

    Tabelul 5.2

    Etapa Adresa bit Temporizare Fiier de timer

    1 B3/1 Temporizare 1 T4:0

    2 B3/2

    3 B3/3

    4 B3/4

    5 B3/5

    6 B3/6

    7 B3/7

    8 B3/8

    Diagrama Ladder este prezebta n continuare:

    B3 B3||--- [OSR] ------------------------------------------------------------------------------------- (L) --------------||

    0 1

    B3 O:3||----] [-------------------------------------------------------------------------------------|---- (U) ----|---------||

    1 | 1 || O:3 ||---- (U) ----|| 2 || O:3 ||---- (U) ----|| 3 || O:3 ||---- (U) ----|

    4

    B3 I:1 B3||----] [------] [--------------------------------------------------------------------------|---- (U) ----|---------||

    1 1 | 1 || B3 ||---- (L) ----|

    2

    B3 O:3||----] [------------------------------------------------------------------------------------------ (L) -------------||

    2 3

    B3 I:1 B3||----] [------] [--------------------------------------------------------------------------|---- (U) ----|---------||

    2 3 | 2 || B3 |

    |---- (L) ----|3

    B3 O:3||----] [-------------------------------------------------------------------------------------|---- (U) ----|---------||

    3 | 3 || O:3 ||---- (L) ----|

    2

    Prob

    5

  • 8/12/2019 Probleme automate programabilr

    6/62

  • 8/12/2019 Probleme automate programabilr

    7/62

    52

    B3 I:1 B3

    ||----] [------] [--------------------------------------------------------------------------|---- (U) ----|---------||7 4 | 7 |

    | B3 |

    |---- (L) ----|8

    B3 O:3

    ||----] [-------------------------------------------------------------------------------------|---- (U) ----|---------||8 | 1 |

    | O:3 ||---- (L) ----|

    3

    B3 I:1 B3||----] [------] [--------------------------------------------------------------------------|---- (U) ----|---------||

    8 2 | 8 || B3 ||---- (L) ----|

    1

    Fig.5.4 Diagrama Ladder

    Prob

    7

  • 8/12/2019 Probleme automate programabilr

    8/62

  • 8/12/2019 Probleme automate programabilr

    9/62

    54

    Dicionarul de variabile globale:

    Variabile deintrare digitale:

    M : buton de pornire micare oscilatorie P : buton de oprire motor E : buton de retragere n poziia de origine RST : buton de repornire L0 : limitator stnga L1 : limitator dreapta

    Variabile de ieire digitale:

    MS : comand motor stnga MD : comand motor dreapta

    Variabile interne de tip Boolean:

    oprit : are valoarea TRUE cnd micarea oscilatorie este oprit v_redge : necesar funciei REDGE

    Programul Main este prezentat n figura 5.6.

    Prob

    9

  • 8/12/2019 Probleme automate programabilr

    10/62

    55

    Prob

    10

  • 8/12/2019 Probleme automate programabilr

    11/62

    56

    Fig.5.6 Programul Main

    Programul fiu Osc este prezentat n figura 5.7.

    202

    301

    Prob

    11

  • 8/12/2019 Probleme automate programabilr

    12/62

  • 8/12/2019 Probleme automate programabilr

    13/62

    58

    Comentarii :

    - Funia REDGE este folosit pentru detectarea impulsurilor produse prin apsarea butoanelor- Comunicaia ntre programe este realizat prin intermediul variabilei oprit- Programul principal oprete execuia programului copil Osc atunci cnd variabila oprit

    are valoare TRUE sau micarea este ntrerupt de apsarea butonului E

    Propunere:

    S se modifice programul n condiiile n care la apsarea butonului de oprire, ciclul s se ncheietotdeauna cnd mobilul ajunge prima dat in partea dreapt.

    Prob

    13

  • 8/12/2019 Probleme automate programabilr

    14/62

    59

    Problema 3: Detecia i expulzarea automat a sticlelor fr dop

    1. Descrierea procesului:Una din fazele de producie ntr-o linie de mbuteliere const n aezarea unui dop, ca urmare ancheierii secvenei de umplere. Sticlele se deplaseaz pe banda 1, separate de aceeai distan i cuvitez constant. Scopul aplicaiei este detectarea i extragerea sticlelor care ies din faza de nchiderefr dopul corespunztor; pe lng aceasta, dac ntr-o perioad determinat de timp (n acest caz 7sticle), sunt rejectate mai mult de 3 sticle consecutive, trebuie activat o alarm. Repornirea ciclului seface prin apsarea butonului Pc. Pentru detecia sticlei defecte se conjug aciunile unui senzorinductiv, care detecteaz prezena dopului i un echipament foto electric care semnaleaz prezenaunei sticle.

    Fig. 5.8 Detecia i expulzarea sticlelor fr dop

    Procesul este iniiat prin apsarea butonului M, care produce pornirea benzii transportoare 1. Atuncicnd se detecteaz o sticl fr dop, este oprit banda 1 i este pornit banda transportoare 2 (dac eraoprit). n momentul n care sticla fr dop se gsete n zona de expulzare, este activat mecanismul deexpulzare. Banda 1 va fi repornit n momentul n care sticla fr dop nu se mai gasete n zona de

    expulzare (practic semnalul transmis de detectorul fotoelectric are valoarea logic fals). Banda 2 va fioprit dup 5 secunde de la nceperea expulzrii ultimei sticle.

    Elemente de execuie: 2 motoare care acioneaz 2 benzi transportoare 1 dispozitiv de expulzare a sticlelor fr dop

    Elemente de msur:

    1 detector inductiv pentru dopuri 1 detector fotoelectric pentru sticle

    Sistem deExpulzare

    DetectorFotoelectric

    DetectorInductiv

    Alarma

    Panou de control

    MotorBanda 1

    MotorBanda 2

    BandaTransportoare 1

    BandaTransportoare 2

    Prob

    14

  • 8/12/2019 Probleme automate programabilr

    15/62

    60

    2. Soluia de automatizare:Pentru controlul acestei aplicaii se alege un automat programabil de tip PEP Smart pentru care sedezvolt un proiect Isagraf, cu un singur program principal, dar cu 2 seciuni programate i anumeseciunea secvenial i seciunea de sfrit, end sectionca n figura 5.9.

    Fig. 5.9 Seciunile proiectului

    Dicionarul de variabile globale:

    Variabile de intrare booleene: M : buton de pornire R : buton de rearmare I : detector inductiv F : detector fotoelectric Pc : buton de punere la zero i oprire alarm

    Variabile de ieire booleene: Banda_1 : comand pornire / oprire band 1 Banda_2 : comand pornire / oprire band 2 Alarma : comand alarm Expulzare : comand dispozitiv de evacuare a sticlelor fr dopVariabile interne de tip Integer:

    Nr_sticle : contorizeaz numrul de sticle fr dop expulzate consecutivVariabile interne de tip timer:

    Timer : folosit la contorizarea celor 5 secunde de activare a conveiorului 2

    Prob

    15

  • 8/12/2019 Probleme automate programabilr

    16/62

    61

    Programul principal main este prezentat n figura 5.10

    Fig. 5.10 Programul principal, seciunea secvenial

    3

    Prob

    16

  • 8/12/2019 Probleme automate programabilr

    17/62

    62

    Programul timing din seciunea de end este prezentat n figura 5.11

    Fig. 5.11 Programul principal, seciunea de end

    Observaii:

    seciunea de end este necesar pentru ca banda 2 s poate fi oprit n orice moment dacperioada ei de activare a expirat

    deoarece seciunea de end se execut la fiecare ciclu automat, testarea timer_ului se va face lafiecare ciclu automat.

    contorizarea timpului este facut cu ajutorul funciilor TSTART i TSTOP dac o sticl trebuie s fie expulzat n timp ce o alt sticl se gsete pe conveiorul 2,

    timer_ul este resetat i este reactivat incrementarea timer_ului

    Propuneri: S se construiasc o diagram Ladder pentru un automat de tip Allen Bradley, care s

    controleze acest proces

    Prob

    17

  • 8/12/2019 Probleme automate programabilr

    18/62

    63

    Problema 4:Staie automat de splat autovehicule

    1. Descrierea procesului:Scopul proiectrii acestui sistem de control l reprezint automatizarea unei staii de splatautovehicule. Vehiculele vor trebui s treac succesiv prin 4 posturi de lucru, nmuiere, splare cudetergent, cltire i uscare. Procesul este iniiat de apsarea unui buton de pornire, care determinactivarea benzii transportoare iar vehiculele vor trece succesiv prin cele 4 posturi. Bariera, n condiiinormale, trebuie s stea ridicat i semaforul dezactivat. Cnd n staie sunt detectate 4 vehicule, cteunul n fiecare post, bariera trebuie cobort i semaforul activat, indicnd faptul c nu se mai poatetrece. Att bariera ct i semaforul rmn n aceast stare pn cnd cele 4 vehicule au prsit staia,moment n care bariera trebuie ridicat i semaforul dezactivat.

    Fi. 11

    Fig. 5.12 Staie automat de splat autovehicule

    n momentul n care se activeaz celula fotoelectric 1, se va activa postul 1. Cnd seactiveaz fotocelula 2 iar fotocelula 1 nu mai este activat, se dezactiveaz postul 1. n

    momentul activrii fotocelulei 2 se activeaz postul 2. Acesta va fi dezactivat cnd fotocelula2 nu este activ dar fotocelula 3 este activ. Analog pentru postul 3. Postul 4 se dezactiveazcnd fotocelula 4 se dezactiveaz iar fotocelula 5 se activeaz..

    Elemente de execuie: motorul benzii transportoare motorul barierei cu 2 sensuri de rotaie 1 semafor 4 posturi de lucru

    Post deUscare

    Post deClatire

    Post deSpalare cuDetergent

    Post deInmuiere

    Semafor

    Bariera

    F1Senzor deInmuiere

    F2

    Senzor deDetergent

    F3Senzor deClatire

    F4Senzor deUscare

    F5

    BandaTransportoare

    Prob

    18

  • 8/12/2019 Probleme automate programabilr

    19/62

    64

    Elemente de msur: 5 celule fotoelectrice 2 limitatoare de curs ale barierei

    2. Soluia de automatizarePentru controlul acestei aplicaii se alege un automat programabil de tip PEP Smart pentru care sedezvolt un proiect Isagraf, proiect ce consta din 6 programe SFC ce ruleaz n paralel. Structuraproiectului Isagraf este prezentat n figura 5.13.

    Fig. 5.13 Programele componente ale proiectului Isagraf

    Dicionarul de variabile globale:

    Variabile de intrare booleene: start : contact de pornire Limita_SUS : limitator de curs sus pentru barier Limita_JOS : limitator de curs jos pentru barier Foto_1 : fotocelula postului 1 Foto_2 : fotocelula postului 2 Foto_3 : fotocelula postului 3 Foto_4 : fotocelula postului 4 Foto_5 : fotocelula postului 5

    Variabile de ieire booleene: Banda : comand pornire / oprire band Bariera_sus : comand ridicare barier Bariera_jos : comand coborre barier Semafor : comand activare / dezactivare semafor Inmuiere : comand activare dezactivare post nmuiere Detergent : comand activare dezactivare post detergent Clatire : comand activare dezactivare post cltire Uscare : comand activare dezactivare post uscare

    Prob

    19

  • 8/12/2019 Probleme automate programabilr

    20/62

  • 8/12/2019 Probleme automate programabilr

    21/62

    66

    Programul Post1 este prezentat n figura 5.16.

    Fig.5.16 Programul Post1

    Prob

    21

  • 8/12/2019 Probleme automate programabilr

    22/62

    67

    Programul Post2 este prezentat n figura 5.17.

    Fig.5.17 Programul Post2

    Prob

    22

  • 8/12/2019 Probleme automate programabilr

    23/62

    68

    Programul Post3 este prezentat n figura 5.18.

    Fig.5.18 Programul Post3

    Prob

    23

  • 8/12/2019 Probleme automate programabilr

    24/62

    69

    Programul Post4 este prezentat n figura 5.19

    Fig.5.19 Programul Post4

    Comentarii:

    Toate programele dezvoltate sunt independente i ruleaz n paralel, fapt ce uureaz foarte multnelegerea programului

    Propunere:

    S se modifice programul n cazul n care bariera se va ridica atunci cnd se elibereaz primul postde lucru

    S se modifice proiectul astfel nct s se dezvolte un singur program care s automatizeze acestproces

    Prob

    24

  • 8/12/2019 Probleme automate programabilr

    25/62

    70

    Problema 5: Elevator clasificator de pachete

    1. Descrierea procesului:Pe o band transportoare vin 2 tipuri de pachete (mic i mare). Tipul pachetului este determinat deun cntar, ulterior pachetele fiind transportate n direcii diferite n funcie de tipul pachetului.Procesul pornete cu transportul unui pachet ctre cntar; aici pachetul este cntrit fiind astfelidentificat n funcie de greutatea citit. n continuare pachetul este transportat pe banda 1 pn laplanul elevator. Cilindrul C ridic pachetele. Apoi pachetele sunt transportate diferit; pachetelemici sunt plasate pe banda 2 de cilindrul A, iar pachetele mari sunt aezate pe banda 3 de cilindrulB. Cilindrul elevator C se retrage doar cnd cilindrii A i B au atins poziia final.

    Fig. 5.20 Elevator clasificator pentru pachete

    Elemente de execuie: 3 cilindri cu dublu efect (A, B, C) o bascul nsrcinat cu clasificarea pachetelor 4 benzi transportoare

    Elemente de msur:

    6 limitatoare de curs 2 detectoare de poziie

    2. Soluia de automatizare

    Pentru controlul acestei aplicaii s-a ales un automat programabil de tip PEP Smart pentru care s-adezvoltat un proiect Isagraf ce cuprinde 5 programe secveniale ce ruleaz n paralel i un program nseciunea de Begin, program ce se execut la nceputul fiecrui ciclu automat. Structura proiectului

    Isagraf este prezentat n figura 5.21

    Fig. 5.21 Structura proiectului Isagraf

    B0

    A0

    C0

    C1

    A1

    B1

    Banda 0Banda 1

    Banda 2

    Banda 3

    Cilindru A

    Cilindru B

    Cilindru C Cntar

    F0F1

    Prob

    25

  • 8/12/2019 Probleme automate programabilr

    26/62

    71

    Dicionarul de variabile globale:

    Variabile de intrare booleene: foto_0: fotocelula 0 foto_1 : fotocelula 1 A0 : Limit retragere cilindru A A1 : Limit avans cilindru A B0 : Limit retragere cilindru B B1 : Limit avans cilindru B C0 : Limit coborre cilindru C C1 : Limit ridicare cilindru C

    Variabile de ieire booleene: Banda_0 : activare / dezactivare banda 0 Banda_1 : activare / dezactivare banda 1 Banda_2 : activare / dezactivare banda 2 Banda_3 : activare / dezactivare banda 3 A_avansat : avans cilindru A A_retras : retragere cilindru A B_avansat : avans cilindru B B_retras : retragere cilindru B C_ridicare : ridicare cilindru C A_retragere : retragere cilindru A

    Variabile interne booleene:

    eroare : cod de eroare la cntrirea pachetelorVariabile globale analogice

    cantar : variabil intern, reprezint valoarea real a greutii de pe cntar (integer) traductor_cantar : variabli de intrare, valoarea primit de la traductorul cntarului (integer,ntre 0 4096) pachet_actual : variabil intern, n care se memoreaz tipul pachetului actual ce urmeaz a fi

    transportat pachet_viitor : variabil intern, in care se memoreaz tipul pachetului de pe cntar (urmtorul

    ce va fi transportat) lim_inf : constant, greutatea minim a pachetului mic lim_sup_mic : greutatea maxim a pachetului mic mic : constant cu valoarea 1 mare : constant cu valoarea 2

    Prob

    26

  • 8/12/2019 Probleme automate programabilr

    27/62

    72

    Programul Banda_0 este prezentat n figura 5.22.

    Fig.5.22 Programul Banda_0

    Prob

    27

  • 8/12/2019 Probleme automate programabilr

    28/62

    73

    Programul Banda_1 este prezentat n figura 5.23.

    Fig.5.23 Programul Banda_1

    Prob

    28

  • 8/12/2019 Probleme automate programabilr

    29/62

  • 8/12/2019 Probleme automate programabilr

    30/62

    75

    Programul Cilin_B este prezentat n figura 5.25

    Fig.5.25 Programul Cilin_B

    Prob

    30

  • 8/12/2019 Probleme automate programabilr

    31/62

    76

    Programul Cilin_C este prezentat n figura 5.26

    Fig.5.26 Programul Cilin_C

    Prob

    31

  • 8/12/2019 Probleme automate programabilr

    32/62

    77

    Programul convers din seciunea Begin

    Programul convers realizeaz conversia din uniti CAN (Convertor Analog Numeric) n valoriexprimate n uniti de msur inginereti. Intrarea analogic a modulului de intrare lucreaz pe 12 biii msoar un curent de 0 - 20 mA , dar traductorul de la cntar genereaz un curent de 4 - 20mA. naceast situaie trebuie fcut o translaie de scal. Se observ c la valoarea minim a domeniului demsur traductorul genereaz 4 mA, corespunztoare valorii 819 citit de automat, valoare pentru care

    automatul trebuie s indice valoarea minim a mrimii msurate. Astfel formula de conversie este:

    Val_ing = (Val_cit-819) *(Ds-Di)/(4095-819)

    Unde : Val_ing valoarea n uniti inginereti Val_cit valoarea citit n uniti CAN Di domeniul inferior de msur Ds domeniul superior de msur

    n cazul nostru Ds=100, Di=0, astfel nct instruciunea ce se execut n programul convers este

    cantar := INT(((REAL(traductor_cantar)- 819)* 100.0 ) / (3276) ;

    Propunere:

    S se modifice programul de conversie n cazul n care traductorul de temperatur are ca domeniu-15 +150 grade i genereaz un curent n gama 2-10 mA

    Prob

    32

  • 8/12/2019 Probleme automate programabilr

    33/62

    78

    Problema 6: Controlul temperaturii unui lichid

    1. Descrierea procesului:Problema const n meninerea temperaturii unui lichid ntre 2 valori determinate (60 i 65 grade), ntimp ce nivelul n cele 2 rezervoare pstreaz o capacitate determinat. Dac temperatura se gasete

    ntre limitele fixate, valva 1 se va deschide iar valva 2 se va deschide pn cnd rezervorul 2 ajunge lacapacitatea fixat; n acel moment, valva 2 se va nchide i va rmne aa pn cnd lichidul dinrezervorul 2 se va gsi sub limita fixat. Cnd temperatura atinge marginile de temperatur fixat,valvele de intrare i de ieire se vor nchide ( indiferent dac rezervorul 2 i-a recuperat nivelul ) i vorrmne nchise pn cnd temperatura va fi reglat. Totdeauna va fi prioritar variaia temperaturiifa de variaia nivelului de lichid.

    Fig. 5.27 Controlul temperaturii unui lichid

    Elemente de execuie: 1 pomp cu motorul su 1 motor al echipamentului de pompat aerul 2 electrovalve 1 rezisten

    Elemente de msur:

    2 senzori de nivel 1 traductor de temperatur

    2. Soluia de automatizare

    Pentru controlul acestei aplicaii s-a ales un automat programabil de tip PEP Smart pentru care s-adezvoltat un proiect Isagraf ce cuprinde un program principal ,Main i programul seciunii de Begin,

    numit Convers.

    Dicionarul de variabile globale:

    Variabile de intrare booleene: senzor_plin : are valoarea TRUE cnd depozitul 2 este plin senzor_gol : are valoarea TRUE cnd depozitul 2 este gol

    Valva E1

    Valva E2

    Motor

    Senzor deTem eratura

    CaloriferDepozit 1

    Depozit 2

    Dispozitiv dercire

    Prob

    33

  • 8/12/2019 Probleme automate programabilr

    34/62

    79

    Variabile de ieire booleene: valva_1 : comanda electrovalvei 1, atunci cnd are valoarea TRUE electrovalva 1 se mchide valva_2 : comanda electrovalvei 2, atunci cnd are valoarea TRUE electrovalva 2 se mchide rezistenta : comanda cuplarea / decuplarea rezistentei racire : comand dispozitivul de pompat aer pompa : comand motorul pompei

    Variabile analogice :

    temp : variabil intern de tip Real, reprezint temperatura apei n grade Celsius temp_citita : variabil de intrare de tip Real ce reprezint valoarea analogic ( ntre 0 i 4095)

    primit de la traductorul de temperatur

    Programul Convers al seciunii de Begin:

    Programul convers realizeaz conversia din uniti CAN (Convertor Analog Numeric) n valoriexprimate n uniti de msur inginereti. Intrarea analogic a modulului de intrare lucreaz pe 12 biii msoar un curent de 0 - 20 mA , dar traductorul de la cntar genereaz un curent de 4 - 20mA. naceast situaie trebuie fcut o translaie de scal. Se observ c la valoarea minim a domeniului de

    msur traductorul genereaz 4 mA, corespunztoare valorii 819 citit de automat, valoare pentru careautomatul trebuie s indice valoarea minim a mrimii msurate. Astfel formula de conversie este:

    Val_ing = (Val_cit-819) *(Ds-Di)/(4095-819)

    Unde : Val_ing valoarea n uniti inginereti Val_cit valoarea citit n uniti CAN Di domeniul inferior de msur Ds domeniul superior de msur

    n cazul nostru Ds=100, Di=0, astfel nct instruciunea ce se execut n programul convers este

    temp := INT(((REAL(temp_citita)- 819)* 100.0 ) / (3276) ;

    Prob

    34

  • 8/12/2019 Probleme automate programabilr

    35/62

    80

    Programul Main este prezentat n figura 5.28

    401

    301

    Prob

    35

  • 8/12/2019 Probleme automate programabilr

    36/62

    81

    Fig.5.28 Programul Main

    Comentarii: Programul folosete variabile analogice deoarece evenimentele ce produc modifcri n sistem

    depind de o mrime cu variaie continu (temperatura)

    Prob

    36

  • 8/12/2019 Probleme automate programabilr

    37/62

    82

    Problema 7 : Dozare i malaxare automat

    1. Descrierea procesului:Un malaxor pivotant primete produsele A i B cntrite de bascula C i brichete solubile aduse unacte una pe o band transportoare. Automatizarea permite realizarea unei amestecri a celor 3 produse.Ciclul de realizat este urmtorul: la acionarea butonului de alimentare se pornete cntrirea ialimentarea produselor n urmtorul mod:

    cntrirea produsului A prin deschidera valvei Va, pn la referina A cntrirea produsului B prin deschiderea valvei Vb, pn la referina B apoi, golirea basculei n malaxor prin deschiderea valvei Vc pn la referina zero simultan cu precedentele operaii are loc malaxorului alimentarea cu 2 brichete solubile

    Ciclul se termin cu rotaia malaxorului un anumit timp t i apoi pivotarea lui, meninndu-se rotaia ntimpul golirii.

    Figura:

    Elemente de execuie: 3 electrovalve motorul benzii transportoare motorul de rotaie al malaxorului 2 motoare de pivotare ale malaxoruluiElemente de msur: 3 senzori de greutate un senzor de detecie 2 limitatoare de curs

    Fig. 5.29 Proces de dozare i malaxare

    Elemente de execuie: 3 electrovalve (Va, Vb, Vc) Motorul benzii transportoare cu un singur sens de rotaie Motorul de rotaie al malaxorului Motorul de pivotare al malaxorului, cu dou sensuri de rotaie

    Elemente de msur: 3 senzori de greutate, pentru referinele A, B i zero

    Brichete Solubile

    Banda deAlimentare

    MotorVa Vb

    A B

    Cantar

    MalaxorPivotant

    LimitatorDreapta P1

    LimitatorStanga P2

    MdMs

    Vc

    dDetector detrecere

    Prob

    37

  • 8/12/2019 Probleme automate programabilr

    38/62

    83

    2 limitatoare de curs 1 detector de trecere

    2. Soluii de automatizare

    2.1 Varianta 1 : implementarea n mediul Isagraf

    Aceast variant presupune utilizarea unui automat programabil de tip PEP Smart, pentru care s-adezvoltat un proiect Isagraf ce cuprinde 1 program principal.

    Dicionarul de variabile globale:

    Variabile de intrare booleene: Start : buton de pornire d : detector de trecere brichete solubile A : detectorul greutii produsului A B : detectorul greutii produselor A + B Lim_stanga : limitator stnga malaxor Lim_dreapta : limitator dreapta malaxor

    Variabile de ieire booleene: Valva_ A : comand deschiderea / nchiderea valvei A Valva_ B : comand inchiderea / nchiderea valvei B Valva_ C : comand deschiderea / nchiderea valvei C Mt : comand motorul benzii transportoare Rotire : comand rotaia malaxorului Piv_dreapta : comand pivotarea ctre dreapta a malaxorului Piv_stanga : comand pivotarea ctre stnga a malaxorului

    Variabile globale de tip timer: timer : temporizare folosit la rotaia malaxorului

    Prob

    38

  • 8/12/2019 Probleme automate programabilr

    39/62

    84

    Programul principal Main este prezentat n figura 5.30:

    5

    Prob

    39

  • 8/12/2019 Probleme automate programabilr

    40/62

    85

    Fig. 5.30 Programul principal

    Prob

    40

  • 8/12/2019 Probleme automate programabilr

    41/62

    86

    2.2 Varianta 2 : implementarea n limbajul Ladder DiagramAceast variant presupune folosirea unui automat programabil Allen Bradley, tip SLC500, pentrucare se dezvolt o diagram de tip Grafcet i o diagram de tip Ladder.

    Diagrama Grafcet este prezentata in figura 5.31:

    Fig. 5.31 Diagrama Grafcet

    Prob

    41

  • 8/12/2019 Probleme automate programabilr

    42/62

  • 8/12/2019 Probleme automate programabilr

    43/62

    88

    B3 I:1 B3

    ||----] [------] [--------------------------------------------------------------------------|---- (U) ----|---------||2 2 | 2 |

    | B3 ||---- (L) ----|

    3

    B3 O:3||----] [-------------------------------------------------------------------------------------|---- (U) ----|---------||

    3 | 1 || O:3 ||---- (L) ----|

    2

    B3 I:1 B3||----] [------] [--------------------------------------------------------------------------|---- (U) ----|---------||

    3 3 | 3 || B3 ||---- (L) ----|

    4

    B3 O:3||----] [-------------------------------------------------------------------------------------|---- (U) ----|---------||

    4 | 2 || O:3 ||---- (L) ----|

    3

    B3 I:1 B3||----] [------] [--------------------------------------------------------------------------|---- (U) ----|---------||

    4 4 | 4 || B3 |

    |---- (L) ----|5

    B3 O:3||----] [------------------------------------------------------------------------------------------ (U) -------------||

    5 3

    B3 O:3||----] [------------------------------------------------------------------------------------------ (U) -------------||

    10 4

    B3 I:1 B3||----] [------] [--------------------------------------------------------------------------|---- (U) ----|---------||

    10 6 | 10 || B3 ||---- (L) ----|

    11

    B3 I:1 B3||----] [------] / [--------------------------------------------------------------------------|---- (U) ----|---------||

    11 6 | 11 || B3 ||---- (L) ----|

    Prob

    43

  • 8/12/2019 Probleme automate programabilr

    44/62

  • 8/12/2019 Probleme automate programabilr

    45/62

  • 8/12/2019 Probleme automate programabilr

    46/62

    91

    Problema 8: Umplerea i astuparea automat a sticlelor

    1. Descrierea procesului:Scopul acestei aplicaii l constituie controlul unui sistem de umplere i astupare a unor sticle. Laconectarea sistemului, se pornete motorul benzii transportoare. Acesta se va opri cnd existsticle n situaia de a fi umplute i n situaia de a fi astupate. Se cere ca simultan cu umplerea uneisticle alta deja umplut s fie astupat, aciune posibil datorit configuraiei sistemului. CilindrulA este responsabil cu umplerea sticlelor, deplasndu-se ntre limitatoarele F1 i F2. Cilindrul Caduce dopurile din stiva de dopuri, pentru a fi mpinse de ctre cilindrul B pentru astuparea uneisticle. Astuparea sticlei se faca de ctre un dispozitiv de rotire, a crui micare este limitat de unlimitator. Sticlele de umplut i cele de astupat sunt detectate de cte dou fotocelule.

    Fig.5.32Umplerea i astuparea automat a sticlelor

    Elemente de execuie: 1 cilindru (A) ce regleaz dozatorul volumetric 1 cilindru de avans (B) cu 3 poziii 1 cilindru (C) ce reprezint mecanismul de transfer al capacelor motorul bezii transportoare un mecanism de nurubare dopuri

    Elemente de msur:

    6 limitatoare de curs 1 detector de poziie 1 fotocelul pentru detecie sticl de umplut 1 fotocelul pentru detecie sticl plin

    Detector poziie sticl

    Detector umplere sticl

    Depozit lichid

    Cilindru A

    Cilindru B

    Cilindru CValve antiretur

    Stiva de dopuri

    Vc

    F5

    F3

    F4

    F1

    F2

    F6

    F7

    Prob

    46

  • 8/12/2019 Probleme automate programabilr

    47/62

    92

    2. Soluia de automatizare

    Pentru controlul acestei aplicaii s-a ales un automat programabil de tip PEP Smart pentru care s-adezvoltat un proiect Isagraf ce cuprinde un program principal, numit main.

    Dicionarul de variabile globale:

    Variabile de intrare booleene: F1 : Limitator sus cilindru A F2 : Limitator jos cilindru A F3 : Limitator sus cilindru B F4 : Limitator jos cilindru B F5 : Limitator stanga cilindru C F6 : Limitator dreapta cilindru C F7 : Detector pozitie de preluat dop senzor_rotire : Limitator rotire dispozitiv de nurubare st_de_umplut : Senzor detecie sticl de umplut st_plina : Senzor detecie sticl plin

    Variabile de ieire booleene: Banda : comand pornire / oprire band A_avans : comand avans cilindru A A_retragere : comand retragere cilindru A B_avans : comand avans cilindru B B_retragere : comand retragere cilindru B C_avans : comand avans cilindru C C_retragere : comand retragere cilindru C Insurubare : comanda de nurubare a dopului

    Programul principal este prezentat n figura 5.33

    Prob

    47

  • 8/12/2019 Probleme automate programabilr

    48/62

    93

    Prob

    48

  • 8/12/2019 Probleme automate programabilr

    49/62

    94

    Prob

    49

  • 8/12/2019 Probleme automate programabilr

    50/62

    95

    Fig. 5.33 Programul principal

    Comentarii:

    n program au fost folosite 2 paralelisme, fiecare avnd cte 2 secvene ce se execut simultan A doua secven paralel implementeaz condiia ca o dat cu umplerea unei sticle, alta s fie

    astupat

    Propunere: S se modifce programul n situaia n care sticlele vin aleator pe banda transportoare

    Prob

    50

  • 8/12/2019 Probleme automate programabilr

    51/62

    96

    Problema 9: Umplerea automat a unor containere

    1. Descrierea procesului:Aplicaia const n umplerea cu lichid a 3 containere (A, B, C) i evacuarea lor pe o bandtransportoare. Umplerea containerelor trebuie fcut n urmtoarea manier:

    - containerul A : 5 secunde cu lichid de tip A- containerul B : 7 secunde cu lichid de tip A i 7 secunde cu lichid de tip B- containerul C : 3 secunde cu lichid de tip C, 5 secunde cu lichid de tip B i 8 secunde cu lichid

    de tip A

    Fig. 5.34 Umplerea automat a unor containere

    n cadrul sistemului exist o band transportoare pe care vin, unul dup altul, cele trei containere A, B,C. Primul dintre ele care ajunge la platform este containerul C, apoi B i ultimul cel de tip A.Cilindrul E este responsabil cu evacuarea recipienilor cu ajutorul celei de-a doua benzi transportoare.Iniierea procesului se face prin pornirea benzii transportoare 1 pe care sunt aduse containerele. nmomentul n care un container de tip C se gsete pe platform, banda 1 va fi oprit iar cilindrul D vaavansa o poziie. Cnd containerul C activeaz detectorul 2, banda 1 va fi din nou activat iar cilindrulD va fi oprit; banda 1 se va opri din nou cnd containerul B ajunge la platform i n consecincilindrul D va avansa din nou pn cnd containerul C activeaz detectorul 3 iar containerul Bactiveaz detectorul 2. n acest moment banda 1 este repornit pn cnd containerul A atingeplatforma, moment n care banda este oprit. n acel moment cele trei valve vor fi deschise simultan,fiecare fiind meninut deschis un anumit timp, astfel nct contaienrul A se va umple cu lichid Atimp de 5 secunde, containerul B cu lichid de tip B timp de 7 secunde iar containerul C timp de 3

    secunde cu lichid de tip C. Cnd toate aceste temporizri au expirat, valvele vor fi nchise, cilindrul Eva avansa pentru a evacua containerul A pn activeaz detectorul 4. n acest moment cilindrul E seretrage. Dup ce a ajuns n poziia de retragere, cilindrul D va fi retras pn activeaz detectoarele 1 i2. Apoi containerele B i C vor fi umplute cu lichid de tip A, respectiv B, dup care urmeazevacuarea containerului B. n final containerul C va fi umplut cu lichid de tip A i va fi evacuat. Dupevacuare cilindrul D va fi retras i un nou ciclu poate ncepe.

    Lichid ALichid BLichid C

    Electrovalve C B A

    Containere CB A

    Cilindrul E

    Cilindrul D

    M1 MotorBanda 1

    M2 MotorBanda 2

    Banda 1

    Banda 2

    Detectoare 1,2,34

    Prob

    51

  • 8/12/2019 Probleme automate programabilr

    52/62

  • 8/12/2019 Probleme automate programabilr

    53/62

    98

    Programul principal este prezentat n figura

    Prob

    53

  • 8/12/2019 Probleme automate programabilr

    54/62

    99

    Prob

    54

  • 8/12/2019 Probleme automate programabilr

    55/62

    100

    Prob

    55

  • 8/12/2019 Probleme automate programabilr

    56/62

    101

    Fig. 5.35 Programul principal

    Comentarii: n cadrul secvenelor de deschidere a valvelor, temporizrile au fost implementate prin testarea permanent

    a parametrului GSxxx.t asociat unei etape. Acest parametru indic timpul de cnd o etap este activ. O altvariant era folosirea unor variabile de tip Timer.

    Umplerea containerelor este facut n paralel cu ajutorul elementului de paralelism al diagramelor SFC

    Prob

    56

  • 8/12/2019 Probleme automate programabilr

    57/62

    102

    Problema10: Proiectarea unui regulator PID pentru reglarea unei temperaturi

    1. Descrierea procesului:

    Problema const n meninerea unei anumite temperaturi ntr-o instalaie de granulare prin reglareadebitului de abur, dar, ca orice regulator, se poate acorda pentru o mare varietate de procese.

    Regulatorul PID trebuie s funcioneze n dou regimuri de lucru, automat i manual, cu posibilitateade a fi conectat n diferite scheme de reglare.

    Temperatura este msurat cu un traductor de temperatur avnd semnal de ieire 4-20mA, msura sefiltreaz iar valoarea real se transmite regulatorului n procente. Referina se citete de la un panouoperator care comunic cu automatul prin interfaa serial 232.

    Regulatorul face parte dintr-o schem n care se intenioneaz meninerea constant a temperaturiiunui agent termic (n cazul acesta abur de joas presiune 4-6 bar) prin comanda debitului de intrare algazului metan.

    Bucla de reglare n aceast situaie este compus din: termocuplu (pentru msurarea temperaturii) care genereaz milivoli dup o curb care nu este

    liniar (ca alternativ la aceast soluie se poate utiliza orice alt traductor al crui semnal este ncurent unificat). Soluia cu automate programabile este destul de flexibil i din faptul ca ele aumodule de intrare pentru toate tipurile de termocuple, eliminnd astfel din bucl convertorulmilivoli - curent unificat, dar alegerea ntre cele dou metode se face strict economic.

    convertor 4-20 mA (pentru conversia n miliamperi a semnalului de la termocuplu (mV) iliniarizarea curbei valorilor)

    automat programabil SmartPLC cu module de intrri analogice, respectiv n termocuple i modulde ieiri analogice care la rndul lor sunt nite convertoare analog-numerice i invers (pentrurealizarea algoritmului de reglare)

    Electroventil comandat n curent de 4-20mA, reprezentnd elementul de execuie (se mai poatefolosi i un ventil pneumatic mpreun cu un convertor electropneumatic dac este necesar)

    n fig. 4.12 este prezentat schematic bucla de reglare pentru varianta cu convertor, cealalt fiind mai

    simpl (ieirea termocuplului intrnd direct n automat):

    Fig. 5.36 Structura buclei de reglare folosind convertor tensiune - curent

    PLC

    Ventil regulator

    convertor termocuplu

    cazan

    Camera deardere

    Reglar

    57

  • 8/12/2019 Probleme automate programabilr

    58/62

  • 8/12/2019 Probleme automate programabilr

    59/62

    104

    n cadrul seciunii SEQUENTIAL, adic acolo unde este implementat logica de funcionare aprogramului, au loc, n principal, urmtoarele aciuni:

    secvena de iniializare, n care sunt iniializate anumite constante i este pornit timer-ul pentruperioada de eantionare.

    algoritmul de reglare, a crui descriere detaliat este prezentat n subcapitolul urmtorNu ntmpltor seciunea secvenial are o singur stare pentru fiecare regim de lucru. Aceastnecesitate a aprut datorit faptului c automatul (care poate lucra multitasking) nu trece la o altactivitate dect dup terminarea unui ciclu main. ntr-un ciclu main se execut seciunea deBEGIN, cea de END i un anumit numr de stri din seciunea SEQUENTIAL, ct permite durataunui ciclu main. Dac pentru execuia aciunilor asociate unei stri, procesorului i-ar lua un timp maindelungat dect perioada unui ciclu predefinit, ciclul va fi prelungit pn cnd toate aciunile asociatestrii sunt executate.

    Cu aceast metod ciclul de reglare devine constant i ct mai mic posibil. Durata ciclului poate fifixat i altfel (software), dar oricum, perioada va avea o valoare mai mare, pierzndu-se astfel dintimpul de rspuns al regulatorului. Mai mult, n cazul n care ar exista mai multe etape, apareposibilitatea ca comanda ce se d elementului de execuie s nu fie consecina ultimei citiri, ceea ceface s se piard chiar noiunea de cauzalitate.

    Seciunea END, care se execut la sfritul fiecrui ciclu automat, dup seciunea secvenial,realizeaz n principal urmtoarele aciuni: Adaptri de valori Actualizare ieiri: concret, n cazul algoritnului de reglare ce respect condiiile de mai sus, ieirea

    este comanda ctre elementul de execuie calculat conform algoritmului la ultimul ciclu main ica urmare a ultimei valori a intrrii.

    Transmiterea ctre interfaa utilizator a valorilor calculate, pentru vizualizareDiagrama logic de funcionare a regulatorului (Sequential Function Chart), n care pot fi identificateetapele n care se poate gsi automatul i tranziiile pe care le poate efectua, sunt ilustrate n figura5.38.

    Fig. 5.38 Diagrama logic de funcionare a regulatorului

    Reglar

    59

  • 8/12/2019 Probleme automate programabilr

    60/62

    105

    Se observ c diagrama conine 3 etape i pot fi efectuate 4 tranziii ntre aceste etape.

    Etape:

    Etapa 1: iniializare regulator Etapa 2: se execut un pas de reglare n regim automat Etapa 3: se execut un pas de reglare n regim manualTranziii:

    Tranziia 1- S1 -> S2: se execut dac sunt condiii de trecere n starea de calcul PID (regimulautomat)

    Tranziia 2 - S1 -> S3: se execut dac sunt condiii de trecere n starea de comand manual(regimul manual)

    Tranziia 3 - S2 -> S1: salt necondiionat n etapa iniial Tranziia 4- S3 -> S1: salt necondiionat n etapa iniialVariabilele declarate n cadrul proiectului sunt prezentate n tabelul 5.5:

    Tabel 5.5 Variabilele folosite n cadrul proiectului

    Variabil Tip Descriere

    Run Logic Exist condiii generale de funcionare pentru regulatorul PID, evaluate nexterior1 OK, adica sunt msuri bune, elemente de executie funcioneaz, resurse

    energetice ok, etc0 not OK, nu se face reglare cu regulatorul PID

    ModRT Logic Regimul de lucru al regulatorului, evaluat n exterior1 regim AUTOMAT (PID)0 regim MANUAL (comand direct)

    timer_p1 Timer Timer de ciclu de eantionarecycle1 Timer Perioada de eantionare, constant [ms]banda1 Real Banda de proporionalitate, inversul amplificrii, n %,Td1 Real Constant de timp pentru efectul de derivare, valoare de acordTint1 Real Constant de timp pentru efectul de integrare, valoare de acord

    kp1 Real Amplificarea, valoare calculat, dac banda este valoarea de acordderiv1 Real Componenta derivativ, variabil de calculw real Calcul parial pentru incrementul de comand, variabil de lucruT_pv real Valoarea curent a temperaturii reglate, n %T_pv1 real Valoarea curent, la pasul anterior, a temperaturii reglate, n %T_pv2 real Valoarea curent, la pasul anteanterior, a temperaturii reglate, n %T_sp real Valoarea impus pentru temperatur, n %err1 real Eroarea (t_sp-t_pv) la pasul anteriorComandaventil

    real Comanda curent, poziia absolut a elementului de executie, n %

    xo1 real Comand manual, poziia absolut a elementului de execuie, n %

    n etapa 1 (Init) se actualizeaz (dac e nevoie) valorile variabilelor de lucru (dac regulatorulfuncioneaz n alte regimuri de lucru, spre exemplu n cascad, sau n regim de selecie).

    Aciunile asociate etapei 2(Regim automat) sunt descrise n tabelul 5.6:

    Reglar

    60

  • 8/12/2019 Probleme automate programabilr

    61/62

    106

    Tabel 5.6 Aciuni asociate etapei 2

    iniializeaz ciclul timer_p1:=t#0s;calcul amplificare kp1:=100.0/banda1;calcul component derivativ deriv1:=Td1*1000.0*(T_pv-2.0*T_pv1+T_pv2)/real(cycle1);salvare valori pv anterioare T_pv2:=T_pv1; T_pv1:=T_pv;calcul noua comand (pt timpi, selucreaza n [ms]=[s]*1000)

    w:=(T_sp-T_pv)+(T_sp-T_pv)*real(cycle1)/(Tint1*1000.0)-err1-deriv1;Comanda ventil:=Comanda ventil+Kp1*w;

    limitri la 0% i 100% if(Comanda ventil>100.0) then Comanda ventil:=100.0; end_if;if(Comanda ventil< 0.0) then Comanda ventil:= 0.0; end_if;

    salvare eroare err1:=T_sp-T_pv;pregatire trecere n regim manual xo1:=Comanda ventil;

    n etapa 3 (Regim manual) este iniializat ciclul i pregatete trecerea n regim automat:

    Tranziia 1(intrare n regulator automat s1 -> s2) are loc dac s-a epuizat timpul pentru perioada deeantionare i sunt condiii de reglare n regim automat:

    timer_p1>cycle1 i Run i ModRT

    Tranziia 2(intrare n regulator manual s1 -> s3) are loc dac s-a epuizat timpul pentru perioada deeantionare i sunt condiii de reglare n regim manual:

    timer_p1>cycle1 i Run i notModRT

    E important s se efectueze toate calculele necesare ntr-o singura stare (un sigur ciclu IsaGRAF) i,pentru uniformitate, e de dorit ca pe oricare ramur (automat sau manual), durata unui ciclu de reglaresa fie aceeai, ct mai scurt, adic doua cicluri IsaGRAF (init+automat sau init +manual), pentru camodul de funcionare a ISaGRAF-ului (la un ciclu main execut seciunea de BEGIN , din seciuneaSEQUENTIAL cte stri i permite ciclul maina i apoi seciunea END) s nu influeneze (mreasc)perioada de eantionare.

    Un ciclu de eantionare, pentru valorile cu care se lucreaz la reglare, se calculeaz innd cont c unciclu activ nseamn stare calcul - comanda + stare init (2 isa) iar un ciclu pasiv nseamn stare init(1 isa) unde se ateapt epuizarea timpului ales pentru ciclul de reglare. Daca ciclul isa se fixeaz,atunci se poate alege ca perioada de eantionare pentru reglare un multiplu de ciclu isa mai mare sauegal cu 2 i se introduc n secven etape lipsite de aciuni care asigur implicit realizarea perioadei.Dac sunt necesare regulatoare suplimentare (de exemplu de poziie) va trebuie asigurat osincronizare .

    Oricum, secvena n dou stri pe ramur este cea mai convenabil n cazul n care se adopt aceastsoluie. Soluia corect de realizare a unui regulator este aceea n care funcia de reglare este descrisca o funcie C ce se va apela chiar n seciunea de BEGIN i va fi executat cu siguran cte un pasincremental la fiecare ciclu main.

    Diagrama SFC a programului principal de reglare este prezentat n figura 5.39.

    Reglar

    61

  • 8/12/2019 Probleme automate programabilr

    62/62

    Reglar


Recommended