Obsah:
- Krok 1: Potrebný hardvér:
- Krok 2: Pripojenie hardvéru:
- Krok 3: Kód Arduino na meranie zrýchlenia:
- Krok 4: Aplikácie:
Video: Meranie zrýchlenia pomocou H3LIS331DL a Arduino Nano: 4 kroky
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:57
H3LIS331DL, je nízkoenergetický, vysoko výkonný 3-osový lineárny akcelerometer patriaci do rodiny „nano“, s digitálnym sériovým rozhraním I²C. H3LIS331DL má užívateľsky voliteľné plné stupnice ± 100 g/± 200 g/± 400 g a je schopný merať zrýchlenia s výstupnými dátovými rýchlosťami od 0,5 Hz do 1 kHz. H3LIS331DL zaručene pracuje v rozšírenom teplotnom rozsahu od -40 ° C do +85 ° C.
V tomto tutoriáli ukážeme prepojenie H3LIS331DL s Arduino Nano.
Krok 1: Potrebný hardvér:
Materiály, ktoré potrebujeme na dosiahnutie nášho cieľa, obsahujú nasledujúce hardvérové komponenty:
1. H3LIS331DL
2. Arduino Nano
3. Kábel I2C
4. I2C štít pre Arduino Nano
Krok 2: Pripojenie hardvéru:
Časť zapojenia hardvéru v zásade vysvetľuje zapojenie potrebné medzi senzorom a arduino nano. Zabezpečenie správneho pripojenia je základnou potrebou pri práci na akomkoľvek systéme s požadovaným výstupom. Potrebné spojenia sú teda tieto:
H3LIS331DL bude fungovať cez I2C. Tu je príklad schémy zapojenia, ktorá ukazuje, ako prepojiť každé rozhranie snímača.
Hneď po vybalení je doska nakonfigurovaná na rozhranie I2C, preto vám toto pripojenie odporúčame použiť, ak ste inak agnostik. Všetko, čo potrebujete, sú štyri drôty!
Vyžadujú sa iba štyri pripojenia Vcc, Gnd, SCL a SDA piny, ktoré sú prepojené pomocou kábla I2C.
Tieto spojenia sú znázornené na obrázkoch vyššie.
Krok 3: Kód Arduino na meranie zrýchlenia:
Začnime teraz arduino kódom.
Pri použití senzorového modulu s arduinom obsahuje knižnicu Wire.h. Knižnica "Wire" obsahuje funkcie, ktoré uľahčujú komunikáciu i2c medzi senzorom a doskou Arduino.
Celý arduino kód je pre pohodlie užívateľa uvedený nižšie:
#zahrnúť
// Adresa I2C H3LIS331DL je 0x18 (24)
#define Addr 0x18
neplatné nastavenie ()
{
// Inicializujte komunikáciu I2C ako MASTER
Wire.begin ();
// Inicializujte sériovú komunikáciu, nastavte prenosovú rýchlosť = 9600
Serial.begin (9600);
// Spustite prenos I2C
Wire.beginTransmission (Addr);
// Vyberte riadiaci register 1
Wire.write (0x20);
// Povoliť os X, Y, Z, režim zapnutia, rýchlosť výstupu údajov 50 Hz
Wire.write (0x27);
// Zastavte prenos I2C
Wire.endTransmission ();
// Spustite prenos I2C
Wire.beginTransmission (Addr);
// Vyberte riadiaci register 4
Wire.write (0x23);
// Nastavte plný rozsah, +/- 100 g, nepretržitá aktualizácia
Wire.write (0x00);
// Zastavte prenos I2C
Wire.endTransmission ();
oneskorenie (300);
}
prázdna slučka ()
{
nepodpísané int údaje [6];
pre (int i = 0; i <6; i ++)
{
// Spustite prenos I2C
Wire.beginTransmission (Addr);
// Vyberte dátový register
Wire.write ((40+i));
// Zastavte prenos I2C
Wire.endTransmission ();
// Požiadajte o 1 bajt údajov
Wire.requestFrom (Addr, 1);
// Prečítajte 6 bajtov údajov
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
ak (Wire.available () == 1)
{
data = Wire.read ();
}
}
oneskorenie (300);
// Previesť údaje
int xAccl = ((údaje [1] * 256) + údaje [0]);
int yAccl = ((údaje [3] * 256) + údaje [2]);
int zAccl = ((údaje [5] * 256) + údaje [4]);
// Výstup údajov na sériový monitor
Serial.print ("Zrýchlenie v osi X:");
Serial.println (xAccl);
Serial.print ("Zrýchlenie v osi Y:");
Serial.println (yAccl);
Serial.print ("Zrýchlenie v osi Z:");
Serial.println (zAccl);
oneskorenie (300);
}
Všetko, čo musíte urobiť, je napáliť kód v Arduine a skontrolovať údaje na sériovom porte. Výstup je zobrazený na obrázku vyššie.
Krok 4: Aplikácie:
Akcelerometre ako H3LIS331DL väčšinou nachádzajú svoje uplatnenie v hrách a prepínaní profilov zobrazenia. Tento senzorový modul sa používa aj v pokročilom systéme riadenia spotreby pre mobilné aplikácie. H3LIS331DL je trojosový digitálny snímač zrýchlenia, ktorý je vybavený inteligentným radičom prerušenia spusteným pohybom na čipe.
Odporúča:
Meranie zrýchlenia pomocou ADXL345 a fotónu častíc: 4 kroky
Meranie zrýchlenia pomocou ADXL345 a časticového fotónu: ADXL345 je malý, tenký, ultra nízky výkon, 3-osový akcelerometer s meraním s vysokým rozlíšením (13-bit) až do ± 16 g. Digitálne výstupné údaje sú formátované ako 16-bitové dvojčatá a sú prístupné prostredníctvom digitálneho rozhrania I2 C. Meria
Meranie zrýchlenia pomocou H3LIS331DL a fotónu častíc: 4 kroky
Meranie zrýchlenia pomocou H3LIS331DL a fotónu častíc: H3LIS331DL je nízkoenergetický vysokovýkonný 3-osový lineárny akcelerometer patriaci do rodiny „nano“s digitálnym sériovým rozhraním I²C. H3LIS331DL má užívateľsky voliteľné plné stupnice ± 100 g/± 200 g/± 400 g a je schopný merať zrýchlenia
Meranie zrýchlenia pomocou H3LIS331DL a Raspberry Pi: 4 kroky
Meranie zrýchlenia pomocou modelov H3LIS331DL a Raspberry Pi: H3LIS331DL je nízkoenergetický vysokovýkonný 3-osový lineárny akcelerometer patriaci do rodiny „nano“so digitálnym sériovým rozhraním I²C. H3LIS331DL má užívateľsky voliteľné plné stupnice ± 100 g/± 200 g/± 400 g a je schopný merať zrýchlenia
Meranie zrýchlenia pomocou BMA250 a Arduino Nano: 4 kroky
Meranie zrýchlenia pomocou modelov BMA250 a Arduino Nano: BMA250 je malý, tenký, ultraľahký, 3-osový akcelerometer s meraním s vysokým rozlíšením (13 bitov) až ± 16 g. Digitálne výstupné údaje sú formátované ako 16-bitové dvojčatá a sú prístupné prostredníctvom digitálneho rozhrania I2C. Meria statickú
Meranie zrýchlenia pomocou ADXL345 a Arduino Nano: 4 kroky
Meranie zrýchlenia pomocou ADXL345 a Arduino Nano: ADXL345 je malý, tenký, ultra nízky výkon, 3-osový akcelerometer s meraním s vysokým rozlíšením (13-bit) až ± 16 g. Digitálne výstupné údaje sú formátované ako 16-bitové dvojčatá a sú prístupné prostredníctvom digitálneho rozhrania I2 C. Meria