Isi kandungan:
- Bekalan
- Langkah 1: Berkumpul
- Langkah 2: Bagaimana Memasang Perpustakaan?
- Langkah 3: Kod
- Langkah 4: Main
Video: Arduino Vr: 4 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:08
Hai Nama saya beragama Kristian dan saya berumur 13 tahun. Saya suka arduino dan mempunyai bakat untuknya jadi inilah petunjuk saya untuk arduino vr.
Bekalan
Bekalan:
1. Arduino board Mega, Due, Uno, atau Yun.
2. Kabel lelaki hingga lelaki (wayar pelompat standard).
3. Papan roti kecil
4. USB
5. GY-521 MPU-6050
Pilihan:
6. Skrin LCD 5.5 inci 2560 * 1440 2K HDMI ke MIPI
7. Fesel Fresnel Panjang Fokus 50mm
8. Perkhidmatan pencetak 3-D atau pencetak 3d
Langkah 1: Berkumpul
Gunakan skema untuk menyatukannya.
Langkah 2: Bagaimana Memasang Perpustakaan?
Lihatlah Github: https://github.com/relativty/Relativ Anda boleh memasangnya menggunakan Git atau Muat turun langsung.
Langkah 3: Kod
// i2cdevlib dan MPU6050 diperlukan:
// Terima kasih banyak kepada Jeff Rowberg <3 yang luar biasa, periksa repo-nya untuk mengetahui lebih banyak MPU6050. // ================================================ =============================
// I2Cdev dan MPU6050 mesti dipasang sebagai perpustakaan, jika tidak, fail.cpp /.h // untuk kedua-dua kelas mesti ada di jalan sertakan projek anda
#sertakan "Relativ.h"
#sertakan "I2Cdev.h"
#sertakan "MPU6050_6Axis_MotionApps20.h"
#jika I2CDEV_IMPLEMENTATION == I2CDEV_ARDUINO_WIRE #masuk "Wire.h" #endif
MPU6050 mpu; Relativ relativ;
#tentukan INTERRUPT_PIN 2
// Status dan kawalan IMU: bool dmpReady = false; // benar sekiranya DMP init berjaya uint8_t mpuIntStatus; uint8_t devStatus; // 0 = kejayaan,! 0 = ralat uint16_t packetSize; uint16_t fifoCount; uint8_t fifoBuffer [64];
Kuarterion q; // [w, x, y, z]
bool tidak menentu mpuInterrupt = false; // menunjukkan sama ada pin interupsi MPU telah hilang tinggi dmpDataReady () {mpuInterrupt = true; }
batal persediaan () {#if I2CDEV_IMPLEMENTATION == I2CDEV_ARDUINO_WIRE Wire.begin (); Wire.setClock (400000); // Jam 400kHz I2C. Komen baris ini jika menghadapi kesukaran penyusunan #elif I2CDEV_IMPLEMENTATION == I2CDEV_BUILTIN_FASTWIRE Fastwire:: setup (400, true); #endif
relativ.startNative (); // "startNative" boleh digunakan untuk mikrokontroler teras ARM 32-bit dengan USB Asli seperti Arduino DUE // yang disyorkan. // Relativ.start (); // "permulaan" adalah untuk mikrokontroler USB TIDAK SANGAT, seperti Arduino MEGA, Arduino UNO.. // Mereka jauh lebih perlahan. mpu.initialize (); pinMode (INTERRUPT_PIN, INPUT);
SerialUSB.println (mpu.testConnection ()? F ("Sambungan MPU6050 berjaya"): F ("Sambungan MPU6050 gagal"));
// konfigurasi DMP devStatus = mpu.dmpInitialize ();
// ================================== // sediakan offset gyro anda sendiri di sini: // === =============================== mpu.setXGyroOffset (220); mpu.setYGyroOffset (76); mpu.setZGyroOffset (-85); mpu.setZAccelOffset (1788);
// devSTatus jika semuanya berfungsi dengan baik jika (devStatus == 0) {// hidupkan DMP, sekarang sudah siap mpu.setDMPEnabled (benar);
// aktifkan Arduino pengesanan interrupt attachInterrupt (digitalPinToInterrupt (INTERRUPT_PIN), dmpDataReady, RISING); mpuIntStatus = mpu.getIntStatus ();
dmpReady = benar;
// dapatkan ukuran paket DMP yang diharapkan untuk perbandingan paket kemudianSize = mpu.dmpGetFIFOPacketSize (); } lain {// KESALAHAN! }}
gelung kosong () {// Jangan buat apa-apa jika DMP tidak memulakan dengan betul jika (! dmpReady) kembali;
// tunggu MPU mengganggu atau paket tambahan tersedia semasa (! mpuInterrupt && fifoCount <packetSize) {}
// tetapkan semula bendera gangguan dan dapatkan INT_STATUS bait mpuInterrupt = false; mpuIntStatus = mpu.getIntStatus ();
// dapatkan jumlah FIFO saat ini fifoCount = mpu.getFIFOCount ();
jika ((mpuIntStatus & 0x10) || fifoCount == 1024) {mpu.resetFIFO (); } // periksa gangguan lain jika (mpuIntStatus & 0x02) {while (fifoCount <packetSize) fifoCount = mpu.getFIFOCount (); mpu.getFIFOBytes (fifoBuffer, packetSize); fifoCount - = packetSize; mpu.dmpGetQuaternion (& q, fifoBuffer); relativ.updateOrientationNative (q.x, q.y, q.z, q.w, 4); // updateOrientationNative "boleh digunakan untuk mikrokontroler teras ARM 32-bit dengan USB Asli seperti Arduino DUE // yang disyorkan. //relativ.updateOrientation(qx, qy, qz, qw, 4); // Relativ.updateOrientation" adalah untuk mikrokontroler USB NON-NATIVE, seperti Arduino MEGA, Arduino UNO.. // Mereka jauh lebih perlahan. }}
Langkah 4: Main
menggerakkan papan roti kecil pada permainan vr mana pun harus memutar kamera
Disyorkan:
Sistem Makluman Tempat Letak Balik Kereta Arduino - Langkah demi Langkah: 4 Langkah
Sistem Makluman Tempat Letak Balik Kereta Arduino | Langkah demi Langkah: Dalam projek ini, saya akan merancang Litar Sensor Tempat Letak Kereta Berbalik Arduino yang ringkas menggunakan Sensor Ultrasonik Arduino UNO dan HC-SR04. Sistem amaran Car Reverse berasaskan Arduino ini dapat digunakan untuk Navigasi Autonomi, Robot Ranging dan rangkaian lain
Langkah demi Langkah Pembinaan PC: 9 Langkah
Langkah demi Langkah Pembinaan PC: Persediaan: Perkakasan: MotherboardCPU & CPU cooler PSU (Unit bekalan kuasa) Penyimpanan (HDD / SSD) RAMGPU (tidak diperlukan) Alat kes: Pemutar skru Gelang ESD / tampal matsthermal dengan aplikator
Pengangkatan Akustik Dengan Arduino Uno Langkah demi Langkah (8-langkah): 8 Langkah
Acoustic Levitation With Arduino Uno Step-by Step (8-step): transduser suara ultrasonik L298N Dc power adaptor wanita dengan pin dc lelaki Arduino UNOBreadboardBagaimana ini berfungsi: Pertama, anda memuat naik kod ke Arduino Uno (ia adalah mikrokontroler yang dilengkapi dengan digital dan port analog untuk menukar kod (C ++)
Robot Jejak RC Menggunakan Arduino - Langkah demi Langkah: 3 Langkah
Robot Jejak RC Menggunakan Arduino - Langkah demi Langkah: Hai kawan, saya kembali dengan casis Robot keren lain dari BangGood. Harap anda berjaya melalui projek kami yang lalu - Spinel Crux V1 - Robot Terkawal Gerak isyarat, Spinel Crux L2 - Arduino Pick and Place Robot with Robotic Arms dan The Badland Braw
Lengan Robotik Arduino DIY, Langkah demi Langkah: 9 Langkah
DIY Arduino Robotic Arm, Langkah demi Langkah: Tutorial ini mengajar anda bagaimana membina Robot Arm sendiri