راه اندازی سنسور رطوبت خاک

  • مدرس: علی بیگدلی
  • تاریخ انتشار: Aug 25, 2020
آموزش اینترنت اشیا قسمت سیزدهم - راه اندازی سنسور تشخیص رطوبت خاک

در این قسمت قرار است به بررسی سنسور تشخیص میزان رطوبت خاک (soil moister) بپردازیم و یک کد اولیه برای تشخیص و تبدیل به همراه نمایش بر روی دستگاه خود را تعبیه کنیم. و همچنین قرار است تکه ای دیگر از پازل برنامه نویسی با کتابخانه Blynk را بر ملا کنیم. پس با ما همراه باشید... پیش نیاز های این قسمت:

  • Arduino
  • درایور مخصوص برای اتصال به پروگرمر های CH340 از اینجا
  • سنسور تشخیص رطوبت خاک Soil Moister

نحوه اتصال ماژول ها

 
نمونه کد استفاده شده برای اتصال سنسور رطوبت خاک :
/* راه اندازی سنسور رطوبت خاک
 *  کنترل ارتباطات هوشمند آریا
 *  آموزش های برنامه نویسی در حوزه هوشمند سازی 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";

// مشخص کردن پین اندازه گیری برای سنسور
int sensor_pin = A0; 

//پین هایی که برای اتصال به آردینو نیاز است
int output_value ; 
#define connectionLED 5
BlynkTimer timer;

void setup()
{
  Serial.begin(115200);
  Blynk.begin(auth, ssid, pass, server); // کسانی که از سرور 29 و قبل استفاده می کنند
 // Blynk.begin(auth, ssid, pass, server,8080); // کسانی که از سرور 30 و به بعد استفاده می کنند
  timer.setInterval(1000L, soil); // چکاب تابع به میزان مدت زمان تعیین شده
  pinMode(connectionLED,OUTPUT);
}

void loop()
{
  checkConnection();
  Blynk.run();
  timer.run();
  
}
//تابع اندازه گیری رطوبت
void soil() {
output_value= analogRead(sensor_pin);
  output_value = map(output_value,1024,400,0,100); //برابر گذاری مقادیر
  Serial.print("Mositure : ");
  Serial.print(output_value);
  Serial.println("%");
  Blynk.virtualWrite(1,output_value);
}

void checkConnection() {
  if (! Blynk.connected()) {
    digitalWrite(connectionLED, LOW);
    Blynk.connect();
  }
  else {
    digitalWrite(connectionLED, HIGH);
  }
}


 

ثبت دیدگاه
نام *
ایمیل*
دیدگاه *
0دیدگاه