https://www.seeedstudio.io/ReSpeaker-Mic-Array-v2.0-p-3053.htmlwww.seeedstudio.io
こちらのセンサーです。
microUSBでとりあえず電源を入れてみると光ります。
マイクが4つついていて、音声を認識すると真ん中が赤く光り、周囲の12個のLEDは音の発信源を認識してそちらの方向のLEDだけが光ります。
学会発表で使おうと思って買ったのですが、ただ電源入れただけで思いの外かっこいい…笑
で、本題。
音がどの角度から鳴っているかをとろう
こちらのセンサーを買った目的は、
音を発する方向をとりたかったから
なのです。
こちらに公式ドキュメントがあります。
これのDOA(Direction of Arrival)のところを見てみましょう。
もうそのままやればできちゃいます。丁寧な公式ドキュメントがあって感謝。
ちなみに私はMacですのでご承知を。
まずはGit Cloneします。
git clone https://github.com/respeaker/usb_4_mic_array.git
これで、ホームディレクトリにusb_4_mic_arrayが出来ます。
cd usb_4_mic_array
で、そのディレクトリに移動します。
で、次にFinderでusb_4_mic_arrayを見ます。
VSCodeでもなんでもいいのでエディタで
そのディレクトリの中に、DOA.pyというファイルを作ります。
中身はこれ。
from tuning import Tuning import usb.core import usb.util import time dev = usb.core.find(idVendor=0x2886, idProduct=0x0018) #print dev if dev: Mic_tuning = Tuning(dev) while True: try: print Mic_tuning.direction time.sleep(1) except KeyboardInterrupt: break
はい。完璧。
で、次はもう動かすのみ。
ReSpeaker Mic Array v2.0をMacに繋いだ状態で、
sudo python doa.py
をすれば、動きます。
いやエラー出るんですけど
ですよね、想定内です。
Traceback (most recent call last): File "doa.py", line 1, in <module> from tuning import Tuning File "/Users/xxgodmoonxx/usb_4_mic_array/tuning.py", line 5, in <module> import usb.core ImportError: No module named usb.core
みたいな感じのエラー出ますよね。わかります。
解決方法も実は公式ドキュメントに書いてありまして、
公式ドキュメントのFAQのQ2: ImportError: No module named usb.coreというところを見ましょう。
答えはA2: Run sudo pip install pyusb to install the pyusb.です。
sudo pip install pyusb
としてあげましょう。
で、pyusbがダウンロードされます。
で、もう1回
sudo python doa.py
としてあげましょう。
こんな感じで360度どこからの音を感知してるかとれます。
なかなかに正確にとってくれます。