
// مكتبه الواى فاى
#include <ESP8266WiFi.h>
// (اسم شبكه الواى فاى كما هو موضح في الشكل(٤-١
const char* ssid = "HUAWEI-E5330-6C62";
// باسورد شبكه الواى فاى
const char* password = "7pj5trgo";
//رقم الاي بى لمستشعر الرطوبه
IPAddress serverip(192, 168, 1, 107);
// جهاز التوجيه
IPAddress servergateway(192, 168, 1, 1);
// قناع الشبكه
IPAddress serversubnet(255, 255, 255, 0);
// تحديد منفذ للاتصال بال wemos للحصول علي قراءه حساس الرطوبه
WiFiServer server(80);
// داله اعدادات البرنامج وتنفذ مره واحده
void setup() {
//ضبط اعدادات الواى فاى
WiFi.config(serverip,servergateway,serversubnet);
// ابدء الواى فاى
WiFi.begin(ssid, password);
// ابدا السيرفر
server.begin();
}
// داله التكرار
void loop() {
//فى حاله اتصال عميل جديد
WiFiClient client = server.available();
// في حاله عدم وجود اتصال
if (!client) {
// يتم العوده الي بدايه داله التكرار
return;
}
// في حاله وصول اتصال
else
{
// اطبع للعميل قميه الحساس
client.println(Sensor());
}
}
// داله التعامل مع حساس الرطوبه
///////////////////////////////////Sensor/////////////////////////
// تعيد الداله قيمه بصيغه نصيه
String Sensor()
{
// بدء عمل المنفذ الانالوج الخاص بحساس الرطوبه
int s = analogRead(A0);
//result نتيجه قراءه الحساس تسجل في
String result;
// لو قيمه الحساس اعلي من ١٢٠٠ فانها تعني ان الحساس خرج التربه
if(s >= 1200) {
result="out Soil";
}
// لو قيمه الحساس ما بين ١٠٠٠ و ١٢٠٠ فان التربه جافه
if(s < 1200 && s >= 1000) {
result="DRY";
}
// لو قيمه الحساس ما بين ٥٠٠ و ١٠٠٠ فان التربه مبتله
if(s < 1000 && s >= 500) {
result="HUMID";
}
// لو ان قيمه الحساس اقل من ٥٠٠ فان الحساس مغمور في الماء
if(s < 500) {
result="WATER";
}
// اعاده قيمه الحساس لارسالها الي العملاء المتصليين
return result;
}




