Satura rādītājs:
- 1. darbība. Nepieciešamā aparatūra:
- 2. darbība. Aparatūras savienošana:
- 3. darbība. Paātrinājuma mērīšanas kods:
- 4. darbība. Lietojumprogrammas:
Video: Paātrinājuma mērīšana, izmantojot ADXL345 un Raspberry Pi: 4 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:54
ADXL345 ir mazs, plāns, īpaši mazas jaudas 3 asu akselerometrs ar augstas izšķirtspējas (13 bitu) mērījumu līdz ± 16 g. Digitālie izvaddati tiek formatēti kā 16 bitu papildinājumi, un tie ir pieejami, izmantojot I2 C digitālo saskarni. Tas mēra statisko gravitācijas paātrinājumu slīpuma noteikšanas lietojumos, kā arī dinamisku paātrinājumu, ko rada kustība vai trieciens. Tā augstā izšķirtspēja (3,9 mg/LSB) ļauj izmērīt slīpuma izmaiņas, kas ir mazākas par 1,0 °.
Šajā apmācībā ir parādīta ADXL345 sensora moduļa saskarne ar aveņu pi un parādīta arī tā programmēšana, izmantojot python valodu. Lai nolasītu paātrinājuma vērtības uz visām 3 asīm, mēs esam izmantojuši aveņu pi ar I2C adapteri. Šis I2C adapteris padara savienojumu ar sensora moduli vieglu un uzticamāku.
1. darbība. Nepieciešamā aparatūra:
Materiāli, kas nepieciešami mūsu mērķa sasniegšanai, ietver šādas aparatūras sastāvdaļas:
1. ADXL345
2. Aveņu Pi
3. I2C kabelis
4. I2C vairogs aveņu pi
5. Ethernet kabelis
2. darbība. Aparatūras savienošana:
Aparatūras savienošanas sadaļa pamatā izskaidro nepieciešamos vadu savienojumus starp sensoru un aveņu pi. Pareizu savienojumu nodrošināšana ir pamatvajadzība, strādājot pie jebkuras sistēmas vēlamajam rezultātam. Tātad nepieciešamie savienojumi ir šādi:
ADXL345 darbosies, izmantojot I2C. Šeit ir elektroinstalācijas shēmas piemērs, kas parāda, kā savienot katru sensora saskarni.
Izņemot komplektu, tāfele ir konfigurēta I2C saskarnei, tāpēc mēs iesakām izmantot šo savienojumu, ja esat citādi agnostiķis.
Viss, kas Jums nepieciešams, ir četri vadi! Nepieciešami tikai četri savienojumi Vcc, Gnd, SCL un SDA, un tie ir savienoti, izmantojot I2C kabeli.
Šie savienojumi ir parādīti iepriekš redzamajos attēlos.
3. darbība. Paātrinājuma mērīšanas kods:
Aveņu pi izmantošanas priekšrocība ir tā, ka tas nodrošina programmēšanas valodas elastību, kādā vēlaties programmēt tāfeli, lai sasaistītu sensoru ar to. Izmantojot šīs plates priekšrocības, mēs šeit demonstrējam tās programmēšanu pitonā. ADXL345 python kodu var lejupielādēt no mūsu github kopienas, kas ir Control Everything Community.
Kā arī lietotāju ērtībai mēs šeit izskaidrojam kodu:
Kā pirmais kodēšanas solis jums ir nepieciešams lejupielādēt smbus bibliotēku python gadījumā, jo šī bibliotēka atbalsta kodā izmantotās funkcijas. Tātad, lai lejupielādētu bibliotēku, varat apmeklēt šo saiti:
pypi.python.org/pypi/smbus-cffi/0.5.1
Arī šeit varat nokopēt šī sensora darba pitona kodu:
importēt smbus
importa laiks
# Iegūstiet I2C kopni = smbus. SMBus (1)
# ADXL345 adrese, 0x53 (83)
# Izvēlieties joslas platuma likmju reģistru, 0x2C (44)
# 0x0A (10) Normāls režīms, izejas datu pārraides ātrums = 100 Hz
bus.write_byte_data (0x53, 0x2C, 0x0A)
# ADXL345 adrese, 0x53 (83)
# Atlasiet jaudas kontroles reģistru, 0x2D (45)
# 0x08 (08) Automātiskā miega režīma atspējošana
bus.write_byte_data (0x53, 0x2D, 0x08)
# ADXL345 adrese, 0x53 (83)
# Atlasiet datu formāta reģistru, 0x31 (49)
# 0x08 (08) Pašpārbaude atspējota, 4 vadu interfeiss
# Pilna izšķirtspēja, diapazons = +/- 2g
bus.write_byte_data (0x53, 0x31, 0x08)
miega laiks (0,5)
# ADXL345 adrese, 0x53 (83)
# Lasīt datus no 0x32 (50), 2 baiti
# X ass LSB, X ass MSB
data0 = bus.read_byte_data (0x53, 0x32)
dati1 = kopne.lasīt_baitu_dati (0x53, 0x33)
# Pārvērtiet datus par 10 bitiem
xAccl = ((dati1 un 0x03) * 256) + dati0
ja xAccl> 511:
xAccl -= 1024
# ADXL345 adrese, 0x53 (83)
# Lasīt datus no 0x34 (52), 2 baiti
# Y-ass LSB, Y-ass MSB
data0 = bus.read_byte_data (0x53, 0x34)
dati1 = kopne.lasīt_baitu_dati (0x53, 0x35)
# Pārvērtiet datus par 10 bitiem
yAccl = ((dati1 un 0x03) * 256) + dati0
ja yAccl> 511:
yAccl -= 1024
# ADXL345 adrese, 0x53 (83)
# Nolasiet datus no 0x36 (54), 2 baiti
# Z-ass LSB, Z-ass MSB
data0 = bus.read_byte_data (0x53, 0x36)
dati1 = kopne.lasīt_baitu_dati (0x53, 0x37)
# Pārvērtiet datus par 10 bitiem
zAccl = ((dati1 un 0x03) * 256) + dati0
ja zAccl> 511:
zAccl -= 1024
# Izvadiet datus ekrānā
drukāt "Paātrinājums X-asī: %d" %xAccl
drukāt "Paātrinājums Y-asī: %d" %yAccl
drukāt "Paātrinājums Z-asī: %d" %zAccl
Tālāk minētā koda daļa ietver bibliotēkas, kas nepieciešamas, lai pareizi izpildītu pitona kodus.
importēt smbusimport laiku
Kodu var izpildīt, komandu uzvednē ierakstot zemāk minēto komandu.
$> python ADXL345.py
Sensora izeja ir parādīta arī attēlā iepriekš lietotāja atsaucei.
4. darbība. Lietojumprogrammas:
ADXL345 ir mazs, plāns, īpaši zems jauda, 3 asu akselerometrs, ko var izmantot tālruņos, medicīnas instrumentos uc
Ieteicams:
Paātrinājuma mērīšana, izmantojot ADXL345 un daļiņu fotonu: 4 soļi
Paātrinājuma mērīšana, izmantojot ADXL345 un daļiņu fotonu: ADXL345 ir mazs, plāns, īpaši zems jauda, 3 asu akselerometrs ar augstas izšķirtspējas (13 bitu) mērījumu līdz ± 16 g. Digitālie izvaddati tiek formatēti kā 16 bitu papildinājumi, un tie ir pieejami, izmantojot I2 C digitālo saskarni. Tas mēra
Paātrinājuma mērīšana, izmantojot H3LIS331DL un Arduino Nano: 4 soļi
Paātrinājuma mērīšana, izmantojot H3LIS331DL un Arduino Nano: H3LIS331DL ir mazjaudas augstas veiktspējas 3 asu lineārs akselerometrs, kas pieder “nano” saimei, ar digitālo I²C sērijas interfeisu. H3LIS331DL ir lietotāja atlasītas pilnas skalas ± 100 g/± 200 g/± 400 g, un tas spēj izmērīt paātrinājumus
Paātrinājuma mērīšana, izmantojot H3LIS331DL un Raspberry Pi: 4 soļi
Paātrinājuma mērīšana, izmantojot H3LIS331DL un Raspberry Pi: H3LIS331DL ir mazjaudas augstas veiktspējas 3 asu lineārs akselerometrs, kas pieder “nano” saimei, ar digitālo I²C sērijas interfeisu. H3LIS331DL ir lietotāja atlasītas pilnas skalas ± 100 g/± 200 g/± 400 g, un tas spēj izmērīt paātrinājumus
Paātrinājuma mērīšana, izmantojot ADXL345 un Arduino Nano: 4 soļi
Paātrinājuma mērīšana, izmantojot ADXL345 un Arduino Nano: ADXL345 ir mazs, plāns, īpaši zems jaudas 3 asu akselerometrs ar augstas izšķirtspējas (13 bitu) mērījumu līdz ± 16 g. Digitālie izvaddati tiek formatēti kā 16 bitu papildinājumi, un tie ir pieejami, izmantojot I2 C digitālo saskarni. Tas mēra
Paātrinājuma mērīšana, izmantojot BMA250 un Raspberry Pi: 4 soļi
Paātrinājuma mērīšana, izmantojot BMA250 un Raspberry Pi: BMA250 ir mazs, plāns, īpaši zems jaudas trīs asu akselerometrs ar augstas izšķirtspējas (13 bitu) mērījumu līdz ± 16 g. Digitālie izvaddati tiek formatēti kā 16 bitu papildinājumi, un tie ir pieejami, izmantojot I2C digitālo interfeisu. Tas mēra statisko