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

اردوينو هوت ويلز سبيد تراك الجزء رقم 2 - كود: 5 خطوات
اردوينو هوت ويلز سبيد تراك الجزء رقم 2 - كود: 5 خطوات

فيديو: اردوينو هوت ويلز سبيد تراك الجزء رقم 2 - كود: 5 خطوات

فيديو: اردوينو هوت ويلز سبيد تراك الجزء رقم 2 - كود: 5 خطوات
فيديو: Sunday 6 Lane Finals Race #hotwheels #dragrace #diy #arduino 2024, شهر نوفمبر
Anonim
Image
Image

في الجزء الأول من هذا المشروع ، قمنا ببناء الأجهزة الخاصة بالنموذج الأولي على لوحتين من ألواح التجارب.

وفي هذا الجزء سوف نستعرض الكود ، كيف يعمل ثم نختبره.

تأكد من مشاهدة الفيديو أعلاه لمراجعة الكود بالكامل وعرض كود العمل.

الخطوة 1: كلا من السيد والعبد في نفس القانون

يتكون الرمز من جزأين ، ولكن داخل نفس الملف. أستخدم #define و #ifdef لتحديد الكود الذي سيتم تجميعه أو تجاهله حتى أتمكن من فصل أي رمز مخصص فقط للوحة التجارب الرئيسية والرمز المخصص للوح SLAVE فقط.

بشكل أساسي ، إذا تم العثور على تعريف MASTER ، فسيتم تجميع أي كود موجود داخل كتلة رمز MASTER وسيتم إزالة أي كود خارج تلك الكتلة في وقت الترجمة.

#ifdef ماستر

// رمز محدد رئيسي هنا

#آخر

# تعريف الرقيق

// رمز معين للرقيق موجود هنا

#إنهاء إذا

أنا أيضًا أستخدم نفس الأسلوب # تعريف الرقيق عندما يتم تجميع MASTER لذا ما عليك سوى القلق بشأن تحديد MASTER أو عدم تمكين SLAVE ليتم تعريفه.

الخطوة 2: وحدات BLUETOOTH تتحدث عبر المسلسل قراءة وكتابة

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

تتحدث الوحدات النمطية وتستمع باستخدام فئة Serial المضمنة في نظام ترميز Arduino البيئي.

تتواصل وحدات البلوتوث عند 38400 باود ، لذا فإن كلا المسارين من الكود يهيئان اتصالاتهما التسلسلية باستخدام:

Serial.begin (38400) ؛

ويستخدم الرقيق:

Serial.write (البيانات هنا) ؛

للتحدث إلى MASTER ، ويستخدم MASTER:

البيانات = Serial.read () ،

للاستماع إلى الدفق التسلسلي وقراءة محتوياته وتخزينه داخل متغير.

الخطوة الثالثة: السيطرة على السباق

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

عندما يخبر SLAVE السيد أن السباق سيبدأ ، يبدأ SLAVE في استطلاع مستشعرات الأشعة تحت الحمراء الموجودة على جانبه (بداية مسار السباق) لكي تمر السيارات تحتها.

عندما تمر كل سيارة تحت كل مستشعر IR ، فإنها ترسل A (السيارة 1) أو B (السيارة 2) إلى MASTER.

عندما يستقبل MASTER A أو B ، فإنه يمكّن المؤقت لتلك السيارة المحددة ثم ينتظر مرور السيارة أسفل مستشعر الأشعة تحت الحمراء المقابل عند خط النهاية.

يتم تحديث الشاشة كل 50 مللي ثانية لعرض الوقت الحالي لكل سيارة في ثوانٍ مع منزلتين عشريتين.

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

الخطوة 4: باقي الكود

ما تبقى من الكود هو مجرد رمز فائدة إما يتحكم في عرض البيانات على الشاشة المكونة من 8 أرقام ، أو يتعامل مع منطق الضغط على الزر وما إلى ذلك.

في نهاية الفيديو في قسم المقدمة في هذا المشروع ، أعرض مثالاً على الكود الذي يعمل على لوحتي التجارب ، لذا تأكد من التحقق من ذلك!

يمكنك الحصول على الكود الخاص بهذا المشروع من جيثب ريبو الخاص بي.

الخطوة الخامسة: ماذا بعد؟

هذا كل شيء الآن … في الجزء 3 سننظر في نقل المكونات من اللوح إلى شيء أكثر ديمومة … ترقبوا!

أتمنى أن تكون مستمتعًا بهذا المشروع!

تابعني على:

www.youtube.com/c/unlimitedmaker

twitter.com/unlimitedmaker

www.facebook.com/unlimitedmaker

www.instagram.com/unlimitedmaker

www.tindie.com/stores/seonr/

موصى به: