الاثنين، 30 سبتمبر، 2013

حساس الضوء BH1750

Light Sensor BH1750



المقالة باللغة الأنجليزية على موقع Instructables 

نتمنى منكم دعمنا بالتصويت لنا في المسابقة التي اشتركنا بها عن هذا الموضوع , فتح الحساب مجاني , و التصويت من الزر اعلى يمين الشاشة 


من التطبيقات الرائعة التي انتشرت كثيراً هي تقنية متتبع ضوء الشمس Solar System Tracker و الذي يستخدم لتعريض الخلايا الشمسية لأكبر كمية من ضوء الشمس الساقط لتوليد الطاقة .


أغلب المشاريع قائم على تحسس الضوء باستخدام المقاومات الضوئية LDR تستخدم لأستشعار كمية الضوء الساقطة عليها ,تعتبر هذه طريقة تماثلية سهلة و رخيصة لمثل هذه المشاريع لكنها ليست الأمثل .




يوجد هناك حساس رقمي ذو دقة عالية هو BH1750 يستطيع قراءة شدة الأضاءة بدقة تصل حتى 0.5lux و يتميز ب :




1)دقة قراءة عالية و مدى قراءة واسع "1-65535" lux .
2)التخلص من الضجيج الناتج عن الطيف الضوئي خصوصاً عند التردد 50-60 هيرتز .
3)يعمل على فولتيات حتى 1.8 فولت .
4)لا يتأثر بالأشارات القادمة من الأجهزة التي تصدر الأمواج تحت الحمراء .
5) استهلاك متدني للطاقة .
6)يستخدم بروتوكول رقمي I2C للتخاطب مع المتحكمات الدقيقة  MPU و الأصغرية MCU .


هذه بعض المميزات التي يتمتع بها هذا الحساس .


له استخدامات واسعة في الهواتف الخلوية , الشاشات لضبط شدة الأنارة اوتوماتيكيا , الألعاب التفاعلية , الكاميرات الرقمية , و غيرها .



ما ستحتاجه لتنفيذ هذه التجربة :

1) بطاقة أردوينو
2)حساس الضوء BH1750
3) اسلاك توصيل JUMPER
4) المبدل الغير عاكس CD4050 او 3 مقاومات 510 اوم
5) لوحة تعليمية Breadboard .

أفكار البرمجة :


يتم التخاطب مع هذا الحساس بواسطة البروتوكول I2C , و كل المعلومات التي ستحتاجها في البرمجة موجودة في النشرة الفنية

قمت بكتابة مكتبة خاصة لهذا الحساس سهلة الأستعمال .

يمكن تحميل المكتبة من موقع github.com , بعدها قم بفك ضغط المكتبة و وضعها ضمن مسار المكتبات في مجلد الأردوينو.



استعمال المكتبة ستجدونه ضمن الملف المرفق مع هذه المكتبة


التوصيل :



التوصيل يجب ان يكون مع مصدر 3.3 فولت و ليس 5 فولت

هناك أكثر من خيار لذلك :

1)يمكن التوصيل باستخدام cd4050 و هو Level Shift يحول الفولتية بين 5-3.3 فولت .




2) وضع مقاومة 510 اوم على التوالي .



3) الاصدارات الأحدث من الأردوينو هناك I/OREF و بتوصيل هذا المدخل مع 3.3 فولت تصبح مداخل الأردوينو تعطي 3.3 فولت و ليس 5 فولت "ميزة رائعة"



بعد تحميل المكتبة يمكنك فتح الأمثلة المرفقة معها .

كمثال بسيط , هذا البرنامج البسيط يوضح كيفية قراءة القيم من هذا الحساس و عرضها على شاشة السيريال Serial Monitor




مثال بسيط في التحكم بشدة أضاءة LED بعلاقة عكسية مع شدة اضاءة المكان .




و هذا مثال مع شاشة LCD 1602 لعرض شدة الإضاءة عليها 


توصيلة الشاشة كالأتي , و الحساس لا يختلف على توصيلته شيء .




و الفيديو التالي يوضح مبدأ عمل هذا البرنامج .






3 التعليقات :

  1. أزال المؤلف هذا التعليق.

    ردحذف
  2. Thanks for your work. I had problems compiling your library in a sketch that also included the
    OneWire library. Changing line 35 of BH1750FVI.h to ‘#define BH1750FVI_reset 0x07’ and line 20 of BH1750FVI.cpp to ‘I2CWriteTo(BH1750FVI_reset ); //Reset’ solved the conflict.

    ردحذف

 
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.