جدول المحتويات:
- الخطوة 1: المتطلبات
- الخطوة 2: الأجهزة
- الخطوة 3: البرنامج
- الخطوة 4: الرمز الرئيسي
- الخطوة 5: اختبار الرموز
- الخطوة 6: ضوابط اللعبة
- الخطوة 7: الإعداد
فيديو: بدلة الواقع الافتراضي باستخدام Arduino: 7 خطوات (بالصور)
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:41
لقد أنشأت هذا المشروع لألعب ألعاب الكمبيوتر العادية في الواقع الافتراضي الكامل. يحاكي هذا المشروع حركاتك بالضغط أو الضغط على مفاتيح لوحة المفاتيح
مثال - عندما تمضي قدمًا ، تتم محاكاة إجراء الضغط على المفتاح "w".
لقد قمت بمحاكاة لعبة Call of Duty 4: Modern Warfare ولكن لا تختار الألعاب التي لها ارتداد أثناء التصوير لأنها ستغير الوضع الافتراضي للماوس
الخطوة 1: المتطلبات
المتطلبات هي-
هناك قائمة مليئة بالأشياء التي تحتاجها لصنع هذه البدلة
مستشعرات اللمس -5
مستشعر القوة -1
وحدة معالجة الرسومات 6050-4
(أو)
وحدة معالجة الرسوميات GPU 6050 - 2 ومقياس تسارع - 2
نظارات الواقع الافتراضي
هاتف يدعم الواقع الافتراضي
الكمبيوتر
نقطة اتصال WiFi
مسدس لعبة
لعبة كمبيوتر (لقد استخدمت Call of Duty- Modern Warfare 1)
أسلاك لوح الخبز (ذكر - أنثى)
أردوينو ليوناردو -2
أوتون شيلد - 2
مصدر الطاقة (ليبو)
أسلاك قوس قزح
الخطوة 2: الأجهزة
* reload_pin، shoot_pin، night vision_pin، grenade_pin، تغيير السلاح هي مستشعرات تعمل باللمس. الهدف_بين هو مستشعر القوة والفأرة التي تمت محاكاتها بواسطة MPU6050 مستشعرات أخرى هي مقياس التسارع (الموقف ، الحركة 1 & 2)
1.1) اللحام
SOLDER MPU 6050 ، مقياس التسارع ، مستشعر اللمس ومستشعر القوة بالأسلاك
1.2) الأسلاك
لـ MPU 6050-
دبوس 2- SDA
دبوس 3- SCL
GND - GND
5 فولت - PWR / VCC
للحركة_pin1-
دبوس A1- المحور س
GND-GND
5 فولت - PWR / VCC
للحركة_pin2-
دبوس A2- المحور س
GND-GND
5 فولت - PWR / VCC
ل posture_pin-
دبوس A0- المحور السيني
GND-GND
5 فولت - PWR / VCC
لدبوس السلاح -
سيج -5 فولت
GND-GND
5 فولت - PWR / VCC
لـ Reload_pin -
دبوس 12 - 5 فولت
GND-GND
5 فولت - PWR / VCC
لـ Nightvision_pin -
دبوس 10-5 فولت
GND-GND
5 فولت - PWR / VCC
لـ shoot_pin -
دبوس 7 - 5 فولت
GND-GND
5 فولت - PWR / VCC
ل aim_pin -
دبوس 8-5 فولت
5 فولت - PWR / VCC
1.3) أسلاك اللحام
جندى أسلاك لوح الخبز بأسلاك قوس قزح
1.4) العزل
قم بربط الأسلاك بشريط العزل في المكان الذي تم لحامه فيه لتجنب حدوث ماس كهربائي
الخطوة 3: البرنامج
لقد استخدمت تطبيقًا يسمى "Remotr" من متجر Play لإرسال الفيديو من الكمبيوتر المحمول إلى الهاتف
2.1) جهاز التحكم عن بعد-
قم بتثبيت تطبيق REMOTR على جهاز الكمبيوتر الخاص بك وإنشاء حساب
ها هو الرابط الالكتروني-
remotrapp.com/#download
قم بتثبيت تطبيق REMOTR على هاتفك الذكي
2.2) تدفق الفيديو
قم أولاً بتوصيل كل من الكمبيوتر ونفس شبكة WiFi وأدخل حساب REMOTR في كلا الجهازين
أضف الآن يدويًا اللعبة التي تريد بثها في البرنامج
الآن سيعرض التطبيق الكمبيوتر كمسؤول انقر عليه لبدء البث
للبث في VR ، قم بتمكين وضع vr في هاتفك الذكي
إذا كنت لا تستطيع الفهم تحقق من هذا الرابط للحصول على معلومات مفصلة
remotrapp.com/en/howto
الخطوة 4: الرمز الرئيسي
رمز هذا المشروع ليس صعبًا أو معقدًا ولكنه طويل
هذا هو الكود فقط قم بنسخه ولصقه في ملف اردوينو الخاص بك
أردوينو
ليوناردو ماوس-
لقد رجعت Gabry295. يعتمد رمز الماوس هذا على رأسه الماوس القابل للتوجيه
#يشمل
#يشمل
#يشمل
#يشمل
الهدف int_pin ؛
int shoot_pin؛
MPU6050 وحدة معالجة مركزية ؛
int16_t الفأس ، ay ، az ، gx ، gy ، gz ؛
int vx ، vy ؛
الإعداد باطل() {
Serial.begin (9600) ؛
Mouse.begin () ،
Wire.begin () ؛
mpu.initialize () ،
إذا (! mpu.testConnection ()) {
بينما (1) ؛
}
pinMode (7 ، الإدخال) ؛
pinMode (8 ، الإدخال) ؛
}
حلقة فارغة() {
shoot_pin = digitalRead (7) ،
aim_pin = digitalRead (8) ؛
mpu.getMotion6 (& ax، & ay، & az، & gx، & gy، & gz) ؛
vx = (gx-300) / 200 ؛ // لقد وضعت -300 و +490 حيث أن mpu6050 تظهر هذه القيم عند عدم تحريك الشيك
vy = - (gz + 490) / 200 ؛ // تحقق من كود الماوس الرئيسي بواسطة Gabry295 لمزيد من التفاصيل حول هذه القيم
Mouse.move (vx، vy) ؛
تأخير (20) ؛
بينما (shoot_pin == HIGH) ؛
{
النقر بالماوس()؛
}
بينما (aim_pin == عالية) ؛
{
النقر بالماوس()؛
}
}
لوحة مفاتيح ليوناردو
#يشمل
قنبلة يدوية
سلاح int_pin ؛
int reload_pin؛
حركة int1_pin ؛
حركة int2_pin ؛
int posture_pin؛
char nightvision_pin؛
الإعداد باطل()
{
pinMode (7 ، الإدخال) ؛
pinMode (8 ، الإدخال) ؛
pinMode (9 ، الإدخال) ؛
pinMode (10 ، الإدخال) ؛
pinMode (11 ، الإدخال) ؛
pinMode (12 ، الإدخال) ؛
pinMode (A0، INPUT) ؛
pinMode (A1 ، INPUT) ؛
Keyboard.begin () ،
}
حلقة فارغة()
{
Grenade_pin = digitalRead (8) ؛
weapon_pin = digitalRead (9) ؛
Movement1_pin = analogRead (A1) ؛
Movement2_pin = analogRead (A2) ؛
posture_pin = analogRead (A0) ؛
reload_pin = digitalRead (12) ،
nightvision_pin = digitalRead (10) ؛
إذا (قنبلة == عالية)
{
Keyboard.press ("g") ؛
}
بينما (weapon_pin == HIGH)
{
Keyboard.press ('q') ؛
}
بينما (reload_pin == HIGH)
{
Keyboard.press ('r') ؛
}
بينما (Movement1_pin> 340 && Movement1_pin <420)
{
Keyboard.press ('w') ؛
}
بينما (motion1_pin> 420)
{
Keyboard.press ('w') ؛
Keyboard.press ('p') ؛
}
بينما (motion2_pin> 340 && Movement2_pin <420)
{
Keyboard.press ('w') ؛
}
بينما (motion2_pin> 420)
{
Keyboard.press ('p') ؛
Keyboard.press ('w') ؛
}
بينما (posture_pin> 340 && posture_pin <420)
{
Keyboard.press ('c') ؛
}
بينما (posture_pin> 420)
{
Keyboard.press ('l') ؛
}
بينما (posture_pin <340)
{
Keyboard.press ('z') ؛
}
بينما (nightvision_pin == HIGH)
{
Keyboard.press ('n') ؛
}
}
}
الخطوة 5: اختبار الرموز
فيما يلي بعض الرموز المقسمة من الكود الرئيسي وفقًا للوظيفة
اطلاق الرصاص-
#يشمل
كثافة العمليات س ؛
الإعداد باطل() {
pinMode (8 ، الإدخال) ؛
Mouse.begin () ،
}
حلقة فارغة() {
س = ديجيتال ريد (8) ؛
إذا (س == عالية)
{
Mouse.click ("g") ؛
}
}
تهدف-
#يشمل
#يشمل
#يشمل
#يشمل
MPU6050 وحدة معالجة مركزية ؛
int16_t الفأس ، ay ، az ، gx ، gy ، gz ؛
int vx ، vy ؛
الإعداد باطل() {
Serial.begin (9600) ؛
Mouse.begin () ،
Wire.begin () ؛
mpu.initialize () ،
إذا (! mpu.testConnection ()) {
بينما (1) ؛
}
}
حلقة فارغة() {
shoot_pin = digitalRead (7) ،
aim_pin = digitalRead (8) ؛
mpu.getMotion6 (& ax، & ay، & az، & gx، & gy، & gz) ؛
vx = (gx + 300) / 200 ؛ // "+300" لأن المحور x للجيروسكوب يعطي قيمًا تبلغ حوالي -350 بينما لا يتحرك. غيّر هذه القيمة إذا حصلت على شيء مختلف باستخدام رمز الاختبار ، مع ملاحظة إذا كانت هناك قيم بعيدة عن الصفر.
vy = - (gz_-100) / 200 ؛ // نفس الشيء هنا حول "-100"
تحميل-
#يشمل
كثافة العمليات س ؛
الإعداد باطل() {
pinMode (8 ، الإدخال) ؛
Keyboard.begin () ،
}
حلقة فارغة() {
س = ديجيتال ريد (8) ؛
إذا (س == عالية)
{
Keyboard.press ('r') ؛
}
آخر
{
Keyboard.release ('r') ؛
}
}
تتضمن الرؤية الليلية #
كثافة العمليات س ؛
الإعداد باطل() {
pinMode (8 ، الإدخال) ؛
Keyboard.begin () ،
}
حلقة فارغة() {
س = ديجيتال ريد (8) ؛
إذا (س == عالية)
{
Keyboard.press ("g") ؛
}
آخر
{
Keyboard.release ("g") ؛
}
}
الصراخ والانبطاح-
#يشمل
int ذ ؛
الإعداد باطل() {
pinMode (A0، INPUT) ؛
Serial.begin (9600) ؛
}
حلقة فارغة() {
y = analogRead (A0) ؛
إذا (ص <260)
{
Keyboard.release ('c') ؛
Keyboard.release ("p") ؛
}
وإلا إذا (y> 260 && y <310)
{
Keyboard.press ('c') ؛
}
وإلا إذا (ص> 310)
{
Keyboard.press ('p') ؛
}
}
الخطوة 6: ضوابط اللعبة
قم بتغيير ضوابط اللعبة على النحو التالي
الانحناء - x
عرضة - ل
تغيير السلاح - q
العدو - ص
الوقوف / القفز - ض
رؤية ليلية - ن
حركة إلى الأمام - دبليو
قنبلة يدوية - g
الخطوة 7: الإعداد
أخيرًا وصلنا إلى الخطوة الأخيرة الآن وضع اردوينو
ألواح في صندوق ووضعها في الحقيبة
الآن قم بتوصيل micro USB الخاص بـ arduino بمنافذ USB للكمبيوتر المحمول الآن قم بتوصيل المستشعرات كما هو موضح أعلاه
* تمثل علامات الأسهم في الصور أعلاه الاتجاه الذي يجب أن يواجهه المستشعر
إذا كانت لديك أي شكوك فلا تتردد في ترك تعليق ولا تنس مشاركة تجربتك
هذا كل شيء شكرا لك و
وداعا.
موصى به:
الواقع الافتراضي على Raspberry Pi مع BeYourHero: 19 خطوة (بالصور)
الواقع الافتراضي على Raspberry Pi مع BeYourHero !: مرحبًا بك في & quot؛ كن بطلك & quot؛ مشروع! أتمنى أن تكون مستعدًا لدخول الجيل التالي من الانغماس في الواقع الافتراضي! سيمنحك هذا المشروع تحكمًا كاملاً بالإيماءات لأي بطل افتراضي يعجبك باستخدام مجموعة بسيطة من الأجهزة الرخيصة باستخدام نفس
اردوينو الواقع الافتراضي: 4 خطوات
Arduino Vr: مرحبًا ، اسمي كريستيان وعمري 13 عامًا. أنا أحب اردوينو ولدي موهبة لذلك ، فإليك تعليمي لـ arduino vr
خطوة للخلف ! لعبة الواقع الافتراضي باستخدام Arduino & Acclerometer: 9 خطوات
خطوة للخلف ! لعبة الواقع الافتراضي باستخدام Arduino & Acclerometer: في هذا البرنامج التعليمي ، سننشئ لعبة واقع افتراضي باستخدام Arduino و Acclerometer
نظارات الواقع الافتراضي والمختلط: 15 خطوة (بالصور)
نظارات الواقع الافتراضي والمختلط: مقدمة: خلال الدورة التدريبية الرئيسية تكنولوجيا تصميم المفاهيم ، طُلب منا استكشاف تقنية ناشئة تناسب مشروعنا الرئيسي واختبار هذه التقنية من خلال صنع نموذج أولي. التقنيات التي اخترناها هي على حد سواء الواقع الافتراضي
الواقع الافتراضي للجوال باستخدام المعالجة لنظام Android (TfCD): 7 خطوات (بالصور)
الواقع الافتراضي للجوال باستخدام المعالجة لنظام Android (TfCD): تعد تقنية الواقع الافتراضي (VR) إحدى التقنيات الجديدة التي قد تكون مثيرة للاهتمام وهي المنتجات المستقبلية. لديها الكثير من الفرص ولا تحتاج حتى إلى نظارات VR باهظة الثمن (Oculus Rift). قد يبدو من الصعب جدًا أن تفعل ذلك بنفسك ، لكن الأساسيات هي