Talaan ng mga Nilalaman:
- Hakbang 1: Kinakailangan ang Hardware:
- Hakbang 2: Hardware Hookup:
- Hakbang 3: Arduino Code para sa Pagsukat sa Pagpabilis:
- Hakbang 4: Mga Aplikasyon:
Video: Pagsukat sa Pagpabilis ng Paggamit ng BMA250 at Arduino Nano: 4 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:12
Ang BMA250 ay isang maliit, manipis, ultralow power, 3-axis accelerometer na may mataas na resolusyon (13-bit) na pagsukat hanggang sa ± 16 g. Ang data ng output ng digital ay na-format bilang 16-bit na twos na pandagdag at maa-access sa pamamagitan ng digital interface ng I2C. Sinusukat nito ang static na pagpabilis ng gravity sa mga application na nakakiling, at pati na rin ang pabago-bagong paggalaw na nagreresulta mula sa paggalaw o pagkabigla. Ang mataas na resolusyon (3.9 mg / LSB) ay nagbibigay-daan sa pagsukat ng mga pagbabago sa pagkahilig mas mababa sa 1.0 °.
Sa tutorial na ito susukatin namin ang pagpabilis sa lahat ng tatlong patayo na mga palakol gamit ang BMA250 at Arduino Nano.
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. BMA250
2. Arduino Nano
3. I2C Cable
4. I2C Shield Para kay 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. 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:
Gagana ang BMA250 sa paglipas ng 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: Arduino Code para sa Pagsukat sa Pagpabilis:
Magsimula tayo sa Arduino code ngayon.
Habang ginagamit ang module ng sensor sa 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
// BMA250 I2C address ay 0x18 (24)
# tukuyin ang Addr 0x18
walang bisa ang pag-setup ()
{
// Initialise I2C na komunikasyon bilang MASTER
Wire.begin ();
// Initialise Serial Communication, itakda ang baud rate = 9600
Serial.begin (9600);
// Start I2C Transmission
Wire.beginTransmission (Addr);
// Piliin ang rehistro ng pagpili ng saklaw
Wire.write (0x0F);
// Itakda ang saklaw +/- 2g
Wire.write (0x03);
// Stop I2C Transmission
Wire.endTransmission ();
// Start I2C Transmission
Wire.beginTransmission (Addr);
// Piliin ang rehistro ng bandwidth
Wire.write (0x10);
// Itakda ang bandwidth 7.81 Hz
Wire.write (0x08);
// Stop I2C Transmission
Wire.endTransmission (); pagkaantala (300);}
walang bisa loop ()
{
unsigned int data [0];
// Start I2C Transmission
Wire.beginTransmission (Addr);
// Piliin ang Mga Rehistro ng Data (0x02 - 0x07)
Wire.write (0x02);
// Stop I2C Transmission
Wire.endTransmission ();
// Humiling ng 6 bytes
Wire.requestFrom (Addr, 6);
// Basahin ang anim na byte
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
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 ();
}
pagkaantala (300);
// I-convert ang data sa 10 bit
float xAccl = ((data [1] * 256.0) + (data [0] & 0xC0)) / 64;
kung (xAccl> 511)
{
xAccl - = 1024;
}
float yAccl = ((data [3] * 256.0) + (data [2] & 0xC0)) / 64;
kung (yAccl> 511)
{
yAccl - = 1024;
}
float zAccl = ((data [5] * 256.0) + (data [4] & 0xC0)) / 64;
kung (zAccl> 511)
{
zAccl - = 1024;
}
// 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);
}
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 karamihan sa mga Accelerometers tulad ng BMA250 ay matatagpuan ang application nito sa mga laro at pagpapalit ng profile display. Ang module ng sensor na ito ay ginagamit din sa advanced na system ng pamamahala ng kuryente para sa mga mobile application. Ang BMA250 ay isang triaxial digital acceleration sensor na isinama sa isang matalinong on-chip na paggalaw na na-trigger ng makagambala na controller.
Inirerekumendang:
Mga Pagsusuot ng Damit / Pag-dryer ng Damit Sa ESP8266 at Sensor ng Pagpabilis: 6 na Hakbang
Ang Pagsusuot ng Damit / Pagmamanman ng Pambaba Gamit ang ESP8266 & Sensor ng Pagpabilis: Ang washer / panghugas ng damit ay nasa basement, at ikaw, bilang panuntunan, maglagay ng isang magbunton ng damit dito at pagkatapos nito, ikaw ay abala sa iyong isa pang gawaing bahay. Hindi mo napapansin ang damit na naiwan sa pagkaulaw at sumisipsip sa silong ng iyong makina
Banayad na Pagsukat sa Intensity sa pamamagitan ng Paggamit ng BH1715 at Raspberry Pi: 5 Hakbang
Pagsukat ng Lakas ng Intensity sa pamamagitan ng Paggamit ng BH1715 at Raspberry Pi: Kahapon ay nagtatrabaho kami sa mga pagpapakita ng LCD, at habang nagtatrabaho sa mga ito napagtanto namin ang kahalagahan ng pagkalkula ng intensity ng ilaw. Ang light intensity ay hindi lamang mahalaga sa pisikal na domain ng mundong ito ngunit mayroon itong mahusay na nasabing papel sa biologi
Neopixel Ws2812 Rainbow LED Glow With M5stick-C - Tumatakbo ang Rainbow sa Neopixel Ws2812 Paggamit ng M5stack M5stick C Paggamit ng Arduino IDE: 5 Hakbang
Neopixel Ws2812 Rainbow LED Glow With M5stick-C | Pagpapatakbo ng Rainbow sa Neopixel Ws2812 Paggamit ng M5stack M5stick C Paggamit ng Arduino IDE: Kumusta mga tao sa mga itinuturo na ito matututunan natin kung paano gamitin ang neopixel ws2812 LEDs o led strip o led matrix o led ring na may m5stack m5stick-C development board na may Arduino IDE at gagawin namin isang pattern ng bahaghari kasama nito
Pagsukat sa Pagpabilis ng Paggamit ng BMA250 at Raspberry Pi: 4 na Hakbang
Pagsukat sa Pagpapabilis Gamit ang BMA250 at Raspberry Pi: Ang BMA250 ay isang maliit, manipis, ultralow power, 3-axis accelerometer na may mataas na resolusyon (13-bit) na pagsukat hanggang sa ± 16 g. Ang data ng output ng digital ay na-format bilang 16-bit na twos na pandagdag at maa-access sa pamamagitan ng digital interface ng I2C. Sinusukat ang static
Pagsukat sa Pagpabilis ng Paggamit ng BMA250 at Particle Photon: 4 na Hakbang
Pagsukat sa Pagpabilis ng Paggamit ng BMA250 at Particle Photon: Ang BMA250 ay isang maliit, manipis, ultralow power, 3-axis accelerometer na may mataas na resolusyon (13-bit) na pagsukat hanggang sa ± 16 g. Ang data ng output ng digital ay na-format bilang 16-bit na twos na pandagdag at maa-access sa pamamagitan ng digital interface ng I2C. Sinusukat ang static