جدول المحتويات:

دائرة LED ذات زر انضغاطي: 5 خطوات
دائرة LED ذات زر انضغاطي: 5 خطوات

فيديو: دائرة LED ذات زر انضغاطي: 5 خطوات

فيديو: دائرة LED ذات زر انضغاطي: 5 خطوات
فيديو: Push button led brightness control circuit 2024, شهر نوفمبر
Anonim
حلبة LED ذات زر انضغاطي مزدوج
حلبة LED ذات زر انضغاطي مزدوج

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

بدأ هذا المشروع في الواقع من جرأة من مهندس صديق لوالدي أنني كنت متدربًا لبضعة أيام. أنا أحب التحديات ، هناك شيء في التحدي يثيرني ويمنحني إحساسًا غامرًا بالرضا عندما أنجح ، وآمل أن تفعل ذلك أيضًا.

في هذا التوجيه ، الأول على الإطلاق: D ، سأوضح لك كيفية توصيل الدائرة لما أسميته مشروع Mark One الخاص بي ، وهو عبارة عن دائرة يتحكم فيها زران انضغاطيان في سطوع مؤشر LED (أحدهما سيزيد السطوع والثاني إلى تقليله) وكذلك كيفية برمجته وعرض نتائجك على أداة المراقبة التسلسلية. سأوضح لك بالضبط ما تحتاجه بالإضافة إلى دليل تفصيلي حول كيفية بنائه. يشتمل مشروعي على عناصر من كل من زر الضغط - بالإضافة إلى درس التلاشي على موقع التعليمات على الويب ويتم التعليق عليه بشدة من أجل راحتي الشخصية وكذلك لك. إذا لم تكن معتادًا على لغة البرمجة ، فالرجاء أخذ الوقت ، فهي تستحق ذلك.

يتمتع!

الخطوة 1: المواد + الأدوات:

المواد + الأدوات
المواد + الأدوات

المواد:

1. لوحة Arduino (كنت أستخدم Mega 2560)

2. لوح تجارب (مع 60 صفاً على الأقل)

3. مؤشر LED واحد (أي لون ، كنت أحمر)

4. اثنان من أزرار الضغط القياسية

5. خمسة أسلاك زرقاء (للإشارة إلى التيار السالب)

6. ثلاثة أسلاك حمراء (للإشارة إلى التيار الموجب)

7. سلك برتقالي وأخضر وأصفر (أسلاك تحكم PWM للتمييز بين المكونات الثلاثة الرئيسية)

8. أربعة أسلاك بيضاء (لتوصيل الدائرة)

9. ثلاثة مقاومات 10 كيلو أوم (بني ، أسود ، برتقالي ، ذهبي)

أدوات:

1. جهاز كمبيوتر محمول

2. تطبيق Arduino IDE (يمكن تنزيله من متجر Microsoft Play

أو

2. يقوم Arduino بإنشاء موقع على الإنترنت (إذا كان هذا هو ما تفضله)

3. أيدي ذكية

4. Google (موقع الويب القابل للتوجيه ساعدني كثيرًا)

5. الأحمال من الصبر ؛ د

الخطوة الثانية: قم بإعداد دائرتك التناظرية:

قم بإعداد دائرتك التناظرية
قم بإعداد دائرتك التناظرية

يتمثل الاختلاف بين الأنظمة التناظرية والرقمية في أن رمز الأنظمة التناظرية لحالات مختلفة مثل السطوع المختلف لمصباح LED بينما رموز رقمية فقط لحالتين (إما تشغيل أو إيقاف).

هذه الدائرة عبارة عن دائرة تناظرية لأن الهدف كان تغيير سطوع الضوء ، وليس فقط تشغيله أو إيقاف تشغيله.

لإعداده:

1. خذ سلكًا أزرق (للسالب) وقم بتوصيله (على Arduino) بأي من منافذ GND (الأرضية) في منافذ الطاقة وقم بتوصيله في أي مكان على اللوح في الصفوف المجاورة للأرضية السلبية الزرقاء.

2. خذ سلكًا واحدًا أحمر (موجبًا) وقم بتوصيله (على Arduino) بمنفذ 5 فولت في منافذ الطاقة وقم بتوصيله بالصف الموجود على اللوح المجاور للخط الأرضي الموجب الأحمر. تم إعداد التخطيط وما هي الصفوف المتصلة وما إلى ذلك. تحتوي Instructables وموقع Arduino الإلكتروني على دروس رائعة للقيام بذلك]

3. في الطرف المقابل من اللوح ، تستخدم سلكًا أزرق وسلكًا أحمر واحدًا لتوصيل الخطوط الأرضية.

4. ثم استخدم أربعة أسلاك بيضاء لتوصيل الصفوف الأرضية لكل من الموجب والسالب على جانبي الصف 30 من الوسط (يجب أن يسدوا فجوة صغيرة)

الخطوة الثالثة: إعداد الأزرار الانضغاطية:

قم بإعداد الأزرار الانضغاطية
قم بإعداد الأزرار الانضغاطية

1. الآن خذ الأزرار الانضغاطية الخاصة بك وقم بتوصيلها بحيث تمتد عبر الفجوة المتوسطة للوح في أي وقت (أحب أن أفصل أشيائي قليلاً حتى أتمكن من تغيير الأشياء وإصلاحها بسهولة أكبر.

2. خذ سلكين باللون الأحمر وقم بتوصيل الساق اليمنى من الأزرار الانضغاطية باتجاهك بخط الأرض الموجب.

3. خذ سلكين باللون الأزرق وقم بتوصيل خط الأرض السالب الأزرق بالصفوف المركزية على بعد صفوف قليلة يسار الأرجل اليسرى من الأزرار الانضغاطية ، مما يترك مساحة للمقاومات.

4. الآن قم بتوصيل المقاومات 10K (بني ، أسود ، برتقالي ، ذهبي) بساق واحدة في نفس الصف الأوسط مثل السلك الأزرق السالب والساق الأخرى في نفس الصف مثل الساق اليسرى لزر الضغط

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

5. الآن خذ السلك الأصفر والأخضر وقم بتوصيل الساق اليسرى على الجانب الآخر من القسمة المركزية بالدبابيس 9 و 11 [ملحوظة: يعمل التناظري فقط على السن 3 و 5 و 6 و 9 و 10 و 11]. هذه الأسلاك للتواصل مع Arduino.

الخطوة 4: إعداد LED:

قم بإعداد LED
قم بإعداد LED

1. خذ مؤشر LED (اللون الذي تختاره) وضعه على جانب الفاصل حيث توجد معظم اتصالاتك.

2. خذ سلكًا أزرقًا واحدًا وقم بتوصيل الخط الأرضي الأزرق السالب بنفس الصف مثل الساق القصيرة (الأنود) لمصباح LED [لن تعمل الدائرة إلا إذا كان الخط الأزرق السالب متصلاً بالساق اليمنى من مؤشر LED i.o.w. الأنود.

3. خذ المقاوم 10 كيلو أوم آخر وقم بتوصيل الصف الذي يتم توصيل الكاثود (الساق الطويلة الموجبة من الصمام) به بصف قريب على نفس الجانب من الفجوة المركزية.

4. الآن خذ السلك البرتقالي وقم بتوصيل المقاوم بالدبوس 3 في Arduino

لقد اكتملت دائرتك الآن ، كل ما تبقى الآن هو برمجة كل شيء

الخطوة الخامسة: برمجة الدائرة:

أنا جديد قليلاً على كل هذا ، لذا يرجى المعذرة لنسخ الكود فقط وعدم إنشاء مقطع فيديو …

هذا هو رمز الدائرة:

// أول مشروع خاص بي (Altus Lourens): // تم إنشاؤه بين 29 و 30 يونيو 2018

// NB لنفسي: يعمل AnalogWrite فقط على 3 و 5 و 6 و 9 و 10 و 11

// NB: التناظرية لها علاقة بحالات مختلفة ، تعمل الرقمية فقط من أجل (HIGH) أو إيقاف تشغيل (LOW)

// سيتم إخراج LED

// ستكون أزرار الضغط مدخلات

// pushButton1 سيزيد السطوع بمقدار واحد يتلاشى مع كل ضغطة

// pushButton2 يقلل السطوع مع fadeAmount واحد مع كل ضغطة

// لن تتغير الثوابت ، قم بتعيين أرقام دبوس PWM

const int ledPin = 3 ؛ // رقم دبوس PWM LED

const int fadeAmount = 50 ؛ // تغيير السطوع مع كل ضغطة على الزر

const int buttonPin1 = 11 ؛

const int buttonPin2 = 9 ؛ // رقم دبوس الزر الانضغاطي

// المتغير الذي سيتغير:

سطوع int = 5 ؛ // بدء سطوع الصمام

int buttonState1 = 0 ؛ // تحديد بداية الزر على أنها منخفضة

int buttonState2 = 0 ؛ // تحديد بداية الزر على أنها منخفضة

الإعداد باطل() {

// ضع رمز الإعداد هنا ، للتشغيل مرة واحدة:

// تهيئة دبوس LED كإخراج:

pinMode (ledPin ، الإخراج) ؛

// تهيئة الأزرار الانضغاطية كمدخلات:

pinMode (buttonPin1 ، الإدخال) ؛

pinMode (buttonPin2 ، الإدخال) ؛

Serial.begin (9600) ؛ // سرعة الاتصال في الدائرة

}

// buttonPin1 سيزيد من سطوع LED

// سيقلل buttonPin2 سطوع LED

حلقة فارغة() {

// ضع الكود الرئيسي هنا ، للتشغيل بشكل متكرر:

// اضبط سطوع الدبوس 9:

analogWrite (ledPin ، السطوع) ؛ // السطوع = 5 ، LED قيد التشغيل

السطوع = تقييد (السطوع ، 0 ، 255) ؛ // تقييد السطوع بين 0 و 255

// اقرأ حالة قيمة زر الضغط:

buttonState1 = digitalRead (buttonPin1) ،

buttonState2 = digitalRead (buttonPin2) ،

// تحقق مما إذا تم الضغط على الأزرار:

// إذا كان -> buttonState = مرتفع:

// pushbutton1:

إذا (buttonState1 == عالية) {

السطوع = السطوع + fadeAmount ؛ // زيادة السطوع:

analogWrite (ledPin ، السطوع + fadeAmount) ؛

}

else {// السطوع يبقى على نفس المستوى و LED لا يزال مطفأ:

analogWrite (ledPin ، السطوع) ؛

}

// pushbutton2:

إذا (buttonState2 == عالية) {

السطوع = السطوع - مقدار التلاشي ؛ // تقليل السطوع:

analogWrite (ledPin ، السطوع - fadeAmount) ؛

}

آخر {

// يظل السطوع عند نفس المستوى ، ولا يحدث أي تغيير:

analogWrite (ledPin ، السطوع) ؛

}

Serial.print ("السطوع") ؛

Serial.println (سطوع) ؛ }

يمكنك الآن ضبط سرعة الاتصال والتلاعب بها قليلاً حتى تجد سرعة تعمل بشكل مثالي لأداة المراقبة التسلسلية [9600 Baud هو مجرد سرعة قياسية]

موصى به: