1 poin oleh GN⁺ 2024-11-23 | 1 komentar | Bagikan ke WhatsApp
  • Mikrofon phased array

    • Mikrofon phased array 192 kanal ini menyediakan fungsi akuisisi data berbasis FPGA serta beamforming/visualisasi di GPU. Phased array memungkinkan aplikasi yang tidak dapat dilakukan mikrofon directional tradisional, seperti langsung mengubah arah setelah perekaman atau memfokuskan secara bersamaan pada ratusan ribu titik.
    • Semua desain tersedia sebagai open source:
      • perangkat lunak host
      • gateware FPGA
      • layout PCB dan skematik, komponen mekanis
  • Perangkat keras

    • Untuk membuat mikrofon phased array, diperlukan banyak mikrofon yang disusun dengan jarak lebar. Untuk array linear, jarak eksponensial antar mikrofon optimal untuk sinyal broadband.
    • Total biayanya sekitar $700.

    Lengan

    • Panjang setiap lengan ditentukan oleh batas manufaktur dan perakitan PCB. Dibuat di JLCPCB, dan panjang maksimum PCB 4 lapis adalah 570mm.
    • Mikrofon yang dipilih adalah mikrofon MEMS output digital termurah, dengan perbedaan karakteristik performa yang tidak besar.
    • Data dikeluarkan menggunakan PDM, dan mendukung DDR sehingga dua mikrofon dapat dimultipleks pada satu kabel.
    • Setiap lengan memiliki 8 mikrofon yang berbagi 4 jalur output, dan mencakup output buffer pada jalur input clock.
    • Yield PCB kurang baik, dan masalah yang paling umum adalah jalur clock mengalami short ke 3V3 atau ground.

    Hub

    • FPGA digunakan untuk akuisisi data karena dapat mengumpulkan banyak IO latensi rendah dan berkomunikasi melalui antarmuka berkecepatan tinggi.
    • Kartu Colorlight i5 digunakan karena memiliki IO yang cukup, harga murah, dan dua Ethernet PHY terintegrasi.
    • Hub mencakup rangkaian manajemen daya sederhana serta konektor papan lengan dan Ethernet.

    Desain mekanis

    • Lengan dipasang ke hub menggunakan sekrup M3, dan dirakit memakai standoff/nut pemasangan PCB.
    • Desain awal memiliki slot pada PCB lengan agar saling mengunci dengan PCB struktural, tetapi desain akhir membungkus bagian luar dengan MDF dan dipasang menggunakan cable tie.
    • Array mikrofon yang dipasang di dinding sensitif terhadap pantulan, sehingga digunakan acoustic foam untuk mengurangi refleksi.
  • Gateware

    • Tujuan utama gateware adalah mengirim data mentah ke komputer tanpa kehilangan.
    • Melakukan decimation dan filtering di FPGA memang mengurangi kecepatan transfer data, tetapi pengiriman data PDM mentah tetap dimungkinkan.

    Antarmuka PDM

    • Modul input PDM membagi clock sistem 50MHz dengan 16 untuk menghasilkan clock PDM 3.125MHz, lalu melatch 96 pin input setelah setiap edge clock.
    • Kecepatan datanya 600Mbps, atau 700Mbps jika termasuk header.

    Paketisasi

    • Paketisasi menggunakan buffer FIFO, dan hanya memulai paket saat ada cukup data di antrean sehingga ukuran paket tetap konstan.
    • Sebanyak 48 blok output PDM disertakan di setiap paket, dengan kecepatan transfer 715 Mbps.

    UDP streamer

    • Berkat proyek LiteEth, kompleksitas enkapsulasi UDP dan IP diabstraksikan sehingga mudah menghubungkan FIFO ke stream UDP.
  • Perangkat lunak

    Filter CIC

    • Setiap mikrofon menghasilkan sinyal 1-bit pada 3.125MHz, yang perlu dikurangi ke sample rate dan bit depth yang lebih masuk akal.
    • Filter CIC 4 tahap dengan decimation 16x digunakan untuk menurunkan sample rate menjadi 195kHz.

    Kalibrasi

    • Untuk kalibrasi array, speaker memutar white noise sambil digerakkan di depan array.
    • Relative delay antar mikrofon dihitung menggunakan cross-correlation berbasis FFT.
    • Posisi sumber dan posisi mikrofon dioptimalkan untuk memperoleh model sistem terbaik.

    Beamforming

    • Beamforming adalah metode untuk memproses input mikrofon mentah guna menghasilkan respons directional.
    • Sinyal diproses dengan mengimplementasikan delay di domain frekuensi.
    • Diimplementasikan beamformer 3D near-field dan beamformer 2D far-field.
    Beamforming 3D near-field
    • Dilakukan pada grid voxel 5cm, dan mencapai kecepatan pembaruan 12Hz di RTX 4090.
    • Divisualisasikan menggunakan VisPy.
    Beamforming 2D far-field
    • Menggunakan grid piksel 512x512, dan mencapai kecepatan pembaruan 12Hz.
    Audio directional
    • Beamformer delay-and-sum domain waktu diimplementasikan untuk memungkinkan perekaman audio directional.

    Perekaman

    • Data dari array mikrofon berupa paket UDP, dan dapat direkam dengan alat seperti tcpdump.
    • Kekurangan implementasi perekaman ini adalah laju data output sangat tinggi.
  • Langkah berikutnya

    • Proyek ini pada dasarnya sudah selesai, dan meskipun tidak ada rencana pekerjaan tambahan ke depan, masih ada beberapa kemungkinan pengembangan.
    • Menggunakan algoritma beamforming yang lebih maju
    • GUI yang lebih baik yang menggabungkan semua fungsi
    • Menggabungkan beamforming yang dapat didiferensiasikan dengan model jaringan saraf

1 komentar

 
GN⁺ 2024-11-23
Opini Hacker News
  • Disebutkan bahwa proses mengoptimalkan kecepatan suara untuk mendapatkan model optimal sistem bekerja seperti termometer yang sangat kompleks

    • Diingatkan bahwa semua sensor adalah sensor suhu, dan beberapa di antaranya juga mengukur hal lain
  • Pernah mengerjakan proyek menggunakan 4 mikrofon untuk menemukan lokasi kelelawar dan mengidentifikasi spesiesnya

    • Digunakan untuk meneliti dampak lingkungan dari pemasangan turbin angin
  • Ada pertanyaan mengapa menggunakan PDM alih-alih mikrofon TDM I2S

    • ICS-52000 murah dan ada board yang dapat menghubungkan beberapa mikrofon
    • Jika menggunakan hardware I2S seperti Jetson, 16 mikrofon dapat dihubungkan
  • Mengemukakan keinginan untuk menggabungkannya dengan array speaker ultrasonik untuk penggunaan medis

    • Membayangkan bentuk yang menggabungkan high-intensity focused ultrasound (HIFU) dengan umpan balik real-time
  • Disebutkan bahwa demo kamera akustik yang mengesankan bisa dilihat di YouTube

    • Menunjukkan bahwa perusahaan besar seperti FLIR mulai masuk ke bidang ini
    • Mengatakan bahwa kemampuan merekam percakapan di ruang publik lalu "memperbesar"-nya kemudian terasa menarik sekaligus menyeramkan
  • Berharap fitur audio terarah berkualitas tinggi hadir di perangkat mobile

    • Berpikir bahwa pengurangan kebisingan dan deteksi arah akan sangat membantu perangkat bantu dan penerjemah
    • Mengusulkan akan bagus jika semua ponsel di sekitar bisa bekerja sama untuk menyediakan audio berkualitas tinggi
  • Menyebut sistem akustik berbentuk bola yang digunakan Boeing pada prototipe 787

    • Menjelaskan bahwa dalam situasi bising seperti pesawat, suara bisa terdengar seolah berasal dari lokasi lain
  • Berpikir bahwa proyek untuk memisahkan suara berdasarkan lokasi akan sangat keren

    • Konsepnya mirip kamera light field yang memungkinkan fokus gambar diedit
  • Mengungkapkan keterkejutan pada PCB berbentuk "lengan" yang panjang

    • Mengusulkan bahwa akan lebih baik menempatkan tiap sensor pada PCB terpisah dan menangani sisanya dengan kalibrasi
  • Menyebut bahwa teknologi seperti ini makin banyak digunakan pada drone

    • Digunakan untuk mendeteksi drone untuk tujuan militer atau agar perusahaan pengiriman drone dapat mendeteksi pesawat dengan biaya rendah