সুচিপত্র:
ভিডিও: Arduino Vr: 4 ধাপ
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 07:57
হাই আমার নাম খ্রিস্টান এবং আমার বয়স 13 বছর। আমি arduino ভালবাসি এবং এর জন্য একটি প্রতিভা আছে তাই এখানে একটি arduino vr জন্য আমার নির্দেশযোগ্য।
সরবরাহ
সরবরাহ:
1. Arduino বোর্ড মেগা, ডিউ, ইউনো, বা ইউন।
2. পুরুষ থেকে পুরুষ (স্ট্যান্ডার্ড জাম্পার তার) তারের।
3. ছোট রুটিবোর্ড
4. ইউএসবি
5. GY-521 MPU-6050
চ্ছিক:
6. 5.5 ইঞ্চি 2560*1440 2K LCD স্ক্রিন HDMI থেকে MIPI
7. Fresnel লেন্স ফোকাল দৈর্ঘ্য 50mm
8. 3-ডি প্রিন্টার বা 3 ডি প্রিন্টার পরিষেবা
ধাপ 1: একত্রিত করুন
এটি একত্রিত করার জন্য পরিকল্পিত ব্যবহার করুন।
ধাপ 2: কিভাবে লাইব্রেরি ইনস্টল করবেন?
Github- এ দেখুন: https://github.com/relativty/Relativ আপনি Git বা সরাসরি ডাউনলোড করে ইনস্টল করতে পারেন।
ধাপ 3: কোড
// i2cdevlib এবং MPU6050 প্রয়োজন:
// আশ্চর্যজনক জেফ রোবার্গকে ধন্যবাদ <3, আরও MPU6050 জানতে তার রেপো চেক করুন। // ==================================================== =================================
// I2Cdev এবং MPU6050 লাইব্রেরি হিসাবে ইনস্টল করা আবশ্যক, অন্যথায়.cpp/.h ফাইল // উভয় শ্রেণীর জন্য অবশ্যই আপনার প্রকল্পের অন্তর্ভুক্ত পথের মধ্যে থাকতে হবে
#"Relativ.h" অন্তর্ভুক্ত করুন
#অন্তর্ভুক্ত "I2Cdev.h"
#অন্তর্ভুক্ত "MPU6050_6Axis_MotionApps20.h"
#if I2CDEV_IMPLEMENTATION == I2CDEV_ARDUINO_WIRE #অন্তর্ভুক্ত "Wire.h" #endif
MPU6050 mpu; আপেক্ষিক আপেক্ষিক;
#INTERRUPT_PIN নির্ধারণ করুন 2
// আইএমইউ অবস্থা এবং নিয়ন্ত্রণ: বুল dmpReady = মিথ্যা; // সত্য যদি DMP init সফল হয় uint8_t mpuIntStatus; uint8_t devStatus; // 0 = সাফল্য,! 0 = ত্রুটি uint16_t প্যাকেট সাইজ; uint16_t fifoCount; uint8_t fifoBuffer [64];
Quaternion q; // [ইংরেজি বর্ণমালার শেষ চারটি বর্ণ]
volatile bool mpuInterrupt = মিথ্যা; // নির্দেশ করে যে এমপিইউ ইন্টারাপ্ট পিন উচ্চ অকার্যকর হয়েছে কিনা dmpDataReady () {mpuInterrupt = true; }
অকার্যকর সেটআপ () {#if I2CDEV_IMPLEMENTATION == I2CDEV_ARDUINO_WIRE Wire.begin (); Wire.setClock (400000); // 400kHz I2C ঘড়ি। সংকলন করতে সমস্যা হলে এই লাইনে মন্তব্য করুন #elif I2CDEV_IMPLEMENTATION == I2CDEV_BUILTIN_FASTWIRE Fastwire:: setup (400, true); #যদি শেষ
রিলেটিভ স্টার্ট নেটিভ (); // "startNative" 32-বিট এআরএম কোর মাইক্রোকন্ট্রোলারের জন্য ব্যবহার করা যেতে পারে যার সাথে নেটিভ ইউএসবি যেমন Arduino DUE // যা সুপারিশ করা হয়। // Relativ.start (); // "শুরু" হল নন-নেটিভ ইউএসবি মাইক্রোকন্ট্রোলারের জন্য, যেমন Arduino MEGA, Arduino UNO.. // সেগুলো উল্লেখযোগ্যভাবে ধীর। mpu.initialize (); pinMode (INTERRUPT_PIN, INPUT);
SerialUSB.println (mpu.testConnection ()? F ("MPU6050 সংযোগ সফল"): F ("MPU6050 সংযোগ ব্যর্থ"));
// DMP devStatus = 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 ();
dmpReady = সত্য;
// পরবর্তী তুলনা প্যাকেটের জন্য প্রত্যাশিত DMP প্যাকেটের আকার পান সাইজ = mpu.dmpGetFIFOPacketSize (); } অন্যথায় {// ভুল! }}
অকার্যকর লুপ () {// যদি ডিএমপি সঠিকভাবে শুরু না হয় তবে কিছু করবেন না যদি (! dmpReady) ফিরে আসে;
// এমপিইউ বাধা বা অতিরিক্ত প্যাকেট উপলব্ধ হওয়ার জন্য অপেক্ষা করুন (! mpuInterrupt && fifoCount <packetSize) {}
// বাধা পতাকা পুনরায় সেট করুন এবং INT_STATUS বাইট mpuInterrupt = মিথ্যা পান; mpuIntStatus = mpu.getIntStatus ();
// বর্তমান FIFO গণনা পান fifoCount = mpu.getFIFOCount ();
যদি ((mpuIntStatus & 0x10) || fifoCount == 1024) {mpu.resetFIFO (); } // অন্যত্র বাধা পরীক্ষা করুন যদি (mpuIntStatus & 0x02) {while (fifoCount <packetSize) fifoCount = mpu.getFIFOCount (); mpu.getFIFOBytes (fifoBuffer, packetSize); fifoCount -= packetSize; mpu.dmpGetQuaternion (& q, fifoBuffer); আপেক্ষিক আপডেটঅরিয়েন্টেশন নেটিভ // updateOrientationNative "32-বিট ARM কোর মাইক্রোকন্ট্রোলারের জন্য ব্যবহার করা যেতে পারে নেটিভ ইউএসবি যেমন Arduino DUE // যা প্রস্তাবিত। //relativ.updateOrientation(qx, qy, qz, qw, 4); // Relativ.updateOrientation" হল নন-নেটিভ ইউএসবি মাইক্রোকন্ট্রোলারের জন্য, যেমন Arduino MEGA, Arduino UNO.. // সেগুলি উল্লেখযোগ্যভাবে ধীর। }}
ধাপ 4: খেলুন
যে কোনও ভিআর গেমের ছোট রুটিবোর্ডটি সরানো ক্যামেরাটি ঘোরানো উচিত
প্রস্তাবিত:
কিভাবে 4G LTE ডাবল BiQuade অ্যান্টেনা সহজ ধাপ: 3 ধাপ
কিভাবে 4G LTE ডাবল BiQuade অ্যান্টেনা সহজ ধাপ তৈরি করতে হয়: বেশিরভাগ সময় আমি মুখোমুখি হয়েছি, আমার প্রতিদিনের কাজের জন্য আমার ভাল সংকেত শক্তি নেই। তাই। আমি বিভিন্ন ধরণের অ্যান্টেনা অনুসন্ধান করি এবং চেষ্টা করি কিন্তু কাজ করি না। নষ্ট সময়ের পরে আমি একটি অ্যান্টেনা খুঁজে পেয়েছি যা আমি তৈরি এবং পরীক্ষা করার আশা করি, কারণ এটি নির্মাণের নীতি নয়
Arduino Halloween Edition - Zombies Pop -out Screen (ছবি সহ ধাপ): 6 টি ধাপ
আরডুইনো হ্যালোইন সংস্করণ - জম্বি পপ -আউট স্ক্রিন (ছবি সহ ধাপ): আপনার বন্ধুদের ভয় দেখাতে চান এবং হ্যালোইনে কিছু চিৎকারের শব্দ করতে চান? অথবা শুধু কিছু ভাল কৌতুক করতে চান? এই Zombies পপ আউট পর্দা যে করতে পারেন! এই নির্দেশনায় আমি আপনাকে শেখাবো কিভাবে সহজেই আরডুইনো ব্যবহার করে লাফ দিয়ে জম্বি তৈরি করতে হয়। HC-SR0
Arduino Uno ধাপে ধাপে ধাপে ধাপে (8-ধাপ): 8 টি ধাপ
Arduino Uno ধাপে ধাপে ধাপে ধাপে (8-ধাপ): অতিস্বনক শব্দ ট্রান্সডুসার L298N Dc মহিলা অ্যাডাপ্টার একটি পুরুষ ডিসি পিন Arduino UNO ব্রেডবোর্ড দিয়ে কিভাবে এটি কাজ করে: প্রথমে, আপনি Arduino Uno এ কোড আপলোড করুন (এটি ডিজিটাল সজ্জিত একটি মাইক্রোকন্ট্রোলার এবং এনালগ পোর্ট কোড রূপান্তর করতে (C ++)
11 ধাপ রুবে গোল্ডবার্গ মেশিন: 8 টি ধাপ
11 স্টেপ রুবে গোল্ডবার্গ মেশিন: এই প্রজেক্টটি একটি 11 স্টেপ রুবে গোল্ডবার্গ মেশিন, যা একটি জটিল পদ্ধতিতে একটি সহজ কাজ তৈরি করার জন্য ডিজাইন করা হয়েছে। এই প্রকল্পের কাজ হল সাবানের বার ধরা
একটি Arduino স্বয়ংক্রিয় ছায়া পর্দা প্রকল্পের জন্য একটি ধাপ মোটর এবং ড্রাইভার নির্বাচন: 12 ধাপ (ছবি সহ)
একটি Arduino অটোমেটেড শেড স্ক্রিন প্রজেক্টের জন্য একটি স্টেপ মোটর এবং ড্রাইভার নির্বাচন করা: এই নির্দেশনায়, আমি একটি প্রোটোটাইপ অটোমেটেড শেড স্ক্রিন প্রকল্পের জন্য একটি স্টেপ মোটর এবং ড্রাইভার নির্বাচন করার জন্য যে ধাপগুলো নিয়েছি তার মধ্য দিয়ে যাব। ছায়া পর্দা জনপ্রিয় এবং সস্তা কুলারু হাত ক্র্যাঙ্কড মডেল, এবং আমি টি প্রতিস্থাপন করতে চেয়েছিলাম