يمكن لبعض حساسات الراسبيري باي قياسُ الرطوبة ودرجة الحرارة وقيم أخرى؛ مع أنَّ هذه الحساساتِ تكاد تكون مناسبةً حصريّاً للهواء وليست مخصوصةً للاستعمال في الأرض. وأمَّا بالنسبة إلى بعض المشاريع
كالسقايةِ المؤتمتة للنبات، فيجب قياسُ رطوبة التربة وإعادة تعبئتها بالماء.
(مصدر الصورة: موقع tutorials-raspberrypi)
(مصدر الصورة: موقع tutorials-raspberrypi)

سنبين في هذا المقال كيفَ يمكننا قراءة الرطوبة (قيمة تشابهية) وتحويلها إلى قيمة رقمية كي يفسرَها الراسبيري باي.

القطعُ الماديَّة المطلوبة:

نستعملُ القطعَ التالية:

  • حساسَ رطوبة.
  • MCP3008.
  • كبلاً ذا وصلة أنثى_أنثى.
  • لوحةَ توصيلٍ Breadbord.

التركيب:

الدارة المتكاملة MCP3008 IC هي دارة مبدلة تشابهيّاً إلى رقميَّة. وبما أن الراسبيري باي بحد ذاته لا يكشفُ الإشارات التشابهية فإنَّ ما يلزمنا مبدلُ MCP3008، ومع أن هذا الحساس يملك طرفاً للخرج الرقمي فإنه يرسل إشارة رقمية في حال تجاوز قيمة عتبة ما  تغيير مع تدوير العجلة حيث عند الوصول إلى العتبة سيعمل الضوء الأخضر، ولقراءة الرجل التشابهية نصلها كما يلي:

(مصدر الصورة: موقع tutorials-raspberrypi)
(مصدر الصورة: موقع tutorials-raspberrypi)

ويكون التوصيل كما يلي:

(مصدر الصورة: موقع tutorials-raspberrypi)
(مصدر الصورة: موقع tutorials-raspberrypi)
RaspberryPi MCP3008
Pin 1 (3.3V) Pin 16 (VDD)
Pin 1 (3.3V) Pin 15 (VREF)
Pin 6 (GND) Pin 14 (AGND)
Pin 23 (SCLK) Pin 13 (CLK)
Pin 21 (MISO) Pin 12 (DOUT)
Pin 19 (MOSI) Pin 11 (DIN)
Pin 24 (CE0) Pin 10 (CS/SHDN)
Pin 6 (GND) Pin 9 (DGND)

 

يتصل الجهد VCC لحساس بالطرف 1 ذي الجهد 3.3V للراسبيري باي، والأرضيGND والطرف 6(GND) وA0 يوصل بالقناة CH0  إلى المبدل MCP3008.

البرنامج:

لعنونةِ الــMCP3008 يجب تفعيلُ اتصال الـSPI وذلك كالتالي:

sudo raspi-config

 

“8 Advanced Options” -> “A6 SPI” -> “Yes”.
بعدها نأكد خيار إعادة التشغيل.

والآن يمكن تحميل مكتبة spidev إذا لم تقم بذلك مسبقاً:

sudo apt-get install git python-dev
git clone git://github.com/doceme/py-spidev
cd py-spidev/
sudo python setup.py install

ومع الكود البرمجي التالي يمكنك عنونة الحساس (sudo nano humidity.py)

الكود البرمجي: التحميل من هنا

القيمة بين 0 والـ 1023هي الخرج، وبالاختبار الذي أجريناه يعيد الحساسُ غالباً قيمةَ الصفر، والذي يعني رطوبة كلية ولكن بما أن القيم تظهر فقط بين 100-200 وإذا انغمر كليّاً في الماء فتكون قيمة الصفر خاطئة خطأ واضحًا، ولهذا أصفي هذه القيمة في النص، وبالإضافة أن القيم الظاهر تكون حوالي ~1000 إذا لم يوجد موصل (كالهواء) بين لوحي الحساس.

وبالاعتماد على المادة (أرض، ماء، رمل وغيرها) والمتوضعة بين اللوحين تظهر القيم الأخرى في الحالة الجافة/الرطبة، ولهذا من المنطقي أخذُ قياسات متعددة وتعديل العتبة التشابهيَّة لتطبيقك.


المصدر: هنا

ترجمة: مي همدر, مراجعة: علي العلي , تدقيق لغوي: محمد بابكر, تصميم: علي العلي, تحرير: قحطان غانم.