Sisällysluettelo:

Puhelimen turvajärjestelmä Arduinolla: 5 vaihetta
Puhelimen turvajärjestelmä Arduinolla: 5 vaihetta

Video: Puhelimen turvajärjestelmä Arduinolla: 5 vaihetta

Video: Puhelimen turvajärjestelmä Arduinolla: 5 vaihetta
Video: Тестуємо НОВИНКУ Ajax KeyPad TouchScreen #pipl #ajax #ajaxsystems 2024, Marraskuu
Anonim
Puhelimen turvajärjestelmä Arduinolla
Puhelimen turvajärjestelmä Arduinolla

Kotisi on suojaamaton, jos et ota tätä hanketta käyttöön. Tämä projekti auttaa sinua käynnistämään hälytyksen matkapuhelimen kautta, kun tunkeilija murtautuu kotiisi.

Jos käytät tätä projektia, saat tekstiviestin matkapuhelimella ja voit suojata kotisi hyökkäysten varalta.

Käytämme tätä varten Arduino -yhteensopivaa korttia SIM800L -moduulin ja PIR -anturin kanssa. PIR -anturi vastaa tunkeutujan läsnäolon havaitsemisesta ja SIM800L lähettää hälytysviestin kodin omistajalle.

Tarvikkeet

  • Arduino -yhteensopiva levy
  • PIR -anturi
  • Vastus 10kR
  • Puserot
  • Protoboard
  • SIM800L -moduuli

Vaihe 1: Hankkeen sydän

Projektin ydin on SIM800L -moduuli. Tämä moduuli voi vastaanottaa Arduino -komentoja ja lähettää tekstiviestejä käyttäjän matkapuhelimeen. Kun käyttäjä saa ilmoituksen, hän voi soittaa poliisille tai suorittaa minkä tahansa muun toimenpiteen.

Arduino -yhteensopiva kortti on vastuussa anturin tilan tarkistamisesta ja lähettää sitten hälytysviestin käyttäjälle, jos se havaitsee tunkeutujan.

Tämä prosessi suoritetaan Arduinon ja SIM800L -moduulin välisten ohjauskomentojen ansiosta. Tästä syystä esittelemme sinulle vaihe vaiheelta tämän järjestelmän rakentamisen, kodin suojaamisen ja varoitamme sinua aina, kun joku tunkeilija hyökkää sen kimppuun.

Jos haluat ladata Arduino -yhteensopivan levyn, voit käyttää tätä linkkiä ja saada tiedostot, jotka ostavat levyt JLCPCB: ltä.

Aloitetaan nyt!

Vaihe 2: Projektin elektroninen piiri ja ohjelmointi

Projekti Elektroninen piiri ja ohjelmointi
Projekti Elektroninen piiri ja ohjelmointi
Projekti Elektroninen piiri ja ohjelmointi
Projekti Elektroninen piiri ja ohjelmointi

Ensin asetamme elektronisen piirin saataville ja sitten keskustelemme projektikoodista askel askeleelta puolestasi.

#Sisällytä SoftwareSerial -siru (10, 11);

Jono SeuNumero = "+5585988004783";

#määritä anturi 12

bool ValorAtual = 0, ValorAnterior = 0;

mitätön asennus ()

{Serial.begin (9600); Serial.println ("Inicializando Sistema…"); viive (5000); siru.alku (9600); viive (1000);

pinMode (anturi, TULO); // Configura tai Pino do Sensor como Entrada

}

tyhjä silmukka ()

{// Le o valor do pino do sensor ValorAtual = digitalRead (sensor);

jos (ValorAtual == 1 && ValorAnterior == 0)

{IntrudeAlert; ValorAnterior = 1; }

jos (ValorAtual == 0 && ValorAnterior == 1)

{NoMoreIntrude (); ValorAnterior = 0; }

}

void IntrudeAlert () // Funcao para enviar mensagem de alerta Umidade Baixa

{chip.println ("AT+CMGF = 1"); viive (1000); chip.println ("AT + CMGS = \" " + SeuNumero +" / "\ r"); viive (1000); String SMS = "Intrude Alert!"; siru.println (SMS); viive (100); siru.println ((char) 26); viive (1000); }

void NoMoreIntrude () // Funcao para enviar mensagem de alerta Umidade Normal

{chip.println ("AT+CMGF = 1"); viive (1000); chip.println ("AT + CMGS = \" " + SeuNumero +" / "\ r"); viive (1000); String SMS = "No More Intrude!"; siru.println (SMS); viive (100); siru.println ((char) 26); viive (1000); }

Alla olevassa koodissa ilmoitimme aluksi sarjaliikennekirjaston SoftwareSerial.h, kuten alla on esitetty.

#sisältää

Kirjaston määrittämisen jälkeen määritettiin tiedonsiirtonastat Tx ja Rx. Nämä nastat ovat vaihtoehtoisia nastoja, ja niitä käytetään sarjaliikenteen mahdollistamiseen muissa Arduino -nastoissa. SoftwareSerial -kirjasto on kehitetty antamaan sinun käyttää ohjelmistoa toiminnon toistamiseen

OhjelmistoSarjapiiri (10, 11);

Tämän jälkeen matkapuhelimen numero ilmoitettiin alla.

Jono SeuNumero = "+5585988004783";

Elektroninen suunnittelu on yksinkertainen ja helppo koota. Kuten piiristä näkyy, Arduino -yhteensopiva levy on vastuussa anturin tilan lukemisesta ja sen jälkeen tekstiviestin lähettämisestä kodin omistajalle.

Viesti lähetetään, jos talon sisällä havaitaan tunkeutuja. PIR (passiivinen infrapuna) -anturi on anturi, jota käytetään tunnistamaan liike infrapunasignaalista. Arduinolle lähetetystä signaalista SIM800L -moduuli lähettää viestin käyttäjälle.

Diodia käytetään jännitehäviöön SIM800L -moduulin syöttämiseksi. Koska moduulia ei voi käyttää 5V jännitteellä. Tällä tavoin 4,3 V: n jännite saapuu syöttämään moduulisi ja varmistamaan, että se toimii turvallisesti.

Vaihe 3: Void Setup () -toiminto

Tyhjäasetus -toiminnossa alustamme sarjaliikenteen ja määritämme anturin nastan tuloksi. Koodin alue on esitetty alla.

mitätön asennus ()

{

Sarja.alku (9600); Serial.println ("Inicializando Sistema…"); viive (5000); siru.alku (9600); viive (1000); pinMode (anturi, TULO); // Configura o Pino do Sensor como Entrada}

Kuten voidaan nähdä, kaksi sarjaliikennettä alustettiin. Serial.beginia käytetään alustamaan Arduinon alkuperäinen sarja ja siru. Alku on sarja, joka emuloidaan SoftwareSerial -kirjaston kautta. Tämän jälkeen käytämme void loop -toimintoa.

Vaihe 4: Projekti ja Void Loop -toiminto

Projekti ja Void Loop -toiminto
Projekti ja Void Loop -toiminto
Projekti ja Void Loop -toiminto
Projekti ja Void Loop -toiminto

Esitämme nyt ohjelmoinnin päälogiikan void loop -funktiossa.

void loop () {// Le o valor do pino do sensor ValorAtual = digitalRead (sensor);

jos (ValorAtual == 1 && ValorAnterior == 0)

{IntrudeAlert ();

ValorAnterior = 1;

}

jos (ValorAtual == 0 && ValorAnterior == 1)

{NoMoreIntrude ();

ValorAnterior = 0;

}

}

Ensinnäkin PIR -läsnäolotunnistimen signaali luetaan alla esitetyllä tavalla.

ValorAtual = digitalRead (anturi);

Tämän jälkeen tarkistetaan, onko muuttujan ValorAtual arvo 1 tai 0, kuten alla on esitetty.

jos (ValorAtual == 1 && ValorAnterior == 0) {IntrudeAlert ();

ValorAnterior = 1;

} if (ValorAtual == 0 && ValorAnterior == 0) {NoMoreIntrude ();

ValorAnterior = 0;

}

Jos muuttuja ValorAtual on 1 ja muuttujat ValorAnterior on 0, anturi todella aktivoituu ja se on deaktivoitu (ValorAnterior == 0). Tällä tavalla toiminto suoritetaan ja käyttäjä vastaanottaa viestin matkapuhelimeesi. Tämän jälkeen muuttujan ValorAnterior arvo on yhtä suuri kuin 1.

Tällä tavalla muuttuja ValorAnterior ilmoittaa, että anturin todellinen tila aktivoidaan.

Jos muuttujan ValorAtual arvo on 0 ja ValorAnterior -muuttujan arvo on 0, anturi ei havaitse tunkeutumista ja sen arvo aktivoidaan.

Tällä tavalla järjestelmä lähettää viestin käyttäjän matkapuhelimelle ja päivittää anturin todellisen arvon 0. Tämä arvo osoittaa, että anturi ei käynnisty tällä hetkellä.

Käyttäjälle lähetetyt viestit on esitetty yllä.

Nyt opimme käyttämään toimintoa viestien lähettämiseksi käyttäjän matkapuhelimeen.

Vaihe 5: Viestien lähettämisen toiminnot

Tässä järjestelmässä on kaksi toimintoa. Ne ovat funktioita, joilla on sama rakenne. Ero niiden välillä on nimi ja lähetetty viesti, mutta kun analysoimme sitä, näemme, että ne ovat täysin samat.

Seuraavaksi esittelemme toimintojen koko rakenteen ja keskustelemme koodista.

void IntrudeAlert () // Funcao para enviar mensagem de alerta Umidade Baixa {chip.println ("AT+CMGF = 1"); viive (1000); chip.println ("AT + CMGS = \" " + SeuNumero +" / "\ r"); viive (1000); String SMS = "Avattu ovi!"; siru.println (SMS); viive (100); siru.println ((char) 26); viive (1000); }

void NoMoreIntrude () // Funcao para enviar mensagem de alerta Umidade Normal

{chip.println ("AT+CMGF = 1"); viive (1000); chip.println ("AT + CMGS = \" " + SeuNumero +" / "\ r"); viive (1000); String SMS = "Suljettu ovi!"; siru.println (SMS); viive (100); siru.println ((char) 26); viive (1000); }

SIM800L -moduuli käyttää toimintojaan AT -komennolla. Siksi näiden komentojen kautta lähetämme viestin käyttäjän matkapuhelimelle.

AT+CGMF = 1 käytetään moduulin määrittämiseen toimimaan SMS -tekstitilassa. Viiveen jälkeen järjestelmä lähettää viestin käyttäjälle seuraavan komennon kautta.

chip.println ("AT + CMGS = \" " + SeuNumero +" / "\ r");

Komennossa SIM800L -moduuli on valmis lähettämään viestin SeuNumero -merkkijonoon rekisteröidystä matkapuhelinnumerosta. Tämän jälkeen järjestelmä lataa viestin merkkijonoon ja lähettää käyttäjän matkapuhelimen, kuten alla on esitetty.

String SMS = "Suljettu ovi!"; siru.println (SMS); viive (100); siru.println ((char) 26); viive (1000);

Merkkiä (26) käytetään ilmoittamaan viestin lopusta. Tämä työprosessi on samanlainen, kun kaksi toimintoa lähettää viestin käyttäjälle.

Kiitokset

Arvostamme nyt JLCPCB: n tukea tämän työn suorittamisessa, ja jos olet kiinnostunut, käytä seuraavaa linkkiä ja lataa Arduino -yhteensopiva levy.

Suositeltava: