Satura rādītājs:
- 1. darbība. Nepieciešamā aparatūra:
- 2. darbība. Aparatūras savienošana:
- 3. darbība. Kustības izsekošanas kods:
- 4. darbība. Lietojumprogrammas:
Video: Kustību izsekošana, izmantojot MPU-6000 un Raspberry Pi: 4 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:52
MPU-6000 ir 6 asu kustības izsekošanas sensors, kurā ir iestrādāts 3 asu akselerometrs un 3 asu žiroskops. Šis sensors spēj efektīvi izsekot precīzu objekta atrašanās vietu un atrašanās vietu trīsdimensiju plaknē. To var izmantot sistēmās, kurām nepieciešama visaugstākā precizitāte.
Šajā apmācībā ir parādīta MPU-6000 sensora moduļa saskarne ar aveņu pi. Lai nolasītu paātrinājuma un griešanās leņķa vērtības, mēs esam izmantojuši aveņu pi ar I2c adapteri. Šis I2C adapteris padara savienojumu ar sensora moduli vieglu un uzticamāku.
1. darbība. Nepieciešamā aparatūra:
Materiāli, kas nepieciešami mūsu mērķa sasniegšanai, ietver šādas aparatūras sastāvdaļas:
1. MPU-6000
2. Aveņu Pi
3. I2C kabelis
4. I2C vairogs aveņu pi
5. Ethernet kabelis
2. darbība. Aparatūras savienošana:
Aparatūras savienošanas sadaļa pamatā izskaidro nepieciešamos vadu savienojumus starp sensoru un aveņu pi. Pareizu savienojumu nodrošināšana ir pamatvajadzība, strādājot pie jebkuras sistēmas vēlamajam rezultātam. Tātad nepieciešamie savienojumi ir šādi:
MPU-6000 darbosies, izmantojot I2C. Šeit ir elektroinstalācijas shēmas piemērs, kas parāda, kā savienot katru sensora saskarni.
Izņemot komplektu, tāfele ir konfigurēta I2C saskarnei, tāpēc mēs iesakām izmantot šo savienojumu, ja esat citādi agnostiķis.
Viss, kas Jums nepieciešams, ir četri vadi! Nepieciešami tikai četri savienojumi Vcc, Gnd, SCL un SDA, un tie ir savienoti, izmantojot I2C kabeli.
Šie savienojumi ir parādīti iepriekš redzamajos attēlos.
3. darbība. Kustības izsekošanas kods:
Aveņu pi izmantošanas priekšrocība ir tā, ka nodrošina elastību programmēšanas valodā, kurā vēlaties programmēt tāfeli, lai ar to savienotu sensoru. Izmantojot šīs plates priekšrocības, mēs šeit demonstrējam tās programmēšanu pitonā. Python ir viena no vienkāršākajām programmēšanas valodām ar vienkāršāko sintaksi. MPU-6000 python kodu var lejupielādēt no mūsu GitHub kopienas, kas ir Dcube Store
Kā arī lietotāju ērtībai mēs šeit izskaidrojam kodu:
Kā pirmais kodēšanas solis, jums ir nepieciešams lejupielādēt SMBus bibliotēku python gadījumā, jo šī bibliotēka atbalsta kodā izmantotās funkcijas. Tātad, lai lejupielādētu bibliotēku, varat apmeklēt šo saiti:
pypi.python.org/pypi/smbus-cffi/0.5.1
Darba kodu varat nokopēt arī šeit:
importēt smbus
importa laiks
# Iegūstiet I2C kopni = smbus. SMBus (1)
# MPU-6000 adrese, 0x68 (104)
# Izvēlieties žiroskopa konfigurācijas reģistru, 0x1B (27)
# 0x18 (24) Pilns skalas diapazons = 2000 dps
bus.write_byte_data (0x68, 0x1B, 0x18)
# MPU-6000 adrese, 0x68 (104)
# Izvēlieties akselerometra konfigurācijas reģistru, 0x1C (28)
# 0x18 (24) Pilns skalas diapazons = +/- 16g
bus.write_byte_data (0x68, 0x1C, 0x18)
# MPU-6000 adrese, 0x68 (104)
# Atlasiet enerģijas pārvaldības reģistru1, 0x6B (107)
# 0x01 (01) PLL ar xGyro atsauci
bus.write_byte_data (0x68, 0x6B, 0x01)
miega laiks (0,8)
# MPU-6000 adrese, 0x68 (104)
# Lasīt datus no 0x3B (59), 6 baiti
# Akselerometrs X ass MSB, X ass LSB, Y ass MSB, Y ass LSB, Z ass MSB, Z ass LSB
dati = bus.read_i2c_block_data (0x68, 0x3B, 6)
# Konvertējiet datus
xAccl = dati [0] * 256 + dati [1]
ja xAccl> 32767:
xAccl -= 65536
yAccl = dati [2] * 256 + dati [3]
ja yAccl> 32767:
yAccl -= 65536
zAccl = dati [4] * 256 + dati [5]
ja zAccl> 32767:
zAccl -= 65536
# MPU-6000 adrese, 0x68 (104)
# Lasīt datus no 0x43 (67), 6 baiti
# Girometrs X ass MSB, X ass LSB, Y ass MSB, Y ass LSB, Z ass MSB, Z ass LSB
dati = bus.read_i2c_block_data (0x68, 0x43, 6)
# Konvertējiet datus
xGyro = dati [0] * 256 + dati [1]
ja xGyro> 32767:
xGyro -= 65536
yGyro = dati [2] * 256 + dati [3]
ja yGyro> 32767:
yGyro -= 65536
zGyro = dati [4] * 256 + dati [5]
ja zGyro> 32767:
zGyro -= 65536
# Izvadiet datus ekrānā
drukāt "Paātrinājums X-asī: %d" %xAccl
drukāt "Paātrinājums Y-asī: %d" %yAccl
drukāt "Paātrinājums Z-asī: %d" %zAccl
izdrukāt "Rotācijas X ass: %d" %xGyro
izdrukāt "Y rotācijas ass: %d" %yGyro
izdrukāt "Z rotācijas ass: %d" %zGyro
Kods tiek izpildīts, izmantojot šādu komandu:
$> python MPU-6000.py gt; python MPU-6000.py
Sensora izeja ir parādīta iepriekšējā attēlā lietotāja atsaucei.
4. darbība. Lietojumprogrammas:
MPU-6000 ir kustības izsekošanas sensors, kas tiek izmantots viedtālruņu un planšetdatoru kustības saskarnē. Viedtālruņos šos sensorus var izmantot tādās lietojumprogrammās kā žestu komandas lietojumprogrammām un tālruņa vadība, uzlabotas spēles, paplašinātā realitāte, panorāmas fotoattēlu uzņemšana un apskate, kā arī gājēju un transportlīdzekļu navigācija. MotionTracking tehnoloģija var pārvērst tālruņus un planšetdatorus par jaudīgām 3D viedām ierīcēm, kuras var izmantot lietojumprogrammās, sākot no veselības un fiziskās sagatavotības uzraudzības līdz pakalpojumiem, kas balstīti uz atrašanās vietu.
Ieteicams:
Sejas izsekošana, izmantojot ARDUINO !!!: 7 soļi
Sejas izsekošana, izmantojot ARDUINO !!!: Iepriekšējā pamācībā es dalījos ar to, kā jūs varat sazināties starp Arduino un Python, izmantojot “pyserial” moduli, un vadīt LED. Ja neesat to redzējis, pārbaudiet to šeit: KOMUNIKĀCIJA ARDUINO & PYTHON! Un kā jūs varat noteikt krāsu
Izsekošana un izsekošana maziem veikaliem: 9 soļi (ar attēliem)
Izsekošana un izsekošana maziem veikaliem: šī ir sistēma, kas paredzēta maziem veikaliem, kas ir paredzēts uzstādīt uz e-velosipēdiem vai motorolleriem, lai veiktu piegādi nelielā attālumā, piemēram, maizes ceptuve, kas vēlas piegādāt konditorejas izstrādājumus. Ko nozīmē izsekošana un izsekošana? Izsekošana un izsekošana ir sistēma, ko izmanto
Kustību vadība ar Raspberry Pi un LIS3DHTR, 3 asu akselerometrs, izmantojot Python: 6 soļi
Kustību vadība, izmantojot Raspberry Pi un LIS3DHTR, 3 asu akselerometru, izmantojot Python: Skaistums mūs ieskauj, bet parasti mums ir jāstaigā dārzā, lai to zinātu. - RumiKā mēs esam izglītotā grupa, kas, šķiet, esam, mēs ieguldām lielāko daļu savas enerģijas, strādājot pie mūsu personālajiem datoriem un mobilajiem tālruņiem. Tāpēc mēs bieži ļaujamies savai labklājībai
QeMotion - kustību izsekošana katrai austiņai!: 5 soļi (ar attēliem)
QeMotion - kustību izsekošana visām austiņām! Tas darbojas, izsekojot jūsu galvas (vai austiņu) kustībai un aktivizējot tastatūras nospiešanu noteiktām kustībām. Tātad jūsu kompānija
Paātrinājuma variāciju izsekošana, izmantojot Raspberry Pi un MMA7455, izmantojot Python: 6 soļi
Paātrinājuma variāciju izsekošana, izmantojot Raspberry Pi un MMA7455, izmantojot Python: es neklupju, es testēju gravitāciju. Tas joprojām darbojas … Paātrinātā kosmosa kuģa attēlojums paskaidroja, ka pulkstenis, kas atrodas augstākajā šahtas punktā, gravitācijas laika paplašināšanās dēļ izvēlētos ātrāk nekā tas, kas atrodas bāzē. Daži