- المواد المطلوبة
- جهاز استشعار المطر
- عمل حساس المطر
- مخطط الرسم البياني
- شرح الكود
- عمل نظام كشف المطر القائم على اردوينو
يمكن إنشاء نظام بسيط للكشف عن المطر بسهولة عن طريق ربط Arduino بجهاز استشعار المطر. سيكتشف المستشعر أي تساقط للأمطار عليه وستستشعره لوحة Arduino ويمكنها تنفيذ الإجراءات المطلوبة. يمكن استخدام نظام مثل هذا في العديد من المجالات المختلفة ، مثل مجالات الزراعة والسيارات. يمكن استخدام اكتشاف هطول الأمطار لتنظيم عملية الري تلقائيًا. أيضا ، بيانات هطول الأمطار المستمريمكن أن يساعد المزارعين على استخدام هذا النظام الذكي لسقي المحصول تلقائيًا فقط عند الضرورة القصوى. وبالمثل ، يمكن جعل مساحات الزجاج الأمامي في قطاع السيارات أوتوماتيكية بالكامل باستخدام نظام الكشف عن المطر. ويمكن لأنظمة أتمتة المنزل أيضًا استخدام الكشف عن المطر لإغلاق النوافذ تلقائيًا وضبط درجة حرارة الغرفة. في هذا البرنامج التعليمي ، سنقوم ببناء مستشعر أساسي للمطر باستخدام Arduino مع الجرس. يمكنك بعد ذلك استخدام هذا الإعداد لبناء أي شيء تريده فوقه. أيضا، علما بأن يشار إلى وحدة استشعار المطر أيضا على أنه استشعار قطرات المطر أو استشعار مقياس المطر أو استشعار مياه الأمطار على أساس الاستخدام، لكنها تشير جميعها إلى نفس الاستشعار المستخدمة في هذا المشروع، وأنهم جميعا العمل على نفس المبدأ.
لقد قمنا أيضًا ببناء إنذار بسيط للمطر وممسحة آلية للسيارة باستخدام 555 Timer فقط ، وقد ترغب في التحقق من ذلك أيضًا إذا كنت لا ترغب في استخدام Arduino. بعد قولي هذا ، دعنا نعود إلى هذا المشروع ونبدأ في بناء مقياس المطر في Arduino.
المواد المطلوبة
- اردوينو UNO
- جهاز استشعار المطر
- صفارة
- اللوح
- توصيل الأسلاك
جهاز استشعار المطر
و حدة قطرات المطر تتكون من مجلسين هما مجلس المطر ومجلس مراقبة.
ل وحة المطر وحدة تتكون من مسارين النحاس، مصممة بطريقة مثل هذه التي يقدمونها في ظل الظروف الجافة مقاومة عالية للامدادات التيار الكهربائي، وهذا الجهد الناتج من هذه الوحدة يكون 5V. تقل مقاومة هذه الوحدة تدريجيًا فيما يتعلق بزيادة البلل على اللوح. مع انخفاض المقاومة ، يتناقص جهد الخرج أيضًا فيما يتعلق بالبلل على الوحدة. و حدة مجلس المطر يتكون من اثنين من المسامير المستخدمة للاتصال لوحة التحكم كما هو موضح أدناه.
تتحكم وحدة لوحة التحكم في الحساسية وتحول الإخراج التناظري إلى الإخراج الرقمي. إذا كانت القيمة التناظرية أقل من القيمة الحدية للوحة التحكم ، يكون الناتج رقميًا منخفضًا ، وإذا كانت القيمة التناظرية أعلى من قيمة العتبة ، يكون الناتج رقميًا مرتفعًا. لهذه المقارنة والتحويل ، يتم استخدام LM393 OP-Amp Comparator. مقارنة Op-Amp عبارة عن دائرة مثيرة للاهتمام يمكن استخدامها لمقارنة قيمتين مختلفتين للجهد ، وقد استخدمنا بالفعل في هذه الدائرة في العديد من المشاريع مثل Smart Electronic Candle و Laser Security Alarm و Line Follower Robot وغير ذلك الكثير.
تتكون وحدة التحكم في المطر الموضحة أدناه من 4 دبابيس لتوصيل Arduino وهي VCC و GND و D0 و A0 واثنين من المسامير الأخرى لتوصيل وحدة لوحة المطر. باختصار ، تكتشف وحدة لوحة المطر مياه الأمطار ، ويتم استخدام وحدة لوحة التحكم للتحكم في الحساسية ومقارنة القيم التناظرية وتحويلها إلى قيم رقمية.
عمل حساس المطر
من السهل فهم عمل وحدة حساس المطر. خلال يوم مشمس ، نظرًا للجفاف على وحدة لوح المطر ، فإنه يوفر مقاومة عالية لجهد الإمداد. يظهر هذا الجهد على دبوس الإخراج لوحدة لوحة المطر على أنه 5 فولت. تتم قراءة هذا 5V كـ 1023 إذا تمت قراءته بواسطة دبوس تناظري من Arduino. أثناء هطول الأمطار ، تتسبب مياه الأمطار في زيادة الرطوبة على لوحة المطر ، مما يؤدي بدوره إلى انخفاض المقاومة المقدمة للإمداد. عندما تنخفض المقاومة تدريجياً ، يبدأ جهد الخرج في الانخفاض.
عندما تكون لوحة المطر مبللة بالكامل ، وتكون المقاومة التي تقدمها في حدها الأدنى ، يكون جهد الخرج منخفضًا قدر الإمكان (تقريبًا 0). تتم قراءة هذا 0V كقيمة 0 إذا تمت قراءته بواسطة دبوس تناظري من Arduino. إذا كانت وحدة لوحة المطر مبللة جزئيًا ، فسيكون ناتج وحدة لوحة المطر فيما يتعلق بالمقاومة التي تقدمها. إذا كانت المقاومة التي توفرها وحدة لوحة المطر بطريقة تجعل الناتج 3 فولت ، فإن القيمة التناظرية للقراءة ستكون 613. يمكن إعطاء صيغة العثور على ADC من خلال ، ADC = (قيمة الجهد التناظري X 1023) / 5. باستخدام هذه الصيغة ، يمكنك تحويل أي جهد تناظري إلى قيمة قراءة تناظرية من Arduino.
مخطط الرسم البياني
يوضح الرسم البياني أدناه توصيلات الدائرة لمستشعر قطرة المطر مع Arduino. يتم التصميم باستخدام البروتيوس ، الوحدات الفيزيائية تشبه الوحدات الموضحة في مخطط الدائرة.
يتم توصيل وحدة قياس المطر ، الموضحة في مخطط الدائرة ، بلوحة التحكم. يتم توصيل دبوس VCC بلوحة التحكم بمصدر 5V. الدبوس الأرضي متصل بالأرض. إذا لزم الأمر ، يتم توصيل دبوس D0 بأي دبوس رقمي في Arduino ، ويجب الإعلان عن هذا الدبوس باعتباره دبوس الإخراج في البرنامج. المشكلة التي نواجهها مع دبوس D0 هي أننا لا نستطيع الحصول على القيمة الدقيقة لجهد الخرج. إذا تجاوز الخرج جهد العتبة ، فيمكن لوحدة التحكم أن تشعر بالتغير في الخرج. نحتاج إلى تشغيل الجرس ، حتى لو كان هناك تغيير كبير في جهد الخرج في وحدة لوحة المطر. نظرًا لهذه الأسباب ، يتم توصيل دبوس A0 بالدبوس التناظري في Arduino ، مما يجعل مراقبة التغيير في الإخراج أمرًا سهلاً. الجرس الذي يستخدم كإشارة للمستخدم ،يمكن توصيله بأي دبوس رقمي من Arduino. إذا احتاج الجرس إلى أكثر من 5 فولت ، فحاول توصيل دائرة مرحل أو ترانزستور ثم توصيل الحمولة بها.
شرح الكود
تمت كتابة كود Arduino لمستشعر المطر باستخدام Arduino IDE. يتم توفير الكود الكامل لهذا المشروع في نهاية الصفحة.
# تعريف هطول الأمطار A0 # قيمة 5 جرس تعريف ؛ مجموعة int = 10 ؛
تعريف الدبوس A0 على أنه هطول الأمطار ، والدبوس 5 على أنه جرس وإعلان "القيمة" المتغيرة و "التعيين" كأعداد صحيحة وتعيين قيمة المجموعة المتغيرة إلى 10. يمكن تغيير هذه القيمة وفقًا لمستوى التشغيل المطلوب. إذا كنت تريد تنشيط الجرس ، فاضبطه على قيمة دنيا حتى في حالة هطول أمطار قليلة
إعداد باطل () {Serial.begin (9600) ؛ pinMode (الجرس ، الإخراج) ؛ pinMode (هطول الأمطار ، المدخلات) ؛ }
بدء الاتصال التسلسلي وضبط الجرس. ضبط دبوس المطر كدبوس إخراج ودبوس إدخال.
حلقة فارغة () {القيمة = analogRead (هطول الأمطار) ؛ Serial.println (قيمة) ؛ القيمة = الخريطة (القيمة ، 0،1023،225،0) ؛
وظيفة analogRead تقرأ قيمة مستشعر المطر. تعين خريطة الوظيفة قيمة مستشعر المطر من دبوس الإخراج ، وتخصص قيمة للمتغير ، تتراوح من 0 إلى 225.
إذا (القيمة> = مجموعة) {Serial.println ("تم اكتشاف المطر") ؛ الكتابة الرقمية (الجرس ، عالية) ؛
إذا كانت قيمة مستشعر القراءة أكبر من القيمة المحددة ، فإن البرنامج يدخل الحلقة ، ويطبع الرسالة على الشاشة التسلسلية ويقوم بتشغيل الجرس
آخر {digitalWrite (الجرس ، منخفض) ؛
يقوم البرنامج بإدخال وظيفة else فقط عندما تكون القيمة أقل من القيمة المحددة. ستقوم هذه الوظيفة بإيقاف تشغيل الجرس عندما تكون القيمة المحددة أعلى من قيمة المستشعر ، مما يشير إلى عدم وجود مطر.
عمل نظام كشف المطر القائم على اردوينو
يعمل هذا النظام بطريقة ، عندما يكون هناك مطر ، تعمل مياه الأمطار كمحفز يعمل على تشغيل الجرس. في كود Arduino Code الخاص بمستشعر قطرة المطر ، حددنا أن المسامير 5 و A0 عبارة عن صفارة وسقوط أمطار. من خلال القيام بذلك ، يمكننا تغيير المسامير في الجزء المحدد من الوظيفة ، ولن يتم لمس الجزء المتبقي من الكود. هذا سيجعل المبرمج في تحرير الدبابيس بسهولة.
في الحلقة الفارغة ، يقرأ الأمر analogRead القيمة من المستشعر. في السطر التالي ، يقوم الأمر Serial.println (القيمة) بطباعة القيمة على الشاشة التسلسلية. سيكون هذا مفيدًا أثناء التصحيح. تقوم وظيفة الخريطة بتعيين القيمة الواردة بين 0-225. تنسيق الوظيفة للخريطة هو خريطة (القيمة ، الحد الأدنى للقيمة ، الحد الأقصى للقيمة ، القيمة المراد تعيينها للحد الأدنى للقيمة ، القيمة المراد تعيينها لأقصى قيمة). سيتم تشغيل الجرس أو إيقاف تشغيله ، حسب القيمة المحددة وخرج جهاز الاستشعار. تتم مقارنة هذه القيمة في دالة if بالقيمة المحددة. إذا كانت القيمة أكبر من القيمة المحددة ، فسيتم تشغيل الجرس. إذا كانت القيمة أقل من القيمة المحددة ، فسيتم إيقاف تشغيل الجرس.
يمكن العثور على العمل الكامل في الفيديو المرتبط أدناه. هذا هو أحد التطبيقات العديدة ، وسيظهر نفس المبدأ في مساحات الزجاج الأمامي ، والأتمتة المنزلية الأخرى ، والقطاعات الزراعية ، وما إلى ذلك ، آمل أن تكون قد فهمت المشروع واستمتعت ببناء شيء مفيد. إذا كانت لديك أي أسئلة ، فاستخدم قسم التعليقات أدناه أو استخدم منتدياتنا لطرح أسئلة فنية أخرى.