สารบัญ:

การตรวจจับผู้บุกรุก HiFive1 Arduino พร้อมการแจ้งเตือน MQTT โดยใช้ ESP32 หรือ ESP8266: 6 ขั้นตอน
การตรวจจับผู้บุกรุก HiFive1 Arduino พร้อมการแจ้งเตือน MQTT โดยใช้ ESP32 หรือ ESP8266: 6 ขั้นตอน

วีดีโอ: การตรวจจับผู้บุกรุก HiFive1 Arduino พร้อมการแจ้งเตือน MQTT โดยใช้ ESP32 หรือ ESP8266: 6 ขั้นตอน

วีดีโอ: การตรวจจับผู้บุกรุก HiFive1 Arduino พร้อมการแจ้งเตือน MQTT โดยใช้ ESP32 หรือ ESP8266: 6 ขั้นตอน
วีดีโอ: เครื่องตรวจจับผู้บุกรุก 2024, พฤศจิกายน
Anonim
การตรวจจับผู้บุกรุก HiFive1 Arduino พร้อมการแจ้งเตือน MQTT โดยใช้ ESP32 หรือ ESP8266
การตรวจจับผู้บุกรุก HiFive1 Arduino พร้อมการแจ้งเตือน MQTT โดยใช้ ESP32 หรือ ESP8266

HiFive1 เป็นบอร์ด RISC-V ที่เข้ากันได้กับ Arduino ตัวแรกที่สร้างขึ้นด้วย FE310 CPU จาก SiFive บอร์ดนี้เร็วกว่า Arduino UNO ประมาณ 20 เท่า แต่ยังขาดการเชื่อมต่อไร้สายเหมือนกับบอร์ด UNO

โชคดีที่มีโมดูลราคาไม่แพงจำนวนมากในตลาดเพื่อลดข้อจำกัดนี้ ในบทช่วยสอนนี้ ฉันใช้ ESP32 หรือ ESP8266 เพื่อรับการเชื่อมต่อไร้สาย แม้ว่า ESP-01 จะมีราคาถูกเพียงใด เนื่องจากจำเป็นต้องตั้งโปรแกรมด้วย Arduino Sketch ESP-01 จึงเป็นโซลูชันที่ใช้งานได้จริงน้อยกว่า ในการตั้งโปรแกรม ESP-01 จำเป็นต้องใช้อะแดปเตอร์ USB ภายนอกกับ ESP-01 ที่ฉันไม่มีในขณะที่ทำบทช่วยสอนนี้ (หากคุณสนใจที่จะใช้ HiFive1 กับ ESP-01 ให้ไปที่ลิงก์นี้) ฉันยังไตร่ตรองถึงการใช้ Arduino Shield แต่ลงเอยด้วยการใช้ ESP8266/32 เนื่องจากป้ายราคาค่อนข้างแพงที่เกราะส่วนใหญ่มี

โครงการนี้จะเน้นที่การสร้างระบบตรวจจับผู้บุกรุก ซึ่งจะทำงานโดยส่งการแจ้งเตือนไปยัง MQTT Broker ทุกครั้งที่เซ็นเซอร์ Ultrasonic (SRF05) ตรวจพบวัตถุที่ข้ามเส้นสายตา

วัสดุที่จำเป็นสำหรับโครงการนี้:

  • บอร์ด HiFive1 (สามารถซื้อได้ที่นี่)
  • โมดูล ESP32 Dev หรือ ESP8266 NodeMCU 1.0
  • ตัวต้านทาน 10k x 2
  • ตัวต้านทาน 1k
  • เขียงหั่นขนม
  • สายจัมเปอร์ x 6
  • SRF05 โมดูลอัลตราโซนิก
  • อุปกรณ์โทรศัพท์

ขั้นตอนที่ 1: การตั้งค่าสภาพแวดล้อม

การตั้งค่าสิ่งแวดล้อม
การตั้งค่าสิ่งแวดล้อม

ติดตั้ง Arduino IDE

1. ทำตามคำแนะนำเพื่อติดตั้งแพ็คเกจ Arduino ของบอร์ด HiFive1 และไดรเวอร์ USB

2. ติดตั้งแพ็คเกจบอร์ด ESP32 หรือ ESP8266 โดยเพิ่ม URL ที่เหมาะสมใน "File->Preferences->Additional Boards Manager":

  • ESP8266 -
  • ESP32 -

ขั้นตอนที่ 2: การเดินสาย ESP32

การเดินสายไฟ ESP32
การเดินสายไฟ ESP32
การเดินสายไฟ ESP32
การเดินสายไฟ ESP32

หากคุณกำลังใช้ ESP8266 ให้ข้ามไปยังขั้นตอนที่ 3

สำคัญ: SRF05 มาในรูปแบบพินเอาต์ 2 เวอร์ชันที่เป็นเวอร์ชันมิเรอร์ของกันและกัน ตรวจสอบให้แน่ใจว่าคุณมีโมดูลเดียวกันกับของฉันโดยใช้ลิงก์ด้านล่าง

สำหรับรายละเอียดทางเทคนิคเพิ่มเติมเกี่ยวกับ SRF05 ตามลิงค์นี้

GND (HiFive1) - > GND (SRF05)5v (HiFive1) - > VCC (SRF05) DI/O 11 (HiFive1) - > Trigger Pin (SRF05)DI/O 12 (HiFive1) - > Echo Pin (SRF05)DI/ O 5 (HiFive1) - > Tx (ESP32) DI/O 6 (HiFive1) - > Rx (ESP32)

หมายเหตุ: ตรวจสอบให้แน่ใจว่าจัมเปอร์ IOREF ตั้งไว้ที่ 3.3v.

ขั้นตอนที่ 3: การเดินสาย ESP8266

การเดินสาย ESP8266
การเดินสาย ESP8266
การเดินสาย ESP8266
การเดินสาย ESP8266

สำคัญ: SRF05 มาในรูปแบบพินเอาต์ 2 เวอร์ชันที่เป็นเวอร์ชันมิเรอร์ของกันและกัน ตรวจสอบให้แน่ใจว่าคุณมีโมดูลเดียวกันกับของฉันโดยใช้ลิงก์ด้านล่าง

สำหรับรายละเอียดทางเทคนิคเพิ่มเติมเกี่ยวกับ SRF05 ตามลิงค์นี้

GND (HiFive1) - > GND (SRF05)5v (HiFive1) - > VCC (SRF05)DI/O 11 (HiFive1) - > Trigger Pin (SRF05) DI/O 12 (HiFive1) - > Echo Pin (SRF05) DI/ O 5 (HiFive1) - > Tx (ESP8266)DI/O 6 (HiFive1) - > Rx (ESP8266)

หมายเหตุ: ตรวจสอบให้แน่ใจว่าจัมเปอร์ IOREF ถูกตั้งค่าเป็น 3.3v

ขั้นตอนที่ 4: การเขียนโปรแกรม

รหัส HiFive1:

ก่อนตั้งโปรแกรมให้ตั้งค่า "Tools->Board" เป็นบอร์ด HiFive1 "Tools->CPU Clock Frequency" เป็น "256MHz PLL", "Tools->Programmer" เป็น "SiFive OpenOCD" และเลือก Serial Port ที่ถูกต้อง

คุณจะต้องดาวน์โหลดไลบรารี Ultrasonic นี้และ PubSubClient นี้และแตกไฟล์เหล่านี้ลงในโฟลเดอร์ Arduino Libraries ที่พบใน "User->Documents->Arduino->Libraries"

รหัส ESP32/8266:

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

สำหรับ ESP32 - ตั้งค่า "Tools->Board" เป็น "ESP32 Dev Module", "Tools->Programmer" เป็น "AVRISP mkll" และเลือก Serial Port ที่ถูกต้อง

สำหรับ ESP8266 - ตั้งค่า "Tools->Board" เป็น "NodeMCU 1.0 (โมดูล ESP-12E)", "Tools->Programmer" เป็น "AVRISP mkll" และเลือก Serial Port ที่ถูกต้อง

โค้ดสเก็ตช์ถูกยืมมาจากที่นี่พร้อมกับการดัดแปลงเพื่อแปลงเป็นระบบตรวจจับผู้บุกรุก

ขั้นตอนที่ 5: การตั้งค่าไคลเอนต์

การตั้งค่าไคลเอนต์
การตั้งค่าไคลเอนต์
การตั้งค่าไคลเอนต์
การตั้งค่าไคลเอนต์
การตั้งค่าไคลเอนต์
การตั้งค่าไคลเอนต์
การตั้งค่าไคลเอนต์
การตั้งค่าไคลเอนต์

ฉันใช้โบรกเกอร์ MQTT บนคลาวด์ (อันนี้) และโทรศัพท์ Android กับแอพนี้

ในการตั้งค่าทุกอย่าง คุณจะต้องเปิดบัญชี

ใช้ภาพหน้าจอที่ให้มาเพื่อผ่านการตั้งค่า CloudMQTT และแอพ

ขั้นตอนที่ 6: ผลลัพธ์สุดท้าย

ผลสุดท้าย
ผลสุดท้าย
ผลสุดท้าย
ผลสุดท้าย
ผลสุดท้าย
ผลสุดท้าย
ผลสุดท้าย
ผลสุดท้าย

หมายเหตุ: คุณควรตั้งค่าอัตราบอดของ Serial Monitor เป็น 115200 เนื่องจากเป็นอัตราบอดที่เราใช้ในแบบร่างของเรา

ผลลัพธ์สุดท้ายของคุณควรคล้ายกับภาพหน้าจอสุดท้าย

แนะนำ: