Kazalo:

Arduino Nano: merilnik pospeška, žiroskopski kompas MPU9250 I2C senzor z Visuinom: 11 korakov
Arduino Nano: merilnik pospeška, žiroskopski kompas MPU9250 I2C senzor z Visuinom: 11 korakov

Video: Arduino Nano: merilnik pospeška, žiroskopski kompas MPU9250 I2C senzor z Visuinom: 11 korakov

Video: Arduino Nano: merilnik pospeška, žiroskopski kompas MPU9250 I2C senzor z Visuinom: 11 korakov
Video: Как использовать гироскоп, акселерометр, магнитометр MPU-9250 для Arduino 2024, November
Anonim
Image
Image

MPU9250 je eden najnaprednejših kombiniranih senzorjev pospeška, žiroskopa in kompasa, ki so trenutno na voljo. Imajo številne napredne funkcije, vključno z nizkoprepustnim filtriranjem, zaznavanjem gibanja in celo programabilnim specializiranim procesorjem. Ker imajo skoraj 130 registrov, z mnogimi nastavitvami pa je tudi zelo težko delati s kodo.

Pred nekaj tedni je bil GearBest dovolj prijazen, da je podaril modul MPU9250, ki je sponzoriral dodajanje podpore zanj v Visuinu. Trajalo je 2 tedna trdega dela, a na koncu nisem imel le podpore za MPU9250, ampak sem dodal še pospeševalnik kotnega pretvornika, komplementarne (prvega in drugega reda) ter Kalmanove filtre, ki jih lahko uporabite za izboljšanje natančnost.

To je prvi Instructable na novi podpori MPU9250 v Visuinu in prikazuje, kako enostavno ga je uporabljati z Visuinom. V naslednjih navodilih vam bom pokazal, kako lahko uporabite pretvornik pospeška do kota, komplementarne in Kalmanove filtre in iz senzorskega modula dobite res dobre rezultate.

1. korak: Komponente

Priključite kompas žiroskopa MPU9250 na Arduino
Priključite kompas žiroskopa MPU9250 na Arduino
  1. Ena združljiva plošča Arduino (uporabljam Arduino Nano, ker jo imam, katera koli druga pa bo v redu)
  2. En senzorski modul MPU9250 (v mojem primeru izdatno podaril GearBest)
  3. 4 žice moški-ženski

Korak: Povežite kompas žiroskopa MPU9250 s pospeškom na Arduino

Priključite kompas žiroskopa MPU9250 na Arduino
Priključite kompas žiroskopa MPU9250 na Arduino
Priključite žiroskopski kompas merilnika pospeška MPU9250 na Arduino
Priključite žiroskopski kompas merilnika pospeška MPU9250 na Arduino
  1. Priključite napajanje 5 V VCC (rdeča žica), ozemljitev (črna žica), SDA (zelena žica) in SCL (rumena žica) na modul MPU9250 (slika 1)
  2. Drugi konec ozemljitvene žice (črna žica) priključite na ozemljitveni zatič plošče Arduino (slika 2)
  3. Drugi konec napajalne žice 5 V VCC (rdeča žica) priključite na napajalni zatič 5 V na plošči Arduino (slika 2)
  4. Drugi konec žice SDA (zelena žica) priključite na SDA/analogni pin 4 plošče Arduino Nano (slika 2)
  5. Drugi konec žice SCL (rumena žica) priključite na SCL/analogni pin 5 plošče Arduino Nano (slika 2)
  6. Slika 3 prikazuje, kje so ozemljitev, 5V napajanje, SDA/analogni pin 4 in SCL/analogni pin 5, zatiči Arduino Nano

Korak: Zaženite Visuino in izberite vrsto plošče Arduino

Zaženite Visuino in izberite vrsto plošče Arduino
Zaženite Visuino in izberite vrsto plošče Arduino
Zaženite Visuino in izberite vrsto plošče Arduino
Zaženite Visuino in izberite vrsto plošče Arduino

Če želite začeti programirati Arduino, morate imeti nameščen Arduino IDE tukaj:

Namestite 1.6.7 ali novejšo različico, sicer ta navodila ne bodo delovala!

Namestiti je treba tudi Visuino:

  1. Zaženite Visuino, kot je prikazano na prvi sliki
  2. Kliknite gumb "Orodja" na komponenti Arduino (slika 1) v Visuinu
  3. Ko se prikaže pogovorno okno, izberite Arduino Nano, kot je prikazano na sliki 2

4. korak: V Visuinu: Dodajte in povežite komponento MPU9250

V Visuinu: Dodajte in povežite komponento MPU9250
V Visuinu: Dodajte in povežite komponento MPU9250
V Visuinu: Dodajte in povežite komponento MPU9250
V Visuinu: Dodajte in povežite komponento MPU9250
V Visuinu: Dodajte in povežite komponento MPU9250
V Visuinu: Dodajte in povežite komponento MPU9250
  1. V polje »Filter« v orodjarni za komponente vnesite »mpu«, nato izberite komponento »Kompas pospeška za merilnik pospeška MPU9250 I2C« (slika 1) in jo spustite v oblikovalsko območje (slika 2)
  2. Priključite "Out" zatič komponente AccelerometerGyroscopeCompass1 na "In" zatič kanala I2C komponente Arduino (slika 3)

5. korak: V Visuinu: Dodajte in povežite paketno komponento

V Visuinu: Dodajte in povežite paketno komponento
V Visuinu: Dodajte in povežite paketno komponento
V Visuinu: Dodajte in povežite paketno komponento
V Visuinu: Dodajte in povežite paketno komponento

Za pošiljanje vseh podatkov o kanalih prek serijskih vrat iz Arduina lahko uporabimo komponento Packet za pakiranje kanalov skupaj in jih prikažemo v Scope in Gauges v Visuinu:

  1. V polje »Filter« v orodjarni za komponente vnesite »paket«, nato izberite komponento »Paket« (slika 1) in jo spustite v območje oblikovanja
  2. Priključite "Out" izhodni pin komponente Packet1 na vhodni pin "In" kanala "Serial [0]" komponente "Arduino" (Slika 2)

Korak 6: V Visuinu: Dodajte 7 binarnih analognih elementov v komponento paketa in podajte njihova imena

V Visuinu: Dodajte 7 binarnih analognih elementov v komponento paketa in podajte njihova imena
V Visuinu: Dodajte 7 binarnih analognih elementov v komponento paketa in podajte njihova imena
V Visuinu: Dodajte 7 binarnih analognih elementov v komponento paketa in podajte njihova imena
V Visuinu: Dodajte 7 binarnih analognih elementov v komponento paketa in podajte njihova imena
V Visuinu: Dodajte 7 binarnih analognih elementov v komponento paketa in podajte njihova imena
V Visuinu: Dodajte 7 binarnih analognih elementov v komponento paketa in podajte njihova imena
  1. Kliknite gumb "Orodja" komponente Packet1 (slika 1)
  2. V urejevalniku "Elementi" izberite element "Binary Analog" in kliknite gumb "+" (slika 2), da dodate analogni element
  3. V Inšpektorju objektov nastavite lastnost "Name" analognega elementa na "Compass (X)" (Slika 3)
  4. V urejevalniku "Elementi" izberite element "Binary Analog" na desni in nato kliknite gumb "+" na levi, da dodate še en analogni element
  5. V Inšpektorju objektov nastavite lastnost "Name" novega analognega elementa na "Compass (Y)" (Slika 4)
  6. V urejevalniku "Elementi" izberite element "Binary Analog" na desni in nato kliknite gumb "+" na levi, da dodate še en analogni element
  7. V Inšpektorju objektov nastavite lastnost "Name" novega analognega elementa na "Compass (Z)" (Slika 5)
  8. Ponovite iste korake, če želite dodati še 7 binarnih analognih elementov z imenom "Merilnik pospeška (X)", "Merilnik pospeška (Y)", "Merilnik pospeška (Z)", "Žiroskop (X)", "Žiroskop (Y)", "Žiroskop (Z) "in" Termometer "(Slika 6)

Korak 7: V Visuinu: Konfigurirajte vizualizacijo paketnega elementa za termometer

In Visuino: Konfigurirajte vizualizacijo paketnega elementa za termometer
In Visuino: Konfigurirajte vizualizacijo paketnega elementa za termometer
In Visuino: Konfigurirajte vizualizacijo paketnega elementa za termometer
In Visuino: Konfigurirajte vizualizacijo paketnega elementa za termometer
In Visuino: Konfigurirajte vizualizacijo paketnega elementa za termometer
In Visuino: Konfigurirajte vizualizacijo paketnega elementa za termometer
In Visuino: Konfigurirajte vizualizacijo paketnega elementa za termometer
In Visuino: Konfigurirajte vizualizacijo paketnega elementa za termometer

Visuino lahko privzeto prikaže analogne elemente iz komponente paketa v merilnikih. Lepo pa je temperaturo prikazati v termometru. Visuino omogoča prilagajanje načina prikaza analognih elementov.

  1. V urejevalniku elementov izberite zadnji analogni element z imenom "termometer" (slika 1)
  2. V Inšpektorju objektov izberite lastnost "Instrument" in kliknite gumb "Puščica navzdol" poleg njene vrednosti (Slika 1)
  3. V spustnem polju izberite "Termometer" (Slika 2)
  4. V Inšpektorju objektov razširite lastnost "Instrument", nato podnalogo "Scale" (Slika 3)
  5. V Inšpektorju objektov nastavite vrednost pod-lastnosti »Samodejno« na »Lestvici« na False (Slika 3) To bo onemogočilo samodejno skaliranje termometra
  6. V Inšpektorju objektov nastavite podmožnost "Max" "Scale" na 100 (Slika 4) To bo termometer konfiguriralo tako, da bo imel lestvico od 0 do 100

8. korak: V Visuinu: Določite enolično glavo paketa

V Visuinu: Določite enolično glavo paketa
V Visuinu: Določite enolično glavo paketa
V Visuinu: Določite enolično glavo paketa
V Visuinu: Določite enolično glavo paketa

Da bi zagotovili, da bo Visuino našel izhodišče paketa, moramo imeti edinstveno glavo. Komponenta Packet uporablja poseben algoritem za zagotovitev, da se oznaka glave ne pojavi v podatkih.

  1. Izberite komponento Packet1 (slika 1)
  2. V Inšpektorju objektov razširite lastnost "Oznaka glave" (Slika 1)
  3. V Inšpektorju objektov kliknite gumb "…" (Slika 1)
  4. V urejevalnik bajtov vnesite nekaj številk, na primer 55 55 (slika 2)
  5. Kliknite gumb V redu, da potrdite in zaprete urejevalnik

9. korak: V Visuinu: Komponento MPU9250 povežite z elementi komponente paketa

V Visuinu: Komponento MPU9250 povežite z elementi komponente paketa
V Visuinu: Komponento MPU9250 povežite z elementi komponente paketa
V Visuinu: Komponento MPU9250 povežite z elementi komponente paketa
V Visuinu: Komponento MPU9250 povežite z elementi komponente paketa
V Visuinu: Komponento MPU9250 povežite z elementi komponente paketa
V Visuinu: Komponento MPU9250 povežite z elementi komponente paketa
V Visuinu: Komponento MPU9250 povežite z elementi komponente paketa
V Visuinu: Komponento MPU9250 povežite z elementi komponente paketa
  1. Kliknite na polje "Out", ki vsebuje zatiče "Compass" komponente AccelerometerGyroscopeCompass1, da začnete povezovati vse izhode naenkrat (slika 1)
  2. Premaknite miško nad zatič "In" elementa "Elements. Compass (X)" komponente Packet1. Visuino bo samodejno razširil žice, tako da se bodo pravilno priključile na ostale zatiče (slika 1)
  3. Kliknite na polje "Out", ki vsebuje zatiče "Accelerometer" komponente AccelerometerGyroscopeCompass1, da začnete povezovati vse izhode naenkrat (slika 2)
  4. Premaknite miško nad zatič "In" elementa "Elements. Accelerometer (X)" komponente Packet1. Visuino bo samodejno razširil žice, tako da se bodo pravilno priključile na ostale zatiče (slika 2)
  5. Kliknite na polje "Out", ki vsebuje zatiče "žiroskopa" komponente AccelerometerGyroscopeCompass1, da začnete povezovati vse izhode naenkrat (slika 3)
  6. Premaknite miško nad zatič "In" elementa "Elements. Gyroscope (X)" komponente Packet1. Visuino bo samodejno razširil žice, tako da se bodo pravilno priključile na ostale zatiče (slika 3)
  7. Priključite "Out" zatič "Thermometer" komponente AccelerometerGyroscopeCompass1 na "In" zatič vhodnega zatiča "Elements. Thermometer" komponente Packet1 (Slika 4)

10. korak: Ustvarite, prevedite in naložite kodo Arduino

Ustvarite, prevedite in naložite Arduino kodo
Ustvarite, prevedite in naložite Arduino kodo
Ustvarite, prevedite in naložite Arduino kodo
Ustvarite, prevedite in naložite Arduino kodo
  1. V Visuinu pritisnite F9 ali kliknite gumb, prikazan na sliki 1, da ustvarite kodo Arduino, in odprite Arduino IDE
  2. V Arduino IDE kliknite gumb za nalaganje, da sestavite in naložite kodo (slika 2)

11. korak: In igrajte se …

In igraj…
In igraj…
In igraj…
In igraj…
In igraj…
In igraj…
  1. V Visuinu izberite ComPort, nato kliknite spustno polje "Oblika:" in izberite Packet1 (slika 1)
  2. Kliknite gumb »Poveži« (slika 1)
  3. Če izberete zavihek "Področje uporabe", boste videli obseg, ki prikazuje vrednosti X, Y, Z iz merilnika pospeška, žiroskopa in kompasa ter temperaturo skozi čas (slika 2)
  4. Če izberete zavihek "Instrumenti", boste videli termometer in merilnike, ki prikazujejo iste podatke (slika 3)

Povezani in delujoči merilnik pospeška, žiroskop in kompas MPU9250 si lahko ogledate na sliki 4.

Čestitamo! Ustvarili ste projekt merjenja pospeška, žiroskopa in kompasa MPU9250 v Arduinu z vizualno instrumentacijo.

Na sliki 5 si lahko ogledate celoten diagram Visuino.

Priložen je tudi projekt Visuino, ki sem ga ustvaril za ta Instructable. Lahko ga prenesete in odprete v Visuinu:

Priporočena: