Isi kandungan:
- Langkah 1: Apa yang Kita Perlu:
- Langkah 2: Membangun…
- Langkah 3: Beberapa Maklumat Tambahan Sebelum Kami Teruskan
- Langkah 4: Kod:
- Langkah 5: Ujian dan Kesimpulan
Video: Pengukuran Sudut Menggunakan Gyro, Accelerometer dan Arduino: 5 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:13
Peranti ini adalah prototaip kasar dari apa yang akhirnya akan menjadi robot keseimbangan diri, ini adalah bahagian kedua dari lubang (baca akselerometer dan kendalikan motor ke keseimbangan diri). Bahagian pertama dengan gyro hanya boleh didapati di sini. Pada petunjuk ini kita akan mengukur sudut menggunakan gyro dan accelerometer, dan menggunakan teknik untuk menggabungkan kedua sensor untuk mendapatkan isyarat yang lancar. Teknik ini dipanggil "pelengkap pelengkap". Sebelumnya
Langkah 1: Apa yang Kita Perlu:
Sebilangan bahagian boleh diganti, dan beberapa pengubahsuaian pada kod harus dibuat agar sesuai dengan perkakasan anda. Pada projek ini kami akan menggunakan: - Breadboard- Microcontroller, saya menggunakan Arduinoboard- Wire- Jumper Wires- Gyroscope XV-8100- Nunchuck Wii (untuk pecutan) - Penyesuai Nunchuck Wii untuk Arduino
Langkah 2: Membangun…
Litar terdiri daripada giroskop yang dihubungkan terus ke port 0 di arduino anda dan nunchuck wii menyambung di port I2C. Pemasangan gyro: 1. - pasangkan gyro di papan roti2. - wayar ever thing: - Pin Vo dari gyro disambungkan ke port analog0 di arduino (Kawat oren terang) - Pin G dari gyro yang disambungkan ke tanah (Kawat putih) - Pin V + dari gyro disambungkan ke Vdd (3.3V) (Orange wire) Pemasangan pecutan: 1. - pasangkan penyesuai di nunchuck2. - pasangkan nunchuck di arduino menggunakan penyesuai3. - letakkan sensor accel seperti foto di atas
Langkah 3: Beberapa Maklumat Tambahan Sebelum Kami Teruskan
Dari kedua-dua sensor kita dapat mengukur sudut tetapi menggunakan dua teknik yang berbeza. Untuk mengukur sudut menggunakan giro kita mesti mengintegrasikan isyarat. Tetapi mengapa kita mesti melakukan ini? Oleh kerana gyro memberi kita kadar sudut, jadi cara mudah untuk mendapatkan sudut adalah kadar sudut dikalikan dengan waktu [sudut = sudut + w * dt] Untuk mengukur sudut menggunakan akselerometer kita harus merasakan gravitasi di masing-masing paksi pecutan, maksudnya, unjuran pecutan graviti pada setiap arah sensor memberi kita idea mengenai sudut. [angle_accel = arctg (Ay / sqrt (Ax ^ 2 + Az ^ 2))] Jadi mengapa kita menggunakan dua sensor bukan satu? Untuk memanfaatkan kedua-dua sifat sensor. Sekiranya anda melihat grafik peningkatan data gyro secara berterusan, ini disebut drift dan data accelerometer berubah banyak pada masa yang kecil. Dan bagaimana menggabungkan kedua-dua isyarat itu? Kami akan menggunakan teknik yang disebut penapis pelengkap. Saya tidak tahu teori yang tepat di sebalik ini, tetapi ia berfungsi dengan baik. Terdapat beberapa maklumat di internet, cukup google jika anda memerlukan lebih banyak maklumat. Pautan ini mempunyai banyak maklumat dan boleh berguna.filtered_angle = HPF * (filtered_angle + w * dt) + LPF * (angle_accel); di mana HPF + LPF = 1 Nilai HPF dan LPF boleh didapati di pautan ini, pada fail filter.pdf. Terima kasih kalian dari "The DIY Segway". Hanya untuk tujuan ujian, kami akan menetapkan nilai seperti ini, HPF = 0.98 dan LPF = 0.02.
Langkah 4: Kod:
Kodnya adalah penyesuaian dari kod yang saya gunakan pada projek lain. Mungkin ada beberapa pemboleh ubah yang tidak digunakan. Saya menggunakan perpustakaan untuk membaca data nunchuck dari https://todbot.com/blog/. Terima kasih Tod E. Kurt. Komen mengenai kod adalah dalam bahasa Portugis, sebaik sahaja saya mempunyai masa lapang, saya akan menerjemahkannya. Hasil kod melalui garis siri beberapa nombor dengan corak ini: dt: w: teta: pitch: filter_teta $ time: angular_velocity: gyro_angle: accel_angle: filtered_angle $ Oleh itu, anda boleh menyimpan nilai-nilai ini di terminal bersiri dan merancang grafik atau menggunakan sudut untuk perkara lain. Sekiranya anda memerlukan penjelasan mengenai kod tersebut, sila tanya. Kodnya adalah berzip. Buka zip, buka dan muat naik ke arduino anda.
Langkah 5: Ujian dan Kesimpulan
Untuk menguji sistem saya menyimpan data menggunakan program yang disebut Termite, kemudian import data ini di excel dan plotkan grafik untuk melihat seberapa baik penapis saya. Hasilnya luar biasa. Sudah tentu anda boleh menggunakan isyarat untuk memandu motor, atau perkara lain. Sebarang komen, keraguan, maklumat yang hilang, beritahu saya dan saya membetulkannya. Tolong jika anda suka ini, beri penilaian. Terima kasih semua.
Disyorkan:
Pengukuran Kelembapan dan Suhu Menggunakan HIH6130 dan Arduino Nano: 4 Langkah
Pengukuran Kelembapan dan Suhu Menggunakan HIH6130 dan Arduino Nano: HIH6130 adalah sensor kelembapan dan suhu dengan output digital. Sensor ini memberikan tahap ketepatan ± 4% RH. Dengan kestabilan jangka panjang yang terkemuka di industri, I2C digital yang diberi pampasan suhu sebenar, kebolehpercayaan terkemuka di industri, kecekapan tenaga
Pengukuran Suhu dan Kelembapan Menggunakan HDC1000 dan Arduino Nano: 4 Langkah
Pengukuran Suhu dan Kelembapan Menggunakan HDC1000 dan Arduino Nano: HDC1000 adalah sensor kelembapan digital dengan sensor suhu bersepadu yang memberikan ketepatan pengukuran yang sangat baik pada daya yang sangat rendah. Peranti mengukur kelembapan berdasarkan sensor kapasitif baru. Sensor kelembapan dan suhu adalah
Pengukuran Kelembapan dan Suhu Menggunakan HTS221 dan Arduino Nano: 4 Langkah
Pengukuran Kelembapan dan Suhu Menggunakan HTS221 dan Arduino Nano: HTS221 adalah sensor digital kapasitif ultra kompak untuk kelembapan dan suhu relatif. Ini termasuk elemen penginderaan dan litar bersepadu khusus aplikasi isyarat campuran (ASIC) untuk memberikan maklumat pengukuran melalui siri digital
Pengukuran Kelembapan dan Suhu Menggunakan HTS221 dan Raspberry Pi: 4 Langkah
Pengukuran Kelembapan dan Suhu Menggunakan HTS221 dan Raspberry Pi: HTS221 adalah sensor digital kapasitif ultra kompak untuk kelembapan dan suhu relatif. Ini termasuk elemen penginderaan dan litar bersepadu khusus aplikasi isyarat campuran (ASIC) untuk memberikan maklumat pengukuran melalui siri digital
Arduino Nano dan Visuino: Tukar Pecutan ke Sudut Dari Accelerometer dan Giroskop Sensor MPU6050 I2C: 8 Langkah (dengan Gambar)
Arduino Nano dan Visuino: Tukar Pecutan ke Sudut Dari Accelerometer dan Giroskop MPU6050 Sensor I2C: Beberapa ketika yang lalu saya menyiarkan tutorial bagaimana anda boleh menghubungkan MPU9250 Accelerometer, Gyroscope dan Compass Sensor ke Arduino Nano dan memprogramkannya dengan Visuino untuk mengirim data paket dan memaparkan pada Skop dan Instrumen Visual. Accelerometer menghantar X, Y