Obsah:
Video: ADXL345 pomocí Arduino Uno R3: 5 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:21
V této lekci se naučíme používat senzor zrychlení ADXL345.
Krok 1: Součásti
- Deska Arduino Uno * 1
- USB kabel * 1
- ADXL345 *1
- Breadboard * 1
- Propojovací vodiče
Krok 2: Princip
Akcelerometr se používá k měření síly generované během zrychlení. Tou nejzásadnější je běžně známé gravitační zrychlení, které je 1 g.
Měřením gravitačního zrychlení můžete vypočítat úhel náklonu zařízení k rovné ploše. Pomocí analýzy dynamického zrychlení můžete zjistit, jak se zařízení pohybuje. Například samovyvažovací deska nebo hoverboard používá snímač zrychlení a gyroskop pro Kalmanův filtr a korekci držení těla.
ADXL345
ADXL345 je malý, tenký 3osý akcelerometr s nízkým výkonem a měřením s vysokým rozlišením (13bitové) až ± 16 g. Data digitálního výstupu jsou formátována jako 16bitový dvojkový doplněk a jsou přístupná prostřednictvím digitálního rozhraní SPI (3- nebo 4vodičové) nebo I2C. V tomto experimentu se používá digitální rozhraní I2C.
Je vhodný k měření statického gravitačního zrychlení v aplikacích snímajících náklon i dynamického zrychlení způsobeného pohybem nebo šokem. Jeho vysoké rozlišení (4 mg/LSB) umožňuje měření změny sklonu o méně než 1,0 °. A vynikající citlivost (3,9 mg/LSB @2 g) poskytuje vysoce přesný výstup až ± 16 g.
Jak ADXL345 funguje
ADXL345 detekuje zrychlení se snímací složkou vpředu a poté součást snímající elektrický signál změní na elektrický signál, který je analogový. Dále adaptér AD integrovaný v modulu převede analogový signál na digitální.
X_OUT, Y_OUT a Z_OUT jsou hodnoty na ose X, Y a Z. Umístěte modul lícem nahoru: Z_OUT může dosáhnout maximálně +1 g, minimum X_OUT je -1 g ve směru osy a minimum Y_OUT je -1 g ve směru Ay. Na druhou stranu otočte modul vzhůru nohama: minimum Z_OUT je -1g, maximum X_OUT je +1g ve směru osy a maximum Y_OUT je +1g ve směru Ay., Jak je ukázáno níže. Otočte modul ADXL345 a uvidíte změnu tří hodnot.
když se kanál A změní z vysoké úrovně na nízkou úroveň, pokud je kanál B na vysoké úrovni, znamená to, že se rotační kodér otáčí ve směru hodinových ručiček (CW); pokud je v tu chvíli kanál B na nízké úrovni, znamená to otáčení proti směru hodinových ručiček (CCW). Pokud tedy odečteme hodnotu kanálu B, když je kanál A na nízké úrovni, můžeme vědět, ve kterém směru se rotační kodér otáčí.
Princip: Viz níže schematický diagram modulu rotačního kodéru. Z toho vidíme, že pin 3 rotačního kodéru, konkrétně CLK na modulu, je kanál B. Pin 5, což je DT, je kanál A. Chcete -li znát směr otáčení rekordéru, stačí přečíst hodnotu CLK a DT.
V obvodu je čip regulátoru napětí 3,3 V, takže modul můžete napájet 5 V nebo 3,3 V.
Protože SDO bylo připojeno k GND, I2C adresa ADXL345 je 0x53, 0xA6 pro zápis, 0xA7 pro čtení
Funkce pinu modulu ADXL345.
Krok 3: Postupy
Krok 1. Vybudujte obvod.
Krok 2:
Stáhněte si kód z
Krok 3:
Nahrajte skicu na desku Arduino Uno
Kliknutím na ikonu Odeslat odešlete kód na ovládací panel.
Pokud se ve spodní části okna zobrazí „Hotovo nahrávání“, znamená to, že skica byla úspěšně nahrána.
Po nahrání otevřete Serial Monitor, kde uvidíte zjištěná data. Když se změní zrychlení modulu, údaj se v okně příslušně změní.
Krok 4: Kód
// ADXL335
/********************************
ADXL335
poznámka: vcc5v, ale ADXL335 Vs je 3,3 V.
Okruh:
5V: VCC
analogový 0: osa x
analog 1: osa y
analog 2: osa z
Po spálení souboru
programu, otevřete okno ladění sériového monitoru, kde můžete vidět zobrazená zjištěná data. Když se zrychlení mění, bude se číslo odpovídajícím způsobem měnit.
*********************************
/E-mailem:
//Webová stránka:www.primerobotics.in
const int xpin =
A0; // osa x akcelerometru
const int ypin =
A1; // osa y
const int zpin =
A2; // osa z (pouze u 3osých modelů)
neplatné nastavení ()
{
// inicializace sériové komunikace:
Serial.begin (9600);
}
prázdná smyčka ()
{
int x = analogRead (xpin); // čtení z xpin
zpoždění (1); //
int y = analogRead (ypin); // číst z ypinu
zpoždění (1);
int z = analogRead (zpin); // číst ze zpin
float zero_G = 338,0; // Napájení ADXL335
podle Vs 3,3 V: 3,3 V/5 V*1024 = 676/2 = 338
//Serial.print(x);
//Serial.print("\t ");
//Serial.print(y);
//Serial.print("\t ");
//Serial.print(z);
//Serial.print("\n ");
plovák
zero_Gx = 331,5; // výstup zero_G osy x: (x_max + x_min)/2
plovák
zero_Gy = 329,5; // výstup zero_G osy y: (y_max + y_min)/2
float zero_Gz = 340,0; // the
zero_G výstup osy z: (z_max + z_min)/2
float scale =
67,6; // napájení Vs 3,3 V: 3,3 V/5 V *1024/3,3 V *330 mV/g = 67,6 g
float scale_x =
65; // měřítko osy x: x_max/3,3 v*330 mv/g
float scale_y =
68,5; // měřítko osy y: y_max/3,3v*330mv/g
float scale_z =
68; // měřítko osy z: z_max/3,3v*330mv/g
Serial.print ((((float)) x
- zero_Gx)/scale_x); // tisk hodnoty x na sériovém monitoru
Serial.print ("\ t");
Serial.print ((((float) y)
- zero_Gy)/scale_y); // tisk hodnoty y na sériovém monitoru
Serial.print ("\ t");
Serial.print ((((float)) z
- zero_Gz)/scale_z); // tisk hodnoty z na sériovém monitoru
Serial.print ("\ n");
zpoždění (1000); // počkejte 1 sekundu
}
Krok 5: Analýza kódu
Kód pro experiment ADXL345 obsahuje 3 části: inicializujte každý port a zařízení, získávejte a ukládejte data odeslaná ze senzorů a převádějte data.
Doporučuje:
DIY -- Jak vyrobit robot Spider, který lze ovládat pomocí smartphonu pomocí Arduino Uno: 6 kroků
DIY || Jak vyrobit robota Spider, který lze ovládat pomocí smartphonu pomocí Arduino Uno: Při výrobě robota Spider se člověk může naučit tolik věcí o robotice. Stejně jako vytváření robotů je zábavné a náročné. V tomto videu vám ukážeme, jak vyrobit robota Spider, kterého můžeme ovládat pomocí smartphonu (Androi
Pořizujte a odesílejte obrázky pomocí kamery ESP32-Cam pomocí bezdrátového procesoru ESP8266 WeMos D1 R1 s Uno: 7 kroků
Zachyťte a odešlete obrázky pomocí ESP32-Cam pomocí ESP8266 WeMos D1 R1 Wifi procesoru s Uno: Zachyťte obrázek pomocí ESP32-Cam (OV2640) pomocí ESP8266 WeMos D1 R1 WiFI procesoru s Uno a odešlete jej na e-mail, uložte na Disk Google a odešlete na Whatsapp pomocí Twilio. Požadavky: ESP8266 WeMos D1 R1 WiFI procesor s Uno (https: // protosupplies
3osý akcelerometr, ADXL345 s Raspberry Pi pomocí Pythonu: 6 kroků
3osý akcelerometr, ADXL345 s Raspberry Pi pomocí Pythonu: Přemýšlíte o miniaplikaci, která by mohla zkontrolovat bod, ve kterém se váš Offroader nakloní směrem k prodlevě. Nebylo by to příjemné v případě, že je někdo upraven, když existuje možnost převrhnutí? Evidentně ano. Bylo by opravdové
Jak vyrobit dron pomocí Arduino UNO - Vytvořte kvadrokoptéru pomocí mikrokontroléru: 8 kroků (s obrázky)
Jak vyrobit dron pomocí Arduino UNO | Vytvořte kvadrokoptéru pomocí mikrokontroléru: Úvod Navštivte můj kanál na YouTube Drone je velmi drahý gadget (produkt) na nákup. V tomto příspěvku budu diskutovat, jak to udělám levně? A jak si můžete takhle vyrobit vlastní za levnou cenu … V Indii všechny materiály (motory, ESC
Neopixel Ws2812 Duhová LED záře s M5stick-C - Spuštění Rainbow na Neopixelu Ws2812 pomocí M5stack M5stick C pomocí Arduino IDE: 5 kroků
Neopixel Ws2812 Duhová LED záře s M5stick-C | Spuštění Rainbow na Neopixelu Ws2812 pomocí M5stack M5stick C pomocí Arduino IDE: Ahoj, v tomto návodu se naučíme používat LED diody Neopixel ws2812 nebo LED pásek nebo LED matici nebo LED kroužek s vývojovou deskou m5stack m5stick-C s Arduino IDE a vytvoříme s ním duhový vzor