Mündəricat:
- Addım 1: Lazım olan avadanlıq:
- Addım 2: Hardware Bağlantısı:
- Addım 3: Hərəkət İzləmə Kodu:
- Addım 4: Tətbiqlər:
Video: MPU-6000 və Raspberry Pi istifadə edərək hərəkət izləmə: 4 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:44
MPU-6000, 3 Eksenli akselerometr və 3 Eksenli giroskopu olan 6 Eksenli Hərəkət İzləmə Sensorudur. Bu sensor, obyektin 3ölçülü müstəvidə dəqiq mövqeyini və yerini səmərəli izləməyə qadirdir. Ən yüksək dəqiqlikdə mövqe təhlili tələb edən sistemlərdə istifadə edilə bilər.
Bu təlimatda MPU-6000 sensor modulunun moruq pi ilə qarşılıqlı əlaqəsi təsvir edilmişdir. Sürətləndirmə və fırlanma bucağının dəyərlərini oxumaq üçün I2c adapteri olan moruq pi istifadə etdik. Bu I2C adapteri sensor moduluna qoşulmağı daha asan və daha etibarlı edir.
Addım 1: Lazım olan avadanlıq:
Məqsədimizə çatmaq üçün ehtiyacımız olan materiallar aşağıdakı aparat komponentlərindən ibarətdir:
1. MPU-6000
2. Moruq Pi
3. I2C Kabeli
4. Moruq pi üçün I2C Shield
5. Ethernet kabeli
Addım 2: Hardware Bağlantısı:
Avadanlıq bağlama bölməsi əsasən sensor və moruq pi arasında lazım olan tel əlaqələrini izah edir. İstənilən çıxış üçün hər hansı bir sistem üzərində işləyərkən düzgün əlaqələrin təmin edilməsi əsas zərurətdir. Beləliklə, zəruri əlaqələr aşağıdakılardır:
MPU-6000 I2C üzərində işləyəcək. Sensorun hər bir interfeysini necə bağlayacağınızı göstərən nümunə naqillər diaqramı.
Qutudan kənarda, lövhə I2C interfeysi üçün konfiqurasiya olunmuşdur, buna görə də başqa cür agnostiksinizsə bu əlaqəni istifadə etməyi məsləhət görürük.
Lazım olan tək şey dörd teldir! Vcc, Gnd, SCL və SDA pinləri üçün yalnız dörd əlaqə lazımdır və bunlar I2C kabelinin köməyi ilə bağlanır.
Bu əlaqələr yuxarıdakı şəkillərdə göstərilmişdir.
Addım 3: Hərəkət İzləmə Kodu:
Moruq pi istifadə etmənin üstünlüyü, sensoru onunla əlaqələndirmək üçün lövhəni proqramlaşdırmaq istədiyiniz proqramlaşdırma dilinin rahatlığını təmin edir. Bu lövhənin bu üstünlüyündən istifadə edərək burada pythonda proqramlaşdırmasını nümayiş etdiririk. Python, ən asan sintaksisi olan ən asan proqramlaşdırma dillərindən biridir. MPU-6000 üçün python kodu Ditube Mağazası olan GitHub cəmiyyətimizdən yükləyə bilərsiniz.
İstifadəçilərin rahatlığı üçün, kodu da burada izah edirik:
Kodlaşdırmanın ilk addımı olaraq, python vəziyyətində SMBus kitabxanasını yükləməlisiniz, çünki bu kitabxana kodda istifadə olunan funksiyaları dəstəkləyir. Beləliklə, kitabxananı yükləmək üçün aşağıdakı linkə daxil ola bilərsiniz:
pypi.python.org/pypi/smbus-cffi/0.5.1
İş kodunu buradan da kopyalaya bilərsiniz:
smbus idxal edin
idxal vaxtı
# I2C avtobusunu alın = smbus. SMBus (1)
# MPU-6000 ünvanı, 0x68 (104)
# Giroskop konfiqurasiya qeydini seçin, 0x1B (27)
# 0x18 (24) Tam miqyaslı diapazon = 2000 dps
bus.write_byte_data (0x68, 0x1B, 0x18)
# MPU-6000 ünvanı, 0x68 (104)
# Accelerometer konfiqurasiya qeydini seçin, 0x1C (28)
# 0x18 (24) Tam miqyaslı sıra = +/- 16g
bus.write_byte_data (0x68, 0x1C, 0x18)
# MPU-6000 ünvanı, 0x68 (104)
# Güc idarəetmə reyestrini seçin1, 0x6B (107)
XGyro istinadlı # 0x01 (01) PLL
bus.write_byte_data (0x68, 0x6B, 0x01)
vaxt.yuxu (0.8)
# MPU-6000 ünvanı, 0x68 (104)
# 0x3B (59), 6 baytdan məlumatları geri oxuyun
# Accelerometer X-Axis MSB, X-Axis LSB, Y-Axis MSB, Y-Axis LSB, Z-Axis MSB, Z-Axis LSB
data = bus.read_i2c_block_data (0x68, 0x3B, 6)
# Məlumatları çevirin
xAccl = məlumat [0] * 256 + məlumat [1]
əgər xAccl> 32767:
xAccl -= 65536
yAccl = məlumat [2] * 256 + məlumat [3]
yAccl> 32767 olarsa:
yAccl -= 65536
zAccl = məlumat [4] * 256 + məlumat [5]
əgər zAccl> 32767:
zAccl -= 65536
# MPU-6000 ünvanı, 0x68 (104)
# 0x43 (67), 6 baytdan məlumatları geri oxuyun
# Gyrometer X-Axis MSB, X-Axis LSB, Y-Axis MSB, Y-Axis LSB, Z-Axis MSB, Z-Axis LSB
data = bus.read_i2c_block_data (0x68, 0x43, 6)
# Məlumatları çevirin
xGyro = məlumat [0] * 256 + məlumat [1]
əgər xGyro> 32767:
xGyro -= 65536
yGyro = məlumat [2] * 256 + məlumat [3]
yGyro> 32767 olduqda:
yGyro -= 65536
zGyro = məlumat [4] * 256 + məlumat [5]
əgər zGyro> 32767:
zGyro -= 65536
# Ekrana məlumat çıxarın
çap "X Eksenində Sürətləndirmə: %d" %xAccl
çap "Y Eksenində Sürətləndirmə: %d" %yAccl
çap "Z Eksenində Sürətləndirmə: %d" %zAccl
çap "Fırlanma X-Ekseni: %d" %xGyro
çap "Dönmə Y Ekseni: %d" %yGyro
çap "Z-Fırlanma Ekseni: %d" %zGyro
Kod aşağıdakı əmrdən istifadə etməklə yerinə yetirilir:
$> python MPU-6000.py gt; python MPU-6000.py
İstifadəçinin məlumatı üçün sensorun çıxışı yuxarıdakı şəkildə göstərilmişdir.
Addım 4: Tətbiqlər:
MPU-6000, tətbiqini smartfon və planşetlərin hərəkət interfeysində tapan bir hərəkət izləmə sensoru. Smartfonlarda bu sensorlar tətbiqetmələr və telefon idarəçiliyi üçün jest əmrləri, inkişaf etmiş oyun, genişlənmiş reallıq, panoramik fotoşəkil çəkmə və görüntü, piyada və avtomobil naviqasiyası kimi tətbiqlərdə istifadə edilə bilər. MotionTracking texnologiyası, telefonları və planşetləri sağlamlıq və fitness monitorinqindən tutmuş məkan xidmətlərinə qədər tətbiqlərdə istifadə edilə bilən güclü 3D ağıllı cihazlara çevirə bilər.
Tövsiyə:
Kənd Təsərrüfatı üçün LoRa əsaslı Vizual İzləmə Sistemi - Firebase və Angular istifadə edərək cəbhəli bir tətbiqin dizaynı: 10 addım
Kənd Təsərrüfatı üçün LoRa əsaslı Vizual İzləmə Sistemi | Firebase və Angular istifadə edərək Ön Cəbhə Tətbiqinin Hazırlanması: Əvvəlki hissədə sensorların loRa modulu ilə Firebase Realtime verilənlər bazasını doldurmaq üçün necə işlədiyindən bəhs edirik və bütün layihəmizin necə işlədiyini gördük. Bu fəsildə necə edə biləcəyimizdən bəhs edəcəyik
ATtiny85 Geyinilə bilən Titrəmə Aktivliyi İzləmə İzləmə və Proqramlaşdırma Arduino Uno ilə ATtiny85: 4 addım (şəkillərlə)
ATtiny85 Geyinilə bilən Titrəmə Aktivliyi İzləmə Saatı və Proqramlaşdırılması Arduino Uno ilə ATtiny85: Geyinilə bilən fəaliyyət izləmə saatı necə edilir? Bu, durğunluq algıladıqda titrəmək üçün hazırlanmış geyilə bilən bir gadgetdır. Vaxtınızın çoxunu mənim kimi kompüterdə keçirirsinizmi? Özünüz də bilmədən saatlarla oturursunuz? Sonra bu cihaz f
Arduino istifadə edərək GPS İzləmə və Xəbərdarlıqları olan Qadın Təhlükəsizlik Cihazı: 6 addım
Arduino istifadə edərək GPS İzləmə və Xəbərdarlıqları olan Qadın Təhlükəsizlik Cihazı: Son zamanlarda əlimizdə olan bütün texnologiyalarla qadınlar üçün yalnız təcili həyəcan siqnalı yaratmayacaq, həm də dostlarınıza, ailənizə bir mesaj göndərəcək bir təhlükəsizlik cihazı qurmaq çətin deyil. və ya narahat olan şəxs. Burada bir qrup quracağıq
Python istifadə edərək Raspberry Pi və LIS3DHTR, 3 Eksenli Akselerometr ilə Hərəkət Nəzarəti: 6 Addım
Python istifadə edərək Raspberry Pi və LIS3DHTR ilə 3 Eksenli Akselerometr ilə Hərəkət Nəzarəti: Gözəllik bizi əhatə edir, amma adətən bunu bilmək üçün bir bağda gəzmək lazımdır. Göründüyü kimi təhsilli bir qrup olaraq, enerjimizin böyük bir hissəsini kompüterlərimizdən və cib telefonlarımızdan əvvəl işə sərf edirik. Buna görə də tez -tez sağlamlığımıza icazə veririk
Python istifadə edərək Raspberry Pi və AIS328DQTR istifadə edərək sürətlənməni izləyin: 6 addım
Python istifadə edərək Raspberry Pi və AIS328DQTR istifadə edərək Sürətləndirməni izləyin: Sürətləndirmə sonsuzdur, düşünürəm ki, Fizikanın bəzi qanunlarına görə. Sahilə çıxan ən sürətli məxluq, bir anda ən yüksək sürətindən istifadə edərək ovunu tutur