55827702 echipamente numerice curs

Upload: bogdanparafoil

Post on 10-Jul-2015

258 views

Category:

Documents


6 download

TRANSCRIPT

1. MICROCONTROLERUL ELEMENT DE BAZ N ECHIPAMENTELE NUMERICEUtilizarea microprocesoarelor (a logicii programate) n echipamentele de comand, survenit dup anii 70, a adus avantaje majore n raport cu soluiile existente: flexibilitate funcional ridicat, consumuri de energie reduse, volum i greutate minime, fiabilitate mrit i - nu n ultimul rnd - posibilitatea implementrii unor strategii de comand performante. Soluiile de comand n logic programat implic utilizarea de structuri digitale complexe ca circuite specializate (ASIC - Application Special Integrated Circuit), microprocesoare (P) de uz general sau cu funcii speciale, microcontrolere (C), procesoare numerice de semnal (Digital Signal Processor - DSP) dar i echipamente numerice precum automate programabile (PLC - Programmable Logic Controller), regulatoare digitale, sisteme CNC pentru maini - unelte (Computerized Numerical Control), calculatoate industriale etc. Microcontrolere se constituie n prezent ca cel mai bun compromis ntre structuri numerice de comand de uz general i cele specializate; ele ofer o alocare optim a task-urilor la resurse hardware i software precum i faciliti pentru conducerea n timp real. Raportul pre - performan este foarte convingtor, chiar circuite din clasa economic pe 8 bii putnd suporta prelucrri complexe, cu precizie bun i vitez de procesare ridicat. 1.1 Structura sistemelor microprogramabile Microcontrolerul este un circuit integrat de tip microprocesor, fiind orientat structural si funcional spre lucrul cu intrri i ieiri. Dac se nglobeaz intr-un circuit integrat pe lng microprocesor, memorie ROM , memoria RAM i elementele de intrare/ieire necesare unei anumite aplicaii se obine cel mai complex circuit integrat numit microcontroler. Un microcontroler este similar unui microprocesor. Ambele conin o unitate centrala de prelucrare sau UCP (Central Processing Unit). CPU execut instruciuni care ndeplinesc operaiile de baza logice, matematice i de curgere a informaiei. Pentru a construi un calculator complet, microprocesorul necesit memorie pentru pstrarea datelor i a programelor i interfee de intrare-ieire (I/O) pentru conectarea dispozitivelor externe cum ar fi tastatura sau monitorul. Spre diferena de microprocesor, microcontrolerul este un calculator pe un chip deoarece el conine i memorie i interfee de intrare-ieire pe lng CPU. Deoarece memoria i interfeele care ncap pe un chip sunt limitate, microcontrolerele tind s fie utilizate n sisteme mai mici care necesit doar un microcontroler i cteva elemente adiionale, [30]. Pentru a alege un microcontroler din marea varietate de microcontrolere existente pe pia trebuie inut cont de cteva caracteristici importante ale acestora: numrul de bii pe care l poate procesa simultan, numrul mai mare de bii indicnd un chip mai rapid i mai puternic. Circuitele de 8 bii sunt foarte populare, dar exist i circuite de 4, 16, 32 bii. consumul de putere este important mai ales n cazul sistemelor alimentate de la baterie. Circuitele realizate n tehnologia CMOS au un consum redus de putere. Multe din dispozitivele CMOS au un mod special de "ateptare" (stand-bye sau sleep) care limiteaz consumul de curent la civa miliamperi cnd un circuit este inactiv. un alt considerent n proiectarea circuitelor cu microcontrolere este modul de memorare a programului. Dintre modalitile de memorare amintim memoriile EPROM, EEPROM, ROM, NVRAM (nonvolatile RAM) i FLASH EPROM. opiuni de intrare-ieire. Majoritatea sistemelor necesit interfee cu senzori, tastatura, comutatoare, relee, monitoare etc. n general microcontrolerele au porturi pentru interfaarea cu lumea exterioar.

Pe piaa naionala i internaional se gsesc microcontrolere de 4 bii, de 8 bii, de 16 bii, de 32 de bii. Cele mai folosite microcontrolere sunt cele de 8 i 16 bii. n al doilea caz avem microcontrolere cu arhitectura Von Neuman, avnd magistrala intern unic la care comunic toate elementele, sau microcontrolere cu arhitectura Harvard, avnd dou magistrale, una pentru memoria ROM de programe i alta pentru memoria RAM de date. n acest caz cele dou tipuri de memorii utilizeaz acelai spaiu de adrese, ele nu se confund datorita existenei unor instruciuni adecvate lucrului cu memoriile. n tabelul 1, se prezint cteva exemple de microcontrolere de la 4 la 32 de bii, ncepnd de la cel mai simplu, microcontrolerul COPS400 care este foarte rar utilizat, continund cu cteva microcontrolere foarte populare, cum sunt 87C752, 68HC11F1 i 80C166/167 i terminnd cu microcontrolerul de 32 de bii foarte performant TriCore TC1775,[35]. Tabelul 1.Caracteristicile ctorva microcontrolere semnificativeMicrocontroler (nume) National Semicond. COPS400 (4 bii) Hitachi HD44780 (4 bii) Philips 87C752 (8 bii) Motorola 68HC11FI (8 bii) CYPRESS CY8Cxxxxx (8biti) Siemens 80C166/167 (16 bii) SiemensTCI775 (32 bii) RAM (B) 32 ROM (kB) 0.256 CLOCK (MHz) 2.5 PPI (nr.) 2x4 1x8 SPI (nr.) 1 PIT (nr.) ADC (nr.) PWM (nr.) -

80 64

1.2 2

2 12

1x16 1x40 1x5 2x8 1x6 6x8 2x8 2x14 2x24 5x20 1x2 1x10 4x16 1x32 11x16

-

-

-

-

I2C

1

5

1

512

1

4

2

1

8

-

2048

32

24

I2C UART

IrDA LCD

8

16

1024 72k

32 20

20 40

2 4

2 3

10 2

2

Microcontrolerele de 4 i 8 bii au fost cele mai rspndite dispozitive inteligente, n principal datorit simplitii fa de microcontrolerele de 16 si 32 de bii. n ciuda acestei simpliti, microcontrolere de 8 bii nc domin o parte important a pieei de microcontrolere. Dei au structura relativ simpl, aceste microcontrolere sunt capabile s controleze multe dispozitive ncepnd cu mainile de splat i aparatele video pn la automatele programabile. Dei prezint limitri de procesare datorit dimensiunii reduse a cuvntului i a vitezei mici, totui costul sczut i prezena elementelor interne pentru periferice (drivere de display, interfee paralele i seriale, convertoare A/D etc) le face foarte atractive. Aceste dispozitive inteligente sunt foarte potrivite pentru un numr de aplicaii de producie n serie n care o soluie de cost sczut necesit un numr minim de cip-uri. n tabelul 2 sunt prezentate cele mai populare microcontrolere de 4 si 8 bii. Dintre cele de 4 bii, microcontrolerul HD44780 este dedicat unei sarcini speciale, i anume driver de afiaj LCD.

Nr crt. 1 2

Tip TMS1000 NEC7500

Productor Texas Instruments Nippon Electrinics Hitachi

Tabelul 2. Exemple de microcontrolere de 4 i 8 bii Biti Caracteristici 4 4 4kB ROM; 128x4 bii RAM; 16 linii de ieire; 8bii ADC; 12 grupuri de instruciuni 6kB ROM; 256x4 bits RAM; 35 linii I/O individuale; 4 canale ADC de 8 bii; port serial I/O de 8 bii; 2 grupuri de instruciuni 1.2kB ROM; 80x8bii display RAM; 64x8 RAM generator de caractere; 40 linii segment;16 linii uzuale; 7 grupuri de instruciuni 8kB ROM;256x8 bits RAM; 6 porturi de 8 bii; 8 canale ADC; USART; 5 grupuri de instruciuni 12kB ROM; 0.5kB EEPROM; 1kB RAM; 6 porturi de 8 bii; 1 port de 6 bii; 8 canale ADC; USART; SPI; 5 grupuri de instruciuni 16kB ROM; 0.5kB EEPROM; 0.5kB RAM; 5 porturi I/O de 8 bii; 4 porturi de 3 bii; 8 canale; ADC; USART; SPI; 14 moduri de adresare 26 porturi I/O; 16 blocuri digitale; 12 blocuri analogice; Memoria 32KB Flash; Viteza CPU 24 MHz; 9 functii SROM; 3 tipuri de instructiuni; Arhitectura 4xMIPS care cuprinde memoria SROM si memoria Flash

3

HD44780

4

4

80C552

Phillips

8

5

68HC11

Motorola

8

6

TMS370

Texas Instruments

8

7

M8C

CYPRESS

8

Microcontrolerul difer de un microprocesor n multe feluri. n primul rnd i cel mai important este funcionalitatea sa deoarece pentru a putea fi utilizat unui microprocesor trebuie s i se adauge alte componente ca memorie, sau componente pentru primirea i trimiterea de date. Pe scurt, aceasta nseamn c microprocesorul este inima calculatorului. Pe de alt parte, microcontrolerul este proiectat s fie toate acestea ntr-unul singur. Nu sunt necesare alte componente externe pentru aplicarea sa pentru c toate perifericele necesare sunt deja incluse n el. Astfel, economisim timpul i spaiul necesare pentru construirea de aparate. 1. 1.1 Unitatea de memorie Memoria este o parte a microcontrolerului a crei funcie este de a nmagazina date. Cel mai uor mod de a explica este de a-l descrie ca un dulap mare cu multe sertare. Dac presupunem c am marcat sertarele ntr-un asemenea fel nct s nu fie confundate, oricare din coninutul lor va fi atunci uor accesibil. Este suficient s se tie desemnarea sertarului i astfel coninutul lui ne va fi cunoscut n mod sigur. Dou noi concepte ne sunt aduse: adresarea i locaia de memorie. Memoria const din toate locaiile de memorie, i adresarea nu este altceva dect selectarea uneia din ele. Aceasta nseamn c noi trebuie s selectm locaia de memorie la un capt, i la cellalt capt trebuie s ateptm coninutul acelei locaii. n afar de citirea dintr-o locaie de memorie, memoria trebuie de asemenea s permit scrierea n ea. Aceasta se face prin asigurarea unei linii adiionale numit

linie de control. Vom desemna aceast linie ca R/W (citete /scrie). Linia de control este folosit n urmtorul fel: dac r/w=1, se face citirea, i dac opusul este adevrat atunci se face scrierea n locaia de memorie. Memoria este primul element, dar avem nevoie i de altele pentru ca microcontrolerul nostru s funcioneze. 1.1.2 Unitatea Central de Procesare S adugm alte 3 locaii de memorie pentru un bloc specific ce va avea o capabilitate incorporat de nmulire, mprire, scdere i s-i mutm coninutul dintr-o locaie de memorie n alta. Partea pe care tocmai am adugat-o este numit "unitatea de procesare central" (CPU). Locaiile ei de memorie sunt numite regitrii. Regitrii sunt deci locaii de memorie al cror rol este de a ajuta prin executarea a variate operaii matematice sau a altor operaii cu date oriunde se vor fi gsit datele. S privim la situaia curent. Avem dou entiti independente (memoria i CPU) ce sunt interconectate, i astfel orice schimb de informaii este ascuns, ca i funcionalitatea sa. Dac, de exemplu, dorim s adugm coninutul a dou locaii de memorie i ntoarcem rezultatul napoi n memorie, vom avea nevoie de o conexiune ntre memorie i CPU. Mai simplu formulat, trebuie s avem o anumit "cale" prin care datele circul de la un bloc la altul. 1.1.3 Bus-ul Calea este numit "bus"- magistral. Fizic, el reprezint un grup de 8, 16, sau mai multe fire. Sunt dou tipuri de bus-uri: bus de adres i bus de date. Primul const din attea linii ct este cantitatea de memorie ce dorim s o adresm, iar cellalt este att de lat ct sunt datele, n cazul nostru 8 bii sau linia de conectare. Primul servete la transmiterea adreselor de la CPU la memorie, iar cel de al doilea la conectarea tuturor blocurilor din interiorul microcontrolerului. n ceea ce privete funcionalitatea, situaia s-a mbuntit, dar o nou problem a aprut de asemenea: avem o unitate ce este capabil s lucreze singur, dar ce nu are nici un contact cu lumea de afar. Pentru a nltura aceast deficien, s adugm un bloc ce conine cteva locaii de memorie al cror singur capt este conectat la bus-ul de date, iar cellalt are conexiune cu liniile de ieire la microcontroler ce pot fi vzute cu ochiul liber ca pini la componenta electronic. 1.1.4 Unitatea Intrare-ieire Aceste locaii ce tocmai le-am adugat sunt numite "porturi". Sunt diferite tipuri de porturi: intrare , ieire sau porturi pe dou-ci. Cnd se lucreaz cu porturi, mai nti de toate este necesar s se aleag cu ce port urmeaz s se lucreze, i apoi s se trimit date la, sau s se ia date de la port. Cnd se lucreaz cu el portul se comport ca o locaie de memorie. Ceva este pur i simplu scris n sau citit din el, i este posibil de a remarca uor aceasta la pinii microcontrolerului.

Fig.1 Schema bloc general a unui microcontroler cu elementele de baza si conexiunile interne Astfel microcontrolerul este acum terminat, i tot ce mai rmne de fcut este de a-l pune ntr-o component electronic unde va accesa blocurile interioare prin pinii exteriori. n figura 1 este explicitat schema logic general a unui microcontroler, liniile subiri ce merg din interior ctre prile laterale ale microcontrolerului reprezint fire conectnd blocurile interioare cu pinii capsulei microcontrolerului. 1.1.5 Comunicaia serial Cu aceasta am adugat la unitatea deja existent posibilitatea comunicrii cu lumea de afar. Totui, acest mod de comunicare are neajunsurile lui. Unul din neajunsurile de baz este numrul de linii ce trebuie s fie folosite pentru a transfera datele. O alternativ ar fi s reducem numrul de linii ntr-un aa fel nct s nu scdem funcionalitatea. S presupunem c lucrm doar cu 3 linii, i c o linie este folosit pentru trimiterea de date, alta pentru recepie i a treia este folosit ca o linie de referin att pentru partea de intrare ct i pentru partea de ieire. Pentru ca aceasta s funcioneze, trebuie s stabilim regulile de schimb ale datelor. Aceste reguli sunt numite protocol. Protocolul este de aceea definit n avans ca s nu fie nici o nenelegere ntre prile ce comunic una cu alta. Pentru c avem linii separate de recepie i de transmitere, este posibil s recepionm i s transmitem date (informaii) n acelai timp. Blocul aa numit full-duplex mode ce permite acest

mod de comunicare este numit blocul de comunicare serial. Spre deosebire de transmisia paralel, datele sunt mutate aici bit cu bit, sau ntr-o serie de bii, de unde vine i numele de comunicaie serial. Dup recepia de date trebuie s le citim din locaia de transmisie i s le nmagazinm n memorie n mod opus transmiterii unde procesul este invers. Datele circul din memorie prin bus ctre locaia de trimitere, i de acolo ctre unitatea de recepie conform protocolului. 1.1.6 Unitatea Timer Pentru a putea fi folosit n industrie mai are nevoie de cteva blocuri. Unul din acestea este blocul timer care este important, pentru c ne d informaia de timp, durat, protocol etc., [30]. Unitatea de baz a timer-ului este un contor liber (free-run) care este de fapt un registru a crui valoare numeric crete cu unu la intervale egale, aa nct lundu-i valoarea dup intervalele T1 i T2 i pe baza diferenei lor s putem determina ct timp a trecut. Acesta este o parte foarte important a microcontrolerului al crui control cere cea mai mare parte a timpului nostru. 1.1.7 Watchdog-ul nc un aspect foarte important este funcionarea fr defecte a microcontrolerului n timpul funcionrii. S presupunem c urmare a unei anumite interferene (ce adesea se ntmpl n industrie) microcontrolerul nostru se oprete din executarea programului, sau i mai ru, ncepe s funcioneze incorect. Bineneles, cnd aceasta se ntmpl cu un calculator, l resetm pur i simplu i va continua s lucreze. Totui, nu exist buton de resetare pe care s-l apsm n cazul microcontrolerului care s rezolve astfel problema. Pentru a depi acest obstacol, este nevoie de a introduce nc un bloc numit watchdog cinele de paz. Acest bloc este de fapt un alt contor liber (free-run) unde programul trebuie s scrie un zero ori de cte ori se execut corect. n caz c programul se "nepenete", nu se va mai scrie zero, iar contorul se va reseta singur la atingerea valorii sale maxime. Aceasta va duce la rularea programului din nou, i corect de aceast dat pe toat durata. Acesta este un element important al fiecrui program ce trebuie s fie fiabil fr supravegherea omului. 1.1.8 Convertorul Analog-Digital Pentru c semnalele periferice sunt substanial diferite de cele pe care le poate nelege microcontrolerul (zero i unu), ele trebuie convertite ntr-un mod care s fie neles de microcontroler. Aceast sarcin este ndeplinit de un bloc pentru conversia analog-digital sau de un convertor AD. Acest bloc este responsabil pentru convertirea unei informaii despre o anumit valoare analogic ntr-un numr binar i pentru a o urmri pe tot parcursul la un bloc CPU aa ca blocul CPU s o poat procesa. Pentru o aplicaie real, un microcontroler singur nu este de ajuns. n afar de microcontroler, avem nevoie de un program pe care s-l execute, i alte cteva elemente ce constituie o interfa logic ctre elementele de stabilizare. 1.1.9 Analiza sistemelor microprogramabile Firmele cele mai cunoscute care produc microcontrolere sunt: SIEMENS i PHILIPS n Europa; INTEL, MOTOROLA, TEXAS INSTRUMENTS, MICROCHIP i CYPRESS n SUA; HITACHI i MITSUBISHI n Japonia. n continuare se prezint cteva familiile de microcontrolere care sunt cele mai reprezentative, punndu-se accent pe familia de microcontrolere de tip Cypress deoarece acest tip de microcontrolere a fost utilizat la

modernizarea circuitelor de comand i protecie ale echipamentelor electrice pentru atmosfere potenial explozive. 80C196 (Intel MCS-96) Este un microcontroler pe 16 bii fcnd parte din generaia treia de microcontrolere a firmei Intel. Destinat iniial unor aplicaii din industria de automobile, are o arhitectur von Neumann, cu un spaiu de adresare de 64KBytes, o unitate de intrri/ieiri numerice de mare vitez (destinat iniial controlului injeciei la un motor cu ardere intern), ieiri PWM, convertor analog numeric, timer watchdog. Exist multe variante, ultimele cronologic aprute, fiind mult superioare variantei iniiale. Exist i o dezvoltare recent sub forma familiei MCS-296 (80C296) 80C186, 80C188 (Intel, AMD, .a.) Derivate din clasicele 8086/88 prin includerea pe acelai microcircuit a 2 canale DMA, 2 numrtoare/timere, un sistem de ntreruperi i un controler pentru DRAM. Marele avantaj al acestor cvasi(aproape) microcontrolere (ele nu au memorie integrat!) este legat de utilizarea ca mediu de dezvoltare a unor platforme de calcul tip IBM-PC, compatibile 80x86, cu tot softul aferent. 68HC05 (Freescale - www.freescale.com, ex Motorola ) Un microcontroler de 8 bii derivat din microprocesorul M6800 i care prezint multe asemnri cu un alt microprocesor rspndit, la timpul su, 6502. Are un spaiu de memorie unic (64Kbytes) n care sunt plasate i registrele perifericelor (I/O, timere) cu un indicator de stiv (SP) hard pe 5bii (stiv de maxim 32 octei !). Exist variante cu memorie EEPROM, CAN, port serial, etc. Este unul din cele mai rspndite microcontrolere (comparabil cu 8051). Varianta evoluat a acestei familii este seria 68HC08 bazat pe o nou unitate central de 8 bii numit CPU08, cu cea mai recent dezvoltare sub forma seriei 68HCS08 destinat n mod special unor aplicaii din industria automobilului. 68HC11, 68HC12, 68HC16 (Freescale) 68HC11 a fost unul din cele mai puternice microcontrolere pe 8 bii, foarte rspndit n ciuda faptului c Motorola a fost un timp singurul productor. Are un set de instruciuni asemntor cu alte produse ale firmei (6801, 6805, 6809). Are un spaiu de adrese unic de 64K. Nenumrate variante ca resurse: EEPROM, OTP, CAN, PWM, etc. Prezint ca particularitate existena unui program de ncrcare rezident (bootstrap loader n ROM intern) cu care, la reset, un segment din memoria RAM extern poate fi ncrcat cu cod program prin intermediul portului serial. Variantele evoluate sunt de fapt microcontrolere de 16 bii: un "super 68HC11", numit 68HC12 bazat pe o nou unitate central numit CPU12, care reprezint extensia la 16 bii a arhitecturii HC11 un 68HC16, mai puin rspndit, bazat pe o unitate central numit CPU16 PIC (Microchip- www.microchip.com ) Primul microcontroler din aceast familie (PIC1650) a aprut acum mai bine de 20 de ani pe vremea cnd firma era proprietatea General Instruments. Este o familie de microcontrolere care, n ultimii ani, a cunoscut o dezvoltare exploziv. Sunt disponibile actualmente sub forma a 6 serii: PIC10, PIC12, PIC14, PIC16, PIC17 i PIC18. In seriile respective exist variante cu memorie de program de tip OTP(C) sau FLASH (F). Au fost primele microcontrolere de 8 bii cu arhitectur RISC: PIC16C5x avea un set de doar 33 instruciuni (Intel 8048 avea 90). Arhitectura este de tip Harvard i, ca o particularitate, dimensiunea cuvntului pentru program este de 12, 14 sau 16 bii, cuvntul de date fiind tot de 8 bii. Exist foarte multe variante pentru cele ase serii, unele din ele fiind caracterizate printr-un numr mic de conexiuni exterioare (pini) i n consecin dimensiuni mici, consum foarte mic, ideea de baz fiind costul redus. Cronologic, ultimul produs al firmei Microchip este seria dsPIC30F, de fapt un procesor numeric de semnal, de 16 bii, cu o periferie specific optimizat pentru controlul acionrilor electrice (motoare electrice). Firma Ubicom (ex Scenix, www.ubicom.com) produce nite clone ale familiei PIC, mult mai rapide dect originalele. Modulele Basic Stamp ale firmei Parallax (www.parallax.com) sunt bazate si pe astfel de microcontrolere (sunt foarte utilizate, i nu numai de profesioniti n robotic).

AVR (Atmel- www.atmel.com ) Un concurent puternic al seriei PIC este familia numit AVR, a firmei ATMEL, familie aprut n ultimii ani, care ofer variante de microcontrolere oarecum asemntoare ca resurse cu familia PIC, la performane similare sau mai bune. Sunt bazate pe o arhitectur diferit, dar unitatea central este tot de tip RISC, cu cuvntul de date de 8 bii. La fel ca la PIC dimensiunea cuvntului de program este mai mare, fiind de 16 bii. Exist cel puin 3 sub familii mari, n ordinea complexitii resurselor, acestea fiind: AT Tiny, AT90 i ATMega. COP4(00) i COP8(00) (NS -National Semiconductors - www.national.com ) COP4 este un microcontroler pe 4 bii, categorie de microcontrolere care, n general, departe de a fi nvechite, ocup un segment relativ important al pieii. Printre caracteristici: pn la 2K ROM local, 32x4 pn la 160x4 RAM local, Microwire, numrtoare/timere, tensiune de alimentare 2.3-6V, numr mic de pini. COP8 reprezint o serie de microcontrolere pe 8 bii, versatil, cu pre sczut, disponibil n multe variante. Arhitectura este similar lui 8051, dar setul de instruciuni este similar lui Z80. Z8 (Zilog, - www.zilog.com ) Un derivat al microprocesorului Z80, reprezint un compozit al mai multor arhitecturi diferite. Nu este compatibil cu setul de instruciuni i nici cu perifericele standard Z80. Are trei spaii de adrese: program, date i un masiv de registre. Resurse locale tipice: UART, timere, DMA, sistem de ntreruperi cu pn la 37 de surse. Exist o variant cu un interpreter Tiny Basic n ROM-ul local (analog 8052AH Basic de la Intel) precum i o variant cu resurse mbuntite numit Super-8. Z180(Zilog), Rabbit ( Rabbit Semiconductors- www.rabbitsemiconductor.com ) Z180 -ul firmei Zilog are un CPU similar cu Z80 dar mbuntit, cu resurse locale cum ar fi: management de memorie (memorie paginat de maxim 1MB), USART (numit SIO), 2 canale DMA, timere, sistem de ntreruperi, eventual PIO. Instruciuni suplimentare fa de setul standard Z80, printre care i nmulirea. Diversele sale variante nu includ memorie local. Rabbit 2000 sau 3000 este un microcontroler bazat pe un nucleu de Z180, deosebit de versatil ca resurse periferice disponibile i foarte uor de integrat n aplicaii. Sunt disponibile module realizate pe baza acestui microcontroler, module care adaug i memorie de tip ROM FLASH i RAM. Utilizarea unui mediu de programare foarte productiv numit Dynamic C precum i a facilitailor de programare i depanare In-System au fcut ca acest microcontroler sa cunoasc o rspndire destul de larga. TMS370 (Texas Instruments- www.ti.com ) Microcontrolerul standard pe 8 bii al firmei TI realizat n multe variante (de ordinul zecilor), prezint unele asemnri cu 8051 (memoria de date local, stiva, modurile de adresare). O varietate extrem de mare a resurselor locale. 80386EX (Intel) Un 80386 destinat aplicaiilor de tip controler. Resurse locale: I/O seriale, timere/numrtoare, DMA, optimizarea consumului, controler de ntreruperi, controler pentru RAM dinamic. Nu au memorie local. Marele avantaj al unui astfel de microcontroler este c se poate utiliza ca platform de dezvoltare un sistem de tip IBM PC mpreun cu tot mediul de programare aferent. MSP430 (Texas Instruments) Firma TI ofer i o familie de microcontrolere de 16 bii cu arhitectura RISC, cu posibilitatea controlului compromisului vitez de calcul/consum propriu, destinat aplicaiilor portabile (i nu numai), denumit MSP 430. Cu un spaiu de adresare de 64KBytes, are diverse variante de realizare a memoriei interne de program (OTP, FLASH), resurse diverse (printre care i o interfaa pentru un sistem de afiare LCD). CYPRESS (Cypress Semiconductors www.cypress.com ). Proiectarea unor produse embedded, utile si ieftine poate fi o provocare chiar si pentru cei mai experimentai ingineri. In prezent, proiectele embedded necesita optimizarea numrului de componente, a dimensiunii fizice, a consumului de putere sau a costului, sau a tuturor celor de mai sus. Produsele embedded complet optimizate folosesc foarte puine resurse care se irosesc. Aceasta foreaz adesea proiectanii sa aleag componente mai puin costisitoare care cred ei ca vor funciona acolo unde componente mai scumpe tiu ca vor funciona. M refer la aceasta situaie numind-o "Constrngerea dezvoltrii embedded".

Constrngerea dezvoltrii embedded este acel sentiment ngrozitor care apare cnd ii dai seama ca partea pe care ai pus bazele proiectului tu se dovedete a fi insuficienta. Aceasta se ntmpla de obicei in mijlocul unui proiect si provine din micorarea anumitor resurse importante - determinnd oprirea procesului de dezvoltare. Deoarece microcontrolerul pe care operatorul l utilizeaz include o varietate de resurse incluse intr-un chip, exista din abundenta oportuniti pentru a experimenta constrngerea. Probleme comune MCU cnd se folosesc uniti de microcontroler tradiionale, exista trei tipuri majore de resurse care, in mod obinuit, sunt insuficiente: spaiul memoriei program; conexiunile I/O; setul periferic disponibil. In continuare sunt prezentate cteva tehnici comune de proiectare care ajuta la oprirea constrngerii nainte de a ncepe. Cnd se proiecteaz un sistem mbuntit, codul ales pare totdeauna ca umple tot spaiul disponibil si apoi el creste mai mult. Daca este utilizat un nivel mai ridicat al limbajului de proiectare, cum ar fi C, se poate rezolva problema spaiului codului prin cumprarea unui compilator mai eficient. Preul unui compilator este in mod obinuit legat de abilitatea sa de a genera cod care este eficient att in ceea ce privete spaiul cat si in ceea ce privete timpul de funcionare. In timp ce costul uneltei de dezvoltare este ntotdeauna un punct important, o doza suplimentara de eficienta reduce costul, daca aceasta permite finalizarea proiectului fr optimizri suplimentare pe aplicaia conceput. De asemenea, se poate optimiza software-ul pentru a reduce spaiul codului - fie prin codificarea in limbaj de asamblare, fie in C. Totui, acesta este un proces care necesita timp care produce rspunsuri diminuate cu cat se lucreaz mai mult la el. O alta cale este utilizarea de intrri/ieiri necesare realizrii a tot ceea ce necesita proiectul. In aceasta situaie, se pot multiplexa funciile pe acelai pin (folosirea aceluiai pin att ca intrare cat si ca ieire) sau chiar se poate folosi ieirea pentru doua funcii diferite (implementnd att starea sus cat si starea jos a pinului). Setul periferic disponibil al unui anumit microcontroler este o alta caracteristica ce cauzeaz probleme pentru un proiectant. La jumtatea drumului proiectului, se descoper c mai este nevoie de un periferic care nu a fost luat n considerare la nceputul proiectului. Adesea se poate substitui implementarea unui software al unui periferic hardware care lipsete. Un exemplu in acest sens este o rutina software pentru a face comunicaie asincrona pe un port pin fr periferic hardware. Aceasta poate fi o buna soluie atta timp cat exist suficient spaiu CPU disponibil pentru a manevra volumul de lucru suplimentar. Adesea, proiectanii experimenteaz "Constrngerea dezvoltrii embedded" la proiecte reuite ale lor. In ciuda tehnicilor descrise mai nainte, "Constrngerea" primejduiete cutrile de a finaliza un proiect la timp si cu un anumit buget. Cauze fundamentale ale "Constrngerii" sunt lipsa flexibilitii si volumul total de microcontrolere ce se afla pe piaa. Cnd este selectat un microcontroler, utilizatorul trebuie s caute prin grmada de informaii pana gsete setul complet de caracteristici de care are nevoie pentru proiectul su. De cele mai multe ori, cerinele si caracteristicile sistemului se modifica pe la jumtatea drumului fiind necesar o re-configurare a resurselor sau de a modifica microcontrolerul la jumtatea procesului de proiectare. Cele mai multe MCU nu furnizeaz o cale de upgradare clara pentru a gsi un nou dispozitiv atunci cnd cel curent nu mai este util pentru aplicaia dorit. Deoarece exista att de multe microcontrolere disponibile (si caracteristicile lor variaz att de mult), gsirea piesei upgradate care are tocmai resursele necesare crescute este extrem de rara. De aceea, chiar cea mai mica modificare in mijlocul ciclului de proiectare poate conduce la eecuri majore. Pentru a rezolva aceasta problema si a uura "Constrngerea", Cypress MicroSystems, a dezvoltat o linie de sisteme semnal mixat care se caracterizeaz prin controler pe placa. Aceste dispozitive PSoC permit personalizarea setului periferic in aa fel nct sa se adapteze cel mai bine la aplicaia dorit - in orice moment pe durata procesului de dezvoltare. Fiecare parte

conine blocuri de circuite analogice si blocuri de circuite digitale care pot fi configurate in perifericele care se potrivesc cel mai bine aplicaiei. n cazul n care circuitele de comand i protecie, spre exemplu, necesit o modificare n setul de caracteristici al sistemului se poate modifica simplu configuraia iniial fr a mai fi nevoie de alegerea unei noi piese. Blocurile analogice si digitale incorporate sunt folosite pentru a crea periferice pe aceste dispozitive. Blocurile PSoC digitale pot implementa o varietate de funcii microcontroler standard, cum ar fi timere, PWMe (Pulse Width Modulators) si canale de comunicaie seriala. Ele pot, de asemenea, sa implementeze funcii care nu sunt in mod normal disponibile in hardware pe microcontrolere cum ar fi PRS (Pseudo Random Sequence generators) si CRC (Cyclical Redundancy Checkers). Fiecare din blocurile digitale servete ca o resursa de 8 bii, nsemnnd ca se poate face un timer de 8 bii de la un bloc digital. Blocurile digitale pot fi, de asemenea, instruite mpreuna daca este nevoie de limi bit mai mari - fcnd un PWM de 16 bii din doua blocuri digitale ce lucreaz mpreuna. Pe de alta parte, blocurile analogice ale acestei noi arhitecturi sunt construite in jurul amplificatoarelor operaionale. Trei tipuri de blocuri analogice suporta o larga varietate de funcii. Unul din aceste blocuri analogice are mai multe multiplexoare analogice care se pot seta pentru a controla topologia caii de rspuns si o matrice rezistor programabil de precizie. Celelalte doua tipuri de blocuri analogice sunt, de asemenea, construite in jurul amplificatoarelor operaionale, dar au reele de condensatoare pentru a fixa caracteristicile blocului. Se pot folosi blocurile analogice singure pentru a crea filtre si stadii de amplificare, sau mpreuna cu blocurile digitale pentru a crea funcii cum ar fi convertoare A/D si convertoare D/A. Setul periferic este ales de ctre utilizator, aa ca nu trebuie recurs la a face periferice software care consuma din spaiul codului si reduc performanta. Noul dispozitiv se caracterizeaz, de asemenea, prin resurse generoase de interconectare. Este posibil dirija att a semnalelor analogice cat si semnalelor digitale intre diferite si variate blocuri funcionale, crend astfel arhitectura sistemului dorita chiar pe dispozitiv. De aceea, un semnal analog ce vine intr-un pin de la un senzor este condus prin stadii succesive de amplificare, filtrare si conversie A/D si introdus in CPU pentru procesare. Nivelul crescut de flexibilitate a interconectrii este o alta caracteristica a acestei arhitecturi, care va permite sa lucrai pe toate problemele de I/O pe care le putei ntmpina. Unelte de dezvoltare Alegerea siliciului este influenata in mare msura de disponibilitatea uneltelor de nalta calitate. Cypress MicroSystems a creat, de asemenea, un IDE (Integrated Development Environment) pentru dezvoltare cu aceste produse. Numit "PsoC Designer", programul va permite configurarea resursele analogice si digitale de la o interfaa grafica utilizator. Utilizatorul creeaz setul periferic care se potrivete cel mai bine aplicaiei si software-ul genereaz automat un set de fiiere care seteaz biii registrului corespunztor pentru a implementa alegerile fcute. IDE-ul creeaz, de asemenea, interfee de programare pentru perifericele selectate pentru a iui dezvoltarea software-lui. 1.2 Arhitectur general a microcontrolerului Cypress Diagrama PSoC ilustrat n figura 2, ilustreaz arhitectura nivelului nalt al familiei de dispozitive PSoC. Fiecare bloc al diagramei este prezentat pe larg n paragrafele: PsoC Core, Sistemul Digital, Sistemul Analogic i Resursele sistem. Toate aceste paragrafe reprezint reeaua de comunicaii a sistemului magistral (System bus).

Fig.2 Arhitectura general a microcontrolerului din familia Cypress 1.2.1 PSoC Core PSoC Core este un mediu de programare puternic care suport un set de instruciuni bogat. El compenseaz SRAM pentru stocarea datelor, un controller de ntreruperi pentru executarea simpl a noilor adrese, un temporizator sleep i watchdog precum i multiple surse de timp (clock) care include PLL ,IMO (oscilatorul principal intern),ILO (oscilatorul intern cu viteza redusa si ECO (cristalul oscilator extern de 32.768 kHz),[72]. Toate aceste temporizatoare mpreuna cu driverele de temporizare programabile(ca resursa sistem),asigura o flexibilitate in integrarea aproape a tuturor necesitailor temporale in dispozitivul PSoC, [67]. Procesorul,denumit M8C este un procesor puternic cu viteza de peste 24MHz.Are o arhitectura 4xMIPS pe 8 biti Harvard. Fiind incorporata si memoria SROM si memoria Flash, acesta asigura si permite o programare flexibila. PSoC GIPO permite conectarea la procesor a diferitelor resurse digitale si analogice. Fiecare pin al dispozitivului trebuie selectat din 8 opiuni permind astfel o flexibilitate in interfaa cu exteriorul. De asemenea fiecare pin este capabil sa genereze ntreruperi la nivel nalt, jos si schimbri de la ultima citire, [64]. 1.2.2 Sistemul Digital Sistemul digital este compus din linii digitale adunate in blocuri digitale(array) si interconectri Global, Array(matrice) si linii digitale (GDI,ADI si RDI).Blocurile digitale au cate 4 linii ,aceste blocuri variind de la un dispozitiv PSoC la altul. Aceasta permite alegerea optima de ctre sistem a resurselor pentru diverse aplicaii. Blocurile digitale pot fi conectate la orice GIPO prin o serie de magistrale globale care pot dirija orice semnal ctre orice pin. De asemenea magistralele permit multiplexarea semnalelor si efectuarea operaiilor logice. Aceasta configuraie permite proiectarea controllerelor periferice fixe, [38].

1.2.3 Sistemul Analogic Sistemul analogic este compus din coloane analogice adunate ntr-o matrice, referine analogice, multiplexarea analogic a intrrilor si dispozitive analogice. Blocul sistem analog este alctuit din mai mult de 4 coloane cu peste 12 blocuri analogice, depinznd de caracteristicile dispozitivului PSoC. Fiecare bloc cuprinde un circuit opamp, care permite crearea unui flux complex de semnale. Fiecare coloana analogic conine: CT bloc de timp continuu(continous Time) tip B(ACB); un bloc de condensatoare variabile Tip C(ASC); un bloc de condensatoare variabile tip D(ASD); Coloanele analogice din procesoarele PSoC CY8C21x24,CY8C21x23,CY7C603xx si CYWUSB6953 conin fiecare cate un bloc CT(ACE) de tip E si un bloc SC(ASE) de tip E. 1.2.4 Resursele sistem Resursele sistem permit capabiliti adiionale ale PSoC care depind de caracteristicile dispozitivului PSoC. Aceste resurse includ: ceas digital care creste flexbilitatea matricilor mixte de semnale ale PSoc; peste 4 MAC-uri care permit multiplicarea rapida cu 8 biti sau multiplicarea cu 8 biti cu 32 acumulatori. Peste doua coprocesoare pentru aplicatii de pocesare a semnalelor digitale. I2C functii cu I2C slave on master. Un acumlator intern care furnizeaza o valoare absouta de 1.3 pentru diferitele subsisteme ale PSoC. SPM care genereaza operarea normala cu tensiuni a acumulatorului intern. MUX analog care permite fiecarui pin I/O o conectare la magistrala interna analogica comuna. 5 iesiri fullsped (2Mb/sec)USB. Diferite sisteme de reset suportate de M8C. 1.2.5 Caracteristicile dispozitivului PSoC Exista o mulime de cipuri in familia PSoC Mixed Signal Array, dar difereniind grupurile de cipuri PSoC, acestea se disting dup numrul de linii digitale si coloanele analogice de care dispun. Sistemul digital poate avea 4, 2 sau o linie digitala. Sistemul analogic poate avea 4, 2 sau o coloana analogic. Fiecare dispozitiv PSoC are o combinaie unica de linii digitale si coloane analogice. In tabelul 3, sunt ilustrate resursele sistem disponibile fiecrui grup de dispozitive PSoC. CY8C21x34, CY7C603xx si CYWUSB6952 sunt singurele dispozitive PSoC care au I/O multiplexate analogic, iar CY8C24x94 si CY7C64215 au resurse sistem USB. Pentru realizarea obiectivului cercetrii s-a utilizat familia de microcontrolere cu performanele cele mai ridicate i anume CY8C29466.Tabelul 3. Resursele specifice disponibile pentru cele mai reprezentative dispozitive PSoC Intrri Digitale Magistrale Digitale Blocuri digitale SRAM Flash 32KB 16KB Dispozitiv PSoC Blocuri Analogice 12 12 Intrri analogice 12 12 Ieiri analogice 4 4

CY8C29X66 CY8C27X43

64 44

4 2

16 8

2KB 256 biti

CY8C24X94 CY8C24X23 CY8C24X13 CY8C21X34 CY8C21X23 CY8C20X34

50 24 16 28 16 28

1 1 1 1 1 0

4 4 4 4 4 0

48 12 8 28 8 28

2 2 1 0 0 0

6 6 3 4 4 3

1KB 256 biti 256 biti 512biti 256 biti 512biti

16KB 4KB 4KB 8KB 4KB 8KB

Familia PSoC CY8C29x66 poate avea pana la 6 porturi IO care se leag de interconectrii analogi si digitali globali, realiznd accesul la 16 blocuri digitale si 12 blocuri analoage. Inima PSoC este un motor puternic care sprijin o setare aparenta bogata. Miezul include un CPU, o memorie, ceasuri si un GPIO configurabil (Scop general IO). Miezul CPU M8C este un procesor puternic cu viteze de pana la 12 MHz, care realizeaz un microprocesor cu 2 MIPS de 8 bii Harvard. CPU utilizeaz un verificator ntrerupt cu 25 de vectori, pentru a simplifica programarea evenimentelor din timp real. Executarea programului este temporizata si protejata folosind temporizatorii de somn si veghere (WDT). Memoria include 32 KB de Flash pentru stocarea programului si 2 KB de SRAM pentru stocarea informaiilor. Flashul programului utilizeaz 4 nivele de protecie pe blocuri de 64 bii, permind protecia de software IP,[80]. Dispozitivul PSoC cuprinde generatori de ceas interni, incluznd un IMO de 24 MHz (oscilatori principal intern) pana la 4% peste temperatura si voltaj. O putere mai mica ILO de 32 kHz este realizata pentru temporizatorul de somn si WDT. Daca se dorete o acuratee cat mai mare, este disponibil ECO (oscilatorul extern de 32.768 kHz) pentru a fi utilizat ca un ceas de timp real (RTC) si poate genera opional un sistem de 24 MHz utiliznd PLL. Ceasurile, mpreuna cu divizorii de ceas realizeaz flexibilitatea de a integra aproape orice cerina de timp in dispozitivul PSoC. PSoC GPIO realizeaz legtura cu CPU, resurse digitale si analoage ale dispozitivului. Fiecare pin are capacitatea de a genera o ntrerupere a sistemului la un nivel ridicat si se poate schimba de la ultima citire, acestor pini putndu-se selectata diferite opiuni de lucru care permit o flexibilitate mare in realizarea interfeei externe. Sistemul digital este alctuit din 16 blocuri digitale PSoC, iar arhitectura acestuia este prezentat n figura 3. Fiecare bloc este o resursa de 8 bii care poate fi utilizata singura sau in combinaie cu alte blocuri pentru a forma 8, 16, 24 si 32 bii periferici, care sunt numii referinele modulare ale utilizatorului. Configuraiile periferice digitale cuprind urmtoarele: PMW (intre 8 si 32 bii). PMW cu banda moarta (intre 8 si 32 bii). Contoare (intre 8 si 32 bii). Timer (regulator) (intre 8 si 32 biti). UART de 8 bii cu paritate selectabila (pana la 4). SPI Master si Slave (pana la 4 fiecare). I2C Slave si Multi-master (1 disponibil ca o resursa a sistemului). Generator/Verificator de redundanta ciclica (intre 8 si 32 biti). IrDA (pana la 4). Pseudo Generatori secveniali (intre 8 si 32 biti).

Ceasurile Digitale Ctre Magistrale Ctre Sistemul Analogic De la Inima PSoC SISTEMUL DIGITAL Aria Blocurilor Digitale

Interconectare Digital Global

Fig.3 Sistemul digital al microcontrolerului Cypress Blocurile digitale pot fi conectate la orice GPIO printr-o serie de bus-uri globale care pot conduce orice semnal la orice pin. Bus-urile permit de asemenea realizarea operaiilor logice clasice. Sistemul analogic, prezentat n figura 4, este alctuit din 12 blocuri configurabile, fiecare cuprinznd un circuit care permite crearea unor fluxuri de semnal analogic complex. Perifericele analoage sunt foarte flexibile si pot fi realizate sa sprijine cerinele aplicaiei specifice. Unele dintre funciile analoage PSoC sunt prezentate in continuare. Convertor Analog - Digital (pana la 4, cu rezoluia intre 6 si 14 bii, selectabili ca Incremental, Delta Sigma si SAR). Filtre (2, 4, 6 sau 8 pol band-pass, low-pass si notch). Amplificatori (pana la 4, cu spor selectabil pana la 48x). Amplificatori de instrumente (pana la 2 cu spor selectabil pana la 93x). Comparatori (pana la 4, cu 16 praguri selectabile). DAC (pana la 4, cu rezoluie intre 6 si 9 biti).

Aria Configuraiei de Intrare

Fig.4 Sistemul analogic al microcontrolerului Cypress DAC multiplicator (pana la 4, cu rezolutie intre 6 si 9 biti). Driveri de iesire a informatiei curente (4 de 40mA ca resursa a miezului PSoC). Referinta de 1,3V (ca resursa a sistemului). Dialer DTMF. Modulatori. Corelatori. Detectori de varf. Orice alte topologii posibile. Blocurile analogice sunt prevzute in coloane de 3 care cuprind un bloc CT (timp continuu) si 2 blocuri SC (condensator de schimbare). 1.2.6 Resursele sistemului adiional Resursele sistemului, unele dintre ele au fost prezentate anterior, au o capacitate suplimentare utila pentru a completa sistemele. Resursele adiionale includ un multiplicator, decimator, o pompa de schimbare, detecie de voltaj sczut si puterea de resetare. In continuare sunt prezentate meritele fiecrei resurse de sistem:

Divizorii ceasului digital realizeaz trei frecvente de ceas pentru a fi utilizate in aplicaii. Ceasurile pot fi utilizate att in sistem analogic cat si digital. Pot fi generate ceasuri suplimentare folosind blocurile digitale PSoC ca divizori de ceas. Doi MAC furnizeaz un multiplicator de 8 bii cu acumulator de 32 bii pentru a ajuta la filtrele generale si la cele digitale. Decimatorul furnizeaz un filtru de hard pentru semnalul digital, procesnd aplicaii inclusiv crearea de Delta Sigma ADC. Module I2C furnizeaz comunicare de 100 si 400 kHz intre fire. Modurile slave, master si multimaster sunt toate sprijinite. ntreruperi ale detectrii voltajului slab (LVD) poate semnala aplicaii de nivele sczute ale voltajului, in timp ce circuitul POR elimina nevoia de un supervizor de sistem. O referina interna de 1,3 voli furnizeaz o referina absoluta pentru un sistem analogic, inclusiv ADC si DAC. 1.3 SOFTWARE-UL DE PROGRAMARE A MICROCONTROLERE-LOR DIN FAMILIA CYPRESS Se va evidenia in continuare flexibilitatea cu care se poate programa un microcontroler de tip Cypress, numit prescurtat PsoC (Programmable System on Chip) Sistem Programabil pe Chip. Programarea microcontrolerului se realizeaz prin intermediul software-ului PSoC Designer 5.0 (Integrated Development Environment for Cypress MicroSystems' ProgrammableSystem-on-Chip technology) i este utilizat ca interfa in vederea configurrii i programrii din punct de vedere al sistemului analogic, respectiv al sistemului digital al PSoC. Resursele celor dou tipuri de sisteme integrat in microcontroler sunt: Sistemul Digital: Blocuri PSoC digitale; Magistrale globale intrare/ieire; Magistrale de date intrare/ieire; Magistrale de interconectare; Sistemul Analogic: Blocuri PSoC analogice; Surse configurabile de clock; Intrri configurabile; Ieiri configurabile; n figura 5 este prezentat interfaa grafic a softwar-ului PSoC Designer care conine urmtoarele subsisteme: Editorul de dispozitive Editorul de aplicaii Debugger Editorul de dispozitive (device editor) este subsistemul de unde utilizatorul poate alege dispozitivele de care are nevoie n derularea proiectului. Editorul de aplicaii este subsistemul de unde utilizatorul poate accesa interfaa de scriere n limbaj C sau asamblare. Debugger este subsistemul de unde utilizatorul compileaz datele scrise. n funcie de complexitatea aplicaiei din biblioteca microcontrolerului se pot alege o serie de module analogice/digitale care dac sunt corect interconectate se comport precum componentele electronice clasice. In momentul cnd se dorete nceperea unei noi aplicaii iniial se va deschide interfaa grafic a editorului de dispozitive (vezi fig.5). Acesta interfa cuprinde urmtoarele subsisteme: Resursele Globale, Parametrii Modului Ales, Setarea Pinilor

Resursele Globale permit utilizatorului sa seteze principalii parametrii ai plcii de dezvoltare cu ar fi: Power Setting [Vcc/SysClock Freq]: Acest parametru permite utilizatorului s selecteze frecvena de clock ct i tensiunea nominal cu care se opereaz. n funcie de frecvena aleas se calibreaz Internal Main Oscillator (IMO). CPU_Clock: Aceast seciune permite utilizatorului s aleag viteze de clock predefinite ntre 93,75kHz i 24MHz. Aceste seteri sunt direct proporionale cu setrile SysClock. Se poate asigura o mai bun stabilite prin utilizarea unui oscilator extern de 32 kHz. 32K_Select: Aceasta setare permite utilizatorului selecia oscilatorului intern de 32kHz sau a unui oscilator extern. Sleep_Timer: Acest parametru odat selectat permite setarea temporizrii cu care lucreaz placa de dezvoltare. Daca acest parametru este setat si daca procesorul nu este activ n momentul activrii acesta va lucra la frecvena specificata prin separarea parametrului Sleep Timer.Resurse Globale Setare Parametrii Modul

Definire Pini

Interconectare module

Microcontroler

Fig.5 Interfaa grafic de programare a software-lui PsoC Designer VC1 i VC2: Acestea sunt resurse variabile care prin setarea lor pot oferii o anumit frecven intern de clock care ulterior poate fi utilizat de ctre blocurile analogice sau digitale. VC3_Divider i VC3_Source: Acest sistem de clock este similar sistemelor VC1 i VC2. Principala diferen ntre resursele VC1, VC2 i VC3 este aceea c acesta din urm se poate schimba pentru una sau mai multe surse de clock i nu poate fi folosit ca i clock de intrare aa de flexibil precum VC1 i VC2. Nu poate fi utilizat ca intrare direct a PSoC, dar poate fi utilizat direct la o intrare digital a PSoC.

Fig. 6 Interfaa grafic a software-lui PsoC Designer de interconectare a dispozitivelor analogice i digitale SysClock_Source i SysClock*2 Disable: Acest parametru permite sistemului de 24 MHz sa fie selectat de la o surs interioar sau exterioar. Parametrul SysClock*2 Disable permite clockului intern de 48 MHz sa fie inactiv. Analog Power Acest parametru controleaz partea analogic a PSoC. Acest control se realizeaz n trei etape : 1. Analog Blocks Off, 2. Continuous Time Blocks ON/Switched Capacitor Blocks OFF, i 3. Continuous Time Blocks ON/Switched Capacitor Blocks ON. Pentru cele dou cazuri n care blocurile sunt active (ON) este posibil selectarea nivelelor de redus, mediu, nalt al buffer-erelor interne. Aceast seciune afecteaz consumul total al PSoC. Ref Mux: Acest parametru odat cu selectarea lui permite controlul potenialului resurselor analogice. Valoarea aleas va controla maximul tensiunii care se va putea aplica la intrarea unui circuit capacitiv, ct i a tensiunii de ieire a aceluiai circuit. Ambele valori de referin i tensiunea vrf la vrf pot fi selectate prin intermediul acestui parametru. AgndBypass: Existena unor mici perturbaii i zgomote la ieirea PSoC poate fi redus prin controlarea AgndBypass. Plaja de valori n care trebuie s fie cuprins capacitorul extern este 0,01F0,1F. Op-Amp Bias: Pentru majoritatea proiectelor acest parametru se las la valoarea Low. Setarea opiunii High ofer slew rate bun, ns o mai mic amplitudine a tensiunii. A_Buff_Power: Seteaz ieirea analogic a buffer-ului. High nseamn o tensiune mai stabil.

2. AUTOMATE PROGRAMABILE INDUSTRIALEUn automat programabil (AP, PLC - Programmable Logic Controller) este un echipament electronic nzestrat cu memorie programabil de ctre utilizator cu ajutorul unui limbaj specializat. Instruciunile compunnd funciile de automatizare (logic combinatoric i secvenial, calcul aritmetic, tratare date, reglare etc) sunt stocate intern. Prin intermediul modulelor de intrare i de ieire (logice, numerice sau analogice) se realizeaz funcii de comand, msurare i control a unor instalaii sau procese din mediul industrial. AP face deci apel n funcionarea sa la principiile logicii programate, fiind un echipament numeric realizat n jurul unuia sau mai multor microprocesoare (microcontrolere). Trstura distinct fa de alte dispozitive (echipamente) microprogramate ine de specificitatea sa pentru aplicaii industriale, constructorii realiznd elementele de interfaare astfel nct s se asigure o compatibilitate complet cu elementele de execuie i traductoarele industriale. AP au fost concepute iniial pentru a se substitui structurilor de comand cu contacte i relee din liniile automate de fabricaie, devenite din ce n ce mai complexe, voluminoase, cu rat mare de defectare, greu de depanat, cu consum important de energie i dezavantaj major - cu o structur funcional rigid. AP nltur aceste dezavantaje n mod spectaculos. Dac primele AP se constituiau ca sisteme numerice de comand cu intrri i ieiri binare, treptat interfeele s-au dezvoltat diversificat iar posibilitile de comand / conducere au devenit foarte complexe. Simultan cu dezvoltrile hardware, evoluia AP este marcat de integrarea lor fizic i procedural (software) n reele complexe de conducere ierarhizat, cu mai multe nivele decizionale i executive. 2. 1 STRUCTURI ASOCIATE AUTOMATELOR PROGRAMABILE Figura 7 red locul automatului programabil i conexiunile n cadrul unei instalaii electromecanice, fiind evideniate cele 2 mari subsisteme: partea operativ PO i partea de comand PC. Acionorii sunt elemente de execuie: motoare, electrovane, cilindri hidro sau pneumatici etc. Preacionorii sunt elemente fizice de interfaare a PC cu elemente de execuie. Pot fi: relee, contactoare, distribuitoare etc.

Fig. 7 Locul AP ntr-o instalaie industrial. Elementele fizice constituente i legtura lor cu exteriorul sunt puse n eviden i de fig. 3.2, 3.3. Unitatea central a unui automat programabil este organizat n jurul unui microprocesor de 8 sau 16 bii a crui putere de tratare i vitez determin complexitatea AP (a setului de instruciuni asociat) i viteza de scrutare

a programului. Unele echipamente sunt multiprocesor (multitasking), permind un volum important de prelucrri. Ex.: Automate Tlmcanique: microprocesoare I 8052, 8031, 8086, 80386, 80C52, ... Automate Merlin Grin (PB, April): microprocesoare I 8031, M 6809, 68000. ntr-un AP, n majoritatea cazurilor, UC (microprocesor, memoria sistem sau monitor) nu sunt accesibile utilizatorului. Memoria utilizator este destinat stocrii programelor de aplicaie. Are dou zone: - zona program (RAM - rar, REPROM, EEPROM); - zona date (RAM cu baterii pentru pstrare coninut). Capacitate: minim 1, 2 Kcuv. (Kword), pn la 256 Kword sau mai mult / 8 sau 16 bii. Pe multe automate, este modular, putndu-se extinde cu 8, 16 sau 32 Kcuv.Accesul la informaia memorat poate fi: - Explicit - utilizatorul preciznd nti adresa fizic i apoi coninutul care urmeaz s fie nscris sau citit. E PB O SI instruciune x. 100: C 30 O 010 MZ a nr. 1instruciune Se lucreaz deci la nivel de limbaj specific AP, metoda fiind depit. C 31 021 a nr. 2 - Implicit (transparent), adaptat limbajelor grafice. Utilizatorul introduce linii de programe sau reele, afectndu-le simboluri sau etichete. La compilare, UC interpreteaz datele i organizeaz spaiul memoriei. Ex. TSX 47; 47-20; TSX 80 (Tlmcanique); April 5000. Organizarea memoriei este de obicei particular pentru fiecare tip de AP. Majoritatea posed ns o zon de memorie pe bit i o zon de memorie pe cuvnt pentru utilizator. Adesea se adaug memorii pe bit sau cuvnt sistem, utilizate n comun (n anumite condiii) cu UC. La modelele evoluate, utilizatorul poate - printr-o procedur de configurare - s organizeze el nsui memoria.

Fig. 8 Organizarea fizic a unui AP Exemple: TSX 47 (Tlmcanique): - Capacitate 8,16 sau 32 Ko (modular) + memorie bii i cuvinte pe RAM on-board; - Memorie bii interni (256); - Memorie bii imagine I/E (256); - Memorie cuvinte interne (128); - Memorie cuvinte constante (128); - Memorie bii i cuvinte sistem (24 bii, 4 cuvinte); - Memorie bii i cuvinte asociate blocurilor de funcii. APRIL 5000 (Merlin Grin): - Capacitate memorie (extindere prin cartu adiional): - program 64 Kcuv. (160 Kcuv.); - date 48 Kcuv. (64 Kcuv. + 16Kcuv. / UC); - memorie bii imagine intrare ieire (I/E): 1000; - memorie bii interni: 4096; - memorie bii interni memorai: 2048; - memorie bii sistem i bii afectai GRAFCET;

- memorie cuvinte interne simple, dependent de configurare; - memorie cuvinte interne duble, dependent de configurare.

Fig. 9 Organizarea structural a unui AP 2.2 INTERFEELE AP Interfeele realizeaz - prin modulele I / E (intrri / ieiri) - adaptarea n nivel, punerea n form i izolarea galvanic a semnalelor. Modelele mai noi conin i uniti de conversie analog/numeric i numeric/analogic, de numrare rapid, achiziie numeric, poziionare, cuplare n reele etc, sub controlul microprocesorului local i al celui principal, prin ntreruperi . Module I / E numerice Intrri numerice - fig. 10 Nivele ale tensiunii de intrare: 24, 48 Vcc sau Vca; 220 Vca; curent de intrare 10 - 20 mA. Filtrul de intrare limiteaz frecvena semnalelor de intrare la max 20 - 50 Hz. Modulele de intrare numeric mai pot conine: - elemente de adaptare i protecie; - elemente de punere n form semnale (mbuntire fronturi prin triggerare); - elemente de vizualizare stri canale. Ieiri numerice sunt de 2 tipuri: - Dinamice (cu comutri prin contacte de releu) - fig. 3.5. Tensiuni compatibile: 24Vcc 220 Vca; Cureni: 2...3 A / 220 Vca. Timp de rspuns: 20 40 ms. Contactele la ieire pot fi i normal nchise. - Statice - fig. 3.6. Pentru sarcin n c.a. se utilizeaz triacuri iar n c.c se folosesc i ieiri pe tranzistor. Cureni:1 2 A; Tensiuni: 220 Vca.; Timp de rspuns:1 ms 20 ms. Puterea pentru acionori este furnizat de o surs exterioar. Unele ieiri numerice sunt prevzute cu o legtur invers de protecie, ca n exemplul din fig. 11 Intrri analogice - fig. 12 Sunt de dou tipuri: - intri detectoare de prag; - intrri pentru convertoare A/N. Se poate face n general reglajul domeniului, iar la unele modele este posibil liniarizarea unor semnale de la traductoare. Exist canale specializate, putndu-se, de exemplu, conecta sonde rezistive, termice. Ieiri analogice - fig. 13 Sunt definite dup gama de semnal (unificat de obicei): - [0 10] Vcc;

- [4 20] mA. Aceste module permit realizarea funciilor de reglare cnd elementele de execuie sunt sisteme de acionare reglabile sau alte instalaii cu referin continu. Adresare module Fiecare intrare i ieire posed un cod distinct. Se utilizeaz proceduri specifice pentru schimbul informaiilor ntre module I/E i imaginile memorie I/E, permind achiziia ciclic a intrrilor i actualizarea ieirilor. Codificarea explicit - la automate simple. Adresele sunt fixe, date de constructor printr-o tabel. Ex. Tlmcanique TSX 80. Codificare implicit - la automate modulare. Se definete prin poziia bitului n modul i a acestuia n rack (poziia geografic). Ex. 0, F - bitul F, modulul 0 (Tlmcanique TSX 47, TSX 47 - 20, TSX 47 - 30). Sau: 905 bitul 05, modulul 9. (Merlin Grin APRIL 5000). La acest tip de codificare, mutarea unei cartele I/E n rack conduce la schimbarea implicit a adreselor. Diferenierea intrare-ieire. Poate fi: - implicit, cnd UC face distincie ntre I i E pornind de la o codificare material a cartelei sau a modulului. Ex. PB 80, TSX 80. - explicit, cnd utilizatorul trebuie s completeze, printr-un simbol complementar, codul I/E. Ex. TSX47 I - intrare; I0,0 , I0,F; O - ieire; O7,4 APRIL 5000 % IX - intrare; % IX 100; % QX - ieire; % QX 904. 2.3 CICLUL DE FUNCIONARE TIP AL UNUI AP - ACHIZIIA INTRRILOR I ACTUALIZAREA IEIRILOR Ciclul de funcionare tip al unui AP se poate realiza prin dou moduri: - Implicit (transparent). UC controleaz direct, ciclic aceast funcie. Este varianta care se impune - fig. 3.10. La fiecare ciclu de scrutare, informaiile I i E sunt schimbate, global i simultan ntre modulele I/E i imaginile memorie corespunztoare. Luarea n considerare a schimbrii strii unei variabile de intrare nu este posibil n cursul unui ciclu de scrutare. Ex. TSX 47; 47-20; 47-30; PB 80; APRIL 5000.

Fig. 10 Canal de intrare numeric.

Fig. 11 Canal de ieire numeric cu releu.

Fig. 12 Canal de ieire numeric cu triac.

- Explicit. Achiziia intrrilor i actualizarea ieirilor depind de instruciuni plasate de utilizator n program. Comutrile se fac separat sau simultan, la parcurgerea instruciunilor respective. Ex. TSX 80. Instruciunea x [ ] actualizeaz I/E, utilizatorul punnd ntre paranteze codul (adresa) modulelor. Observaie: unele automate (evoluate) recunosc ambele tipuri de acces (ciclic i imediat). Ex. TSX 47-30: READBIT; WRITEBIT; APRIL 5000: IN; OUT. Ciclul de scrutare este dependent de configuraia AP:

Fig. 13 Ieire numeric cu reacie.

Fig. 14 Canale de intrri analogice.

Fig. 15 Structura tip a unui canal de ieire analogic. a. Automate monoprocesor (monoprelucrare, monofuncie) - fig. 17 Ciclul de scrutare este controlat n ntregime de un P i are cu durat de la cteva ms pn la 100 ms, dup mrimea programului. Supravegherea acestui ciclu se face printr-un sistem de tip watchdog ("cine de paz"). Dac durata lui depete o valoare fixat, un bit intern este activat (n general comutat), un contact - disponibil la riglet - comut i el, iar la unele automate se poate determina oprirea ciclului de scrutare. b. Automate multiprocesor (multifuncie) Structura din fig. 18 determin o funcionare tip multiprelucrare (multi-tasking), un task corespunznd tratrii unei funcii de automatizare bine determinat i specific. Periodicitatea executrii fiecrui task depinde de specificitatea sa. Ele sunt executate n paralel sub controlul procesorului principal (supervizor) n funcie de un ir de prioriti stabilite de constructor fig.19. Task-ul de baz se execut sistematic la fiecare ciclu de scrutare, corespunznd ciclului de scrutare de la AP monofuncie cu gestionarea I/E la nceput i sfrit de ciclu. n general aceste echipamente sunt multilimbaj: reele de contacte, GRAFCET, literal etc. Ele sunt echipate cu module I / E inteligente. Ex. TSX 67 - 87 Tlmcanique. Uneori este evident partajarea sarcinilor ntre echipamentul industrial (AP) i o extensie tip microcalculator cu rol de terminal inteligent pentru operator, ca n fig.20.

Fig. 16 Exemple de cicluri de scrutare. 2.4 AUTOMATE PROGRAMABILE N STRUCTURI IERARHIZATE Pe msura dezvoltrii structurilor de producie automatizate (maini asociate prin transfer, celule de producie, linii automate, ateliere i secii automatizate - informatizate), configuraia prii de comand (PC) a devenit mai complex. La fiecare main sau subansamblu de linie, se asociaz propria PC (AP), dispus n imediata apropiere pentru facilitarea interveniilor (punere n funciune, ntreinere etc). Dezvoltarea acestei configuraii creeaz premisele formrii sistemelor integrate de producie - fig. 3.15, 3.16. Aspectele care sunt importante pentru sistemele multiprocesor i reelele de AP sunt: Repartiia task-urilor procesor - interfa. n afara repartiiei "inteligenei" ntre procesoarele sistemului (P principal, P de reglare, P de comenzi specializate - de ex. pentru poziionare) care permite o evident decompoziie funcional ce amelioreaz performanele, se autorizeaz o punere n funciune progresiv i o urmrire (chiar depanare) mai comode; o alt problem care trebuie analizat la configurarea unei aplicaii este repartizarea task-urilor n raport cu interfaa, mai exact cu module inteligente ale acesteia. Dup specificitatea sau repetivitatea ciclurilor tehnologice, se pot distinge diferite variante. O configuraie judicioas se bazeaz pe cunoaterea: - traductoarelor i preacionorilor (specializai) disponibili; - modulelor specializate ale AP; -posibilitilor software.

Fig.17 Organizare monoprocesor

Fig. 18Automat multiprocesor.

Fig. 19 Organizare execuie task-uri la AP multiprelucrare.

Fig. 20 Structur de prelucrare de tip biprocesor Comunicaii, legturi, terminale. AP poate realiza urmtoarele tipuri de comunicaii: 1 - cu terminale de programare (la punerea la punct a aplicaiei); 2 - cu detectori i elemente de execuie - prin programul specific aplicaiei; 3 - cu terminalele de exploatare (dialog om-main). Intervin mai multe tipuri de dialog: - Dialogul de conducere (realizat prin butoane, lmpi, comutatoare, tastaturi, terminale de exploatare fixe sau mobile, elemente de afiare mesaje). Sunt afiate valori ale mrimilor urmrite, stri sau situaii anormale. Mesajele sunt memorate i apelate de program. - Dialogul de reglaj. Se selecteaz prin comutatoare i terminale de exploatare diferite opiuni, temporizri etc. n scopul ameliorrii sau adaptrii la aplicaie a programului. - Dialogul de depanare, constituie un ajutor n diagnosticarea strilor de nefuncionalitate. Terminalele (de obicei amovibile) pot afia etapele de oprire ale mainii, pot facilita diferite accesri etc. - Dialogul de coordonare - supervizare. Intervine n structurile de comand automat a mai multor maini, fiecare echipat cu un AP. Sunt vehiculate informaii simple (starea unei maini, sfritul unei operaii, defect la o celul) sau complexe (tipul operaiilor efectuate i al produselor, informaii de gestiune etc.) sub form serial sau paralel. Sistemul de supervizare include:

- un terminal (ecran-tastatur) pentru dialogul om-main; - o imprimant pentru jurnalul de activitate; - o unitate de stocare informaii.

Fig. 21Structur de producie cu AP.

Fig. 22 Integrarea automatelor ntr-o ntreprindere informatizat.Se afieaz indicaii de stare a produciei i mainilor, opriri, cauze i localizri de defecte, indici statistici. Se pot introduce / modifica referine. Pentru fiecare tip de informaie se apeleaz pagini ecran cu structur distinct. ntr-un dialog de coordonare supervizare sunt asigurate urmtoarele funcii: - Lansare producie (variante, cantiti, n ce ordine); - Funcia de reglare - se fac reglaje automate i se indic reglajele manuale necesare; - Funcia de dialog de conducere - afieaz procedurile n curs (mers normal, etape de pregtire, teste), lansarea procedurilor, conducerea celulelor, supraveghere; - Funcii de avertizare-prevenire relative la timpii de funcionare ai unor subansamble, cicluri de ungere etc; - Urmrirea defectelor (maina, subansamblul, starea opririlor de urgen); - Diagnosticare; - Jurnale de funcionare (bilanuri) - la imprimant; - Statistici rebut (absolut, procentual, pe tipuri, uniti de timp); - Statistici opriri (pentru reglaje, datorit defeciunilor), n uniti absolute i procentuale, pe durate; - Arhivare evenimente.

Module de comunicaie (AP - terminale, AP - supervizor). Se utilizeaz n special legtura serial asincron (RS 232 C) ori varianta n contratact RS 422. RS 485 asigur comunicaii de bun calitate pe distane mai mari.. Modulul de legtur asigur punerea n form a informaiei, ns unitatea central este cea care gestioneaz comunicaia (debit, paritate, format i gestiune trafic). Emisia i recepia pot fi simultane sau alternate. Mai nou, AP se construiesc cu disponibiliti de integrare direct n reea prin protocoale de tip Ethernet, Modbus, Profibus, CAN etc. Tipuri de conexiuni: - Fir cu fir (ntre AP i captori, elemente de execuie, ntre AP-urile unei reele reduse); - Punct cu punct - ntre dou AP, ntre un AP i perifericile sale; - Multipunct - ntre AP i mai multe elemente de tratare a informaiei; - n reea. Reelele pot fi n bucl (cu AP n noduri) sau distribuite n paralel la un bus (magistral) comun. Legturile se fac cu cablu coaxial, prin fibr optic i mai nou wireless (prin und radio). Dac echipamentele interconectate sunt de naturi diferite reeaua este eterogen i necesit interfee specializate pentru a asigura compatibilitate n comunicare. Reelele omogene leag AP de acelai tip sau compatibile. Comunicarea se face simplu, prin cuvinte sau blocuri de mesaj, cu ajutorul modulelor de cuplare n reea integrate n AP. Terminalele de programare permit acces direct la programele utilizator ale diferitelor AP conectate. 3.5 ELEMENTE CONEXE AP N INSTALAIILE AUTOMATIZATE Funcionarea (i iniial integrarea) unei instalaii condus prin AP presupune cunoaterea foarte exact a elementelor care furnizeaz informaii din instalaie (captori) i a elementelor de execuie activate de AP. 3.5.1 Captori Semnalele provenind de la captori pot fi : - logice - de la captori de tip contact, detectoare de proximitate, detectoare de distan (fig. 3.17 a) - numerice (paralel sau serie) - transmit poziia, presiunea, temperatura (fig. 3.17 b) - analogice (fig. 3.17 c) Captorii pot fi: - cu comutaie electromecanic fig. 3.18. - cu comutaie electronic (static): detectoare de proximitate (inductive pentru obiecte metalice, capacitive pentru obiecte nemetalice), detectoare fotoelectrice, magnetice etc. - fig. 3.19, 3.20. Detectoarele de proximitate inductive sunt construite dintr-un oscilator (al crui bobinaj este dispus n partea sensibil care trebuie s detecteze prezena, trecerea, defilarea unei piese), un etaj de triggerare i un amplificator de ieire. Cnd o pies feromagnetic este plasat n cmpul magnetic creat, curenii indui constituie o sarcin adiional care provoac diminuarea oscilaiilor, situaie sesizat de circuitul de prag i care comut etajul static (tranzitor, triac) final. Detectoarele capacitive pot sesiza prezena obiectelor izolante, lichide, pulverulente. Se compun dintr-un oscilator al crui condensator constituie faa sensibil. Cnd un material conductor sau izolant de permitivitate r > 1 este plasat n acest cmp, capacitatea de cuplaj se modific i provoac oscilaii. Conectarea la AP se poate realiza prin (fig. 3.19): - 2 fire: semnalul este transmis prin firele de alimentare. Se utilizeaz o sarcin pe circuitul intern al senzorului i AP sesizeaz dac circuitul este nchis sau nu. Conectarea se face direct la AP cu module de intrare care elimin efectul curenilor reziduali. - 3 fire (2 alimentare + semnal). Dac este necesar un rspuns rapid, intrrile standard ale AP nu sunt satisfctoare, ele comportnd o temporizare (10 ms) pentru eliminarea efectelor vibraiei contactelor. Detectoarele fotoelectrice fig. 3.20 sesizeaz ntreruperea unui fascicul luminos (n infrarou de obicei, cu semnal modulat pentru a elimina influena iluminatului ambiant) ntre un emitor i un fotoreceptor. Codoare de poziie (traductoare, codificatoare) - fig. 3.21 - liniare - fig 3.21a, traduc poziia unui element mobil prin tensiunea dat de un montaj poteniometric. Ex: pistoane, cilindri pneumatici. - rotative - fig. 3.21b; un disc este solidar cu elementul mobil i are piste marcate prin fante binare. Poziia curent este tradus cu elemente fotoreceptoare. Exemple de utilizare sunt n fig. 3.22. Codoarele de poziie pot fi absolute (cu fiecare poziie codificat distinct) sau incrementale relative, la care

important este numrul de impulsuri eliberate de la o poziie iniial, numr proporional cu deplasarea.

Detectoarele de cod de bare (fig. 3.23) sunt captori optici asociai cu un mic ansamblu de tratare care verific codul detectat, stocheaz informaia, o transmite la cerere aparatului. Se face deci o recunoatere grafic a obiectelor, acestea putnd fi de mai multe tipuri. Elementele de marcare permit organizarea proceselor de fabricaie i distribuie identificnd obiectele prin afectarea unui cod purtat de ctre o plcu ce nsoete obiectul (palet, crucior etc.). Produsul poate fi urmrit ca atare i / sau se poate specifica stadiul prelucrrii lui. Traductoarele de greutate / for (fig. 3.24) sunt construite pe baza unor doze (timbre) tensometrice care, n funcie de for, dezechilibreaz mai mult sau mai puin o punte Wheatstone. Semnalul analogic este convertit numeric local de dispozitivul de cntrire, iar acesta poate comunica cu AP prin canale numerice. Traductoarele de cuplu sesizeaz gradul de torsiune al unui arbore elastic montat ntre arborele conductor i cel condus. Traductoarele de presiune (monostrat, vacuostat) sunt alte tipuri de dispozitive tip captor pentru AP.

Fig. 3.17 Tipuri de semnale.

Fig. 3.18 Captori de tip limitator.

Fig. 3.19 Senzor de proximitate i conectare prin 2 sau 3 fire la AP.

Fig. 3.20 Senzori fotoelectrici.

Fig. 3.21 Codoare de poziie.

Fig. 3.22 Utilizare codoare de poziie.

Fig. 3.23 Citire n cod de bare.

Fig. 3.24 Cntar automat cu AP.

3.5.2. Elemente de execuie Elementele de execuie conectate la un AP pot fi preacionori (amplificatori intermediari de energie) i / sau acionori care activeaz direct instalaia sau procesul tehnologic - fig. 3.25. Tipuri: - Acionori electrici: motoare, electrovane, rezistene de nclzire, electromagnei, capete de sudur prin rezisten, prin ultrasunete, capete de decupare cu laser etc. Preacionori: contactoare, variatoare de vitez. - Acionori pneumatici: pistoane pneumatice. Asigur viteze de execuie ridicate. Preacionori: distribuitoare (electro) pneumatice. - Acionori hidraulici: pistoane, motoare (pompe). Necesit un grup generator de presiune. Asigur fore (cupluri) mari la viteze relativ reduse, ce permit un control precis al poziiei. AP poate comanda direct: - micromotoare; - lmpi de semnalizare; - electrovane de debit (P < 10W); - contactoare. AP comand indirect (prin elemente intermediare): - electrovane hidraulice (30 < P < 50 W); - cilindri hidraulici sau pneumatici; - motoare electrice sau hidraulice. La comanda prin contactoare, AP poate fi informat direct, printr-un contact auxiliar de starea (anclanat - declanat) a contactorului (fig. 3.26). Funcia de comutaie asigurat de AP este completat de: - funcia de secionare circuit, care izoleaz circuitul comandat pentru efectuarea unor intervenii; - funcia de protecie la scurtcircuit (fuzibile sau disjunctoare magnetice); - funcia de protecie la suprasarcini (releu termic). Configuraiile des ntlnite pentru comanda motoarelor electrice cu vitez constant sunt redate n fig.3.27. n configuraia 1, fiecrei funcii i corespunde cte un element distinct, iar AP poate dialoga cu fiecare. n configuraia 2, disjunctorul magnetic nlocuiete secionerul i fuzibilele. n configuraia 3, contactorul asigur funciile de comutaie, iar proteciile revin disjunctorului. n ultima variant toate funciile sunt integrate ntr-un singur element. n cazul comenzii motoarelor cu vitez variabil, AP trimite semnale direct la contactoarele de conectare (eventual cu ajutorul lor se schimb sensul de rotaie) i sub form analogic sau numeric la variatoarele de vitez. Reaciile spre automat intervin de la toate etajele: contactoare, variatoare, motor - fig. 3.28. Comanda instalaiilor electropneumatice Fiecare canal comandat poate fi completat cu o reacie numeric de tip TOT - NIMIC ce informeaz AP asupra poziiilor extreme ale pistonului (fig. 3.29). Aceast configuraie se poate repeta pentru fiecare element de execuie comandat (organizarea clasic). Mai nou, interfeele electropneumatice pot comanda direct cilindrii, fr intermedierea prin electrovane - fig. 3.30. Avantajele acestui sistem: - simplitate n racordare (suprimare riglet, conectori electrovane); - imunitate mai bun la perturbaii, fiind eliminat traseul circuitelor electrice AP - element de execuie. Alte posibiliti / configuraii (atipice) sunt posibile n funcie de disponibilitile unor AP i de necesitile impuse de instalaiile conduse. De asemenea se pot constitui structuri combinate n raport cu variantele prezentate. Ca o ncheiere a prezentrii elementelor hardware asociate AP i elementelor conexe, trebuie subliniat importana cunoaterii i respectrii caracteristicilor echipamentului, ale procesului i instalaiilor conduse. O implantare corect i eficient a AP nu este posibil fr documentaiile complete ale prii operative, ale prii de comand i fr a face o serie de evaluri legate de compatibilitatea structural, funcional i parametric a celor 2 pri. Automatele actuale sunt concepute pentru o funcionare intern transparent pentru utilizator. Acesta trebuie s cunoasc ns foarte bine elementele de interfaare cu instalaia electromecanic din punct de vedere al caracteristicilor funcionale, electrice, de conectare, de protejare i - nu n ultimul rnd, de extindere a lor fie din punct de vedere cantitativ (de exemplu creterea numrului de canale numerice) fie calitativ (cum poate fi introducerea ulterioar a unui modul de numrare rapid pentru impulsuri n sisteme de poziionare, a unui convertor analog - numeric sau altele). Mai nou, sunt folosite pe scar din ce n ce mai larg reele de automate; deci trebuie avute n vedere i elementele specifice de conectare i comunicare ntr-o asemenea structur.

Fig. 3.25 Acionori i preacionori asociai AP.

Fig. 3.26 Comand cu confirmare.

3.6 PROGRAMAREA AUTOMATELOR PROGRAMABILE Numrul mare al constructorilor de automate programabile determin coexistena mai multor tehnici i limbaje de programare concomitent cu o ofert bogat de pachete software de firm. Indiferent ns de particularitile constructive i funcionale, o bun parte din elementele de programare au trsturi comune. 3.6.1 Limbaje de programare. Aspecte generale Limbajele simbolice se subdivid n:

a. Limbaje de tip mnemonic - utilizeaz abrevieri ale termenilor care definesc operaii de achiziie a intrrilor, tratare a informaiei i activare a ieirilor. Ex: (Merlin Gerin): 010, 011: intrri OC 30 SI 010 020 : ieire OC 31 MU A00

Fig. 3.27 Comenzi de motoare cu AP.

Fig. 3.28 Configuraie complex de comand a motoarelor cu AP.

Fig. 3.29 Comand cu confirmare pentru cilindrii pneumatici.

Fig. 3.30 Comanda prin interfa electropneumatic.

OC 32 OC 33 OC 34 OC 35

SI/ MZ SI ET OCxx

011 SI,SI / : MZ, MU : A00 A00 : A00 020 ET : : adresa memorie

testare bit/ bit negat ("dac"- n limba francez) pune variabila la 1 respectiv la 0 (mets un, zro) variabil intern i logic;

b. Limbaje de tip boolean - se bazeaz pe implementarea ecuaiilor logice aferente n special unor structuri combinaionale. Ex1: (Renault): S5 E8 E9 + /E11 = A21 (S: etichet; E: intrri; A: aciuni). c. Limbaje de tip literal - apeleaz la construcii mnemonice similare cu ale unor limbaje de programare de nivel nalt: IF - THEN - ELSE , WHILE - DO etc. Partea literal (simbolic) se completeaz pentru inteligibilitate cu o serie de structuri i construcii grafice. d. Limbajele grafice s-au dezvoltat simultan cu posibilitatea utilizrii unor terminale de programare cu faciliti de vizualizare (tip display). Ele predomin n etapa actual practic la toate tipurile de AP i cunosc dou variante, n unele cazuri completdu-se. S-au impus: - limbajul cu contacte: ("LADDER" - termenul cel mai uzitat, "Contact Plan Programming", "Kontact-plan " - KOP, "Echelle"); permite implementarea structurilor combinaionale, secveniale, precum i a unor blocuri specifice schemelor de comand clasice: temporizatoare, numrtoare, programatoare ciclice etc. Unitatea de baz este constituit dintr-o reea cu dimensiuni relativ reduse (ex. 4 linii x 9 coloane). - diagrame de stri ("GRAFCET" = Graphe Fonctionnel de Commande Etapes-Transitions, "Sequential Function Chart "). GRAFCET se constituie ca o succesiune de etape i tranziii. Etapelor li se asociaz aciuni (uneori condiionate) iar tranziiilor condiii logice (receptiviti) pentru a trece sistemul n starea urmtoare. GRAFCET prezint avantajul c se poate utiliza practic n toate stadiile de descriere a funcionrii unei structuri automate, de la specificaii prin caietul de sarcini, la redarea n detaliu a elementelor utilizate (intrri, ieiri). Aciunile i receptivitile se descriu prin reele LADDER. Se menioneaz originea francez a instrumentului GRAFCET i utilizarea sa pe scar internaional (n prezent norm CEI), similar cu preluarea LADDER - ului (de origine american) de ctre toate firmele constructoare de AP. O prezentare panoramic a limbajelor de programare asociate diferitelor mrci de AP : a.Tlmcanique (grupul Schneider) - Frana, produce familia de automate programabile TSX. Pentru aplicaii clasice de automatizri sunt disponibile pachetele de programe: PL 7-x. PL 7-1: limbaj boolean; ex. de mnemonice: L (load ) - citete stare bit, A (and), O (or ), XO (xor ), (Pulse) - elaborez un impuls, N (Neg.) - inversare variabil etc. PL 7-2: limbaje LADDER, GRAFCET. PL 7-3: limbaje LADDER, GRAFCET, LITERAL (structurat) b. Siemens - produce automate n seria SIMATIC (versiuni : S 5, S7). Limbajul de baz este livrabil sub denumirea STEP (5, apoi 7) i are urmtoarele componente : - limbaj literal STL (Statement List ) - limbaj LADDER - limbaj GRAFCET - CSF (Control System Flowchart )

c . Allen - Bradley - produce automate programabile n seriile SLC 500 (Small Logic Controllers) - seria de echipamente mici i PLC - 5 - seria de automate medii mari. Automatele mici pot fi programate prin: - limbaj LADDER; - limbaj literal , cu asociere de structuri grafice. Exemple de mnemonice: XIC (Examine If Closed ) - testare bit; XIO (Examine If Open ) - testare bit; OTE (Output Energize) - activare ieire; TON (Time On - Delay ) temporizare; CTU (Count Up) - numr comutri; MUL (Multiply) multiplicare; MOV ( Move ) transfer. Exist intruciuni pentru: tratare intrri/ieiri, temporizare-numrare, tratare ntreruperi, comparare, operaii aritmetice i logice, transfer, manipulare fiiere, salturi, tratare bii. Automatele medii-mari folosesc preponderent limbajul GRAFCET i limbajul LADDER. Au disponibiliti (instruciuni) puternice pentru prelucrri aritmetice (calcule n virgul mobil), implementare algoritmi de reglare (PID), analiz statistic proces etc. d. Omron - produce familia SYSMAC - C. Sunt utilizate limbajele LADDER i simbolic (mnemonice). Exemple de mnemonice / instruciuni: LDtestare varibil direct; SDEC-decodificare 7 segmente; NOT-testare variabil negat; MLPX-multiplexare; OUT-activare ieire; ROOT-radical; CNT-numrare; KEEP-releu bistabil; DIV mprire. e. AEG - produce automate programabile ncadrate n familia MODICON. Seria A, prin pachetul Dolog AKF, este programabil prin lista de instruciuni, LADDER i GRAFCET, iar seria 984 utilizeaz diagramele LADDER i o form grafic bazat pe blocuri de funcii. Instruciunile acoper o zon larg, de la funcii logice i aritmetice standard, la liniarizri i algoritmi PID. Unele echipamentele pot fi programate n limbaje de nivel nalt - C. Diagramele cu blocuri de funcii combin ntr-o reprezentare grafic unic, utilizarea structurilor logice cu a elementelor (blocurilor) funcionale: registre, timere, numrtoare, comparatoare. f. GE - Fanuc produce familia (seria) 90. Practic toate automatele se pot programa prin diagrame cu blocuri de funcii i limbaj literal. Majoritatea (serile 90-30, 90-70 ) posed i instruciuni de prelucrare complex, exemplu PID. Subfamilia 90-70 accept programare structurat i n limbaj C, iar prin pachetul / interfa de control proces CIMPLICITY 90 sunt disponibile structuri de tip WINDOWS. Ca o evaluare global, se poate observa pe de o parte utilizarea cvasi-general (la toate categoriile de echipamente i majoritatea firmelor) a limbajului LADDER, iar pe de alt parte capacitatea de integrare a elementelor structurale i funcionale dintr-o automatizare prin limbajul GRAFCET. Se mai constat tendina de utilizare a unor limbaje de nivel nalt i a unor tehnici bazate pe o grafic conversaional, aspect explicabil prin faptul c sistemele de producie integrate (CIM) includ automatele programabile n reele ierarhizate i distribuite, programarea unitilor nemaifcndu-se local, ci de la echipamente puternice. Extinderea, accesibilitatea utilizrii precum i posibilitile puternice asociate limbajelor LADDER i GRAFCET justific o tratare detailat a acestora n continuare. Pentru o prezentare inteligibil, cursiv i unitar, majoritatea elementelor asociate acestor limbaje de programare vor fi referite la echipamentele din seria TSX Tlmcanique. 3.6.2 Variabile de operare Sub aceast denumire vor fi cuprinse toate variabilele program, incluznd prin abuz de limbaj i mrimile constante (inclusiv cuvinte constante). n acest sens larg, fiecare entitate cu care lucrez programul (imagini ale intrrilor/ieirilor, bii/cuvinte sistem, blocuri funcionale, stri ale automatului) posed un identificator atribuit de constructor sau de utilizator. n unele cazuri apar explicit n program i identificatori asociai unor parametri ai blocurilor funcionale. Numrul variabilelor de operare este limitat fie n mod explicit fie prin dimensiunea memoriei program. De asemenea numele rezervate pentru fiecare categorie sunt limitate, iar organizarea memoriei (de obicei la firma constructore) aloc spaii (zone) distincte. a. Bii interni - variabile binare utilizabile pentru memorarea unor stri (valori) logice intermediare. Ex: TSX 47: B00 - B 255; April 5000: % MXO - % MX 4095. Exemplu de utilizare: variabile de trecere dintr-o linie n alta sau dintr-o reea n alta (LADDER).

b. Cuvinte interne - variabile constituite din 8 sau 16 bii, utilizabile pentru memorarea unor valori (stri). Ex: TSX 17-20: W0-W127; APRIL 5000: % MWO- % MD???? (pn la limita memoriei disponibile) cuvinte interne duble. Tratarea informaiei la nivel de cuvnt (word, de aici abrevierea W) este utilizat pentru: efectuarea operaiilor cu valori numerice (operaii aritmetice, conversii, tratarea informaiei provenite din exterior - comutatoare decadice, traductoare analogice); lucrul cu blocuri de funcii (valori preselectare temporizatoare, numrtoare, valori curente - de evoluie pentru aceste blocuri, dialog cu periferice prin schimb de mesaje alfanumerice). Dup codul numeric utilizat, variabile de tip cuvnt intern necesit identificatori diferii. Ex: TSX 17-20: n zecimal - valoarea ca atare; n hexazecimal: H'07C2'; n binar L'1101100000011100'. Transferarea unei valori la un cuvnt intern se poate face de ctre utilizator prin: - proceduri specifice definirii unor blocuri (de exemplu, valorile de prescriere de la numrtoare); - operaii de transfer propriu-zise. c. Cuvinte constante - permit memorarea unor valori constante, asociate de obicei unor moduri de configurare. Ex: CWO - CW6143. d. Cuvinte indexate - indexarea cuvintelor const n adugarea coninutului unui cuvnt intern la adresa unui alt cuvnt intern sau constant. Ex: TSX: W5 (W120); W5 cuvnt intern, W120 cuvnt intern index. Dac W120 = 08, atunci W5 (W120) corespunde cuvntului de adres W5 + 08 = W13. Modificnd coninutul indexului se pot parcurge succesiv cuvintele unui tabel. e. Bii imagine intrri / ieiri - asociaz unor locaii de memorie valorile binare ale intrrilor i ieirilor la fiecare ciclu de scrutare. Adresarea se face distinct pentru intrri i ieiri. Ex: TSX 17-20: I0,5 - intrare modul 0, canal5, O1,6 - ieire modul 1, canal 10. f. Bii sistem - variabile logice utilizate pentru: definirea strii de funcionare a automatului, urmrirea execuiei programului, faciliti legate de scrierea programului. Starea acestor bii se modific de ctre unitatea de comand n timpul execuiei programului sau de ctre utilizator - prin program i proceduri de setare. Ex. - TSX 17-20: SY00: (pornire "la rece"). Normal pe zero, este comutat dup o revenire a alimentrii cu pierderea datelor. De asemenea poate fi setat de utilizator n mod iniializare. Starea pe 1 a sa determin o tergere general (bii I/O, bii interni, valori curente) i preluarea valorilor iniiale de ctre parametrii funciilor. SY01: (pornire "la cald"). Normal pe zero, este comutat pe 1 dup o revenire a alimentrii fr pierderi de date (datorit unui acumulator de salvare). Comutarea pe 1 determin resetarea numai a biilor de ieire i interni nedeclarai salvabili. Ciclul de scrutare este reluat din punctul n care a disprut alimentarea. SY03: actualizare ceas de timp real. SY05-SY07: baze de timp (100 ms, 1s, 1min). SY09: normal pe 0, setat nu mai permite activarea ieirilor n RUN. SY10: diagnostic intrri / ieiri disjunctate dup 10 secunde. SY13: stare acumulator (baterie). SY17: depire (carry) la adunare i decalaj circular bii. SY18: depire aritmetic. SY19: inhibare task rapid. SY20: depire index. SY21: iniializare GRAFCET - etapele active sunt dezactivate iar cele iniiale sunt activate. SY22: dezactivare etape GRAFCET (toate etapele). La automatul April 5000 se folosete terminologia de "eveniment sistem" - % ES. Ex: % ES2: punere sub tensiune (Off - On). Pentru controlul I/O, se asociaz entiti denumite "evenimente interfa" - % EI. g. Cuvinte sistem - permit realizarea unor funcii de tipul: ceas de timp real; afiare n binar sau BCD a unor valori / cuvinte; protejare programe la multiplicare. Ex: TSX17- 20: SW17: conine suma de verificare (checksum) RAM. SW18: checksum cartu EPROM. Permite realizarea unei proceduri de mpiedicare a duplicrii unor programe, n conjuncie cu SW17. SW41: memoreaz durata cea mai lung a unui ciclu. SW50-SW53: valori pentru ceasul de timp real.

SW54-SW57: valori pentru memorarea datei ultimului defect de reea. SW58: ora curent. SW59: data curent. h. Bii i cuvinte asociate blocurilor de funcii. i. Bii i cuvinte asociai GRAFCET. n afara identificatorilor de etap - tranziie, fiecrei etape i se poate asocia (ex. TSX 17-20) un cuvnt (X i, v) coninnd durata n secunde a etapei. Acesta poate fi util pentru controlul temporizrii asociate unei tranziii. 3.6.3 Programarea n LADDER Prezentarea se va exemplifica prin pachetul pentru automatele TSX. Schema cu contacte este constituit din mai multe linii orizontale coninnd simboluri grafice de test (contacte), de aciune (bobine) i pentru blocuri funcionale: temporizatoare, numrtoare, monostabile etc. Schema este fracionat n reele cu numr redus de linii (4) astfel nct s poat fi vizualizat la terminalul de programare o singur reea la un moment dat. Fiecare reea are asociat o etichet (label). Simboluri grafice de test: - conexiune orizontal: - conexiune vertical: - contact direct: test al strii bitului asociat: - contact invers: test al strii inverse a bitului asociat: Simboluri grafice pentru aciuni: - transfer direct: - transfer invers (transfer inversul rezultatului logic n bitul adresat): - setare bobin (cu memorare pn la reset): - resetare bobin (cu memorare pn la set): - salt (jump) la o reea desemnat prin eticheta respectiv: - bobine "salvate" n cazul pierderii alimentrii: Simboluri grafice pentru blocuri de funcii:

Simboluri pentru blocuri de operaii: -[, < =, > =, =. -[OPER.]- Operaii aritmetice : +, -, x, /, modulo; Operaii logice: SI, SAU, XOR; Operaii de conversie: BCD BIN, ASCII BIN; Deplasare circular registre; Transfer iruri de bii sau tabele cuvinte. Ex. 1 (TSX 17-20) - fig. 3.31 se refer la comanda de pornire reversibil cu automeninere a unui motor. Dup cum se observ nu trebuie neaprat realizat o asociere direct ntre un contact normal nchis i simbolul de test al contactului invers din reeaua LADDER. Automatul execut reelele de contacte unele dup altele, n ordinea introducerii lor n program. Un LADDER poate fi modificat sau completat cu reele noi (prin inserare). Pentru o anumit reea, ordinea de tratare a zonei de test este specificat de constructor. De exemplu la TSX 17-20, se citesc strile contactelor pe coloane, ncepnd din stnga. Ciclul de scrutare (zeci - sute de ms) are structura din fig. 3.32. Se observ c dac un bit intern sau de ieire este comandat n mai multe locuri din program, se actualizeaz starea comandat la ultima referire n LADDER. n schimb, strile logice ale biilor de ieire i interni pot fi citite de mai multe ori n program. Ex: Dac O 0,5 apare n reelele de contacte 2 i 6, la actualizarea ieirilor se va comuta starea ieirii O 0,5 conform ultimei reele executate, reeaua 6.

Programarea blocurilor (TSX 17 - 20) Blocuri temporizatoare. n fig. 3.33 intervin urmtorii parametri de programare: Ti , P: valoare preselectat; Ti , B: cuant de timp (1min ; 1s ; 0,1s ; 0,01s ); t = Ti, P x Ti B; i: numrul blocului Ti, P este ncrcat n valoarea curent Ti, V cnd E = 0. n timpul t, E trebuie pus la 1. Comanda C lanseaz temporizarea cnd este 1, dup care revenirea la zero determin reinerea valorii curente Ti, V. Dup t, D devine 1 iar R = 0. Diagrama din fig. 3.33 explic comportarea blocului pentru toate combinaiile de comenzi. Biii Ti, D i Ti, R asociai ieirilor D i R pot fi testai (citii) de program la fel ca biii I/O. Tot n fig. 3.33 este inserat o reea LADDER care folosete un temporizarator. T0 realizeaz o temporizare de 2 sec. (cu o precizie de 10 ms = cuanta de timp). B0 este un bit intern; I0,X constituie intrri iar O0,5 ieire. Monostabile. Se elaboreaz un impuls cu durat programabil. Mi, P: valoare prescris; Mi B: cuant de timp (la fel ca la temporizator). tM = Mi, P x Mi, B; n timpul evoluiei monostabilului, S nu trebuie meninut la 1 - fig. 3.34. Deci lansarea funciei M se face pe frontul ascendent al comenzii S. Starea bitului Mi,R asociat ieirii R, se poate testa de ctre program la fel ca un bit I/O. Numrtoare. Se pot numra impulsuri (evenimente) nainte sau napoi ori simultan n ambele sensuri, n funcie de comutrile survenite la intrrile U i D. P=1: valoarea preselectat Ci,P este ncrcat n valoarea curent Ci,V. P=0: numrtorul poate evolua. Semnalele asociate sunt redate n fig. 3.3