Tutoriel Arduino :JARVIS v1 | Comment faire une domotique
Composants et fournitures
![]() |
| × | 1 | |||
| × | 4 | ||||
| × | 1 | ||||
![]() |
| × | 1 | |||
![]() |
| × | 10 |
Outils et machines nécessaires
![]() |
|
Applications et services en ligne
![]() |
|
À propos de ce projet
Pourquoi avons-nous construit cela ?
Étant un fan d'Iron man, j'ai été vraiment inspiré par JARVIS, un assistant personnel à commande vocale et j'avais très envie de construire un système domotique. Bien qu'il existe de nombreux systèmes existants, j'ai décidé de créer mon propre système domotique en utilisant Arduino.
Comment ça marche :
Ce projet vise à contrôler les appareils électriques et électroniques tels que la lumière, le ventilateur, la télévision, etc. Cela se fait à l'aide d'Arduino et du circuit de relais qui est installé dans chaque pièce de la maison. Les données seront publiées sur Arduino via le module Bluetooth et d'autres implémentations peuvent être effectuées.
La tâche principale serait d'acquérir les données et de les publier sur l'Arduino à l'aide d'un mobile. Et plus tard avec les données, un contrôle peut être fait pour allumer/éteindre les appareils.
Construction matérielle
Le circuit est très simple. Le coût global de ce produit serait inférieur à 20 $.
Étape 1 : pièces et matériel

Les composants nécessaires pour ce projet sont :
- Arduino
- Panneau de dérivation de relais
- Module Bluetooth - HC-05
- Câbles de démarrage
Étape 2 :Connexions
Les connexions suivantes sont effectuées à l'aide des câbles de démarrage. Pour cette démo, j'ai utilisé quatre relais, ce qui signifie que quatre appareils peuvent être contrôlés à l'aide de l'APP.

*Arduino -> MODULE BT*
- TX -> RX
- RX -> TX
- VCC -> 3.3v
- GND -> GND
*Arduino -> Carte relais*
- IN1 -> D2
- IN2 -> D3
- IN3 -> D4
- IN4 -> D5
- VCC -> VCC
- GND -> GND
Étape 3 :Le code
Vous pouvez trouver l'exemple de code ci-dessous.
String voice ;
int
led1 =2, //Connectez la LED 1 à la broche #2
led2 =3, //Connectez la LED 2 à la broche #3
led3 =4, //Connectez la LED 3 à la broche #4
led4 =5, //Connectez la LED 4 à la broche #5
led5 =6 ; //Connectez la LED 5 à la broche #6
//-------------------------Appelez une fonction------ -------------------------//
void allon(){
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
}
void alloff(){
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
digitalWrite(led5, LOW);
}
//-------------------------------------------- ------------------------------------------//
configuration vide () {
Serial.begin(9600);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
}
//-------------------- -------------------------------------------------- -//
void loop() {
while (Serial.available()){ //Vérifiez s'il y a un octet disponible à lire
delay(10) ; //Délai ajouté pour rendre les choses stables
char c =Serial.read(); //Effectuer une lecture en série
if (c =='#') {break;} //Quitter la boucle lorsque le # est détecté après le mot
voice +=c; //Shorthand for voice =voice + c
}
if (voice.length()> 0) {
Serial.println(voice);
//---- -------------------------------------------------- ------------------//
//---------- Contrôle plusieurs broches/ LED ---------- //
if(voice =="*all on") {allon();} //Désactiver toutes les broches (fonction d'appel)
else if(voice =="*all off"){ alloff();} //Activer toutes les broches (fonction d'appel)
//----------Activer une par une-------- --//
else if(voice =="*TV on") {digitalWrite(led1, HIGH);}
else if(voice =="*fan on") {digitalWrite(led2, HIGH);}
else if(voice =="*ordinateur allumé") {digitalWrite(led3, HIGH);}
else if(voice =="*lumières de la chambre allumées") {digitalWrite(led4 , HIGH);}
else if(voice =="*lumières de la salle de bain allumées") {digitalWrite(led5, HIGH);}
//--------- Turn Off One -By-One----------//
else if(voice =="*TV off") {digitalWrite(led1, LOW);}
else if(voice =="*fan off") {digitalWrite(led2, LOW);}
else if(voice =="*compute r off") {digitalWrite(led3, LOW);}
else if(voice =="*les lumières de la chambre éteintes") {digitalWrite(led4, LOW);}
else if(voice ==" *lumières de la salle de bain éteintes") {digitalWrite(led5, LOW);}
//---------------------------- ------------------------------------------//
voice="";}} //Réinitialiser la variable après l'initialisation
Étape 4 :Candidature
Pour l'instant, nous allons utiliser l'application prête à l'emploi. Dans les jours suivants, je publierai la demande une fois après le traitement des certificats.
Commande vocale BT pour Arduino créé par SimpleLabsIN :https://apkpure.com/bt-voice-control-for-arduino/robotspace.simplelabs.amr_voice/download?from=details
Vidéo de travail de ce projet :
À l'heure actuelle, la fonctionnalité se limite à allumer ou éteindre les appareils, mais elle peut traiter le langage naturel au niveau de base, ce qui permet à l'utilisateur d'intégrer le traitement du langage naturel aux autres projets.
Un grand merci à Hackster.io pour m'avoir permis, ainsi qu'à tous les utilisateurs de cette formidable plateforme, de participer.
Merci de réaliser ces activités qui encouragent les jeunes et les adolescents à créer et à inventer.
Donnez un coup de pouce si cela vous a vraiment aidé et suivez ma chaîne pour des projets intéressants. :)
Partagez cette vidéo si vous le souhaitez.
Heureux de vous avoir abonné :https://www.youtube.com/c/rahulkhanna24june?sub_confirmation=1
Merci d'avoir lu !
Code
- Exemple de code
Exemple de code Arduino
Référentiel de projet
https://github.com/Rahul24-06/Arduino-Tutorial-JARVIS-v1-How-to-make-a-Home-AutomationSchémas

Processus de fabrication
- DOMOMATISATION RASPBERRY PI
- Fabriquer une machine à écrire pour les devoirs à la maison
- Trouvez-moi
- Comment créer un bouton de clavier personnalisable personnalisable
- Joystick Arduino
- Comment faire de la musique avec un Arduino
- Comment créer une ouverture de porte automatique basée sur Arduino
- Moniteur d'accueil
- Comment fabriquer une voiture contrôlée par Bluetooth Arduino