استفاده از PIR و Buzzer

  • مدرس: علی بیگدلی
  • تاریخ انتشار: Aug 25, 2020

آموزش اینترنت اشیا قسمت پنجم- استفاده از ماژول buzzer و motion

در این قسمت خواهید آموخت که چطور با ماژول های buzzer و motion یک دزدگیر حساس به حرکت در محیط رو راه اندازی کنید و همچنین به پروژه های دیگری که می توان از این طریق راه اندازی کرد نیز پی خواهید برد. این پروژه و سورس آن بسیار مهم خواهد بود چرا که خیلی از سنسور هایی که در آینده آموزش خواهیم داد با این مدل کد زده خواهند شد. پس مث همیشه این آموزش را دنبال کنید...

پیش نیاز های این قسمت:
  • داشتن Nodemcu
  • داستن PIR (سنسور تشخیص حرکت)
  • داشتن Breadbord (برد بورد)
نحوه اتصال ماژول ها

 

 
نمونه کد برای اتصال به سرور لوکال و سنسور PIR:
/* پروژه ساخت دزدیگر با سنسور تشخیص حرکت
 *  کنترل ارتباطات هوشمند آریا
 *  آموزش های برنامه نویسی در حوزه هوشمند سازی iot و همچنین مباحث هوش مصنوعی 
 *  همچنین فروشگاهی از تجهیزات بروز توسعه علمی و هوشمند سازی 
 *  
 *  site: www.icc-aria.ir
 *  telegram: http://t.me/icc_aria 
 *  instagram: http://instagram.com/icc_aria
 *  soroush: http://sapp.ir/icc_aria
*/
//آماده سازی و اضافه کردن کتابخانه های مربوط به پلتفرم
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>

// محل قرار گیری کد حویت در ماژول
char auth[] = "YourAuthToken";


// اطلاعات وای فای به همراه آدرس سرور برای اتصال ماژول
char ssid[] = "YourNetworkName";
char pass[] = "YourPassword";
char server[] = "YourServerIP";

#define pirPin 2
int pirValue;
BlynkTimer timer;

//تابع تشخیص تغییر در سنسور تشخیص حرکت
void getPirValue()
{
  pirValue = digitalRead(pirPin); // خواندن مقدار از پایه مشخص شده
  if(pirValue == HIGH){ //اگر مقدار ورودی 1 یا مثبت بود
  Blynk.virtualWrite(1,"motion detected"); // چاپ کردن مقدار خروجی در صفحه گوشی
  }
  else{ // در غیر اینصورت
  Blynk.virtualWrite(1,"Normal");
  }
}

void setup()
{
  // راه اندازی کنسول دیباگ برای خطایابی
  Serial.begin(115200);
  // راه اندازی اتصالات با استفاده از اطلاعات داده شده از قبل
  // در صورت وارد نکردن آدرس سرور به صورت پیشفرض به اینترنت متصل می شود
  //  Blynk.begin(auth, ssid, pass,server);
  Blynk.begin(auth, ssid, pass,server,8080);// برای کسانی که از سرور نسخه 0.30 به بالا استفاده می کنند
  pinMode(pirPin,INPUT); // فعال سازی پایه به عنوان دریافت کننده یا ورودی
  timer.setInterval(1000L,getPirValue);
}

void loop()
{
  //راه اندازی ماژول و اتصال دائم به سرور و تبادل اطلاعات
 //نیازی به گذاشتن تابع اجرای زمان نیست چرا که خود بلینک این کار رو می کنه
  Blynk.run();
  timer.run();
}

 

ثبت دیدگاه
نام *
ایمیل*
دیدگاه *
4دیدگاه
  • amin moradiasl
    1 year, 11 months ago

    سلام, تو زمان دانشگاه 7 سال پیش الکترونیک یه کم کار کردم برنامه نویسی اونم فقط خوندنی نه انجام دادنی...الان تا اینجا آموزشهای شما دیدم جرقه خورد که شروع کنم :)

    اگه مشکلی نمیبینی بیام برا سوال زیاد منو خواهی دید البته شاید سوالات مبتدی باشه چون میخام راه بیوفتم ::مثلا اینجاتوکد گفتین motion detected ولی تو کد تو فیلمتون motion senseگفته شد ؛کد رو تغییر دادین؟

    • علی بیگدلی
      1 year, 11 months ago

      مشکلی نیست، سوالات هر چقدر ساده یا سخت باشه ایرادی نداره
      در بازه های زمانی بعضی بخش ها که ممکنه مشکل یا نیاز به تغییر باشن تغییر می کنن ولی موردی که گفتید صرفا برای نمایش و چاپ توی خروجی هستش تاثیر خاصی توی عملکرد نداره و پیام متنی هستش

    • amin moradiasl
      1 year, 11 months ago

      در اول ممنون مهندس رایگان گذاشتین این دوره رو واقعا فکر نمیکردم کسی این کارو کنه تو سایتا دیگه باور کنید من 3 ساعت آموزش خریدم و فقط رو یه پروژه آسون روشن کردن led قیمت 100 ب بالا ؛؛ ,و حالا شما این همه پروژه رایگانه خدا خیرتون بده

      ببخشید گفتم که سوالاتم شاید مبتدی بود خواستم ببینم درست گفتم در مورد کد

      مهندس اون لینک دانلود جاوا گذاشتین از پی سی دانلود 3 تا گزینه ست ؛؛هر 3 تا نصب کنیم ?

    • علی بیگدلی
      1 year, 11 months ago

      لینکش ابطال شده در کل نسخه java jre 8 رو داشته باشید کافیه ولی ممنونم که گزارش دادید