Inhoudsopgave:
Video: Spraakgestuurde media-apparaten met Alexa - Ajarnpa
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-13 06:57
De hier ontwikkelde unit zorgt ervoor dat je apparaten zoals tv, versterker, cd- en dvd-spelers met spraakopdrachten kunnen worden bediend met behulp van Alexa en Arduino. Voordeel van dit toestel is dat je alleen spraakopdrachten hoeft te geven. Dit apparaat kan werken met alle apparaten die gebruik maken van RS-232 poortpoorten. Deze poorten zijn erg handig bij verbindingen. Ze worden meestal gebruikt in media-apparaten. U hoeft nu geen IR-afstandsbedieningen meer te gebruiken.
Het apparaat is goedkoop. Het bevat, Arduino-bord. Je kunt elk Arduino-bord gebruiken, maar ik geef de voorkeur aan Arduino Nano omdat het compact is. De andere dingen zijn ESP 8266, Amazon Alexa, RS 232-TTL Converter. Ik heb ook instructies voor Particle toegevoegd.
Stap 1: Dingen die je nodig hebt
1. Deeltjesfoton
2. Amazon Alexa
3. Amazon Echo Dot
4. ESP 8266
5. RS232-TTL-converter
6. Arduino UNO/Nano/Micro…
Stap 2: Arduino aansluiten op ESP 8266
Verbind de 3v3 (3,3V) uitgang van de Arduino met ESP8266. De ESP8266 werkt met 3,3V en niet met 5V, dus dit is wel nodig.
Sluit de RES- of RESET-pin aan. Wanneer je de reset-pin aardt, werkt de Arduino als een domme USB naar seriële connector, en dat is wat we willen praten met de ESP8266.
Verbind de RXD-pin van de Arduino met de RX-pin van de ESP8266.
Verbind de TXD-pin van de Arduino met de TX-pin van de ESP. Als we willen dat twee dingen via serieel met elkaar praten, verbinden we de TX-pin van de ene met de RX van de andere (verzenden gaat om te ontvangen en het tegenovergestelde). Hier hebben we de Arduino echter niet met de ESP8266 praten, onze computer praat ermee via de Arduino. Sluit GND en VCC aan.
Eindelijk maakt CH_PD verbinding.
Stap 3: RS 232-TTL-converter aansluiten
Nu is het eenvoudig om de RS 232-TTL-converter aan te sluiten op Arduino en ESP die we eerder hebben aangesloten, zoals hieronder vermeld:
Verbind GND van Arduino/Particle met GND van converter
Sluit VCC van Arduino/Particle aan op VCC van converter
Verbind TX van Arduino/Particle met TX van converter
Verbind RX van Arduino/Particle met RX van converter
Stap 4: Amazon-vaardigheden creëren
Als u spaanplaat gebruikt Volg deze stappen.
Je hebt een ontwikkelaarsaccount bij Amazon nodig, als je er geen hebt, kun je je gratis aanmelden. Ga naar
Ga in het ontwikkelaarsaccount naar de Alexa-vaardighedenkit.
Klik vervolgens op "Een nieuwe vaardigheid maken"
U moet het volgende selecteren: "Smart Home Skill API" in Vaardigheidstype
Selecteer in de payload-versie v3
En klik vervolgens op Opslaan.
Stap 5: Configuratievenster
Na het opslaan wordt in de volgende stap uw toepassings-ID weergegeven.
Klik op de volgende knop. Dan komt het configuratievenster. Hier moet je het curl-commando gebruiken waar in gebruikers-ID het toegangstoken moet worden geplaatst en in www.example.com moet je een particle-website geven.
Stap 6: Amazon AWS
Hiervoor moet je inloggen op
Selecteer Auteur formulier Scratch optie.
Kopieer vervolgens de code die in het tekstbestand staat.
Stel uw apparaat-ID in uw programma in. U moet de opdrachten naar uw specifieke apparaat wijzigen.
Nadat u alle stappen hebt uitgevoerd, test u de vaardigheden in Lambda-configuratie.
Stap 7: Voor Arduino
Om stemvaardigheden met Arduino te gebruiken, moet je Amazon Echo Dot gebruiken
Maak verbinding met wifi met behulp van de volgende code:
#include "debug.h" // Seriële debugger afdrukken#include "WifiConnection.h" // Wifi-verbinding // dit bestand maakt deel uit van mijn tutorialcode #include // IR-bibliotheek
WifiVerbinding* wifi; // wifi-verbinding IRsend* irSend; // infrarood zender
// STEL UW WIFI-CREDS in const char* myWifiSsid = "***"; const char* myWifiPassword = "*******";
// SET OM UW HARDWARE TE PASSEN #define SERIAL_BAUD_RATE 9600
//PIN 0 is D3 OP DE CHIP #define IR_PIN 0
/*---------------------------------------*/ //Wordt eenmaal uitgevoerd, wanneer het apparaat is ingeschakeld of code is zojuist geflitst void setup () {// indien verkeerd ingesteld, zal uw seriële debugger niet leesbaar zijn Serial.begin (SERIAL_BAUD_RATE);
// initialiseer wifi-verbinding wifi = nieuwe WifiConnection (myWifiSsid, myWifiPassword); wifi->begin();
// verbind met wifi if (wifi->connect()) { debugPrint("Wifi Connected"); } }
/*---------------------------------------*/ // Loopt constant ongeldige lus() { }
Stap 8: WEMO-server verbinden
Voer vervolgens de WEMO-server uit, dit is de beste methode voor ESP8266.
Nu moeten we de ESPAsyncTCP-bibliotheek installeren.
Code voor testen:
#include "debug.h" // Seriële debugger afdrukken#include "WifiConnection.h" // Wifi-verbinding #include "Wemulator.h" // Onze Wemo-emulator #include // IR-bibliotheek
WifiVerbinding* wifi; // wifi-verbinding Wemulator* wemulator; // wemo-emulator IRsend* irSend; // infrarood zender
// STEL UW WIFI-CREDS in const char* myWifiSsid = "***"; const char* myWifiPassword = "*******";
// SET OM UW HARDWARE TE PASSEN #define SERIAL_BAUD_RATE 9600
//PIN 0 is D3 OP DE CHIP #define IR_PIN 0 /*----------------------------------- ----*/ //Wordt eenmaal uitgevoerd, wanneer het apparaat is ingeschakeld of de code zojuist is geflitst void setup () { // indien verkeerd ingesteld, is uw seriële debugger niet leesbaar Serial.begin (SERIAL_BAUD_RATE);
// initialiseer wifi-verbinding wifi = nieuwe WifiConnection (myWifiSsid, myWifiPassword); wifi->begin();
// initialiseer de IR irSend = nieuwe IRsend (IR_PIN, false); irSend->begin();
// initialiseer wemo emulator wemulator = nieuwe Wemulator ();
// verbind met wifi if (wifi->connect()) { wemulator->begin();
//start de wemo-emulator (deze draait als een reeks webservers) wemulator->addDevice("tv", nieuwe WemoCallbackHandler(&commandReceived)); wemulator->addDevice("televisie", nieuwe WemoCallbackHandler(&commandReceived)); wemulator->addDevice("mijn tv", nieuwe WemoCallbackHandler(&commandReceived)); wemulator->addDevice("mijn televisie", nieuwe WemoCallbackHandler(&commandReceived)); } }
/*---------------------------------------*/ // Loopt constant ongeldige lus() { // laat de wemulator luisteren naar spraakopdrachten als (wifi->isConnected) { wemulator->listen(); } }
Stap 9: Bedankt
Nu heb je je eigen spraakgestuurde apparaat gemaakt om je media-apparaten te bedienen.
Zeg 'Alexa Zet tv aan'
Op deze manier kunt u dus uw eigen spraakbesturingseenheid maken met behulp van Arduino of Particle.
Bedankt voor het langskomen!