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

وحدة تحكم لعبة فيديو اردوينو: 4 خطوات
وحدة تحكم لعبة فيديو اردوينو: 4 خطوات

فيديو: وحدة تحكم لعبة فيديو اردوينو: 4 خطوات

فيديو: وحدة تحكم لعبة فيديو اردوينو: 4 خطوات
فيديو: مشروع أردوينو - التحكم في سيارة روبوت بهاتفك الذكي 2024, يوليو
Anonim
Arduino Video Game Controller
Arduino Video Game Controller

هل لديك مجموعة اردوينو ولكن ليس لديك فكرة عن كيفية استخدامها؟ ربما لا ، ولكن في Instructable سأوضح لك خطوة بخطوة كيفية إنشاء Arduino ورمزه ودمجه في مشروعك. في الوقت الحالي ، يتم اختبار هذا الدليل فقط مع Clickteam Fusion Developer 2.5 ولكن يمكن استخدام خطوات الإنشاء وكود Arduino عالميًا. قد يتم تحديث هذا الدليل لـ Unreal و Unity في المستقبل.

الخطوة 1: قائمة التسوق

  • Arduino Uno أو ما شابه
  • كابل USB
  • (400 نقطة) لوحة توصيل أو 1 × لوحة أداء / شريط
  • أسلاك متوافقة مع اردوينو.
  • مجسات مختلفة. لقد استخدمت ما يلي في مثال مشروعي:
  • لوحة جبل الجهد 10K ودية اللوح
  • مقاوم ضوئي
  • مقاومة حساسة للقوة

الخطوة 2: التوصيلات

روابط
روابط

ملاحظة: هذه ليست سوى المستشعرات التي استخدمتها شخصيًا لمشروعي. هذا يعني أن هناك الكثير من الخيارات المتاحة. يمكن العثور على إرشادات خطوة بخطوة حول كيفية توصيل هذه الأسلاك في مواقع مختلفة اعتمادًا على المستشعر.

الخطوة 3: كود اردوينو

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

// يتم تعيينها في البداية ولا يتم تغييرها عند تشغيل البرنامج. مثل أي ANALOG في دبوس يستخدم.

const int potPin = A0 ؛ const int fsrAnalogPin = 5 ؛ const int photocellPin = 2 ؛ // المتغيرات: // مستشعر الضوء: // متغير كمية الضوء: int photocellReading ؛ // POTENTIOMETER // قيمة قيمة مقياس الجهد ؛ // مستشعر الضغط // هذا هو متغير البيانات الخام من مستشعر الضغط. قراءة fsr. // نسخة معينة من fsrReading متغير الضغط int ؛ إعداد باطل () {// ضع رمز الإعداد هنا ، للتشغيل مرة واحدة: pinMode (potPin ، INPUT) ؛ Serial.begin (9600) ؛ } حلقة فارغة () {// PRESSURE SENSOR // هنا نستخدم fsrAnalogPin المحدد لقراءة البيانات من هذا الدبوس. fsrReading = analogRead (fsrAnalogPin) ، // قيمة الخريطة من 0-1023 إلى 0-255. الضغط = الخريطة (fsrReading، 0، 1023، 0، 255) ؛ // تحقق مما إذا كان الضغط أقل أو أعلى من كمية معينة بطباعة أحدهما. يتم استخدام هذا المتغير المطبوع لاحقًا في محرك اللعبة. إذا (الضغط 70) {Serial.print ("6") ؛ } // قيمة POTENTIOMETER = analogRead (potPin) ؛ // قراءة وحفظ القيمة التناظرية من قيمة مقياس الجهد = خريطة (القيمة ، 0 ، 1023 ، 0 ، 360) ؛ // قيمة الخريطة من 0-1023 إلى 0-360 // هنا قمنا بتقسيم 360 إلى ستة أجزاء مختلفة. // يمكنك تغيير مقدار الشرائح إلى مبلغ أكبر. سيكون لكل جزء نطاق أصغر بعد ذلك. على سبيل المثال ، سيكون لدى 8 مقاطع نطاق من 45 لكل منها. (360 / كمية المقاطع) // إذا كانت القيمة الحالية تقع في جزء ، فسيتم طباعة اسم ذلك المقطع. if (القيمة 60 والقيمة 120 والقيمة 180 والقيمة 240 والقيمة 300 والقيمة <375) Serial.print ("ستة") ؛ // LIGHT SENSOR // هنا نقرأ مرة أخرى ونضبط متغيرًا ، في هذه الحالة قراءة الخلية الكهروضوئية. photocellReading = analogRead (الخلية الكهروضوئية) ؛ // نتحقق من كمية الضوء ، مع طباعة داكنة ومظلمة جدًا 3 وطباعة قيم الضوء العادي 4. إذا (قراءة الخلية الضوئية <10) {Serial.println ("- 3") ؛ } else if (photocellReading <200) {Serial.println ("- 3 -")؛ } else if (photocellReading <500) {Serial.println ("- 4 -")؛ } // الأرقام الموجودة في المسلسل: // الرقم الأول هو مستشعر الضغط ، 5 غير مضغوط و 6 مضغوط. // بعد ذلك هو الجزء الذي يعمل فيه مقياس الجهد حاليًا. // والعدد الأخير إما 3 = داكن أو 4 = فاتح.

الخطوة 4: في محرك اللعبة: انقر فوق Team 2.5

في Extension Manager ، ابحث عن Serial Object وقم بتثبيت هذا.

ضع الكائن التسلسلي وعدادًا وخيطًا في إطارك. (انقر بزر الماوس الأيمن في الإطار - أدخل كائنًا)

في محرر الأحداث ، أنشئ حدثًا: إذا كانت البيانات تنتظر: عيِّن سلسلة قابلة للتغيير على GetData ("كائن تسلسلي")

سيؤدي هذا إلى تعيين السلسلة لأي بيانات يتم إرسالها بواسطة Arduino ، يجب أن تبدو السلسلة الآن مشابهة لـ Serial Monitor.

إنشاء حدث آخر دائمًا: تعيين العداد على: بحث (سلسلة $ ("سلسلة") ، "4" ، 0)

سيحاول هذا المثال العثور على الرقم 4 الذي يساوي الضوء كما يمكن رؤيته في كود Arduino.

إذا عثر على الرقم 4 ، فسيتم ضبط العداد على 4 ، وإذا فشل في العثور على الرقم 4 ، فسيكون العداد هو -1.

يمكنك الآن إضافة حدث جديد للقيام بشيء ما بهذه النتيجة:

إذا كان العداد = -1: هنا يمكنك وضع ما يجب أن يحدث إذا كان خطأ ، مثل وجود رسم متحرك للمصباح قيد الإطفاء.

إذا كان العداد = -1: هذا يعني أنه قد وجد المتغير وأن العداد قد تم ضبطه على أيًا كان هذا المتغير (طالما أنه ليس -1) ، يمكنك هنا جعله بحيث يتم تشغيل الرسوم المتحركة للمصباح.

في الأساس باستخدام عدادات تم ضبطها على -1 وهو خطأ أو -1 وهو صحيح ، يمكنك جعل الأحداث تحدث.

موصى به: