Talaan ng mga Nilalaman:
- Hakbang 1: Kinakailangan ang Hardware:
- Hakbang 2: Hardware Hookup:
- Hakbang 3: Code para sa Pagsubaybay sa Paggalaw:
- Hakbang 4: Mga Aplikasyon:
Video: Pagsubaybay sa Paggalaw Gamit ang MPU-6000 at Arduino Nano: 4 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:10
Ang MPU-6000 ay isang 6-Axis Motion Tracking Sensor na mayroong 3-Axis accelerometer at 3-Axis gyroscope na naka-embed dito. Ang sensor na ito ay may kakayahang mahusay na pagsubaybay ng eksaktong posisyon at lokasyon ng isang bagay sa 3-dimensional na eroplano. Maaari itong magamit sa mga system na nangangailangan ng pagtatasa ng posisyon sa pinakamataas na katumpakan.
Sa tutorial na ito ang paglalagay ng interface ng MPU-6000 sensor module na may arduino nano ay nailarawan. Upang mabasa ang mga halaga ng pagpabilis at pag-ikot ng anggulo, ginamit namin ang arduino nano na may isang I2c adapter. Ginagawa ng adapter ng I2C na ito ang koneksyon sa module ng sensor na mas madali at mas maaasahan.
Hakbang 1: Kinakailangan ang Hardware:
Ang mga materyal na kailangan namin para makamit ang aming layunin ay may kasamang mga sumusunod na bahagi ng hardware:
1. MPU-6000
2. Arduino Nano
3. I2C Cable
4. I2C Shield para sa arduino nano
Hakbang 2: Hardware Hookup:
Karaniwang ipinapaliwanag ng seksyon ng hookup ng hardware ang mga koneksyon sa mga kable na kinakailangan sa pagitan ng sensor at ng arduino nano. Ang pagtiyak sa tamang mga koneksyon ay ang pangunahing pangangailangan habang nagtatrabaho sa anumang system para sa nais na output. Kaya, ang mga kinakailangang koneksyon ay ang mga sumusunod:
Ang MPU-6000 ay gagana sa I2C. Narito ang halimbawa ng diagram ng mga kable, na nagpapakita kung paano i-wire ang bawat interface ng sensor.
Sa labas ng kahon, naka-configure ang board para sa isang interface ng I2C, dahil inirerekumenda namin ang paggamit ng hookup na ito kung hindi ka agnostiko.
Ang kailangan mo lang ay apat na wires! Apat na koneksyon lamang ang kinakailangan ng Vcc, Gnd, SCL at SDA pin at ang mga ito ay konektado sa tulong ng I2C cable.
Ang mga koneksyon na ito ay ipinakita sa mga larawan sa itaas.
Hakbang 3: Code para sa Pagsubaybay sa Paggalaw:
Magsisimula tayo sa arduino code ngayon.
Habang ginagamit ang module ng sensor na may arduino, isinasama namin ang Wire.h library. Naglalaman ang library ng "Wire" ng mga pagpapaandar na nagpapadali sa komunikasyon ng i2c sa pagitan ng sensor at ng arduino board.
Ang buong arduino code ay ibinibigay sa ibaba para sa kaginhawaan ng gumagamit:
# isama
// MPU-6000 I2C address ay 0x68 (104)
# tukuyin ang Addr 0x68
walang bisa ang pag-setup ()
{
// Initialise I2C na komunikasyon bilang Master
Wire.begin ();
// Initialise serial communication, itakda ang baud rate = 9600
Serial.begin (9600);
// Simulan ang paghahatid ng I2C
Wire.beginTransmission (Addr);
// Piliin ang rehistro ng pagsasaayos ng gyroscope
Wire.write (0x1B);
// Buong saklaw na saklaw = 2000 dps
Wire.write (0x18);
// Ihinto ang paghahatid ng I2C
Wire.endTransmission ();
// Simulan ang paghahatid ng I2C
Wire.beginTransmission (Addr);
// Piliin ang rehistro ng pagsasaayos ng accelerometer
Wire.write (0x1C);
// Buong saklaw na saklaw = +/- 16g
Wire.write (0x18);
// Ihinto ang paghahatid ng I2C
Wire.endTransmission ();
// Simulan ang paghahatid ng I2C
Wire.beginTransmission (Addr);
// Piliin ang rehistro ng pamamahala ng kuryente
Wire.write (0x6B);
// PLL na may sanggunian na xGyro
Wire.write (0x01);
// Ihinto ang paghahatid ng I2C
Wire.endTransmission ();
pagkaantala (300);
}
walang bisa loop ()
{
unsigned int data [6];
// Simulan ang paghahatid ng I2C
Wire.beginTransmission (Addr);
// Piliin ang pagrehistro ng data
Wire.write (0x3B);
// Ihinto ang paghahatid ng I2C
Wire.endTransmission ();
// Humiling ng 6 bytes ng data
Wire.requestFrom (Addr, 6);
// Basahin ang 6 byte ng data
kung (Wire.available () == 6)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
data [2] = Wire.read ();
data [3] = Wire.read ();
data [4] = Wire.read ();
data [5] = Wire.read ();
}
// I-convert ang data
int xAccl = data [0] * 256 + data [1];
int yAccl = data [2] * 256 + data [3];
int zAccl = data [4] * 256 + data [5];
// Simulan ang paghahatid ng I2C
Wire.beginTransmission (Addr);
// Piliin ang pagrehistro ng data
Wire.write (0x43);
// Ihinto ang paghahatid ng I2C
Wire.endTransmission ();
// Humiling ng 6 bytes ng data
Wire.requestFrom (Addr, 6);
// Basahin ang 6 byte ng data
kung (Wire.available () == 6)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
data [2] = Wire.read ();
data [3] = Wire.read ();
data [4] = Wire.read ();
data [5] = Wire.read ();
}
// I-convert ang data
int xGyro = data [0] * 256 + data [1];
int yGyro = data [2] * 256 + data [3];
int zGyro = data [4] * 256 + data [5];
// Output data sa serial monitor
Serial.print ("Pagpapabilis sa X-Axis:");
Serial.println (xAccl);
Serial.print ("Pagpapabilis sa Y-Axis:");
Serial.println (yAccl);
Serial.print ("Pagpapabilis sa Z-Axis:");
Serial.println (zAccl);
Serial.print ("X-Axis of Rotation:");
Serial.println (xGyro);
Serial.print ("Y-Axis of Rotation:");
Serial.println (yGyro);
Serial.print ("Z-Axis of Rotation:");
Serial.println (zGyro);
pagkaantala (500);
}
Sa wire library Wire.write () at Wire.read () ay ginagamit upang isulat ang mga utos at basahin ang output ng sensor.
Ginagamit ang Serial.print () at Serial.println () upang ipakita ang output ng sensor sa serial monitor ng Arduino IDE.
Ang output ng sensor ay ipinapakita sa larawan sa itaas.
Hakbang 4: Mga Aplikasyon:
Ang MPU-6000 ay isang sensor ng pagsubaybay sa paggalaw, na matatagpuan ang application nito sa interface ng paggalaw ng mga smartphone at tablet. Sa mga smartphone ang mga sensor na ito ay maaaring gamitin sa mga application tulad ng mga kilos na utos para sa mga aplikasyon at kontrol sa telepono, pinahusay na paglalaro, pinalawak na katotohanan, panoramic na pagkuha ng larawan at pagtingin, at pag-navigate sa naglalakad at sasakyan. Ang teknolohiya ng MotionTracking ay maaaring mag-convert ng mga handset at tablet sa malakas na mga 3D na intelihente na aparato na maaaring magamit sa mga aplikasyon mula sa pagsubaybay sa kalusugan at fitness hanggang sa mga serbisyong nakabatay sa lokasyon.
Inirerekumendang:
Paggalaw sa Paggalaw Arduino Halloween Kalabasa: 4 Mga Hakbang
Motion Sensing Arduino Halloween Pumpkin: Ang layunin sa likod ng Instructable na ito ay upang lumikha ng isang murang, at madaling paraan upang gumawa ng mga dekorasyon ng Halloween sa bahay nang walang naunang kasanayan o anumang mga magarbong tool. Gumagamit ng madaling mapagkukunan ng mga item mula sa internet, maaari mo ring gawin ang iyong sariling simple at isinapersonal na H
Bawasan ang Paggalaw ng Paggalaw Gamit ang GIMP: 6 na Hakbang
Bawasan ang Motion Blur Gamit ang GIMP: Ang Instructable na ito ay tumutulong sa iyo na mabawasan ang mga epekto ng malambot na kilos ng paggalaw na nakuha mo dahil sa pag-iling ng camera. Ito ay isang pang-eksperimentong pamamaraan na binuo ko, kaya't mangyaring subukan at mag-iwan ng mga komento, mas mabuti sa mga imahe. Tulad ng maliwanag mula sa kalidad ng ph
Pagsubaybay sa Mata na Paggalaw Gamit ang Infrared Sensor: 5 Hakbang
Pagsubaybay sa Mata na Paggalaw Gamit ang Infrared Sensor: Gumamit ako ng isang infrared sensor upang maunawaan ang mga paggalaw ng mata at makontrol ang LED. Gumawa ako ng mga eyeballs sa LED Tape NeoPixel
Tagapangalaga V1.0 -- Pag-upgrade ng Camera ng Peephole Camera Na May Arduino (Pag-record ng Paggalaw ng Paggalaw at Mga Tampok ng Electric Shock): 5 Hakbang
Tagapangalaga V1.0 || Pag-upgrade ng Camera Peephole Camera Sa Arduino (Pag-record ng Motion Detection & Electric Shock Features): Nag-order ako ng isang peephole camera ngunit nang gamitin ko ito, napagtanto na walang auto recording function (na-activate ng detection ng paggalaw). Pagkatapos ay nagsimula akong siyasatin kung paano ito gumagana. Upang magrekord ng isang video, dapat mong 1 panatilihing pinindot ang pindutan ng kuryente halos 2 sec
Ihinto ang Animasyon ng Paggalaw Gamit ang Pagkatapos ng mga Makakaapekto !: 5 Hakbang
Itigil ang Animasyon ng Paggalaw Gamit ang Pagkatapos ng mga Nakakaapekto !: Ang Stop Motion ay isang mahusay at nakakatuwang paraan upang lumikha ng animasyon. Kapag nasira ito ay maaaring maging napaka-simple. Sa tutorial na ito matututunan mo kung paano lumikha ng isang simpleng pagkakasunud-sunod ng maikling animation. Pati na rin kung paano gumana sa mga filter, at oras. Ang video ay nakakabit s