جدول المحتويات:
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-23 12:54
يوضح هذا التوجيه بالتفصيل الخطوات اللازمة لإنشاء مصباح LED لاسلكي بدائي مستشعر للضوء باستخدام Arduino Unos ومقاوم ضوئي. قد يكون أحد التطبيقات الممكنة لهذا الجهاز هو إضاءة غرفة لا تحتوي على نوافذ بأشعة الشمس الاصطناعية ، بحيث تتوافق مع ظروف الإضاءة الفعلية بالخارج في الوقت الفعلي. هيا بنا نبدأ!
قائمة الدعم:
اردوينو اونو x2
NRF24L01 جهاز الإرسال والاستقبال اللاسلكي x2 (اختياري - حقيبة ظهر NRF24L01 x2)
ترانزستور دارلينجتون TIP120
مقاوم ضوئي
5 ملم المصابيح x3
اضغط الزر
مقاوم 100 أوم x3
10 كيلو أوم المقاوم x3
أسلاك توصيل مختلفة
الخطوة 1: توصيل الأسلاك لوحدات ودائرة NRF24L01
في هذا المشروع ، سيعمل أحد Arduino كجهاز إرسال ، ويرسل بيانات مستوى الضوء من المقاوم الضوئي عند الضغط على زر الضغط. سيعمل Arduino الآخر كمستقبل ، حيث يأخذ تلك البيانات ويحولها إلى إشارة إلى مصابيح LED. تُظهر الصورة الأولى مخطط جهاز الإرسال ، بينما تُظهر الصورة الثانية جهاز الاستقبال.
ملاحظة: في صور مشروعي ، ستلاحظ أن أجهزة الإرسال والاستقبال NRF24L01 متصلة بثنائي الفينيل متعدد الكلور آخر. هذه وحدة ظهر لأجهزة الإرسال والاستقبال ، والتي تعمل كمنظم للطاقة. بالإضافة إلى جعل الأسلاك أسهل ، تنظم حقائب الظهر هذه مدخلات الطاقة لـ NRF24L01 ، مما يسمح باستخدام مصدر طاقة 5 فولت. لقد حذفت حقائب الظهر هذه في رسومي التخطيطي من أجل الوضوح.
(إذا قررت استخدام حقائب الظهر ، فيرجى الرجوع إلى هذا الرابط للحصول على رسم تخطيطي لمواقع الدبوس في إشارة إلى المخزون NRF24L01).
مرفق أدناه نسخة PDF من الدائرة لتسهيل التكبير / التصغير / العرض التفصيلي.
الخطوة 2: تشفير جهاز الإرسال
الخطوة الأخيرة هي الترميز. ستحتاج إلى تثبيت مكتبة RadioHead أو مكتبة مكافئة لاستخدامها مع وحدات NRF24L01.
بالنسبة لهذا المشروع ، يستخدم جهاز الإرسال والاستقبال Arduinos رمزًا مختلفًا في كل منهما. هذا هو رمز جهاز الإرسال:
لقد أرفقت أيضًا ملف.ino (NRF_Send) للراحة.
#يشمل
#يشمل
RH_NRF24 nrf24 ؛ // تهيئة جهاز الإرسال والاستقبال كـ nrf24
زر int = 5 ؛ // تعيين قيم الدبوس للزر والمقاوم الضوئي
int p المقاوم = A0 ؛ قيمة int = 0 ؛ // قيمة الضوء من 0-1023
الإعداد باطل()
{Serial.begin (9600) ، pinMode (زر ، الإدخال) ؛ pinMode (المقاوم ، المدخلات) ؛ if (! nrf24.init ()) // ينبه المستخدم إذا فشلت تهيئة الوحدة النمطية Serial.println ("فشل init") ؛ // الافتراضيات بعد التهيئة هي 2.402 جيجاهرتز (القناة 2) ، 2 ميجابت في الثانية ، 0 ديسيبل إذا (! nrf24.setChannel (1)) Serial.println ("فشل setChannel") ؛ إذا (! nrf24.setRF (RH_NRF24:: DataRate2Mbps، RH_NRF24:: TransmitPower0dBm)) Serial.println ("setRF فشل")؛ }
حلقة فارغة()
{if (digitalRead (button)) {// أرسل رسالة إذا تم الضغط على الزر value = analogRead (pResistor) ؛ // اقرأ قيمة المقاوم الضوئي (0-1023) بيانات uint8_t = {value} ؛ // يعين مصفوفة تسمى "data " تحتوي على قيمة الضوء nrf24.send (data، sizeof (data))؛ // أرسل المصفوفة إلى المتلقي nrf24.waitPacketSent () ؛ // انتظر حتى يتم إرسال الحزمة Serial.println ("Light Value:" + String (value)) ؛ // اطبع قيمة الضوء في الشاشة التسلسلية}}
الخطوة 3: تشفير جهاز الاستقبال
بالنسبة لجهاز الاستقبال ، يستخدم الرمز أيضًا مكتبة RadioHead.
#يشمل
#يشمل
RH_NRF24 nrf24 ؛
كثافة العمليات LEDPin = 3 ؛
قيمة int = 0 ؛ // قيمة الضوء من 0-1023
الإعداد باطل()
{Serial.begin (9600) ، pinMode (LEDPin ، الإخراج) ؛ if (! nrf24.init ()) Serial.println ("فشل init")؛ // الافتراضيات بعد التهيئة هي 2.402 جيجاهرتز (القناة 2) ، 2 ميجابت في الثانية ، 0 ديسيبل إذا (! nrf24.setChannel (1)) Serial.println ("فشل setChannel") ؛ إذا (! nrf24.setRF (RH_NRF24:: DataRate2Mbps، RH_NRF24:: TransmitPower0dBm)) Serial.println ("setRF فشل")؛ }
حلقة فارغة()
{// انتظر رسالة uint8_t buf [RH_NRF24_MAX_MESSAGE_LEN] ؛ // قم بتخزين الرسالة المستلمة كمصفوفة تسمى "buf " uint8_t len = sizeof (buf) ؛ // تخزين حجم buf كـ "len" while (nrf24.waitAvailableTimeout (200) && nrf24.recv (buf، & len)) // يتلقى الرسالة لمدة 200 مللي ثانية أو حتى يتم استلام الرسالة بأكملها {value = buf [0] ؛ // يعين القيمة للفهرس الأول من buf ، وهو int من analogWrite المقاوم للضوء (LEDPin ، الخريطة (القيمة ، 0 ، 1023 ، 0 ، 255)) ؛ // يعين دبوس PWM لإخراج قيمة مقاسة بين 0-255 لسطوع LED Serial.println (سلسلة (قيمة)) ؛ } analogWrite (LEDPin، 0) ؛ }
الخطوة 4: تم
استمتع باللعب بمستويات إضاءة مختلفة ومشاهدة مصابيح LED تتطابق معها! يمكن أن يكون المقاوم الضوئي صعبًا في بعض الأحيان ، ويعمل بشكل أفضل في غرفة مظلمة مع مصدر ضوء محلي (ولكن يمكن أن يعمل بالخارج مع الشمس أيضًا).
موصى به:
كيفية استخدام المقاوم الضوئي لإضاءة LED باستخدام Aurduino: 12 خطوة
كيفية استخدام المقاوم الضوئي لإضاءة LED مع Aurduino: صباح الخير / بعد الظهر / المساء لجميع عشاق Arduino! اليوم ، سأقوم بشرح كيفية استخدام المقاوم الضوئي (الخلية الكهروضوئية) لإضاءة LED. سيسمح الرمز المقدم مع Instructable هذا بإضاءة LED بشكل خافت بشكل طبيعي ، ولكنها ستومض أثناء
Nightvision Laserbeak! (أو كيفية عمل مصباح للرؤية الليلية ، مصباح LED ، مصباح يدوي مزج لعبة المحولات!): 5 خطوات
Nightvision Laserbeak! (أو كيف تصنع Nightvision-Preserving ، LED Throwie ، Transformer Toy Mashup Flashlight!): Instructable من قبل noob for the noob. ما الذي تحصل عليه عند مزج مصباح يدوي للحفاظ على الرؤية الليلية ، ورمية LED ، ومحول أنيق عروسه لعبه؟ تعليمات ذات اسم طويل حقًا! سوف نسميها & quot؛ Nightvision Laserbeak & quot؛ ل
ضوء ليلي متوافق مع ليغو: 3 خطوات
ضوء ليغو متوافق مع Lego: هذا المشروع عبارة عن ضوء ليلي سريع باستخدام مكعبات Lunchbox Electronics PTH LED لإظهار بعض من Legos المفضلة لديك ولا يتطلب أي لحام! هيا بنا نبدأ
مستشعر الضوء (المقاوم الضوئي) مع Arduino في Tinkercad: 5 خطوات (بالصور)
مستشعر الضوء (المقاوم الضوئي) مع Arduino في Tinkercad: دعنا نتعلم كيفية قراءة المقاوم الضوئي ، وهو نوع حساس للضوء من المقاوم المتغير ، باستخدام مدخلات Arduino التناظرية. يطلق عليه أيضًا LDR (المقاوم المعتمد على الضوء) ، حتى الآن تعلمت بالفعل التحكم في مصابيح LED من خلال إخراج Arduino التناظري ، و
ميكروفون لاسلكي DIY إلى نظام جيتار لاسلكي: 4 خطوات
DIY Wireless Mic to Wireless Guitar System: لقد كنت أشاهد بعض مقاطع الفيديو وبعض الفرق الموسيقية وتقريباً يستخدم نظام لاسلكي على الجيتار. الجنون ، التحرك ، المشي والقيام بكل ما يريدون بدون الحبل لذا أحلم بالحصول على واحد .. لكن .. بالنسبة لي الآن ، هذا مكلف للغاية لذا توصلت إلى هذا