Përmbajtje:
- Hapi 1: Kërkohet harduer:
- Hapi 2: Bashkimi i harduerit:
- Hapi 3: Kodi për Matjen e Përshpejtimit:
- Hapi 4: Aplikimet:
Video: Matja e përshpejtimit duke përdorur ADXL345 dhe Arduino Nano: 4 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:17
ADXL345 është një akselerometër i vogël, i hollë, me fuqi ultra të ulët, me 3 boshte me matje me rezolucion të lartë (13-bit) deri në ± 16 g. Të dhënat dalëse dixhitale janë të formatuara si plotësuese 16-bitësh dy dhe janë të arritshme përmes ndërfaqes dixhitale I2 C. Mat mat nxitimin statik të gravitetit në aplikimet e ndjeshmërisë së pjerrësisë, si dhe nxitimin dinamik që rezulton nga lëvizja ose goditja. Rezolucioni i tij i lartë (3.9 mg/LSB) mundëson matjen e ndryshimeve të prirjes më pak se 1.0 °.
Në këtë tutorial është ilustruar ndërfaqja e modulit të sensorit ADXL345 me arduino nano. Për të lexuar vlerat e nxitimit, ne kemi përdorur arduino me një përshtatës I2c. Ky përshtatës I2C e bën lidhjen me modulin e sensorit të lehtë dhe më të besueshëm.
Hapi 1: Kërkohet harduer:
Materialet që na duhen për të arritur qëllimin tonë përfshijnë përbërësit e mëposhtëm të harduerit:
1. ADXL345
2. Arduino Nano
3. Kabllo I2C
4. Mburoja I2C për Arduino Nano
Hapi 2: Bashkimi i harduerit:
Seksioni i lidhjes së harduerit në thelb shpjegon lidhjet e telave të kërkuara midis sensorit dhe arduino nano. Sigurimi i lidhjeve të sakta është nevoja themelore gjatë punës në çdo sistem për daljen e dëshiruar. Pra, lidhjet e nevojshme janë si më poshtë:
ADXL345 do të funksionojë mbi I2C. Këtu është shembulli i diagramit të instalimeve elektrike, duke demonstruar se si të lidhni secilën ndërfaqe të sensorit.
Jashtë kutisë, bordi është i konfiguruar për një ndërfaqe I2C, si i tillë ne rekomandojmë përdorimin e këtij bashkimi nëse përndryshe jeni agnostik.
Gjithçka që ju nevojitet janë katër tela! Vetëm katër lidhje kërkohen kunjat Vcc, Gnd, SCL dhe SDA dhe këto janë të lidhura me ndihmën e kabllit I2C.
Këto lidhje demonstrohen në fotot e mësipërme.
Hapi 3: Kodi për Matjen e Përshpejtimit:
Le të fillojmë me kodin arduino tani.
Ndërsa përdorim modulin e sensorit me arduino, ne përfshijmë bibliotekën Wire.h. Biblioteka "Wire" përmban funksione të cilat lehtësojnë komunikimin i2c midis sensorit dhe bordit arduino.
I gjithë kodi arduino është dhënë më poshtë për lehtësinë e përdoruesit:
#përfshi
// Adresa ADXL345 I2C është 0x53 (83)
#përcaktoni Addr 0x53
void setup ()
{
// Filloni komunikimin I2C si MASTER
Wire.begin ();
// Filloni komunikimin serik, vendosur normën e baudit = 9600
Serial.filloj (9600);
// Filloni Transmetimin I2C
Wire.beginTransmetimi (Addr);
// Zgjidhni regjistrin e normës së gjerësisë së brezit
Wire.write (0x2C);
// Mënyra normale, Shkalla e të dhënave të daljes = 100 Hz
Wire.write (0x0A);
// Ndaloni transmetimin I2C
Wire.endTransmission ();
// Filloni Transmetimin I2C
Wire.beginTransmetimi (Addr);
// Zgjidhni regjistrin e kontrollit të energjisë
Wire.write (0x2D);
// Çaktivizo gjumin automatik
Wire.write (0x08);
// Ndaloni transmetimin I2C
Wire.endTransmission ();
// Filloni Transmetimin I2C
Wire.beginTransmetimi (Addr);
// Zgjidh regjistrin e formatit të të dhënave
Wire.write (0x31);
// Vetë-testimi i çaktivizuar, ndërfaqe me 4 tela, Rezolucion i plotë, Gama = +/- 2g
Wire.write (0x08);
// Ndaloni transmetimin I2C
Wire.endTransmission ();
vonesë (300);
}
lak void ()
{
të dhëna int të panënshkruara [6];
për (int i = 0; i <6; i ++)
{
// Filloni Transmetimin I2C
Wire.beginTransmetimi (Addr);
// Zgjidh regjistrin e të dhënave
Wire.write ((50 + i));
// Ndaloni transmetimin I2C
Wire.endTransmission ();
// Kërkoni 1 bajt të dhëna
Tela. Kërkohet Nga (Addr, 1);
// Lexoni 6 bajt të dhëna
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
nëse (Wire.available () == 1)
{
të dhënat = Wire.read ();
}
}
// Shndërroni të dhënat në 10-bit
int xAccl = (((të dhënat [1] & 0x03) * 256) + të dhënat [0]);
nëse (xAccl> 511)
{
xAccl -= 1024;
}
int yAccl = (((të dhënat [3] & 0x03) * 256) + të dhënat [2]);
nëse (yAccl> 511)
{
yAccl -= 1024;
}
int zAccl = (((të dhënat [5] & 0x03) * 256) + të dhënat [4]);
nëse (zAccl> 511)
{
zAccl -= 1024;
}
// Dalja e të dhënave në monitorin serik
Serial.print ("Përshpejtimi në Boshtin X është:");
Serial.println (xAccl);
Serial.print ("Përshpejtimi në Boshtin Y është:");
Serial.println (yAccl);
Serial.print ("Përshpejtimi në Boshtin Z është:");
Serial.println (zAccl);
vonesë (300);
}
Në bibliotekën Wire.write () dhe Wire.read () përdoret për të shkruar komandat dhe lexuar daljen e sensorit.
Serial.print () dhe Serial.println () përdoret për të shfaqur daljen e sensorit në monitorin serik të Arduino IDE.
Dalja e sensorit tregohet në figurën e mësipërme.
Hapi 4: Aplikimet:
ADXL345 është një akselerometër i vogël, i hollë, me ultra të ulët, me 3 boshte i cili mund të përdoret në Celularë, instrumente mjekësorë etj. Aplikimi i tij përfshin gjithashtu pajisje për lojëra dhe tregues, instrumente industriale, pajisje të navigimit personal dhe mbrojtje nga hard disku (HDD).
Recommended:
Matja e Përshpejtimit duke Përdorur ADXL345 dhe Foton Grimcash: 4 Hapa
Matja e Përshpejtimit Duke Përdorur ADXL345 dhe Foton Grimcash: ADXL345 është një nxitues i vogël, i hollë, me fuqi ultra të ulët, me 3 boshte me matje me rezolucion të lartë (13-bit) deri në ± 16 g. Të dhënat dalëse dixhitale janë të formatuara si plotësuese 16-bitësh dy dhe janë të arritshme përmes ndërfaqes dixhitale I2 C. Ajo mat
Matja e përshpejtimit duke përdorur H3LIS331DL dhe Arduino Nano: 4 hapa
Matja e Përshpejtimit Duke Përdorur H3LIS331DL dhe Arduino Nano: H3LIS331DL, është një nxitues linear me 3 boshte me fuqi të ulët me fuqi të ulët që i përket familjes "nano", me ndërfaqe serike digjitale I²C. H3LIS331DL ka peshore të plota të zgjedhura nga përdoruesi prej ± 100g/± 200g/± 400g dhe është i aftë të masë përshpejtimet me
Matja e përshpejtimit duke përdorur ADXL345 dhe Raspberry Pi: 4 hapa
Matja e përshpejtimit duke përdorur ADXL345 dhe Raspberry Pi: ADXL345 është një përshpejtues i vogël, i hollë, me fuqi ultra të ulët, me 3 boshte me matje me rezolucion të lartë (13-bit) deri në ± 16 g. Të dhënat dalëse dixhitale janë të formatuara si plotësuese 16-bitësh dy dhe janë të arritshme përmes ndërfaqes dixhitale I2 C. Ajo mat
Monitorimi i përshpejtimit duke përdorur Raspberry Pi dhe AIS328DQTR duke përdorur Python: 6 hapa
Monitorimi i përshpejtimit duke përdorur Raspberry Pi dhe AIS328DQTR Duke përdorur Python: Përshpejtimi është i kufizuar, mendoj sipas disa ligjeve të Fizikës.- Terry Riley Një cheetah përdor përshpejtim të mahnitshëm dhe ndryshime të shpejta në shpejtësi kur ndiqni. Krijesa më e shpejtë në breg, herë pas here, përdor ritmin e saj të lartë për të kapur prenë.
Matja e përshpejtimit duke përdorur BMA250 dhe Arduino Nano: 4 hapa
Matja e Përshpejtimit Duke Përdorur BMA250 dhe Arduino Nano: BMA250 është një përshpejtues i vogël, i hollë, me fuqi ultra të ulët, me 3 boshte me matje me rezolucion të lartë (13-bit) deri në ± 16 g. Të dhënat dalëse dixhitale janë të formatuara si plotësuese 16-bitësh dy dhe janë të arritshme përmes ndërfaqes dixhitale I2C. Mat masat statike