فهرست مطالب:

تشخیص نفوذ 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 سازگار با آردوینو است که با پردازنده FE310 از SiFive ساخته شده است. این برد حدود 20 برابر سریعتر از Arduino UNO است اما مانند برد UNO فاقد هرگونه اتصال بی سیم است.

خوشبختانه چندین ماژول ارزان قیمت در بازار برای کاهش این محدودیت وجود دارد. در این آموزش من از ESP32 یا ESP8266 برای دستیابی به اتصال بی سیم استفاده کردم. با وجود ارزان بودن ESP-01 ، به دلیل نیاز به برنامه ریزی آن با طرح آردوینو ، ESP-01 یک راه حل کمتر کاربردی بود. برای برنامه ریزی ESP-01 ، به یک آداپتور USB به ESP-01 خارجی نیاز دارد که در زمان ساخت این آموزش نداشتم. (اگر علاقمند به استفاده از HiFive1 با ESP-01 هستید این پیوند را دنبال کنید) من همچنین قصد استفاده از Arduino Shield را داشتم اما به دلیل قیمت نسبتاً گران قیمت اکثر سپرها ، از ESP8266/32 استفاده نکردم.

این پروژه بر ایجاد یک سیستم تشخیص نفوذ متمرکز است که با ارسال یک اعلان به MQTT Broker هر بار که سنسور اولتراسونیک (SRF05) تشخیص می دهد یک شیء از دید خود عبور می کند ، ارسال می شود.

مواد مورد نیاز این پروژه:

  • تخته HiFive1 (از اینجا قابل خرید است)
  • ESP32 Dev Module یا ESP8266 NodeMCU 1.0
  • مقاومت 10k x 2
  • مقاومت 1k
  • تخته نان
  • کابل جامپر x 6
  • ماژول اولتراسونیک SRF05
  • دستگاه موبایل

مرحله 1: تنظیم محیط

راه اندازی محیط
راه اندازی محیط

Arduino IDE را نصب کنید

1. دستورالعمل های مربوط به نصب بسته HiFive1 برد Arduino و درایور USB را دنبال کنید.

2. بسته هیئت مدیره ESP32 یا ESP8266 را با افزودن URL مناسب به "File-> Preferences-> Additional Boards Manager" نصب کنید:

  • ESP8266 -
  • ESP32 -

مرحله 2: سیم کشی ESP32

سیم کشی ESP32
سیم کشی ESP32
سیم کشی ESP32
سیم کشی ESP32

اگر از ESP8266 استفاده می کنید به مرحله 3 بروید.

مهم: SRF05 در 2 نسخه pinout وجود دارد که نسخه های آینه ای از یکدیگر هستند ، مطمئن شوید که از ماژول مشابه من با استفاده از پیوند زیر استفاده کنید.

برای اطلاعات بیشتر در مورد SRF05 این پیوند را دنبال کنید.

GND (HiFive1) -> GND (SRF05) 5v (HiFive1) -> VCC (SRF05) DI/O 11 (HiFive1) -> پین راه اندازی (SRF05) DI/O 12 (HiFive1) -> پین اکو (SRF05) DI/ O 5 (HiFive1) -> Tx (ESP32) DI/O 6 (HiFive1) -> Rx (ESP32)

توجه: مطمئن شوید که جهنده IOREF روی 3.3 ولت تنظیم شده است.

مرحله 3: سیم کشی ESP8266

سیم کشی ESP8266
سیم کشی ESP8266
سیم کشی ESP8266
سیم کشی ESP8266

مهم: SRF05 در 2 نسخه pinout وجود دارد که نسخه های آینه ای از یکدیگر هستند ، مطمئن شوید که از ماژول مشابه من با استفاده از پیوند زیر استفاده کنید.

برای اطلاعات بیشتر در مورد SRF05 این پیوند را دنبال کنید

GND (HiFive1) -> GND (SRF05) 5v (HiFive1) -> VCC (SRF05) DI/O 11 (HiFive1) -> پین راه اندازی (SRF05) DI/O 12 (HiFive1) -> پین اکو (SRF05) DI/ O 5 (HiFive1) -> Tx (ESP8266) DI/O 6 (HiFive1) -> Rx (ESP8266)

توجه: مطمئن شوید که جهنده IOREF روی 3.3 ولت تنظیم شده است.

مرحله 4: برنامه نویسی

کد HiFive1:

قبل از برنامه نویسی "Tools-> Board" را روی برد HiFive1 ، "Tools-> CPU Clock Frequency" را روی "256MHz PLL" ، "Tools-> Programmer" را روی "SiFive OpenOCD" تنظیم کرده و پورت سریال صحیح انتخاب شده است.

همچنین باید این کتابخانه اولتراسونیک و این PubSubClient را بارگیری کرده و آنها را در پوشه کتابخانه های Arduino خود که در "User-> Documents-> Arduino-> Libraries" یافت می شود ، استخراج کنید.

ESP32/8266 کد:

در طول برنامه نویسی ، برد ESP باید پین سخت افزاری Rx و Tx را قطع کند. پس از اینکه کد با موفقیت بارگذاری شد ، پین های Rx و Tx را در ESP دوباره سیم کشی کنید تا از ارتباط بین HiFive1 و ESP اطمینان حاصل شود.

برای ESP32-"Tools-> Board" را روی "ESP32 Dev Module" ، "Tools-> Programmer" را روی "AVRISP mkll" تنظیم کرده و پورت سریال صحیح را انتخاب کنید.

برای ESP8266-"Tools-> Board" را روی "NodeMCU 1.0 (ESP-12E Module)" ، "Tools-> Programmer" را روی "AVRISP mkll" تنظیم کرده و پورت سریال صحیح را انتخاب کنید.

کد طرح از اینجا با تغییراتی وام گرفته شد تا آن را به یک سیستم تشخیص نفوذ تبدیل کند.

مرحله 5: راه اندازی مشتری

راه اندازی مشتری
راه اندازی مشتری
راه اندازی مشتری
راه اندازی مشتری
راه اندازی مشتری
راه اندازی مشتری
راه اندازی مشتری
راه اندازی مشتری

من از یک کارگزار MQTT مبتنی بر ابر (این یکی) و یک تلفن Android با این برنامه استفاده کردم.

برای تنظیم همه چیز ، باید حساب باز کنید.

از تصاویر صفحه ارائه شده برای راه اندازی CloudMQTT و برنامه استفاده کنید.

مرحله 6: نتیجه نهایی

نتیجه نهایی
نتیجه نهایی
نتیجه نهایی
نتیجه نهایی
نتیجه نهایی
نتیجه نهایی
نتیجه نهایی
نتیجه نهایی

توجه: شما باید میزان Baud Serial Monitor خود را بر روی 115200 تنظیم کنید زیرا این میزان Baud است که ما در طرح خود استفاده می کنیم.

نتیجه نهایی شما باید شبیه تصاویر نهایی باشد

توصیه شده: