Talaan ng mga Nilalaman:
- Hakbang 1: Kinakailangan ang Hardware:
- Hakbang 2: Hardware Hookup:
- Hakbang 3: Code para sa Pagsukat sa Pagpabilis:
- Hakbang 4: Mga Aplikasyon:
Video: Pagsukat ng Pagpapabilis Gamit ang H3LIS331DL at Particle Photon: 4 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:12
Ang H3LIS331DL, ay isang mababang lakas na pagganap ng 3-axis linear accelerometer na kabilang sa pamilyang "nano", na may digital I serial na serial interface. Ang H3LIS331DL ay maaaring mapili ng gumagamit ng buong kaliskis na ± 100g / ± 200g / ± 400g at may kakayahang sukatin ang mga acceleration na may mga rate ng output data mula sa 0.5 Hz hanggang 1 kHz. Ang H3LIS331DL ay garantisadong upang gumana sa isang pinalawig na saklaw ng temperatura mula -40 ° C hanggang +85 ° C.
Sa tutorial na ito ipapakita namin ang interfacing ng H3LIS331DL na may maliit na butil na photon.
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. H3LIS331DL
2. Particle Photon
3. I2C Cable
4. I2C kalasag para sa maliit na butil na photon
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 particle foton. 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 H3LIS331DL 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: Code para sa Pagsukat sa Pagpabilis:
Hinahayaan nating magsimula sa code ng maliit na butil ngayon.
Habang ginagamit ang module ng sensor na may arduino, nagsasama kami ng application.h at spark_wiring_i2c.h library. Ang "application.h" at spark_wiring_i2c.h library ay naglalaman ng mga pagpapaandar na nagpapadali sa komunikasyon ng i2c sa pagitan ng sensor at ng maliit na butil.
Ang buong code ng maliit na butil ay ibinibigay sa ibaba para sa kaginhawaan ng gumagamit:
# isama
# isama
// H3LIS331DL I2C address ay 0x18 (24)
# tukuyin ang Addr 0x18
int xAccl = 0, yAccl = 0, zAccl = 0;
walang bisa ang pag-setup ()
{
// Itakda ang variable
Particle.variable ("i2cdevice", "H3LIS331DL");
Particle.variable ("xAccl", xAccl);
Particle. Nababago ("yAccl", yAccl);
Particle. Nababago ("zAccl", zAccl);
// Initialise I2C na komunikasyon bilang MASTER
Wire.begin ();
// Initialize serial komunikasi, itakda ang baud rate = 9600
Serial.begin (9600);
// Start I2C Transmission
Wire.beginTransmission (Addr);
// Piliin ang control register 1
Wire.write (0x20);
// Paganahin ang X, Y, Z axis, kapangyarihan sa mode, rate ng output ng 50Hz
Wire.write (0x27);
// Stop I2C Transmission
Wire.endTransmission ();
// Start I2C Transmission
Wire.beginTransmission (Addr);
// Piliin ang control register 4
Wire.write (0x23);
// Itakda ang buong sukat, +/- 100g, tuluy-tuloy na pag-update
Wire.write (0x00);
// Stop I2C Transmission
Wire.endTransmission ();
pagkaantala (300);
}
walang bisa loop ()
{
unsigned int data [6];
para sa (int i = 0; i <6; i ++)
{
// Start I2C Transmission
Wire.beginTransmission (Addr);
// Piliin ang pagrehistro ng data
Wire.write ((40 + i));
// Stop I2C Transmission
Wire.endTransmission ();
// Humiling ng 1 byte ng data
Wire.requestFrom (Addr, 1);
// Basahin ang 6 bytes ng data
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
kung (Wire.available () == 1)
{
data = Wire.read ();
}
pagkaantala (300);
}
// I-convert ang data
int xAccl = ((data [1] * 256) + data [0]);
kung (xAccl> 32767)
{
xAccl - = 65536;
}
int yAccl = ((data [3] * 256) + data [2]);
kung (yAccl> 32767)
{
yAccl - = 65536;
}
int zAccl = ((data [5] * 256) + data [4]);
kung (zAccl> 32767)
{
zAccl - = 65536;
}
// Output data sa dashboard
Particle.publish ("Ang Acceleration in X-Axis ay:", String (xAccl));
Particle.publish ("Ang Acceleration in Y-Axis ay:", String (yAccl));
Particle.publish ("Ang Acceleration in Z-Axis ay:", String (zAccl));
pagkaantala (300);
}
Ang function ng Particle.variable () ay lumilikha ng mga variable upang maiimbak ang output ng sensor at ipinapakita ng pagpapaandar ng Particle.publish () ang output sa dashboard ng site.
Ang output ng sensor ay ipinapakita sa larawan sa itaas para sa iyong sanggunian.
Hakbang 4: Mga Aplikasyon:
Ang karamihan sa mga Accelerometers tulad ng H3LIS331DL 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 H3LIS331DL ay isang triaxial digital acceleration sensor na isinama sa isang matalinong on-chip na paggalaw na na-trigger ng makagambala na controller.
Inirerekumendang:
Pagsukat ng Pagpapabilis Gamit ang ADXL345 at Particle Photon: 4 na Hakbang
Pagsukat ng Acceleration Gamit ang ADXL345 at Particle Photon: Ang ADXL345 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 komplemento at maa-access sa pamamagitan ng digital interface ng I2 C. Sinusukat ang
Pagsukat ng Pagpapabilis Gamit ang H3LIS331DL at Arduino Nano: 4 na Hakbang
Pagsukat ng Acceleration Paggamit ng H3LIS331DL at Arduino Nano: H3LIS331DL, ay isang mababang lakas na pagganap ng 3-axis linear accelerometer na kabilang sa pamilyang "nano", na may digital I serial na serial interface. Ang H3LIS331DL ay maaaring mapili ng gumagamit ng buong kaliskis na ± 100g / ± 200g / ± 400g at may kakayahang sukatin ang mga pagpabilis
Pagsukat ng Pagpapabilis Gamit ang ADXL345 at Raspberry Pi: 4 na Hakbang
Pagsukat ng Acceleration Gamit ang ADXL345 at Raspberry Pi: Ang ADXL345 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 komplemento at maa-access sa pamamagitan ng digital interface ng I2 C. Sinusukat ang
Pagsukat ng Pagpapabilis Gamit ang H3LIS331DL at Raspberry Pi: 4 na Hakbang
Pagsukat ng Acceleration Gamit ang H3LIS331DL at Raspberry Pi: H3LIS331DL, ay isang mababang lakas na pagganap ng 3-axis linear accelerometer na kabilang sa pamilyang "nano", na may digital I serial na serial interface. Ang H3LIS331DL ay maaaring mapili ng gumagamit ng buong kaliskis na ± 100g / ± 200g / ± 400g at may kakayahang sukatin ang mga pagpabilis
Pagsukat ng Pagpapabilis Gamit ang ADXL345 at Arduino Nano: 4 na Hakbang
Pagsukat ng Acceleration Gamit ang ADXL345 at Arduino Nano: Ang ADXL345 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 komplemento at maa-access sa pamamagitan ng digital interface ng I2 C. Sinusukat ang