الجمعة، 20 أبريل 2018

مشروع تخرج تحكم فى لعبة عن طريق الاردينو Arduino

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


هنا سأشرح بالتفصيل كيف قمت ببرمجة لوحة Arduino باستخدام معالجة IDE لتمكين التحكم في لعبة الفيديو.
 Arduino Game Controller في لعبة Need For Spe.

كيف يعمل هذا المشروع ؟

هذه هي طريقة عمل Arduino Game Controller:

تشعر حساسات القفاز " الذراع الآلى "بحركات ذراع الإنسان .
يتم إرسال القيم التي تم التقاطها و الحصول عليها إلى المدخلات التناظرية Analog Inputs فى لوحة اردوينو .
من Arduino يتم إرسالها إلى IDE Processing عبر الاتصال التسلسلي Serial Communication .
ثم من IDE معالجة يتم إرسالها إلى مشغل فيديو.

اردوينو IDE

أولا تم برمجة الأردوينو باستخدام بيئة تطوير متكاملة للأردينو للعمل كخادم من شأنه أن يعمل باستمرار على اردوينو. يمكّن هذا الرمز الاتصالات التسلسلية Serial Communication بين لوحة Arduino و IDE Processing.

هنا كود " شفرة " البرنامج :


  1. /*
  2. * Arduino Game Controller
  3. *
  4. * Crated by Dejan Nedelkovski,
  5. * www.HowToMechatronics.com
  6. www.lakanata.com
  7. *
  8. */
  9. /* Defining variables , يتم /تعريف المتغيرات و أسماء الأرجل التى سنستخدمها
  10. */
  11. int pinX=A8;
  12. int pinY=A7;
  13. int pinZ=A6;
  14. int pinA0=A0;
  15. int pinA4=A4;
  16. int pinA3=A3;
  17. int pinA1=A1;
  18. int pinA2=A2;
  19. void setup()
  20. {
  21. Serial.begin(115200); /* starts the serial communicaPort تعريف الاتصال المتسلسل لكى نستطيع استخدامة
  22. */
  23. }
  24. void loop()
  25. {
  26. int valX=analogRead(pinX); // reads the Analog Input, t.e the value from the X - axis from the accelerometer
  27. أقرا الدخل المتغير و قيمة المحور س من جهاز قياس العجلة
  28. Serial.print(valX); // sends that value into the Serial Port أرسل القيمة إلى منفذ الاتصال
  29. Serial.print(","); // sends addition character right next to the read value needed later in the Processing IDE for indexing
  30. int valY=analogRead(pinY);
  31. Serial.print(valY);
  32. Serial.print("/");
  33. int valZ=analogRead(pinZ);
  34. Serial.print(valZ);
  35. Serial.print(";");
  36. int valA0=analogRead(pinA0);
  37. Serial.print(valA0);
  38. Serial.print(":");
  39. int valA4=analogRead(pinA4);
  40. Serial.print(valA4);
  41. Serial.print("<");
  42. int valA3=analogRead(pinA3);
  43. Serial.print(valA3);
  44. Serial.print("!");
  45. int valA2=analogRead(pinA2);
  46. Serial.print(valA2);
  47. Serial.print("?");
  48. int valA1=analogRead(pinA1);
  49. Serial.print(valA1);
  50. Serial.print(".");
  51. delay(30);
  52. }





*** تذكر أن تسجل عنوان بريدك الإلكترونى معنا فى المدونة ليصلك كل ما هو جديد لدينا  
متابعتك شرف لنا ***

ليست هناك تعليقات:

إرسال تعليق

شكرا لتعلقك و متابعتك لموقع تكنولوجيا 24