وحدة مستشعر الضوء بمقاومة ضوئية LDR

25,00 DH

التوفر:

682 متوفر في المخزون

رمز المنتج: 0171 التصنيفات: ,

الوصف

وحدة مستشعر الضوء بمقاومة ضوئية LDR

تستخدم هذه الوحدة مقاومة ضوئية (LDR) للاستجابة للضوء المحيط. وتحتوي على مقارن LM393 وتوفر خرجًا تناظريًا يتغير بحسب جهد المقسّم، وخرجًا رقميًا يمكن ضبط عتبته بالمقاومة المتغيرة الموجودة على اللوحة.

🔧 المواصفات المذكورة

  • جهد التشغيل: 3.3–5 V DC
  • الخرج التناظري (A0): يتغير مع مستوى الضوء المقاس
  • الخرج الرقمي (D0): يبدّل حالته قرب العتبة المضبوطة؛ وقد تختلف قطبية HIGH/LOW بحسب تكوين الوحدة
  • المقارن: LM393
  • الأبعاد: 31 × 14 mm
  • مؤشرات LED: مؤشر طاقة ومؤشر خرج (وفق القائمة)
  • ثقب التثبيت: 3 mm

⚙️ طريقة العمل

تتغير مقاومة LDR مع شدة الإضاءة. وتكوّن مع مقاومات اللوحة مقسّمًا للجهد، لذلك يتغير خرج A0 مع الضوء المحيط. يقارن LM393 إشارة المقسّم بالعتبة المضبوطة عبر المقاومة المتغيرة ويغيّر حالة D0 عند تجاوزها. وقد يختلف اتجاه الإشارة التناظرية وسلوك HIGH/LOW الرقمي بحسب دارة اللوحة وضبطها.

💡 الاستخدامات

  • نماذج أولية للإضاءة التلقائية
  • إنذارات الضوء والظلام
  • تجارب المنزل الذكي
  • روبوتات تتبع الضوء أو اكتشافه
  • مشاريع قياس الضوء والتحكم به

📌 أطراف التوصيل

  • VCC: تغذية 3.3–5 V DC
  • GND: الأرضي
  • D0: خرج رقمي للمقارن بمستوى TTL
  • A0: خرج تناظري من مقسّم الجهد

🔌 مثال Arduino Uno أساسي

صِل VCC وGND بتغذية الوحدة، وD0 بالطرف D2 في Arduino، وA0 بالطرف A0. نُبقي مثال الشيفرة الأصلي أدناه؛ واضبط المقاومة المتغيرة حسب بيئة الاستخدام.

const int analogPin = A0; // Broche analogique pour la photorésistance
const int digitalPin = 2; // Broche digitale pour la photorésistance
const int ledPin = 13; // Broche de la LED intégrée


void setup() {
  Serial.begin(9600); // Initialiser la communication série
  pinMode(digitalPin, INPUT); // Configurer la broche digitale comme entrée
  pinMode(ledPin, OUTPUT); // Configurer la broche LED comme sortie
}


void loop() {
  int analogValue = analogRead(analogPin); // Lire la valeur analogique
  int digitalValue = digitalRead(digitalPin); // Lire la valeur digitale


  Serial.print("Analog value: ");
  Serial.print(analogValue); // Afficher la valeur analogique
  Serial.print(" | Digital value: ");
  Serial.println(digitalValue); // Afficher la valeur digitale


  if (digitalValue == LOW) { // Si la sortie digitale est basse
    digitalWrite(ledPin, HIGH); // Allumer la LED
  } else {
    digitalWrite(ledPin, LOW); // Éteindre la LED
  }


  delay(500); // Attendre 500 ms avant de refaire une lecture
}

شرح المثال الأساسي

تقرأ الشيفرة الخرجين التناظري والرقمي، وترسل القيم عبر الاتصال التسلسلي، وتتحكم في LED المدمج في Arduino بحسب حالة الخرج الرقمي.

مكونات المثال الأساسي

  • Arduino Uno
  • وحدة مستشعر ضوء LDR
  • أسلاك توصيل

التوصيلات الموضحة في المثال

  • VCC: ‏3.3 V أو 5 V من Arduino ضمن تصنيف الوحدة
  • GND: ‏GND في Arduino
  • D0: ‏D2 في Arduino
  • A0: ‏A0 في Arduino

📟 مثال متقدم: شاشة LCD عبر I2C

نُبقي مثال الشيفرة الأصلي للشاشة أدناه. يعرض القراءة التناظرية ومؤشرًا للضوء/الظلام، ويرسل القيم أيضًا عبر الاتصال التسلسلي.

#include <Wire.h>
#include <LiquidCrystal_I2C.h>


const int analogPin = A0; // Broche analogique pour la photorésistance
const int digitalPin = 2; // Broche digitale pour la photorésistance
LiquidCrystal_I2C lcd(0x27, 16, 2); // Adresse I2C 0x27, écran 16x2


void setup() {
  lcd.begin(); // Initialiser l'écran LCD
  lcd.backlight(); // Allumer le rétroéclairage de l'écran LCD
  Serial.begin(9600); // Initialiser la communication série
  pinMode(digitalPin, INPUT); // Configurer la broche digitale comme entrée
}


void loop() {
  int analogValue = analogRead(analogPin); // Lire la valeur analogique
  int digitalValue = digitalRead(digitalPin); // Lire la valeur digitale


  lcd.setCursor(0, 0);
  lcd.print("Luminosite: ");
  lcd.print(analogValue); // Afficher la valeur analogique sur l'écran LCD


  lcd.setCursor(0, 1);
  lcd.print("Etat: ");
  if (digitalValue == LOW) {
    lcd.print("Clair");
  } else {
    lcd.print("Sombre");
  }


  Serial.print("Analog value: ");
  Serial.print(analogValue); // Afficher la valeur analogique sur le moniteur série
  Serial.print(" | Digital value: ");
  Serial.println(digitalValue); // Afficher la valeur digitale sur le moniteur série


  delay(500); // Attendre 500 ms avant de refaire une lecture
}

مكونات المثال المتقدم

  • Arduino Uno
  • وحدة مستشعر ضوء LDR
  • شاشة 1602 I2C LCD
  • أسلاك توصيل

التوصيلات الموضحة في المثال

  • VCC / GND: تغذية الوحدة والأرضي المشترك
  • D0: ‏D2 في Arduino
  • A0: ‏A0 في Arduino
  • SDA / SCL للشاشة: ‏A4 / A5 في Uno

اضبط المقاومة المتغيرة مع مراقبة D0 لتحديد عتبة التبديل. استخدم A0 لقراءة مستوى ضوء متغير؛ واضبط العتبة عمليًا لأن الضوء المحيط وتفاوت المستشعر ودائرة اللوحة تؤثر في القيم.

📚 المكتبات

لا يحتاج المستشعر نفسه إلى مكتبة. يستخدم مثال الشاشة مكتبة Wire القياسية ومكتبة متوافقة مع LiquidCrystal_I2C يمكن تثبيتها من مدير المكتبات في Arduino IDE.

معلومات إضافية

Version

3 Broches, 4 Broches

شكرًا لولائك!

AR