حوالي 71٪ من الأرض مغطاة بالمياه ، لكن للأسف 2.5٪ فقط منها مياه شرب. مع ارتفاع عدد السكان والتلوث وتغير المناخ ، من المتوقع أنه بحلول عام 2025 سنواجه نقصًا دائمًا في المياه. من ناحية ، هناك بالفعل خلافات طفيفة بين الدول والدول حول تقاسم مياه النهر من ناحية أخرى ، نحن كبشر نهدر الكثير من مياه الشرب بسبب إهمالنا.
قد لا تبدو كبيرة في المرة الأولى ، ولكن إذا قطرت حنفية قطرة ماء مرة واحدة كل ثانية ، فسوف يستغرق الأمر حوالي خمس ساعات فقط حتى تهدر جالونًا واحدًا من الماء ، وهذا يكفي للإنسان العادي ليبقى على قيد الحياة لمدة سنتين أيام. إذن ما الذي يمكن عمله لوقف هذا؟ كما هو الحال دائمًا ، يكمن الجواب في تحسين التكنولوجيا. إذا استبدلنا جميع الصنابير اليدوية بأخرى ذكية تفتح وتغلق من تلقاء نفسها ، فلن نتمكن من توفير المياه فحسب ، بل نتمتع أيضًا بأسلوب حياة أكثر صحة لأننا لا نضطر إلى تشغيل الصنبور بأيدينا المتسخة. لذلك في هذا المشروع ، سنقوم ببناء موزع مياه أوتوماتيكي باستخدام Arduino وصمام الملف اللولبي الذي يمكن أن يوفر لك الماء تلقائيًا عند وضع كوب بالقرب منه. يبدو رائعًا حقًا! لذلك دعونا نبني واحدة…
المواد المطلوبة
- صمام الملف اللولبي
- Arduino Uno (أي إصدار)
- HCSR04 - جهاز استشعار بالموجات فوق الصوتية
- IRF540 MOSFET
- 1 كيلو و 10 كيلو المقاوم
- اللوح
- توصيل الأسلاك
مفهوم العمل
المفهوم الكامن وراء مبرد المياه الأوتوماتيكي بسيط للغاية. سوف نستخدم الاستشعار بالموجات فوق الصوتية HCSR04 للتحقق مما إذا أي كائن مثل أن الزجاج يوضع قبل موزع. سيتم استخدام صمام الملف اللولبي للتحكم في تدفق المياه ، وعندما يتم تنشيطه ، سيتدفق الماء للخارج وعند إلغاء تنشيط الماء سيتوقف. لذلك سنكتب برنامج Arduino الذي يتحقق دائمًا من وضع أي كائن بالقرب من الصنبور ، إذا كانت الإجابة بنعم ، فسيتم تشغيل الملف اللولبي والانتظار حتى يتم إزالة الكائن ، بمجرد إزالة الكائن ، سيتم إيقاف تشغيل الملف اللولبي تلقائيًا وبالتالي إغلاق إمدادات المياه. تعرف على المزيد حول استخدام مستشعر الموجات فوق الصوتية مع Arduino هنا.
مخطط الرسم البياني
يظهر أدناه مخطط الدائرة الكاملة لموزع المياه القائم على Arduino
صمام الملف اللولبي المستخدم في هذا المشروع عبارة عن صمام بجهد 12 فولت مع أقصى معدل تيار يبلغ 1.2 أمبير ومعدل تيار مستمر يبلغ 700 مللي أمبير. هذا عندما يتم تشغيل الصمام ، سوف يستهلك حوالي 700 مللي أمبير للحفاظ على الصمام قيد التشغيل. كما نعلم ، فإن Arduino عبارة عن لوحة تطوير تعمل بجهد 5 فولت ، وبالتالي نحتاج إلى دائرة تشغيل تبديل للملف اللولبي لتشغيله وإيقافه.
جهاز التبديل المستخدم في هذا المشروع هو IRF540N N-Channel MOSFET. يحتوي على 3 دبابيس بوابة ، مصدر وصرف من الدبوس 1 على التوالي. كما هو موضح في الرسم البياني للدائرة ، يتم تشغيل الطرف الموجب للملف اللولبي بواسطة دبوس Vin في Arduino. لأننا سنستخدم محول 12V لتشغيل Arduino وبالتالي فإن دبوس Vin سيخرج 12V والذي يمكن استخدامه للتحكم في الملف اللولبي. يتم توصيل الطرف السالب للملف اللولبي بالأرض من خلال دبابيس المصدر والتصريف في MOSFET. لذلك لن يتم تشغيل الملف اللولبي إلا إذا تم تشغيل MOSFET.
يتم استخدام دبوس البوابة الخاص بـ MOSFET لتشغيله أو إيقاف تشغيله. سيبقى متوقفًا إذا تم تأريض دبوس البوابة وسيتم تشغيله إذا تم تطبيق جهد البوابة. للحفاظ على إيقاف تشغيل MOSFET عندما لا يتم تطبيق أي جهد على دبوس البوابة ، يتم سحب دبوس البوابة إلى الأرض من خلال المقاوم 10 كيلو. يتم استخدام دبوس Arduino 12 لتشغيل أو إيقاف تشغيل MOSFET ، لذلك يتم توصيل دبوس D12 بدبوس البوابة من خلال المقاوم 1K. يستخدم هذا المقاوم 1K لغرض الحد الحالي.
و الاستشعار بالموجات فوق الصوتية هو مدعوم من قبل + 5V ودبابيس الأرضي من اردوينو. و صدى و الزناد يرتبط دبوس إلى دبوس 8 و 9 دبوس على التوالي. يمكننا بعد ذلك برمجة Arduino لاستخدام مستشعر الموجات فوق الصوتية لقياس المسافة وتشغيل MOSFET عند اكتشاف كائن. الدائرة بأكملها بسيطة وبالتالي يمكن بناؤها بسهولة فوق لوح التجارب. بدا لي شيء مثل هذا أدناه بعد إجراء الاتصالات.
برمجة لوحة اردوينو
بالنسبة لهذا المشروع ، يتعين علينا كتابة برنامج يستخدم مستشعر HCSR-04 بالموجات فوق الصوتية لقياس مسافة الكائن أمامه. عندما تكون المسافة أقل من 10 سم ، يتعين علينا تشغيل MOSFET وإلا علينا إيقاف تشغيل MOSFET. سنستخدم أيضًا مؤشر LED الموجود على اللوحة المتصل بالرقم 13 وتبديله مع MOSFET حتى نتمكن من التأكد من تشغيل أو إيقاف تشغيل MOSFET. و برنامج كامل يعطى أن تفعل الشيء نفسه في نهاية هذه الصفحة. في الأسفل ، شرحت البرنامج بتقسيمه إلى مقتطفات صغيرة ذات معنى.
يبدأ البرنامج بتعريف وحدات الماكرو. لدينا الزناد و صدى دبوس لبالموجات فوق الصوتية وأجهزة الاستشعار وMOSFET بوابة دبوس والصمام ووI / O لدينا اردوينو. لذلك حددنا الدبوس الذي سيتم توصيل هذه الأشياء به. في أجهزتنا ، قمنا بتوصيل دبوس Echo و Trigger بالدبوس الرقمي الثامن والتاسع على التوالي. ثم يتم توصيل دبوس MOSFET بالدبوس 12 ويتم توصيل مؤشر LED الموجود على اللوحة افتراضيًا بالدبوس 13. نحدد نفس الشيء باستخدام الأسطر التالية
# تعريف الزناد 9 # تعريف صدى 8 # تعريف LED 13 # تعريف MOSFET 12
داخل وظيفة الإعداد ، نعلن أي دبابيس يتم إدخالها وأيها يتم إخراجها. في أجهزتنا ، يكون دبوس Echo الخاص بمستشعر Ultrasonic (US) هو دبوس الإدخال والباقي كلها عبارة عن دبابيس إخراج. لذلك نستخدم وظيفة pinMode في Arduino لتحديد نفس الشيء كما هو موضح أدناه
pinMode (الزناد ، الإخراج) ؛ pinMode (echo ، INPUT) ؛ pinMode (LED ، الإخراج) ؛ pinMode (MOSFET ، الإخراج) ؛
داخل وظيفة الحلقة الرئيسية نطلب وظيفة تسمى Meas_distance (). تستخدم هذه الوظيفة المستشعر الأمريكي لقياس مسافة الكائن أمامه وتحديث القيمة إلى " المسافة " المتغيرة. لقياس المسافة باستخدام مستشعر الولايات المتحدة ، يجب أولاً إبقاء دبوس المشغل منخفضًا لمدة ثانيتين صغيرتين ثم الاحتفاظ به مرتفعًا لمدة عشرة ميكروثانية ثم الاحتفاظ به منخفضًا مرة أخرى لمدة ثانيتين ميكروثانية. سيؤدي ذلك إلى إرسال انفجار صوتي لإشارات الموجات فوق الصوتية في الهواء والتي ستنعكس بواسطة الكائن الموجود أمامه وسيقوم دبوس الصدى بالتقاط الإشارات التي ينعكس عليها. ثم نستخدم قيمة الوقت المستغرق لحساب مسافة الجسم أمام المستشعر. إذا أردت أن تعرف