أخر الاخبار

دائرة قياس شدة الإظائة باستخدام الأردوينو وحساس الضوء / Arduino and light sensor

دائرة قياس شدة الإظائة باستخدام الأردوينو وحساس الضوء  / Luminous intensity circuit using Arduino and light sensor

دائرة قياس شدة الإظائة باستخدام الأردوينو وحساس الضوء  / Arduino and light sensor بإستخدام لوحة الأردوينو using arduino 
مرحبا بكم اصدقائي متابعي مدونة سوفت بيديا في قسم الأردوينو او سلسلة مواضيع الاردوينو في موضوع جديد يخص دائرة قياس شدة الإظائة خطوة بخطوة.. 

وكما تعودنا ان نبدأ دوما مع دارات ومشاريع بسيطة لترسيخ الفهم ثم ننتقل للأعقد منها بالتدريج حسب المجال البرمجي..

 وهذا مثال للمشاريع المعقدة وهو جزء واحد من سبعة اجزاء لاكن قابلة للتنفيذ بلوح اردوينو  using arduino MEGA  ميغا وملحقات اخرى حسب نوع المشروع... كود أردوينو كامل (ج1) للتحكم الذكي في مستودع هيدروبونيك زراعة أسماك نباتات 

شرح دائرة قياس شدة الإظائة باستخدام الأردوينو وحساس الضوء  / Arduino and light sensor

في هذا الموضوع سوف نتطرق إلى أبسط دائرة على الإطلاق للأردوينو arduino لقياس شدة الإظائة باستخدام الأردوينو وحساس الضوء  / Arduino and light sensor مع عرض القرائة بشاشة الكريستال LiquidCrystal LCD 16 x 2 الزرقاء ب2 أعمدة وقد تعمدت توضيح تركيب الشاشة مع الاردوينو اينو arduino UNO كي نضرب عصفورين بحجر واحد وأيضا أضفت مقاومة واحد كيلو اوم 1 kΩ Resistor للشاشة واخرى للحساس Photoresistor ووضحت مكان تركيب المقاومة المتغيرة للتحكم في شدة سطوع الشاشة، والكود أيضا سيكون بسيط للغاية والهدف كما أسلفنا هو بمعرفة اساسيات العتاد اللازم وكود قرائة قيم الحساس وكتابتها بالشاشة الكريستالية ثم لك الحرية لاحقا في التصميم وفق ما تحتاجه او حسب الدارة أو المشروع الخاص بك ، ففي هذا الموضوع او المشروع سنستخدم ستة عناصر فقط أردوينو أونو او ميغا او أيا كان نوعه، مع حساس Photoresistor وشاشة عرض ، مع بوتونسيو متر او مقاومة متغيرة 250 kΩ Potentiometer ، و2 مقاومة 1كيلو أوم 1 kΩ Resistor لكل واحدة منهما..
 وكلما زدنا الإظائة الساقطة على حساس الضوء زادت قيمة القرائة المعروضة على الشاشة والعكس، وكلما أدرنا المقاومة  Potentiometer لجهة معينة سنحصل على درجة سطوع مختلفة للشاشة لنستطيع ضبطها وفق أفضل سطوح يوضح القرائة بطريقة جيدة..

الهدف من المشروع والتطويرات اللاحقة المحتملة له

 الهدف من المشروع والتطويرات اللاحقة المحتملة له الإجابة بسيطة  الهدف من هذا المشروع البسيط كما أسلفنا هو لقياس درجة او قيمة الإظائة الساقطة على حساس الضوء LDR وكلما زادت الإنارة او ضوء الشمس زادت القرائة للحساس Photoresistor والقيمة المطبوعة على الشاشة الكريستالية LiquidCrystal LCD 16 x 2، ويصلح هذا المشروع كجزء بسيط من مشروع اكبر او منفرد ، منفرد مثل هذا المثال الذي نحن بصدد تنفيذهاو كمشروع مدرسي.. او كجزء من مشروع أكبر للتحكم في تشغيل وإطفاء إنارة فناء المنزل عند درجة ظلام أو إنارة معينة او لتشغيل مصابيح الحي المدينة المؤسسة ..الخ وذلك بإظافة للعتاد رولي 10 أمبير مثلا وإظافة في الكود شرط if إذا كانت قرائة الحساس الضوئي أقل من درجة معينة يشغل الرولي والعكس ، ويمكن جعل الرولي ذو ال10 أمبير يتحكم في بوبين كونتاكتور ثلاثة فاز أو إثنان بتيار عالي جدا مثلا 32أمبير لتشغيل مصابيح الحي او المؤسسة..الخ على أي موضوع الريليهات ليست موضوعنا اليوم ولاكن وجب التنويه لها لأخذ فكرة عن التطويرات الأعقد اللاحقة المحتملة لهذا المشروع البسيط..

   والذي سيصبح مشروع ذو فعالية أكبر أيضا بالتركيز على تفاصيل المشروع الإلكترونية وإظافة علبة إلكترونية معدنية وطباعة الاجزاء المختلفة بتقنية الطباعة الثلاثية الأبعاد وكذالك التركيز على الجانب البرمجي اكثر..الخ 

طريقة تركيب العناصر أو الدارة 

الآن بمخطط التركيب بالأسفل نشاهد حساس الضوء والشاشة الكريستالية LiquidCrystal LCD 16 x 2، وبهذا المخطط المتحرك البسيط نستطيع مشاهدة زيادة قيمة قرائة حساس الضوء بالشاشة الكريستالية مع تغييرقيمة الإظائة الساقطة على الحساس Photoresistor والتي تمثل في هذه الحالة ضوء الشمس مثلا.. ونشاهد اماكن ربط حساس الضوء وشاشة الكريستال والمقاومة المتغيرة Potentiometer والمقاومتين الثابتتين 1كيلو أوم 1 kΩ Resistor بمداخل ومخارج الأردوينو إينو Arduino Uno R3،حيث نوصل كل من Vcc و Gnd لشاشة الكريستال وحساس الضوء Photoresistor والمقاومة المتغيرة ب 5v و Gnd للأردوينو إينو ، ونوصل مخرج الإشارة للحساس بA0  مدخل الأنالوجيك لأخذ القراءات للاردوينو Arduino Uno R3،ثم نوصل بقية مخارج الأردوينو الديجيتال مع الشاشة الكريستالية LiquidCrystal LCD 16 x 2  بالترتيب الموضح بالمخطط بالأسفل.. 

مخطط التركيب التوضيحي لدائرة قياس شدة الإظائة بإستخدام الأردوينو وحساس الضوء  / Arduino and light sensor

 شاهد المثال التوضيحي التالي.. لمخطط التركيب التوضيحي لدائرة قياس شدة الإظائة بإستخدام الأردوينو وحساس الضوء  / Arduino and light sensor



المكونات والعناصر المستخدمة

المكونات والعناصر المستخدمة هي حساس الضوء Photoresistor مع شاشة العرض الكريستالية LiquidCrystal LCD 16 x 2 مع الاردوينو اينو والمقاومة المتغيرة Potentiometer  والمقومتين الثابتتين 1كيلو أوم 1 kΩ Resistor، وبالأسفل الجدول يوضح التسميات للعناصر المستخدمة والكمية والاسم ، يمكنك إقتناؤها من الأماكن او المحلات المخصصة لبيع لوازم الأردوينو Arduino  والإلكترونيات..

Name Quantity Component
U1 1 Arduino Uno R3
U2 1 LCD 16 x 2
Rpot1 1 250 kΩ Potentiometer
R1
R3
2 1 kΩ Resistor
R2 1 Photoresistor


الكود البرمجي المستخدم

الكود البرمجي المستخدم بسيط جدا لاكنه فعال ايضا لهذا المشروع ، لن تحتاج لأكثر منه في هذا المشروع ويمكنك فهمه ثم تطويره لاحقا ليناسب مشروعك، يمكنك نسخه بالأسفل وإلصاقه ببرنامج arduino IDE ثم تحميله على لوحة الأردوينو arduino ليبدأ العمل مباشرة.. طبعا بعد تركيب العناصر الأخرى بالترتيب الصحيح حسب المخطط بالأعلى..

 
  


شرح الكود البرمجي المستخدم لدائرة قياس شدة الإظائة باستخدام الأردوينو وحساس الضوء  / Arduino and light sensor 

تابع شرح الكود البرمجي المستخدم لدائرة قياس شدة الإظائة باستخدام الأردوينو وحساس الضوء  / Arduino and light sensor
 
مجموعة التعاريف..

هنا إظافة مكتبة شاشة الكريستال
#include <LiquidCrystal.h> // includes the LiquidCrystal Library 
هنا تعاريف مخارج ومداخل شاشة الكريستال
LiquidCrystal lcd(1, 2, 4, 5, 6, 7); // Creates an LCD object. Parameters: (rs, enable, d4, d5, d6, d7) 

ندخل لقسم void setup
void setup(){
السيريل الخاص بالشاشة
lcd.begin(16,2); // define the LCD size   
طباعة كلمة hussein يمكنك هنا كتابة مكانها أي كلمة ترد ظهورها بالشاشة فوق القرائة..
lcd.print("hussein"); 

ندخل لقسم اللوب void loop
void loop(){   
هذا أمر للشاشة بالإنتقال للسطر الثاني لكتابة لاحقا القراءات أسفل كلمة hussein السابقة..
lcd.setCursor(0,1); // function used to know the number of column
//that we want to skip it , the first number represent the column   
//the second for row
قرائة مدخل الأنالوجيك A0  الخاص بحساس الضوء وتخزينها بالمتغير x..
int x=analogRead(A0);
طباعة قيمة x على الشاشة في السطر الثاني..
lcd.print(x);// function used to print any thing on LCD      
}  
  

ختامــــــا 

إلى هنا نكون قد أكملنا هذا الموضوع البسيط والمفيد في نفس الوقت حول دائرة قياس شدة الإظائة باستخدام الأردوينو وحساس الضوء  / Arduino and light sensor ، المكونات ومخطط التركيب والكود البرمجي وشرح لكل خطوة على حدى.. 
لاننسى أن المشاريع المعقدة تبدأ بمكونات بسيطة وفهم جيد لطريقة التركيب البرمجة والعمل، وبالمثابرة وكثرة الإطلاع والتطبيق خاصة سيتسنى لنا في كل مرة إتقان مهارات جديدة تؤهلنا في آخر المطاف للقيام بمعظم المشاريع مهما كانت معقدة وتخطيطها سلفا والقيام بتنفيذها دون إهدار للمعدات والوقت ونكون أكثر إفادة وإنتاجية لأنفسنا (مشاريع منزلية خاصة بنا للقيام بأمور بسيطة او معقدة نحتاجها لتسهيل حياتنا) أو لغيرنا (والمجال هنا مفتوح..).

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

 تقبلو تحياتي.
والسلام عليكم ورحمة الله تعالى وبركاته
اللهم صلي وسلم على نبينا محمد
(صلى الله عليه وسلم)


لمزيد من المواضيع والدروس يمكنك الإنتقال للروابط بالأسفل:


ليصلك جديدنا تابعنا على صفحاتنا الاجتماعية: الفيسبوكالتويتر ,tumblrpinterestlinkedininstagram 





ˆFr
وضع القراءة :
حجم الخط
+
16
-
تباعد السطور
+
2
-