مقدمة عن المشروع
في هذا المشروع سنعمل علي بناء نظام يقوم بقياس رطوبة الجوي وعرضها علي شاشة الكرستال باستخدام Node MCU .
سوف نستخدم شاشة العرض Liquid Clear Crystal لعرض قيمة الرطوبة عليها . تتمتع شاشة LCD مقاس 16 × 2 بشعبية كبيرة وتستخدم على نطاق واسع في مشاريع الإلكترونيات لأنها جيدة لعرض المعلومات مثل بيانات الاستشعار مثل المستخدمة في مشروعنا هذا ، كما أنها رخيصة جدًا .
حساس قياس الرطوبة Moisture sensor يسمح بمعرفة حالة التربة من حيث الرطوبة أو الجفاف حوالي الحساس , وهو بذلك يستخدم في المساعدة في سقي الاشجار والزهور في الحديقة من دون تتدخل الانسان .
متطلبات المشروع
- NodeMCU
- Moisture sensor
- 16×2 LCD
- Breadboard
- Jumper Wires
- Micro USB Cable
-
-
أسلاك وتوصيلات, جميع المنتجات
عدد 1 سلك انثى انثى 20 سم بألوان عشوائية Female to Female jumper wires
لمحة سريعة
- الطول: 200 ملم
- الوزن: 45 جم
- متوافق مع رؤوس تباعد 2.54 مم
- 1 قطعة من سلك القفز اللوني من أنثى إلى أنثى
- جودة عالية وفي حالة عمل جيدة
- متين وقابل لإعادة الاستخدام
- سهل التركيب والاستخدام
SKU: AA040 -
-
-
-
بوردات ولوحات نحاسية, جميع المنتجات
لوح التجارب 830 نقطة لون ابيض Solderless Breadboard
لمحة سريعة
- لوحة التجارب mb102
- 830 نقطة بدون لحام
- مثالي لتجربة تصميم الدوائر في المختبرات
- متوافق مع المقاومة والثنائيات والترانزستورات ومصابيح LED والمكثفات وأنواع أخرى من المكونات الإلكترونية
- إحداثيات ملونة لسهولة وضع المكونات.
- تقبل مجموعة متنوعة من أحجام الأسلاك 20-29 AWG
SKU: AA071 -
الاجهزة والمكونات اللاسلكية, انترنت الأشياء, جميع المنتجات
موديول انترنت واي فاي ESP8266 NodeMCU lua
لمحة سريعة
- مفتوح المصدر ، تفاعلي ، قابل للبرمجة ، تكلفة منخفضة ، بسيط ، ذكي ، تمكين WiFi
- مدمج على رقاقة تسلسلية لبرمجة وتحميل الرموز بسهولة من Arduino IDE
- يدمج دوائر تحويل المستوى المنطقي
- يحتوي على منظم 3.3V مدمج لضمان قوة كافية للعمل كرقاقة WiFi.
- سهولة الوصول إلى دبابيس GPIO للنماذج الأولية السهلة
- معالج ESP-12E
للاطلاع على فكرة مشروع تساعدك على برمجة واستخدام هذا المنتج
SKU: NA225 -
طريقة العمل والتوصيل
حساس القياس سهل الاستخدام أذ يحتوي على طرفين أو رجلين يتم وضعهما في التربة المراد قياس رطوبتها . الحساس يحتوي علي خرج طرف للخرج الرقمي واخر للخرج التماثلي وطرفين بغرض التغذية كما موضح بالصور التالية .
توصيل الدائرة الكهربائية
يتم ربط جميع عناصر الدائرة مع بعضها البعض باستخدام اسلاك التوصيل حيث يوصل الحساس مع النود أم سي يو كما توضح الصورة التالية والتوصيل يكون بالطريقة الموضحة أعلي الصورة هذه .
Connect the Vcc from the Amplifier to the 3.3V pin on the NodeMCU.
Connect the GND pin to the ground (GND) pin on the NodeMCU.
Connect the Analog pin to the A0 pin on the NodeMCU.
الان نأتي لتوصيل الشاشة الكرستالية . نجد الشاشة تحتوي علي الكثير من الارجل المخيفة , لذلك سنختصر الطريق ونستخدم مسجل يعتمد على برتكول النقل I2C فدعنا نسميه محول أزاحة وهو يستخدم بغرض تقليل أرجل الشاشة الي 4 أطراف فقط , نعم أربعة أطراف فلا تقلق حيال ذلك فمحول الأزاحة يقوم بتحويل الـــــــــ 16 الي 4 فقط وفقا لدوائرة كهربائية ورقمية مصممة في داخله .
ما يهمنا الان هي أطراف محول الازاحة الاربعة فقط . يتم وصل جميع منافذ الشاشة مع المحول في الاتجاهين المتطابقين من حيث عدد الارجل , وتوصل الاربعة أطرف التي في الاتجاه الاخر مع الاردوينو , فنجد طرفين منها يوصلان مع أطراف التغذية للأردوينو والطرفان الاخران يوصلان مع كمنافذ لنقل وجلب البيانات من والي الاردوينو كما موضح بالطريقة والصور التالية .
GND pin of I2C is connected Ground pin (GND) of the NodeMCU.
VCC pin of I2C is connected Vin pin of the NodeMCU. (Because we need to supply 5v to LCD)
SDA pin of I2C is connected D4 of the NodeMCU.
SCL pin of I2C is connected D3 pin of the NodeMCU.
الان نأتي الي توصيل جميع المكونات مع بعضها البعض كما بالصورة التالية .
الكـــــــــــود البـــــــــرمجي
بأفتراض أنك تجيد التعامل مع النود وتعرف كيفية رفع الكود عليها من داخل برنامج الاردوينو . وأذا كنت لا تعرف ذلك يمكنك مراجعة هذا المشروع ( ابدأ برمجة الاشياء مع النود أم سي يو للدخول لعالم الانترنت )
لتحميل الكود البرمجي اضغط هنا
#include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x3F, 16, 2); int sense_Pin = 0; // Soil Sensor input at Analog PIN A0 int value= 0; void setup() { lcd.begin(16,2); lcd.init(); lcd.backlight(); } void loop() { lcd.setCursor(0, 0); lcd.print("MOISTURE : "); value= analogRead(sense_Pin); value= value/10; lcd.print(value); lcd.print("%"); if(value < 50) { lcd.setCursor(0, 1); lcd.print("The soil is WET"); } else { lcd.setCursor(0, 1); lcd.print("The soil is dry"); } delay(1000); }