magyar elektronika

E-mail cím:*

Név:

{a-feliratkozással-elfogadja-az-adl-kiadó-kft-adatvédelmi-és-adatkezelési-tájékoztatóját-1}

microchip lida Microchip PIC® és AVR® MCU-k felhasználásával

Az emberi füllel hallható hangoknál „magasabb” ultrahangok precíziós térbeli helymeghatározásra való alkalmasságát a rovaroktól a denevérekig számos élőlénynél tapasztaljuk. Az élettani folyamataikat „lekoppintó” méréstechnikai alkalmazásoknak – az autók tolatóradarjától a diagnosztikai készülékekig – ma már sok változatát használjuk a hétköznapokban, amelyek számát tovább gyarapíthatja, hogy például az ultrahang visszaverődésén alapuló távolságmérés működési elve ma már „filléres” mikrovezérlőkkel is megvalósítható.

 

Bevezetés

Napjainkban az ultrahangos érzékelés technikáját széles alkalmazási körben használjuk. A technológia fő előnye, hogy érintésmentes, és a méréstechnika számos területén csaknem mindenféle anyagú „céltárgy” detektálására alkalmas. Példa erre a folyadékok és „ömlesztett” szilárd anyagok szintjének mérése silókban és tartályokban, amely az aktuális szint meghatározásán kívül a túltöltés megelőzésében is fontos szerepet játszik. Az ultrahangos érzékelés egy másik területe a mozgó tárgyak megszámlálása. Ez például egy italtöltő berendezésben az áthaladó palackok megszámlálását jelentheti. A járműtechnológiában az ultrahangos távolságmérés például a parkolás megkönnyítésére használható: a távolságérzékelő méri a jármű távolságát valamilyen akadálytól (egy másik járműtől, faltól stb.). Ez csupán néhány példa arra, hogy az ultrahangos méréstechnológia milyen területeken talált már máig is alkalmazásra, és még sok további technológiai környezetben is megvalósítható a felhasználása.

 

1abra microchip

1. ábra  Az ultrahangos távolságmérés működési elve


A mérés egyik célja lehet az ultrahangos szenzor és egy másik tárgy (a céltárgy) közötti távolság meghatározása. Ezt az ultrahangos méréstechnikában annak a „repülési időnek” a meghatározásával valósítjuk meg, amíg a szenzorból kibocsátott ultrahang-hullám eléri az r távolságban levő céltárgyat, és onnan visszaverődve eljut ismét az érzékelőig (1. ábra). Ennek az időnek, valamint az ultrahangjelnek a levegőben (vagy az érzékelő és a céltárgy közti teret kitöltő más, akusztikai szempontból homogénnek feltételezett közegben – A szerk. megj.) mérhető terjedési sebességének ismeretében a távolság kiszámítható. Bár ez a számítás egyszerűnek tűnik, az ultrahang terjedési sebessége számos más tényezőtől is függ, mint a levegő nedvességtartalma, nyomása, áramlása (például erős szél) és a gáz összetétele. A legtöbb ultrahangos szenzort az ember által is belélegezhető levegőben (közelítőleg 21% oxigénből, 78% nitrogénből és nagyjából 1% más gázkomponensből álló keverékben) való használatra tervezték. Azok a szenzorok, amelyeket ilyen összetételű levegőben való használatra szántak, nem biztos, hogy helyesen működnek más gázokban, amelyekben más a hang terjedési sebessége. A hangjel frekvenciája 40 kHz körüli, azaz magasabb a hallható hangok 20 Hz…20 kHz-es tartományánál.

 

Ultrahangos mérés a Microchip 8 bites mikrovezérlőivel

Az ultrahangos méréstechnika a Microchip számos különféle mikrovezérlő- (MCU-) gyártmányával megvalósítható. A 8 bites PIC MCU-családba tartozó PIC16F1769 típusú, vagy az AVR-termékcsalád ugyancsak 8 bites ATtiny817 MCU-ja egyaránt jól alkalmazható erre a célra.
A nyolcbites MCU-kkal való tervezés kulcsfontosságú elemei a „magfüggetlen perifériák” (Core Independent Peripherals – CIP). Az ultrahangos méréstechnikával a CIP-ek használata teszi lehetővé a repülési idő hatékony mérését anélkül, hogy ezzel a központi mikroprocesszort, a CPU-t terhelnénk. Ezzel nem csak a teljes energiafogyasztást mérsékeljük, de fel is szabadítjuk a CPU-t más feladatok megoldására.
A CIP-ek használatának másik előnye az, hogy a jelzés az egyik perifériától kevesebb mint egy óraciklus alatt eljut a másikig. Ezek a funkciók a PIC és az AVR mikrovezérlőkben egyaránt megtalálhatók. Ha ezt a mérési feladatot CIP-ek használata nélkül kellene megoldanunk, az csak a CPU közreműködésével lenne lehetséges. Szükség lenne egy programmegszakításra, majd annak olyan feldolgozására, amely parancsot ad a periféria működésére. Ez legalábbis néhány órajelciklusnyi időt venne igénybe, amely lelassítaná a rendszert, amely ráadásul több energiát is igényelne.
A CIP-eket tartalmazó MCU-k használatának további fontos előnye, hogy kevesebb szoftverműveletre van szükség amiatt, hogy számos feladatot hardver lát el. A kevesebb szoftvernek pedig kevesebb munkával lehet ellenőrizni a megfelelőségét, és egyben kevesebb a fejlesztési munkában rejlő kockázat is. Mindezek a hatások együttesen gyorsabban piacra bocsátható készterméket eredményeznek.
Akár PIC, akár AVR mikrovezérlőt használunk a feladat megoldására, a mérőjel repülési idejét, annak kibocsátását és a visszavert jel érzékelését egyaránt megoldhatjuk megfelelő PIC-ek segítségével. Ha az illető PIC-et megfelelően inicializáltuk (azaz beállítottuk az üzemmódját és működési paramétereit), nincs tovább szükség a CPU közreműködésére a feladat végrehajtásához. Nincs szükség programmegszakításokra (interrupt), sem a CPU erőforrásaira, sem statikus RAM-tároló (SRAM) lefoglalására, sem pedig hosszú programszakaszokra a repülési idő (Time of Flight – ToF) méréséhez. A CPU részvétele mindössze annyi, hogy a repülési idő és a hang terjedési sebessége összeszorzásával kiszámítja az r távolság értékét. Az olvasó ennek részleteiről e célra készült alkalmazástechnikai útmutatókban (Application Notes, lásd a cikk végén felsorolt webhivatkozásokat) találhat bővebb tájékoztatást.
Az 1. táblázat összehasonlítást tesz lehetővé két, e célra alkalmas mikrovezérlő típus között arról, hogyan alkalmazhatók ultrahangos méréstechnikai célokra. Az ATtiny817 a 2016 végén bemutatott tinyAVR® mikrovezérlő család egyik tagja, a PIC16F176x/7x MCU-k pedig a múlt év elején kerültek forgalomba. Mindkét család tartalmaz olyan magfüggetlen perifériákat, amelyekkel a ToF a CPU használata nélkül mérhető.

 

2abra microchip

1.táblázat  Az ATtiny417/817/1617 és a PIC16F176x/7x összehasonlítása

 

Alkalmazástechnikai útmutatók

A Microchip két alkalmazástechnikai útmutatót is készített, amelyben megmutatja, hogyan lehet távolságot mérni ultrahangos jeladó/vevőkkel. Az egyik a 8 bites PIC-termékcsaládba tartozó mikrokontrollerre, a PIC16F1769 típusra, a másik az ugyancsak 8 bites, AVR-családbeli ATtiny817-re van alapozva. Mindkét alkalmazás CIP-eket használ az ultrahangos távolságmérés megvalósítására, a lehetséges legkisebb terjedelmű szoftverrel és CPU-erőforrás-igénybevétellel. A 2. táblázatban összehasonlíthatjuk ezeket a minimálisan szükséges flashmemória, SRAM- és I/O-követelmények szempontjából.
Amint azt az 1. táblázatban láttuk, a két mikrovezérlőnek eltérő a perifériakészlete, a 2. táblázatból pedig kiderülnek az alkalmazáshoz minimálisan szükséges flash- és SRAM-követelmények.
A programkód azt a funkciót is tartalmazza, amivel az eredményeket egy LCD- vagy OLED-kijelzőn lehet megjeleníteni. A jel repülési idejének mérése a CIP-ekre van bízva, és nem igényli a CPU állandó közreműködését, és SRAM-ot sem foglal. A CIP-ek alapparamétereinek beállítása a működés elején nagyon rövid programkódot foglal csak le a flashmemóriából. Ráadásul ez továbboptimalizálható, hogy a lehető legkisebb flashmemóriát tartalmazó MCU-típusokat választhassuk a megfelelő PIC- és AVR-típuscsalád tagjai közül. Mindkét megoldásban elegendő programtároló marad szabadon a firmware további bővítésére, például alkalmazásspecifikus kommunikációs csatornák kezeléséhez, amely által az ultrahangos szenzor egy ipari hálózat tagjaként működtethető, vagy saját soros kommunikációval továbbítja a mérési eredményeket.

 

3abra microchip

2. táblázat  Erőforrásigény az ATtiny817 és a PIC161769 MCU esetében (beleértve a mért távolság megjelenítését is)

 

A bemutatott megoldások előnyei

Mindkét megoldás hatékonyan képes távolságot mérni az ultrahangos mérési elv felhasználásával. A PIC16F1769 sok integrált analóg funkciója közt két műveleti erősítő is megtalálható. Ezekre a visszavert, erősen csillapított ultrahangjel vételéhez van szükség: a műveleti erősítő erősíti a vett ultrahangjelet, amelynek megjelenését így az analóg komparátor képes jelezni. Ezek a PIC16F1769 mikrokontrollerbe integrált analóg funkciók teszik lehetővé, hogy minimális számú külső alkatrész felhasználásával, könnyen lehessen a távolságmérőt megvalósítani.
Ezzel szemben az ATtiny817 mellé két külső műveleti erősítőt kell beépíteni az ultrahangjel vételéhez. Ezeket az áramköröket további külső alkatrészek felhasználásával lehet különböző távolság-méréstartományokhoz és más speciális végfelhasználói követelményekhez igazítani.

 

Összefoglalás

A szakma legnagyobb 8 bites mikrovezérlő-kínálatával a Microchip jó helyzetben van ahhoz, hogy szinte bármilyen ultrahangos távolságmérési feladat megvalósításához megoldást kínáljon.
A processzormagtól függetlenül működő (CIP) perifériák feleslegessé teszik, hogy a CPU-val kelljen a repülésiidő-mérést megoldani. Ezt a CIP-ek segítségével nagyon hatékonyan és nagyon kis energiafogyasztással lehet végrehajtani.
A Microchip ehhez a tervezők rendelkezésére bocsát egy könnyen használható fejlesztési ökoszisztémát is, amellyel a fejlesztés különféle folyamatai felgyorsíthatók. A Microchip integrált fejlesztőkörnyezetei (Integrated Development Environment – IDE) támogatják mind a PIC, mind pedig az AVR mikrovezérlőket (az MPLAB® X a PIC, az Atmel Studio 7 az AVR-típusokhoz), továbbá konfigurációs és inicializáló eszközöket (az MCC [MPLAB Code Configurator] a PIC, az Atmel Start pedig az AVR MCU-k hoz használható), valamint programfejlesztési segédeszközöket (fejlesztő- és értékelőkártyákat, flashprogramozókat és hibakeresőket) kínál mindkét típuscsaládhoz. Ezenkívül a PIC16F1796-hoz és az ATtiny817-hez kibocsátott alkalmazástechnikai segédletekben minden szükséges információ megtalálható ahhoz, hogyan lehet egy ultrahangos távolságmérési vagy jelenlét-érzékelési funkciót teljes alkalmazássá fejleszteni.

 

További információk találhatók a weben az alábbi című dokumentumok letöltésével:

AVR42779: Core Independent Ultrasonic Distance Measurement with ATtiny817
Software example on start.atmel.com
ATtiny817 Datasheet
AN1536: Ultrasonic Range Detection with the PIC16F1769
PIC16F1769 Datasheet
Core Independent Peripherals (CIP) Overview

 

Szerző: Gregor Sunderdiek, üzletfejlesztési igazgató – MCU8 EMEA, Microchip Technology Inc.

  

www.microchip.com

 

Még több Microchip