OKGoogleのBluetooth音声制御アプライアンス
コンポーネントと消耗品
> | | × | 1 | |
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
このプロジェクトについて
私のプロジェクトは、GoogleアシスタントとBluetoothを使用して家電製品を制御することです。音声制御のホームオートメーションプロジェクトについてウェブを検索していたときに、ほとんどのプロジェクトがWiFiに基づいていることがわかったので、このプロジェクトを作成することにしました。 GoogleHomeとAmazonEchoがどのように家電製品を制御しているかに関する情報を収集しましたが、テクノロジーがどのように進化したかを知って本当に驚きました。 WiFiベースのホームオートメーションに関する情報を収集した後、Bluetoothベースのホームオートメーションに関する情報の収集を開始しました。ウェブから情報を掘り起こしていると、突然思い浮かびました。 「Bluetoothホームオートメーションの場合、ユーザーがコマンドを発声するたびにアプリケーションのボタンをクリックする必要があるのはなぜか」という考えでした。ボタンがGoogleSpeechRecognizerとGoogleText-to-Speechをアクティブにするためのトリガーとして機能していたことを私は知っています。そこで、ユーザーがボタンをまったく押す必要がなく、すべてが自動化されるプロジェクトを構築することを決心しました。後でプロジェクトに取り組み始めたとき、Google HomeはBluetoothスピーカーに接続して音楽を再生できるが、Bluetoothベースの家電製品には接続できないことを知りました。そこで、Androidアプリのボタンを削除するために、音声起動のトリガースイッチであるGoogleアシスタント(「OKGoogle」)を使用して、アプリとGoogle SpeechRecognizerおよびGoogleText-to-Speechをアクティブにしました。
私がどのようにそれを作ったかを知るためにこのビデオを見てください:
ブロック図: <図>
回路図: <図> コード
- 「OKGOOGLE」を使用したBluetooth音声制御アプライアンスのコード
「OKGOOGLE」 Arduino を使用したBluetooth音声制御アプライアンスのコード
'OK GOOGLE' String voice; #define FAN 10#define TUBELIGHT 9#define BULB 8void setup(){//セットアップコードをここに配置して1回実行するBluetooth音声制御アプライアンス:Serial.begin(9600); pinMode(FAN、OUTPUT); pinMode(TUBELIGHT、OUTPUT); pinMode(BULB、OUTPUT); analogWrite(TUBELIGHT、255); //最初はLEDをオフにする必要があるため、analogWrite(FAN、255); digitalWrite(BULB、HIGH);} void loop(){while(Serial.available())//読み取ることができるバイトがあるかどうかを確認します{delay(10); //物事を安定させるために遅延が追加されましたcharc =Serial.read(); //シリアル読み取りを実行しますif(c =='#'){break;} //単語voice + =c;の後に#が検出されたらループを終了します。 //音声の速記=音声+ c} if(voice.length()> 0){Serial.println(voice); // ----------複数のピン/ LEDを制御---------- // if(voice =="tubelight")// {analogWrite(TUBELIGHT、0); analogWrite(FAN、255); digitalWrite(BULB、HIGH); } else if(voice =="green")// {analogWrite(TUBELIGHT、255); analogWrite(FAN、255); digitalWrite(BULB、HIGH); } else if(voice =="fan")// {analogWrite(TUBELIGHT、255); analogWrite(FAN、0); digitalWrite(BULB、HIGH); } else if(voice =="bulb")// {analogWrite(TUBELIGHT、0); analogWrite(FAN、255); digitalWrite(BULB、LOW); } else if(voice =="go")// {digitalWrite(BULB、HIGH); } else if(voice =="lights")// {analogWrite(TUBELIGHT、0); analogWrite(FAN、0); digitalWrite(BULB、LOW); } else if(voice =="おやすみなさい")// {analogWrite(TUBELIGHT、255); analogWrite(FAN、255); digitalWrite(BULB、HIGH); } voice =""; //開始後に変数をリセットします}}
回路図
「OKGOOGLE」を使用したBluetooth音声制御アプライアンスの回路図