Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Industriële technologie

Smart Home Automation-systeem - Circuit- en broncode

Smart Home Automation-systeemproject met Arduino 

Automatisering (zoals domotica en industriële automatisering, enz.) is belangrijk geworden in de wereld van vandaag omdat het helpt om een ​​taak te voltooien met minder menselijke hulp en op een slimmere manier. Huizen worden tegenwoordig slimmer en ontwikkeld met behulp van automatiseringsapparatuur. Elektrische huishoudelijke apparaten gebruiken op afstand bediende schakelaars in plaats van conventionele schakelaars. In de wereld van vandaag hebben de meeste mensen toegang tot smartphones en het gebruik ervan is erg populair en essentieel geworden in ons leven. We kunnen smartphones gebruiken om de huishoudelijke apparaten te bedienen met slechts één klik of één bericht. Met behulp van controllers en communicatieapparatuur kunnen huishoudelijke apparaten op afstand worden bediend. In dit project zullen we het Arduino UNO-bord gebruiken voor de ontwikkeling van een Smart Home Automation-project met de HC-05 Bluetooth-module die op afstand wordt bestuurd door een smartphone. Het kan erg nuttig zijn voor de verlamde mensen die hun werk niet alleen kunnen doen en dergelijke apparaten kunnen een grote hulp zijn voor deze mensen.

  • Gerelateerde post:op spraakherkenning gebaseerd domoticasysteem

Vereiste componenten

  • Arduino UNO
  • HC-05 Bluetooth-module
  • Relais
  • Jumperdraden
  • Gloeilampen
  • Bluetooth Terminal HC-05-app (downloaden van Play Store)

Arduino UNO

Arduino is een open-sourceplatform dat wordt gebruikt om elektronicaprojecten te ontwikkelen. Het kan op elk moment van de tijd eenvoudig worden geprogrammeerd, gewist en opnieuw geprogrammeerd. Er zijn veel Arduino-kaarten op de markt verkrijgbaar, zoals Arduino UNO, Arduino Nano, Arduino Mega, Arduino lilypad, enz. met verschillende specificaties, afhankelijk van hun gebruik. In dit project gaan we Arduino UNO gebruiken om huishoudelijke apparaten automatisch te bedienen. Het heeft een ATmega328 microcontroller IC erop die draait op een kloksnelheid van 16 MHz. Het is een krachtig apparaat dat kan werken met USART-, I2C- en SPI-communicatieprotocollen. Dit bord wordt meestal geprogrammeerd met behulp van software Arduino IDE met behulp van een micro-USB-kabel. ATmega328 wordt geleverd met een voorgeprogrammeerde ingebouwde bootloader die het gemakkelijker maakt om de code te uploaden zonder de hulp van externe hardware. Het heeft een enorme toepassing bij het maken van elektronicaprojecten of -producten. De C- en C++-taal wordt gebruikt om het bord te programmeren, wat heel gemakkelijk te leren en te gebruiken is. Arduino IDE maakt het veel gemakkelijker om te programmeren. Het scheidt de code in twee delen, namelijk void setup() en void loop(). De functie void setup() wordt slechts één keer uitgevoerd en wordt voornamelijk gebruikt voor het initiëren van een proces, terwijl void loop() het deel van de code is dat continu moet worden uitgevoerd.

Dit model bestaat uit 6 analoge ingangspinnen en 14 digitale GPIO-pinnen die kunnen worden gebruikt als input-output, waarvan 6 PWM-output en analoog met pinMode(), digitalWrite( ), digitalRead() en analogeRead() functies. 6 analoge ingangskanalen zijn van pinnen A0 tot A5 en bieden een resolutie van 10 bits. Het bord kan worden gevoed via een USB-kabel die werkt op 5 volt of via een DC-aansluiting die werkt tussen 7 en 20 volt. Er is een spanningsregelaar aan boord om 3,3 volt te genereren voor het bedienen van apparaten met een laag vermogen. Omdat de ATmega328 werkt op het USART-, SPI- en I2C-communicatieprotocol, heeft het 0 (Rx) en 1 (Tx) pinnen voor USART-communicatie, SDA (A4) en SCL (A5)-pin voor I2C en SS (10), MOSI (11) , MISO (12) en SCK (13) pinnen voor SPI-communicatieprotocol. Deze specificaties maken het Arduino Uno-bord perfect voor domotica-projecten.

  • Gerelateerde post: Electronic Eye Circuit met LDR en IC 4049 voor beveiligingscontrole

HC-05 Bluetooth-module

HC-05 is een Bluetooth-module die wordt gebruikt voor draadloze communicatie. Het wordt meestal gebruikt om seriële tweeweg draadloze communicatie tot stand te brengen tussen microcontrollers, smartphones, computers, sensoren, enz. Het bereik van deze Bluetooth-module is minder dan 100 meter en is ook afhankelijk van de atmosferische omstandigheden. Het werkt op het USART-protocol (Universal Synchronous Asynchronous Receiver Transmitter) om met andere apparaten te communiceren. Het kan zowel in master- als slave-modus werken met ondersteunde baudrates 9600, 19200, 38400, 57600, 115200, 230400 en 460800. Standaard werkt het in slave-modus en master-modus kan worden geconfigureerd met behulp van AT-commando's. Het kan worden gebruikt om gegevens in beide richtingen over te dragen van een microcontroller naar elk apparaat en apparaat naar een microcontroller. HC-05 Bluetooth-module werkt in opdrachtmodus en datamodus. De opdrachtmodus wordt gebruikt om toegang te krijgen tot de configuratie-instelling van de HC-05 met behulp van enkele AT-opdrachten en de gegevensmodus wordt gebruikt om de gegevens serieel te verzenden. De opdrachtmodus is toegankelijk door de "sleutel" -pin te aarden en met behulp van AT-opdrachten kunnen we de instelling ervan wijzigen. Er zijn AT-commando's die kunnen worden gebruikt om de naam, het wachtwoord, de baudrate, enz. van de module te wijzigen. Hier zijn enkele AT-commando's:

  • AT – om te controleren of de module communiceert of niet
  • AT+NAME =hc-05 – voor het wijzigen van de naam van het apparaat in "hc-05"
  • AT+PSWD =1234 – voor het wijzigen van het wachtwoord in 1234
  • AT+UART =9600, 1, 0 – voor het wijzigen van de baudrate naar 9600, stopbit naar 1 en pariteitsbit naar 0.

Gerelateerd project:Automatisch LED-noodverlichtingscircuit met LDR

Vastzetten van HC-05:

EN/Sleutelpin :Deze pin wordt gebruikt om de Bluetooth-module in een van beide opdrachtmodus . te zetten of gegevensmodus . De opdrachtmodus is toegankelijk door deze pin hoog in te stellen en de gegevensmodus kan worden geopend door deze laag in te stellen. Standaard is deze ingesteld op laag in de gegevensmodus.

  • VCC :Dit is de voedingspin die is aangesloten op 5V of 3,3V.
  • Grond :Dit is de aardingspin van de Bluetooth-module.
  • TXD :Deze pin wordt gebruikt voor seriële verzending van de gegevens.
  • RXD :Deze pin wordt gebruikt om de gegevens serieel te ontvangen.
  • Status :Deze pin vertelt of de module is aangesloten of losgekoppeld met het andere apparaat.
Pin op HC-05 Beschrijving
EN/sleutel Hoog – Opdrachtmodus, Laag – Gegevensmodus
VCC 3,3 V tot 5 V
GND Grond
TXD Seriële gegevens verzenden
RXD Seriële gegevens ontvangen
Status Toont module aangesloten of niet

In dit project wordt HC-05 gebruikt om seriële draadloze communicatie tot stand te brengen tussen Arduino Uno en Smartphone. Dit kan door Hc-05 te verbinden met de Arduino Uno en een applicatie op de smartphone te installeren. Al zijn er verschillende applicaties beschikbaar om een ​​smartphone aan te sluiten op de HC-05. maar hier gaan we Bluetooth Terminal HC-05 gebruiken die kan worden gedownload van de Play Store. Verbind de HC-05 met Arduino UNO zoals aangegeven in het schakelschema. TXD pin van HC-05 gaat naar RX (pin 0) van de RXD pin van HC-05 gaat naar TXD (pin 1) van de Arduino Uno. EN/toets is ingesteld op LAAG. Schakel de Bluetooth van uw smartphone in en zoek naar Bluetooth-apparaten. Maak verbinding met het Bluetooth-apparaat met de naam "HC-05". Standaard is het wachtwoord "0000" of "1234".

HC-05 Bluetooth-module heeft een ingebouwde rode led die de verbindingsstatus aangeeft. Voordat er verbinding wordt gemaakt, knippert het op een bepaalde periodieke manier continu en nadat het is aangesloten, wordt de knippersnelheid langzamer.

  • Gerelateerd project: Eenvoudig aanraakgevoelig schakelcircuit met 555 Timer en BC547-transistor
Toepassing van HC-05 Bluetooth-module:
  • Computer en randapparatuur
  • GPS-ontvanger
  • Industriële controle
  • Microcontroller-projecten

Relay

Een relais is een elektromagnetische schakelaar die wordt bediend door een kleine elektrische stroom om een ​​of meerdere grotere circuits in of uit te schakelen. Het bestaat uit een elektromagneetspoel die wordt omgezet in een tijdelijke magneet wanneer er een kleine elektrische stroom doorheen wordt geleid. Een relatief kleine stroom wordt gebruikt om een ​​magnetisch veld te creëren in een spoel met een kern en dit wordt gebruikt om een ​​schakelaar te bedienen die een veel grotere stroom kan regelen. Eerdere relais werden gebruikt in telegrafen en telefooncentrales om de signalen te versterken. Na de uitvinding van computers werden relais gebruikt om Booleaanse en logische bewerkingen uit te voeren. Relais zijn er in verschillende maten en variëteiten, afhankelijk van hun gebruik in circuits. De belangrijkste toepassingen van het relais zijn onder meer motorbesturing, automobieltoepassingen, industriële toepassingen, domotica, enz.

In dit project gaan we een elektromagnetisch relais gebruiken om de huishoudelijke apparaten zoals buisverlichting, gloeilampen, ventilatoren of een willekeurige wisselstroombron in ons huis in en uit te schakelen. DC-signalen van de Arduino UNO. Het relais heeft 6 pinnen, waarvan er twee VCC en Ground worden gebruikt om het relais van stroom te voorzien. Eén pin is de datapin die wordt gebruikt om het signaal "1" of "0" van microcontrollers te ontvangen. Andere 3 pinnen Normaal Gesloten (NC), Gemeenschappelijk, Normaal Open (NO) worden gebruikt om apparaten met wisselstroom aan te sluiten. Dit relais werkt in twee toestanden, ofwel in normaal open of in normaal gesloten toestand:

Normaal open:het sluit het circuit wanneer het relais wordt geactiveerd en het opent het circuit wanneer het relais wordt gedeactiveerd.

Normaal sluiten:het opent het circuit wanneer het relais wordt geactiveerd en het sluit het circuit wanneer het relais wordt gedeactiveerd.

  • Gerelateerd project:automatische nachtlamp met Arduino en LDR
Pinout van relais:
Pak vast op RELAY Beschrijving
VCC 5V
GND Grond
Gegevenspin “1” of “0” van microcontroller
NC Voor normaal gesloten circuit
COM Algemeen
NEE Voor normaal open circuit

  Toepassingen van het relais:

  • Relais wordt gebruikt om veiligheidskritieke logica te bieden.
  • Ze worden gebruikt om een ​​hoogspanningscircuit te besturen met een klein spanningssignaal.
  • Relais worden ook gebruikt voor beschermingsdoeleinden.
  • Relais worden gebruikt in onderstations en netwerken bij het leveren van elektriciteit van het ene punt naar het andere.

Gerelateerd project:Automatisch straatverlichtingssysteem met LDR

Circuitdiagram

Het circuit is ontworpen met Arduino, Bluetooth, relais en LED's. We hebben de Bluetooth serieel verbonden met de Arduino. Het relais wordt gebruikt om de huishoudelijke apparaten te bedienen. We hebben vier relais gebruikt voor vier apparaten. U kunt de nummers van het relais wijzigen om verschillende huishoudelijke apparaten dienovereenkomstig te bedienen. Terwijl we naar de hardware gaan, worden de LED's vervangen door Bulbs.

De opdracht voor het bedienen van de huishoudelijke apparaten wordt verzonden via een "Bluetooth-terminal HC-05-app" van je smartphone naar de Bluetooth, verbonden met de Arduino. Vervolgens leest Arduino de gegevens die serieel naar de Bluetooth komen. Daarom worden acties uitgevoerd volgens het commando dat van de Bluetooth naar de Arduino komt.

  • Gerelateerd project: elektronisch project voor verkeerslichtregeling met IC 4017 &555 Timer

Werking van op Arduino gebaseerde domotica

Maak de verbinding voor het Home Automation-project zoals aangegeven in het schakelschema. Allereerst verbinden we de lamp met AC gevoede bronnen en met relais zoals aangegeven in het schakelschema. Vervolgens krijgen de relais gelijkstroom van het Arduino Uno-bord. Datapinnen van de relais zijn verbonden op pinnen 8, 9, 10 en 11 naar de Arduino, de uitgangspinnen van Arduino. Verbind vervolgens de HC-05-module met het Arduino-bord zoals weergegeven in het diagram en voed het Adruino-bord. Upload de code aan het einde van het project met behulp van Arduino IDE. Schakel Bluetooth in uw smartphone in en verbind de HC-05-module door het wachtwoord in te voeren. Standaard is het wachtwoord "0000" of "1234". Nadat u uw smartphone met succes heeft verbonden met de HC-05, opent u "Bluetooth-terminal HC-05-app op uw smartphone ” en het zal uw apparaat laten zien dat is verbonden met HC-05. Stuur nu de gegevens "Bulb1 turn on" of "Bulb2 to turn off" om een ​​lamp in of uit te schakelen. Zo kun je de verlichting in huis op afstand bedienen.

  • Gerelateerd project:elektronisch project Clap Switch Circuit met 555 Timer

Projectcode

#include

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

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

String str;

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

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

}

void loop() {

if (bt.available())
{
str =bt.read();
Serial.println(str);
//bulb1
if(str ==”bulb1 on”)
{
digitalWrite(bulb1,HIGH);
Serial.println(“BUlB 1 is ON”);
}
anders als (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”);
}
anders
{
digitalWrite(bulb2, LAAG);
}
////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");
}
anders
{
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”);
}
anders
{
digitalWrite(bulb4,LOW);
}

}
}

Uitleg programmeercode

Voeg de bibliotheken toe die nodig zijn voor het project, de SoftwareSerial.h-bibliotheek wordt geïmporteerd voor seriële communicatie met Bluetooth-module HC-05.

#include

Verklaring van variabelen van uitgangspinnen van Arduino op 8, 9, 10 en 11 die naar de datapin van elk van de vier relais gaat. Variabele string "str" ​​slaat de gegevens op die we van een smartphone krijgen met behulp van de HC-05 Bluetooth-module.

int bulb1 =8;

int bulb2 =9;

int bulb3 =10;

int bulb4 =11;

String str;

 pinMode(bulb1,OUTPUT);

 pinMode(bulb2,OUTPUT);

 pinMode(bulb3,OUTPUT);

 pinMode(bulb4,OUTPUT);

Bluetooth seriële communicatie en seriële monitor worden gestart met een baudrate van 9600.

  bt.begin(9600);

  Serial.begin(9600);

Als de gegevens die van de smartphone zijn ontvangen met behulp van Bluetooth-module HC-05 "bulb1 aan" is, zetten we lamp 1 aan door de datapin van het relais in te stellen op HOOG. Als de gegevens "bulb1 off" zijn, schakelen we de lamp uit door de datapin van het relais in te stellen op LAAG. Als er geen gegevens voor lamp 1 zijn ontvangen, stellen we onze lamp 1 in op LAAG. Hetzelfde wordt gedaan voor lamp 2, lamp 3, lamp 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”);

     }

     else

     {

      digitalWrite(bulb1,LOW);

     }

Daarom kun je elk huishoudelijk apparaat in je huis bedienen met Arduino UNO, Bluetooth en relais. We hebben ook de technische informatie verstrekt voor de componenten die nodig zijn voor de bouw van dit project. Het schakelschema bestaat uit LED's die worden vervangen door de AC-lampen die in huis worden gebruikt.

Gerelateerde projecten:

  • Automatisch bewaterings- en irrigatiesysteem voor planten - circuit-, code- en projectrapport
  • Regenalarmcircuit - Sneeuw-, water- en regendetectorproject
  • Circuitdiagram waterniveau-indicator - twee eenvoudige projecten
  • Meer elektrische en elektronische engineeringprojecten

Industriële technologie

  1. Toepassingen van domotica
  2. Silicon Labs presenteert slimme connectiviteitsoplossingen voor huis- en gebouwautomatisering
  3. Intelligente circuitbeveiliging en detectieontwerp voor Smart Home-sloten en toegangscontroles
  4. Vijf hindernissen voor verzending naar het thuiskantoor - en hoe deze te overwinnen
  5. Arduino Alarmsysteem:SERENA
  6. Smart Home Automation en beveiligingssysteem met 1Sheeld
  7. Python3- en Arduino-communicatie
  8. Aanwezigheidssysteem op basis van Arduino en Google Spreadsheet
  9. Octopod:Smart IoT Home/Industry Automation Project
  10. WARAN - Domotica
  11. Bluetooth-gebaseerde huisautomatisering