Isi kandungan:

Sistem Keselamatan Telefon Dengan Arduino: 5 Langkah
Sistem Keselamatan Telefon Dengan Arduino: 5 Langkah

Video: Sistem Keselamatan Telefon Dengan Arduino: 5 Langkah

Video: Sistem Keselamatan Telefon Dengan Arduino: 5 Langkah
Video: Arduino Bluetooth Module Tutorial | Arduino HC-05 Bluetooth Module Communication | HC-05 AT Mode 2024, November
Anonim
Sistem Keselamatan Telefon Dengan Arduino
Sistem Keselamatan Telefon Dengan Arduino

Rumah anda tidak akan dilindungi sekiranya anda tidak melaksanakan projek ini. Projek ini akan membantu anda mencetuskan penggera melalui telefon bimbit apabila penyusup masuk ke rumah anda.

Dengan cara itu, jika anda menggunakan projek ini, anda akan menerima SMS melalui telefon bimbit dan akan dapat melindungi rumah anda sekiranya berlaku pencerobohan.

Untuk ini, kami akan menggunakan Arduino Compatible Board dengan Modul SIM800L dan PIR Sensor. Sensor PIR akan bertanggungjawab untuk mengesan kehadiran penyusup dan SIM800L akan bertanggungjawab untuk menghantar SMS amaran kepada pemilik rumah.

Bekalan

  • Papan yang Sesuai dengan Arduino
  • Sensor PIR
  • Perintang 10kR
  • Pelompat
  • Papan Protob
  • Modul SIM800L

Langkah 1: Inti Projek

Inti projek adalah modul SIM800L. Modul ini akan dapat menerima arahan Arduino dan mengirim SMS ke telefon bimbit pengguna. Dengan cara itu, apabila pengguna menerima amaran, dia dapat menghubungi polis atau melakukan tindakan lain.

Papan Kompatibel Arduino akan bertanggungjawab untuk memeriksa keadaan sensor dan kemudian akan menghantar mesej amaran kepada pengguna jika mengesan kehadiran penyusup.

Proses ini dilakukan berkat arahan kawalan antara Arduino dan SIM800L Module. Oleh itu, dari itu, kami akan memperkenalkan anda langkah demi langkah untuk anda membina sistem ini, meninggalkan rumah anda terlindung dan memberi amaran kepada anda setiap kali ada penceroboh menyerang.

Sekiranya anda ingin memuat turun Arduino Compatible Board, anda boleh mengakses pautan ini dan mendapatkan fail untuk membeli papan anda di JLCPCB.

Sekarang, mari kita mulakan!

Langkah 2: Litar Elektronik Projek dan Pengaturcaraan

Litar Elektronik Projek dan Pengaturcaraan
Litar Elektronik Projek dan Pengaturcaraan
Litar Elektronik Projek dan Pengaturcaraan
Litar Elektronik Projek dan Pengaturcaraan

Pertama, kami akan menyediakan litar elektronik dan kemudian kami akan membincangkan kod projek selangkah demi selangkah untuk anda.

#termasuk perisianSerial chip (10, 11);

Rentetan SeuNumero = "+5585988004783";

#tentukan sensor 12

bool ValorAtual = 0, ValorAnterior = 0;

persediaan tidak sah ()

{Serial.begin (9600); Serial.println ("Inicializando Sistema …"); kelewatan (5000); chip.begin (9600); kelewatan (1000);

pinMode (sensor, INPUT); // Configura o Pino do Sensor como Entrada

}

gelung kosong ()

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

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

{IntrudeAlert; ValorAnterior = 1; }

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

{NoMoreIntrude (); ValorAnterior = 0; }

}

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

{chip.println ("AT + CMGF = 1"); kelewatan (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); kelewatan (1000); Rentetan SMS = "Makluman Melanggar!"; chip.println (SMS); kelewatan (100); chip.println ((char) 26); kelewatan (1000); }

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

{chip.println ("AT + CMGF = 1"); kelewatan (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); kelewatan (1000); Rentetan SMS = "Tidak Lagi Mengganggu!"; chip.println (SMS); kelewatan (100); chip.println ((char) 26); kelewatan (1000); }

Dalam kod yang ditunjukkan di bawah, pada mulanya kami menyatakan perpustakaan komunikasi bersiri SoftwareSerial.h, seperti yang ditunjukkan di bawah.

#sertakan

Setelah menentukan perpustakaan, pin komunikasi Tx dan Rx ditakrifkan. Pin ini adalah pin alternatif dan digunakan untuk membenarkan komunikasi bersiri pada pin Arduino yang lain. Perpustakaan SoftwareSerial dikembangkan untuk membolehkan anda menggunakan perisian untuk meniru fungsi

Cip Serial Perisian (10, 11);

Selepas ini, nombor telefon bimbit dinyatakan seperti ditunjukkan di bawah.

Rentetan SeuNumero = "+5585988004783";

Skema reka bentuk elektronik mudah dan senang dipasang. Seperti yang anda lihat di litar, Arduino Compatible Board bertanggungjawab untuk membaca status sensor dan kemudian menghantar SMS kepada pemilik rumah.

Mesej akan dihantar sekiranya penyusup dikesan di dalam rumah. Sensor PIR (Passive Infra Red) adalah sensor yang digunakan untuk mengesan pergerakan dari isyarat inframerah. Dari isyarat yang dihantar ke Arduino, modul SIM800L akan menghantar mesej kepada pengguna.

Diod akan digunakan untuk memberikan penurunan voltan untuk membekalkan modul SIM800L. Oleh kerana modul tidak dapat dihidupkan dengan 5V. Dengan cara ini, voltan 4.3V akan tiba untuk menghidupkan modul anda dan memastikan ia berfungsi dengan selamat.

Langkah 3: Fungsi Persediaan Tidak Sah ()

Dalam fungsi setup void, kita akan menginisialisasi komunikasi bersiri dan mengkonfigurasi pin sensor sebagai input. Kawasan kod ditunjukkan di bawah.

persediaan tidak sah ()

{

Serial.begin (9600); Serial.println ("Inicializando Sistema …"); kelewatan (5000); chip.begin (9600); kelewatan (1000); pinMode (sensor, INPUT); // Configura o Pino do Sensor como Entrada}

Seperti yang dapat dilihat, komunikasi bersiri dua dimulakan. Serial.begin digunakan untuk menginisialisasi siri asli Arduino dan chip.begin adalah siri yang ditiru melalui perpustakaan SoftwareSerial. Selepas ini, kita akan berfungsi untuk gelung void.

Langkah 4: Fungsi Projek dan Gelung Void

Projek dan Fungsi Gelung Void
Projek dan Fungsi Gelung Void
Projek dan Fungsi Gelung Void
Projek dan Fungsi Gelung Void

Sekarang, kami akan memaparkan logik utama pengaturcaraan dalam fungsi gelung void.

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

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

{IntrudeAlert ();

ValorAnterior = 1;

}

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

{NoMoreIntrude ();

ValorAnterior = 0;

}

}

Pertama, isyarat dari sensor kehadiran PIR akan dibaca seperti yang ditunjukkan di bawah.

ValorAtual = digitalRead (sensor);

Selepas ini, ia akan disahkan jika nilai dalam pemboleh ubah ValorAtual adalah 1 atau 0, seperti yang ditunjukkan di bawah.

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

ValorAnterior = 1;

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

ValorAnterior = 0;

}

Sekiranya pemboleh ubah ValorAtual itu 1 dan pemboleh ubah ValorAnterior itu 0, sensor sebenarnya diaktifkan dan anteriornya dinyahaktifkan (ValorAnterior == 0). Dengan cara ini, fungsi tersebut akan dilaksanakan dan pengguna akan menerima mesej di telefon bimbit anda. Selepas ini, nilai pemboleh ubah ValorAnterior akan sama pada 1.

Dengan cara ini, pemboleh ubah ValorAnterior akan diberi isyarat bahawa keadaan sebenar sensor digerakkan.

Sekarang, sekiranya nilai pemboleh ubah ValorAtual adalah 0 dan nilai pemboleh ubah ValorAnterior ia sama pada 0, sensor tidak mengesan mengganggu dan kemudian nilainya digerakkan.

Dengan cara ini, sistem akan menghantar mesej untuk telefon bimbit pengguna dan akan mengemas kini nilai sebenar sensor untuk 0. Nilai ini akan menunjukkan bahawa sensor tidak bergerak pada masa ini.

Mesej yang dihantar untuk pengguna ditunjukkan di atas.

Sekarang, kita akan belajar bagaimana menjalankan fungsi untuk menghantar mesej untuk telefon bimbit pengguna.

Langkah 5: Fungsi Menghantar Mesej

Dalam sistem ini, terdapat dua fungsi. Mereka berfungsi dengan struktur yang sama. Perbezaan di antara mereka adalah nama dan mesej yang dihantar, tetapi ketika kita menganalisisnya, kita akan melihat bahawa semuanya sama.

Seterusnya, kami akan membentangkan struktur fungsi yang lengkap dan membincangkan kodnya.

batal IntrudeAlert () // Funcao para enviar mensagem de alerta Umidade Baixa {chip.println ("AT + CMGF = 1"); kelewatan (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); kelewatan (1000); Rentetan SMS = "Pintu Dibuka!"; chip.println (SMS); kelewatan (100); chip.println ((char) 26); kelewatan (1000); }

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

{chip.println ("AT + CMGF = 1"); kelewatan (1000); chip.println ("AT + CMGS = \" "+ SeuNumero +" / "\ r"); kelewatan (1000); Rentetan SMS = "Pintu Tertutup!"; chip.println (SMS); kelewatan (100); chip.println ((char) 26); kelewatan (1000); }

Modul SIM800L menggunakan AT Command untuk mengawal fungsinya. Oleh itu, melalui arahan ini, kami akan menghantar mesej untuk telefon bimbit pengguna.

AT + CGMF = 1 digunakan untuk mengkonfigurasi modul agar berfungsi dalam mod Teks SMS. Selepas penundaan, sistem akan menghantar mesej untuk pengguna melalui arahan berikut.

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

Dalam perintah itu, modul SIM800L akan siap mengirim pesan untuk nombor telefon bimbit yang didaftarkan dalam rentetan SeuNumero. Selepas ini, sistem akan memuatkan mesej dalam rentetan dan akan menghantar untuk telefon bimbit pengguna, seperti yang ditunjukkan di bawah.

Rentetan SMS = "Pintu Tertutup!"; chip.println (SMS); kelewatan (100); chip.println ((char) 26); kelewatan (1000);

Arang (26) digunakan untuk memberi isyarat pada akhir mesej. Proses kerja ini serupa untuk dua fungsi untuk menghantar mesej untuk pengguna.

Ucapan terima kasih

Sekarang, kami menghargai sokongan JLCPCB untuk melaksanakan kerja ini dan, jika anda berminat, akses pautan berikut dan muat turun Arduino Compatible Board.

Disyorkan: