wersja mobilna

Mikrofon MEMS MP34DT01-M

Numer: Listopad/2018

Termin MEMS jest kojarzony z technologią wytwarzania układów z elementami mechanicznymi o wymiarach rzędu kilkudziesięciu mikrometrów. Są to głównie czujniki wielkości nieelektrycznych: ciśnienia, przyśpieszenia, położenia. Są to również miniaturowe pompy i sensory używane w medycynie do celów diagnostycznych, ale też generatory drgań. Jednym z urządzeń MEMS, które zyskały sobie sporą popularność są mikrofony akustyczne. Mikrofony wykonane w tej technologii mają małe wymiary (istotnie mniejsze niż elektretowe odpowiedniki), są przy tym tanie i niezawodne.

Pobierz PDF

Pierwszym istotnym zastosowaniem, które się nasuwa jest wykorzystanie mikrofonów w smartfonach. Wspomniane już małe wymiary i niska cena powodują, że idealnie nadają się do urządzeń konsumenckich, w których istotna jest mała wysokość obudowy. Przyjęło się , że im cieńszy smartfon, tym lepszy. Dzięki miniaturowym wymiarom można też umieścić kilka mikrofonów w różnych miejscach obudowy i za pomocą algorytmów przetwarzania DSP poprawić jakość odbieranego sygnału akustycznego. Mikrofony MEMS można spotkać też w innych urządzeniach: tabletach, inteligentnych zegarkach (smartwatch) i urządzeniach sterowanych głosem.

Mikrofon MP34DT01-M

Układ MP34DT01-M jest mikrofonem wykonanym w technologii MEMS przez firmę STM i pracuje w paśmie akustycznym. Użyta technologia powoduje, że ma subminiaturowe wymiary i jest energooszczędny. Najważniejsze parametry to :

Pojedyncze napięcie zasilania.

Mały pobór mocy.

Charakterystyka dookólna.

Dynamika (stosunek sygnał/szum) S/N: 61 dB.

Czułość: 26 dbFS.

Maksymalny poziom sygnału akustycznego: 120 dBSPL.

Interfejs cyfrowy: PDM.

Obudowa SMD typu HCLGA (rysunek 1).

Szybkie przetestowanie działania mikrofonu umożliwia zestaw ewaluacyjny składający się z trzech elementów (fotografia 2):

Płytki ewaluacyjnej X-NUCLEO-CCA02M1. Ta płytka ma również wyprowadzenia w standardzie Arduino UNO i można jej użyć w połączeniu modułem mikrokontrolera sprzętowo zgodnym z tym standardem.

Płytki ewaluacyjnej z mikrokontrolerem. Możliwe jest użycie jednego z trzech typów płytek z różnymi mikrokontrolerami: NUCLEO-F401RE, NUCLEO-F072RB i NUCLEO-L075R8.

Bezpłatnego oprogramowanie testowego X-CUBE-MEMSMIC1.

Zestaw X-NUCLEO-CCA02M1 ma zamontowane na stałe 2 mikrofony MP34DT01-M, ale istnieje możliwość dołączenia kolejnych mikrofonów za pomocą odpowiednich złącz zamontowanych na płytce. Przez te złącza można doprowadzić do układu mikrofony umieszczone na płytkach ewaluacyjnych STEVAL-MKI155 lub STEVAL-MKI129 (rysunek 3). Ponieważ nie dysponowałem płytkami rozszerzeń, to w trakcie testów nie były używane.

Oprogramowanie testowe X-CUBE-MEMSMIC1 można pobrać ze strony STM (rysunek 4). Zawiera projekty dla IDE: KEIL, IAR i SW4STM32 i modułów mikrokontrolerów NUCLEO-F401RE, NUCLEO-F072RB lub NUCLEO-L053R8. Projekty zawierają kompletne pliki źródłowe w języku C i można je modyfikować zależnie od potrzeb. W pakiecie X-CUBE-MEMSMIC1 zawarto też skompilowane pliki wynikowe dla każdej z wyżej wymienionych płytek NUCLEO.

X-CUBE-MEMSMIC1 zawiera trzy oddzielne aplikacje: Acoustic_ BF, Acoustic_SL i Microphones_Straming. Dwie pierwsze wykorzystują zaawansowane algorytmy przetwarzania cyfrowych sygnałów reprezentujących sygnały audio z mikrofonów MEMS, a trzecia jest implementacją cyfrowego mikrofonu stereofonicznego. Zamieszczone w X-CUBE-MEMSMIC1 projekty zawierają gotowe (prekompilowane) i konfigurowalne biblioteki przetwarzania sygnałów.

Aplikacja Acoustic_BF jest implementacją algorytmu adaptacyjnego przetwarzania w czasie rzeczywistym sygnałów w formacie PCM lub PDM uzyskanych z dwóch, lub czterech mikrofonów MEMS. W wyniku przetwarzania tych sygnałów jest tworzony wirtualny mikrofon kierunkowy wskazujący w określonym kierunku w przestrzeni. Możliwość konfiguracji działania algorytmów pozwala na znalezienie najbardziej odpowiedniego kompromisu pomiędzy jakością uzyskanego sygnału audio, a potrzebnymi zasobami użytego mikrokontrolera. Musi być znana odległość pomiędzy mikrofonami. Ze względu na wymagania algorytmów aplikację Acoustic_BF można uruchomić tylko na module NUCLEO-F401RE z mikrokontrolerem mającym wbudowaną jednostką FPU. Na rysunku 5 pokazano przykładowa charakterystyka wirtualnego mikrofonu kierunkowego i rozmieszczenie mikrofonów MEMS.

Niebieski obszar to przybliżenie typowej kierunkowej charakterystyki kardioidalnej. Ta charakterystyka jest kształtowana na drodze programowej. Cyfrowy sygnał akustyczny z jednego z mikrofonów jest opóźniany i potem sumowany z nieopóźnionym sygnałem z drugiego mikrofonu (rysunek 6). Wartość tego opóźnienia zależy do odległości pomiędzy mikrofonami i jest wyliczana z zależności opóźnienie=d/v, gdzie „d” to odległość pomiędzy mikrofonami, a „v” prędkość dźwięku w powietrzu. Więcej informacji na temat działania biblioteki implementacji mikrofonu kierunkowego o charakterystyce kardioidalnej z cyfrowych sygnałów pochodzących z dwóch mikrofonów MEMS typu MP34DT01-M można znaleźć w dokumencie UM2214 „Getting started with AcousticBF real-time beam forming middleware”.

Aplikacja AcousticSL zawiera implementację algorytmu lokalizacji źródła dźwięku w czasie rzeczywistym. Są tu wykorzystywane sygnały cyfrowe z dwóch lub czterech mikrofonów MEMS po to, by oszacować położenie w przestrzeni głównego źródła dźwięku. Wykrywanie położenia opiera się on na trzech różnych algorytmach DOA (Direction Of Arrival):

Algorytm korelacji krzyżowej XCORR. Jest wykonywany w dziedzinie czasu, używa mniejszych zasobów mikrokontrolera, ma niższą rozdzielczość i wymaga umieszczenia mikrofonów w większych odległościach od siebie.

Algorytm GCC-PHAT. Jest wykonywany w domenie częstotliwości, używa stosunkowo dużych zasobów mikrokontrolera, ma wysoką rozdzielczość.

Algorytm BMPH. Jest wykonywany w domenie częstotliwości, zapotrzebowanie na zasoby mikrokontrolera mieszczą się pomiędzy wymaganiami algorytmów XCORR i GCC-PATH.

Rozmieszczenie mikrofonów dla aplikacji Acoustic SL zostało pokazane na rysunku 7. W wypadku algorytmu XCORR odległość pomiędzy mikrofonami musi umożliwiać wykonanie opóźnienia równego czasowi odpowiadającemu okresowi próbkowania. W algorytmie GCC-PATH teoretycznie nie ma ograniczeń odległości. Więcej informacji na temat aplikacji AcousticSL można znaleźć w dokumencie UM2212 „Getting Started With Acousticsl Real-Time Sound Source Localization Middleware”.

Aplikacja Microphones_Straming jest przeznaczona do szybkiego testowania działania modułu ewaluacyjnego X-NUCLEO-CCA02M1 w połączeniu z jedną z dedykowanych płytek NUCLEO. W naszym wypadku będzie to NUCLEO-
-F401RE. Po wgraniu oprogramowania do pamięci mikrokontrolera zestaw będzie można połączyć z komputerem przez złącze USB. Będzie on wtedy pracował jak standardowy, wielokanałowy mikrofon USB. Do testów prawidłowego działania mikrofonu wykorzystamy popularny bezpłatny program Audacity.

Zaczynamy od wgrania do modułu mikrokontrolera piku z rozszerzeniem .Hex skompilowanego projektu zawartego w katalogu STM32CubeExpansion_MEMSMIC1_V3.0.0/Projects/Multi/Applications/Microphone_Streaming/Binary/STM32F401RE-Nucleo. Po zaprogramowaniu mikrokontrolera łączymy zestaw z komputerem przez złącze USB zamontowane na module X-NUCLEO-CCA02M1 (fotografia 8). Jeżeli mikrokontroler został prawidłowo zaprogramowany, to po podłączeniu do komputera moduł zostanie wykryty jako stereofoniczny mikrofon cyfrowy. System Windows pobierze przez Internet potrzebne sterowniki i w Menadżerze Urządzeń, w zakładce „Kontrolery dźwięku, wideo i gier” zostanie wyświetlone urządzenie STM32 AUDIO Streaming in FS Mode, jak to zostało pokazane na rysunku 9.

Jak już wspomniałem, do dalszych testów wykorzystamy Audacity. Ten pakiet programowy można pobrać w wersji instalacyjnej i w wersji przenośnej (portable), działającej bez instalacji. Po uruchomieniu programu musi on znaleźć (wykryć) nasz mikrofon. Wykonujemy polecenie Transportuj à Skanuj ponownie urządzenie dźwiękowe (rysunek 10). Wykryty mikrofon powinien zostać wyświetlony na liście MME jako Mikrofon (STM32 AUDIO Streaming (rysunek 11). W trakcie nagrywania trzeba ustawić poziom sygnału z mikrofonu na wartość zapobiegającą przesterowaniu toru i powstawaniu zniekształceń, jak na rysunku 12. Wyregulowany tor pozwala na nagrywanie stereofonicznego dźwięku dobrej jakości. Pokazany tu tor audio jest przykładem na łatwą i tanią implementację mikrofonu cyfrowego z interfejsem USB.

Tomasz Jabłoński, EP

Pozostałe artykuły

Dwurdzeniowe dsPIC33CH w praktyce

Numer: Czerwiec/2019

Dzięki uprzejmości firmy Microchip stałem się posiadaczem zestawu dsPI33CH Curiosity Development Board (fotografia tytułowa). Jest to testowa platforma mająca na pokładzie opisywany już w "Elektronice Praktycznej" dwurdzeniowy mikrokontroler dsPIC33CH128MP508. Wielordzeniowe mikroprocesory nie są czymś niezwykłym, ale w przypadku mikrokontrolerów takie rozwiązania dopiero zaczynają się pojawiać.

Nowości od Cypressa

Numer: Czerwiec/2019

Układy PSoC (programowalny system na chipie) to rodzina scalonych mikrokontrolerów firmy Cypress Semiconductor. Układy te zawierają w sobie rdzeń procesora oraz zespół zintegrowanych, konfigurowalnych urządzeń peryferyjnych - analogowych i cyfrowych - łączonych ze sobą za pomocą programowalnej macierzy połączeń dla sygnałów mieszanych - tak analogowych, jak i cyfrowych.

LoRaWAN - moduł ATSAMR34-XPro

Numer: Maj/2019

LoRaWAN jest radiowym protokółem komunikacyjnym, który pozwala łączyć się z Internetem urządzeniom IoT wyposażonym w łącze radiowe. Połączenie nie jest realizowane wprost, ale za pomocą specjalnych stacji bazowych nazywanych koncentratorami. Bardzo ważną cechą standardu jest możliwość uzyskania dużego zasięgu liczonego w kilometrach przy bardzo ograniczonej mocy nadawania (20 dBm),a co za tym idzie przy małym poborze ...

Mikrokontrolery STM32G0

Numer: Kwiecień/2019

Mikrokontrolery to elementy, które są używane w zastosowaniach, o których kiedyś nawet nie pomyślano. Niska cena powoduje, że wykorzystuje się je na szeroką skalę. Przez długi czas najtańsze były proste jednostki 8-bitowe, ponieważ ich struktury półprzewodnikowe zajmowały relatywnie małe powierzchnie krzemu. Wydajne mikrokontrolery 16-bitowe, a następnie 32-bitowe oferowały coraz większe możliwości, ale jednocześnie ...

Nowe mikrokontrolery Microchip DSC z rodziny dsPIC33CH

Numer: Luty/2019

Mikrokontrolery z rodziny dsPIC33 są przeznaczone głównie do stosowania w układach automatyki i sterowania, wymagających wykonywania złożonych algorytmów. Wydajny, 16-bitowy rdzeń RISC jest zintegrowany z jednostką DSP zoptymalizowaną do szybkiego wykonywania algorytmów przetwarzania cyfrowego. Takiemu połączeniu producent nadał nazwę Digital Signal Controllers - DSC.

Mobilna
Elektronika
Praktyczna

Elektronika Praktyczna

Lipiec 2019

PrenumerataePrenumerataKup w kiosku wysyłkowym

Elektronika Praktyczna Plus

lipiec - grudzień 2012

Kup w kiosku wysyłkowym