Soluţie bazată pe un microcontroler low-cost monocip.
Obiectivul principal al unui detector de spargere sticlă (Glass Breakage Detector – GBD) este acela de a detecta spargerile de sticlă cauzate ferestrelor sau uşilor în casă sau firmă. GBD poate de asemenea fi categorisit ca un dispozitiv de monitorizare pentru a îmbunătăţi securitatea unei case sau firme pentru a preveni pătrunderile ilegale.
de Kripasagar Venkat, Texas Instruments Incorporated (TI)
Introducere
Un GBD funcţionează independent sau în conjunctură cu alte dispozitive anti-furt pentru a informa un sistem de securitate. În esenţă GBD captează orice activitate acustică sau sunet, o analizează şi raportează dacă a avut loc o spargere de sticlă. Datorită acestui mod de operare, GBD depinde mult de calitatea evenimentelor sonore, punând multe probleme proiectantului.
În plus, GBD trebuie să fie capabil să ignore toate sunetele care nu sunt cu adevărat spargeri de sticlă. Evenimente sonore care potenţial declanşează o condiţie falsă de spargere sticlă sunt denumite alerte de eroare. Acest articol prezintă un model eficient şi robust al GBD utilizând un microcontroler (MCU) low-cost.
MCU-urile sunt procesoare low-end care îşi găsesc locul în diferite aplicaţii precum ceasuri digitale simple sau aplicaţii de contorizare inteligente complexe. Utilizarea de MCU-uri se datorează în principal costului lor scăzut, consumului redus de energie şi utilizării simple atunci când sunt comparate cu majoritatea altor tipuri de procesoare digitale. În aplicaţii simple, costul scăzut şi puterea redusă sunt uşor realizate datorită unui set limitat de cerinţe. Totuşi, există o tendinţă de schimbare către utilizarea acestor MCU-uri chiar şi în aplicaţii complexe, devenind o provocare să se menţină un cost scăzut şi să se reducă energia consumată. Sarcina unui inginer este acum obţinerea celei mai bune performanţe la costul cel mai mic posibil. Pentru a atinge acest scop, trebuie rezolvate restricţiile de arhitectură MCU, cum sunt memoria scăzută on-chip, set limitat de periferice, viteză operaţională scăzută, număr de pini mai mic etc. Inginerul trebuie să optimizeze şi să utilizeze fiecare bucăţică oferită de aceste MCU-uri pentru utilizarea acestora în aplicaţii destul de complexe, cum este GBD-ul.
Consideraţii de proiectare
Un algoritm GBD robust ar trebui să fie capabil să distingă cu o relativă uşurinţă spargeri de sticlă valide faţă de alte sunete. Toţi algoritmii GBD captează evenimente sonore, le analizează timpul şi compoziţia de frecvenţă şi iau o decizie. Sunetele de sticlă spartă variază după tipul de sticlă, grosime, mediu acustic, distanţă, obiect folosit pentru a le sparge etc. Toţi algoritmii GBD sunt în esenţă similari dar variază uşor pentru condiţii specifice. Totuşi, este dificil să se aibă un singur algoritm care să funcţioneze pentru toate condiţiile. Reglarea fină a algoritmului este de obicei realizată în timpul instalării finale într-o casă sau firmă.
Un semnal de spargere sticlă valid poate fi analizat în domeniul de timp sau în domeniul de frecvenţă. Figura 1 şi Figura 2 prezintă un semnal tipic de spargere sticlă în domeniul de timp respectiv frecvenţă. Acest sunet este în spectrul audio între 20Hz şi 20kHz. Forma de undă pentru domeniul de timp oferă conţinutul complet de frecvenţe al semnalului. Aceste grafice furnizează informaţii valoroase în proiectarea unui algoritm eficient pentru detectarea de spargere. Graficul domeniului de timp indică faptul că forma de undă este foarte densă şi există multă activitate în intervale scurte de timp.
Acest lucru are legătură cu faptul că semnalul conţine multe componente de frecvenţă ridicată. Acest lucru semnifică de asemenea că numărul de treceri prin zero şi vârfuri pentru această formă de undă va fi ridicat. Deşi sunt informaţii bune, aceste caracteristici par să imite zgomotul alb. Va fi acum o problemă pentru proiectant să facă această distincţie.
Privind răspunsul de frecvenţă, se vor observa probleme similare; componentele semnalului de spargere sticlă par să se întindă pe întreg spectrul cu energie aproximativ egală, tipică pentru zgomotul alb. Totuşi, se observă un vârf semnificativ în domeniul de frecvenţe joase între 200 – 300Hz, ceea ce furnizează o distincţie necesară. Acest vârf este componenta de frecvenţă a sunetului cauzat de impactul iniţial al sticlei în timpul spargerii acesteia.
Impactul este un semnal de frecvenţă joasă între toate sunetele de spargere sticlă de frecvenţă ridicată care urmează. Acest “impact” sau “bufnitură” pot de asemenea să fie înţelese ca un sunet datorat unei arme care loveşte sticla. Această informaţie nu este uşor recunoscută în forma de undă de domeniul timpului, dar se cunoaşte că acest sunet va preceda tuturor celorlalte sunete în timpul unei spargeri de sticlă. La acest moment, au fost stabilite câteva lucruri despre un semnal de spargere sticlă care se pot enumera:
1. Conţine multe componente de frecvenţă înaltă, deci multe puncte de zero şi vârfuri;
2. Conţine o componentă de frecvenţă joasă în jurul la 200-300Hz, care este cauzată de impactul unei arme cu sticla şi are loc la începutul unui sunet de spargere sticlă.
Componentele sistemului
Figura 3 prezintă o diagramă bloc de sistem tipică pentru un detector de spargere sticlă. Blocuri cheie care realizează acţiuni specifice sunt listate mai sus. GBD trebuie întotdeauna să fie ON şi ar trebui să fie capabil să proceseze orice activitate sonoră în timp real. Totuşi, unele blocuri din GBD pot fi comutate în OFF sau pot trece în moduri de putere redusă când nu sunt în uz. Această distincţie va fi realizată în secţiuni subsecvente. Evenimentele sonore sunt capturate de un microfon. Un amplificator urmat de un filtru anti-aliasing (AAF) se ocupă de amplificarea semnalului şi filtrarea componentelor de frecvenţă înaltă. AAF-ul este proiectat să respingă orice frecvenţe în afara gamei audibile de 20kHz şi evită de asemenea încălcarea criteriului Nyquist în timpul digitalizării unui semnal analogic. Blocurile acoperite sub zona punctată pot fi înţelese a fi parte din procesor. Procesorul poate fi un ASIC, MCU sau un DSP (Digital Signal Processor). Convertorul analog-digital (ADC) converteşte semnalul analogic în eşantioane digitale pentru procesarea în domeniul digital. Frecvenţa de eşantionare (Fs) este aleasă în funcţie de conţinutul de frecvenţă al semnalului. Din moment ce este utilizat un AAF de 20kHz, rata de eşantionare trebuie neapărat să fie mai mare sau egală cu 40kHz pentru a păstra conţinutul de semnal original şi integritatea.
Blocul de analiză semnal cuprinde întreaga procesare de semnal necesară pentru detecţia/rejecţia spargerii sticlei. Odată ce acestea sunt complete, blocul de decizie va activa un indicator, precum un LED sau un buzzer pentru a indica spargerea sticlei. În următoarele rânduri vor fi analizate în întregime specificaţiile detaliate ale acestor blocuri.
Specificaţiile proiectării hardware
În această secţiune se va discuta despre specificaţiile hardware (HW) care contribuie la o soluţie GBD robustă. Înainte de împărţirea în două cerinţe, un lucru important de menţionat aici este că în mare parte GBD-urile sunt operate pe baterii şi, pentru a avea o suficientă durată de viaţă a bateriei, structura proiectată ar trebui să pună accent pe consumul redus de energie. Alegerea tuturor componentelor hardware de pe această placă va depinde de abilitatea acestora de a contribui la construcţia de putere redusă.
Lanţul de semnal analogic este format, după cum este prezentat în Figura 3, pornind de la microfon şi ajungând la ADC. Alegerea microfonului este extrem de importantă şi performanţa acestuia va contribui la succesul oricărui algoritm GBD. Microfonul ar trebui să fie de asemenea capabil să capteze şi să păstreze componente de sunet cheie cum sunt impactul sau alte componente de frecvenţă înaltă care vor fi utilizate din plin în algoritmul GBD. Microfonul trebuie să fie ON majoritatea timpului pentru a capta orice activitate sonoră şi astfel trebuie să consume mai puţină energie pentru a scădea curentul total în sistem. Amplificatorul este în general un amplificator operaţional (AO) configurat pe mod inversat sau mod neinversat cu un câştig supraunitar. Obiectivul AO este acela de a furniza suficient câştig sunetului capturat de microfon, care este de ordinul zecilor de milivolţi. AO în conformitate cu microfonul va rămâne mereu ON şi trebuie să aibă un curent de pornire mic. AAF este de asemenea un AO, filtrând în domeniul analogic şi este de obicei un filtru LPF (Low-Pass Filter) cu câştig unitar de primul sau al doilea ordin. Cea mai mare şi mai importantă alegere de luat pentru întregul proiect este procesorul de semnal. Cum a fost menţionat anterior, un ASIC, MCU sau DSP ar putea fi utilizate pentru această aplicaţie. Fiecare opţiune are avantaje şi dezavantaje şi alegerea va fi luată pe baza unor factori care sunt utili acestei aplicaţii. Majoritatea detectoarelor de spargere sticlă, similare cu detectoarele de fum, sunt plasate în interiorul caselor sau firmelor la locaţii care vor asigura securitatea şi siguranţa. Totuşi, acestea vor trebui să fie alimentate cu baterii din două motive:
1. Acestea pot fi plasate oriunde fără a trebui să se aibă grijă de sursele de putere;
2. Pentru a asigura funcţionalitatea completă în absenţa alimentării pe liniile electrice.
Procesorul ales trebuie să fie de putere redusă, programabil, uşor de folosit şi ieftin cu capacitate de procesare bună pentru operarea în timp real. Printre aceste alegeri, MCU-ul se potriveşte cel mai bine, aderând la fiecare dintre cerinţe. În plus, anumite MCU-uri au periferice analogice integrate, care vor reduce suplimentar costul total al sistemului.
Specificaţiile de proiectare software (SW)
Semnalul analogic de la microfon este filtrat de un AAF cu o frecvenţă de tăiere de 20kHz. Pentru a digitaliza semnalul, rata de eşantionare trebuie să fie mai mare de 40kHz, semnificând că ADC-ul trebuie să fie capabil să-l suporte. Procesarea necesară trebuie să fie completată în timpul dintre eşantionările succesive pentru operarea în timp real. De exemplu, dacă frecvenţa maximă a CPU este de 12MHz, numărul de cicluri CPU disponibile între eşantionările succesive este doar 300, ceea ce este extrem de îngust pentru procesarea de semnal. Un procesor care va suporta un ceas CPU mai mare poate fi ales pentru cicluri CPU crescute; totuşi, aceasta înseamnă un consum crescut de energie, semnificând o durată de viaţă mai mică a bateriei. Astfel, trebuie realizat un echilibru între nivelul de complexitate al algoritmului şi durata de viaţă a bateriei. În această secţiune, va fi analizat algoritmul real utilizat pentru a detecta spargerea sticlei.
Din Figura 1 şi Figura 2 s-a observat că un sunet de spargere sticlă are multe componente de frecvenţă înaltă, intersecţii cu zero şi vârfuri, suplimentare bufniturii de frecvenţă joasă. Bufnitura sau impactul are loc la începutul sunetului de spargere sticlă. Este important de menţionat că semnalul de bufnitură/impact poate fi prezent în majoritatea sunetelor, cum este o uşă de lemn sau închiderea unui dulap, obiecte care cad la pământ, mâini care aplaudă rapid, ciocănitul la uşă etc. Totuşi, nici unul dintre aceste sunete nu va avea componentele de frecvenţă înaltă care sunt aşteptate să urmeze în semnale tipice de spargere sticlă. În mod similar, sunete precum cele ale râşniţei de cafea, muzică, curse de motociclete de la TV, pahar de vin căzând şi spărgându-se pe podea etc., au componente de frecvenţă înaltă similare, dar nu şi componenta de bufnitură/impact.
Algoritmul GBD descris mai jos va exploata faptul că aceste două componente sunt pe fiecare parte a spectrului de frecvenţe şi au loc independent între ele în timp.
Mai multe informaţii:
Irina Marin / ECAS ELECTRO / www.ecas.ro
Gabriela Petrache / TI – Suport Clienţi România / eecsc@ti.com
Contact:
Irina Marin
irina.marin@ecas.ro
ECAS ELECTRO
Tel.: 021 204 81 00 begin_of_the_skype_highlighting 021 204 81 00 end_of_the_skype_highlighting
Fax: 021 204 81 30
birou.vanzari@ecas.ro