- نظرة عامة:
- المكونات المطلوبة:
- شرح الدائرة:
- عمل مقياس التسارع:
- برمجة اردوينو:
- معالجة البرمجة:
- اختبارات:
أصبح الواقع المعزز والألعاب الافتراضية اتجاهًا حديثًا في صناعة الألعاب. لقد ولت أوقات استخدام لوحة المفاتيح / عصا التحكم والماوس للعب لعبة الكمبيوتر. الآن تأتي كل وحدة تحكم في الألعاب مع وحدة تحكم افتراضية تساعدنا على لعب اللعبة باستخدام حركات وإيماءات أجسادنا ، وبهذه الطريقة زادت تجربة اللعب كثيرًا ويشعر المستخدم بمزيد من المشاركة في اللعبة.
في هذا المشروع ، دعونا نحاول الاستمتاع بينما نتعلم من خلال المشروع. دعونا ننشئ لعبة (نعم سمعتني صحيحًا أننا goanna نصمم لعبة) ونلعبها باستخدام حركة يدك. نحن نقوم بإنشاء لعبة Ping Pong Ball الكلاسيكية باستخدام Arduino و Accelerometer.
نظرة عامة:
هناك الكثير من البرامج مفتوحة المصدر المتاحة هذه الأيام والتي جلبت الكثير من السعادة للهواة مثلنا ، والمعالجة واحدة منها. باستخدام هذا التطبيق المستند إلى JAVA ، يمكننا إنشاء برنامج خاص (تنسيق exe.) وأيضًا تطبيق android (ملف.apk). لذلك سنستخدم هذا البرنامج لبناء لعبتنا ، وقد استخدمنا مسبقًا المعالجة في إنشاء غرفة دردشة Arduino.
سيتكون جزء الجهاز من Arduino الذي سيجلب المدخلات من مقياس التسارع لإطعامه بشكل تسلسلي إلى جهاز الكمبيوتر / الكمبيوتر المحمول الخاص بنا.
لذلك دعنا نذهب للتسوق !!!!
المكونات المطلوبة:
- Arduino (أي إصدار أو نموذج)
- مقياس التسارع
- توصيل الأسلاك
- الفائدة (لولز)
مقياس التسارع واردوينو نانو
شرح الدائرة:
لا تتضمن دائرة مشروع Arduino Ping Pong Ball Game أي اتصالات معقدة. لقد استخدمت Arduino Nano مع مقياس التسارع. ولكن هناك أشياء قليلة يجب الاهتمام بها كما هو مذكور أدناه:
1. لا يمكن لمقياس التسارع التعامل مع 5 فولت ، لذلك قم دائمًا بتوصيل Vcc لمقياس التسارع بدبوس 3.3 فولت من Arduino.
2. كل مقياس تسارع يعاني من تأثير الجاذبية التي يجب التعامل معها أثناء البرمجة (ببساطة باستخدام مرشح).
مع وضع ذلك في الاعتبار ، دعونا ننظر في عمل مقياس التسارع وكيف نستخدمه.
عمل مقياس التسارع:
و التسارع هو الجهاز الذي يمكن تحويل تسارع في أي اتجاه لمتغير الجهد الخاصة به. يتم تحقيق ذلك باستخدام المكثفات (راجع الصورة) ، أثناء تحرك Accel ، سيخضع المكثف الموجود بداخله أيضًا لتغييرات (راجع الصورة) بناءً على الحركة ، نظرًا لتنوع السعة ، يمكن أيضًا الحصول على جهد متغير.
لذلك ، كما ذكرنا أعلاه ، يعاني كل مقياس تسارع من مشكلة تأثير الجاذبية. بغض النظر عن مدى دقة معايرة المستشعر (حتى هواتف Apple الخاصة بك Accel.) ، فسوف يتأثر بالجاذبية. ويرد أدناه شرح أكثر تقنية لهذه المشكلة.
الآن ، في Arduino يمكننا تقليل تأثير الجاذبية باستخدام مرشح بسيط. يتكون هذا المرشح من صفيفتين ، أحدهما يستخدم لتخزين قيم العينة من المستشعر والآخر يستخدم لفرز قيم العينة ، والعثور على القيمة الأكثر تكرارًا. دعونا ننفذ هذه الخوارزمية في Arduino ونجهز أجهزتنا.
برمجة اردوينو:
برنامج Arduino موضح أدناه في قسم التعليمات البرمجية. لا توجد بيانات مهمة يجب تعديلها. لكن قد ترغب في مراعاة ما يلي:
قم بزيادة حجم العينة إذا استمر Accel في إظهار قيم عشوائية.
#define Samplesize 13 // filterSample number
العب بمعدل 9600 باود لزيادة سرعة الاتصال بين Arduino والمعالجة. لكن تأكد من تغييرها في كلا البرنامجين (البرامج).
إعداد باطل () {Serial.begin (9600) ؛ }
يعطي مقياس التسارع الخاص بي على المحور X 193 على أقصى اليسار و 280 على أقصى اليمين ، قم بقياسها من أجل Accel وقم بتحديث القيمة.
toSend = map (smoothData1، 193، 280، 0، 255) ؛
يتم تعيين القيم في بايت واحد من البيانات للاتصال التسلسلي.
تحقق كذلك من التعليقات في الكود أدناه لفهمها بوضوح.
معالجة البرمجة:
المعالجة عبارة عن برنامج مفتوح المصدر يستخدمه الفنانون لتصميم الرسومات. يستخدم هذا البرنامج لتطوير البرامج وتطبيقات Android. إنه سهل التطوير ويشبه إلى حد كبير IDE لتطوير Android. ومن ثم فقد اختصرت الشرح.
كود معالجة لعبة بينج بونج موضح هنا:
- كود معالجة لعبة اردوينو بينغ بول
انقر بزر الماوس الأيمن فوقه وانقر فوق "حفظ الرابط باسم.." لتنزيل ملف الشفرة. ثم افتح الملف في برنامج "المعالجة" وانقر فوق الزر "تشغيل" للعب اللعبة. تحتاج إلى تثبيت برنامج "معالجة" لفتح ملفات *.pde. قسم التعليقات مفتوح للاستفسارات وأيضًا تحقق من التعليقات في البرنامج لفهمها بشكل أفضل.
السطر السفلي ، في إعداد الفراغ () تعتبر وظيفة معالجة التعليمات البرمجية مهمة ، حيث إنها تقرر من أي منفذ إلى البيانات منه.
المنفذ = مسلسل جديد (this، Serial.list ()، 9600) ؛ // يقرأ المنفذ الرابع عند 9600 باودرات
لقد قرأت هنا البيانات من المنفذ الرابع من Arduino.
لذلك على سبيل المثال إذا كان لديك COM COM COM COM COM
ثم سيقرأ الكود أعلاه البيانات من COM.
اختبارات:
الآن بما أن رسم Arduino والمعالجة لدينا جاهز ، ما عليك سوى تحميل البرنامج المحدد أدناه إلى Arduino وتوصيل Arduino بكابل البرمجة الشامل لجهاز الكمبيوتر الخاص بك وتشغيل اللعبة عن طريق تشغيل ملف رمز المعالجة (.pde). هذا هو! حرك مقياس التسارع الخاص بك والعب لعبة بينج بونج. في الفيديو سوف توجه لكم من خلال المشروع كاملة.
بمجرد فهمك للبرنامج ، يمكنك إنشاء العديد من الألعاب المشابهة وتشغيلها باستخدام Arduino الخاص بك ، علاوة على ذلك ، يمكن أيضًا تضمين المحور Y والمحور Z للألعاب.