Wielokanałowy mikrofon cyfrowy

Wielokanałowy mikrofon cyfrowy

Dostępność procesorów sygnałowych, rozwój systemów rozpoznawania głosu, sztucznej inteligencji, systemów aktywnej redukcji hałasu – te czynniki zachęcają do budowy i eksperymentów z systemami sterowanymi głosem. Jednak żaden tego typu system nie obędzie się bez mikrofonu dobrej jakości. Podłączenie jednego lub dwóch mikrofonów jest łatwe, ale nie zawsze wystarczające. Opisany moduł umożliwia podłączenie, np. do procesora DSP do ośmiu mikrofonów poprzez szeregowy interfejs audio pracujący w trybie wielokrotnym TDM.

Podstawowe parametry:
  • jeden moduł umożliwia dołączenie 8 mikrofonów,
  • do jednej magistrali sterującej można dołączyć do 4 modułów,
  • łączna maksymalna liczba mikrofonów (4 moduły) wynosi 32,
  • komunikacja i sterowanie poprzez magistrale TDM i I2C,
  • sygnały TDM/I2C zgodne z logiką 3,3 V,
  • zasilanie 3,3…5 V.

Urządzenie umożliwia połączenie i kontrolę maksymalnie czterech modułów na jednej magistrali sterującej I2C, co razem daje 32 obsługiwane mikrofony. Przy tej ilości nie jest problemem zbudowanie np. mikrofonu matrycowego o dowolnie kształtowanej charakterystyce kierunkowej. Urządzenie podzielone jest na dwa bloki, pierwsza płytka zawiera konwerter ADAU7118, druga – cyfrowe mikrofony z interfejsem PDM typu MP34DT05TR.

Moduł konwertera PDM/TDM

Konwerter PDM/TDM bazuje na układzie typu ADAU7118, którego budowę wewnętrzną pokazano na rysunku 1, a schemat modułu konwertera pokazano na rysunku 2.

Rysunek 1. Budowa ADAU7118 (za notą Analog Devices)
Rysunek 2. Schemat modułu konwertera

Układ U1 (ADAU7118) odpowiada za translację sygnałów cyfrowych z mikrofonów PDM na standard TDM. Pracuje na magistrali szeregowej audio jako urządzenie slave, wymaga więc dostarczenia zegarów FSYNC oraz BLCK (złącze TDM) z portu szeregowego DSP lub SoC. ADAU7118 wymaga spełnienia minimalnej zależności: BCLK=<64 FCLK, ale obsługuje też krotności 128, 192, 256, 384, 512. Z sygnałów tych generowany jest przebieg zegarowy PDMCK (PCM_CLKx)=64 FSYNC taktujący mikrofony, krotność PDM CLK można zmienić podczas konfiguracji układu, aby zapewnić częstotliwość zegara transmisji PDM w zakresie dopuszczanym przez mikrofon.

Układ posiada dwa kanały generatora zegarowego, które mogą zostać niezależnie wyłączone w celu obniżenia poboru mocy, gdy nie wszystkie mikrofony są dołączone, np. w trybie TDM4, I2S. Interfejs wejściowy PDM posiada cztery dwukanałowe porty PDDT0...3 (PDMDAT0...3), do podłączenia maksymalnie ośmiu mikrofonów. Układ ADAU7118 umożliwia elastyczną konfigurację przyporządkowania slotów TDM do kanałów PDM.

Moduł zasilany jest napięciem 3,3 V ze stabilizatora LDO U2 typu ADM7160. Do złącza TDM doprowadzone są wszystkie sygnały TDM/I2C zgodne z logiką 3,3 V oraz zasilanie 3,3...5 V.

Konfiguracja

Pełna konfiguracja układu ADAU7118 odbywa się poprzez magistralę I2C, adres bazowy ustalany jest wyprowadzeniem ADR/CFG i położeniem zwory za szpilkach oznaczonych ADR. Zwarcie wyprowadzenia ADR/CFG:

  • do masy (szpilki ADR zwora 4-6), ustala adres = 0010100,
  • do VCC (szpilki ADR zwora 2-4) adres = 0010111,
  • poprzez rezystor 47 kV do masy (szpilki ADR zwora 3-5) adres = 0010101,
  • poprzez rezystor 47 kV do VCC (szpilki ADR zwora 1-3) adres = 0010110.

Umożliwia to współpracę do czterech ADAU7118 ma jednej magistrali I2C. Dla zapewnienia komunikacji szpilki oznaczone SDA i SCL muszą posiadać założone zwory zwierające wyprowadzenia 3-4.

W aplikacjach gdzie nie jest wymagana nietypowa konfiguracja ADAU7118 dopuszczany jest tryb pracy samodzielnej wymuszany pozostawieniem nie podłączonego wyprowadzenia ADR/CFG (usunięte wszystkie zwory ze szpilek ADR). Przy konfiguracji sprzętowej dostępne są tryby TDM4/6/8:

  • TDM4 wybieramy zwierając szpilki SDA i SCL do zasilania VCC (zwora 1-2),
  • TDM6 wybieramy zwierając szpilki: SDA do VCC (zwora 1-2) i SCL do masy (zwora 5-6),
  • TDM6 w trybie wysokiej wydajności buforów: SDA i SCL do masy (zwora 5-6),
  • TDM8 wybieramy zwierając szpilki: SDA do masy (zwora 5-6) i SCL do VCC (zwora 1-2).

ADAU7118 obsługuje też dwukanałową konwersję PDM/I2S, ale użycie jej jest nieekonomiczne, gdyż prościej jest to zrealizować na układzie ADAU7002 opisanym w kursie AudioDSP cz. 6. Sprzętowy tryb TDM8 pozwala na najprostsze połączenie konwertera z DSP, przebiegi magistrali szeregowej w trybie TDM8 pokazano na rysunku 3.

Rysunek 3. Przebiegi magistrali w trybie konfiguracji sprzętowej TDM8 (za notą Analog Devices)

Moduł mikrofonów

Z płytką konwertera PDM/TDM, współpracuje moduł mikrofonów PDM, którego schemat pokazano na rysunku 4. Zawiera osiem mikrofonów MP34DT05. Pracują one parami 1/2, 3/4, 5/6, 7/8. Mikrofony MIC1...4 taktowane są zegarem PDCK0, MIC5...8 zegarem PDCK1. Płytka dopuszcza mechaniczne rozdzielenie par mikrofonów w celu montażu uwzględniającego wymogi aplikacji np. detekcja źródła dźwięku. Mikrofony połączone są z płytką konwertera możliwie krótkimi przewodami, złączami JST 1,00 mm. Przy dłuższych połączeniach konieczne jest zastosowanie przewodów w ekranie (częstotliwość zegarów do 3 MHz).

Rysunek 4. Schemat modułu mikrofonów

Montaż i uruchomienie

Konwerter i mikrofony zmontowane są na dwustronnych płytkach drukowanych. Rozmieszczenie elementów pokazano na rysunku 5, oraz 6a i 6b.

Rysunek 5. Schemat PCB i rozmieszczenie elementów, moduł konwertera
Rysunek 6a. Schemat PCB i rozmieszczenie elementów, moduł mikrofonów, strona TOP PDM_TDM_MicBRD
Rysunek 6b. Schemat PCB i rozmieszczenie elementów, moduł mikrofonów, strona BOTTOM

Montaż jest klasyczny i nie wymaga opisu, należy jednak zachować ostrożność przy montażu delikatnych obudów mikrofonów. Zmontowane moduły pokazano na fotografii tytułowej.

Aby przetestować moduł w praktyce, użyłem płytkę STK_ADAU1442 – Mega DSP opisaną w EP3/14 oraz moduł wyjść analogowych z EP10/14. Interfejs cyfrowy audio modułu podłączony jest do pierwszego portu szeregowego w gnieździe SDI02 (sygnały SDATAIN0 – TDM, LRCK0 – FSYNC, BCLK0 – BCK, V33D – VCC, GND – GND), interfejs I2C podłączony jest do gniazda programatora I2C, użyty kwarc XT=12,288 MHz (fs=48 kHz), zwory w położeniu domyślnym 256 fs. Do testów przygotowano projekt PDM8_Test1442, którego schemat pokazano na rysunku 7. Projekt dostępny jest w materiałach dodatkowych.

Rysunek 7. Schemat aplikacji testowej PDM8_Test1442

Aplikacja odczytuje dane z interfejsu szeregowego pracującego w trybie TDM8, w każdym dekodowanym kanale usuwana jest składowa stała i mierzony jest poziom sygnału. Następnie parami sygnały doprowadzone są do multipleksera. Do multipleksera doprowadzony jest też sygnał generatora testowego i miks sygnałów mikrofonów MIC1, 3, 5, 7 i MIC2, 4, 6, 8. Po regulacji poziomu, sygnał wysyłany jest na port wyjściowy I2S a stąd do pierwszego kanału karty wyjść audio w celu odsłuchu. ADAU7118 jest konfigurowany przez I2C z SigmaStudio. Schemat połączeń USBi pokazano na rysunku 8.

Rysunek 8. Konfiguracja USBi

Konfigurację testową dla układu taktowania ADAU7118 pokazano na rysunku 9, a dla interfejsu szeregowego na rysunku 10.

Rysunek 9. Konfiguracja taktowania ADAU7118
Rysunek 10. Konfiguracja portu szeregowego ADAU7118

Odpowiadającą ustawieniom portu szeregowego ADAU7118 konfigurację interfejsu IO dla ADAU1442 pokazuje rysunek 11.

Rysunek 11. Konfiguracja interfejsu IO dla ADAU1442

Pozostałe ustawienia DSP zostaną zmodyfikowane po załadowaniu aplikacji. Po uruchomieniu aplikacji należy załączyć wskaźniki poziomu i sprawdzić, czy po zbliżeniu źródła sygnału do mikrofonów będą aktywne, (uwaga mikrofony w DSP nie są zmapowane w kolejności 1...8). Odsłuch sygnału z poszczególnych par i miksu możliwy jest po wyborze kanału multiplekserem i podłączeniu wyjścia OUT1 do wzmacniacza (uwaga na sprzężenia). W podobny sposób można przetestować ustawienia ADAU7118 w trybie konfiguracji sprzętowej i dla innego współpracującego układu.

Adam Tatuś, EP

Artykuł ukazał się w
Czerwiec 2020
Zobacz też
Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik lipiec 2020

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio lipiec 2020

Świat Radio

Magazyn użytkowników eteru

APA - Automatyka Podzespoły Aplikacje lipiec 2020

APA - Automatyka Podzespoły Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna lipiec 2020

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Praktyczny Kurs Elektroniki 2018

Praktyczny Kurs Elektroniki

24 pasjonujące projekty elektroniczne

Elektronika dla Wszystkich lipiec 2020

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów