概要
弊社製品 無線LAN対応サウンドモジュール「WSD001A-J」の組込例をご紹介いたします。今回、WSD001A-Jと音量センサーを組み合わせたデモシステムを構築いたしました。センサーを設置した付近の音量が閾値を超えると、WSD001A-Jでアラート音が鳴ります。 IoTプロトコルのMQTTとWebSocketを使用し、センサーが取得した情報をスマートフォンなどのブラウザ画面に定期的に表示、音量が閾値を超えた時点でブラウザ画面にアラートメッセージを表示する機能も実装しています。
デモシステムで使用したもの
◆ ハードウェア
- Linuxサーバー
- 音量センサー(AE-MICAMP)
- Arduino Nano
- ESP-WROOM-02
- WSD001A-J
◆ ソフトウェア(サーバ側)
- Webサーバー(Apache)
- MQTT / WebSocketサーバー(Mosquitto)
- PHP
全体構成
処理の流れ
1.Linuxサーバー側のPHPアプリケーションの設定画面で音量の閾値を設定します。
2.Arduino Nanoが音量センサー情報を取得し、ESP-WROOM-02に送信します。
3.ESP-WROOM-02はWi-Fi通信で音量センサー情報をLinuxサーバーに送信します。
4.Linuxサーバー側で受信した音量センター情報が1で設定した閾値を超えたタイミングで、LinuxサーバーからWSD001A-Jに再生コマンドを送信します。具体的にはPHPで以下のようなコードを記述してLinuxサーバーからWSD001A-JにHTTPリクエスト送信しています。
cURL("http://192.168.1.104/play?notice=1");
※ 192.168.1.104はWSD001A-JのIPアドレス
5.WSD001A-Jでは内蔵音またはmicroSDカードに保存されたアラート音が鳴ります。 Linuxサーバー側はMQTTとWebSocketをバインドさせてWebブラウザ画面にも音量センサー情報を送信します。Webブラウザ画面ではアラートメッセージが表示されます。
最後に
気づいたら隣近所に迷惑をかけるくらい子どもたちが騒いでいたという経験はありませんか? 音量センサーで部屋の騒音を監視、音でお知らせしてくれる製品があったらいいな、と思い開発しました。WSD001A-JはWi-Fiで通信を行うので、電波の届く場所であれば、WSD001A-Jとセンサーを別々の場所に設置することもできます。例えば2階子ども部屋に音量センサー、1階リビングにWSD001A-Jを設置。子ども部屋の騒音が一定以上になると、音で親に知らせるという使い方はどうでしょうか?スマートフォンなどでの目視確認に加え、音による通知を取り入れることで、作業をしながらでも状態の変化に気づくことができます。今回は音量センサーを採用しましたが、世の中には様々なセンサーが存在します。WSD001A-Jとセンサーと組み合わせることで、可能性が大きく広がります。あなたもWSD001A-Jで何か面白い商品を開発してみませんか?