Turinys:
- 1 veiksmas: reikalinga aparatūra:
- 2 veiksmas: prijungimas prie aparatūros:
- 3 žingsnis: pagreičio matavimo „Python“kodas:
- 4 žingsnis: programos:
Video: Pagreičio matavimas naudojant H3LIS331DL ir Raspberry Pi: 4 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:46
H3LIS331DL yra mažos galios didelio našumo 3 ašių linijinis akselerometras, priklausantis „nano“šeimai, su skaitmenine I²C nuoseklia sąsaja. „H3LIS331DL“vartotojo pasirinktos visos skalės yra ± 100 g/± 200 g/± 400 g ir gali matuoti pagreitį, kai išvesties duomenų dažnis yra nuo 0,5 Hz iki 1 kHz. Garantuojama, kad H3LIS331DL veiks plačiame temperatūros diapazone nuo -40 ° C iki +85 ° C.
Šioje pamokoje mes parodysime H3LIS331DL sąsają su „Raspberry Pi“, naudodami „python“kaip programavimo kalbą.
1 veiksmas: reikalinga aparatūra:
Medžiagos, reikalingos mūsų tikslui pasiekti, apima šiuos aparatūros komponentus:
1. H3LIS331DL
2. Raspberry Pi
3. I2C kabelis
4. I2C skydas avietėms pi
5. Ethernet kabelis
2 veiksmas: prijungimas prie aparatūros:
Techninės įrangos prijungimo skyriuje iš esmės paaiškinamos reikalingos laidų jungtys tarp jutiklio ir aviečių pi. Užtikrinti teisingas jungtis yra pagrindinė būtinybė dirbant su bet kuria norimos išvesties sistema. Taigi, būtinos jungtys yra šios:
H3LIS331DL veiks per I2C. Čia yra elektros instaliacijos schemos pavyzdys, parodantis, kaip prijungti kiekvieną jutiklio sąsają.
Iš karto plokštė sukonfigūruota I2C sąsajai, todėl rekomenduojame naudoti šį prijungimą, jei esate kitaip agnostikas. Viskas, ko jums reikia, yra keturi laidai!
Reikia tik keturių jungčių „Vcc“, „Gnd“, „SCL“ir „SDA“kaiščių, kurie yra prijungti naudojant I2C kabelį.
Šie ryšiai parodyti aukščiau esančiose nuotraukose.
3 žingsnis: pagreičio matavimo „Python“kodas:
„Raspberry pi“naudojimo pranašumas yra tas, kad suteikia lankstumo programavimo kalbai, kuria norite programuoti plokštę, kad su ja susietumėte jutiklį. Pasinaudoję šiuo šios plokštės pranašumu, mes čia demonstruojame jos programavimą python'e. „Python“yra viena iš paprasčiausių programavimo kalbų, turinti lengviausią sintaksę. „H3LIS331DL“python kodą galima atsisiųsti iš mūsų „github“bendruomenės, kuri yra „DCUBE Store“.
Be vartotojų patogumo, mes taip pat paaiškiname kodą čia:
Pirmasis kodavimo žingsnis yra „Python“atveju atsisiųsti „SMBus“biblioteką, nes ši biblioteka palaiko kode naudojamas funkcijas. Taigi, norėdami atsisiųsti biblioteką, galite apsilankyti šioje nuorodoje:
pypi.python.org/pypi/smbus-cffi/0.5.1
Taip pat galite nukopijuoti darbo kodą iš čia:
importuoti smbus
importo laikas
# Gaukite I2C magistralę = smbus. SMBus (1)
# H3LIS331DL adresas, 0x18 (24)
# Pasirinkite valdymo registrą 1, 0x20 (32)
# 0x27 (39) Įjungimo režimas, duomenų išvesties sparta = 50 Hz# X, Y, Z ašis įjungta
bus.write_byte_data (0x18, 0x20, 0x27)
# H3LIS331DL adresas, 0x18 (24)# Pasirinkite valdymo registrą 4, 0x23 (35)
# 0x00 (00) Nuolatinis atnaujinimas, visas skalės pasirinkimas = +/- 100 g
bus.write_byte_data (0x18, 0x23, 0x00)
laikas. miegas (0,5)
# H3LIS331DL adresas, 0x18 (24)
# Perskaitykite duomenis iš 0x28 (40), 2 baitų
# X ašis LSB, X ašis MSB
duomenys0 = magistralės.skaito_baitų_datai (0x18, 0x28)
duomenys1 = magistralė
# Konvertuokite dataxAccl = data1 * 256 + data0
jei xAccl> 32767:
xAccl -= 65536
# H3LIS331DL adresas, 0x18 (24)
# Perskaitykite duomenis iš 0x2A (42), 2 baitų
# Y ašis LSB, Y ašis MSB
duomenys0 = magistralė
duomenys1 = magistralė
# Konvertuokite duomenis
yAccl = duomenys1 * 256 + duomenys0
jei yAccl> 32767:
yAccl -= 65536
# H3LIS331DL adresas, 0x18 (24)
# Perskaitykite duomenis iš 0x2C (44), 2 baitų
# Z ašies LSB, Z ašies MSB
duomenys0 = magistralė.skaito_baitų_datai (0x18, 0x2C)
duomenys1 = magistralė
# Konvertuokite duomenis
zAccl = duomenys1 * 256 + duomenys0
jei zAccl> 32767:
zAccl -= 65536
# Išveskite duomenis į ekraną
spausdinti "pagreitis X ašyje: %d" %xAccl
spausdinti "pagreitis Y ašyje: %d" %yAccl
spauda "Pagreitis Z ašyje: %d" %zAccl
Kodas vykdomas naudojant šią komandą:
$> python H3LIS331DL.py gt; python H3LIS331DL.py
Jutiklio išvestis yra parodyta aukščiau esančiame paveikslėlyje vartotojo naudai.
4 žingsnis: programos:
Akselerometrai, tokie kaip H3LIS331DL, dažniausiai naudojami žaidimuose ir ekrano profilio perjungime. Šis jutiklių modulis taip pat naudojamas pažangioje mobiliųjų programų energijos valdymo sistemoje. „H3LIS331DL“yra triašis skaitmeninis pagreičio jutiklis, integruotas su išmaniuoju mikroschemo judesio suaktyvintu pertraukimo valdikliu.
Rekomenduojamas:
Pagreičio matavimas naudojant ADXL345 ir dalelių fotoną: 4 žingsniai
Pagreičio matavimas naudojant ADXL345 ir dalelių fotoną: ADXL345 yra mažas, plonas, itin mažos galios 3 ašių akselerometras, kurio didelės skiriamosios gebos (13 bitų) matavimas yra iki ± 16 g. Skaitmeniniai išvesties duomenys yra suformatuoti kaip 16 bitų du papildymai ir yra prieinami per I2 C skaitmeninę sąsają. Tai matuoja
Pagreičio matavimas naudojant H3LIS331DL ir „Arduino Nano“: 4 žingsniai
Pagreičio matavimas naudojant H3LIS331DL ir „Arduino Nano“: H3LIS331DL yra mažos galios didelio našumo 3 ašių linijinis akselerometras, priklausantis „nano“šeimai, su skaitmenine I²C nuoseklia sąsaja. „H3LIS331DL“naudotojas gali pasirinkti visas ± 100 g/± 200 g/± 400 g skalę ir gali išmatuoti pagreitį
Pagreičio matavimas naudojant H3LIS331DL ir dalelių fotoną: 4 žingsniai
Pagreičio matavimas naudojant H3LIS331DL ir dalelių fotoną: H3LIS331DL yra mažos galios didelio našumo 3 ašių linijinis akselerometras, priklausantis „nano“šeimai, su skaitmenine I²C nuoseklia sąsaja. „H3LIS331DL“naudotojas gali pasirinkti visas ± 100 g/± 200 g/± 400 g skalę ir gali išmatuoti pagreitį
Pagreičio matavimas naudojant ADXL345 ir Raspberry Pi: 4 žingsniai
Pagreitėjimo matavimas naudojant ADXL345 ir Raspberry Pi: ADXL345 yra mažas, plonas, itin mažos galios 3 ašių akselerometras, kurio didelės skiriamosios gebos (13 bitų) matavimas yra iki ± 16 g. Skaitmeniniai išvesties duomenys yra suformatuoti kaip 16 bitų du papildymai ir yra prieinami per I2 C skaitmeninę sąsają. Tai matuoja
Pagreičio matavimas naudojant BMA250 ir Raspberry Pi: 4 žingsniai
Pagreičio matavimas naudojant BMA250 ir Raspberry Pi: BMA250 yra mažas, plonas, itin mažos galios 3 ašių akselerometras, turintis didelės skiriamosios gebos (13 bitų) matavimą iki ± 16 g. Skaitmeniniai išvesties duomenys yra suformatuoti kaip 16 bitų du papildymai ir yra prieinami per I2C skaitmeninę sąsają. Matuoja statinį