विषयसूची:
वीडियो: Arduino Vr: 4 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:19
नमस्ते मेरा नाम क्रिश्चियन है और मेरी उम्र 13 साल है। मैं arduino से प्यार करता हूँ और इसके लिए एक प्रतिभा है इसलिए यहाँ एक arduino vr के लिए मेरा निर्देश है।
आपूर्ति
आपूर्ति:
1. Arduino बोर्ड मेगा, ड्यू, यूनो, या यूं।
2. नर से नर (मानक जम्पर तार) तार।
3. छोटा ब्रेडबोर्ड
4. यूएसबी
5. GY-521 MPU-6050
वैकल्पिक:
6. 5.5 इंच 2560*1440 2K LCD स्क्रीन HDMI से MIPI
7. फ्रेस्नेल लेंस फोकल लंबाई 50 मिमी
8. 3-डी प्रिंटर या 3डी प्रिंटर सेवा
चरण 1: इकट्ठा
इसे एक साथ रखने के लिए योजनाबद्ध का उपयोग करें।
चरण 2: पुस्तकालय कैसे स्थापित करें?
Github पर एक नज़र डालें: https://github.com/relativty/Relativ आप इसे या तो Git या डायरेक्ट डाउनलोड का उपयोग करके इंस्टॉल कर सकते हैं।
चरण 3: कोड
// i2cdevlib और MPU6050 की जरूरत है:
// अद्भुत जेफ रोवबर्ग के लिए बहुत धन्यवाद <3, अधिक एमपीयू 6050 जानने के लिए अपने रेपो की जांच करें। //========================================== ============================
// I2Cdev और MPU6050 को पुस्तकालयों के रूप में स्थापित किया जाना चाहिए, अन्यथा दोनों वर्गों के लिए.cpp/.h फ़ाइलें // आपके प्रोजेक्ट के शामिल पथ में होनी चाहिए
#शामिल "Relativ.h"
#शामिल "I2Cdev.h"
#शामिल "MPU6050_6Axis_MotionApps20.h"
#अगर I2CDEV_IMPLEMENTATION == I2CDEV_ARDUINO_WIRE #include "Wire.h" #endif
एमपीयू 6050 एमपीयू; सापेक्ष सापेक्ष;
#परिभाषित करें INTERRUPT_PIN 2
// IMU स्थिति और नियंत्रण: बूल dmpReady = false; // सच है अगर DMP init सफल uint8_t mpuIntStatus था; uint8_t देवस्टैटस; // 0 = सफलता, !0 = त्रुटि uint16_t पैकेट आकार; uint16_t फीफोकाउंट; uint8_t फीफोबफर [64];
चतुर्धातुक क्यू; // [डब्ल्यू एक्स वाई जेड]
अस्थिर बूल एमपीयूइंटरप्ट = झूठा; // इंगित करता है कि क्या एमपीयू इंटरप्ट पिन उच्च शून्य हो गया है dmpDataReady () {mpuInterrupt = true; }
शून्य सेटअप () { #if I2CDEV_IMPLEMENTATION == I2CDEV_ARDUINO_WIRE Wire.begin (); वायर.सेटक्लॉक (400000); // 400kHz I2C घड़ी। संकलन में कठिनाई होने पर इस पंक्ति पर टिप्पणी करें #elif I2CDEV_IMPLEMENTATION == I2CDEV_BUILTIN_FASTWIRE Fastwire::setup(400, true); #अगर अंत
रिलेटिव.स्टार्टनेटिव (); // "स्टार्टनेटिव" का उपयोग 32-बिट एआरएम कोर माइक्रोकंट्रोलर के लिए किया जा सकता है जिसमें मूल यूएसबी जैसे Arduino DUE // जो अनुशंसित है। // रिलेटिव.स्टार्ट (); // "स्टार्ट" नॉन-नेटिव USB माइक्रोकंट्रोलर के लिए है, जैसे Arduino MEGA, Arduino UNO..//वे काफी धीमे हैं। mpu.initialize (); पिनमोड (INTERRUPT_PIN, INPUT);
SerialUSB.println(mpu.testConnection() ? F("MPU6050 कनेक्शन सफल"): F("MPU6050 कनेक्शन विफल"));
// डीएमपी देवस्टैटस को कॉन्फ़िगर करें = mpu.dmpInitialize ();
// =============================== // यहां अपने स्वयं के जाइरो ऑफसेट की आपूर्ति करें: // === ============================= mpu.setXGyroOffset(220); mpu.setYGyroOffset(76); mpu.setZGyroOffset(-85); mpu.setZAccelOffset(1788);
// devStatus अगर सब कुछ ठीक से काम करता है अगर (devStatus == 0) {// DMP चालू करें, अब यह तैयार है mpu.setDMPEnabled(true);
// Arduino इंटरप्ट डिटेक्शन अटैचमेंट को सक्षम करें (डिजिटलपिनटोइंटरप्ट (INTERRUPT_PIN), dmpDataReady, RISING); mpuIntStatus = mpu.getIntStatus ();
डीएमपीरेडी = सच;
// बाद में तुलना के लिए अपेक्षित डीएमपी पैकेट आकार प्राप्त करें पैकेट आकार = mpu.dmpGetFIFOPacketSize (); } और {//त्रुटि! } }
शून्य लूप () {// कुछ भी न करें यदि डीएमपी सही ढंग से प्रारंभ नहीं होता है अगर (! dmpReady) वापस आ जाता है;
// एमपीयू इंटरप्ट या अतिरिक्त पैकेट के उपलब्ध होने की प्रतीक्षा करें जबकि (!mpuInterrupt && fifoCount <पैकेटसाइज) { }
// इंटरप्ट फ्लैग को रीसेट करें और INT_STATUS बाइट mpuInterrupt = false प्राप्त करें; mpuIntStatus = mpu.getIntStatus ();
// वर्तमान फीफो गणना प्राप्त करें फीफोकाउंट = एमपीयू.गेटफिफोकाउंट ();
अगर ((mpuIntStatus और 0x10) || फीफोकाउंट == 1024) {mpu.resetFIFO (); } // अगर (mpuIntStatus और 0x02) {जबकि (फीफोकाउंट <पैकेटसाइज) फीफोकाउंट = mpu.getFIFOCount (); mpu.getFIFOBytes (फीफोबफर, पैकेटसाइज); फीफोकाउंट - = पैकेटसाइज; mpu.dmpGetQuaternion(&q, फीफोबफर); relativ.updateOrientationNative(q.x, q.y, q.z, q.w, 4); // updateOrientationNative" का उपयोग 32-बिट ARM कोर माइक्रोकंट्रोलर के लिए मूल USB जैसे Arduino DUE // के लिए किया जा सकता है, जिसकी अनुशंसा की जाती है। गैर-देशी USB माइक्रोकंट्रोलर के लिए, जैसे Arduino MEGA, Arduino UNO..//वे काफी धीमे हैं। } }
चरण 4: खेलें
किसी भी वीआर गेम पर छोटे ब्रेडबोर्ड को घुमाने से कैमरे को घुमाना चाहिए
सिफारिश की:
Arduino कार रिवर्स पार्किंग अलर्ट सिस्टम - कदम दर कदम: 4 कदम
Arduino कार रिवर्स पार्किंग अलर्ट सिस्टम | स्टेप बाय स्टेप: इस प्रोजेक्ट में, मैं Arduino UNO और HC-SR04 अल्ट्रासोनिक सेंसर का उपयोग करके एक साधारण Arduino कार रिवर्स पार्किंग सेंसर सर्किट डिजाइन करूंगा। इस Arduino आधारित कार रिवर्स अलर्ट सिस्टम का उपयोग स्वायत्त नेविगेशन, रोबोट रेंजिंग और अन्य रेंज r के लिए किया जा सकता है
DIY कदम/डीआईआर लेजर गैल्वो नियंत्रक: 5 कदम (चित्रों के साथ)
DIY STEP / DIR LASER GALVO कंट्रोलर: नमस्ते, इस निर्देश में, मैं आपको दिखाना चाहता हूं कि आप ILDA मानक गैल्वो लेजर स्कैनर के लिए अपना खुद का स्टेप / dir इंटरफ़ेस कैसे बना सकते हैं। जैसा कि आप जानते होंगे कि मैं "DIY-SLS-3D-Printer" और "जेआरएलएस १००० DIY एसएलएस-३डी-पी
पिक्सेल किट चल रहा है माइक्रोपायथन: पहला कदम: 7 कदम
पिक्सेल किट रनिंग माइक्रोपायथन: पहला कदम: कानो के पिक्सेल की पूरी क्षमता को अनलॉक करने की यात्रा फ़ैक्टरी फ़र्मवेयर को माइक्रोपायथन के साथ बदलने के साथ शुरू होती है लेकिन यह केवल शुरुआत है। Pixel Kit पर कोड करने के लिए हमें अपने कंप्यूटरों को इससे कनेक्ट करना होगा। यह ट्यूटोरियल समझाएगा कि क्या
बैटरी के आंतरिक प्रतिरोध को मापने के लिए 4 कदम: 4 कदम
बैटरी के आंतरिक प्रतिरोध को मापने के लिए 4 कदम: यहां 4 सरल चरण दिए गए हैं जो बैटर के आंतरिक प्रतिरोध को मापने में आपकी मदद कर सकते हैं।
$3 और 3 कदम लैपटॉप स्टैंड (रीडिंग-ग्लास और पेन ट्रे के साथ): 5 कदम
$3 और 3 कदम लैपटॉप स्टैंड (रीडिंग-ग्लास और पेन ट्रे के साथ): यह $3 और amp; 5 मिनट में 3 स्टेप वाला लैपटॉप स्टैंड बनाया जा सकता है। यह बहुत मजबूत, हल्का वजन है, और आप जहां भी जाते हैं, ले जाने के लिए फोल्ड किया जा सकता है