Limbajul Lad

19
 07.11.2009 14:57 prof .Mărgineanu Ioan 1 Limbajul FBD

description

Programarea in LAD

Transcript of Limbajul Lad

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 1

    Limbajul FBD

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 2

    Limbaje de programare

    Limbaje de programare pentru APLimbajul IL (STL)Limbajul ST(Structured Text)Limbajul LAD (Ladder Diagram)Limbajul FBD (Function Block Diagram)Limbajul SFC (Sequential Function Chart)

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 3

    Limbajul FBD (Function Block Diagram)

    Este un limbaj grafic.Un program FBD este alctuit dintr-o serie de blocuri de funcii elementare, conectate ntre ele prin linii de legtur.Fiecare bloc are un numr de intrri i ieiri.Blocul este reprezentat printr-un dreptunghi.Intrrile sunt n stnga, iar ieirile sunt n dreapta.Un bloc elementar execut o singur funcie.Intrrile unui bloc pot fi conectate la variabile de intrare sauinterne.Ieirile unui bloc pot fi conectare la variabile de ieire sau interne.Tipul variabilelor de I/O este precizat de ctre furnizor n HELP.Fiecare bloc are o intrare de validare: EN i o ieire de test ENO.Cnd EN este FALSE, operaiile definite de bloc nu se execut.Cnd operaiile blocului s-au executat ENO devine TRUE.Dac la execuia blocului a aprut o eroare ENO devine FALSE.

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 4

    Program FBD

    PROCES

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 5

    Tipuri de blocuriBlocuri standard:

    Blocuri de manipulare a datelor (asignare: MOV); Blocuri pentru operaii booleene (AND, OR , XOR); Blocuri aritmetice (Adunare, scdere, nmulire, mprire); Blocuri de comparaie (efectueaz operaii logice: mai mare, mai mic etc.).

    Blocuri speciale: Bistabile R-S i S-R; Blocuri de detecie a fronturilor; Contoare i temporizatoare; Blocuri de procesare de semnal (Regulatoare PID, Trigger Schmitt, integratoare, derivatoare, generatoare de numere aleatoare etc.); Blocuri generatoare de semnal (Semnal dreptunghiular, PWM etc. ); Blocuri matemetice (Calcul de valoare absolut, exp, log etc)

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 6

    Blocuri standard

    PROCES

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 7

    Blocuri speciale: Bistabile

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 8

    Blocuri speciale: Contor CTU

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 9

    Contor CTD

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 10

    Contor CTUD

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 11

    Pentru utilizarea unui contor trebuie cunoscute trei lucruri:

    Care sunt impulsurile care trebuie numrate; Cte impulsuri trebuie s treac pentru ca

    programul s reacioneze; Cnd i cum trebuie s resetm contorul

    pentru ca el s nceap s numere din nou

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 12

    Contoare HSC i generatoare de semnale

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 13

    Temporizator TON

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 14

    Temporizator TOFF

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 15

    Temporizator TP

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 16

    Particulariti de implementare a blocurilorVariabila TP se exprim de obicei n tacturi ale ceasului intern. Cei mai muli furnizori de automate au mai multe variante de temporizatoare. Unele au tactul de 1 ms, altele de 10 ms sau chiar 100 ms. Utilizarea lor este n funcie de precizia care se cere n generarea funciei de timp. Exist i furnizori la care valoarea TP se exprim direct n uniti de timp, utilizndu-se variabile de tip timer. Valoarea maxim acceptat pentru TP depinde de capacitatea registrului care este controlat de oscilator.

    Temporizatoare la SIEMENS (MicroWin 32)

    1 ms 32.767 s T0, T64 10 ms 327.67 s T1-T4, T65-T68

    100 ms 3276.7 s T5-T31, T69-T95

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 17

    Particulariti de implementare a blocurilor

    Temporizatoare la SIEMENS (STEP 7 Manager)

    S5TIME S5T#xH_xxM_xxS_xxxMS

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 18

    Studiu de cazn fig. alturat este prezentat un rezervor a

    crui nivel trebuie controlat local i de la distan. Rezervorul este umplut cu ap n mod continuu. Nivelul su este controlat automat (dac un buton cu auto-reinere REMOTE este apsat) de ctre o pomp P. Cnd nivelul ajunge la 90% (se nchide un contact LH) pompa P pornete i ncepe s goleasc rezervorul. Seciunea conductei de golire este mai mare dect seciunea conductei de umplere, astfel c la funcionarea pompei P se va atinge, dup un timp nivelul de 10% (se nchide contactul LL). Atunci pompa trebuie oprit. La funcionarea manual (dac un buton cu auto-reinere LOCAL este apsat), nivelul este controlat de un operator aflat lng rezervor, iar controlul automat este ignorat. Acesta va ave la dispoziie doua butoane LOCALStart i respectiv LOCALStop pentru controlul sistemului. Motorul de antrenare al pompei este alimentat de o ieire RUN.

    LH

    LL

    Intrare ap

    Ieire ap

    P

  • 07.11.2009 14:57 prof .Mrgineanu Ioan 19

    Studiu de caz

    PROGRAM PLC_PRGVAR

    LH AT %IX0.5: BOOL;AUTOS AT %MX0.0: BOOL;LL AT %IX0.6: BOOL;RUN AT %QX0.0: BOOL;LOCALStart AT %IX0.4: BOOL;LOCAL AT %IX0.1: BOOL;LOCALStop AT %IX0.3: BOOL;AUX AT %MX0.1: BOOL;REMOTE AT %IX0.0: BOOL;

    END_VAR

    Limbajul FBDLimbaje de programareLimbajul FBD (Function Block Diagram)Program FBDTipuri de blocuriBlocuri standardBlocuri speciale: BistabileBlocuri speciale: Contor CTUContor CTDContor CTUDContoare HSC i generatoare de semnaleTemporizator TONTemporizator TOFFTemporizator TPParticulariti de implementare a blocurilorParticulariti de implementare a blocurilorStudiu de cazStudiu de caz