Sadržaj:
- Korak 1: Osnovni hardver koji nam je potreban
- Korak 2: Povezivanje hardvera
- Korak 3: Python kodiranje za Raspberry Pi
- Korak 4: Praktičnost Kodeksa
- Korak 5: Aplikacije i značajke
- Korak 6: Zaključak
Video: Trosmjerni akcelerometar, ADXL345 s Raspberry Pi pomoću Pythona: 6 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:06
Razmišljajući o gadgetu koji može provjeriti točku na kojoj se vaš Offroader naginje prema dugotrajnoj. Zar ne bi bilo ugodno u slučaju da se netko prilagodi kad postoji mogućnost prevrtanja? Očigledno da. Bilo bi zaista korisno za pojedince koji vole odlaske na planine i poslovna putovanja.
Bez sumnje, pred nama je zaista briljantan period napredne evaluacije figura, IoT. Kao ljubitelji gadgeta i programiranja, vjerujemo, Raspberry Pi, mikro Linux PC tretirao je kreativne sposobnosti ljudi općenito, noseći sa sobom vrhunac u inovativnim metodologijama. Dakle, koji su mogući ishodi koje možemo učiniti u slučaju da u blizini imamo Raspberry Pi i troosni akcelerometar? Trebali bismo otkriti! U ovom zadatku ćemo osjetiti ubrzanje na 3 osi, X, Y i Z pomoću Raspberry Pi i ADXL345, troosnog akcelerometra. Stoga bismo trebali promatrati na ovom izletu kako bismo izradili okvir za mjerenje trodimenzionalnog ubrzanja prema gore ili G-sile.
Korak 1: Osnovni hardver koji nam je potreban
Problemi su za nas bili manji jer imamo hrpu stvari koje leže okolo radi. Bez obzira na to, znamo kako je drugima problematično sastaviti pravi dio u savršeno vrijeme sa pogodnog mjesta, što je opravdano bez obzira na svaki peni. Zato bismo vam pomogli u svim regijama. Pročitajte sljedeće kako biste dobili potpunu listu dijelova.
1. Malina Pi
Prvi korak je bio nabavka Raspberry Pi ploče. Ovaj maleni računar male snage pruža jeftinu i općenito jednostavnu bazu za elektroničke poduhvate, Internet stvari (IoT), pametne gradove, školsko obrazovanje.
2. I2C štit za Raspberry Pi
Glavna stvar koja nedostaje Raspberry Pi -u je I²C port. Dakle, za to vam TOUTPI2 I²C konektor daje osjećaj da koristite Rasp Pi s VEĆIM I²C uređajima. Dostupno je u DCUBE trgovini
3. Troosni akcelerometar, ADXL345
Proizveden od strane Analog Devices, ADXL345, je troosni akcelerometar male snage sa 13-bitnim mjerenjem visoke rezolucije do ± 16 g. Ovaj senzor smo kupili od DCUBE Store -a
4. Priključni kabel
Imali smo I2C priključni kabel dostupan u DCUBE trgovini
5. Mikro USB kabl
Najmanji zbunjeni, ali najstrožiji što se tiče potrebe za energijom je Raspberry Pi! Pristup napajanju Raspberry Pi -a bez napora je pomoću mikro USB kabela.
6. Pristup Webu je potreba
Pristup internetu može se osnažiti putem Ethernet (LAN) kabela povezanog s lokalnom mrežom i webom. S druge strane, možete se povezati s bežičnom mrežom pomoću USB bežičnog ključa, što će zahtijevati konfiguraciju.
7. HDMI kabl/daljinski pristup
S HDMI kablom na ploči, možete ga priključiti na digitalni TV ili na monitor. Potrebno je uštedjeti gotovinu! Raspberry Pi se može daljinski priviknuti na korištenje posebnih strategija poput-SSH i pristupa putem weba. Možete koristiti izvorni softver PuTTYopen.
Korak 2: Povezivanje hardvera
Učinite krug prema prikazanoj shemi. Nacrtajte nacrt i namjerno nastavite nakon konfiguracije.
Povezivanje Raspberry Pi i I2C štita
Iznad svega, uzmite Raspberry Pi i uočite I2C štit na njemu. Lagano pritisnite Shield preko GPIO iglica Pi i završili smo s ovom progresijom jednostavnom poput pite (pogledajte snimku).
Povezivanje senzora i Raspberry Pi
Uzmite senzor i povežite I2C kabel sa sobom. Za odgovarajući rad ovog kabela, molimo vas da uvijek pozovete I2C izlaz koji je uvijek povezan sa I2C ulazom. Isto se mora uzeti i za Raspberry Pi sa I2C štitom postavljenim preko GPIO pinova.
Propisujemo upotrebu I2C kabela jer odbacuje zahtjev za čitanjem pinouta, lemljenja i slabosti uzrokovane čak i najmanjom greškom. Pomoću ovog osnovnog plug and play kabla možete jednostavno predstaviti, zamijeniti uređaje ili dodati još uređaja u aplikaciju. Ovo čini stvari nekompliciranim.
Napomena: Smeđa žica bi trebala pouzdano pratiti vezu uzemljenja (GND) između izlaza jednog uređaja i ulaza drugog uređaja
Ključna je web mreža
Da bi naš poduhvat pobijedio, potrebna nam je internetska veza za naš Raspberry Pi. U tu svrhu imate alternative poput povezivanja Ethernet (LAN) kabela s kućnim sistemom. Osim toga, kao opcija, međutim, korisna ruta je korištenje WiFi konektora. Nekad vam je za to potreban vozač da bi funkcionirao. Zato se nagnite prema onom s Linuxom na prikazu.
Napajanje
Uključite mikro USB kabel u utičnicu za napajanje Raspberry Pi. Upalite i dobro smo krenuli.
Povezivanje sa ekranom
HDMI kabl možemo povezati s drugim ekranom. U nekim slučajevima morate doći do Raspberry Pi bez povezivanja s ekranom ili ćete možda morati pogledati neke podatke s njega s nekog drugog mjesta. Vjerojatno postoje inovativni i financijski razumljivi pristupi takvom postupanju. Jedan od njih koristi - SSH (udaljeno prijavljivanje na komandnu liniju). Za to možete koristiti i softver PuTTY.
Korak 3: Python kodiranje za Raspberry Pi
Python kod za Raspberry Pi i ADXL345 senzor dostupan je u našem Github spremištu.
Prije nego prijeđete na kôd, svakako pročitajte smjernice date u dokumentu Readme i postavite Raspberry Pi prema njemu. Jednostavno će zastati na minutu kako bi to učinili.
Akcelerometar je uređaj koji mjeri pravilno ubrzanje; pravilno ubrzanje nije isto što i koordinatno ubrzanje (brzina promjene brzine). Dostupni su jednoosni i višeosni modeli akcelerometra za identifikaciju veličine i smjera odgovarajućeg ubrzanja, kao vektorske veličine, i mogu se koristiti za osjet orijentacije, koordinatnog ubrzanja, vibracija, udara i pada u otporni medij.
Kôd je pred vama jasan i u najjednostavnijoj je strukturi koju možete zamisliti i ne biste trebali imati problema.
# Distribuira se sa slobodnom voljom licence.# Koristite ga kako god želite, profitno ili besplatno, pod uvjetom da se uklapa u licence povezanih djela. # ADXL345 # Ovaj kod je dizajniran za rad s ADXL345_I2CS I2C mini modulom dostupnim na dcubestore.com # https://dcubestore.com/product/adxl345-3-axis-accelerometer-13-bit-i%C2%B2c-mini -modul/
import smbus
vreme uvoza
# Nabavite I2C autobus
sabirnica = smbus. SMBus (1)
# ADXL345 adresa, 0x53 (83)
# Odaberite registar brzine propusnog opsega, 0x2C (44) # 0x0A (10) Normalni način rada, Brzina izlaznih podataka = 100 Hz sabirnica.write_byte_data (0x53, 0x2C, 0x0A) # ADXL345 adresa, 0x53 (83) # Odaberite registar kontrole snage, 0x2D (45) # 0x08 (08) Automatsko spavanje onemogućuje bus.write_byte_data (0x53, 0x2D, 0x08) # ADXL345 adresa, 0x53 (83) # Odaberite format zapisa podataka, 0x31 (49) # 0x08 (08) Samoispitivanje je onemogućeno, 4-žično interfejs # Puna rezolucija, Opseg = +/- 2g magistrale.write_byte_data (0x53, 0x31, 0x08)
vrijeme.spavanje (0,5)
# ADXL345 adresa, 0x53 (83)
# Očitavanje podataka sa 0x32 (50), 2 bajta # X-Axis LSB, X-Axis MSB data0 = bus.read_byte_data (0x53, 0x32) data1 = bus.read_byte_data (0x53, 0x33)
# Pretvorite podatke u 10-bitne
xAccl = ((data1 & 0x03) * 256) + data0 ako je xAccl> 511: xAccl -= 1024
# ADXL345 adresa, 0x53 (83)
# Očitavanje podataka iz 0x34 (52), 2 bajta # Y-osa LSB, Y-osa MSB podaci0 = bus.read_byte_data (0x53, 0x34) data1 = bus.read_byte_data (0x53, 0x35)
# Pretvorite podatke u 10-bitne
yAccl = ((data1 & 0x03) * 256) + data0 ako je yAccl> 511: yAccl -= 1024
# ADXL345 adresa, 0x53 (83)
# Očitavanje podataka iz 0x36 (54), 2 bajta # Z-Axis LSB, Z-Axis MSB podaci0 = bus.read_byte_data (0x53, 0x36) data1 = bus.read_byte_data (0x53, 0x37)
# Pretvorite podatke u 10-bitne
zAccl = ((data1 & 0x03) * 256) + data0 ako je zAccl> 511: zAccl -= 1024
# Izlažite podatke na ekran
ispis "Ubrzanje u osi X: %d" %xAccl ispis "Ubrzanje u osi Y: %d" %yAccl ispis "Ubrzanje u osi Z: %d" %zAccl
Korak 4: Praktičnost Kodeksa
Preuzmite (ili git povucite) kôd s Githuba i otvorite ga u Raspberry Pi.
Pokrenite naredbe za kompajliranje i učitavanje koda u terminalu i pogledajte izlaz na monitoru. Nakon nekoliko trenutaka, prikazat će se svaki od parametara. Nakon što ćete osigurati da sve funkcionira lako, ovaj poduhvat možete odvesti na veći zadatak.
Korak 5: Aplikacije i značajke
ADXL345 je mali, tanak, troosni akcelerometar ultra male snage sa mjerenjima visoke rezolucije (13 bita) do ± 16 g. ADXL345 je prikladan za aplikacije za mobitele. Kvantificira statičko ubrzanje gravitacije u aplikacijama za otkrivanje nagiba, a osim toga dolazi do dinamičkog ubrzanja zbog kretanja ili šoka. Druge aplikacije uključuju telefone, medicinske instrumente, igračke i pokazivačke uređaje, industrijske instrumente, lične navigacijske uređaje i zaštitu tvrdog diska (HDD).
Korak 6: Zaključak
Nadam se da će ovaj zadatak potaknuti daljnje eksperimentiranje. Ovaj I2C senzor izuzetno je fleksibilan, jeftin i pristupačan. Budući da je to u velikoj mjeri nestalni sistem, postoje zanimljivi načini na koje možete proširiti ovaj zadatak i čak ga poboljšati.
Na primjer, možete početi s idejom Inclinometra pomoću ADXL345 i Raspberry Pi. U gore navedenom projektu koristili smo osnovne proračune. Možete improvizirati kôd za G-vrijednosti, kutove nagiba (ili nagiba), uzvišenje ili ulegnuće objekta u odnosu na gravitaciju. Zatim možete provjeriti napredne opcije, kao što su uglovi rotacije za kotrljanje (os sprijeda prema natrag, X), nagib (osovina bočno na stranu, Y) i zakretanje (okomita os, Z). Ovaj akcelerometar prikazuje 3-D G-sile. Dakle, ovaj senzor možete koristiti na različite načine.
Radi vaše udobnosti, na YouTubeu imamo fascinantnu vježbu s video uputama koja vam može pomoći u istrazi. Vjerujte da ovaj poduhvat motivira daljnja istraživanja. Nastavite razmišljati! Imajte na umu da tražite sve više jer se stalno pojavljuje.
Preporučuje se:
Raspberry Pi - ADXL345 troosni akcelerometar Python Vodič: 4 koraka
Raspberry Pi-ADXL345 troosni akcelerometar Python Vodič: ADXL345 je mali, tanak, troosni akcelerometar ultra niske snage s mjerenjima visoke rezolucije (13 bita) do ± 16 g. Digitalni izlazni podaci formatirani su kao 16-bitne dvojke i dopunjeni su i dostupni su preko I2 C digitalnog sučelja. Mjeri
Raspberry Pi - ADXL345 troosni akcelerometar Java Vodič: 4 koraka
Raspberry Pi-ADXL345 troosni akcelerometar Java Tutorial: ADXL345 je mali, tanak, troosni akcelerometar ultra niske snage s mjerenjima visoke rezolucije (13 bita) do ± 16 g. Digitalni izlazni podaci formatirani su kao 16-bitne dvojke i dopunjeni su i dostupni su preko I2 C digitalnog sučelja. Mjeri
Vodič za Arduino akcelerometar: Kontrola brodskog mosta pomoću servo motora: 5 koraka
Vodič za Arduino akcelerometar: Kontrola brodskog mosta pomoću servo motora: Senzori akcelerometra sada su u većini naših pametnih telefona kako bi im dali široku paletu upotrebe i mogućnosti koje svakodnevno koristimo, čak i ne znajući da je za to odgovoran akcelerometar. Jedna od ovih mogućnosti je kontrola
Nadgledanje ubrzanja pomoću Raspberry Pi i AIS328DQTR pomoću Pythona: 6 koraka
Nadgledanje ubrzanja pomoću Raspberry Pi i AIS328DQTR Korištenje Pythona: Ubrzanje je konačno, mislim prema nekim zakonima fizike.- Terry Riley Gepard koristi nevjerojatno ubrzanje i brze promjene brzine pri jurenju. Najbrže stvorenje s vremena na vrijeme iskoristi svoj najveći tempo za hvatanje plijena
Trosmjerni i četverosmjerni prekidači-kako funkcioniraju: 6 koraka
Trosmjerni i četverosmjerni prekidači-kako funkcioniraju: Iako je trosmjerni prekidač vrlo jednostavan za mnoge koji posjete Instructables.com, to je misterija za mnoge druge. Razumijevanje načina rada kola zadovoljava znatiželju. Može vam pomoći i dijagnosticiranje trosmjernog prekidača koji ne radi jer je neko