Table des matières:
- Étape 1: Configuration des compétences Alexa
- Étape 2: Script Python du serveur AWS Lambda
- Étape 3:
- Étape 4: définissez le lien du kit de compétences Alexa sur AWS Lambda
- Étape 5: Conversion Arduino NANO 3V3
- Étape 6: NANO-Code
- Étape 7: ESP8266
- Étape 8: Configuration du réseau
- Étape 9: Alexa Open Clicker Tv Pause
Vidéo: Télécommande TV Alexa Voice Control ESP8266 : 9 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:09
Est-ce que quelqu'un dans votre maison perd la télécommande, entrez-vous dans une pièce vide pour trouver la télévision qui hurle. Les batteries commencent à défaillir et aucun contrôle depuis le fond de la pièce. Maintenant, vous pouvez contrôler votre téléviseur, DVR, tout ce qui est doté d'un contrôle IR pour lequel vous pouvez capturer le signal IR. J'ai fait ce système pour contrôler mon SKY DVR avec une simple interface vocale.
Matériel requis:
- Amazon Echo ou Dot
- Un routeur wifi qui peut transférer le port (mon fournisseur de services l'a fait pour moi)
- Un Arduino NANO converti en 3V3
- ESP8266 -01 ou similaire
- Module ou circuit émetteur IR
- Module récepteur IR si vous souhaitez capturer des codes.
Logiciels et services requis:
- IDE Arduino, j'ai utilisé 1.6.11
- Compte de compétences Amazon Alexa (gratuit)
- Compte Amazon AWS (niveau gratuit mais nécessite une carte de crédit pour ouvrir un compte) ou un serveur alternatif.
Étape 1: Configuration des compétences Alexa
Le kit de compétences Alexas prend la commande vocale et la filtre à l'aide d'une liste de « valeurs »
Une fois inscrit:
Dans la console Amazon Developer, sélectionnez l'onglet Alexa> Kit de compétences Alexa [Commencer]
[Ajouter une nouvelle compétence]
Type de compétence: Modèle d'interaction personnalisé
Langue: sélectionnez la bonne, si elle était définie sur l'anglais (États-Unis), elle ne répondrait pas !
Nom: ce n'est pas important maintenant car nous ne publions pas.
Nom d'appel:, choisissez un nom court, c'est le mot utilisé pour ouvrir l'application.
[SUIVANT]
Schéma d'intention, coller dans le code
Types d'emplacements personnalisés {Ajouter un type d'emplacement], saisissez EFFECT_ON_TV
dans Slot values , coller dans le code
Exemples d'énoncés, put, TVCommandIntent tv {TVAction}
[ENREGISTRER], sur la page de compétences suivante, nous devons ajouter un lien vers le code que nous allons exécuter lorsque "l'intention" est déclenchée soit par le mot de démarrage de l'application "clicker" ou après cela par "tv {slot value}".
Nous reviendrons sur Alexa après avoir configuré le script python du serveur Lambda.
Étape 2: Script Python du serveur AWS Lambda
Inscrivez-vous à l'offre gratuite d'AWS, je craignais que cela ne me coûte de l'argent réel, mais après l'avoir utilisé pendant un certain temps et avoir lu des forums, les limites d'utilisation sont si élevées pour une utilisation personnelle et de développement qu'elles ne devraient jamais atteindre un point de charge. Il existe une alternative pour utiliser votre propre serveur HTTPS et c'est peut-être quelque chose que l'esp8266 pourrait faire, une autre instructable !
C'est le code qui s'exécute lorsque le nom d'invocation est prononcé (par exemple "Alexa open clicker") et reçoit le mot magique d'Alexa. Une fois l'application démarrée, il vous suffit de dire "tv play, tv jump five" et Alexa enverra "play", "jump 5" à ce script python. L'application expire si elle n'a pas de réponse après un certain temps.
Dans les services AWS, sélectionnez d'abord votre emplacement, en haut à droite il y a une option.
pour les États-Unis, sélectionnez N Virginia, pour l'UE, sélectionnez l'Irlande.
sélectionnez Lambda dans l'en-tête Calcul.
[Créer une fonction Lambda]
[Fonction vide]
Configurer le déclencheur: cliquez sur la case en pointillé et sélectionnez Alexa Skills Kit
[SUIVANT]
Configurer la fonction
Nommez ce que vous voulez
Descriptif, à vous de voir
Runtine: Python 2.7
coller en code python,
dans le code, l'adresse URL HTTP devra être remplacée ultérieurement par votre propre adresse IP externe
link="https://185.255.255.255:777/text?data=" + favorite_color
en bas à l'écran se trouve un RLE, cliquez sur l'onglet et sélectionnez Sélectionner un rôle personnalisé
Cela ouvrira un nouvel écran et cliquera sur Autoriser., il reviendra à l'écran Configurer la fonction avec l'exécution de base Lamda sélectionnée comme Rôle existant.
[NEXT] l'examen, appuyez sur [Créer une fonction] et il devrait compiler et vous donner un numéro ARN. COPIE ce code et nous le mettrons dans le kit de compétences alexa.
Étape 3:
Étape 4: définissez le lien du kit de compétences Alexa sur AWS Lambda
Dans le kit de compétences Alexa, sélectionnez la page Configuration, intitulée Global Fields et sélectionnez AWS Lambda et votre région et collez le code ARN dans la case, [NEXT], en test, vérifiez que ENABLED est sélectionné.
NOUS avons fini ici pour le moment, maintenant pour du matériel.
Étape 5: Conversion Arduino NANO 3V3
L'ESP8266 fonctionne à partir de 3v3, vous pouvez donc l'exécuter à partir d'un régulateur externe ou convertir un nano. J'ai utilisé un clone nano avec une puce USB CH340. Je connais deux configurations de circuits imprimés différentes, mais j'espère que cela couvrira la plupart des configurations.
Nous devons remplacer le régulateur 5V par un 3v3 compatible avec les broches, 1117-3. puis acheminez le 5V de la prise USB uniquement au régulateur et connectez tout le reste à sa sortie. Heureusement, cela peut être réalisé en retirant la diode d'entrée remplaçant le régulateur et en ajoutant un fil du côté entrée de la diode au Vin sur la carte nano.
vérifiez que vous pouvez programmer le nano après la conversion.
Étape 6: NANO-Code
Cela a utilisé des codes pour ma télécommande SKY UK, il peut s'agir d'un modèle spécifique et il vaut la peine de vérifier que vos codes fonctionnent dans un croquis séparé non lié à l'esp8266.
J'ai utilisé la bibliothèque IRremote de shirriff Version 2.0.1
Utilisez l'exemple IRrecord pour capturer des commandes à distance qui nécessitent un module récepteur IR ou vous pourriez trouver vos codes sur le Web ? Je ne vais pas en parler ici, mais c'est ici que vous pouvez choisir ce que vous contrôlez et comment.
Connectez un émetteur IR disponible sur ebay ou construisez-en un. Vous devez utiliser une led IR 850 nm car ce sont les plus courantes dans les récepteurs. La bibliothèque IR utilisait D3 comme broche TX
Le mot alexa est transmis au nano, donc à partir d'ici son nano avec commande vocale.
Étape 7: ESP8266
Il existe de nombreux modules ESP8266, j'en ai utilisé un que je devais câbler sous un microscope, l'ESP8266-01 a un en-tête 2x4 et toutes les broches dont vous avez besoin et c'est bon marché. Plein d'exemples sur le web,. Mes déclenchements, GPIO_0 doit être connecté à gnd lors de la mise sous tension (peut ensuite être flottant) lors de la programmation, c'est une broche de configuration, tirée haut en interne. Une fois programmé, laissez GPIO_0 flotter et remettez sous tension. CHPD se connecte à V+ en permanence.
Le gestionnaire de carte dans arduino 1.6.11 n'a pas le lien esp8622, dans Arduino IDEfile> préférences> URL supplémentaires du gestionnaire de carte, ajoutez:
arduino.esp8266.com/stable/package_esp8266c…
puis allez à board manager et trouvez le package esp8266. cela devrait maintenant vous donner une grande liste de cartes esp8266, sélectionnez Outils> Carte> Module générique ESP8266. En utilisant un module usb vers uart, vous pouvez maintenant programmer la partie esp avec esp8266_server_text. Alimentation avec 3V3, connectez TX-RX, RX-TX et Gnd.
Vous devez entrer le SSID et le mot de passe de votre réseau dans le script et le port que vous définirez pour la redirection de port, par exemple 777.
Vous pouvez exécuter le code en réalimentant l'esp tout en étant connecté au convertisseur usb vers uart et la fenêtre série arduino (9600 bauds) devrait afficher l'adresse IP locale du module esp. entrez ceci dans le code et reprogrammez.
Étape 8: Configuration du réseau
Donc, pour permettre à l'appel d'URL Lambda de se connecter au serveur HTTP ESP, nous devons configurer votre routeur sur la redirection de port. J'ai obtenu mon adresse IP externe à partir de https://www.whatsmyip.org/, je suis sur un lien micro-ondes, donc mon fournisseur a le routeur et j'ai dû leur demander une redirection de port. Je devais donner l'adresse IP de l'ESP8266 sur mon réseau et le port que j'ai choisi, par exemple 777. L'adresse IP externe doit être entrée dans le script python lambda et votre adresse esp locale sera affichée lorsque vous exécuterez le code esp8266 via le lien usb vers uart.
Le module ESP sur la connexion usb à uart doit afficher sur un terminal le mot entrant de lambda.
Connectez l'ESP au nano comme indiqué 3v3, gnd et TX à la série logicielle nano D2. si vous avez le nano sur usb sur un écran de communication série sur l'epc, il devrait montrer ce qu'il reçoit de l'esp.
Si l'ESP n'est pas connecté au réseau ou ne répond pas à l'appel URL de lambda, lambda expirera et Alexa signale un échec de réponse de compétence
Étape 9: Alexa Open Clicker Tv Pause
J'ai placé le module à côté du récepteur mais avec une sortie IR de puissance plus élevée, il pourrait être n'importe où dans une pièce. J'utilise un adaptateur secteur usb de marque connue pour alimenter l'usb.
Asseyez-vous et dites "Alexa ouvre Clicker"
guide télévisé
la télé baisse
télévision sélectionner
jouer à la télévision
tv saut cinq
pour avancer d'un nombre défini de minutes, les macros iront jusqu'à 30x, attendront le temps demandé, puis joueront.
Les publicités britanniques durent environ cinq minutes.
Pour quitter l'application, dites à Alexa de quitter.
Prendre plaisir.
Conseillé:
La télécommande TV devient une télécommande RF -- Tutoriel NRF24L01+ : 5 étapes (avec photos)
La télécommande TV devient une télécommande RF || Tutoriel NRF24L01+ : Dans ce projet, je vais vous montrer comment j'ai utilisé le populaire IC RF nRF24L01+ pour régler la luminosité d'une bande LED sans fil à l'aide de trois boutons inutiles d'une télécommande de téléviseur. Commençons
SONOFF ajoute Alexa et Google Home Voice Control aux appareils intelligents ZigBee : 3 étapes
SONOFF ajoute Alexa et Google Home Voice Control aux appareils intelligents ZigBee : des commutateurs et prises intelligents Wi-Fi aux commutateurs et prises intelligents ZigBee, la commande vocale est un point d'entrée de contrôle mains libres intelligent populaire. En travaillant avec Amazon Alexa ou Google Home, les prises intelligentes vous permettent de prendre le contrôle direct de la maison connectée
IRduino : télécommande Arduino - Imiter une télécommande perdue : 6 étapes
IRduino : télécommande Arduino - Imitez une télécommande perdue : si vous avez déjà perdu la télécommande de votre téléviseur ou lecteur DVD, vous savez à quel point il est frustrant de devoir marcher, trouver et utiliser les boutons de l'appareil lui-même. Parfois, ces boutons n'offrent même pas les mêmes fonctionnalités que la télécommande. Recevoir
Kit de télécommande ordinaire transformé en télécommande jouet RC à quatre canaux : 4 étapes
Kit de télécommande ordinaire transformé en télécommande jouet RC à quatre canaux : 如何将通用遥控器套件转换为玩具模型中使用的四通道遥控器。遥控器套件非常便宜。它采用2262和2272芯片和433个模块构建。 ??
Convertissez votre télécommande IR en télécommande RF : 9 étapes (avec photos)
Convertissez votre télécommande IR en télécommande RF : dans Instructable d'aujourd'hui, je vais vous montrer comment vous pouvez utiliser un module RF générique sans microcontrôleur, ce qui nous conduira éventuellement à créer un projet dans lequel vous pourrez convertir une télécommande IR de n'importe quel appareil en RF À distance. Le principal avantage de convertir un