Există două tipuri de senzori care sunt folosiţi cel mai frecvent în diverse tipuri de automatizări industriale: senzori fotoelectrici şi inductivi (de proximitate). Ambele prezintă atât avantaje, cât şi dezavantaje, care le determină utilizarea. De exemplu, dacă senzorii inductivi pot detecta obiecte metalice ascunse în spatele unui obstacol nemetalic, netransparent, senzorii fotoelectrici nu au această posibilitate, acestea trebuind să „vadă” obiectul într-un anumit spectru al luminii. Pe de altă parte, dacă într-un asemenea senzor folosim lumina de laser, atunci raza de detecţie poate fi foarte mare, ajungând chiar la câteva zeci de metri. Senzorii inductivi nu se pot lăuda cu o asemenea rază de acţiune.
Senzorul fotoelectric acţionează pe baza măsurării intensităţii luminoase a fasciculului emis de emiţător, care cade pe elementul fotosensibil al receptorului. În funcţie de destinaţia senzorului, se utilizează diferite tipuri de lumină şi de modulaţie a fasciculului. Cel mai des este folosită lumina infraroşie, invizibilă pentru ochiul uman. Datorită acesteia, detecţia poate fi realizată într-un mod care nu distrage atenţia, dar acest lucru are şi dezavantaje, de care s-a convins, de exemplu, oricine a montat un senzor într-o poartă cu scopul de a preveni închiderea acesteia atunci când în dreptul acesteia se află un vehicul. De aceea, adeseori, în timpul lucrărilor de montare, se foloseşte ca accesoriu suplimentar indicatoarele laser, care ajută la poziţionarea emiţătorului şi receptorului unul faţă de celălalt.
Mulţi senzori fotoelectrici sunt prevăzuţi cu diode care semnalizează statusul de funcţionare a acestora, inclusiv conectarea corectă între emiţător şi receptor. Observarea acestor diode şi a culorilor luminii acestora ajută la montarea corectă a senzorilor şi la determinarea statusului iniţial sau a corectitudinii reacţiei la un obiect, ceea ce este deosebit de important atunci când este reglată sensibilitatea.
Cu siguranţă, criterii importante vor fi factori precum: mediul în care funcţionează senzorul, temperatura ambiantă, rezistenţa mecanică (toţi factorii menţionaţi vor influenţa, de asemenea, alegerea materialului carcasei, a gradului de etanşeitate IP al acesteia şi a modului de fixare), tipul de lumină din mediul ambiant, destinaţia senzorului şi raza de detecţie necesară, tensiunea de alimentare disponibilă şi tipul de ieşire. În anumite situaţii, o mare importanţă o poate avea timpul de reacţie al senzorului, deşi mai degrabă nu acest lucru îl aşteptăm de la senzorii de rază mare de acţiune. Un criteriu extrem de important este şi tipul obiectului sau obiectelor detectate.
Atunci când alegeţi senzorul, merită să ţineţi cont şi de marcă. Pentru utilizări industriale sau alte echipamente în care este importantă funcţionarea sigură a senzorului şi aceasta nu doar sub aspectul siguranţei utilizatorilor, dar şi al confortului utilizării aplicaţiei, este recomandat să căutaţi produse verificate ale unor fabricanţi cunoscuţi. De exemplu, dacă producătorul senzorului este firma Panasonic, putem presupune că a fost efectuat un control riguros al calităţii senzorilor, iar acestea vor funcţiona într-un mod sigur şi stabil.
Să verificăm cum putem, în practică, să facem ca un asemenea senzor să funcţioneze conectat la orice controler PLC. Deşi programul de exemplificare a fost realizat pentru Siemens LOGO! v8, datorită lizibilităţii limbajului FBD, acesta poate fi adaptat fără mari eforturi pentru a fi utilizat pe o altă platformă.
Dacă avem un singur senzor fotoelectric, recunoaşterea direcţiei de mişcare a obiectului este foarte dificilă. Pentru a putea face acest lucru, ar trebui fie să modulăm fasciculul luminos şi să folosim efectul Doppler, fie să măsurăm timpul dintre seriile de impulsuri trimise spre obiect. Acestea sunt însă metode greu de realizat în practică, mai degrabă scumpe şi nu mulţi le pot aplica. Mult mai uşor este să aşezăm doi senzori unul lângă altul şi să verificăm succesiunea declanşării acestora.
În figura 1 este prezentat principiul de funcţionare a acestei soluţii. Dacă folosim doi senzori – convenim să îi numerotăm „1” şi „2” – declanşarea lui „1”, iar apoi a lui „2” putem conveni că înseamnă direcţie de mişcare spre dreapta, iar în ordine inversă – spre stânga. Totuşi, pentru ca algoritmul nostru să funcţioneze în mod sigur şi să poată fi folosit nu doar pentru detectarea direcţiei de mişcare, dar şi, de exemplu, pentru numărarea obiectelor, trebuie să introducem şi anumite restricţii. În primul rând, obiectul trebuie să se deplaseze în faţa senzorilor determinând declanşarea acestora, dar acest lucru este destul de evident. În al doilea rând, distanţa maximă între senzori nu poate fi mai mare decât cele mai mici dimensiuni ale obiectului. Astfel, senzorii noştri se vor declanşa pe rând, de exemplu:
ambii inactivi -„1” activat – „1” şi „2” activaţi – „2” activat – ambii inactivi.
În al treilea rând, mişcările accidentale ale obiectului verificat între senzori nu ar trebui să declanşeze în mod eronat instalaţia. Sigur că este vorba de un program şi nu pot fi excluse erorile logice, cu toate acestea trebuie verificat cu rigurozitate cu ajutorul simulatorului sau al unei instalaţii-model, testând algoritmul în diferite situaţii care pot apărea în practică.
În figura 2 este prezentat un exemplu de program în limbaj FBD, scris în mediul gratuit LOGO! Soft Comfort. Dacă am folosi un controler LOGO!, atunci la intrările acestuia I1 şi I2 trebuie să aplicăm o tensiune care reprezintă „1” logic. Dacă ar fi vorba de LOGO! 24RC, aceasta ar fi o tensiune din intervalul 18…24 V DC. Dacă am folosi o versiune alimentată la o tensiune alternativă de 230V AC, atunci „1” logic ar reprezenta o tensiune cu mult mai mare, dar în acest caz trebuie să fim atenţi la tipul şi parametrii ieşirii senzorului!
Aşa cum s-a amintit, tensiunea de la contactele senzorilor trebuie aplicată la intrările I1 (de la senzorul „1”) şi I2 (de la senzorul „2”). Programul este astfel scris încât direcţia de mişcare de la I1 la I2 conduce la generarea unui impuls la ieşirea porţii B020, iar de la I2 la I1 la ieşirea porţii B006.
Pentru a demonstra utilitatea aplicaţiei folosite ca exemplu, la ieşirile ambelor porţi au fost conectate un contor bidirecţional (B023) şi un circuit logic (B021 – poarta XOR, B022 – circuit flip-flop RS). Sarcina circuitului logic constă în setarea intrării direcției de numărare, dacă intră impulsuri „pozitive” (de la poarta B020) şi aducerea la zero, dacă acestea sunt negative (de la poarta B006) şi în elaborarea semnalului de ceas aplicat la intrarea numărării. Datorită setării şi aducerii la zero a intrării direcţiei de numărare, contorul va număra în sus (intrare setată) sau în jos (intrare adusă la zero).
Blocul contorului Up/Down Counter din LOGO! are ieşirea setată şi adusă la zero conform condiţiilor stabilite în fereastra de proprietăţi a contorului. În cazul în care, ca în figura 3, în câmpul „On” introducem „1”, iar în câmpul „Off” lăsăm „0”, atunci ieşirea va fi setată atunci când valoarea contorului este mai mare decât 0 şi adusă la zero atunci când valoarea contorului este egală cu 0. Dacă însă la această ieşire aplicăm un bloc funcţional Output, de exemplu Q1, releul de ieşire nr. 1 al controlerului LOGO! 24RC va închide contactele, atunci când valoarea contorului este mai mare decât 0. În acest mod putem construi repede şi uşor un echipament care va cupla şi decupla automat iluminatul, numărând persoanele care intră şi care ies în/din încăperea respectivă. Lumina trebuie să se aprindă dacă o persoană intră şi să se stingă dacă toate persoanele ies.