Mikrofon MEMS MP34DT01-M

Mikrofon MEMS MP34DT01-M
Pobierz PDF Download icon

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.

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

Artykuł ukazał się w
Elektronika Praktyczna
listopad 2018
DO POBRANIA
Pobierz PDF Download icon

Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik kwiecień 2021

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio kwiecień - maj 2021

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka Podzespoły Aplikacje kwiecień 2021

Automatyka Podzespoły Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna kwiecień 2021

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich maj 2021

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów