สารบัญ:

ระบบรักษาความปลอดภัยโทรศัพท์ด้วย Arduino: 5 ขั้นตอน
ระบบรักษาความปลอดภัยโทรศัพท์ด้วย Arduino: 5 ขั้นตอน

วีดีโอ: ระบบรักษาความปลอดภัยโทรศัพท์ด้วย Arduino: 5 ขั้นตอน

วีดีโอ: ระบบรักษาความปลอดภัยโทรศัพท์ด้วย Arduino: 5 ขั้นตอน
วีดีโอ: ระบบรักษาความปลอดภัยในบ้าน security kit ป้องกันขโมย แจ้งเตือนผ่านมือถือ EP2/2 : วิธีการเชื่อมต่อ 2024, ธันวาคม
Anonim
ระบบรักษาความปลอดภัยโทรศัพท์ด้วย Arduino
ระบบรักษาความปลอดภัยโทรศัพท์ด้วย Arduino

บ้านของคุณจะไม่มีการป้องกันถ้าคุณไม่ใช้โครงการนี้ โปรเจ็กต์นี้จะช่วยให้คุณส่งสัญญาณเตือนผ่านโทรศัพท์มือถือเมื่อผู้บุกรุกบุกเข้ามาในบ้านของคุณ

ด้วยวิธีนี้ หากคุณใช้โปรเจ็กต์นี้ คุณจะได้รับ SMS ทางโทรศัพท์มือถือและจะสามารถปกป้องบ้านของคุณในกรณีที่เกิดการบุกรุก

สำหรับสิ่งนี้ เราจะใช้บอร์ดที่เข้ากันได้กับ Arduino กับโมดูล SIM800L และเซ็นเซอร์ PIR เซ็นเซอร์ PIR จะทำหน้าที่ตรวจจับผู้บุกรุก และ SIM800L จะรับผิดชอบในการส่ง SMS แจ้งเตือนไปยังเจ้าของบ้าน

เสบียง

  • บอร์ดที่เข้ากันได้กับ Arduino
  • เซ็นเซอร์ PIR
  • ตัวต้านทาน 10kR
  • จัมเปอร์
  • โปรโตบอร์ด
  • โมดูล SIM800L

ขั้นตอนที่ 1: หัวใจของโครงการ

หัวใจของโครงการคือโมดูล SIM800L โมดูลนี้จะสามารถรับคำสั่ง Arduino และส่ง SMS ไปยังโทรศัพท์มือถือของผู้ใช้ได้ ด้วยวิธีนี้ เมื่อผู้ใช้ได้รับการแจ้งเตือน เขาสามารถโทรหาตำรวจหรือดำเนินการประเภทอื่นได้

Arduino Compatible Board จะรับผิดชอบในการตรวจสอบสถานะของเซ็นเซอร์และจะส่งข้อความแจ้งเตือนไปยังผู้ใช้หากตรวจพบว่ามีผู้บุกรุก

กระบวนการนี้ดำเนินการได้ด้วยคำสั่งควบคุมระหว่าง Arduino และโมดูล SIM800L ดังนั้น จากนั้น เราจะแนะนำคุณทีละขั้นตอนเพื่อสร้างระบบนี้ ปล่อยให้บ้านของคุณได้รับการปกป้อง และเตือนคุณทุกครั้งที่มีผู้บุกรุกบุกรุกเข้ามา

หากคุณต้องการดาวน์โหลด Arduino Compatible Board คุณสามารถเข้าถึงลิงค์นี้และรับไฟล์เพื่อซื้อบอร์ดของคุณที่ JLCPCB

เอาล่ะ มาเริ่มกันเลย!

ขั้นตอนที่ 2: โครงการวงจรอิเล็กทรอนิกส์และการเขียนโปรแกรม

โครงการวงจรอิเล็กทรอนิกส์และการเขียนโปรแกรม
โครงการวงจรอิเล็กทรอนิกส์และการเขียนโปรแกรม
โครงการวงจรอิเล็กทรอนิกส์และการเขียนโปรแกรม
โครงการวงจรอิเล็กทรอนิกส์และการเขียนโปรแกรม

ขั้นแรก เราจะทำให้วงจรอิเล็กทรอนิกส์พร้อมใช้งาน จากนั้นเราจะพูดถึงรหัสโครงการทีละขั้นตอนสำหรับคุณ

#include SoftwareSerial ชิป (10, 11);

สตริง SeuNumero = "+5585988004783";

#defineเซ็นเซอร์12

บูล ValorAtual = 0, ValorAnterior = 0;

การตั้งค่าเป็นโมฆะ ()

{ Serial.begin(9600); Serial.println("Inicializando Sistema…"); ล่าช้า (5000); ชิป.begin(9600); ล่าช้า (1000);

pinMode(เซ็นเซอร์, INPUT); //กำหนดค่าหรือ Pino do Sensor como Entrada

}

วงเป็นโมฆะ ()

{// Le o valor do pino do sensor ValorAtual = digitalRead (เซ็นเซอร์);

ถ้า(ValorAtual == 1 && ValorAnterior == 0)

{ IntrudeAlert; ValorAnterior = 1; }

ถ้า(ValorAtual == 0 && ValorAnterior == 1)

{ NoMoreIntrude(); ValorAnterior = 0; }

}

ถือเป็นโมฆะ IntrudeAlert() //Funcao para enviar mensagem de alerta Umidade Baixa

{ ชิป.println("AT+CMGF=1"); ล่าช้า (1000); chip.println("AT+CMGS=\"" + SeuNumero + "\"\r"); ล่าช้า (1000); String SMS = "แจ้งเตือนการบุกรุก!"; ชิป.println(SMS); ล่าช้า (100); chip.println((ถ่าน)26); ล่าช้า (1000); }

ถือเป็นโมฆะ NoMoreIntrude()//Funcao para enviar mensagem de alerta Umidade Normal

{ ชิป.println("AT+CMGF=1"); ล่าช้า (1000); chip.println("AT+CMGS=\"" + SeuNumero + "\"\r"); ล่าช้า (1000); String SMS = "ไม่มีการบุกรุกอีกต่อไป!"; ชิป.println(SMS); ล่าช้า (100); chip.println((ถ่าน)26); ล่าช้า (1000); }

ในโค้ดที่แสดงด้านล่าง ในตอนแรกเราได้ประกาศไลบรารีการสื่อสารซีเรียล SoftwareSerial.h ดังที่แสดงด้านล่าง

#รวม

หลังจากกำหนดไลบรารีแล้ว หมุดการสื่อสาร Tx และ Rx ก็ถูกกำหนด พินเหล่านี้เป็นพินสำรองและใช้เพื่ออนุญาตการสื่อสารแบบอนุกรมบนพิน Arduino อื่นๆ ไลบรารี SoftwareSerial ได้รับการพัฒนาเพื่อให้คุณสามารถใช้ซอฟต์แวร์เพื่อทำซ้ำการทำงานได้

ซอฟต์แวร์ชิปซีเรียล (10, 11);

หลังจากนี้หมายเลขโทรศัพท์มือถือที่ประกาศแสดงอยู่ด้านล่าง

สตริง SeuNumero = "+5585988004783";

รูปแบบการออกแบบอิเล็กทรอนิกส์นั้นเรียบง่ายและประกอบง่าย ดังที่คุณเห็นบนวงจร Arduino Compatible Board มีหน้าที่อ่านสถานะเซ็นเซอร์แล้วส่ง SMS ไปยังเจ้าของบ้าน

ระบบจะส่งข้อความหากตรวจพบผู้บุกรุกภายในบ้าน เซ็นเซอร์ PIR (Passive Infra Red) เป็นเซ็นเซอร์ที่ใช้ตรวจจับการเคลื่อนไหวจากสัญญาณอินฟราเรด จากสัญญาณที่ส่งไปยัง Arduino โมดูล SIM800L จะส่งข้อความถึงผู้ใช้

ไดโอดจะใช้เพื่อให้แรงดันไฟฟ้าตกเพื่อจ่ายโมดูล SIM800L เนื่องจากโมดูลไม่สามารถขับเคลื่อนด้วย 5V ด้วยวิธีนี้ แรงดันไฟฟ้า 4.3V จะส่งถึงโมดูลของคุณ และทำงานอย่างปลอดภัย

ขั้นตอนที่ 3: ฟังก์ชันการตั้งค่าเป็นโมฆะ ()

ในฟังก์ชันการตั้งค่าเป็นโมฆะ เราจะเริ่มต้นการสื่อสารแบบอนุกรมและกำหนดค่าพินเซ็นเซอร์เป็นอินพุต ภูมิภาคของรหัสแสดงอยู่ด้านล่าง

การตั้งค่าเป็นโมฆะ ()

{

Serial.begin(9600); Serial.println("Inicializando Sistema…");ล่าช้า(5000); ชิป.begin(9600); ล่าช้า (1000); pinMode(เซ็นเซอร์, INPUT); //กำหนดค่าหรือ Pino do Sensor como Entrada }

อย่างที่คุณเห็น การสื่อสารแบบอนุกรมทั้งสองได้เริ่มต้นขึ้น Serial.begin ใช้เพื่อเริ่มต้นซีเรียลดั้งเดิมของ Arduino และ chip.begin เป็นอนุกรมที่จำลองผ่านไลบรารี SoftwareSerial หลังจากนี้ เราจะใช้ฟังก์ชันวนรอบเป็นโมฆะ

ขั้นตอนที่ 4: โปรเจ็กต์และฟังก์ชัน Void Loop

โปรเจ็กต์และฟังก์ชันวนรอบเป็นโมฆะ
โปรเจ็กต์และฟังก์ชันวนรอบเป็นโมฆะ
โปรเจ็กต์และฟังก์ชันวนรอบเป็นโมฆะ
โปรเจ็กต์และฟังก์ชันวนรอบเป็นโมฆะ

ตอนนี้เราจะนำเสนอตรรกะหลักของการเขียนโปรแกรมในฟังก์ชัน void loop

วงเป็นโมฆะ () { // Le o valor do pino do sensor ValorAtual = digitalRead (เซ็นเซอร์);

ถ้า(ValorAtual == 1 && ValorAnterior == 0)

{ IntrudeAlert();

ValorAnterior = 1;

}

ถ้า(ValorAtual == 0 && ValorAnterior == 1)

{ NoMoreIntrude();

ValorAnterior = 0;

}

}

ขั้นแรก สัญญาณจากเซ็นเซอร์การมีอยู่ของ PIR จะถูกอ่านดังที่แสดงด้านล่าง

ValorAtual = digitalRead (เซ็นเซอร์);

หลังจากนี้จะมีการตรวจสอบว่าค่าในตัวแปร ValorAtual เป็น 1 หรือ 0 ดังที่แสดงด้านล่าง

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

ValorAnterior = 1;

} ถ้า (ValorAtual == 0 && ValorAnterior == 0) { NoMoreIntrude ();

ValorAnterior = 0;

}

กรณีตัวแปร ValorAtual คือ 1 และตัวแปร ValorAnterior คือ 0 เซ็นเซอร์ถูกเปิดใช้งานจริง ๆ และด้านหน้าปิดใช้งาน (ValorAnterior == 0) ด้วยวิธีนี้ ฟังก์ชันจะถูกดำเนินการและผู้ใช้จะได้รับข้อความบนมือถือของคุณ หลังจากนี้ค่าของตัวแปร ValorAnterior จะเท่ากับ 1

ด้วยวิธีนี้ ตัวแปร ValorAnterior จะส่งสัญญาณว่าสถานะที่แท้จริงของเซ็นเซอร์ถูกกระตุ้น

ตอนนี้ กรณีที่ค่าของตัวแปร ValorAtual คือ 0 และค่าของตัวแปร ValorAnterior เท่ากับ 0 เซ็นเซอร์จะไม่ตรวจจับการบุกรุก จากนั้นจึงเปิดใช้งานค่า

ด้วยวิธีนี้ ระบบจะส่งข้อความไปยังโทรศัพท์มือถือของผู้ใช้และจะอัปเดตค่าที่แท้จริงของเซ็นเซอร์เป็น 0 ค่านี้จะระบุว่าเซ็นเซอร์ไม่ได้ทำงานในขณะนี้

ข้อความที่ส่งถึงผู้ใช้แสดงไว้ด้านบน

ตอนนี้ เราจะเรียนรู้วิธีใช้งานฟังก์ชันเพื่อส่งข้อความไปยังโทรศัพท์มือถือของผู้ใช้

ขั้นตอนที่ 5: ฟังก์ชั่นในการส่งข้อความ

ในระบบนี้ มีสองหน้าที่ เป็นหน้าที่ที่มีโครงสร้างเหมือนกัน ความแตกต่างระหว่างพวกเขาคือชื่อและข้อความที่ส่ง แต่เมื่อเราวิเคราะห์เราจะเห็นว่าพวกเขาเหมือนกันทั้งหมด

ต่อไปเราจะนำเสนอโครงสร้างที่สมบูรณ์ของฟังก์ชั่นและหารือเกี่ยวกับรหัส

ถือเป็นโมฆะ IntrudeAlert () // Funcao para enviar mensagem de alerta Umidade Baixa { chip.println ("AT+CMGF=1"); ล่าช้า (1000); chip.println("AT+CMGS=\"" + SeuNumero + "\"\r"); ล่าช้า (1000); String SMS = "เปิดประตู!"; ชิป.println(SMS); ล่าช้า (100); chip.println((ถ่าน)26); ล่าช้า (1000); }

ถือเป็นโมฆะ NoMoreIntrude()//Funcao para enviar mensagem de alerta Umidade Normal

{ ชิป.println("AT+CMGF=1"); ล่าช้า (1000); chip.println("AT+CMGS=\"" + SeuNumero + "\"\r"); ล่าช้า (1000); String SMS = "ประตูปิด!"; ชิป.println(SMS); ล่าช้า (100); chip.println((ถ่าน)26); ล่าช้า (1000); }

โมดูล SIM800L ใช้คำสั่ง AT เพื่อควบคุมการทำงาน ดังนั้น เราจะส่งข้อความไปยังโทรศัพท์มือถือของผู้ใช้โดยใช้คำสั่งเหล่านี้

AT+CGMF = 1 ใช้เพื่อกำหนดค่าโมดูลให้ทำงานในโหมดข้อความ SMS หลังจากหน่วงเวลา ระบบจะส่งข้อความถึงผู้ใช้โดยใช้คำสั่งต่อไปนี้

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

ในคำสั่ง โมดูล SIM800L จะพร้อมที่จะส่งข้อความสำหรับหมายเลขโทรศัพท์มือถือที่ลงทะเบียนในสตริง SeuNumero หลังจากนี้ระบบจะโหลดข้อความในสตริงและส่งไปยังโทรศัพท์มือถือของผู้ใช้ดังที่แสดงด้านล่าง

String SMS = "ประตูปิด!"; ชิป.println(SMS); ล่าช้า (100); chip.println((ถ่าน)26); ล่าช้า (1000);

อักขระ (26) ใช้เพื่อส่งสัญญาณการสิ้นสุดข้อความ ขั้นตอนการทำงานนี้คล้ายกับสองฟังก์ชันในการส่งข้อความถึงผู้ใช้

รับทราบ

ตอนนี้ เราขอขอบคุณสำหรับการสนับสนุนของ JLCPCB เพื่อดำเนินงานนี้ และหากคุณสนใจ โปรดเข้าไปที่ลิงก์ต่อไปนี้และดาวน์โหลด Arduino Compatible Board

แนะนำ: