Sprachgesteuerte Bluetooth-Geräte mit OK Google
Komponenten und Verbrauchsmaterialien
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
| Überbrückungskabel für Arduino | | × | 1 | |
Über dieses Projekt
In meinem Projekt geht es darum, Haushaltsgeräte mit Google Assistant und Bluetooth zu steuern. Ich beschloss, dieses Projekt zu machen, da ich bei meiner Suche im Internet nach sprachgesteuerten Heimautomatisierungsprojekten festgestellt habe, dass die meisten Projekte auf WiFi basierten. Ich sammelte Informationen darüber, wie Google Home und Amazon Echo Haushaltsgeräte steuern, und war wirklich erstaunt, wie sich die Technologie entwickelt hat. Nachdem ich Informationen zur WiFi-basierten Hausautomation gesammelt hatte, begann ich, Informationen zur Bluetooth-basierten Hausautomation zu sammeln. Beim Ausgraben der Informationen aus dem Internet kam mir plötzlich ein Gedanke. Der Gedanke war, "warum muss der Benutzer bei der Bluetooth-Hausautomation jedes Mal auf die Schaltfläche der Anwendung klicken, um einen Befehl zu sagen". Ich weiß, dass die Schaltfläche als Auslöser für die Aktivierung von Google Speech Recognizer und Google Text-to-Speech fungierte. Also habe ich mir vorgenommen, ein Projekt zu bauen, bei dem der Benutzer überhaupt nicht auf den Knopf drücken muss und alles automatisiert wird. Später, als ich anfing, an dem Projekt zu arbeiten, erfuhr ich, dass Google Home zwar eine Verbindung zu Bluetooth-Lautsprechern herstellen kann, um Musik abzuspielen, aber keine Verbindung zu Bluetooth-basierten Haushaltsgeräten herstellen kann. Um die Schaltfläche in der Android-App zu entfernen, habe ich Google Assistant ('OK Google') verwendet, einen sprachaktivierten Triggerschalter, um die App und Google Speech Recognizer und Google Text-to-Speech zu aktivieren.
Sehen Sie sich dieses Video an, um zu erfahren, wie ich es gemacht habe:
Blockschaltbild:
Schaltplan: Code
- Code für sprachgesteuerte Bluetooth-Geräte mit 'OK GOOGLE'
Code für sprachgesteuerte Bluetooth-Geräte mit 'OK GOOGLE'Arduino
Bluetooth-sprachgesteuerte Geräte mit 'OK GOOGLE' String voice;#define FAN 10#define TUBELIGHT 9#define BULB 8void setup() { // Geben Sie Ihren Setup-Code hier ein, um ihn einmal auszuführen:Serial.begin (9600); PinMode (LÜFTER, AUSGANG); pinMode (TUBELIGHT, AUSGANG); pinMode (BULB, AUSGANG); analogWrite (TUBELIGHT,255); // Da die LED am Anfang aus sein muss analogWrite (FAN, 255); digitalWrite(BULB,HIGH);}void loop() { while (Serial.available()) //Überprüfen, ob ein Byte zum Lesen verfügbar ist { delay(10); // Verzögerung hinzugefügt, um die Sache stabil zu machen char c =Serial.read (); //Führe einen seriellen Lesevorgang durch if (c =='#') {break;} //Verlasse die Schleife, wenn das # nach dem Wort voice erkannt wird +=c; // Kurzschrift für Stimme =Stimme + c} if (voice.length ()> 0) {Serial.println (voice); //----------Mehrere Pins/LEDs steuern----------// if(voice =="tubelight")// { analogWrite(TUBELIGHT,0); analogWrite (FAN,255); digitalWrite (BULB, HOCH); aufrechtzuerhalten. Sonst if (voice =="grün") // { analogWrite (TUBELIGHT, 255); analogWrite (FAN,255); digitalWrite (BULB, HOCH); aufrechtzuerhalten. Sonst if (voice =="fan") // { analogWrite (TUBELIGHT, 255); analogWrite(FAN,0); digitalWrite (BULB, HOCH); aufrechtzuerhalten. Sonst if (voice =="bulb") // { analogWrite (TUBELIGHT, 0); analogWrite (FAN,255); digitalWrite (BULB, NIEDRIG); aufrechtzuerhalten. Sonst if (voice =="go") // { digitalWrite (BULB, HIGH); aufrechtzuerhalten. Sonst if (voice =="lights") // { analogWrite (TUBELIGHT, 0); analogWrite(FAN,0); digitalWrite (BULB, NIEDRIG); aufrechtzuerhalten. Sonst if (Stimme =="Gute Nacht") // { AnalogWrite (TUBELIGHT, 255); analogWrite (FAN,255); digitalWrite (BULB, HOCH); } Stimme=""; //Setze die Variable nach dem Initiieren zurück}}
Schaltpläne
Schaltplan für sprachgesteuerte Bluetooth-Geräte mit 'OK GOOGLE'