Kazalo:
2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-13 06:58
Razmišljate o pripomočku, ki lahko preveri točko, na kateri je vaš Offroader nagnjen proti. Ali ne bi bilo prijetno, če bi se kdo prilagodil, ko obstaja možnost prevrnitve? Očitno da. To bi bilo resnično koristno za posameznike, ki radi hodijo v gore in na poslovna potovanja.
Brez dvoma je resnično briljantno obdobje naprednega vrednotenja figura, pred nami je IoT. Verjamemo, da je kot ljubitelj pripomočkov in programiranja Raspberry Pi, mikro Linux računalnik, obravnaval ustvarjalne sposobnosti ljudi na splošno in s seboj prinesel vrhunec v inovativnih metodologijah. Kakšni so torej možni rezultati, ki jih lahko naredimo, če imamo v bližini Raspberry Pi in 3-osni merilnik pospeška? Morali bi odkriti! Pri tej nalogi bomo zaznali pospešek na treh osh, X, Y in Z z uporabo Raspberry Pi in ADXL345, triosnega merilnika pospeška. Zato bi morali na tem izletu opazovati izdelavo ogrodja za merjenje tridimenzionalnega pospeška navzgor ali G-sile.
Korak: Osnovna strojna oprema, ki jo potrebujemo
Težave so bile za nas manjše, saj imamo na voljo ogromno stvari za delo. Kljub temu vemo, kako je drugim težavno sestaviti pravi del v idealnem času s primernega mesta, kar je upravičeno ne glede na vsak peni. Zato bi vam pomagali v vseh regijah. Za popoln seznam delov preberite naslednje.
1. Malina Pi
Prvi korak je bil nakup plošče Raspberry Pi. Ta majhen računalnik z nizko porabo energije ponuja poceni in na splošno preprosto osnovo za elektronske podvige, internet stvari (IoT), pametna mesta, šolsko izobraževanje.
2. I2C ščit za Raspberry Pi
Glavna stvar, ki Raspberry Pi resnično manjka, so vrata I²C. Zato vam priključek TOUTPI2 I²C daje smisel za uporabo Rasp Pi z napravami MULTIPLE I²C. Dostopno je v trgovini DCUBE
3. 3-osni merilnik pospeška, ADXL345
ADXL345, ki ga proizvaja Analog Devices, je 3-osni merilnik pospeška z nizko porabo energije z 13-bitnimi meritvami visoke ločljivosti do ± 16 g. Ta senzor smo kupili v trgovini DCUBE
4. Priključni kabel
Povezovalni kabel I2C smo imeli na voljo v trgovini DCUBE
5. Kabel mikro USB
Najmanjši zmedeni, a najstrožji glede potrebe po energiji je Raspberry Pi! Najbolj enostaven pristop za vklop Raspberry Pi je s kablom Micro USB.
6. Spletni dostop je potreba
Spletni dostop je mogoče pooblastiti prek kabla Ethernet (LAN), povezanega z lokalnim omrežjem in spletom. Po drugi strani pa se lahko povežete z brezžičnim omrežjem z brezžičnim ključem USB, ki bo zahteval konfiguracijo.
7. Kabel HDMI/oddaljeni dostop
S kablom HDMI lahko priključite na digitalno televizijo ali monitor. Treba je prihraniti denar! Raspberry Pi lahko na daljavo uporabite z uporabo posebnih strategij, kot sta SSH in Access preko spleta. Uporabite lahko izvorno programsko opremo PuTTYopen.
2. korak: Priključitev strojne opreme
Naredite vezje po prikazani shemi. Narišite oris in po namestitvi namerno vzemite.
Povezava Raspberry Pi in I2C Shield
Predvsem pa vzemite Raspberry Pi in na njem opazite I2C Shield. Nežno pritisnite Shield na zatiče GPIO za Pi in končali smo s tem napredovanjem tako preprosto kot pita (glej snap).
Povezava senzorja in Raspberry Pi
Vzemite senzor in s seboj povežite kabel I2C. Za ustrezno delovanje tega kabla se spomnite, da je izhod I2C VEDNO povezan z vhodom I2C. Enako je treba upoštevati tudi za Raspberry Pi z I2C ščitom, nameščenim nanj preko zatičev GPIO.
Predpisujemo uporabo kabla I2C, saj ovrže zahtevo po pregledu pinouts, spajkanju in slabosti, ki jih povzroči tudi najmanjša napaka. S tem osnovnim kablom plug and play lahko preprosto predstavite, zamenjate naprave ali dodate več naprav v aplikacijo. Zaradi tega so stvari nezapletene.
Opomba: Rjava žica bi morala zanesljivo slediti ozemljitveni (GND) povezavi med izhodom ene naprave in vhodom druge naprave
Spletno omrežje je ključno
Da bi naše podjetje zmagalo, potrebujemo spletno povezavo za naš Raspberry Pi. Za to imate druge možnosti, kot je povezovanje kabla Ethernet (LAN) z domačim sistemom. Poleg tega je kot možnost koristna pot uporaba priključka WiFi. Včasih za to potrebujete voznika, da deluje. Zato se nagnite k tistemu z Linuxom v upodobitvi.
Napajanje
Priključite kabel Micro USB v vtičnico za napajanje Raspberry Pi. Prižgite ga in lahko gremo.
Povezava z zaslonom
Kabel HDMI lahko povežemo z drugim zaslonom. V nekaterih primerih morate priti do Raspberry Pi, ne da bi ga povezali z zaslonom, ali pa si boste morda morali ogledati nekatere podatke iz njega od drugod. Verjetno obstajajo inovativni in finančno podkovani pristopi k temu. Eden od njih uporablja - SSH (oddaljena prijava v ukazno vrstico). Za to lahko uporabite tudi programsko opremo PuTTY.
Korak: Kodiranje Python za Raspberry Pi
Koda Python za senzor Raspberry Pi in ADXL345 je dostopna v našem skladišču Github.
Preden nadaljujete s kodo, se prepričajte, da ste prebrali smernice v dokumentu Readme in nastavite Raspberry Pi v skladu z njo. Preprosto se bo za nekaj minut ustavilo, da bo tako.
Merilnik pospeška je naprava, ki meri pravilen pospešek; pravilen pospešek ni enak koordinatnemu pospešku (hitrost spremembe hitrosti). Eno- in večosni modeli merilnika pospeška so na voljo za identifikacijo velikosti in smeri ustreznega pospeška kot vektorske količine in jih je mogoče uporabiti za zaznavanje orientacije, koordiniranje pospeška, vibracije, udarca in padca v uporovnem mediju.
Koda je pred vami jasna in je v najbolj enostavni strukturi, ki si jo lahko zamislite, in ne bi smeli imeti težav.
# Razdeljeno z licenco za svobodno voljo.# Uporabite ga na kakršen koli način, dobičkonosno ali brezplačno, pod pogojem, da ustreza licencam povezanih del. # ADXL345 # Ta koda je zasnovana za delo z mini modulom ADXL345_I2CS I2C, ki je na voljo na spletnem mestu dcubestore.com # https://dcubestore.com/product/adxl345-3-axis-accelerometer-13-bit-i%C2%B2c-mini -modul/
uvoz smbus
čas uvoza
# Pridobite avtobus I2C
vodilo = smbus. SMBus (1)
# Naslov ADXL345, 0x53 (83)
# Izberite register hitrosti pasovne širine, 0x2C (44) # 0x0A (10) Običajen način, Hitrost izhodnih podatkov = 100 Hz bus.write_byte_data (0x53, 0x2C, 0x0A) # Naslov ADXL345, 0x53 (83) # Izberite register za nadzor moči, 0x2D (45) # 0x08 (08) Samodejno onemogoči bus.write_byte_data (0x53, 0x2D, 0x08) # ADXL345 naslov, 0x53 (83) # Izberite register podatkovnega formata, 0x31 (49) # 0x08 (08) Samopreizkus onemogočen, 4-žilni vmesnik # polna ločljivost, obseg = +/- 2g vodila.write_byte_data (0x53, 0x31, 0x08)
time.sleep (0,5)
# Naslov ADXL345, 0x53 (83)
# Preberite podatke nazaj iz 0x32 (50), 2 bajtov # X-Axis LSB, X-Axis MSB data0 = bus.read_byte_data (0x53, 0x32) data1 = bus.read_byte_data (0x53, 0x33)
# Pretvorite podatke v 10-bitne
xAccl = ((podatki1 & 0x03) * 256) + podatki0, če je xAccl> 511: xAccl -= 1024
# Naslov ADXL345, 0x53 (83)
# Preberite podatke nazaj iz 0x34 (52), 2 bajta # Y-os LSB, Y-os MSB data0 = bus.read_byte_data (0x53, 0x34) data1 = bus.read_byte_data (0x53, 0x35)
# Pretvorite podatke v 10-bitne
yAccl = ((podatki1 & 0x03) * 256) + podatki0, če je yAccl> 511: yAccl -= 1024
# Naslov ADXL345, 0x53 (83)
# Preberite podatke nazaj iz 0x36 (54), 2 bajta # Z-os LSB, Z-os MSB podatki 0 = vodilo.prebrani_bajtni_dati (0x53, 0x36) data1 = vodilo.read_byte_data (0x53, 0x37)
# Pretvorite podatke v 10-bitne
zAccl = ((podatki1 & 0x03) * 256) + podatki0, če je zAccl> 511: zAccl -= 1024
# Iznesite podatke na zaslon
print "Pospešek v osi X: %d" %xAccl print "Pospešek v osi Y: %d" %yAccl print "Pospešek v osi Z: %d" %zAccl
4. korak: Praktičnost kodeksa
Prenesite (ali git pull) kodo iz Github -a in jo odprite v Raspberry Pi.
Zaženite ukaze za sestavljanje in nalaganje kode v terminalu in si oglejte rezultate na monitorju. Po nekaj trenutkih bo prikazal vse parametre. Potem, ko zagotovite, da vse deluje brez težav, se lahko s tem podvigom lotite večje naloge.
5. korak: Aplikacije in funkcije
ADXL345 je majhen, tanek, 3-osni merilnik pospeška z ultra nizko močjo z visoko ločljivostjo (13-bitnimi) meritvami do ± 16 g. ADXL345 je primeren za aplikacije za mobilne telefone. Kvantificira statično pospeševanje gravitacije v aplikacijah za zaznavanje nagiba in dodatno dinamično pospeševanje zaradi gibanja ali šoka. Druge aplikacije vključujejo slušalke, medicinske instrumente, igralne in kazalne naprave, industrijske instrumente, osebne navigacijske naprave in zaščito trdega diska (HDD).
6. korak: Zaključek
Upam, da bo ta naloga spodbudila nadaljnje eksperimentiranje. Ta senzor I2C je izredno prilagodljiv, poceni in dostopen. Ker je sistem v veliki meri nespremenljiv, obstajajo zanimivi načini, kako lahko to nalogo razširite in jo celo izboljšate.
Na primer, lahko začnete z idejo o Inclinometru z uporabo ADXL345 in Raspberry Pi. V zgornjem projektu smo uporabili osnovne izračune. Kodo za vrednosti G, kote nagiba (ali nagiba), višino ali potiskanje predmeta glede na težo lahko improvizirate. Nato lahko preverite možnosti napredovanja, kot so koti vrtenja za zvitek (os spredaj-zadaj, X), nagib (stran-na-stran osi, Y) in nagib (navpična os, Z). Ta merilnik pospeška prikazuje 3-D sile G. Tako lahko uporabite ta senzor na različne načine.
Za vaše udobje imamo na YouTubu zanimivo video vajo, ki vam lahko pomaga pri preiskavi. Verjemite, da ta podvig spodbuja nadaljnje raziskovanje. Nadaljujte z razmišljanjem! Ne pozabite iskati, saj se vedno več pojavlja.