Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Technologie industrielle

Système domotique intelligent - Circuit et code source

Projet de système domotique intelligent utilisant Arduino 

L'automatisation (telle que la domotique et l'automatisation industrielle, etc.) est devenue importante dans le monde d'aujourd'hui, car elle permet d'accomplir une tâche avec moins d'assistance humaine et de manière plus intelligente. Les maisons deviennent de plus en plus intelligentes et développées de nos jours avec l'aide de dispositifs d'automatisation. Les appareils électroménagers utilisent des interrupteurs télécommandés plutôt que des interrupteurs conventionnels. Dans le monde d'aujourd'hui, la plupart des gens ont accès aux smartphones et leur utilisation est devenue très populaire et essentielle dans nos vies. Nous pouvons utiliser les smartphones pour contrôler les appareils électroménagers en un seul clic ou un seul message. À l'aide de contrôleurs et d'appareils de communication, les appareils ménagers peuvent être contrôlés à distance. Dans ce projet, nous utiliserons la carte Arduino UNO pour le développement du projet Smart Home Automation avec le module Bluetooth HC-05 qui est contrôlé à distance par un smartphone. Cela peut être très utile pour les personnes paralysées qui ne peuvent pas faire leur travail par elles-mêmes et de tels appareils peuvent devenir une aide précieuse pour ces personnes.

Composants requis

Arduino UNO

Arduino est une plate-forme open-source utilisée pour développer des projets électroniques. Il peut être facilement programmé, effacé et reprogrammé à tout instant. Il existe de nombreuses cartes Arduino disponibles sur le marché comme Arduino UNO, Arduino Nano, Arduino Mega, Arduino lilypad, etc. avec des spécifications différentes en fonction de leur utilisation. Dans ce projet, nous allons utiliser Arduino UNO pour contrôler automatiquement les appareils électroménagers. Il est doté d'un microcontrôleur ATmega328 qui fonctionne à une vitesse d'horloge de 16 MHz. C'est un puissant qui peut fonctionner sur les protocoles de communication USART, I2C et SPI. Cette carte est généralement programmée à l'aide du logiciel Arduino IDE à l'aide d'un câble micro USB. ATmega328 est livré avec un chargeur de démarrage intégré préprogrammé qui facilite le téléchargement du code sans l'aide d'un matériel externe. Il a une vaste application dans la fabrication de projets ou de produits électroniques. Le langage C et C++ est utilisé pour programmer la carte qui est très facile à apprendre et à utiliser. Arduino IDE facilite grandement la programmation. Il sépare le code en deux parties, à savoir void setup() et void loop(). La fonction void setup() ne s'exécute qu'une seule fois et est principalement utilisée pour lancer un processus, tandis que void loop() consiste en la partie du code qui doit être exécutée en continu.

Ce modèle se compose de 6 broches d'entrée analogiques et de 14 broches GPIO numériques qui peuvent être utilisées comme entrée-sortie, dont 6 fournissent une sortie PWM et analogique en utilisant pinMode(), digitalWrite( ), les fonctions digitalRead() et analogRead(). 6 canaux d'entrée analogiques vont des broches A0 à A5 et offrent une résolution de 10 bits. La carte peut être alimentée soit à l'aide d'un câble USB qui fonctionne à 5 volts, soit par une prise DC qui fonctionne entre 7 et 20 volts. Il y a un régulateur de tension intégré pour générer 3,3 volts pour faire fonctionner des appareils à faible puissance. Étant donné que l'ATmega328 fonctionne sur les protocoles de communication USART, SPI et I2C, dispose de broches 0 (Rx) et 1 (Tx) pour la communication USART, broches SDA (A4) et SCL (A5) pour I2C et SS (10), MOSI (11) , MISO (12) et SCK (13) pour le protocole de communication SPI. Ces spécifications rendent la carte Arduino Uno parfaite pour les projets de domotique.

Module Bluetooth HC-05

HC-05 est un module Bluetooth utilisé pour la communication sans fil. Il est principalement utilisé pour établir des communications sans fil bidirectionnelles en série entre des microcontrôleurs, des smartphones, des ordinateurs, des capteurs, etc. La portée de ce module Bluetooth est inférieure à 100 mètres et dépend également des conditions atmosphériques. Il fonctionne sur le protocole USART (Universal Synchronous Asynchronous Receiver Transmitter) pour communiquer avec d'autres appareils. Il peut fonctionner à la fois en mode maître et esclave avec des débits en bauds pris en charge de 9600, 19200, 38400, 57600, 115200, 230400 et 460800. Par défaut, il fonctionne en mode esclave et le mode maître peut être configuré à l'aide des commandes AT. Il peut être utilisé pour transférer des données dans les deux sens d'un microcontrôleur à n'importe quel appareil et d'un appareil à un microcontrôleur. Le module Bluetooth HC-05 fonctionne en mode commande et en mode données. Le mode de commande est utilisé pour accéder aux paramètres de configuration du HC-05 à l'aide de certaines commandes AT et le mode de données est utilisé pour envoyer les données en série. Le mode de commande est accessible en mettant à la terre la broche "clé" et en utilisant les commandes AT, nous pouvons modifier son réglage. Il existe des commandes AT qui peuvent être utilisées pour modifier le nom, le mot de passe, le débit en bauds, etc. du module. Voici quelques commandes AT :

Projet connexe : Circuit d'éclairage de secours à LED automatique utilisant LDR

Pin Out de HC-05 :

FR/Broche de clé  :Cette broche est utilisée pour définir le module Bluetooth en mode de commande ou mode données . Le mode de commande est accessible en mettant cette broche à l'état haut et le mode de données est accessible en la mettant à l'état bas. Par défaut, il est défini sur bas en mode données.

Épingler sur HC-05 Description
FR/clé Haut - Mode Commande, Bas - Mode Données
VCC 3,3 V à 5 V
TERRE Sol
TXD Transmettre des données série
RXD Recevoir des données série
État Affiche le module connecté ou non

Dans ce projet, HC-05 est utilisé pour établir une communication série sans fil entre Arduino Uno et Smartphone. Cela peut être fait en connectant le Hc-05 à l'Arduino Uno et en installant une application sur le smartphone. Bien qu'il existe diverses applications disponibles pour connecter un smartphone au HC-05. mais ici, nous allons utiliser le terminal Bluetooth HC-05 qui peut être téléchargé depuis le Play Store. Connectez le HC-05 avec Arduino UNO comme indiqué dans le schéma de circuit. La broche TXD de HC-05 va à RX (broche 0) de la broche RXD de HC-05 va à TXD (broche 1) de l'Arduino Uno. La touche EN/ est réglée sur LOW. Activez le Bluetooth de votre smartphone et recherchez les appareils Bluetooth. Connectez-vous au périphérique Bluetooth nommé « HC-05 ». Par défaut, le mot de passe est "0000" ou "1234".

Le module Bluetooth HC-05 a une led rouge intégrée qui indique l'état de la connexion. Avant toute connexion, il clignote en permanence de manière périodique et une fois connecté, sa vitesse de clignotement ralentit.

Application du module Bluetooth HC-05 :

Relais

Un relais est un interrupteur électromagnétique qui est actionné par un petit courant électrique pour allumer ou éteindre un ou plusieurs circuits plus gros. Il se compose d'une bobine d'électroaimant qui se transforme en un aimant temporaire lorsqu'un petit courant électrique le traverse. Un courant relativement faible est utilisé pour créer un champ magnétique dans une bobine avec un noyau et cela est utilisé pour faire fonctionner un interrupteur qui peut contrôler un courant beaucoup plus important. Les relais antérieurs étaient utilisés dans les télégraphes et les centraux téléphoniques pour amplifier les signaux. Après l'invention des ordinateurs, les relais ont été utilisés pour effectuer des opérations booléennes et logiques. Les relais sont disponibles en différentes tailles et variétés en fonction de leur utilisation dans les circuits. Les principales applications du relais incluent le contrôle moteur, les applications automobiles, les applications industrielles, la domotique, etc.

Dans ce projet, nous allons utiliser un relais électromagnétique pour allumer et éteindre les appareils électroménagers comme la lampe à tube, l'ampoule, le ventilateur ou toute autre source d'alimentation en courant alternatif dans notre maison en donnant Signaux CC de l'Arduino UNO. Le relais a 6 broches, dont deux VCC et Ground sont utilisées pour alimenter le relais. Une broche est la broche de données qui est utilisée pour prendre le signal "1" ou "0" des microcontrôleurs. D'autres 3 broches normalement fermées (NC), communes, normalement ouvertes (NO) sont utilisées pour connecter des appareils alimentés en courant alternatif. Ce relais fonctionne dans deux conditions soit en Normalement Ouvert soit en Normalement Fermé :

Normalement ouvert :il ferme le circuit chaque fois que le relais est activé et il ouvre le circuit chaque fois que le relais est désactivé.

Normalement fermé :Il ouvre le circuit chaque fois que le relais est activé et ferme le circuit chaque fois que le relais est désactivé.

Pinout du relais :
Épingler sur RELAIS Description
VCC 5V
GND Sol
Broche de données "1" ou "0" du microcontrôleur
NC Pour un circuit normalement fermé
COM Commun
NON Pour un circuit normalement ouvert

  Applications du relais :

Projet connexe : Système de contrôle automatique de l'éclairage public à l'aide de LDR

Schéma du circuit

Le circuit est conçu à l'aide d'Arduino, de Bluetooth, de relais et de LED. Nous avons connecté le Bluetooth en série avec l'Arduino. Le relais est utilisé pour faire fonctionner les appareils électroménagers. Nous avons utilisé quatre relais pour quatre appareils. Vous pouvez modifier les numéros du relais pour faire fonctionner divers appareils ménagers en conséquence. Lors du passage au matériel, les LED seront remplacées par des ampoules.

La commande de contrôle des appareils électroménagers sera envoyée via une « application terminal Bluetooth HC-05 » de votre smartphone au Bluetooth, connecté à l'Arduino. Ensuite, Arduino a lu les données arrivant en série sur le Bluetooth. Par conséquent, les actions sont effectuées en fonction de la commande provenant du Bluetooth vers l'Arduino.

Fonctionnement de la domotique basée sur Arduino

Effectuez la connexion pour le projet domotique comme indiqué dans le schéma de circuit. Tout d'abord, nous connectons l'ampoule avec des sources d'alimentation en courant alternatif et avec des relais comme indiqué dans le schéma de circuit. Ensuite, les relais reçoivent une alimentation CC de la carte Arduino Uno. Les broches de données des relais sont connectées aux broches 8, 9, 10 et 11 à l'Arduino qui sont les broches de sortie de l'Arduino. Connectez ensuite le module HC-05 à la carte Arduino comme indiqué sur le schéma et alimentez la carte Adruino. Téléchargez le code donné à la fin du projet à l'aide de l'IDE Arduino. Activez le Bluetooth dans votre smartphone et connectez le module HC-05 en saisissant le mot de passe. Par défaut, le mot de passe est « 0000 » ou « 1234 ». Après avoir réussi à connecter votre smartphone avec le HC-05, ouvrez "l'application du terminal Bluetooth HC-05 sur votre smartphone " et il montrera votre appareil connecté à HC-05. Envoyez maintenant les données "Ampoule1 allumer" ou "Ampoule2 à éteindre" pour allumer ou éteindre n'importe quelle ampoule. C'est ainsi que vous pouvez contrôler à distance les lumières de votre maison.

Code du projet

#include

int bulb1 =8;
int bulb2 =9;
int bulb3 =10;
int bulb4 =11;

LogicielSerial bt(0,1); /* (Rx,Tx) */

Chaîne str;

void setup() {
bt.begin(9600);
Serial.begin(9600);

pinMode(bulb1,OUTPUT);
pinMode(bulb2,OUTPUT);
pinMode(bulb3,OUTPUT);
pinMode(bulb4,OUTPUT);

}

annuler la boucle() {

if (bt.available())
{
str =bt.read();
Serial.println(str);
//bulb1
if(str ==”bulb1 on”)
{
digitalWrite(bulb1,HIGH);
Serial.println(“BUlB 1 is ON”);
}
else if (str==”bulb1 off”)
{
digitalWrite(bulb1,LOW);
Serial.println(“BUlB 1 is OFF”);
}
else
{
digitalWrite(bulb1,LOW);
}
//bulb2
if(str==”bulb2 on”)
{
digitalWrite(bulb2,HIGH);
Serial.println("BUlB 2 is ON");
}
else if(str=="bulb2 off")
{
digitalWrite(bulb2,LOW);
Serial.println("BUlB 2 is OFF");
}
else
{
digitalWrite(bulb2, LOW );
}
////bulb3
if(str==”bulb3 on”)
{
digitalWrite(bulb3,HIGH);
Serial.println(“BUlB 3 is ON”);
}
else if(str==”bulb3 off”)
{
digitalWrite(bulb3,LOW);
Serial.println("BUlB 3 is OFF");
}
else
{
digitalWrite(bulb3,LOW);
}
//bulb4
if(str==”bulb4 on”)
{
digitalWrite (bulb4,HIGH);
Serial.println("BUlB 4 is ON");
}
else if(str=="bulb4 off")
{
digitalWrite(bulb4,LOW);
Serial.println("BUlB 4 is OFF");
}
else
{
digitalWrite(bulb4,LOW);
}

}
}

Explication du code de programmation

Incluez les bibliothèques requises pour le projet, la bibliothèque SoftwareSerial.h est importée pour la communication série avec le module Bluetooth HC-05.

#include

Déclaration des variables des broches de sortie d'Arduino à 8, 9, 10 et 11 qui va à la broche de données de chacun des quatre relais. La chaîne variable "str" ​​stocke les données que nous obtenons du smartphone à l'aide du module Bluetooth HC-05.

int bulb1 =8 ;

int bulb2 =9 ;

int bulb3 =10 ;

int bulb4 =11 ;

Chaîne str ;

 pinMode(bulb1,OUTPUT);

 pinMode(bulb2,OUTPUT);

 pinMode(bulb3,OUTPUT);

 pinMode(bulb4,OUTPUT);

La communication série Bluetooth et le moniteur série sont lancés à un débit de 9 600 bauds.

  bt.begin(9600);

  Serial.begin(9600) ;

Si les données obtenues du smartphone à l'aide du module Bluetooth HC-05 sont « ampoule1 allumée », nous allumons l'ampoule 1 en réglant la broche de données du relais sur ÉLEVÉ. Si les données sont "bulb1 off", nous éteignons l'ampoule en réglant la broche de données du relais sur LOW. Si aucune donnée n'est reçue pour l'ampoule 1, nous réglons notre ampoule 1 sur BAS. La même chose est faite pour l'ampoule 2, l'ampoule 3, l'ampoule 4.

if(str==”bulb1 on”)

     {

      digitalWrite(bulb1,HIGH) ;

      Serial.println("BUlB 1 is ON");

     }

     else if(str==”bulb1 off”)

     {

      digitalWrite(bulb1,LOW) ;

      Serial.println("BUlB 1 is OFF");

     }

     autre

     {

      digitalWrite(bulb1,LOW) ;

     }

Par conséquent, vous pouvez contrôler n'importe quel appareil électroménager de votre maison en utilisant Arduino UNO, Bluetooth et un relais. Nous avons également fourni les informations techniques pour les composants nécessaires à la construction de ce projet. Le schéma électrique se compose de LED qui seront remplacées par les ampoules AC utilisées dans la maison.

Projets associés :


Technologie industrielle

  1. Applications de la domotique
  2. Silicon Labs présentera des solutions de connectivité pour la maison intelligente et l'automatisation des bâtiments
  3. Conception intelligente de protection et de détection de circuits pour les serrures et les contrôles d'accès des maisons intelligentes
  4. Cinq obstacles à l'expédition du bureau à domicile — et comment les surmonter
  5. Système d'alarme Arduino :SERENA
  6. Système de domotique et de sécurité intelligent utilisant 1Sheeld
  7. Communication Python3 et Arduino
  8. Système de présence basé sur Arduino et la feuille de calcul Google
  9. Octopod :projet d'automatisation de la maison/de l'industrie Smart IoT