Turinys:
- 1 veiksmas: reikalinga aparatūra:
- 2 veiksmas: prijungimas prie aparatūros:
- 3 veiksmas: judesio stebėjimo kodas:
- 4 žingsnis: programos:
Video: Judesio stebėjimas naudojant MPU-6000 ir Raspberry Pi: 4 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:45
MPU-6000 yra 6 ašių judesio sekimo jutiklis, turintis 3 ašių akselerometrą ir 3 ašių giroskopą. Šis jutiklis gali efektyviai sekti tikslią objekto padėtį ir vietą trimatėje plokštumoje. Jis gali būti naudojamas sistemose, kurioms reikia aukščiausio tikslumo padėties analizės.
Šioje pamokoje buvo parodyta MPU-6000 jutiklio modulio sąsaja su aviečių pi. Norėdami perskaityti pagreičio ir sukimosi kampo vertes, mes naudojome aviečių pi su I2c adapteriu. Šis I2C adapteris leidžia lengvai ir patikimai prijungti prie jutiklio modulio.
1 veiksmas: reikalinga aparatūra:
Medžiagos, reikalingos mūsų tikslui pasiekti, apima šiuos aparatūros komponentus:
1. MPU-6000
2. Raspberry Pi
3. I2C kabelis
4. I2C skydas avietėms pi
5. Ethernet kabelis
2 veiksmas: prijungimas prie aparatūros:
Techninės įrangos prijungimo skyriuje iš esmės paaiškinamos reikalingos laidų jungtys tarp jutiklio ir aviečių pi. Užtikrinti teisingas jungtis yra pagrindinė būtinybė dirbant su bet kuria norimos išvesties sistema. Taigi, būtinos jungtys yra šios:
MPU-6000 veiks per I2C. Čia yra elektros instaliacijos schemos pavyzdys, parodantis, kaip prijungti kiekvieną jutiklio sąsają.
Iš karto plokštė sukonfigūruota I2C sąsajai, todėl rekomenduojame naudoti šį prijungimą, jei esate kitaip agnostikas.
Viskas, ko jums reikia, yra keturi laidai! Reikia tik keturių jungčių „Vcc“, „Gnd“, „SCL“ir „SDA“kaiščių, kurie yra prijungti naudojant I2C kabelį.
Šie ryšiai parodyti aukščiau esančiose nuotraukose.
3 veiksmas: judesio stebėjimo kodas:
„Raspberry pi“naudojimo pranašumas yra tas, kad programavimo kalba, kuria norite programuoti plokštę, yra lanksti, kad būtų galima su ja susieti jutiklį. Pasinaudoję šiuo šios plokštės pranašumu, mes čia demonstruojame jos programavimą python'e. „Python“yra viena iš paprasčiausių programavimo kalbų, turinti lengviausią sintaksę. MPU-6000 python kodą galima atsisiųsti iš mūsų „GitHub“bendruomenės, kuri yra „Dcube Store“
Be vartotojų patogumo, mes taip pat paaiškiname kodą čia:
Pirmasis kodavimo žingsnis yra „Python“atveju atsisiųsti „SMBus“biblioteką, nes ši biblioteka palaiko kode naudojamas funkcijas. Taigi, norėdami atsisiųsti biblioteką, galite apsilankyti šioje nuorodoje:
pypi.python.org/pypi/smbus-cffi/0.5.1
Taip pat galite nukopijuoti darbo kodą iš čia:
importuoti smbus
importo laikas
# Gaukite I2C magistralę = smbus. SMBus (1)
# MPU-6000 adresas, 0x68 (104)
# Pasirinkite giroskopo konfigūracijos registrą, 0x1B (27)
# 0x18 (24) Visas diapazonas = 2000 dps
bus.write_byte_data (0x68, 0x1B, 0x18)
# MPU-6000 adresas, 0x68 (104)
# Pasirinkite akselerometro konfigūracijos registrą, 0x1C (28)
# 0x18 (24) Visas diapazonas = +/- 16 g
bus.write_byte_data (0x68, 0x1C, 0x18)
# MPU-6000 adresas, 0x68 (104)
# Pasirinkite energijos valdymo registrą1, 0x6B (107)
# 0x01 (01) PLL su „xGyro“nuoroda
bus.write_byte_data (0x68, 0x6B, 0x01)
laikas miegoti (0,8)
# MPU-6000 adresas, 0x68 (104)
# Perskaitykite duomenis iš 0x3B (59), 6 baitų
Akselerometras X ašis MSB, X ašis LSB, Y ašis MSB, Y ašis LSB, Z ašis MSB, Z ašis LSB
duomenys = autobusas.read_i2c_block_data (0x68, 0x3B, 6)
# Konvertuokite duomenis
xAccl = duomenys [0] * 256 + duomenys [1]
jei xAccl> 32767:
xAccl -= 65536
yAccl = duomenys [2] * 256 + duomenys [3]
jei yAccl> 32767:
yAccl -= 65536
zAccl = duomenys [4] * 256 + duomenys [5]
jei zAccl> 32767:
zAccl -= 65536
# MPU-6000 adresas, 0x68 (104)
# Perskaitykite duomenis iš 0x43 (67), 6 baitų
# Girometras X ašis MSB, X ašis LSB, Y ašis MSB, Y ašis LSB, Z ašis MSB, Z ašis LSB
duomenys = autobusas.read_i2c_block_data (0x68, 0x43, 6)
# Konvertuokite duomenis
xGyro = duomenys [0] * 256 + duomenys [1]
jei xGyro> 32767:
xGyro -= 65536
yGyro = duomenys [2] * 256 + duomenys [3]
jei yGyro> 32767:
yGyro -= 65536
zGyro = duomenys [4] * 256 + duomenys [5]
jei zGyro> 32767:
zGyro -= 65536
# Išveskite duomenis į ekraną
spausdinti "pagreitis X ašyje: %d" %xAccl
spausdinti "pagreitis Y ašyje: %d" %yAccl
spauda "Pagreitis Z ašyje: %d" %zAccl
spausdinti „X sukimosi ašis: %d“%xGyro
spausdinti „Y sukimosi ašis: %d“%yGyro
spausdinti „Z sukimosi ašis: %d“%zGyro
Kodas vykdomas naudojant šią komandą:
$> python MPU-6000.py gt; python MPU-6000.py
Jutiklio išvestis yra parodyta aukščiau esančiame paveikslėlyje vartotojo naudai.
4 žingsnis: programos:
MPU-6000 yra judesio sekimo jutiklis, kuris yra pritaikytas išmaniųjų telefonų ir planšetinių kompiuterių judesio sąsajoje. Išmaniuosiuose telefonuose šie jutikliai gali būti naudojami tokiose programose, kaip programų gesto komandos ir telefono valdymas, patobulinti žaidimai, papildyta realybė, panoraminės nuotraukų fiksavimas ir peržiūra, pėsčiųjų ir transporto priemonių navigacija. „MotionTracking“technologija gali paversti telefonus ir planšetinius kompiuterius į galingus 3D išmaniuosius įrenginius, kurie gali būti naudojami įvairiose programose-nuo sveikatos ir tinkamumo stebėjimo iki vietos nustatymo paslaugų.
Rekomenduojamas:
„QeMotion“- judesio stebėjimas kiekvienai laisvų rankų įrangai!: 5 žingsniai (su nuotraukomis)
„QeMotion“- judesio stebėjimas kiekvienai laisvų rankų įrangai! Tai veikia stebint jūsų galvos (ar ausinių) judėjimą ir tam tikrus judesius paspaudžiant klaviatūrą. Taigi jūsų kompas
Driežo terariumo stebėjimas naudojant „Adosia IoT WiFi“valdiklį + judesio aptikimas: 17 žingsnių (su nuotraukomis)
Driežo terariumo stebėjimas naudojant „Adosia IoT WiFi Controller + Motion Detect“: šioje pamokoje parodysime, kaip sukurti paprastą driežo terariumą saujai skinkų kiaušinių, kuriuos atsitiktinai radome ir sutrikome sodo lauke. Norime, kad kiaušiniai išsiristų saugiai, Taigi viskas, ką mes padarysime, yra sukurti saugią erdvę naudojant plastiką
Pagreitėjimo stebėjimas naudojant „Raspberry Pi“ir AIS328DQTR naudojant „Python“: 6 žingsniai
Pagreitėjimo stebėjimas naudojant „Raspberry Pi“ir „AIS328DQTR“naudojant „Python“: pagreitis yra baigtinis, manau, pagal kai kuriuos fizikos įstatymus.- Terry Riley A gepardas naudoja nuostabų pagreitį ir greitus greičio pokyčius. Greičiausias padaras į krantą kartkartėmis naudoja didžiausią tempą grobiui sugauti
Pagreitėjimo variantų stebėjimas naudojant „Raspberry Pi“ir MMA7455 naudojant „Python“: 6 žingsniai
Pagreitėjimo variantų stebėjimas naudojant „Raspberry Pi“ir „MMA7455“naudojant „Python“: nesuklydau, bandžiau gravitaciją. Jis vis dar veikia… Atskleidžiant greitėjantį erdvėlaivį, paaiškėjo, kad laikrodis aukščiausiame šaudyklės taške pasirenka greičiau nei vienas bazėje dėl gravitacinio laiko išsiplėtimo. Kai kurie
„Tfcd 3D“judesio stebėjimas naudojant talpinį jutiklį ir LED išvestį: 6 žingsniai (su paveikslėliais)
„Tfcd 3D“judesio sekimas naudojant talpinį jutiklį ir šviesos diodų išvestį: Šioje instrukcijoje paaiškinama, kaip galima stebėti rankos judesį 3D erdvėje, naudojant talpinio jutimo principą. Pakeitus atstumą tarp įkrautos aliuminio folijos ir jūsų rankos, kondensatoriaus talpa skirsis