Seeed Studio XIAO nRF52840 Sense での PDM マイクロフォンの使用方法
概要
Seeed Studio XIAO nRF52840 Sense には PDM(パルス密度変調)マイクロフォン が搭載されており、リアルタイムで音声データを受信し、音声認識に使用できます。ワイヤレス接続機能と FPU による優れた音声データ処理性能により、デバイスのリモート音声制御などの興味深い TinyML プロジェクトに最適です。
- Seeed Studio XIAO nRF52840 には、この PDM マイクロフォンモジュールは搭載されていません。
- PDM マイクロフォンは Seeed nrf52 mbed-enabled Boards Library を使用する際により良いパフォーマンスを発揮するため、これを強く推奨します。
この wiki では、このボードでの PDM マイクロフォンの使用 の基本を紹介し、2つの例を含みます:
- 生データの可視化:この例では、マイクロフォンからの生データをリアルタイムで可視化する方法を示します。
- 録音した音声の保存:この例では、マイクロフォンから録音した音声を SD カードに保存する方法を示します。
それでは、これらの例を探ってみましょう!
例 1:PDM マイクロフォンからの生データをリアルタイムで可視化
この例では、PDM マイクロフォンからの生データを シリアルモニター と シリアルプロッター でリアルタイムに可視化します。
前提条件
- ステップ 1. Arduino ライブラリを取得し、Seeed_Arduino_Mic ライブラリをダウンロード して zip ファイルとして保存します
- ステップ 2. Arduino IDE を開き、
スケッチ > ライブラリをインクルード > .ZIP形式のライブラリをインストール...
に移動し、ダウンロードした zip ファイルを開きます
例の実行
- ステップ 3.
ファイル > スケッチ例 > Seeed Arduino Mic > mic_serial_plotter
に移動して mic_serial_plotter を開きます
- ステップ 4. コードをアップロードし、シリアルモニター を開きます
コードをアップロードした後、Arduino ウィンドウの右上角にある シリアルモニター をクリックするまで、自動的に実行されません。
これで、上記のようにシリアルモニターに生のマイクロフォンデータがリアルタイムで表示されます!
生データの可視化
- ステップ 5.
ツール > シリアルプロッター
に移動して シリアルプロッター を開くと、生のマイクロフォンデータが波形グラフでリアルタイムに表示されます!
例2: マイクから録音した音声をSDカードに保存する
Seeed Studio XIAOシリーズと同様に、Seeed Studio XIAO nRF52840 SenseはSeeeduino Seeed Studio XIAO拡張ボードと完全に互換性があります。拡張ボードに取り付けることで、ボード上のSDカードモジュールを使用できます。拡張ボードを使用したくない場合は、SPIインターフェースを通じて別のSDカードモジュールを接続することもできます。
前提条件
- ステップ1. Seeed Studio XIAO nRF52840 SenseをSeeed Studio XIAO拡張ボードに取り付け、拡張ボードのSDカードスロットにSDカードを挿入します。
拡張ボードのライトが定期的に緑色に点滅している場合、接続が成功しています。
以前にSeeed_Arduino_Mic Libraryをすでにインストールしているため、この例では再度インストールする必要はありません。ただし、インストールしていない場合は、上記の例の手順に従ってください。
- ステップ2. Seeed_Arduino_FS Libraryをzipファイルとしてダウンロードします
注意: このライブラリはSDカードにアクセスしてデータを保存するために必要です。
例の実行
- ステップ3. Arduino IDEを開き、
Sketch > Include Library > Add .ZIP Library...
に移動して、ダウンロードしたzipファイルを開きます。
- ステップ4.
File > Examples > Seeed Arduino Mic > mic_Saved_OnSDcard
に移動してmic_Saved_OnSDcardを開きます。
- ステップ5. コードをアップロードし、シリアルモニターを開きます
データの保存
注意: コードをアップロードした後、Arduinoウィンドウの右上角にあるシリアルモニターをクリックするまで、自動的に実行されません。
これで音声データのサンプリングが開始され、5分間録音し、データが自動的にSDカードに保存されます。
このtest.9568.wavは5秒間の音声ファイルで、SDカードに保存されています。
音声データを再サンプリングしたい場合は、リセットボタンを押してからシリアルモニターを再度クリックしてサンプリングを開始してください。