195
Învăţământul profesional şi tehnic în domeniul TIC Proiect cofinanţat din Fondul Social European în cadrul POS DRU 2007-2013 Beneficiar – Centrul Naţional de Dezvoltare a Învăţământului Profesional şi Tehnic str. Spiru Haret nr. 10-12, sector 1, Bucureşti-010176, tel. 021-3111162, fax. 021-3125498, [email protected] Automate programabile Material de învăţare Domeniul: Electronică şi automatizări Calificarea: Tehnician în automatizări Nivel 3 2009

05 Automate Programabile

Embed Size (px)

Citation preview

Page 1: 05 Automate Programabile

Învăţământul profesional şi tehnic în domeniul TICProiect cofinanţat din Fondul Social European în cadrul POS DRU 2007-2013Beneficiar – Centrul Naţional de Dezvoltare a Învăţământului Profesional şi Tehnic

str. Spiru Haret nr. 10-12, sector 1, Bucureşti-010176, tel. 021-3111162, fax. 021-3125498, [email protected]

Automate programabile

Material de învăţare

Domeniul: Electronică şi automatizări

Calificarea: Tehnician în automatizări

Nivel 3

2009

Page 2: 05 Automate Programabile

AUTOR:CORNEL STANCA – Prof. drd. ing. grad did. I

COORDONATOR:

GABRIELA DIACONU - Prof. ing. grad did.I

CONSULTANŢĂ:

IOANA CÎRSTEA – expert CNDIPTGABRIELA CIOBANU – expert CNDIPTANGELA POPESCU – expert CNDIPTDANA STROIE – expert CNDIPT

Acest material a fost elaborat în cadrul proiectului Învăţământul profesional şi tehnic în domeniul TIC, proiect cofinanţat din Fondul Social European în cadrul POS DRU 2007-2013

2

Page 3: 05 Automate Programabile

Cuprins

I. Introducere....................................................................................................................6II. Resurse.....................................................................................................................12Tema 1. Etapele procesului de proiectare a sistemelor de automatizare...............13

Fişa de documentare 1.1. Definirea problemei...........................................................13Activitatea de învăţare 1.1. Tipuri de logică................................................................14Fişa de documentare 1.2. Proiectarea logicii cablate.................................................15Activitatea de învăţare 1.2.1. Etapele de proiectare a logicii cablate.........................17Activitatea de învăţare 1.2.2. Caracteristicile etapelor de proiectare a logicii cablate.................................................................................................................................... 19Fişa de documentare 1.3. Proiectarea logicii programate..........................................20Activitatea de învăţare 1.3.1. Etapele de proiectare a logicii programate...................22Activitatea de învăţare 1.3.2. Caracteristicile etapelor de proiectare a logicii programate.................................................................................................................24

Tema 2. Clasificarea automatelor programabile - AP (PLC).....................................25Fişa de documentare 2. Clasificarea automatelor programabile................................25Activitatea de învăţare 2. Clasificarea automatelor programabile..............................26

Tema 3. Schema bloc a automatului programabil.....................................................27Fişa de documentare 3.1. Schema bloc a automatului programabil cu prelucrare la nivel de bit (APB)........................................................................................................27Activitatea de învăţare 3.1.1. Blocurile componente ale APB.....................................29Activitatea de învăţare 3.1.2. Rolul funcţional al blocurilor componente ale APB.......30Activitatea de învăţare 3.1.3. Structura magistralei APB............................................31Fişa de documentare 3.2. Unitatea centrală...............................................................32Activitatea de învăţare 3.2.1. Blocurile componente ale unităţii centrale....................33Activitatea de învăţare 3.2.2. Rolul funcţional al blocurilor componente ale unităţii centrale.......................................................................................................................34Fişa de documentare 3.3. Periferice de intrare...........................................................35Activitatea de învăţare 3.3.1. Blocurile componente ale perifericelor de intrare.........36Activitatea de învăţare 3.3.2. Rolul funcţional al blocurilor componente ale perifericelor de intrare.................................................................................................37Fişa de documentare 3.4. Periferice de ieşire............................................................38Activitatea de învăţare 3.4.1. Blocurile componente ale perifericelor de ieşire...........39Activitatea de învăţare 3.4.2. Rolul funcţional al blocurilor componente ale perifericelor de ieşire..................................................................................................40Fişa de documentare 3.5. Periferice interne...............................................................41Activitatea de învăţare 3.5.1. Blocurile componente ale perifericelor interne.............42Activitatea de învăţare 3.5.2. Rolul funcţional al blocurilor componente ale perifericelor interne.....................................................................................................43

Tema 4. Operaţii pentru execuţia unei instrucţiuni...................................................44Fişa de documentare 4. Operaţii pentru execuţia unei instrucţiuni.............................44Activitatea de învăţare 4.1. Operaţiile necesare execuţiei instrucţiunilor....................47Activitatea de învăţare 4.2. Blocurile şi semnalele implicate în execuţia operaţiilor.. .48

Tema 5. Instrucţiuni de prelucrare a informaţiei.......................................................49Fişa de documentare 5.1. Programarea APB.............................................................49Activitatea de învăţare 5.1. Noţiuni generale despre programarea APB....................51Fişa de documentare 5.2. Instrucţiuni de testare a condiţiilor....................................52Activitatea de învăţare 5.2. Componentele şi funcţionarea instrucţiunilor de testare a condiţiilor....................................................................................................................54Fişa de documentare 5.3. Instrucţiuni de transfer date..............................................56

3

Page 4: 05 Automate Programabile

Activitatea de învăţare 5.3. Componentele şi funcţionarea instrucţiunilor de transfer date............................................................................................................................ 58Fişa de documentare 5.4. Instrucţiuni de prelucrare logică a datelor.........................60Activitatea de învăţare 5.4. Componentele şi funcţionarea instrucţiunilor de prelucrare logică a datelor...........................................................................................................64Fişa de documentare 5.5. Instrucţiuni de salt.............................................................66Activitatea de învăţare 5.5.1. Componentele şi funcţionarea instrucţiunilor de salt....68Fişa de documentare 5.6. Generarea temporizărilor..................................................69Activitatea de învăţare 5.6.1. Secvenţă de instrucţiuni pentru temporizarea la anclanşare..................................................................................................................71Activitatea de învăţare 5.6.2. Secvenţă de instrucţiuni pentru temporizarea la declanşare..................................................................................................................72

Tema 6. Noţiuni de bază în alegerea soluţiei de automatizare.................................73Fişa de documentare 6. Alegerea soluţiei de automatizare........................................73Activitatea de învăţare 6.1. Componentele procesului de alegere a soluţiei de automatizare...............................................................................................................76Activitatea de învăţare 6.2. Structura adecvată a sistemului cu AP...........................77Activitatea de învăţare 6.3. Limbajul de programare adecvat.....................................78Activitatea de învăţare 6.4. Etapele de creare proiect, analiză, scriere şi salvare program......................................................................................................................79

Tema 7. Limbaje de programare ale automatelor programabile..............................80Fişa de documentare 7.1. Limbajul de programare STL............................................80Activitatea de învăţare 7.1.1. Câmpurile instrucţiunii STL..........................................83Activitatea de învăţare 7.1.2. Semnificaţia câmpurilor instrucţiunilor STL..................84Activitatea de învăţare 7.1.3. Operatorii limbajului STL..............................................85Activitatea de învăţare 7.1.4. Modificatorii limbajului STL..........................................86Fişa de documentare 7.2. Limbajul de programare LAD............................................87Activitatea de învăţare 7.2.1. Simbolurile grafice de bază ale limbajului LAD............91Activitatea de învăţare 7.2.2. Implementarea funcţiilor booleene în limbajul LAD......92Fişa de documentare 7.3. Limbajul FBD....................................................................94Activitatea de învăţare 7.3.1. Elementele blocurilor din limbajul FBD........................96Activitatea de învăţare 7.3.2. Tipurile de blocuri ale limbajului FBD...........................97Activitatea de învăţare 7.3.3. Simbolurile blocurilor de bază ale limbajului FBD........98

Tema 8. Utilizarea automatelor programabile pe bit la implementarea automatelor cu stări finite, definite prin diagrame de stare...........................................................99

Fişa de documentare 8. Utilizarea automatelor programabile pe bit la implementarea automatelor cu stări finite, definite prin diagrame de stare.........................................99Activitatea de învăţare 8.1. Implementarea în limbaj STL a automatului cu stări finite.................................................................................................................................. 102Activitatea de învăţare 8.2. Implementarea în limbaj LAD a automatului cu stări finite.................................................................................................................................. 103Activitatea de învăţare 8.3. Implementarea în limbaj FBD a automatului cu stări finite.................................................................................................................................. 104

Tema 9. Conectarea unui automat programabil la un proces de automatizare....105Fişa de documentare 9. Conectarea unui automat programabil la un proces de automatizare.............................................................................................................105Activitatea de învăţare 9.1. Tipuri de intrări – ieşiri ale AP şi conectarea lor la proces.................................................................................................................................. 108Activitatea de învăţare 9.2. Conectarea la proces a AP...........................................110Activitatea de învăţare 9.3. Schema de conectare a unui AP ce implementează un automat cu stări finite...............................................................................................112

4

Page 5: 05 Automate Programabile

Activitatea de învăţare 9.4. Implementarea hardware şi software a unui automat cu stări finite pe un AP..................................................................................................113

Tema 10. Programarea AP utilizând limbajele STL, LAD şi FBD............................115Fişa suport 10.1. Sinteza funcţională a circuitului implementabil cu AP...................115Activitatea de învăţare 10.1. Sinteza circuitului implementabil cu AP......................117Fişa de documentare 10.2. Programarea în limbajul STL a AP ce emulează circuitul convertor octal-alfabetic...........................................................................................118Activitatea de învăţare 10.2.1. Implementarea în limbaj STL a funcţiilor unui circuit logic..........................................................................................................................119Activitatea de învăţare 10.2.2. Scrierea în limbajul STL într-un mediu de dezvoltare specific, a unui program pentru AP..........................................................................120Fişa de documentare 10.3. Programarea în limbajul LAD a AP ce emulează circuitul convertor octal-alfabetic...........................................................................................121Activitatea de învăţare 10.3.1. Implementarea în limbaj LAD a funcţiilor unui circuit logic..........................................................................................................................122Activitatea de învăţare 10.3.2. Scrierea în limbajul LAD într-un mediu de dezvoltare specific, a unui program pentru AP..........................................................................123Fişa de documentare 10.4. Programarea în limbajul FBD a AP ce emulează circuitul convertor octal-alfabetic...........................................................................................124Activitatea de învăţare 10.4.1. Implementarea în limbaj FBD a funcţiilor unui circuit logic..........................................................................................................................126Activitatea de învăţare 10.4.2. Scrierea în limbajul FBD într-un mediu de dezvoltare specific, a unui program pentru AP..........................................................................127Activitatea de învăţare 10.4.3. Implementare hardware şi software a unui circuit logic.................................................................................................................................. 128

III. Glosar...............................................................................................................130IV. Bibliografie............................................................................................................132

5

Page 6: 05 Automate Programabile

I. IntroducereMaterialul de invatare are rolul de a conduce elevul la dobandirea competentelor:

26.1. Identifică automatele programabile după dimensiunea magistralei de date;26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit;26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Domeniul Electronică şi automatizăriCalificarea Tehnician în automatizăriNivelul de calificare 3

Materialul cuprinde:- fise de documentare- activitati de invatare- glosar

Prezentul material de invatare se adresează elevilor din cadrul liceelor tehnologice, domeniul Electronică şi automatizări, calificarea Tehnician în automatizări.

Competenţa / Rezultatul învăţării Teme Elemente componente

26.1. Identifică automatele programabile după dimensiunea magistralei de date

Tema 1. Etapele procesului de proiectare a sistemelor de automatizare

Fişa de documentare 1.1.Definirea problemei.Activitatea de învăţare 1.1.Tipuri de logică.Fişa de documentare 1.2. Proiectarea logicii cablate.Activitatea de învăţare 1.2.1. Etapele de proiectare a logicii cablate.Activitatea de învăţare 1.2.2. Caracteristicile etapelor de proiectare a logicii cablate.Fişa de documentare 1.3. Proiectarea logicii programateActivitatea de învăţare 1.3.1. Etapele de proiectare a logicii programate.Activitatea de învăţare 1.3.2. Caracteristicile etapelor de proiectare a logicii programate.

Tema 2. Clasificarea automatelor programabile

Fişa de documentare 2. Clasificarea automatelor programabileActivitatea de învăţare 2. Clasificarea automatelor programabile.

6

Page 7: 05 Automate Programabile

Competenţa / Rezultatul învăţării Teme Elemente componente

26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Tema 3. Schema bloc a automatului programabil.

Fişa de documentare 3.1. Schema bloc a automatului programabil cu prelucrare la nivel de bit (APB)Activitatea de învăţare 3.1.1. Blocurile componente ale APB.Activitatea de învăţare 3.1.2. Rolul funcţional al blocurilor componente ale APB.Activitatea de învăţare 3.1.3. Structura magistralei APB.Fişa de documentare 3.2. Unitatea centrală.Activitatea de învăţare 3.2.1. Blocurile componente ale unităţii centrale.Activitatea de învăţare 3.2.2. Rolul funcţional al blocurilor componente ale unităţii centrale.Fişa de documentare 3.3. Periferice de intrare.Activitatea de învăţare 3.3.1. Blocurile componente ale perifericelor de intrare.Activitatea de învăţare 3.3.2. Rolul funcţional al blocurilor componente ale perifericelor de intrare.Fişa de documentare 3.4. Periferice de ieşire

Activitatea de învăţare 3.4.1. Blocurile componente ale perifericelor de ieşire.Activitatea de învăţare 3.4.2. Rolul funcţional al blocurilor componente ale perifericelor de ieşire.Fişa de documentare 3.5.Periferice interne.

Activitatea de învăţare 3.5.1. Blocurile componente ale perifericelor interne.

Activitatea de învăţare 3.5.2. Rolul funcţional al blocurilor componente ale perifericelor interne.

7

Page 8: 05 Automate Programabile

Competenţa / Rezultatul învăţării Teme Elemente componente

Tema 4. Operaţii pentru execuţia unei instrucţiuni

Fişa de documentare 4. Operaţii pentru execuţia unei instrucţiuniActivitatea de învăţare 4.1. Operaţiile necesare execuţiei instrucţiunilorActivitatea de învăţare 4.2. Blocurile şi semnalele implicate în execuţia operaţiilor.

Tema 5. Instrucţiuni de prelucrare a informaţiei

Fişa de documentare 5.1. Programarea APB.Activitatea de învăţare 5.1. Noţiuni generale despre programarea APB.Fişa de documentare 5.2. Instrucţiuni de testare a condiţiilor.Activitatea de învăţare 5.2. Componentele şi funcţionarea instrucţiunilor de testare a condiţiilor.Fişa de documentare 5.3. Instrucţiuni de transfer dateActivitatea de învăţare 5.3. Componentele şi funcţionarea instrucţiunilor de transfer date.Fişa de documentare 5.4. Instrucţiuni de prelucrare logică a datelor.Activitatea de învăţare 5.4. Componentele şi funcţionarea instrucţiunilor de prelucrare logică a datelor.Fişa de documentare 5.5. Instrucţiuni de saltActivitatea de învăţare 5.5. Componentele şi funcţionarea instrucţiunilor de salt.Fişa de documentare 5.6. Generarea temporizărilorActivitatea de învăţare 5.6.1. Secvenţă de instrucţiuni pentru temporizarea la anclanşare.Activitatea de învăţare 5.6.2. Secvenţă de instrucţiuni pentru temporizarea la declanşare.

26.3. Examinează utilizarea automatelor programabile cu

Tema 6. Noţiuni de bază în alegerea soluţiei de

Fişa de documentare 6.Alegerea soluţiei de automatizare.Activitatea de învăţare 6.1.

8

Page 9: 05 Automate Programabile

Competenţa / Rezultatul învăţării Teme Elemente componente

prelucrare la nivel de bit la implementarea automatelor cu stări finite.

automatizare

Componentele procesului de alegere a soluţiei de automatizare.Activitatea de învăţare 6.2. Structura adecvată a sistemului cu AP Activitatea de învăţare 6.3. Limbajul de programare adecvat.Activitatea de învăţare 6.4. Etapele de creare proiect, analiză, scriere şi salvare program.

Tema 7. Limbaje de programare ale automatelor programabile.

Fişa de documentare 7.1. Limbajul de programare STL.Activitatea de învăţare 7.1.1. Câmpurile instrucţiunii STL.Activitatea de învăţare 7.1.2. Semnificaţia câmpurilor instrucţiunilor STL.Activitatea de învăţare 7.1.3. Operatorii limbajului STL.Activitatea de învăţare 7.1.4. Modificatorii limbajului STL.Fişa de documentare 7.2. Limbajul de programare LAD.Activitatea de învăţare 7.2.1. Simbolurile grafice de bază ale limbajului LAD.Activitatea de învăţare 7.2.2. Implementarea funcţiilor booleene în limbajul LAD.Fişa de documentare 7.3. Limbajul FBD.Activitatea de învăţare 7.3.1. Elementele blocurilor din limbajul FBD.Activitatea de învăţare 7.3.2. Tipurile de blocuri ale limbajului FBD.Activitatea de învăţare 7.3.3. Simbolurile de blocurilor de bază ale limbajului FBD.

Tema 8. Utilizarea automatelor programabile pe bit la implementarea automatelor cu stări finite, definite prin diagrame de stare.

Fişa de documentare 8. Utilizarea APB la implementarea automatelor cu stări finite, definite prin diagrame de stare.Activitatea de învăţare 8.1. Implementarea în limbaj STL a automatului cu stări finite.Activitatea de învăţare 8.2.

9

Page 10: 05 Automate Programabile

Competenţa / Rezultatul învăţării Teme Elemente componente

Implementarea în limbaj LAD a automatului cu stări finite.

Activitatea de învăţare 8.3. Implementarea în limbaj FBD a automatului cu stări finite.

Tema 9. Conectarea unui automat programabil la un proces de automatizare

Fişa de documentare 9. Conectarea unui automat programabil la un proces de automatizareActivitatea de învăţare 9.1. Conectarea AP la proces.Activitatea de învăţare 9.2. Tipuri de intrări – ieşiri ale AP şi conectarea lor la proces.Activitatea de învăţare 9.3. Schema de conectare a unui AP ce implementează un automat cu stări finite.Activitatea de învăţare 9.4. Implementarea hardware şi software a unui automat cu stări finite pe un AP.

Tema 10. Programarea automatelor programabile utilizând limbajele STL, LAD şi FBD.

Fişa suport 10.1. Sinteza funcţională a circuitului implementabil cu AP.Activitatea de învăţare 10.1. Sinteza circuitului implementabil cu AP.Fişa de documentare 10.2. Programarea în limbajul STL a AP ce emulează circuitul convertor octal-alfabetic.Activitatea de învăţare 10.2.1. Implementarea în limbaj STL a funcţiilor unui circuit logic.Activitatea de învăţare 10.2.2. Scrierea în limbajul STL într-un mediu de dezvoltare specific, a unui program pentru AP.Fişa de documentare 10.3. Programarea în limbajul LAD a AP ce emulează circuitul convertor octal-alfabetic.

Activitatea de învăţare 10.3.1. Implementarea în limbaj LAD a funcţiilor unui circuit logic.

Activitatea de învăţare 10.3.2. Scrierea în limbajul LAD într-un

10

Page 11: 05 Automate Programabile

Competenţa / Rezultatul învăţării Teme Elemente componente

mediu de dezvoltare specific, a unui program pentru AP.Fişa de documentare 10.4. Programarea în limbajul FBD a AP ce emulează circuitul convertor octal-alfabetic.Activitatea de învăţare 10.4.1. Implementarea în limbaj FBD a funcţiilor unui circuit logic.Activitatea de învăţare 10.4.2. Scrierea în limbajul FBD într-un mediu de dezvoltare specific, a unui program pentru AP.Activitatea de învăţare 10.4.3. Implementare hardware şi software a unui circuit logic.

Absolventul învăţământului liceal cu calificarea Tehnician în automatizări, trebuie să cunoască structura internă, caracteristicile, parametrii specifici şi funcţionarea automatelor programabile, precum şi noţiunile de bază despre programarea acestora. De asemenea, trebuie să poată alege soluţia optimă de automatizare şi să utilizeze automatele programabile conectându-le în proces şi realizând programe pentru conducere de procese simple.

Semnificaţia elementelor grafice din material este dată în tabelul de mai jos:

Definiţie Important Evaluare Organizare clasă Timp alocat

11

Page 12: 05 Automate Programabile

II. ResursePrezentul material de invatare cuprinde diferite tipuri de resurse care pot fi folosite

de elevi:- fise de documentare- activitati de invatare

Elevii pot folosi atat materialul prezent (in forma printata) cat si varianta echivalenta online.

12

Page 13: 05 Automate Programabile

Tema 1. Etapele procesului de proiectare a sistemelor de automatizare

Fişa de documentare 1.1. Definirea problemei

Sistemele de automatizare proiectate pot fi implementate în două moduri:1. Prin logica cablată, caz în care:

a. Funcţia realizată depinde de conexiunile dintre module, deci de cablaj şib. Orice modificare în funcţia de conducere a sistemului necesită modificări

hardware.2. Prin logica programată, ceea ce presupune:

a. Existenţa unui echipament universal pe care poate rula orice aplicaţie;b. Funcţia sistemului de automatizare este realizată de un program aflat într-o

memorie. Modificarea funcţiei sistemului, în acest caz, nu se face prin modificări hardware ci software, deci prin încărcarea în memorie a unui alt program.

Deşi astăzi, logica programată a câştigat teren în faţa celei cablate, datorită avantajelor şi dezavantajelor ambelor moduri de implementare, alegerea între cele două nu este întotdeauna uşor de făcut.

Dacă sistemul de automatizare are de gestionat un număr mare de parametri şi/ sau algoritmul de conducere este complex atunci se optează pentru implementarea prin logică programată.

Dacă în schimb, cerinţele de viteză sunt primordiale, se optează pentru implementarea prin logică cablată. În cazul sistemelor care au cerinţe şi de complexitate şi de viteză, soluţia de implemetare va fi una mixtă.

Proiectarea unui sistem de automatizare va începe în concluzie cu faza de definire a problemei în care se face şi partajarea sistemului în logică cablată şi în logica programată.

În această fază se determină numărul de intrări şi ieşiri din sistem, viteza lor de variaţie, cantitatea şi viteza de prelucrare a datelor, tipul de erori şi modul de tratare al acestora.

Pentru partajarea pe tipuri de logică se pot întâlni următoarele situaţii:1. Există un număr mic de semnale de intrare şi ieşire iar logica de prelucrare a lor

este simplă astfel încât realizarea unui sistem în logică cablată este mai economică decât implemetarea sistemului în logică programată chiar în varianta minimală;

2. Cerinţele de performanţă ale sistemului nu sunt deosebite, astfel încât se poate implementa în logică programată;

3. Logica de prelucrare a datelor este complexă, numărul de intrări şi ieşiri este mare deci se poate utiliza logica programată. Există însă şi cerinţe de performanţă ce nu pot fi satisfăcute decât prin logică cablată. Se impune în acest caz o prelucrare parţială a semnalelor în circuite specializate. Se atribuie părţii din sistem realizată în logică programată cât mai multe funcţii pentru astfel încât logica cablată să fie cât mai simplă.

13

Page 14: 05 Automate Programabile

Activitatea de învăţare 1.1. Tipuri de logică.

Competenţa:26.1. Identifică automatele programabile după dimensiunea magistralei de date.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Selectaţi tipul de logică potrivit pentru implementarea unei automatizări.

Tipul activităţii: Expansiune

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 10 minute.

 Folosind fişa de documentare 1.1. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) şi pornind de la enunţurile de mai jos, realizaţi un eseu de circa 10 rânduri în care să dezvoltaţi ideile conţinute în enunţuri. În realizarea eseului trebuie să folosiţi minim 7 cuvinte din lista dată mai jos.

În logica cablată realizarea funcţiei depinde de …………….. Modificarea în funcţia de conducere presupune ………………… Logica cablată se poate utiliza în cazul ……………….

În logica programată este nevoie de un …………………. Modificarea în funcţia de conducere presupune ………………. Se apelează la logica programată ………………….

Lista de cuvinte: soluţie mixtă, echipament universal, număr mare de parametri, algoritm complex, viteză de variaţie, viteza de procesare a datelor, tratare a erorilor, hardware, software, program.

Evaluare:Dacă se acoperă cerinţele din enunţ, se trece la următoarea activitate, dacă nu, se consultă fişa de documentare şi apoi se reface activitatea.

14

Page 15: 05 Automate Programabile

Fişa de documentare 1.2. Proiectarea logicii cablate

Proiectarea logicii cablate se face pe baza algoritmului din Figura 1.2.1.

A. Partajarea blocurilorÎn această etapă, sistemul se împarte în blocuri folosind criterii funcţionale1 sau poziţionale2. Blocurile proiectate trebuie să realizeze un compromis între două criterii oarecum contradictorii care se impun acestora şi anume:

- să aibă complexitate cât mai redusă pentru a putea fi uşor de realizat şi testat şi- numărul blocurilor să fie cât mai mic pentru a nu apărea probleme de interconectare.

B. Sinteza blocurilorÎn această etapă se exprimă funcţionarea blocurilor prin funcţii logice.

C. Implementarea cu circuite logiceSe implementează funcţiile logice cu ajutorul componentelor electronice montate pe:

- circuite imprimate realizate special sau- prin wraping pe plăci universale.

Înainte de implantare componentele vor fi testate. Se realizează apoi conexiunile între plăci.

D. Testarea blocurilor componenteTestarea blocurilor componente se face separat, în condiţii cât mai apropiate de cele reale, simulându-se blocurile încă nerealizate.Dacă în urma testării apar erori se reia procesul de la etapa C.

E. Testarea prototipuluiÎn această etapă pot să apară conexiuni greşite datorate fazei B, de sinteză a blocurilor, fapt pentru care se reia procesul de la această etapă. Modificările făcute pot afecta funcţionarea întregului sistem. Nu este exclusă reproiectarea întregului sistem.

F. Proiectare produs finalProiectarea produsului final poate dura foarte mult mai ales dacă prototipul a fost implementat pe plăci universale iar produsul final trebuie realizat pe circuite imprimate. De multe ori ciclul trebuie parcurs de mai multe ori până la realizarea unui produs acceptabil.

1 Care au în vedere funcţia îndeplinită2 Care au în vedere poziţia ocupată

15

Page 16: 05 Automate Programabile

A. Partajarea blocurilor

Sinteza blocurilorB. Sinteza blocurilor

C. Implementarea cu circuite logice

D. Testarea blocurilor componente

Lucrează

corect?

NU

E. Testarea prototipului

Lucrează

corect?

NU

F. Proiectare produs final

DA

DA

Figura 1.2.1. Algoritmul de proiectare a logicii cablate.

16

Page 17: 05 Automate Programabile

Activitatea de învăţare 1.2.1. Etapele de proiectare a logicii cablate.

Competenţa:26.1. Identifică automatele programabile după dimensiunea magistralei de date.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- identificaţi etapele de proiectare a logicii cablate.

Tipul activităţii: Harta traseu

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

Folosind fişa de documentare 1.2. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) refaceţi diagrama etapelor de proiectare a logicii cablate cu textele corespunzătoare din listă: Proiectare produs final, Implementarea cu circuite logice, Partajarea blocurilor, Testarea blocurilor componente, Testarea prototipului, Sinteza blocurilor.

17

Page 18: 05 Automate Programabile

Evaluare:Dacă toate blocurile diagramei au fost corect completate, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 1.2. şi apoi se reface activitatea.

Sinteza blocurilor

Lucrează

corect?

NU

Lucrează

corect?

NU

DA

DA

18

Page 19: 05 Automate Programabile

Activitatea de învăţare 1.2.2. Caracteristicile etapelor de proiectare a logicii cablate.

Competenţa:26.1. Identifică automatele programabile după dimensiunea magistralei de date.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- specificaţi caracteristici ale etapelor de proiectare a logicii cablate.

Tipul activităţii: Potrivire.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 10 minute.

 Folosind fişa de documentare 1.2. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) faceţi asocierile corespunzătoare între denumirile etapelor procesului de proiectare a logicii cablate şi caracteristici ale acestora.

Etapele de proiectare Caracteristici ale etapelor1. Sinteza blocurilor a) Trebuie parcursă de mai multe ori până la

obţinerea unui produs acceptabil. Durează mult mai ales dacă prototipul s-a realizat pe plăci de test universale.

2. Testarea prototipului b) Exprimarea funcţionării blocurilor prin funcţii logice.

3. Testarea blocurilor componente c) Implementarea funcţiilor logice pe plăci universale sau dedicate după testarea componentelor electronice.

4. Partajarea blocurilor d) Aici sunt descoperite erorile făcute în faza de sinteză, reluarea proiectării trebuind făcută din această fază, uneori cu modificări radicale.

5. Implementarea cu circuite logice e) Se testează separtat blocurile componente, cele inexistente simulându-se. La apariţia de erori se reia implementarea.

6. Proiectare produs final f) Se împarte sistemul în module după criterii funcţionale sau poziţionale. Modulele trebuie să satisfacă cerinţele de număr minim şi complexitatate redusă.

Evaluare:Dacă toate asocierile au fost făcute corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 1.2. şi apoi se reface activitatea.

19

Page 20: 05 Automate Programabile

Fişa de documentare 1.3. Proiectarea logicii programate

Proiectarea logicii programate se face pe baza algoritmului din Figura 1.3.1.

Semnificaţia blocurilor componente este următoarea:

A. Alegerea configuraţiei sistemuluiAlegerea configuraţiei sistemului de calcul se face pe baza analizei de sistem. Se determină numărul de intrări, numărul de ieşiri , numărul de dispozitive de transmitere a informaţiei, capacitatea memoriei, tipul şi numărul de interfeţe cu procesul. Tot în această etapă se face o analiză preliminară a performanţelor sistemului şi a soluţiilor care ar duce la realizarea acestora.

B. Proiectarea programuluiSe face schiţarea operaţiilor ce urmează a fi executate de program.

C. Scrierea programului sursăScrierea programului în limbaj de asamblare sau într-un limbaj de nivel superior.

D. Asamblarea programuluiTranslatarea în limbaj cod maşină automat în mediul de dezvoltare.

E. Testarea programuluiTestarea programului urmăreşte verificarea faptului că programul răspunde corect la cerinţele impuse. Fazele de scriere, translatare şi testare se repetă de mai multe ori până când codul maşină funcţionează corect. Se verifică apoi dacă programul satisface performanţele impuse sistemului prin tema de proiectare. Se verifică mai ales viteza de răspuns. Dacă sistemul nu răspunde se încearcă o optimizare a acestuia. Dacă nici după optimizare sistemul nu răspunde cerinţelor se reia analiza sistemului pentru a vedea ce blocuri pot fi realizate în logica cablată.

F. Înscrie programul în PROMDacă verificarea sistemului este încheiată cu succes, programul este înscris în PROM.

G. Elaborarea documentaţieiSe elaborează documentaţia aferentă.

20

Page 21: 05 Automate Programabile

A. Alegerea configuraţiei sistemului

B. Proiectarea programului

C. Scrierea programului sursă

D. Asamblarea programului

E. Testarea programului

Este corect

?

Satisface performanţele

impuse ?

F. Înscrie programul în PROM

G. Elaborarea documentaţiei

NU

Partajarea sistemului în logică cablată şi logică programată

Figura 1.3.1. Algoritmul de proiectare a logicii programate.

DA

DA

NU

21

Page 22: 05 Automate Programabile

Activitatea de învăţare 1.3.1. Etapele de proiectare a logicii programate.

Competenţa:26.1. Identifică automatele programabile după dimensiunea magistralei de date.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- identificaţi etapele de proiectare a logicii programate.

Tipul activităţii: Harta traseu.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

Folosind fişa de documentare 1.3. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) completaţi următoarea diagramă cu textele corespunzătoare din listă: Alegerea configuraţiei sistemului, Testarea programului, Elaborarea documentaţiei, Înscrie programul în PROM, Asamblarea programului, Scrierea programului sursă, Proiectarea programului.

22

Page 23: 05 Automate Programabile

Evaluare:Dacă toate blocurile diagramei au fost corect completate, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 1.3. şi apoi se reface activitatea.

Este corect

?

Satisface performanţele

impuse ?

NU

Partajarea sistemului în logică cablată şi logică programată

DA

DA

NU

23

Page 24: 05 Automate Programabile

Activitatea de învăţare 1.3.2. Caracteristicile etapelor de proiectare a logicii programate.

Competenţa:26.1. Identifică automatele programabile după dimensiunea magistralei de date.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- specificaţi caracteristici ale etapelor de proiectare a logicii programate.

Tipul activităţii: Potrivire.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 10 minute.

 Folosind fişa de documentare 1.3. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) faceţi asocierile corespunzătoare între denumirile etapelor procesului de proiectare a logicii programate şi caracteristici ale acestora.

Etapele de proiectare Caracteristici ale etapelor1. Alegerea configuraţiei sistemului;

a) Se verifică dacă programul satisface cerinţele impuse prin tema de proiectare. Dacă este necesar se reiau fazele de scriere, translatare şi testare a programului. Se verifică viteza de răspuns. Dacă viteza este prea mică se poate ajunge chiar la implementarea unor module în formă cablată.

2. Proiectarea programului b) Se elaborează documentaţia sistemului.3. Scrierea programului sursă c) Translatarea programului în limbaj cod maşină.4. Elaborarea documentaţiei d) Se determină numărul de intrări, numărul de ieşiri ,

numărul de dispozitive de transmitere a informaţiei, capacitatea memoriei, tipul şi numărul de interfeţe cu procesul.

5. Testarea programului e) Schiţarea operaţiilor ce trebuie executate de program.

6. Înscrie programul în PROM f) Scrierea programului într-un limbaj de nivel superior

7. Asamblarea programului g) Dacă verificarea programului s-a încheiat cu succes acesta se înscrie în memoria permanentă.

Evaluare:Dacă toate asocierile au fost făcute corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 1.3. şi apoi se reface activitatea.

24

Page 25: 05 Automate Programabile

Tema 2. Clasificarea automatelor programabile - AP (PLC)

Fişa de documentare 2. Clasificarea automatelor programabile

Există mai multe tipuri de AP, clasificate astfel:

După principiul constructiv al AP, există:

Automate programabile algoritmice, care au structura asemănătoare unităţilor de control ale procesoarelor. Sunt construite în serie mare ca sisteme înglobate şi pot fi programate doar de personal cu pregătire superioară;

Automate programabile vectoriale, ce sunt de fapt microcalculatoare special construite pe care se pot implementa structuri de logică combinaţională şi secvenţială prin programare.

După numărul de procesoare al AP, există:

Automate programabile cu un singur procesor, ce folosesc un tampon de memorie, numit imagine de proces în care se păstrează valorile intrărilor şi ieşirilor din proces pe perioada execuţiei programului şi care este actualizată la sfârşitul execuţiei programului;

Automate programabile multiprocesor, la care modificarea stării ieşirilor şi sesizarea modificării stării intrărilor se face imediat.

După dimensiunea magistralei de date automatele programabile se clasifică astfel:

Automate programabile cu prelucrare la nivel de bit, sunt automate programabile la care dimensiunea magistralei de date este de 1 bit, astfel încât operanzii care se procesează au şi ei dimensiunea de 1 bit;

Automate programabile cu prelucrare la nivel de cuvânt de n biţi, sunt automate programabile la care dimensiunea magistralei şi a operanzilor este egală cu lungimea acestui cuvânt, n8.

Automate programabile mixte, sunt automate programabile prevăzute cu două unităţi de calcul aritmetic şi logic, una pentru procesare pe 1 bit şi alta pentru cuvinte de n biţi.

25

Page 26: 05 Automate Programabile

Activitatea de învăţare 2. Clasificarea automatelor programabile.

Competenţa:26.1. Identifică automatele programabile după dimensiunea magistralei de date.

Obiective:După parcurgerea acestei activităţi veţi fi capabili să:

- clasificaţi automatele programabile după 3 criterii;- identificaţi automatul programabil pe bit.

Tipul activităţii: Clasificare.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

 Folosind fişa de documentare 2. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) faceţi asocierile corespunzătoare între criteriile de clasificare ale AP şi tipurile de AP.

Criterii de clasificare AP Tipuri AP1. Principiul constructiv a) Automate programabile multiprocesor.2. Dimensiunea magistralei de date

b) Automate programabile cu prelucrare la nivel de bit.

3. Numărul de procesoare c) Automate programabile cu prelucrare la nivel de cuvânt.d) Automate programabile cu un singur procesore) Automate programabile vectorialef) Automate programabile mixteg) Automate programabile algoritmice

Evaluare:Dacă toate tipurile de AP au fost corect clasificate, se trece la următoarea activitate, dacă nu, se consultă fişa de documentare 2. şi apoi se reface activitatea.

26

Page 27: 05 Automate Programabile

Tema 3. Schema bloc a automatului programabil

Fişa de documentare 3.1. Schema bloc a automatului programabil cu prelucrare la nivel de bit (APB)

Automatele programabile cu prelucrarea la nivel de bit sau automatele programabile pe bit (APB), sunt destinate conducerii proceselor de complexitate medie.

În Figura 3.1. se prezintă schema bloc a unui APB.

Structura unui APB este asemănătoare cu a unui calculator. În schimb un APB trebuie să controleze un număr mare de intrări şi ieşiri din proces în condiţii de siguranţă funcţională ridicată. Pentru a putea răspunde în timp real arhitectura internă este simplificată iar setul de instrucţiuni redus.

Blocurile componente ale APB sunt:

Unitatea centrală, este “creierul” APB, ce coordonează activitatea din întregul sistem;

Consola de programare, este echipamentul pe care se realizează programul ce va rula pe APB, şi de pe care se încarcă în memoria de programe a APB acest program;

Periferice de intrare3, sunt blocurile funcţionale prin care APB primeşte informaţii din proces (de la întrerupătoare, comutatoare, contactoare, relee, limitatoare);

Periferice de ieşire4, sunt blocurile funcţionale prin care APB trimite comenzi în proces (de exemplu pentru alimentarea unor bobine de relee sau contactoare, sau aprinderea de lămpi de semnalizare);

Periferice interne (temporizări/ contorizări), sunt blocurile funcţionale prin care se pot genera intervale de timp şi contorizări de evenimente;

3 În multe abordări, se utilizează noţiunea de Interfeţe de intrare;4 În multe abordări, se utilizează noţiunea de Interfeţe de ieşire;

Unitatea centrală

Consola de programare

Periferice de intrare

Periferice de ieşire

Periferice interne (temporizări/ contorizări)

Magistrala internă

Figura 3.1. Schema bloc a unui APB.

27

Page 28: 05 Automate Programabile

Magistrala internă, este reprezentată de conexiunile prin care se face schimbul de date între modulele componente ale automatului şi este structurată funcţional în:

- magistrala de date, pe care circulă datele înspre şi dinspre unitatea centrală;- magistrala de adrese, pe care unitatea centrală depune adresele perifericelor cu care dialoghiază;- magistrala de control, pe care circulă semnalele de comandă.

Toate transferurile de date se fac prin mijlocirea unităţii centrale. Aceasta plasează pe magistrala de adrese adresa modulului cu care doreşte să comunice iar pe magistrala de control activează semnalul care defineşte sensul informaţiei. Datele de intrare citite sunt prelucrate în unitatea logică iar rezultatele sunt trimise la ieşiri.

28

Page 29: 05 Automate Programabile

Activitatea de învăţare 3.1.1. Blocurile componente ale APB.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- identificati blocurile componente şi conexiunile dintre ele pentru un automat programabil cu prelucrare la nivel de bit;

Tipul activităţii: Diagrama păianjen.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

 Folosind fişa de documentare 3.1. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) completaţi următoarea schemă bloc a APB cu denumirile corespunzatoare din listă: Unitatea centrală, Periferice interne (temporizări/ contorizări), Periferice de ieşire, Consola de programare, Periferice de intrare.

Evaluare:Dacă toate denumirile blocurilor au fost aşezate corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 3.1. şi apoi se reface activitatea.

29

Page 30: 05 Automate Programabile

Activitatea de învăţare 3.1.2. Rolul funcţional al blocurilor componente ale APB.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- explicaţi rolul funcţional al blocurilor componente ale automatului programabil cu prelucrare la nivel de bit.

Tipul activităţii: Potrivire.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

 Folosind fişa de documentare 3.1. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) faceţi asocierile corespunzătoare între blocurile unui APB şi rolul lor funcţional.

Blocuri APB Rol funcţional1. Periferice de intrare a) Trimite comenzi în proces (de exemplu

pentru alimentarea unor bobine de relee sau contactoare, sau aprinderea de lămpi de semnalizare)

2. Unitatea centrală b) “creierul” APB, ce coordonează activitatea din întregul sistem;

3. Periferice interne c) Facilitează realizarea programului ce va rula pe APB, şi de pe care se încarcă în memoria de programe a APB acest program

4. Consola de programare d) Primeşte informaţii din proces (de la întrerupătoare, comutatoare, contactoare, relee, limitatoare)

5. Periferice de ieşire e) Generează intervale de timp şi contorizează evenimente

Evaluare:Dacă toate asocierile au fost făcute corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 3.1. şi apoi se reface activitatea.

30

Page 31: 05 Automate Programabile

Activitatea de învăţare 3.1.3. Structura magistralei APB.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- structuraţi funcţional magistrala unui automat programabil cu prelucrare la nivel de bit.

Tipul activităţii: Diagrama păianjen

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

 Folosind fişa de documentare 3.1. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) conectaţi la noţiunea de magistrală internă a APB, denumirile structurilor funcţionale ale acesteia.

Evaluare:Dacă la noţiunea centrală se conectează toate celelalte componente, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 3.1. şi apoi se reface activitatea.

Magistrală

Magistrală

Magistrală

Magistrală internă a APB

31

Page 32: 05 Automate Programabile

Fişa de documentare 3.2. Unitatea centrală

În Figura 3.2. se prezintă schema bloc a unităţii centrale a automatului programabil cu prelucrare pe bit.

Semnificaţia blocurilor unităţii centrale este următoarea:

Numărătorul de adrese, este un circuit numărător care indică adresa din memorie de unde va fi citită instrucţiunea ce urmează a fi executată;

Memoria program, este un circuit de tip EEPROM în care se află programul APB, încărcat de la consola de programare. La aplicarea la intrarea sa a adresei instrucţiunii ce trebuie executată, la ieşire va trimite codul acestei instrucţiuni, memorat la adresa respectivă.

Registrul instrucţiunii curente, este un registru ce se încarcă cu instrucţiunea de executat citită din memoria de program de la adresa indicată de numărătorul de adrese;

Blocul de control, decodifică codul instrucţiunii aflat în corpul instrucţiunii şi prin semnalele de control rezultate, comandă operaţiile din APB implicate de instrucţiunea curentă;

Bufferul de adrese, este un registru care memorează temporar adresa perifericului sau locaţiei de memorie cu care unitatea centrală face schimb de informaţii;

Unitatea logică, prelucrează datele achiziţionate de perifericele de intrare sau citite din memoria internă şi trimite rezultatul în memoria internă sau la perifericele de ieşire;

Memoria internă, este un circuit de tip RAM destinat memorării variabilelor utilizate în program.

Numărătorul de adrese

Registrul instrucţiunii

curenteMemoria program

Blocul de control

Buffer de adrese

Unitatea logică

Memoria internă

Magistrala de date

Magistrala de control

Magistrala de adrese

Figura 3.2. Schema bloc a unităţii centrale a unui APB

32

Page 33: 05 Automate Programabile

Activitatea de învăţare 3.2.1. Blocurile componente ale unităţii centrale.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- identificati blocurile componente ale unităţii centrale şi conexiunile dintre ele pentru un automat programabil cu prelucrare la nivel de bit.

Tipul activităţii: Harta păianjen.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

Folosind fişa de documentare 3.2 dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) completaţi următoarea schemă bloc a unităţii centrale a APB cu denumirile corespunzatoare din listă: Unitatea logică, Registrul instrucţiunii curente, Blocul de control, Buffer de adrese, Memoria program, Numărătorul de adrese, Memoria internă.

Evaluare:Dacă toate noţiunile din listă au fost aşezate corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 3.2. şi apoi se reface activitatea.

Magistrala de date

Magistrala de control Magistrala de

adrese

33

Page 34: 05 Automate Programabile

Activitatea de învăţare 3.2.2. Rolul funcţional al blocurilor componente ale unităţii centrale.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- explicaţi rolul funcţional al blocurilor componente ale unităţii centrale a unui automat programabil cu prelucrare la nivel de bit.

Tipul activităţii: Potrivire.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

 Folosind fişa de documentare 3.2. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) faceţi asocierile corespunzătoare între blocurile unităţii centrale a unui APB şi rolul lor funcţional.

Blocurile unităţii centrale ale APB

Rol funcţional

1. Registrul instrucţiunii curente

a) Indică adresa din memorie de unde va fi citită instrucţiunea ce urmează a fi executată.

2. Unitatea logicăb)Memorează temporar adresa perifericului sau locaţiei de memorie cu care unitatea centrală face schimb de informaţii.

3. Memoria program c) Memorează variabilele utilizate în program

4. Numărătorul de adrese d) Memorează programul APB.

5. Memoria internăe) Decodifică codul instrucţiunii şi comandă operaţiile din APB implicate de această instrucţiune.

6. Buffer de adrese

f) Prelucrează datele achiziţionate de perifericele de intrare sau citite din memoria internă şi trimite rezultatul în memoria internă sau la perifericele de ieşire

7. Blocul de control g) Se încarcă cu instrucţiunea de executat

Evaluare:Dacă toate asocierile au fost făcute corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 3.2. şi apoi se reface activitatea.

34

Page 35: 05 Automate Programabile

Fişa de documentare 3.3. Periferice de intrare

În Figura 3.3. se prezintă schema bloc a perifericelor de intrare ale automatului programabil cu prelucrare pe bit.

Semnificaţia blocurilor perifericelor de intrare este următoarea:

Blocul de decodificare a adresei, primeşte la intrare codul adresei unei intrări în APB din proces, compară această adresă cu adresa proprie implementată hardware şi emite semnal de recunoaştere în caz de coincidenţă a acestor două adrese.

Blocul de multiplexare a semnalelor de intrare, selectează intrarea indicată de decodificatorul adresei şi depune informaţia citită pe magistrala de date la momentul indicat de un semnal primit de pe magistrala de control.

Blocul de prelucrare a semnalului de intrare, adaptează semnalele din proces pentru a deveni compatibile cu cele din automatul programabil. Construcţia acestui bloc depinde de tipul semnalelor achiziţionate din proces, respectiv semnale de tensiune sau de curent, semnale continue sau alternative, semnale de nivel mic (milivolţi – volţi) sau de nivel mare (zeci de volţi – sute de volţi). Toate aceste semnale trebuie aduse la nivelul şi tipul acceptate de APB, de exemplu la 0V pentru 0 logic şi 5V pentru 1 logic. Tot aceste blocuri asigură şi izolarea galvanică între proces şi automatul programabil (prin contacte de relee sau contactoare, transformatoare de impulsuri, optocuploare).

Bloc decodificare adresă

Bloc multiplexare semnale intrare

Bloc prelucrare semnal intrare 1

Bloc prelucrare semnal intrare n

Proces

Magistrala de control

Magistrala de adrese

Magistrala de date

Figura 3.3. Schema bloc a perifericelor de intrare pentru un automat programabil cu prelucrare la nivel bit.

35

Page 36: 05 Automate Programabile

Activitatea de învăţare 3.3.1. Blocurile componente ale perifericelor de intrare.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- identificaţi blocurile componente ale perifericelor de intrare ale unui automat programabil cu prelucrare la nivel de bit.

Tipul activităţii: Harta păianjen.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

Folosind fişa de documentare 3.3. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) completaţi următoarea schemă bloc a perifericelor de intrare pentru un APB cu denumirile corespunzatoare din listă: Bloc prelucrare semnal intrare n, Bloc multiplexare semnale intrare, Bloc prelucrare semnal intrare 1, Bloc decodificare adresă, Proces.

Evaluare:Dacă toate noţiunile au fost potrivite corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 3.3. şi apoi se reface activitatea.

Magistrala de control

Magistrala de adrese

Magistrala de date

36

Page 37: 05 Automate Programabile

Activitatea de învăţare 3.3.2. Rolul funcţional al blocurilor componente ale perifericelor de intrare.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- explicaţi rolul funcţional al blocurilor componente ale perifericelor de intrare ale unui automat programabil cu prelucrare la nivel de bit.

Tipul activităţii: Potrivire.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

 Folosind fişa de documentare 3.3. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) faceţi asocierile corespunzătoare între blocurile perifericelor de intrare ale unui APB şi rolul lor funcţional.

Blocurile perifericelor de intrare ale APB

Rol funcţional

1. Bloc decodificare adresă

a) Izolează galvanic şi adaptează semnalele din proces pentru a deveni compatibile cu cele din automatul programabil.

2. Bloc multiplexare semnale intrare

b) Subiectul instalaţiei de automatizare.

3. Proces

c) Compară adresa de pe magistrala de adrese cu adresa proprie implementată hardware şi emite semnal de recunoaştere în caz de coincidenţă a acestor două adrese.

4. Bloc prelucrare semnal intrare

d) Selectează o intrare şi depune informaţia citită pe magistrala de date.

Evaluare:Dacă toate asocierile au fost făcute corect, se trece la următoarea activitate, dacă nu, se consultă fişa de documentare 3.3. şi apoi se reface activitatea.

37

Page 38: 05 Automate Programabile

Fişa de documentare 3.4. Periferice de ieşire

În Figura 3.4. se prezintă schema bloc a perifericelor de ieşire ale automatului programabil cu prelucrare pe bit.

Semnificaţia blocurilor perifericelor de ieşire este următoarea:

Blocul de decodificare a adresei, este un circuit ce primeşte la intrare codul adresei unei ieşiri din APB spre proces, compară această adresă cu adresa proprie implementată hardware şi emite semnal de recunoaştere în caz de coincidenţă a acestor două adrese.

Blocul de comandă canal este un circuit demultiplexor prin intermediul căruia semnalul de pe magistrala de date este trimis la ieşirea selectată de către decodificatorul adresei. Acest bloc are şi funcţia de memorare a canalului, astfel încât semnalul să fie prezent în permanenţă la intrările blocurilor de ieşire.

Blocurile de ieşire sunt circuitele ce realizează adaptarea de nivel a semnalul de ieşire. Ieşirea poate fi prin releu pentru semnale de curent continuu sau alternativ, prin tranzistor pentru semnale în curent continuu de nivel mic sau prin triac pentru semnale alternative de nivel mare. Pentru evitarea perturbaţiilor datorate procesului condus se preferă izolarea galvanică a blocurilor de ieşire de elementele comandate din proces prin: relee intermediare, transformatoare de impuls sau optocuploare.

Bloc decodificare adresă

Bloc de comandă canal

Bloc de ieşire 1 Bloc de ieşire n

Proces

Magistrala de control

Magistrala de adrese

Magistrala de date

Figura 3.4. Schema bloc a perifericelor de ieşire pentru un automat programabil cu prelucrare la nivel bit.

38

Page 39: 05 Automate Programabile

Activitatea de învăţare 3.4.1. Blocurile componente ale perifericelor de ieşire.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- identificati blocurile componente ale perifericelor de ieşire ale unui automat programabil cu prelucrare la nivel de bit.

Tipul activităţii: Harta păianjen.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

Folosind fişa de documentare 3.4. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) completaţi următoarea schemă bloc a perifericelor de ieşire pentru un APB cu denumirile corespunzatoare din listă: Bloc comandă canal, Bloc de ieşire 1, Bloc de ieşire n, Bloc decodificare adresă, Proces.

Evaluare:Dacă toate textele au fost potrivite corect, se trece la următoarea activitate, dacă nu, se consultă fişa de documentare 3.4. şi apoi se reface activitatea.

Magistrala de control

Magistrala de adrese

Magistrala de date

39

Page 40: 05 Automate Programabile

Activitatea de învăţare 3.4.2. Rolul funcţional al blocurilor componente ale perifericelor de ieşire.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- explicaţi rolul funcţional al blocurilor componente ale perifericelor de ieşire ale unui automat programabil cu prelucrare la nivel de bit.

Tipul activităţii: Potivire.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

 Folosind fişa de documentare 3.4. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) faceţi asocierile corespunzătoare între blocurile perifericelor de ieşire ale unui APB şi rolul lor funcţional.

Blocurile perifericelor de ieşire ale APB

Rol funcţional

1. Bloc decodificare adresă

a) Realizează adaptarea de nivel a semnalul de ieşire.

2. Bloc de ieşireb) Prin intermediul său semnalul de pe magistrala de date este trimis la ieşirea selectată.

3. Proces

c) Compară adresa de pe magistrala de adrese cu adresa proprie implementată hardware şi emite semnal de recunoaştere în caz de coincidenţă a acestor două adrese.

4. Bloc comandă canal d) Subiectul instalaţiei de automatizare

Evaluare:Dacă toate asocierile făcute sunt corecte, se trece la următoarea activitate, dacă nu, se consultă fişa de documentare 3.4. şi apoi se reface activitatea.

40

Page 41: 05 Automate Programabile

Fişa de documentare 3.5. Periferice interne.

În Figura 3.5. este prezentată schema bloc a perifericelor interne. Acestea sunt module de temporizare şi contorizare fiind în acelaşi timp module de intrare şi de ieşire.

Semnificaţia blocurilor perifericelor interne este următoarea:

Blocul de decodificare a adresei, este circuitul care primeşte la intrare codul adresei unui bloc de temporizare din APB, compară această adresă cu adresa proprie implementată hardware şi emite semnal de recunoaştere în caz de coincidenţă a acestor două adrese.

Blocul de multiplexare a semnalelor de intrare, este circuitul ce selectează blocul de temporizare indicat de decodificatorul adresei şi depune informaţia citită pe magistrala de date la momentul indicat de un semnal primit de pe magistrala de control.

Blocul de comandă canal este un circuit demultiplexor prin intermediul căruia semnalul de pe magistrala de date este trimis la blocul de temporizare selectat de către decodificatorul adresei.

Blocul de temporizare este circuitul ce realizează temporizări şi numărări (contorizări). Este “văzut” ca un periferic de ieşire în momentul în care primeşte semnal pentru contorizare sau de iniţiere a temporizării. Este “văzut” ca periferic de intrare în momentul în care temporizarea s-a încheiat sau se citeşte cantitatea contorizată. Poate fi de tip analogic (monostabil) sau numeric (numărător).

Bloc decodificare adresă

Bloc de comandă canal

Bloc temporizare 1

Bloc temporizare n

Magistrala de control

Magistrala de adrese

Magistrala de date

Figura 3.5. Schema bloc a perifericelor interne ale unui automat programabil cu prelucrare la nivel bit.

Bloc multiplexare semnale de intrare

41

Page 42: 05 Automate Programabile

Activitatea de învăţare 3.5.1. Blocurile componente ale perifericelor interne.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- identificati blocurile componente ale perifericelor interne ale unui automat programabil cu prelucrare la nivel de bit.

Tipul activităţii: Harta păianjen.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

Folosind fişa de documentare 3.5. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) completaţi următoarea schemă bloc a perifericelor interne pentru un APB cu denumirile corespunzatoare din listă: Bloc comandă canal, Bloc temporizare 1, Bloc decodificare adresă, Bloc multiplexare semnale de intrare, Bloc temporizare n.

Evaluare:Dacă toate textele din listă au fost aşezate corect, se trece la următoarea activitate, dacă nu, se consultă fişa de documentare 3.5. şi apoi se reface activitatea.

Magistrala de control

Magistrala de adrese

Magistrala de date

42

Page 43: 05 Automate Programabile

Activitatea de învăţare 3.5.2. Rolul funcţional al blocurilor componente ale perifericelor interne.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- explicaţi rolul funcţional al blocurilor componente ale perifericelor interne ale unui automat programabil cu prelucrare la nivel de bit.

Tipul activităţii: Potrivire.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

 Folosind fişa de documentare 3.5. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) faceţi asocierile corespunzătoare între blocurile perifericelor interne ale unui APB şi rolul lor funcţional.

Blocurile perifericelor de ieşire ale APB

Rol funcţional

1. Bloc decodificare adresă

a) Realizează temporizări şi numărări (contorizări).

2. Bloc multiplexare semnale de intrare

b) Prin intermediul său semnalul de pe magistrala de date este trimis la temporizatorul selectat.

3. Bloc temporizare

c) Compară adresa de pe magistrala de adrese cu adresa proprie implementată hardware şi emite semnal de recunoaştere în caz de coincidenţă a acestor două adrese.

4. Bloc comandă canald) Selectează blocul de temporizare şi depune informaţia citită pe magistrala de date

Evaluare:Dacă toate asocierile au fost făcute corect, se trece la următoarea activitate, dacă nu, se consultă fişa de documentare 3.5. şi apoi se reface activitatea.

43

Page 44: 05 Automate Programabile

Tema 4. Operaţii pentru execuţia unei instrucţiuni

Fişa de documentare 4. Operaţii pentru execuţia unei instrucţiuni

Funcţionarea unităţii de control a APB presupune execuţia programului aflat în memoria sa de programe, instrucţiune după instrucţiune. După executarea ultimei instrucţiuni din program, se face salt la prima instrucţiune şi începe un nou ciclu de execuţie.

Execuţia fiecărei instrucţiuni presupune realizarea următoarelor operaţii:

1. Aducerea din memoria de programe a instrucţiunii ce trebuie executate, de la adresa indicată de numărătorul de adrese, în registrul instrucţiunii curente, Figura 4.1.

Memoria de programe este organizată în celule ce găzduiesc cuvinte cu dimensiunea egală cu cea a registrului instrucţiunii curente, respectiv cu cea a instrucţiunilor.

2. Incrementarea numărătorului de adrese de către blocul de comandă, Figura 4.2. Acum numărătorul de adrese va indica adresa următoarei instrucţiuni ce trebuie executată la sfârşitul execuţiei instrucţiunii curente. În exemplul din Figura 4.1. conţinutul numărătorului de adrese va deveni 1Dh, adresă la care, în memoria de programe se află instrucţiunea cu codul 2AFh.

Observaţie: Există două situaţii în care nu este luată în considerare adresa obţinută prin incrementare:

- Dacă următoarea instrucţiune din program nu se află imediat după instrucţiunea curentă, numărătorul de adrese se va încărca cu adresa (numită

1Ch

Registrul instrucţiunii

curente

Adrese(8 biţi)

Numărătorul de adrese

Memoria de programe

1Bh

1Ch

1Dh

Instrucţiuni(12 biţi)

447h

125h

2AFh

125h

Figura 4.1. Aducerea din memoria de programe a instrucţiunii curente.

44

Numărătorul de adrese

Blocul de control

Comanda de incrementare

Figura 4.2. Operaţia de incrementare a numărătorului de adrese ce urmează

după încărcarea registrului instrucţiunii curente.

Page 45: 05 Automate Programabile

de salt) a acestei instrucţiuni, pe care o găseşte chiar în corpul instrucţiunii curente, într-un câmp ce-i este destinat special5, Fig.4.3.

- La iniţializarea automatului programabil atunci când acesta se pune sub tensiune sau când se apasă butonului RESET. În acest caz, numărătorul se încarcă cu adresa de start a programului, adresă stabilită prin comutatoare (switch-uri), Fig.4.4.

3. Decodificarea codului instrucţiunii în blocul de control (Figura 4.5.)

5 Vezi Tema 5. Instrucţiuni de prelucrare a informaţiei, Fişa de documentare 5.1. Programarea APB.

Registrul instrucţiunii curente

Numărătorul de adrese

Blocul de control

Comanda de încărcare adresă

Figura 4.3. Operaţia de încărcare a numărătorului de adrese cu adresa din câmpul de adrese al registrului instrucţiunii curente.

Numărătorul de adrese

Blocul de control

Comanda de încărcare adresă

Figura 4.4. Operaţia de încărcare a numărătorului de adrese cu adresa de start 01001011b=4Bh, stabilită prin comutatoare.

Comutatoare

Registrul instrucţiunii

curente

Blocul de control

Figura 4.5. Operaţia de decodificare a instrucţiunii în blocul de control.

Codul instrucţiunii

Buffer adrese

Adresa perifericului sau locaţiei de memorie

45

Page 46: 05 Automate Programabile

4. Execuţia operaţiilor elementare implicate

Pentru instrucţiunile ce necesită schimb de date cu perifericele sau memoria, se transmite pe magistrala de adrese adresa perifericului de dialog sau a locaţiei de memorie solicitate (prin încărcarea în registrul buffer de adrese), şi se stabileşte dialogului după recunoaşterea perifericului sau locaţiei de memorie adresate, Figura 4.6.

Observaţii:- Dacă instrucţiunea curentă este de salt, adresa conţinută în corpul instrucţiunii se va încărca în numărătorul de adrese (aşa cum s-a amintit mai sus la operaţia 2, Figura 4.3.), nu în buffer-ul de adrese.

- Execuţia programului este supravegheată de circuitul watchdog, ce se incrementează la fiecare intrucţiune ce se execută şi care este iniţializat în trei situaţii:

- la punerea sub tensiune;- la apăsarea butonului RESET;- la sfârşitul fiecărui ciclu de execuţie a programului.

În situţia depăşirii timpului de execuţie alocat pentru program, watchdog-ul va ajunge la valoarea maximă, şi astfel se blochează unitatea de control iar ieşirile se pun pe 0, pentru a preveni situaţii de avarie în proces.

Blocul de control

Unitatea logică

Memoria internă

Figura 4.6. Operaţia 4 ce urmează decodificării instrucţiunii.

Semnale de comandă rezultate în urma decodificării instrucţiunii

Magistrala de date

Buffer adrese

Magistrala de control

Magistrala de adrese

spre periferice

Adresa locaţiei RAM sau a perifericului de

dialog

46

Page 47: 05 Automate Programabile

Activitatea de învăţare 4.1. Operaţiile necesare execuţiei instrucţiunilor

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- identificaţi operaţiile necesare execuţiei unei instrucţiuni a APB.

Tipul activităţii: Harta traseu.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

Folosind fişa de documentare 4. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) completaţi următoarea schemă bloc a succesiunii operaţiilor pentru execuţia unei instrucţiuni a APB, cu numele operaţiilor din lista următoare: Decodificarea codului instrucţiunii, Incrementarea numărătorului de adrese, Aducerea din memoria de programe a instrucţiunii ce trebuie executate, Execuţia operaţiilor elementare implicate.

Evaluare:Dacă toate textele din listă au fost aşezate corect, se trece la următoarea activitate, dacă nu, se consultă fişa de documentare 4. şi apoi se reface activitatea.

47

Page 48: 05 Automate Programabile

Activitatea de învăţare 4.2. Blocurile şi semnalele implicate în execuţia operaţiilor.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiective:După parcurgerea acestei activităţi veţi fi capabili să:

- identificaţi blocurile şi semnalele implicate de execuţia operaţiilor oricărei instrucţiuni a APB;- specificaţi rolul fiecărui bloc în cadrul operaţiilor pentru execuţia instrucţiunilor APB.

Tipul activităţii: Diagrama păianjen.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 10 minute.

 Folosind fişa de documentare 4. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) organizaţi informaţiile pentru fiecare din cele 4 operaţii desfăşurate pe parcursul execuţiei unei instrucţiuni a APB după următorul model:

Evaluare:Dacă la fiecare operaţie se completează corect structura sugerată, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 3.1. şi apoi se reface activitatea.

Operaţia

Blocuri implicate

Semnale/ informaţii implicate

Rolul blocurilor

48

Page 49: 05 Automate Programabile

Tema 5. Instrucţiuni de prelucrare a informaţiei

Fişa de documentare 5.1. Programarea APB

Orice automat programabil, pe parcursul funcţionării, execută într-o ordine logică instrucţiuni ce compun programul aflat în memoria de programe. Acest lucru este posibil deoarece instrucţiunile din program aparţin unui set de instrucţiuni concepute special pentru automatul programabil respectiv şi pe care acesta le înţelege.

Fiecare automat programabil are propriul său set de instrucţiuni ce acoperă toată gama de operaţii necesară achiziţiei datelor din proces, prelucrării lor şi apoi trimiterii comenzilor în proces.

Instrucţiunile sunt de fapt coduri binare executabile de către unitatea de control a automatului programabil, iar programul astfel prezentat se spune că este scris în cod maşină.

Pentru realizarea programului automatului programabil nu se procedează la scrierea sa de către programator ca atare, în cod maşină, deoarece este nepractic (dificil de scris, dificil de depanat şi cronofag).

Scrierea programului este înlesnită de limbajul de asamblare, în cadrul căruia, fiecărei instrucţiuni din cod maşină îi corespunde o mnemonică.

Conversia programului scris în limbaj de asamblare în limbaj cod maşină este făcută automat de un program numit compilator.

Instrucţiunile automatului programabil conţin două câmpuri cu semnificaţie şi dimensiune diferită, aşa cum se poate vedea în figura de mai jos.

Câmpul Cod operaţie este specific fiecărei instrucţiuni şi conţine:- Informaţii referitoare la modul de prelucrare a datelor,- Semnificaţia celui de-al doilea câmp şi- Modul de adresare.

Semnificaţia celui de-al doilea câmp poate fi:- Operand sau- Adresă, caz în care codul operaţiei specifică dacă adresa este de salt sau este adresă de operand.

Cod operaţie(n biţi)

Operand/ Adresă(m biţi)

Lungime cuvânt (cod) instucţiune = n+m biţi

49

Page 50: 05 Automate Programabile

Observaţie: În automatul programabil cu prelucrare la nivel de bit, există două moduri de adresare:

- Adresare directă, prin care adresa operandului este indicată direct, lungimea de m biţi alocată adresei putând avea orice valoare din domeniul de adresare disponibil al automatului programabil;- Adresare indexată, prin care adresa operandului este relativă la valoarea dintr-un registru index. Mai precis adresa absolută a operandului se află prin adunarea valorii conţinută în câmpul de adresă al instrucţiunii cu valoarea conţinutului registrului index. Acest de mod adresare exemplificat în Figura 5.1.1., permite funcţionarea automatului programabil în regim de multitasking fix sau relocabil.

Adresă relativă operand

Registrul instrucţiunii curente

+

Registrul index

Buffer de adrese

Figura 5.1.1. Exemplu de adresarea indexată în APB.

20h

03h

23hAdresă absolută operand

Off-set (deplasament) adresă operand

50

Page 51: 05 Automate Programabile

Activitatea de învăţare 5.1. Noţiuni generale despre programarea APB.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiective:După parcurgerea acestei activităţi veţi fi capabili să:

- Explicaţi noţiunile legate de programarea APB: limbaj de asamblare, mnemonică, compilator, cod maşină, cod operaţie, mod de adresare;- Recunoaşteţi structura unei instrucţiuni a APB;- Explicaţi semnificaţia câmpurilor unei instrucţiuni a APB.

Tipul activităţii: Expansiune.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

 Folosind fişa de documentare 5.1. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) şi pornind de la enunţurile de mai jos, realizaţi un eseu de circa 12 rânduri în care să dezvoltaţi ideile conţinute în enunţuri. În realizarea eseului trebuie să folosiţi minim 8 cuvinte din lista dată mai jos.

În funcţionare un APB execută un program ce este de fapt o colecţie de instrucţiuni parcursă într-o ordine logică. Fiecare APB are …………………………………...

Instrucţiunea este un cod ce poate fi interpretat de APB. ………………….. descriere succintă …………………

Scrierea programului unui APB se face …………………… şi apoi ……………………..

O instrucţiune este structurată în ………………………. a căror semnificaţie este……………………….

Lista de cuvinte: mnemonică, cod operaţie, compilator, limbaj de asamblare, cod maşină, adresare, mod de adresare, cod, data, byte, bit, câmp, operand, instrucţiuni, set de instrucţiuni, translatare, conversie .

Evaluare:Dacă se acoperă cerinţele din enunţ, se trece la următoarea activitate, dacă nu, se consultă fişa de documentare şi apoi se reface activitatea.

51

Page 52: 05 Automate Programabile

Fişa de documentare 5.2. Instrucţiuni de testare a condiţiilor

Aceste instrucţiuni sesizează modificarea stării locaţiilor de memorie RAM, a intrărilor, ieşirilor sau temporizatoarelor interne şi încarcă într-un registru cu semnificaţie specială din unitatea centrală numit acumulator, noua stare.

Sunt, în esenţă, instrucţiuni de citire din locaţiile adresate. Citirea se face la intervale regulate de timp egale cu durata de execuţie a programului.

Generic, mnemonicele acestor instrucţiuni sunt LD pentru încărcarea conţinutului locaţiei adresate şi LDC pentru încărcarea complementului locaţiei adresate, în registrul acumulator.

În limbajul de asamblare, fiecare mnemonică este însoţită de un identificator al adresei locaţiei sursă.

Exemple:

LD I1 // încarcă în acumulator conţinutul intrării I1,// de adresă 01h de exemplu, ca în Figura 5.2.1.

LDC T4 // încarcă în acumulator conţinutul complementat// al temporizatorului T4, de adresă 1Fh de // exemplu, ca în Figura 5.2.2.

Magistrala de control(Semnal citire)

1

Acumulator

1Periferic intrare

I101h

Data Adresa

Unitatea centrală APB

Magistrala de adrese

Magistrala de date

Figura 5.2.1. Operaţii implicate de execuţia instrucţiunii LD I1.

52

Page 53: 05 Automate Programabile

Magistrala de control(Semnal citire)

0

Acumulator

1Temporizator

T41Fh

Data Adresa

Unitatea centrală APB

Magistrala de adrese

Magistrala de date

Figura 5.2.2. Operaţii implicate de execuţia instrucţiunii LDC T4.

53

Page 54: 05 Automate Programabile

Activitatea de învăţare 5.2. Componentele şi funcţionarea instrucţiunilor de testare a condiţiilor.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiective:După parcurgerea acestei activităţi veţi fi capabili să:

- identificaţi componentele instrucţiunilor LD şi LDC ale unui APB;- explicaţi modul de funcţionare al instrucţiunilor LD şi LDC ale unui APB.

Tipul activităţii: Selecţie şi potrivire

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

Folosind fişa de documentare 5.2. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) completaţi casetele dreptunghiulare goale cu contur roşu, cu conţinuturi aflate printre elementele din următoarea listă: Unitatea centrală a APB, Registrul instrucţiunii curente, Periferic ieşire O3, Periferic intrare I2, 1, 0, LD I2, LDC O3, Citire, Scriere.Marcaţi de asemenea sensul informaţiilor de pe magistrale.

Magistrala de control

(Semnal de )

Acumulator

2Ch

Data Adresa

Magistrala de adrese

Magistrala de date

Operaţii implicate de execuţia instrucţiunii

54

Page 55: 05 Automate Programabile

Evaluare:Dacă toate cerinţele au fost îndeplinite corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 5.2. şi apoi se reface activitatea.

Magistrala de control

(Semnal de )

Acumulator

15h

Data Adresa

Magistrala de adrese

Magistrala de date

Operaţii implicate de execuţia instrucţiunii

55

Page 56: 05 Automate Programabile

Fişa de documentare 5.3. Instrucţiuni de transfer date

Aceste instrucţiuni permit salvarea datelor din acumulator într-o locaţie a memoriei RAM sau într-unul din bistabilele aflate în structura canalelor de ieşire sau temporizare/ contorizare. În esenţă, sunt instrucţiuni de scriere în locaţiile adresate.

Generic, mnemonicele acestor instrucţiuni sunt STO pentru încărcarea locaţiei adresate cu conţinutul acumulatorului şi STOC încărcarea locaţiei adresate cu conţinutul complementat al acumulatorului. În limbajul de asamblare, fiecare mnemonică este însoţită de un identificator al adresei locaţiei destinaţie.

Exemple:STO O2 // încarcă ieşirea O2, cu adresa, de exemplu

// 23h ca în Figura 5.3.1., cu conţinutul // acumulatorului

STOC M1 // încarcă locaţia RAM M1, de adresă A4h de // exemplu ca în Figura 5.3.2., cu conţinutul// complementat al acumulatorului.

1Acumulator

1 Periferic de ieşire O2

23h

Data Adresa

Unitatea centrală APB

Magistrala de adrese

Magistrala de date

Figura 5.3.1. Operaţii implicate de execuţia instrucţiunii STO O2.

Magistrala de control(Semnal scriere)

1Acumulator

0 Locaţie RAM M1

A4h

Data Adresa

Unitatea centrală APB

Magistrala de adrese

Magistrala de date

Figura 5.3.2. Operaţii implicate de execuţia instrucţiunii STOC M1.

Magistrala de control(Semnal scriere)

56

Page 57: 05 Automate Programabile

Observaţie: Simultan cu scrierea informaţiei în bistabilul canalului de ieşire se face scrierea şi în RAM unde se va păstra o imagine a tuturor canalelor de ieşire. Acest lucru se face din două motive:

1. Posibilitatea implementării pe automatele programabile a unor automate finite sevenţiale ce conţin reacţii ieşire-intrare;

2. Protecţia comenzilor către proces, comenzi ce pot fi alterate prin modificarea stării bistabilelor din căile de ieşire de perturbaţiile din proces. Acest lucru se realizează prin reîncărcarea stărilor memorate anterior în RAM, în bistabilele canalelor de ieşire, la sfârşitul fiecărui ciclu de execuţie a programului.

Transferul condiţionat al datelor din acumulator la destinaţie (canal de ieşire, de temporizare sau locaţiei RAM), este realizat de instrucţiunile: STC, care setează ieşirea adresată dacă acumulatorul conţine valoarea 1, respectiv RTC, care resetează ieşirea adresată dacă acumulatorul conţine valoarea 1.

În limbajul de asamblare, fiecare din aceste mnemonici este însoţită de un identificator al adresei locaţiei destinaţie. De exemplu:

STC O1 // setează ieşirea O1,de adresă 55h de exemplu ca// în Figura 5.3.3, dacă în acumulator se află //valoarea 1.

RTC O1 // resetează ieşirea O1, de adresă 55h de // exemplu ca în Figura 5.3.3, dacă în // acumulator se află valoarea 1.

Dacă acumulatorului conţine 1, el va deschide poarta TSL ce permite transferul bitului de la intrare acesteia (1 sau 0 – 1/0) în locaţia destinaţie, Figura 5.3.3. Dacă acumulatorul conţine 0, poarta TSL nu se dechide şi nu se realizează transferul spre locaţia destinaţie, aceasta rămânând nemodificată (X).

1(0)

1/0

1/0(X) Periferic ieşire O1

55h

Data Adresa

Unitatea centrală APB

Magistrala de adrese

Magistrala de date

Figura 5.3.3. Operaţii implicate de execuţia instrucţiunilor STC O1 şi RTC O1.

Magistrala de control(Semnal scriere)

Acumulator

57

Page 58: 05 Automate Programabile

Activitatea de învăţare 5.3. Componentele şi funcţionarea instrucţiunilor de transfer date.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiective:După parcurgerea acestei activităţi veţi fi capabili să:

- identificaţi componentele instrucţiunilor STO, STOC, STC şi RTC ale unui APB;- explicaţi modul de funcţionare al instrucţiunilor STO, STOC, STC şi RTC ale unui APB.

Tipul activităţii: Selecţie şi potrivire.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

 Folosind fişa de documentare 5.3. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) completaţi casetele dreptunghiulare goale cu contur roşu, cu conţinuturi aflate printre elementele din următoarea listă: Unitatea centrală a APB, Memoria de program, Locaţie RAM, Periferic intrare, Temporizator, Acumulator, Registrul instrucţiunii curente, 1, 0, STO M1, STOC M1, STC T2, RTC T2, Date, Control, Adrese, Informaţii.Marcaţi de asemenea sensul informaţiilor de pe magistrale.

0

49h

Data Adresa

Magistrala de

Magistrala de

Operaţii implicate de execuţia instrucţiunii

Magistrala de(Semnal scriere)

58

Page 59: 05 Automate Programabile

Evaluare:Dacă toate cerinţele au fost îndeplinite corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 5.3. şi apoi se reface activitatea.

0

49h

Data Adresa

Magistrala de

Magistrala de

Operaţii implicate de execuţia instrucţiunii

Magistrala de(Semnal scriere)

1(0)

1

1(X) 11h

Data Adresa

Magistrala de

Magistrala de

Operaţii implicate de execuţia instrucţiunii

Magistrala de(Semnal scriere)

1(0)

0

0(X) 11h

Data Adresa

Magistrala de

Magistrala de

Operaţii implicate de execuţia instrucţiunii

Magistrala de(Semnal scriere)

59

Page 60: 05 Automate Programabile

Fişa de documentare 5.4. Instrucţiuni de prelucrare logică a datelor

Formele normale şi canonice, disjunctive şi conjunctive ale funcţiilor logice pot fi implementate pe automatele programabile deoarece acestea dispun de un set complet de instrucţiuni logice la nivel de bit.

Instrucţiunile logice prelucrează numai conţinutul acumulatorului în cazul operaţiilor cu un singur operand iar în cazul operaţiilor cu doi operanzi, conţinutul acumulatorului şi al unui canal de intrare, de temporizare sau locaţie RAM. La sfârşitul execuţiei oricărei instrucţiuni logice, rezultatul se află în acumulator.

Instrucţiunile pe doi operanzi sunt:- AND, ce implementează funcţia booleană elementară ŞI dintre acumulator şi un canal de intrare, temporizare sau locaţii RAM;- ANDC, ce implementează funcţia booleană elementară ŞI dintre acumulator şi complementul unui canal de intrare, temporizare sau locaţii RAM;- OR, ce implementează funcţia booleană elementară SAU dintre acumulator şi un canal de intrare, temporizare sau locaţii RAM;- ORC, ce implementează funcţia booleană elementară SAU dintre acumulator şi complemetul unui canal de intrare, temporizare sau locaţii RAM;- XOR, ce implementează funcţia booleană elementară SAU-EXCLUSIV dintre acumulator şi un canal de intrare, temporizare sau locaţii RAM;

În limbajul de asamblare, fiecare din aceste mnemonici este însoţită de un identificator al adresei locaţiei în care se află cel de-al doilea operand.

Exemple:

AND I3 // realizează funcţia ŞI între conţinutul // acumulatorului şi conţinutul intrării I3, de // adresă 19h de exemplu ca în Figura 5.4.1.// Rezultatul se încarcă în acumulator.

1

0

0 Periferic intrare I3

19h

Data Adresa

Unitatea centrală APB

Magistrala de adrese

Magistrala de date

Figura 5.4.1. Operaţii implicate de execuţia instrucţiunii AND I3; conţinutul actual al acumulatorului este 1 iar cel viitor 0.

Magistrala de control(Semnal citire)

Acumulator

60

Page 61: 05 Automate Programabile

ANDC T4 // realizează funcţia ŞI între conţinutul // acumulatorului şi conţinutul complementat al// temporizatorului T4, de adresă 20h de// exemplu ca în Figura 5.4.2. Rezultatul se // încarcă în acumulator.

OR M8 // realizează funcţia SAU între conţinutul // acumulatorului şi conţinutului // locaţiei RAM M8,de adresă 27h de exemplu ca în // Figura 5.4.3. Rezultatul se încarcă// în acumulator.

1

0

1 Temporizator T4

20h

Data Adresa

Unitatea centrală APB

Magistrala de adrese

Magistrala de date

Figura 5.4.2. Operaţii implicate de execuţia instrucţiunii ANDC T4; conţinutul actual al acumulatorului este 1 iar cel viitor 0.

Magistrala de control(Semnal citire)

Acumulator

1

1

0 Locaţia RAM M8

27h

Data Adresa

Unitatea centrală APB

Magistrala de adrese

Magistrala de date

Figura 5.4.3. Operaţii implicate de execuţia instrucţiunii OR M8; conţinutul actual al acumulatorului este 1 iar cel viitor tot 1.

Magistrala de control(Semnal citire)

Acumulator

61

Page 62: 05 Automate Programabile

ORC M5 // realizează funcţia SAU între conţinutul // acumulatorului şi complementul conţinutului // locaţiei RAM M5, de adresă 02h de exemplu ca // în Figura 5.4.4. Rezultatul se încarcă// în acumulator.

XOR I1 // realizează funcţia SAU-EXCLUSIV între // conţinutul acumulatorului şi conţinutului // intrării I1, de adresă 67h de exemplu, Figura // 5.4.5. Rezultatul se încarcă în acumulator.

Instrucţiunile pe un singur operand sunt:

- NOT, care complementează conţinutul acumulatorului, Figura 5.4.6.a);

0

1

0 Locaţie RAMM5

02h

Data Adresa

Unitatea centrală APB

Magistrala de adrese

Magistrala de date

Figura 5.4.4. Operaţii implicate de execuţia instrucţiunii ORC M5; conţinutul actual al acumulatorului este 0 iar cel viitor 1.

Magistrala de control(Semnal citire)

Acumulator

1

0

1 Periferic intrareI1

67h

Data Adresa

Unitatea centrală APB

Magistrala de adrese

Magistrala de date

Figura 5.4.5. Operaţii implicate de execuţia instrucţiunii XOR I1; conţinutul actual al acumulatorului este 1 iar cel viitor 0.

Magistrala de control(Semnal citire)

Acumulator

62

Page 63: 05 Automate Programabile

- CLR, care resetează acumulatorul, Figura 5.4.6.b).

Figura 5.4.6. Operaţii implicate de execuţia instrucţiunilor a) NOT - conţinutul actual al acumulatorului este 1 iar cel viitor 0; b) CLR - conţinutul actual al

acumulatorului este 1 iar cel viitor 0;

1

0

Unitatea centrală APB

a)

Acumulator

1

0

Unitatea centrală APB

b)

Acumulator

63

Page 64: 05 Automate Programabile

Activitatea de învăţare 5.4. Componentele şi funcţionarea instrucţiunilor de prelucrare logică a datelor.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiective:După parcurgerea acestei activităţi veţi fi capabili să:

- identificaţi componentele instrucţiunilor AND, OR, NAND, NOR, XOR, NOT, CLR ale unui APB;- explicaţi modul de funcţionare al instrucţiunilor AND, OR, NAND, NOR, XOR, NOT, CLR ale unui APB.

Tipul activităţii: Potrivire.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

 Folosind fişa de documentare 5.4. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.)

1. Completaţi casetele dreptunghiulare goale cu contur roşu, cu conţinuturi aflate printre elementele din lista: 55h, 1, 0, Data şi Adresă, pentru fiecare din instrucţiunile AND I2, OR I2, XOR I2. De asemenea, în locul casetelor circulare cu contur roşu puneţi porţile corespunzătoare alese dintre următoarele:

1

0 Periferic intrare I2

Unitatea centrală APB

Magistrala de adrese

Magistrala de date

Operaţii implicate de execuţia instrucţiunii

Magistrala de control(Semnal citire)

Acumulator

64

Page 65: 05 Automate Programabile

2. Completaţi casetele dreptunghiulare goale cu contur roşu, cu conţinuturi aflate printre elementele din lista: 01h, 1, 0, Data şi Adresă, pentru fiecare din instrucţiunile NAND I1, şi NOR I1. De asemenea, în locul casetelor circulare cu contur roşu puneţi porţile corespunzătoare alese dintre următoarele:

3. Completaţi casetele dreptunghiulare goale cu contur roşu, cu conţinuturi aflate printre elementele din lista: 1, 0, CLR şi NOT.

Evaluare:Dacă toate cerinţele au fost îndeplinite corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 5.4. şi apoi se reface activitatea.

1

0 Periferic intrareI1

Unitatea centrală APB

Magistrala de adrese

Magistrala de date

Operaţii implicate de execuţia instrucţiunii

Magistrala de control(Semnal citire)

Acumulator

1

Unitatea centrală APB

Acumulator

0

Unitatea centrală APB

Acumulator

Operaţii implicate de execuţia instrucţiuniilor

65

Page 66: 05 Automate Programabile

Fişa de documentare 5.5. Instrucţiuni de salt

Aceste instucţiuni permit întreruperea executării liniare a programului prin încărcarea în numărătorul de adrese a unei adrese diferită de cea obţinută prin incrementare, automat, după aducerea din memorie a instrucţiunii curente.

Saltul necondiţionat se realizează prin instrucţiunea JMP, iar cel condiţionat de existenţa valorii 1 în acumulator, de instrucţiunea JMPC.

În limbajul de asamblare, mnemonicile sunt însoţite de adresa de salt. De exemplu:

JMP 04h // salt la adresa 04h, continuă execuţia de la // această adresă din memoria de // programe,Fig.5.5.1.

JMPC 27h // salt la adresa 27h dacă în // acumulator se află 1 şi continuă execuţia de // la această adresă din memoria de programe,// Figura 5.5.2. Dacă în acumulator se află 0 se// continuă execuţia cu instrucţiunea următoare,// Figura 5.5.3.

Adresa Instrucţiunea

Memoria de programe

00h Instrucţiunea 1

01h JMP 04h

02h Instrucţiunea 2

03h Instrucţiunea 3

04h Instrucţiunea 4

05h Instrucţiunea 5

Figura 5.5.1. Execuţia instrucţiunii JMP.

66

Page 67: 05 Automate Programabile

Observaţie: Automatul programabil dispune şi de o instrucţiune numită NOP, ce nu execută nicio operaţie, singurul efect este acela de a consuma un timp egal cu durata unui ciclu de execuţie al unei instrucţiuni. Această instrucţiune se utilizează la generarea temporizărilor software.

Adresa Instrucţiunea

Memoria de programe

23h Instrucţiunea 1

24h JMPC 27h

25h Instrucţiunea 2

26h Instrucţiunea 3

27h Instrucţiunea 4

28h Instrucţiunea 5

Figura 5.5.2. Execuţia instrucţiunii JMPC 27h în cazul în care acumulatorul conţine 1.

1

Acumulator

Adresa Instrucţiunea

23h Instrucţiunea 1

24h JMPC 27h

25h Instrucţiunea 2

26h Instrucţiunea 3

27h Instrucţiunea 4

28h Instrucţiunea 5

Figura 5.5.3. Execuţia instrucţiunii JMPC 27h în cazul când acumulatorul conţine 0.

0

Acumulator

67

Page 68: 05 Automate Programabile

Activitatea de învăţare 5.5. Componentele şi funcţionarea instrucţiunilor de salt.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiective:După parcurgerea acestei activităţi veţi fi capabili să:

- identificaţi componentele instrucţiunilor JMP şi JMPC ale unui APB;- explicaţi modul de funcţionare a instrucţiunilor JMP şi JMPC ale unui APB

Tipul activităţii: Expansiune.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

 Folosind fişa de documentare 5.5.1. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) completaţi pentru fiecare instrucţiune de salt adresa de la care se continuă execuţia programului în caseta goală cu contur roşu.

Evaluare:Dacă toate cerinţele au fost îndeplinite corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 5.5.1. şi apoi se reface activitatea.

Adresă InstrucţiuneAdresa următoarei

instrucţiuni Acumulator

JMP 21h

02h

01h 0

Adresă InstrucţiuneAdresa următoarei

instrucţiuni Acumulator

JMPC 25h

12h

11h 0

Adresă InstrucţiuneAdresa următoarei

instrucţiuni Acumulator

JMPC 20h

1Bh

1Ah 1

68

Page 69: 05 Automate Programabile

Fişa de documentare 5.6. Generarea temporizărilor

Circuitele de generare a temporizărilor sunt module specializate din automatul programabil conectate la magistrala internă. Prescrierea temporizării poate fi făcută manual prin intermediul unor microswitch-uri de pe modul, sau prin program funcţie de tipul automatului şi/ sau al modulului. La modulele cu prescriere manuală, circuitul de temporizare poate fi un circuit monostabil sau un circuit numărător.

5.6.1.Temporizarea la anclanşare

Pentru modulul cu temporizare setabilă manual cu monostabil ca circuit de temporizare, se poate utiliza secvenţa de program de mai jos. Diagrama temporală este prezentată în Figura 5.6.1.

LD   I1  // Citeşte starea intrării I1           // şi o încărca în acumulator.     STO  T1  // Scrie conţinutul acumulatorului la               // intrarea  modulului de temporizare T1               // Temporizarea începe când data trece de la 0 la // 1, momentul t1 Fig.5.6.1. Temporizarea nu

// începe dacă data trece de la 0 la 1.LD   T1  // Citeşte de la ieşirea temporizatorului T1

// valoarea şi o transferă în acumulator. La // sfârşitul perioadei de temporizare, modulul T1 // comută, şi ca urmare în acumulator se încarcă // 1, momentul t2.

     STO  O1  // Conţinutul acumulatorului este // transferat ieşirii O1.

// În momententul t3 se termină comanda dată prin // I1.

 

5.6.2. Temporizarea la declanşare

Pentru modulul cu temporizare setabilă manual cu monostabil ca circuit de temporizare, se poate utiliza secvenţa de program de mai jos. Diagrama temporală este prezentată în Figura 5.6.2.

    LDC  I1    // Încărcare acumulator cu conţinutul               // complementat al intrării I1.     STO  T1    // Se scrie data din acumulator la intrarea               // în modulul de temporizare T1.

69

T

I1

O1

Figura 5.6.1. Diagrama temporală pentru temporizare la anclanşare.

t1 t2 t3

Page 70: 05 Automate Programabile

               // La trecerea de 1 la 0, nu se iniţiază // temporizare, momentul t1 în Fig.5.2,

               // iar la trecerea de la 0 la 1 se iniţiază // temporizare, momentul t2.

    LD   T1    // Se încarcă acumulatorul cu valoarea de la               // ieşirea modulului de temporizare T1.    OR   I1    // Se realizează funcţia logică SAU între                // conţinutul acumulatorului şi intrarea I1.                // Între momentul comenzii anclanşării ieşirii şi                // sfârşitul temporizării T, momentul t3,

// valoarea din acumulator este 1.    STO  O1    // Se transferă conţinutul acumulatorului

// la ieşirea O1.

70

I1

1I

T1

11 TI

O1

T

t1 t2 t3

Figura 5.2. Diagrama temporală pentru temporizare la declanşare.

Page 71: 05 Automate Programabile

Activitatea de învăţare 5.6.1. Secvenţă de instrucţiuni pentru temporizarea la anclanşare.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- identificaţi succesiunea instrucţiunilor unui APB necesară realizării temporizării la anclanşare.

Tipul activităţii: Harta traseu.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

Folosind fişa de documentare 5.6.1. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) completaţi următoarea schemă bloc a succesiunii instrucţiunilor unui APB necesară realizării temporizării la anclanşare, cu numele instrucţiunilor din lista următoare: STO T2, LD I5, LD T2, STO O1.

Evaluare:Dacă toate textele din listă au fost aşezate corect, se trece la următoarea activitate, dacă nu, se consultă fişa de documentare 5.6.1. şi apoi se reface activitatea.

71

Page 72: 05 Automate Programabile

Activitatea de învăţare 5.6.2. Secvenţă de instrucţiuni pentru temporizarea la declanşare.

Competenţa:26.2. Recunoşte configuraţia de bază a automatelor programabile cu prelucrare la nivel de bit.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- identificaţi succesiunea instrucţiunilor unui APB necesară realizării temporizării la declanşare.

Tipul activităţii: Harta traseu.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

Folosind fişa de documentare 5.6.1. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) completaţi următoarea schemă bloc a succesiunii instrucţiunilor unui APB necesară realizării temporizării la anclanşare, cu numele instrucţiunilor din lista următoare: STO T1, LDC I2, LD T1, STO O4, OR I2.

Evaluare:Dacă toate textele din listă au fost aşezate corect, se trece la următoarea activitate, dacă nu, se consultă fişa de documentare 5.6.2. şi apoi se reface activitatea.

72

Page 73: 05 Automate Programabile

Tema 6. Noţiuni de bază în alegerea soluţiei de automatizare

Fişa de documentare 6. Alegerea soluţiei de automatizare.

6.1. Alegerea hardware-ului

Există mai mulţi factori care concură la alegerea tipului de automat programabil.

1. Dacă aplicaţia este mai simplă, criteriul de alegere cel mai important este numărul de intrări şi ieşiri precum şi dimensiunea programului utilizator.

2. La aplicaţiile mai complexe (cum ar fi de exemplu o maşină unealtă comandată de un AP), sunt luaţi în considerare, pe lângă numărul de intrări-ieşiri şi timpii de răspuns şi dimensiunea memoriei care trebuie să înmagazineze un număr mare de date.

3. În cazul proceselor răspândite în mai multe locaţii este mult mai indicată alegerea unor module de intrare/ ieşire distribuite decât a modulelor de intrare/ ieşire dispuse pe automat, Figura 6.1

Această soluţie duce la reducerea numărului de cabluri de legătură cu procesul, comunicaţia între modulele de intrare/ ieşire şi unitatea centrală a automatului programabil făcându-se prin intermediul magistralei de comunicaţie pe un număr redus de fire. În acest caz şi viteza de răspuns poate fi simţitor mai mare.

4. Dacă procesul automatizat poate fi împărţit în subprocese relativ autonome atunci varianta automatelor programabile dedicate subproceselor, interconectate în reţea, este soluţia cea mai bună, Figura 6.2.

Modul intrări/ ieşiri 1

AP

Modul intrări/ ieşiri 2

Modul intrări/ ieşiri n...

Proces răspândit în n locaţii

Magistrală de comunicaţie AP - Module distribuite de intrări/ ieşiri

Figura 6.1. Conducerea proceselor cu AP conectat prin intermediul unei magistrale speciale la module distribuite de intrări/ ieşiri.

73

Page 74: 05 Automate Programabile

Simplitatea programării fiecărui automat este evidentă. Creştea vitezei de răspuns este evidentă de asemenea comparativ cu varianta reţelei distribuite de module intrare/ ieşire, deoarece achiziţia semnalelor, trimiterea comenzilor şi procesarea datelor se face concentrat, în cadrul fiecărui subproces. Programele care rulează pe fiecare automat programabil sunt mult mai simple, mai scurte şi mai rapide, ele rulând independent unele de altele. Schimbul de date dintre automatele programabile se realizează prin intermediul unei reţele specializate rapide.

6.2. Alegerea limbajului de programare

Alegerea limbajului de programare depinde de utilizator şi de complexitatea algoritmului de conducere.

În cazul prelucrării datelor binare este recomandabil să se utilizeze limbajul LAD sau FBD, limbaje care sunt mult mai intuitive.

În cazul manipulării de variabile complexe şi adresări indirecte este indicat limbajul STL care este asemănător limbajelor de programare de nivel înalt şi permite procesarea unui volum mare de date.

6.3. Crearea proiectului

Mediile de programare actuale permit optimizarea proiectării, ele oferind facilităţi în organizarea resurselor necesare. Datele culese pentru realizarea proiectului sunt structurate ierarhic.

6.4. Scrierea, analiza şi salvarea unui program

Programul care cuprinde instrucţiunile necesare îndeplinirii sarcinii impuse prin tema de proiectare este recomandat a fi realizat modular.

Modulele de program pot fi:- orientate către proces, caz în care, fiecare modul corespunde unei părţi din proces sau maşini;- orientate funcţional, caz în care modulele corespund funcţiilor din proces, ca

de exemplu: comunicare, mod de operare, etc.

AP 1 ...

Subproces 1

Magistrală de comunicaţie între AP

Figura 6.2. Conducerea subproceselor autonome cu AP conectate prin intermediul unei magistrale speciale.

AP 2

Subproces 2

AP n

Subproces n

74

Page 75: 05 Automate Programabile

După scriere, programul este testat. Testarea poate fi făcută pe un automat programabil virtual implementat chiar în mediul de progamare, sau în automatul programabil real, după încărcarea programului în memoria de programe a acestuia.

După testarea cu succes a programului acesta este încărcat în memoria EPROM şi apoi este generată documentaţia aferentă.

75

Page 76: 05 Automate Programabile

Activitatea de învăţare 6.1. Componentele procesului de alegere a soluţiei de automatizare.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- identificaţi componentele procesului de alegere a soluţiei de automatizare a unei instalaţii.

Tipul activităţii: Diagrama păianjen.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

 Folosind fişa de documentare 6. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) conectaţi componentele procesului de automatizare a unei instalaţii:

Evaluare:Dacă se conectează toate componentele procesului de alegere a soluţiei de automatizare, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 6. şi apoi se reface activitatea.

76

Alegerea soluţiei de automatizare

Page 77: 05 Automate Programabile

Activitatea de învăţare 6.2. Structura adecvată a sistemului cu AP

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- alegeţi structura potrivită a sistemului cu AP pentru o anumită instalaţie ce trebuie automatizată.

Tipul activităţii: Potrivire.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

 Folosind fişa de documentare 6. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) faceţi asocierile corespunzătoare între structurile sistemelor cu AP şi instalaţiile supuse automatizării.

Structură sistem cu AP Instalaţie supusă automatizării1. Sistem cu mai multe AP conectate în reţea.

a) Instalaţii simple, cu cerinţe reduse asupra numărului de intrări-ieşiri, memoriei şi vitezei de procesare.

2. Sistem cu AP cu module de intrări-ieşiri distribuite la distanţă.

b) Instalaţie ce poate fi împărţită în subprocese relativ independente.

3. AP cu număr mare de intrări ieşiri, viteză de procesare şi memorie mare.

c) Instalaţie cu componente ale procesului aflate la distanţe mari.

4. AP cu număr mic de intrări-ieşiri, viteză de procesare şi memorie mică .

d) Instalaţii complexe, cu cerinţe mari asupra numărului de intrări-ieşiri, memoriei şi vitezei de procesare.

Evaluare:Dacă toate asocierile au fost făcute corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 6. şi apoi se reface activitatea.

77

Page 78: 05 Automate Programabile

Activitatea de învăţare 6.3. Limbajul de programare adecvat.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- alegeţi limbajul de programare a AP potrivit complexităţii algoritmului de conducere.

Tipul activităţii: Clasificare.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 5 minute.

 Folosind fişa de documentare 6. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) faceţi asocierile corespunzătoare între limbajele de progamare ale AP şi algoritmul de conducere.

Limbaj de programare al AP Algoritm de conducere1. LAD a) Complex2. STL b) Simplu3. FBD

Evaluare:Dacă toate asocierile au fost făcute corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 6. şi apoi se reface activitatea.

78

Page 79: 05 Automate Programabile

Activitatea de învăţare 6.4. Etapele de creare proiect, analiză, scriere şi salvare program.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Identificaţi etapele de creare a unui proiect şi analiză, scriere şi salvare a programului AP.

Tipul activităţii: Expansiune.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 10 minute.

 Folosind fişa de documentare 6. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) şi pornind de la enunţurile de mai jos, realizaţi un eseu de circa 14 rânduri în care să dezvoltaţi ideile conţinute în enunţuri. În realizarea eseului trebuie să folosiţi minim 9 cuvinte din lista dată mai jos.

Mediile de programare actuale .........................................................................................

Programul care cuprinde instrucţiunile .............................................................................

Modulele de program pot fi:- orientate către proces, ..........................................................................................- ................................................................................................................................

După scriere, ................................ Testarea poate fi făcută ..............................................

După testarea cu succes a programului ............................................................................

Lista de cuvinte: EPROM, RAM, documentaţie, module, proces, funcţional, modular, structurate ierarhic, optimizare, AP virtual, memorie, magistrale.

Evaluare:Dacă se acoperă cerinţele din enunţ, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 6. şi apoi se reface activitatea.

79

Page 80: 05 Automate Programabile

Tema 7. Limbaje de programare ale automatelor programabile

Fişa de documentare 7.1. Limbajul de programare STL

Limbajul STL are o structură asemănătoare limbajelor de asamblare ale microprocesoarelor. El este reglementat de standardul IEC 1131-3.

Este un limbaj de nivel scăzut. Este utilizat pentru realizarea aplicaţiilor mici sau pentru optimizarea codului anumitor părţi ale unor aplicaţii mai mari.

Un program STL este o listă de instrucţiuni de diferite tipuri, care calculează, de obicei, termeni ai unor expresii logice, rezultatul fiind de asemenea o valoare logică.

Fiecare instrucţiune începe pe o linie nouă, conţine un operator, completat eventual cu un modificator şi, dacă este nevoie de unul sau mai mulţi operanzi separaţi prin virgulă aşa cum se poate vedea mai jos

Eticheta: Operaţie Operand1[, Operand2] (* Comentariu *)

Operanzii instrucţiunilor sunt variabile interne, intrări sau ieşiri ale automatului programabil, mai precis referinţe la memoria fizică.

La instrucţiunile cu un singur operand, celălalt operand este implicit fiind reprezentat de conţinutul unui registru, de obicei registrul acumulator. Operaţia descrisă de operator se execută între operatorul scris explicit şi conţinutul acumulatorului, iar rezultatul se încarcă tot în acumulator.

Documentarea programelor se face utilizând comentarii. Comentariile se pot face pe aceeaşi linie cu instrucţiunea sau pe linii separate. Identificrea comentariilor se face cu ajutorul grupului de caractere (* la început şi *) la sfârşit, sau cu grupul // numai la început de comentariu.

Operatori STL

A. Operatori de transfer:

LD – Transferă datele din locaţia specificată în acumulator; 6

ST sau = Transferă datele din acumulator în locaţia specificată. 7

Exemplu:LD %I0.0 //Transferă conţinutul intrării I0.0 în

//acumulatorST %Q1.0 //Transferă la ieşirea Q1.0 conţinutul

//acumulatorului= %Q1.2 //Transferă la ieşirea Q1.2 conţinutul

//acumulatorului

6 Vezi Fişa de documentare 5.2, instrucţiunea LD.7 Vezi Fişa de documentare 5.3, instrucţiunea STO.

80

(Operator + Modificator)

Page 81: 05 Automate Programabile

B. Operatori de setare/ resetare a operanzilor:

S – Set-are operand;R – Reset-are operand.

Exemplu:S %I0.0 //Setează bitul I0.0R %M0.3 //Resetează bitul M0.3

C. Operatori logici:

AND – Realizează operaţia logică ŞI între conţinutul acumulatorului şi operand; 8

OR - Realizează operaţia logică SAU între conţinutul acumulatorului şi operand; 9

XOR - Realizează operaţia logică SAU-EXCLUSIV între conţinutul acumulatorului şi operand10;

Exemplu:AND %M0.0 //Realizează operaţia ŞI între conţinutul

// acumulatorului şi operandul M0.0. Rezultatul// se păstrează în acumulator.

OR %M0.0 //Realizează operaţia SAU între conţinutul // acumulatorului şi operandul M0.0. Rezultatul// se păstrează în acumulator.

XOR %M0.0 // Realizează operaţia SAU-EXCLUSIV între // conţinutul acumulatorului şi operandul M0.0. // Rezultatul se păstrează în acumulator.

D. Operatori de salt:

JMP – Salt necondiţionat la o adresă diferită de adresa din numărătorul de adrese;

Modificatori STL

Modificatorul este un caracter care este ataşat operatorului.

I. Pentru caracterul C ataşat, execuţia operaţiei implicate de operator este condiţionată de valoarea 1 a acumulatorului;

Exemplu:

JMPC UNU // Dacă acumulatorul conţine 1, se sare la adresa // de etichetă UNU;11

II. Pentru caracterul N ataşat se realizează negarea operandului;

Exemplu:ANDN %I0.1 // Realizează operaţia ŞI între conţinutul

8 Vezi Fişa de documentare 5.4, instrucţiunea AND.9 Vezi Fişa de documentare 5.4, instrucţiunea OR.10 Vezi Fişa de documentare 5.4, instrucţiunea XOR.11 Vezi Fişa de documentare 5.5, instrucţiunea JMPC.

81

Page 82: 05 Automate Programabile

// acumulatorului şi intrarea I0.1 negată;12

III. Pentru caracterul ( ataşat se realizează întârzierea operatorului.

Exemplu:AND ( %I0.2

OR %I0.3) // Întârzie aplicarea operandului ŞI, realizând

// mai întâi operaţia logică SAU între intrările// I0.2 şi I0.3. La întâlnirea parantezei închise// se realizează operaţia logică ŞI între // acumulator şi rezultatul operaţiei SAU // anterioare

Etichetele sunt utilizate pentru specificarea punctelor ţintă ale instrucţiunilor de salt. O instrucţiune poate avea o etichetă urmată opţional de : (două puncte). O etichetă poate fi scrisă şi pe o linie separată.

12 Vezi Fişa de documentare 5.4, instrucţiunea ANDC.

82

Page 83: 05 Automate Programabile

Activitatea de învăţare 7.1.1. Câmpurile instrucţiunii STL

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Identificaţi câmpurile unei instrucţiuni a limbajului STL de programare a unui AP.

Tipul activităţii: Expansiune.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 3 minute.

 Folosind fişa de documentare 7.1. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) completaţi casetele cu denumirile câmpurilor instrucţiunii STL din lista următoare: comentariu, etichetă, operator, operand, modificator.

Evaluare:Dacă toate asocierile au fost făcute corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 7.1. şi apoi se reface activitatea.

: , (* *)

//

83

Page 84: 05 Automate Programabile

Activitatea de învăţare 7.1.2. Semnificaţia câmpurilor instrucţiunilor STL.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Explicaţi semnificaţia câmpurilor unei instrucţiuni a limbajului STL de programare a unui AP.

Tipul activităţii: Potrivire.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 3 minute.

 Folosind fişa de documentare 7.1. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) faceţi asocierile corespunzătoare între denumirile câmpurilor şi semnificaţia lor.

Câmpuri instrucţiune STL Semnificaţie

1. Modificator a) Specifică punctele ţintă ale instrucţiunilor de salt

2. Etichete b) Indică ceea ce se face cu operatorii3. Operatori c) Utilizat pentru documentarea programului4. Comentariu d) Referinţe la memoria fizică

5. Operand e) Caracter care este ataşat operatorului ce completează efectul operaţiei

Evaluare:Dacă toate asocierile au fost făcute corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 7.1. şi apoi se reface activitatea.

84

Page 85: 05 Automate Programabile

Activitatea de învăţare 7.1.3. Operatorii limbajului STL.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- identificaţi operatorii limbajului STL de programare a unui AP;

Tipul activităţii: Diagrama păianjen.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 3 minute.

 Folosind fişa de documentare 7.1. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) organizaţi informaţiile despre operatorii limbajului STL al unui AP după următorul model:

Evaluare:Dacă se completează corect toate tipurile de operatori, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 7.1. şi apoi se reface activitatea.

Logici

Operatori STL

De salt

De transfer

De setare/ resetare a operanzilor

85

Page 86: 05 Automate Programabile

Activitatea de învăţare 7.1.4. Modificatorii limbajului STL.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- identificaţi modificatorii limbajului STL de programare a unui AP;

Tipul activităţii: Diagrama păianjen.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 3 minute.

 Folosind fişa de documentare 7.1. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) organizaţi informaţiile despre modificatorii limbajului STL al unui AP după următorul model:

Evaluare:Dacă se completează corect toate tipurile de operatori, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 7.1. şi apoi se reface activitatea.

Operator STL

Negare

Condiţionare

Întârziere

86

Page 87: 05 Automate Programabile

Fişa de documentare 7.2. Limbajul de programare LAD

Limbajul LAD este un limbaj grafic. El realizează de fapt o transpunere grafică a ecuaţiilor booleene, realizând combinaţii între contacte (variabile de intrare) şi bobine (variabile de ieşire). Este utilizat la realizarea aplicaţiilor de către programatori care au experienţe anterioare în proiectarea aplicaţiilor cu relee şi contacte.

Simbolurile grafice ale limbajului sunt plasate în diagramă în mod asemănător contactelor şi releelor dintr-o schemă electrică, Figura 7.2.1. Corespondenţa elementelor este evidentă: I1 - %I1.0, I2 – %I1.1, I3 – %I1.2, k – %Q0.1

Un program în limbajul LAD este alcătuit din reţele ce utilizează simboluri grafice. Reţeaua este conectată în partea stângă şi partea dreaptă la barele de alimentare de la o sursă de putere. Execuţia unui program se face de sus în jos şi de la stânga la dreapta.

Contactele şi bobinele sunt conectate la barele de alimentare prin linii orizontale şi verticale.

Fiecare segment al unei linii poate avea starea TRUE sau FALSE;

Starea segmentelor legate împreună este aceeaşi.

Orice bară orizontală legată la bara de alimentare din stânga se află în starea TRUE.

În Figura 7.2. sunt prezentate simbolurile grafice de bază ale limbajului LAD, conform IEC 1131-3.

Contactul direct, Figura 7.2.2.a, realizează operaţia ŞI între starea legăturii stângi şi valoarea variabilei booleene asociate.

I1 I2

I3

k %I1.0 %I1.1

%I1.2

%Q0.1

Figura 7.2.1. Analogia dintre schemele electrice cu contacte şi relee a) şi programele realizate în limbajul LAD din automatele programabile b).

a) b)

%I0.0

a)

%I0.1

b)

%I0.2

c)

P

%I0.3

d)

N

%Q0.0

e)

%Q0.1

f)

%Q0.2

g)

S%Q0.3

h)

R

Figura 7.2.2. Simbolurile grafice de bază ale limbajului LAD.

87

Page 88: 05 Automate Programabile

Exemplu:

Contactul inversat, Figura 7.2.2.b, realizează operaţia ŞI între starea legăturii stângi şi valoarea variabilei booleene negate asociate.

Exemplu:

Contactul de sesizare a frontului crescător, Figura 7.2.c, realizează operaţia ŞI între starea legăturii stângi şi frontul crescător al variabilei booleene asociate.

Exemplu:

Contactul de sesizare a frontului descrescător, Figura 7.2.2.d, realizează operaţia ŞI între starea legăturii stângi şi frontul descrescător al variabilei booleene asociate.

Exemplu:

Bobina directă, Figura 7.2.2.e, realizează o asociere între o variabilă de ieşire şi starea legăturii stângi. La unele implemetări starea legăturii stângi se propagă spre

%I0.0 %Q0.0

%I0.1

Echivalenţa STL

LD %I0.0OR %I0.1ST %Q0.0

%Q0.0

%I0.1

%I0.0P

%Q0.0

%I0.1

%I0.0N

88

%I0.0 %Q0.0

%I0.1

Echivalenţa STL

LDN %I0.0OR %I0.1ST %Q0.0

Page 89: 05 Automate Programabile

legătura dreaptă putându-se astfel conecta în serie mai multe bobine. La alte implementări, pentru a conecta mai multe bobine, acestea trebuie conectate în paralel. Legătura dreaptă este realizată efectiv sau se consideră legată, aşa cum se poate vedea în exemplele de mai jos.

Exemple:

Bobina inversă, Figura 7.2.2.f, realizează o asociere între o variabilă de ieşire şi starea negată a legăturii stângi. La unele implementări starea legăturii stângi se propagă spre legătura dreaptă putându-se astfel conecta în serie mai multe bobine. La alte implementări nu există acest tip de bobină.

Exemplu:

Bobina de setare, Figura 7.2.2.g, realizează o setare a variabilei de ieşire asociate atunci când starea legăturii stângi devine TRUE. Valoarea variabilei rămâne TRUE până când o instrucţiune inversă, de resetare, se aplică aceleiaşi variabile.Exemplu:

Bobina de resetare, Figura 7.2.2.h, realizează o resetare a variabilei de ieşire asociate atunci când starea legăturii stângi devine TRUE. Valoarea variabilei rămâne FALSE până când o instrucţiune inversă, de setare, se aplică aceleiaşi variabile.

Exemplu:

Echivalenţa STL

LD %I0.0ST %Q0.0ST %Q0.1

%I0.0 %Q0.1%Q0.0

%I0.0 %Q0.0

%Q0.1

%I0.0 %Q0.0Echivalenţa STL

LD %I0.0STN %Q0.0

%I0.0 %Q0.0Echivalenţa STL

LD %I0.0S %Q0.0

S

89

Page 90: 05 Automate Programabile

Etichete, salturi necondiţionate şi condiţionate. Într-un program LAD se pot utiliza etichete, salturi necondiţionate şi condiţionate pentru a controla execuţia programului. Eticheta se pune pe bara de alimentare stângă sau într-o reţea separată. Medii de programare diferite utilizează simboluri grafice diferite pentru etichete.

Exemplu:

Majoritatea mediilor de programare au posibilitatea de a converti un program LAD într-un STL şi invers. Această facilitate poartă denumirea de reversibilitate şi arată faptul că indiferent cum este scris programul, el va fi memorat sub formă STL.

%I0.0 %Q0.0Echivalenţa STL

LD %I0.0R %Q0.0

R

%I0.1 %Q0.0

Echivalenţa STL

LDN %I0.0JMPC Et1LD %I0.1ST %Q0.0JMP Et2

Et1: LD %I0.2STN %Q0.1

Et2:

%I0.0

>> Et1

>> Et2

%I0.2 %Q0.1Et1:

Et2:

90

Page 91: 05 Automate Programabile

Activitatea de învăţare 7.2.1. Simbolurile grafice de bază ale limbajului LAD.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Identificaţi simbolurile grafice de bază ale limbajului LAD de programare a unui AP.

Tipul activităţii: Expansiune.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 3 minute.

 Folosind fişa de documentare 7.2. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) completaţi denumirile simbolurilor grafice de bază ale limbajului LAD cu texte din lista următoare: bobina inversă, contact de sesizare a frontului descrescător, bobina de resetare, contact direct, contact inversat, contact de sesizare a frontului crescător, bobina directă, bobina de setare.

Evaluare:Dacă toate asocierile au fost făcute corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 7.2. şi apoi se reface activitatea.

%I0.0 %I0.1 %I0.2P

%I0.3N

%Q0.0 %Q0.1 %Q0.2S

%Q0.3R

91

Page 92: 05 Automate Programabile

Activitatea de învăţare 7.2.2. Implementarea funcţiilor booleene în limbajul LAD.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Implementaţi funcţii booleene simple în limbajul LAD de programare a unui AP.

Tipul activităţii: Problematizare.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 3 minute.

 Folosind fişa de documentare 7.2. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) completaţi locurile libere din scheme cu simboluri LAD şi texte corespunzătoare.

Echivalenţa STL

LD %I0.2ORC %I0.1ST %Q0.0

1.0%2.0%0.0% IIQ Implementarea funcţiei booleene în limbaj LAD

0.1.%0.0%1.1% IIQ Implementarea funcţiei booleene în limbaj LAD

0.1.%1.0%0.1% IIQ Implementarea funcţiei booleene în limbaj LAD

92

Page 93: 05 Automate Programabile

Observaţie: Simbolul înseamnă front crescător, iar simbolul front descrescător.

Evaluare:Dacă toate completările au fost făcute corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 7.2. şi apoi se reface activitatea.

Echivalenţa STL

LD %I1.0ST %Q1.0STN %Q1.1

Conexiune serie

Conexiune derivaţie

Implementarea funcţiile booleene 0.11.1%0.1% IQQ în limbal LAD

Echivalenţa STL

LD %I0.0S %Q0.1R %Q0.0

Conexiune serie sau derivaţie

Implementarea funcţiei booleene: Dacă %I0.0=1 atunci%Q0.1=1 şi %Q0.0=0

%I0.1 %Q0.0

Echivalenţa STL

LDN %I0.0JMPC Et1LD %I0.1ST %Q0.0JMP Et2

Et1: LD %I0.2STN %Q0.1

Et2:

%I0.0

>>

>>

%I0.2 %Q0.1

Realizarea etichetării şi a salturilor condiţionate şi necondiţionate

93

Page 94: 05 Automate Programabile

Fişa de documentare 7.3. Limbajul FBD

FBD este un limbaj grafic. El permite programatorului să construiască funcţii complexe utilizând blocurile existente în bibliotecile mediului de programare.

Un program FBD este alcătuit din blocuri de funcţii elementare, conectate între ele prin linii de legătură. Ca şi programul LAD, programul FBD se execută de sus în jos şi de la stânga la dreapta.

Fiecare bloc are un număr de intrări şi ieşiri. Blocul este reprezentat printr-un dreptunghi. Intrările sunt în partea stângă, iar ieşirile în partea dreaptă. Un bloc elementar realizează o singură prelucrare asupra intrărilor. Funcţia realizată de bloc este scrisă în interiorul acestuia. La intrările unui bloc sunt legate variabilele de intrare, iar variabilele de ieşire ale blocurilor pot fi conectate la ieşirile automatului programabil sau la intrările altor blocuri. Tipul variabilelor de intrare trebuie să coincidă cu tipul cerut de intrarea blocului. Ieşirea blocului are acelaşi tip cu intrările.

Conform recomandărilor IEC, Figura 7.3.1., orice bloc are, pe lângă intrările asupra cărora realizează operaţii, X respectiv Y, o intrare numită EN şi o ieşire numită ENO, pe lângă ieşirea Z. Când EN este FALSE nu se operează asupra intrărilor de date iar ieşirea ENO este FALSE. Când EN devine TRUE, blocul devine operaţional iar ieşirea ENO trece în starea TRUE. Dacă în cursul operării apare o eroare, ieşirea ENO trece în starea FALSE.

Principalele blocuri pot fi împărţite în următoarele categorii:- Blocuri standard, care corespund operatorilor standard ai limbajului STL;- Blocuri speciale, implementate prin proceduri complexe.

Blocurile standard sunt: - blocuri de manipulare a datelor13;- blocuri pentru operaţii booleene (AND, OR, XOR, etc., Figura 7.3.2.);- blocuri aritmetice (pentru efectuarea operaţiilor elementare, adunare, scădere, înmulţire şi împărţire);- blocuri de comparaţie.

Blocurile speciale sunt:- blocuri de manipulare a datelor (bistabile SR şi RS şi de detecţie a fronturilor crescătoare şi descrescătoare, multiplexoare, generatoare de numere aleatoare);- contoare, temporizatoare, blocuri de procesare a semnalelor (histerezis sau trigger Schmitt, regulatoare PID, integratoare, derivatoare, etc.);

13 Se mai numesc şi blocuri de asignare

Nume blocEN ENO

X

YZ

Figura 7.3.1. Bloc funcţional, conform recomadărilor IEC 1131-3.

94

Page 95: 05 Automate Programabile

- blocuri generatoare de semnal (generatoare de semnal dreptunghiular, generatoare de semnal modulat în durată PWM);- blocuri matematice (de calcul a valorii absolute, a funcţiei exponenţiale, a logaritmului, a rădăcinii pătrate, a funcţiilor trigonometrice, etc.).

&

AND

&

NAND

1

OR

1

NOR

=1

XOR

NOT

Figura 7.3.2. Blocuri standard ale limbajului FBD, pentru operaţii booleene.

95

Page 96: 05 Automate Programabile

Activitatea de învăţare 7.3.1. Elementele blocurilor din limbajul FBD.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Identificaţi elementele unui bloc utilizat de limbajul FBD de programare a unui AP.

Tipul activităţii: Expansiune.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 3 minute.

 Folosind fişa de documentare 7.3. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) şi pornind de la enunţurile de mai jos, realizaţi un eseu de circa 12 rânduri în care să dezvoltaţi ideile conţinute în enunţuri. În realizarea eseului trebuie să folosiţi minim 6 cuvinte din lista dată mai jos.

Fiecare bloc are un număr de intrări şi ieşiri. Blocul este reprezentat printr-un dreptunghi. Intrările sunt în partea ........................................... Un bloc elementar realizează ........................ Funcţia realizată de bloc este scrisă în interiorul acestuia. La intrările unui bloc sunt legate variabilele de intrare, iar ...................... Tipul variabilelor de intrare trebuie să coincidă cu ...................................................

Conform recomandărilor IEC orice bloc are, pe lângă intrările asupra cărora realizează operaţii, X respectiv Y, o intrare numită EN şi .........................

Lista de cuvinte: ieşiri, FALSE, TRUE, operaţional, tip, intrări, variabile intrare.

Evaluare:Dacă se acoperă cerinţele din enunţ, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 7.3. şi apoi se reface activitatea.

Nume blocEN ENO

X

YZ

96

Page 97: 05 Automate Programabile

Activitatea de învăţare 7.3.2. Tipurile de blocuri ale limbajului FBD.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Identificaţi tipurile de blocuri utilizate în limbajului FBD de programare a unui AP.

Tipul activităţii: Diagrama păianjen.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 3 minute.

 Folosind fişa de documentare 7.3. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) organizaţi informaţiile despre blocurile utilizate de limbajului FBD al unui AP după următorul model:

Evaluare:Dacă se completează corect toate tipurile de operatori, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 7.1. şi apoi se reface activitatea.

De manipulare a datelor

Blocuri FBD

Contoare, temporizatoare şi de procesare a

semnalelor

Pentru operaţii booleene

Matematice

Blocuri standard

Blocuri specialeGeneratoare de semnal

Pentru operaţii aritmeticeDe comparaţie

De manipulare a datelor

De comparaţie

97

Page 98: 05 Automate Programabile

Activitatea de învăţare 7.3.3. Simbolurile blocurilor de bază ale limbajului FBD.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Identificaţi simbolurile blocurilor de bază logice ale limbajului FBD de programare a unui AP.

Tipul activităţii: Expansiune.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 3 minute.

 Folosind fişa de documentare 7.3. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) asociaţi fiecărui simbol bloc logic al FBD funcţia logică asociată din lista următoare: ŞI-NU, SAU, NU, SAU, SAU-NU, XOR.

Evaluare:Dacă toate asocierile au fost făcute corect, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 7.3. şi apoi se reface activitatea.

& &

1 1 =1

98

Page 99: 05 Automate Programabile

Tema 8. Utilizarea automatelor programabile pe bit la implementarea automatelor cu stări finite, definite prin diagrame de stare

Fişa de documentare 8. Utilizarea automatelor programabile pe bit la implementarea automatelor cu stări finite, definite prin diagrame de stare

La implementarea cu automatelor programabile pe bit a automatelor cu stări finite, definite prin diagrame de stare, programul se poate scrie pornind direct de la diagrama stărilor. Se recomandă alocarea fiecărei stări a automatului câte o variabilă internă (locaţie din RAM). De asemenea se alocă adrese variabilelor de intrare şi ieşire din diagrama stărilor. Variabilele de intrare, de ieşire, de stare şi de temporizare reprezintă parametrii programului.

În Figura 8.1 se prezintă diagrama de stare a unui automat finit cu 5 stări, 4 intrări şi 2 ieşiri.

Iniţializarea hardware a automatului se face la punerea sub tensiune, semnalul PST (Power Start) sau la apăsarea butonului RESET. Automatul trece în starea S1. În această stare ieşirile O1 şi O2 sunt în starea 0.

Ieşirea din starea S1 se face atunci când I1=1, caz în care se trece în starea S2 în care ieşirile vor fi O1=1 şi O2=0, sau atunci când I2=1 trecându-se în starea S3 cu O1=0 şi O2=1. Dacă niciuna din intrările I1 şi I2 nu este 1 automatul rămâne în starea S1.

S1 O1=0O2=0

I1

RESET

S2 O1=1O2=0

S3 O1=0O2=1

S4 O1=1O2=1

S5 O1=1O2=0

I2

I3 I4

I1·I2

4I

2I

PST

Figura 8.1. Diagrama stărilor unui automat cu stări finite.

99

Page 100: 05 Automate Programabile

În starea S2, dacă I2=0 se trece în starea iniţială S1. Dacă I3=1 se trece în starea S4 cu O1=1 şi O2=1. Dacă niciuna din condiţiile de ieşire din starea S2 nu este îndeplinită, automatul rămâne în starea S2.

Dacă automatul a ajuns în starea S3 el o poate părăsi numai dacă I4=1.

Din starea S4 caracterizată de O1=1 şi O2=1 se poate ieşi numai atunci când şi I1=1 şi I2=1, intrându-se în starea S5.

În starea S5 ieşirile sunt O1=1 şi O2=0. Ieşirea din această stare se realizează pentru I4=0.

Programul începe cu o parte de iniţializare prin care variabilele de stare primesc valorile iniţiale.

În partea de lucru a programului se parcurge diagrama stărilor într-o ordine arbitrară. Se testează condiţiile de trecere dintr-o stare în alta acolo unde există aceste condiţii de tranziţie.

La sfârşitul programului de lucru se dau ieşirilor valorile varibilelor de stare actualizate, după programul se reia.

Stărilor S1, S2, …, S5 ale automatului li se asociază variabilele M1, M2, …, M5, intrărilor variabilele I1, I2, I3 şi I4, iar ieşirilor O1 şi O2. Programul pe APB prezentat anterior, care implementează acest automat cu stări finite este următorul:

START:// Tranziţia S1->S2

LD M1 //Se încarcă acumulatorul cu starea S1AND I1 //ŞI între acumulator şi intrarea I1, deci S1·I1RTC M1 //Se resetează M1 dacă acumulatorul este 1 STC M2 //Se setează M2 dacă acumulatorul este 1, adică

//se trece în starea S2 pentru S1·I1=1//----------------------------------------------------------// Tranziţia S1->S3

LD M1 //Se încarcă acumulatorul cu starea S1AND I2 //ŞI între acumulator şi intrarea I2, deci S1·I2RTC M1 //Se resetează M1 dacă acumulatorul este 1STC M3 //Se setează M3 dacă acumulatorul este 1, adică

//se trece în starea S3 pentru S1·I2=1//----------------------------------------------------------// Tranziţia S2->S1

LD M2 //Se încarcă acumulatorul cu starea S2ANDC I2 //ŞI între acumulator şi intrarea I2 negată, deci

//S2·not(I2)RTC M2 //Se resetează M2 dacă acumulatorul este 1STC M1 //Se setează M1 dacă acumulatorul este 1, adică

//se trece în starea S1 pentru S2·not(I2)=1//----------------------------------------------------------// Tranziţia S2->S4

LD M2 //Se încarcă acumulatorul cu starea S2AND I3 //ŞI între acumulator şi intrarea I3, deci S2·I3RTC M2 //Se resetează M2 dacă acumulatorul este 1

100

Page 101: 05 Automate Programabile

STC M4 //Se setează M4 dacă acumulatorul este 1, adică//se trece în starea S4 pentru S2·I3=1

//----------------------------------------------------------// Tranziţia S3->S4

LD M3 //Se încarcă acumulatorul cu starea S3AND I4 //ŞI între acumulator şi intrarea I4, deci S3·I4RTC M3 //Se resetează M3 dacă acumulatorul este 1STC M4 //Se setează M4 dacă acumulatorul este 1, adică

//se trece în starea S4 pentru S3·I4=1//----------------------------------------------------------// Tranziţia S4->S5

LD M4 //Se încarcă acumulatorul cu starea S4AND I1 //ŞI între acumulator şi intrarea I1, deci S4·I1AND I2 //ŞI între acumulator şi intrarea I2, deci

//S4·I1·I2RTC M4 //Se resetează M4 dacă acumulatorul este 1STC M5 //Se setează M5 dacă acumulatorul este 1, adică

//se trece în starea S5 pentru S4·I1·I2=1//----------------------------------------------------------// Tranziţia S5->S1

LD M5 //Se încarcă acumulatorul cu starea S5ANDC I4 //ŞI între acumulator şi intrarea I4 negată, deci

//S5·not(I4)RTC M5 //Se resetează M5 dacă acumulatorul este 1STC M1 //Se setează M1 dacă acumulatorul este 1, adică

//se trece în starea S1 pentru S5·not(I4)=1//----------------------------------------------------------// Actualizare O1

LD M2 //Se încarcă acumulatorul cu starea S2OR M4 //SAU între acumulator şi starea M4, deci S2+S4OR M5 //SAU între acumulator şi starea M5, deci

//S2+S4+S5STO O1 //Se actualizează O1 cu valoarea din acumulator

//----------------------------------------------------------// Actualizare O2

LD M3 //Se încarcă acumulatorul cu starea S3OR M4 //SAU între acumulator şi starea M4, deci S3+S4STO O2 //Se actualizează O2 cu valoarea din acumulator

//----------------------------------------------------------JMP START

INIT:CLR //Resetare acumulatorSTOC M1 //Încarcă starea S1=1STO M2 //Încarcă starea S2=0STO M3 //Încarcă starea S3=0STO M4 //Încarcă starea S4=0STO M5 //Încarcă starea S5=0JMP START

101

Page 102: 05 Automate Programabile

Activitatea de învăţare 8.1. Implementarea în limbaj STL a automatului cu stări finite.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Implementaţi un automat cu stări finite într-un APB cu ajutorul limbajului STL.

Tipul activităţii: Peer learning – metoda grupurilor de experţi.

Sugestii:

Elevii se vor organiza în 10 grupe.

Timp de lucru recomandat 30 minute.

Şapte grupe se vor ocupa de tranziţiile A, B, … G, două grupe de actualizările ieşirilor iar o grupă de iniţializarea automatului din figura de mai jos (în total 10 grupe). Timp de 10 minute fiecare grupă va identifica zona din diagrama stărilor automatului cu stări finite şi zona de cod (program) corespunzătoare din programul asociat şi apoi va structura un eseu cu referiri la logica secvenţei de program, semnificaţia operaţiilor şi operatorilor precum şi modul de funcţionare al instrucţiunilor utilizate. După timpul alocat acestei faze, în următoarele 20 de minute, grupele se vor reorganiza. În cadrul noilor grupe elevii îşi vor împărtăşi reciproc din experienţa dobândită în pasul anterior.

S1 O1=0O2=0

I1

RESET

S2 O1=1O2=0

S3 O1=0O2=1

S4 O1=1O2=1

S5 O1=1O2=0

I2

I3 I4

I1·I2

4I

2I

PST

AB

C

D

E

F

G

102

Page 103: 05 Automate Programabile

Activitatea de învăţare 8.2. Implementarea în limbaj LAD a automatului cu stări finite.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Implementaţi un automat cu stări finite într-un APB cu ajutorul limbajului LAD.

Tipul activităţii: Proiect.

Sugestii:

Elevii vor lucra individual.

Timp de lucru recomandat: o săptămână.

Utilizând fişele de documentare 7.1, 7.2, 7.3 şi 8 să se realizeze programul automatului cu stări finite prezentat în fişa de documentare 8, în limbajul de programare LAD al AP.

Evaluare: Proiectele vor fi prezentate şi evaluate în faţa clasei.

103

Page 104: 05 Automate Programabile

Activitatea de învăţare 8.3. Implementarea în limbaj FBD a automatului cu stări finite.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Implementaţi un automat cu stări finite într-un APB cu ajutorul limbajului FBD.

Tipul activităţii: Proiect.

Sugestii:

Elevii vor lucra individual.

Timp de lucru recomandat: o săptămână.

Utilizând fişele de documentare 7.1, 7.2, 7.3 şi 8 să se realizeze programul automatului cu stări finite prezentat în fişa de documentare 8, în limbajul de programare FBD al AP.

Evaluare: Proiectele vor fi prezentate şi evaluate în faţa clasei.

104

Page 105: 05 Automate Programabile

Tema 9. Conectarea unui automat programabil la un proces de automatizare

Fişa de documentare 9. Conectarea unui automat programabil la un proces de automatizare

Conectarea intrărilor fizice ale automatelor programabile

Conectarea unei intrări se face în funcţie de modul de realizare a acesteia de către producător. Există două variante de intrări: în curent continuu şi în curent alternativ. Conectarea intrărilor de curent continuu este prezentată în Figura 9.1.

La schema din Figura 9.1, bornele + şi – se conectează la o sursă exterioară de curent continuu, protejată la supracurenţi printr-o siguranţă montată pe plusul sursei.

Intrările I0.0 şi I0.1 se leagă contacte (de la relee, contactoare, limitatoare) alimentate de la plusul sursei de curent continuu.

La intrarea I0.2 se conectează ieşirea de semnal a unui traductor alimentat şi el de la aceeaşi sursă de curent continuu exterioară.

Observaţie: La unele automate programabile nu este necesară o sursă de curent continuu exterioară deoarece această tensiune este obţinută în interiorul automatului programabil. Şi în acest caz automatul este prevăzut cu borne de curent continuu, dar la care nu trebuie să se mai conecteze o sursă de curent continuu exterioară.

Conectarea intrărilor de curent alternativ este prezentată în Figura 9.2. În această schemă, bornele L (Line) şi N (Neutral) se conectează la o sursă de curent alternativ (cel mai adesea reţeaua de alimentare). Borna L este protejată la supracurenţi printr-o siguranţă. Sursa de tensiune alternativă alimentează şi contactele din proces conectate la intrările I0.0, I0.1 şi I0.2 ale automatului programabil.

+ - I0.0 I0.1 I0.2

Figura 9.1. Conectarea intrărilor de c.c. ale AP la o sursă de curent continuu.

AP

Proces

105

Page 106: 05 Automate Programabile

Conectarea ieşirilor fizice ale automatelor programabile

Ieşirile automatelor programabile actuale pot fi prin tranzistor sau prin releu, Figura 9.3.

La ambele tipuri de ieşiri, sarcina reprezentată de actuator se conectează la borna de ieşire propriu-zisă Qx.y şi la borna – (GND).

Alimentarea ieşirii, deci a sarcinii RS (pentru efectuarea comenzii din proces), la borna + se face în interiorul automatului programabil prin:

- deschiderea tranzistorului (fototranzistorului din optocuplor) la polarizarea bazei (prin iluminare de către LED-ul din optocuplor);- la alimentarea bobinei releului, care închide contactul normal deschis corespunzător.

În acest fel plusul sursei de alimentare ajunge pe borna Qx.y.

Alimentarea cu curent continuu poate fi făcută şi în acest caz cu o sursă externă sau internă.

L N I0.0 I0.1 I0.2

Figura 9.2. Conectarea intrărilor de c.a. ale AP la o sursă de curent alternativ.

~Proces

AP

GND

+

-

Qx.y

Rs

GND

+

-

Qx.y

Rs

b)a)

Figura 9.3. Conectarea ieşirilor unui automat programabil; a) ieşire prin tranzistor, b) ieşire prin releu.

AP APProces Proces

106

Page 107: 05 Automate Programabile

Conectarea intrărilor şi ieşirilor fizice ale automatelor programabile la un proces de automatizare

Pe baza documentaţiei pusă la dispoziţie de firma producătoare şi cea rezultată în urma proiectării:

- intrările din proces provenite de la contacte de relee, limitatoare, contactoare şi de la senzori (de proximitate, de presiune, etc.) se leagă la intrările corespunzătoare ale automatului programabil;- ieşirile către proces se conectează la actuatorii corespunzători (bobine de relee, contactoare, becuri de semnalizare, etc.).

Dacă automatul nu dispune de sursă de alimentare în curent continuu, din exterior se leagă o astfel de sursă la bornele corespunzătoare (Figura 9.1).

Conectarea sursei de alimentare, 230Vca, se face la bornele L (faza) şi N (nulul de lucru).

În Figura 9.4 se prezintă un exemplu de conectare a unui automat programabil cu 8 intrări şi 8 ieşiri la un proces. Din cele 8 intrări sunt utilizate doar 6 (3 legate la contacte I0.0, I0.1 şi I0.2 iar 3 la senzori din proces, I0.3, I0.5 şi I0.7). De semenea doar 6 ieşiri din 8 sunt utilizate (4 pentru comanda bobinelor de contactoare Q0.0, Q0.1, Q0.2 şi Q0.3 iar 2 pentru aprinderea lămpilor de semnalizare, Q0.4 şi Q0.5).

24V 0V I0.0 I0.1 I0.2 I0.3 I0.4 I0.5 I0.6 I0.7

L N Q0.0 Q0.1 Q0.2 Q0.3 Q0.4 Q0.5 Q0.6 Q0.7

230Vca

Automat programabil

Intrări

Ieşiri

Figura 9.4. Exemplu de conectare a unui automat programabil la un proces.

107

Page 108: 05 Automate Programabile

Activitatea de învăţare 9.1. Tipuri de intrări – ieşiri ale AP şi conectarea lor la proces.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiective:După parcurgerea acestei activităţi veţi fi capabili să:

- Identificaţi tipurile de intrări şi ieşiri ale AP;- Realizaţi schema de conectare a intrărilor şi ieşirilor unui AP la un proces.

Tipul activităţii: Expansiune.

Sugestii:

Elevii se pot organiza în grupe mici (2 – 3 elevi) sau pot lucra individual.

Timp de lucru recomandat 15 minute.

 Folosind fişa de documentare 9. dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) şi pornind de la schemele AP, conectaţi componentele alăturate acestora.

+ - I0.0 I0.1 I0.2 AP

L N I0.0 I0.1 I0.2~AP

108

Page 109: 05 Automate Programabile

Evaluare:Dacă se conectează corect toate componentele alăturate AP, se trece la următoarea activitate, dacă nu, se consultă din nou fişa de documentare 9. şi apoi se reface activitatea.

+

Q0.0

-

Q0.1

AP Proces

109

Page 110: 05 Automate Programabile

Activitatea de învăţare 9.2. Conectarea la proces a AP.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiective:După parcurgerea acestei activităţi veţi fi capabili să: - Identificaţi conectorii pentru intrări-ieşiri şi alimentare AP; - Realizaţi conform unei scheme, conexiunile între un AP şi un proces.

Tipul activităţii: Lucrare de laborator.

Sugestii:

Elevii se vor organiza în grupe mici (de câte 2-3 elevi).

Timp de lucru recomandat: 150 minute.

Materiale necesare: Automate programabile, comutatoare (şi eventual senzori de proximitate), lămpi de semnalizare, cabluri pentru conectarea intrărilor şi ieşirilor AP cu comutatoarele şi lămpile de semnalizare, surse de alimentare de 24Vc.c. (dacă se utilizează AP – uri fără sursă de 24Vc.c.), fişa de documentare 9, alte documentaţii aferente AP-urilor utilizate.

Desfăşurarea lucrării:

Toate grupele vor lucra simultan la îndeplinirea aceloraşi sarcini. Schema de referinţă este cea din Figura 9.4., fişa de documentare 9.

Observaţie: Se poate utiliza şi altă schemă, similară, pusă la dispoziţie de profesor.

1. Conectarea comutatoarelor şi/ sau a senzorilor de proximitate la intrările AP-ului, conform schemei.Timp de lucru recomandat: 25 min.

2. Conectarea lămpilor de semnalizare la ieşirile AP-ului, conform schemei.Timp de lucru recomandat: 25 min.

3. Conectarea sursei de alimentare de 24Vc.c. dacă AP-ul nu dispune de o astfel de sursă.Timp de lucru recomandat: 15 min.

4. Conectarea AP-ului la reţeaua de alimentare 230Vc.a.Timp de lucru recomandat: 15 min.

110

Page 111: 05 Automate Programabile

Evaluare: Dacă toate conexiunile au fost executate corect, se poate trece la activitatea de învăţare următoare. Dacă există erori de conectare se reia studiul fişei de documentare 9, a schemei de conexiuni şi a montajului.

111

Page 112: 05 Automate Programabile

Activitatea de învăţare 9.3. Schema de conectare a unui AP ce implementează un automat cu stări finite.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Realizaţi schema de conectare a unui AP la un proces definit funcţional prin diagrama sa de automat cu stări finite.

Tipul activităţii: Proiect.

Sugestii:

Elevii vor lucra individual.

Timp de lucru recomandat: o săptămână.

Utilizând fişele de documentare 8 şi 9, să se conecteze la un AP ca cel prezentat în fişa de documentare 9, Figura 9.4., intrările şi ieşirile procesului definit de diagrama automatului cu stări finite prezentat în fişa de documentare 8, Figura 8.1.

Indicaţie: Intrările pot fi doar contacte iar ieşirile doar lămpi de semnalizare.

Evaluare: Proiectele vor fi prezentate şi evaluate în faţa clasei.

112

Page 113: 05 Automate Programabile

Activitatea de învăţare 9.4. Implementarea hardware şi software a unui automat cu stări finite pe un AP.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să: - Identificaţi conectorii pentru intrări-ieşiri, alimentare AP şi conectare PC-AP; - Realizaţi conform unei scheme, conexiunile între un AP şi un proces şi între PC şi AP; - Editaţi, compilaţi şi depanaţi programul ce va rula pe AP într-un mediu de programare specific; - Transferaţi programul din PC în memoria de programe a AP; - Verificaţi funcţionarea sistemului automatizat după diagrama stărilor.

Tipul activităţii: Lucrare de laborator.

Sugestii:

Elevii se vor grupa în 2 echipe.

Timp de lucru recomandat: 150 minute.

Materiale necesare: Automate programabile, PC pe care rulează mediul de dezvoltare, cabluri de conectare PC-AP, comutatoare, lămpi de semnalizare, cabluri de conectare intrări-ieşiri AP cu comutatoarele şi lămpile de semnalizare, surse de alimentare de 24Vc.c. (dacă se utilizează AP – uri fără sursă de 24Vc.c.), proiectele realizate în cadrul activităţilor de învăţare 8.1, 8.2 şi 8.3, fişa de documentare 9, alte documentaţii aferente AP-urilor utilizate.

Desfăşurarea lucrării:

Echipa 1

Sarcini de lucru:1. Editarea programul realizat anterior în cadrul activităţilor de învăţare 8.1, 8.2 şi 8.3 în mediul de dezvoltare specific AP utilizat, folosind deci unul din limbajele STL, LAD sau FBD (la alegere). Timp de lucru recomandat: 45 min.

2. Compilarea şi depanarea programului.Timp de lucru recomandat: 15 min.

Echipa 2

Sarcini de lucru:1. Conectarea comutatoarelor la intrările AP, conform schemei realizate în cadrul activităţii de învăţare 9.2.

113

Page 114: 05 Automate Programabile

Timp de lucru recomandat: 25 min.

2. Conectarea lămpilor de semnalizare la ieşirile AP, conform schemei realizate în cadrul activităţii de învăţare 9.2.Timp de lucru recomandat: 20 min.

3. Conectarea alimentării AP la reţea şi la sursa de 24Vc.c. dacă este cazul, conform schemei realizate în cadrul activităţii de învăţare 9.2. Timp de lucru recomandat: 10 min.

4. Conectarea AP-ului la PC-ul pe care s-a editat şi compilat programul.Timp de lucru recomandat: 5 min.

Echipa1 + Echipa 2

Sarcini de lucru:1. Transferul programului în memoria AP.Timp de lucru recomandat: 5 min.

2. Verificarea funcţionării automatului cu stări finite astfel implementat.Timp de lucru recomandat: 40 min.

Evaluare: Dacă automatul cu stări finite implementat funcţionează conform diagramei, se poate trece la activitatea de învăţare următoare. Dacă funcţionarea nu este în conformitate cu diagrama stărilor, se identifică erorile şi se reia studiul fişelor de documentare 8 şi 9, a programului, a schemei de conexiuni şi a montajului.

114

Page 115: 05 Automate Programabile

Tema 10. Programarea AP utilizând limbajele STL, LAD şi FBD.

Fişa suport 10.1. Sinteza funcţională a circuitului implementabil cu AP

Aplicaţie:

Pentru circuitul din Figura 10.1.1. care converteşte codul octal în caractere alfabetice afişate pe 7 segmente, conform tabelului de adevăr 10.1.1, să se realizeze programul pentru un AP în limbajul:

a) STL;a) LAD;b) FBD.

Obsevaţie: În tabelul de adevăr, valoarea 1 corespunde segmentului aprins iar valoarea 0 segmentului stins.

Cifra octală

Triadabinară

Caracterafişat

Segmente afişora b c d e f g

0 000 A 1 1 1 0 1 1 1

1 001 C 1 0 0 1 1 1 0

2 010 E 1 0 0 1 1 1 1

3 011 F 1 0 0 0 1 1 1

4 100 H 0 1 1 0 1 1 1

5 101 J 0 1 1 1 0 0 0

6 110 L 0 0 0 1 1 1 0

7 111 P 1 1 0 0 1 1 1

Funcţiile corespunzătoare celor 7 ieşiri, obţinute prin minimizare cu ajutorul diagramelor Veitch sunt sintetizate mai jos.

a

b

c

d

e

fg

abcdefg

A

B

C

AP

Figura 10.1.1. Convertor octal – alfabetic

115

Tabelul 10.1.1. Tabelul de adevăr al convertorului octal-alfabetic

Page 116: 05 Automate Programabile

În Tabelul 10.1.2. sunt prezentate asocierile dintre variabilele de intrare ale automatului şi intrările în circuit, respectiv dintre variabilele de ieşire şi ieşirile circuitului.

Tabelul 10.1.2. Asocierea variabile intrare/ ieşire AP şi intrări/ ieşiri circuit convertor

Intrări convertor Intrări APA %I0.0B %I0.1C %I0.2

Ieşiri convertor Ieşiri APa %Q0.0b %Q0.1c %Q0.2d %Q0.3e %Q0.4f %Q0.5

0 1 1 1 3 1 2 14 0 5 0 7 1 6 0C

A

B

a

CABa

0 1 1 0 3 0 2 04 1 5 1 7 1 6 0C

A

B

b

ACBAb

0 1 1 0 3 0 2 04 1 5 1 7 0 6 0C

A

B

c

CBBAc

0 0 1 1 3 0 2 14 0 5 1 7 0 6 1C

A

B

d

BABABAd

0 1 1 1 3 1 2 14 1 5 0 7 1 6 1C

A

B

f

CBAfe

e0 1 1 0 3 1 2 14 1 5 0 7 1 6 0C

A

B

g

CBBACBABBAg

116

Page 117: 05 Automate Programabile

Activitatea de învăţare 10.1. Sinteza circuitului implementabil cu AP.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Realizaţi sinteza unui circuit astfel încât să poate fi implementat pe un AP.

Tipul activităţii: Peer learning – metoda grupurilor de experţi.

Sugestii:

Elevii se vor organiza în 4 grupe.

Timp de lucru recomandat 30 minute.

Utilizând fişa de documentare 9 şi 10.1, dar şi alte surse de informare (fişe de documentare de la modulul XI “Circuite logice integrate în automatizări” clasa a XI-a, internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) fiecare grupă va extrage forma minimă pentru câte una din funcţiilor realizate de un circuit convertor de cod din cod 8421 în cod Gray. După cca 15 minute grupele se vor reorganiza astfel încât cel puţin unul dintre elevii fiecărei grupe noi să fi făcut parte din altă grupă. Elevii‚ îşi vor împărtăşi din experienţa acumulată în faza anterioară.

Evaluare: Fiecare funcţie minimizată va fi prezentată şi evaluată în faţa clasei.La sfârşit, cele 4 grupe de experţi vor selecta intrările şi ieşirile ce vor utilizate pentru un AP ca cel prezentat în fişa de documentare 9, Figura 9.4., sub forma unui tabel ca cel prezentat în fişa de documentare 10.1., respectiv Tabelul 10.1.2.

117

Page 118: 05 Automate Programabile

Fişa de documentare 10.2. Programarea în limbajul STL a AP ce emulează circuitul convertor octal-alfabetic.

Programul STL pentru emulator este următorul:

LDN %I0.2 //încarcă negatul intrării C în acumulatorOR (%I0.0

AND %I.01) //Execută operaţiile logice AB+C’

ST %Q0.0 //Stochează rezultatul în a//------------------------------------------------------

LDN %I0.0 //încarcă negatul intrării A în acumulatorANDN %I0.1 //Execută AND între acumulator şi B’OR (%I0.0

AND %I0.2) //Execută operaţiile logice A’B’+AC

ST %Q0.1 //Stochează rezultatul în b//-------------------------------------------------------

LDN %I0.0 //încarcă negatul intrării A în acumulatorANDN %I0.1 //Execută AND între acumulator şi B’OR (%I0.2

ANDN %I0.1) //Execută operaţiile logice A’B’+B’C

ST %Q0.2 //Stochează rezultatul în c//------------------------------------------------------

LD %I0.0XOR %I0.1 //Execută operaţia A XOR BST %Q0.3 //Stochează rezultatul în d

//------------------------------------------------------LDN %I0.0 //Încarcă A’ în acumulatorOR %I0.1 //Execută operaţia A’+BORN %I0.2 //Execută operaţia A’+B+C’ST %Q0.4 //Stochează rezultatul în e si fST %Q0.5

//-----------------------------------------------------LDN %I0.0ANDN %I0.1 //În acumulator se află A’B’OR (%I0.0

AND %I0.1) //În acumulator se află A’B’+AB

OR (%I0.1ANDN %I0.2) //În acumulator se află A’B’+AB+BC’

ST %Q0.6 //Stochează rezultatul în g

118

Page 119: 05 Automate Programabile

Activitatea de învăţare 10.2.1. Implementarea în limbaj STL a funcţiilor unui circuit logic.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Implementaţi funcţiile unui circuit într-un program scris în limbaj STL.

Tipul activităţii: Peer learning – metoda grupurilor de experţi.

Sugestii:

Elevii se vor organiza în 4 grupe.

Timp de lucru recomandat 30 minute.

Utilizând rezultatele activităţii de învăţare 10.1, dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) fiecare grupă va implementa în limbaj STL câte una din funcţiile minimizate anterior în cadrul activităţii de învăţare 10.1. După cca 15 minute grupele se vor reorganiza astfel încât cel puţin unul dintre elevii fiecărei grupe să fi făcut parte din altă grupă. Elevii‚ îşi vor împărtăşi din experienţa acumulată în faza anterioară.

Evaluare: Fiecare implementare va fi prezentată şi evaluată în faţa clasei.

119

Page 120: 05 Automate Programabile

Activitatea de învăţare 10.2.2. Scrierea în limbajul STL într-un mediu de dezvoltare specific, a unui program pentru AP. .

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să: - Editaţi în limbaj STL, compilaţi şi depanaţi programul ce va rula pe AP într-un mediu de programare specific; - Verificaţi funcţionarea sistemului automatizat în simulatorul mediului de dezvoltare, după diagrama stărilor.

Tipul activităţii: Lucrare de laborator.

Sugestii:

Elevii se vor organiza în grupe mici (2-3 elevi).

Timp de lucru recomandat: 150 minute.

Toate grupele vor lucra simultan la îndeplinirea aceloraşi sarcini.

Materiale necesare: PC-uri pe care rulează mediul de dezvoltare, fişele de documentare 10.1. şi 10.2. şi documentaţii aferente AP-urilor utilizate.

Desfăşurarea lucrării:

Sarcini de lucru:1. Editarea programul prezentat în fişa de documentare 10.2, în mediul de dezvoltare specific AP utilizat, folosind limbajul STL. Timp de lucru recomandat: 45 min.

2. Compilarea şi depanarea programului.Timp de lucru recomandat: 15 min.

3. Verificarea funcţionării programului astfel implementat, prin simulare în mediul de dezvoltare, utilizând tabelul de adevăr 10.1.1. din fişa de documentare 10.1.Timp de lucru recomandat: 40 min.

Evaluare: Dacă programul implementat funcţionează conform tabelului de adevăr, activitatea de învăţare se încheie. Dacă funcţionarea nu este în conformitate cu tabelului de adevăr, se identifică erorile şi se reia studiul fişelor de documentare 10.1, 10.2 şi a programului editat.

120

Page 121: 05 Automate Programabile

Fişa de documentare 10.3. Programarea în limbajul LAD a AP ce emulează circuitul convertor octal-alfabetic.

Cu asocierile din Tabelul 10.2.2. în Figura 10.3.1.se prezintă programul în limbajul LAD.

%I0.0 %I0.1

%I0.2

%I0.2

%Q0.0

%I0.0 %I0.1

%I0.0

%Q0.1

%I0.2

%I0.0 %I0.1 %Q0.2

%I0.1

%I0.0 %I0.1

%I0.1 %I0.0

%Q0.3

%I0.0

%I0.1 %Q0.4

%Q0.5

%I0.0 %I0.1

%I0.0 %I0.1

%I0.2%I0.1

%Q0.6

Figura 10.3.1. Programul LAD pentru AP ce emulează convertorul octal-alfabetic.

%I0.2

121

Page 122: 05 Automate Programabile

Activitatea de învăţare 10.3.1. Implementarea în limbaj LAD a funcţiilor unui circuit logic.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Implementaţi funcţiile unui circuit într-un program scris în limbaj LAD.

Tipul activităţii: Peer learning – metoda grupurilor de experţi.

Sugestii:

Elevii se vor organiza în 4 grupe.

Timp de lucru recomandat 30 minute.

Utilizând rezultatele activităţii de învăţare 10.1., dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) fiecare grupă va implementa în limbaj LAD funcţia minimizată anterior în cadrul activităţii de învăţare 10.1. După cca 15 minute grupele se vor reorganiza astfel încât cel puţin unul dintre elevii fiecărei grupe să fi făcut parte din altă grupă. Elevii‚ îşi vor împărtăşi din experienţa acumulată în faza anterioară.

Evaluare: Fiecare implementare va fi prezentată şi evaluată în faţa clasei.

122

Page 123: 05 Automate Programabile

Activitatea de învăţare 10.3.2. Scrierea în limbajul LAD într-un mediu de dezvoltare specific, a unui program pentru AP.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să: - Editaţi în limbaj LAD, compilaţi şi depanaţi programul ce va rula pe AP într-un mediu de programare specific; - Verificaţi funcţionarea sistemului automatizat în simulatorul mediului de dezvoltare, după diagrama stărilor.

Tipul activităţii: Lucrare de laborator.

Sugestii:

Elevii se vor organiza în grupe mici (2-3 elevi).

Timp de lucru recomandat: 150 minute.

Toate grupele vor lucra simultan la îndeplinirea aceloraşi sarcini.

Materiale necesare: PC-uri pe care rulează mediul de dezvoltare, fişele de documentare 10.1. şi 10.3. şi documentaţii aferente AP-urilor utilizate.

Desfăşurarea lucrării:

Sarcini de lucru:1. Editarea programul prezentat în fişa de documentare 10.3, în mediul de dezvoltare specific AP utilizat, folosind limbajul LAD. Timp de lucru recomandat: 45 min.

2. Compilarea şi depanarea programului.Timp de lucru recomandat: 15 min.

4. Verificarea funcţionării programului astfel implementat, utilizând tabelul de adevăr 10.1.1. din fişa de documentare 10.1.Timp de lucru recomandat: 40 min.

Evaluare: Dacă programul implementat funcţionează conform tabelului de adevăr, activitatea de învăţare se încheie. Dacă funcţionarea nu este în conformitate cu tabelului de adevăr, se identifică erorile şi se reia studiul fişelor de documentare 10.1, 10.3. şi a programului editat.

123

Page 124: 05 Automate Programabile

Fişa de documentare 10.4. Programarea în limbajul FBD a AP ce emulează circuitul convertor octal-alfabetic.

Cu asocierile din Tabelul 10.2.2. programul pentru emulatorul convertorului octal-alfabetic în limbajul FBD este prezentat în Figura 10.4.1.a. şi b.

=1XOR

NOT

&AND

1OR

%I0.0

%I0.1

%I0.2

%Q0.0

&AND

%I0.0

%I0.1

NOT

NOT

&AND

%I0.0

%I0.2

1OR

%Q0.1

&AND

%I0.0

%I0.1

NOT

NOT

&AND

%I0.0

%I0.2

1OR

%Q0.2

NOT

%I0.0

%I0.1

%Q0.3

Figura 10.4.1.a. Programul în limbajului FBD al emulatorului circuitului convertor de cod octal-alfabetic.

124

Page 125: 05 Automate Programabile

Figura 10.4.1.b. Programul în limbajului FBD al emulatorului circuitului convertor de cod octal-alfabetic.

1OR

%Q0.6

NOT %Q0.4

%Q0.5

%I0.1

%I0.0

=1XOR

%I0.0

%I0.1

NOT

NOT

&AND

%I0.2

%I0.1

1OR

NOT%I0.2

125

Page 126: 05 Automate Programabile

Activitatea de învăţare 10.4.1. Implementarea în limbaj FBD a funcţiilor unui circuit logic.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să:

- Implementaţi funcţiile unui circuit într-un program scris în limbaj FBD.

Tipul activităţii: Peer learning – metoda grupurilor de experţi.

Sugestii:

Elevii se vor organiza în 4 grupe.

Timp de lucru recomandat 30 minute.

Utilizând rezultatele activităţii de învăţare 10.1, dar şi alte surse de informare (internet, reviste de specialitate, caietul de notiţe, documentaţii tehnice, etc.) fiecare grupă va implementa în limbaj FBD funcţia minimizată anterior în cadrul activităţii de învăţare 10.1. După cca 15 minute grupele se vor reorganiza astfel încât cel puţin unul dintre elevii fiecărei grupe noi să fi făcut parte din altă grupă. Elevii‚ îşi vor împărtăşi din experienţa acumulată în faza anterioară.

Evaluare: Fiecare implementare va fi prezentată şi evaluată în faţa clasei.

126

Page 127: 05 Automate Programabile

Activitatea de învăţare 10.4.2. Scrierea în limbajul FBD într-un mediu de dezvoltare specific, a unui program pentru AP.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să: - Editaţi în limbaj FBD, compilaţi şi depanaţi programul ce va rula pe AP într-un mediu de programare specific; - Verificaţi funcţionarea sistemului automatizat în simulatorul mediului de dezvoltare, după diagrama stărilor.

Tipul activităţii: Lucrare de laborator.

Sugestii:

Elevii se vor organiza în grupe mici (2-3 elevi).

Timp de lucru recomandat: 150 minute.

Toate grupele vor lucra simultan la îndeplinirea aceloraşi sarcini.

Materiale necesare: PC-uri pe care rulează mediul de dezvoltare, fişele de documentare 10.1. şi 10.4. şi documentaţii aferente AP-urilor utilizate.

Desfăşurarea lucrării:

Sarcini de lucru:1. Editarea programul prezentat în fişa de documentare 10.4, în mediul de dezvoltare specific AP utilizat, folosind limbajul FBD. Timp de lucru recomandat: 45 min.

2. Compilarea şi depanarea programului.Timp de lucru recomandat: 15 min.

5. Verificarea funcţionării programului astfel implementat, în mediul de dezvoltare, utilizând tabelul de adevăr 10.1.1. din fişa de documentare 10.1.Timp de lucru recomandat: 40 min.

Evaluare: Dacă programul implementat funcţionează conform tabelului de adevăr, activitatea de învăţare se încheie. Dacă funcţionarea nu este în conformitate cu tabelului de adevăr, se identifică erorile şi se reia studiul fişelor de documentare 10.1, 10.4. şi a programului editat.

127

Page 128: 05 Automate Programabile

Activitatea de învăţare 10.4.3. Implementare hardware şi software a unui circuit logic.

Competenţa:26.3. Examinează utilizarea automatelor programabile cu prelucrare la nivel de bit la implementarea automatelor cu stări finite.

Obiectiv:După parcurgerea acestei activităţi veţi fi capabili să: - Identificaţi conectorii pentru intrări-ieşiri, alimentare AP şi conectare PC-AP; - Realizaţi conform unei scheme, conexiunile între un AP şi un proces şi între PC şi AP; - Editaţi, compilaţi şi depanaţi programul ce va rula pe AP într-un mediu de programare specific; - Transferaţi programul din PC în memoria de programe a AP; - Verificaţi funcţionarea sistemului automatizat după diagrama stărilor.

Tipul activităţii: Lucrare de laborator.

Sugestii:

Elevii se vor grupa în 2 echipe.

Timp de lucru recomandat: 150 minute.

Materiale necesare: Automate programabile, PC-uri pe care rulează mediul de dezvoltare, cabluri de conectare PC-AP, comutatoare, lămpi de semnalizare, cabluri de conectare intrări-ieşiri AP cu comutatoarele respectiv lămpile de semnalizare, surse de alimentare de 24Vc.c. (dacă se utilizează AP – uri fără sursă de 24Vc.c.), rezultatele activităţilor de învăţare 10.1, 10.2.1, 10.3.1 şi 10.4.1, fişa de documentare 10.1., alte documentaţii aferente AP-urilor utilizate.

Desfăşurarea lucrării:

Echipa 1

Sarcini de lucru:1. Editarea programului realizat anterior în cadrul activităţilor de învăţare 10.2.1, 10.3.1. şi 10.4.1. în mediul de dezvoltare specific AP utilizat, folosind deci unul din limbajele STL, LAD sau FBD. Timp de lucru recomandat: 45 min.

2. Compilarea şi depanarea programului.Timp de lucru recomandat: 15 min.

Echipa 2

Sarcini de lucru:1. Conectarea comutatoarelor la intrările AP, conform tabelului realizat în cadrul activităţii de învăţare 10.1.

128

Page 129: 05 Automate Programabile

Timp de lucru recomandat: 25 min.

2. Conectarea lămpilor de semnalizare la ieşirile AP, conform tabelului realizat în cadrul activităţii de învăţare 10.1.Timp de lucru recomandat: 20 min.

3. Conectarea alimentării AP la reţeaTimp de lucru recomandat: 10 min.

4. Conectarea AP-ului la PC-ul pe care s-a editat şi compilat programul.Timp de lucru recomandat: 5 min.

Echipa1 + Echipa 2

Sarcini de lucru:3. Transferul programului în memoria AP.Timp de lucru recomandat: 5 min.

6. Verificarea funcţionării circuitului astfel implementat.Timp de lucru recomandat: 40 min.

Evaluare: Dacă circuitul implementat funcţionează conform tabelului de adevăr, activitatea de învăţare se încheie. Dacă funcţionarea nu este în conformitate cu diagrama stărilor, se identifică erorile şi se reia studiul fişelor de documentare 9, 10.1, activităţilor de învăţare 10.2.1, 10.3.1 şi 10.4.1, a programului, a schemei de conexiuni şi a montajului.

129

Page 130: 05 Automate Programabile

III.Glosar

AActuator – Element de execuţie. 106, 107Acumulator – Registru cu destinaţie specială din unitatea centrală care mijloceşte

operţiile de transfer, calcul şi cele condiţionate. 52, 56, 57, 58, 60, 61, 62, 63, 66, 69, 70, 71, 81, 82, 100, 101, 117

Anclanşare – Pornirea procesului/ acţiunii (de exemplu prin alimentarea cu energie) 4, 8, 69, 71, 72

BBuffer (de adrese) – Registru tampon pentru memorarea temporară (a adresei) 32,

33, 34, 46

CCelule de memorie – Locaţii de memorie 44Cod maşină – Programul în forma de cod binar ce poate fi executat de către unitatea

centrală a microprocesorului, microcontrolerului, AP, etc. 20, 49Contact direct - Contactul normal deschis 91Contact inversat – Contact normal închis 91Cronofag – Consumator de timp 49Cuvinte (de cod) - Coduri binare uniforme 25, 44

DDeclanşare - Oprirea procesului/ acţiunii (de exemplu prin întreruprea alimentării cu

energie) 4, 8, 69, 72

EEmulare – Realizarea funcţiei unui circuit de către un alt circuit cu structură diferită

5, 10, 11, 118, 121, 124

FFBD – (Function Block Diagram) Limbaj de programare a AP – Diagramă cu blocuri de

funcţii 4, 5, 9, 10, 11, 74, 78, 94, 96, 97, 98, 104, 113, 115, 124, 126, 127, 128

IIncrementare – Creştere valoare (implicit cu o unitate) 44, 47, 66

LLAD – (Ladder Diagram) Limbaj de programare a AP – Diagramă scară 4, 5,

9, 10, 74, 78, 87, 90, 91, 92, 94, 103, 113, 115, 121, 122, 128Limbaj de asamblare – Limbaj de programare de nivel scăzut specific fiecărui procesor

ce permite scrierea programelor 20, 49, 51

MMicroswitch – Microîntrerupător 69

130

Page 131: 05 Automate Programabile

Mnemonică – Descriere concisă a instrucţiunii cu ajutorul a 1-4 carcatere 49, 51, 52,56Multitasking fix – Execuţia mai multor programe în acelaşi timp (în aparenţă) şi

utilizează zone de memorie diferite de adrese fixe 50Multitasking relocabil - Execuţia mai multor programe în acelaşi timp (în aparenţă se

încărcate la adrese oarecare gestionate de sistemul de operare 50

PPLC – (Programmable Logic Controller) Controler logic programabil – Automat

programabil 3, 25

S(Sisteme) în timp real – Sisteme la care rezultatele prelucrărilor sunt disponibile înainte

de momentul în care este nevoie de acestea. 27STL – (Statement List) Limbaj de programare a AP - Listă de instrucţiuni 4, 5,

9, 10, 74, 78, 80, 81, 83, 84, 85, 86, 90, 94, 102, 113, 115, 118, 119, 120, 128

TTSL - (Three state logic), poartă cu 3 stări logice (0, 1 şi HiZ High impedance – înaltă

impedanţă) 57Timp real – vezi Sisteme în timp real

WWatchdog – Circuit numărător destinat supravegherii timpului de execuţie a programului

46

131

Page 132: 05 Automate Programabile

IV. Bibliografie

1. Mărgineanu, Ioan. (2005). Automate programabile, Cluj Napoca: Editura Albastră

2. Frandoş, Siviu, ş.a. (2006). Mecatronică, Manual pentru clasa a XII-a, Bucureşti: Editura Economică – Preuniversitaria

3. ***. La http://facultate.regielive.ro/cursuri/electronica/automate_programabile_cu_prelucrare_pe_bit-76956.html. (10.05.2009)

4. ***. La www.aut.upt.ro/b624/discipline/asdn/ap101.pdf (11.05.2009)

132