ap laborator 10

Download AP Laborator 10

If you can't read please download the document

Upload: florin-maria-bogdan-chirila

Post on 15-Nov-2015

212 views

Category:

Documents


0 download

DESCRIPTION

sad

TRANSCRIPT

  • 1

    Laborator 10

    Automate programabile

    Programarea automatelor programabile AP

    Instruc iuni de salt, apel subrutine,

    bucle, control principal

    1. No iuni teoretice introductive

    Obiective:

    Funcia de control principal MC i MCR

    Instruciuni de salt CJ

    Instruciuni de apel subrutina CALL, SRET

    Bucle FOR NEXT

    1.1 Func ia de control principal (instruc iunile MC i MCR)

    Instruciunile MC (setare control principal) i MCR (resetare) pot fi utilizate pentru setarea

    condiiilor de baza c rora blocurile de program individuale pot fi activate sau dezactivate. n

    formatul Schem cu contacte, o instruciune Control principal funcioneaz ca un comutator n bara

    de bus din stnga, ce trebuie nchis pentru a fi executat urm torul bloc de program.

    MC (Master Control) Control principal, seteaz o condiie de control principal, marcnd

    nceputul unui bloc de program

    MCR (Master Control Reset) Resetare control principal, reseteaz o condiie de control principal,

    marcnd finalul unui bloc de program.

    Instruciunea MC poate fi utilizat asupra ie irilor (Y) i a releelor (M). n: N0 pn la N7

  • 2

    n exemplul de mai sus, liniile de program dintre instruciunile MC i MCR sunt executate doar

    atunci cnd intrarea X001 este pornit .

    Seciunea de program ce trebuie executat poate fi specificat cu adresa de imbricare

    N0 - N7, ceea ce v permite s introducei mai multe instruciuni MC nainte de instruciunea MCR

    de nchidere. Adresarea unui dispozitiv Y sau M specific un contact de nchidere. Acest contact va

    activa seciunea de program atunci cnd condiia de intrare pentru instruciunea MC are valoarea

    Adev rat.

    n cazul n care condiia de intrare a instruciunii MC va avea valoarea Fals, st rile dispozitivelor

    dintre instruciunile MC i MCR se vor modifica dup cum urmeaz :

    - Temporizatoarele cu memorare, contoarele i dispozitivele ce sunt controlate cu instruciuni SET

    i RST i vor p stra starea curent .

    - Temporizatoarele f r memorare i dispozitivele ce sunt controlate cu instruciuni OUT sunt

    resetate.

    Structurile neimbricate se pot repeta f r limitare, cele imbricate pot fi maxim 8, N0 pn la N7 [3]

  • 3

    1.2. Instruc iuni de salt (CJ Conditional Jump) Instruc de salt pot scurta ciclul de func ionare, cresc viteza de rulare prin eliminarea unor

    p r i de program. Cnd se execut o instruc iune de salt, programul sare la pasul cu eticheta Pxxx.

    Cnd intrarea este inactiv OFF, se

    execut toi pa ii din program. Cnd

    intrarea este activ ON, programul

    sare la eticheta P0. n acest caz, pa ii

    nainte etichetei P0 nu vor fi

    executai.

    ntr-un program pot exista mai multe

    etichete, pentru FX1S pot fi de la P0-

    P62. Eticheta P63 este rezervat

    pentru saltul la sfrsit de program

    END.

    2.1 Modul n care se execut instruc iunile cnd este utilizat o instruc iune de salt

    Func ionarea ie irilor Y i releelor M, S n timpul execut rii unei instruciuni de salt, starea

    ie irilor Y i releelor M, S , va fi men inut la

    valoarea de anterioar saltului.

    1) n timpul execut rii unei instruciuni de salt, chiar

    dac X00 trece n OFF, M10 r mne ON.

    2) F r instruciune salt, M10 trece ON/OFF n func ie

    de X000

    Instruciunile de salt permit atribuirea dubl a ie irilor. n acest exemplu, ie irea Y000 este o bobin

    dubl .

  • 4

    Cnd X010 = OFF, programul func ioneaz n conformitate cu starea intr rii X001.

    Cnd X010 = ON, programul func ioneaz n conformitate cu starea intr rii X002.

    Func ionarea temporizatoarelor Valoarea curent a temporizatoarelor generale este ngheat pe durata cnd instruciunea de salt este activ , i continu de unde a r mas dup dezactivarea instruciunii de salt. Temporizatoarele cu memorie de 1 ms (T246 T249) reia cronometrarea cnd se dezactiveaz instruciunea de salt sau se reactiveaz comanda Timerului prin X001. Dac instruc iunea de resetare pentru un temporizator cu memorie (T246 pn laT255) este programat nainte sau dup o instruc iune de salt, RST va terge o valoare actual a temporizatorului.

    Func ionarea num r toarelor Contoarele uzuale suspend num rarea cnd se execut o instruc iune de salt. Ele vor continua num rarea la dezactivarea instruciunii de salt. Resetarea num r torului se face f r s se in cont de instruciunea de salt. Atunci cnd un contor de mare vitez (C235 C255) ncepe num rarea, el va continua s numere chiar dac apare o instruc iune de salt.

    2.2 Modalit i pentru efectuarea instruc iunilor de salt

    Salt la aceea i etichet Pot fi mai multe instruciuni care fac salt la aceea i etichet , dar nu pot exista dou etichete plasate la linii de program diferite care s aib acela i nume, vor rezulta erori.

    Salt ntr-un singur ciclu opera ional

    Atunci cnd este utilizat o instruciune de salt pe front CJP, programul sare la etichet ntr-un singur ciclu opera ional.

    Salt n sus

    Este posibil de a programa salt la o etichet aflat la o linie de program cu num r mai mic dect cel al liniei de salt CJ.

    3. Instruc iuni de apel subrutina (CALL, SRET)

    n cazul n care instruc iunea CALL este executat , programul va face salt la eticheta desemnat de P0.

    Dup execuia subprogramului de la eticheta P0, se ntoarce la programul original cu instruc iunea SRET.

    Intr-un program pot exista mai multe etichete, astfel pentru:

    FX1S : P0-P62 FX1N, FX2N, FX1NC, FX2NC : P0-P62, P64+P127, FX3U, FX3UC : P0-P62

    P64-P4095

    Dac este utilizat P63, se face salt la sfr it de program END.

    Dup utilizarea subrutinelor, se remprosp teaz intr rile i ie irile,

  • 5

    Pentru cronometre utilizate n programele subrutina este necesar utilizarea de cronometre T192 -T199, i

    T246- T249

    1) n cazul X000 este "OFF", "Programul A" va fi executat. 2) Cnd X000 este "ON", "Programul A" va fi executat dup execuia programului subrutin cu "eticheta P0". 3) n cazul X001 este "OFF", "Programul B" va fi executat. 4) n cazul X001 este "ON", "Programul B" va fi executat dup execuia programului subrutin cu "eticheta P0".

    3.1 Apel instruc iuni imbricate

    Acesta este cazul n care o subrutin apeleaz o alt subrutin .

  • 6

    Cnd X001 intrare este ON se execut instruc iunea CALL P, iar programul sare la eticheta P1 i se execut subrutina 1.

    Subrutina 1 apeleaz instruc iunea CALL P2, programul va sari la eticheta P2 i se execut subrutina 2. Dup execuia subrutini 2, instruc iunea SRET [B] va reveni i se execut in continuare subrutina 1. Dup finalizarea subrutinei 1, opera ia se mut prin instruc iuni SRET [A], la programul principal. Numerele disponibile pentru etichetele sunt P0-P62, P64-P127.

    Dac temporizatoarele generale sunt utilizate ntr-o subrutin sau program de rutina de ntreruperi, nregistrarea timpului este activat numai n programul principal. Acest lucru este la fel i pentru contoare. In general, contoarele nu trebuie utilizate n subrutine sau ntreruperi.

    4. Bucle FOR NEXT Buclele FOR-NEXT au mai multe utiliz ri, dintre care cele mai des ntlnite sunt in proces rile

    multiple de algoritmi sau proces rile multiple pe adrese diferite de date.

    Buclele FOR-NEXT pot fi de asemenea utilizate in proceduri de c utare de date, in tabele sau

    blocuri de date din memoria automatului programabil. Uneori utilizarea buclelor reduce codul ce

    trebuie programat si face programul mai uor de neles.

    Secvena cuprinsa in bucla FOR - NEXT se proceseaz de un num r n de ori (n= 1 la 32767),

    precizat prin instruciune FOR, dup care programul continua cu secvena imediat urm toare

    instruciunii NEXT:

  • 7

    In cazul in care nu este necesara procesarea permanenta a buclei FOR-NEXT, ca metoda de

    invalidare a acesteia se poate utiliza saltul conditionat - Conditional Jump (CJ). Aceasta metoda va

    preveni procesarea buclei daca acest lucru nu este necesar si va conduce la reducerea timpului de

    scanare.

    4.1 Bucle FOR NEXT imbricate Instruciunile FOR-NEXT permit 5 nivele de imbricare. Aceasta nseamn c se pot programa

    maxim 5 bucle FOR-NEXT secvenial, una n interiorul celeilalte.

    In imaginea de mai jos sunt prezentate doua programe ce au 3 si respectiv 2 nivele de

    imbricare. In cazul buclelor imbricate, num rul de repet ri al buclei de pe nivelul inferior se

    multiplica de un num r de ori egal cu num rul de repet ri ale buclei/buclelor de pe nivelele

    superioare.

    Dac numerele pentru FOR si NEXT nu sunt identice, poate s apar o eroare.

    2. Desf urarea lucr rii

    Obiective:

    Funcia de control principal MC i MCR

    Instruciuni de salt condiionat CJ

    Instruciuni de apel subrutina CALL, SRET

    Bucle FOR NEXT

    2.1. Activitate 1: Func ia de control principal MC i MCR

    Se va introduce urm torul program i se va urm ri funcionarea n Ladder Logic

    Test sau se va nscrie n AP i se trece n Monitor Mode F3.

  • 8

    Se observ modificarea diagramei Ladder n urma rul rii programului.

    Acest exemplu este o structur neimbricat i instruciunile MC se pot repeta f r limitare.

    Test 1:

    Implementai programul pentru funcia Master Control MC cu o structur imbricat dup exemplul

    expus n paragraful 1.1

    Structurile imbricate pot fi maxim 8, N0 pn la N7 [3]

  • 9

    2.2. Activitate 2: Instruc iuni de salt condi ionat CJ

    Cnd este activ instruciunea CJ, programul va face un salt la eticheta specificat ,

    care se introduce dnd dublu click pe num rul liniei de program i se d OK.

    n exemplul de mai jos, liniei 11 i s-a atribuit eticheta P62.

    Exemplu de program cu instruciunea de salt CJ

    Se observ c liniile de program 6 i 8 nu sunt executate deoarece este activ instruciunea de salt la

    eticheta P62, [CJ P62]. Dac nu este activ instruciunea de salt, atunci se execut toate liniile de

    program.

    2.3. Activitate 3: Instruc iuni de apel subrutina CALL, SRET

    n cazul n care instruc iunea CALL este executat , programul va face salt la eticheta

    desemnat de P0. Dup execuia subprogramului de la eticheta P0, se ntoarce la

    programul original cu instruc iunea SRET.

    Se va introduce urm torul program i se va urm ri funcionarea n Ladder Logic

    Test sau se va nscrie n AP i se trece n Monitor Mode

  • 10

    Test 2:

    Concepei un program n care n care o subrutin apeleaz o alt subrutin .

    2.4. Activitate 4: Bucle FOR NEXT

    Se va introduce urm torul program i se va urm ri funcionarea n Ladder Logic Test

    Bucla FOR, adaug la registrul D2, valoarea K3, intr-un ciclu de K5 . Vezi i FOR.avi.

  • 11

    Rezolvare test 1: Funcia MC imbricat , se poate urm ri i secvena MC2.avi

    Rezolvare test 2

    Exemplu de subrutin care apeleaz alt subrutin .

    Se poate urm ri rularea acestui program n CALL2.avi

  • 12

    Bibliografie

    1. MELSEC FX Family, Progrramable Logic Controller, Beginner s manual, FX1S, FX1N, FX2N, FX2NC i FX3U, Mitsubishi Electric, Industrial Automation, 30.0.2010, Versiunea C

    2. GX DEVELOPER FX, V0845-1L0C-M, Programming Software, Article no: 208761, Date:07. 2007, Mitsubishi Electric, Industrial Automation, Distribuitor: Sirius Trading & Services

    3. MITSUBISHI, Progrramable Controllers, MELSEC-F, Discovering Control, An Intermediate Guide To Learning PLCs, JY997D22101-A, 01/2006