Obsah:

Měření zrychlení pomocí H3LIS331DL a Arduino Nano: 4 kroky
Měření zrychlení pomocí H3LIS331DL a Arduino Nano: 4 kroky

Video: Měření zrychlení pomocí H3LIS331DL a Arduino Nano: 4 kroky

Video: Měření zrychlení pomocí H3LIS331DL a Arduino Nano: 4 kroky
Video: Laboratorní práce - určení tíhového zrychlení pomocí kyvadla 2024, Listopad
Anonim
Image
Image

H3LIS331DL je nízkoenergetický vysoce výkonný 3osý lineární akcelerometr patřící do rodiny „nano“s digitálním sériovým rozhraním I²C. H3LIS331DL má uživatelem volitelné plné stupnice ± 100 g/± 200 g/± 400 g a je schopen měřit zrychlení s výstupními datovými rychlostmi od 0,5 Hz do 1 kHz. H3LIS331DL zaručeně pracuje v rozšířeném teplotním rozsahu od -40 ° C do +85 ° C.

V tomto tutoriálu předvedeme propojení H3LIS331DL s Arduino Nano.

Krok 1: Požadovaný hardware:

Požadovaný hardware
Požadovaný hardware
Požadovaný hardware
Požadovaný hardware
Požadovaný hardware
Požadovaný hardware

Materiály, které potřebujeme k dosažení našeho cíle, zahrnují následující hardwarové komponenty:

1. H3LIS331DL

2. Arduino Nano

3. Kabel I2C

4. I2C štít pro Arduino Nano

Krok 2: Připojení hardwaru:

Připojení hardwaru
Připojení hardwaru
Připojení hardwaru
Připojení hardwaru

Sekce zapojení hardwaru v zásadě vysvětluje zapojení kabelů požadovaná mezi senzorem a arduino nano. Zajištění správného připojení je základní nutností při práci na jakémkoli systému pro požadovaný výstup. Požadovaná připojení jsou tedy následující:

H3LIS331DL bude fungovat přes I2C. Zde je příklad schématu zapojení, které ukazuje, jak zapojit jednotlivá rozhraní senzoru.

Po vybalení je deska nakonfigurována pro rozhraní I2C, proto doporučujeme tuto přípojku použít, pokud jste jinak agnostik. Vše, co potřebujete, jsou čtyři dráty!

Jsou vyžadována pouze čtyři připojení Vcc, Gnd, SCL a SDA piny a ty jsou spojeny pomocí kabelu I2C.

Tato spojení jsou ukázána na obrázcích výše.

Krok 3: Arduino kód pro měření zrychlení:

Arduino kód pro měření zrychlení
Arduino kód pro měření zrychlení
Arduino kód pro měření zrychlení
Arduino kód pro měření zrychlení

Začněme nyní arduino kódem.

Při používání senzorového modulu s arduino jsme zahrnuli knihovnu Wire.h. Knihovna „Wire“obsahuje funkce, které usnadňují komunikaci i2c mezi senzorem a deskou arduino.

Celý arduino kód je pro pohodlí uživatele uveden níže:

#zahrnout

// Adresa I2C H3LIS331DL je 0x18 (24)

#define Addr 0x18

neplatné nastavení ()

{

// Inicializujte komunikaci I2C jako MASTER

Wire.begin ();

// Inicializace sériové komunikace, nastavení přenosové rychlosti = 9600

Serial.begin (9600);

// Spusťte přenos I2C

Wire.beginTransmission (Addr);

// Vyberte řídicí registr 1

Wire.write (0x20);

// Povolit osy X, Y, Z, režim zapnutí, výstupní rychlost dat 50 Hz

Wire.write (0x27);

// Zastavte přenos I2C

Wire.endTransmission ();

// Spusťte přenos I2C

Wire.beginTransmission (Addr);

// Vyberte řídicí registr 4

Wire.write (0x23);

// Nastavit plné měřítko, +/- 100 g, průběžná aktualizace

Wire.write (0x00);

// Zastavte přenos I2C

Wire.endTransmission ();

zpoždění (300);

}

prázdná smyčka ()

{

nepodepsaná int data [6];

pro (int i = 0; i <6; i ++)

{

// Spusťte přenos I2C

Wire.beginTransmission (Addr);

// Vyberte datový registr

Wire.write ((40+i));

// Zastavte přenos I2C

Wire.endTransmission ();

// Vyžádejte si 1 bajt dat

Wire.requestFrom (Addr, 1);

// Přečíst 6 bajtů dat

// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb

pokud (Wire.available () == 1)

{

data = Wire.read ();

}

}

zpoždění (300);

// Převod dat

int xAccl = ((data [1] * 256) + data [0]);

int yAccl = ((data [3] * 256) + data [2]);

int zAccl = ((data [5] * 256) + data [4]);

// Výstup dat na sériový monitor

Serial.print ("Zrychlení v ose X:");

Serial.println (xAccl);

Serial.print ("Zrychlení v ose Y:");

Serial.println (yAccl);

Serial.print ("Zrychlení v ose Z:");

Serial.println (zAccl);

zpoždění (300);

}

Vše, co musíte udělat, je vypálit kód v Arduinu a zkontrolovat údaje na sériovém portu. Výstup je zobrazen na obrázku výše.

Krok 4: Aplikace:

Aplikace
Aplikace

Akcelerometry jako H3LIS331DL většinou nacházejí své uplatnění ve hrách a přepínání profilu zobrazení. Tento senzorový modul se také používá v pokročilém systému řízení spotřeby pro mobilní aplikace. H3LIS331DL je tříosý digitální snímač zrychlení, který je vybaven inteligentním řadičem přerušení aktivovaným pohybem na čipu.

Doporučuje: