Cuprins:

Monitorizarea accelerării utilizând Raspberry Pi și AIS328DQTR folosind Python: 6 pași
Monitorizarea accelerării utilizând Raspberry Pi și AIS328DQTR folosind Python: 6 pași

Video: Monitorizarea accelerării utilizând Raspberry Pi și AIS328DQTR folosind Python: 6 pași

Video: Monitorizarea accelerării utilizând Raspberry Pi și AIS328DQTR folosind Python: 6 pași
Video: Automatizari fotovoltaice incepatori Ep.1: Instalare și prezentare Solar Assistant 2024, Decembrie
Anonim
Image
Image

Accelerarea este finită, cred că conform unor legi ale fizicii. - Terry Riley

Un ghepard utilizează o accelerație uimitoare și schimbări rapide de viteză atunci când aleargă. Cea mai rapidă creatură de pe uscat își folosește din când în când ritmul de vârf pentru a prinde prada. Creaturile accelerează acest lucru aplicând de aproape cinci ori mai multă putere decât cea a lui Usain Bolt pe fondul recordului său de 100 de metri.

În prezent, indivizii nu își pot imagina existența fără inovație. În jurul nostru, diferite inovații îi ajută pe oameni să își continue existența cu mai multă extravaganță. Raspberry Pi, PC-ul Linux cu o singură placă, oferă o bază ieftină și respectabilă pentru eforturile electronice și progresele de ultimă generație, cum ar fi IoT, Smart Cities și educația școlară. Ca fani ai computerelor și gadgeturilor, am luat o măsură considerabilă cu Raspberry Pi și am ales să ne amestecăm interesele. Deci, care sunt posibilele rezultate pe care le putem face dacă avem un Raspberry Pi și un accelerometru pe 3 axe în apropiere? În această sarcină, vom încorpora AIS328DQTR, un senzor digital cu 3 axe MEMS accelerometru liniar, pentru a măsura accelerația în 3 direcții, X, Y și Z, cu Raspberry Pi folosind Python. Asta merită să ne uităm.

Pasul 1: Hardware pe care îl solicităm

Hardware de care avem nevoie
Hardware de care avem nevoie
Hardware de care avem nevoie
Hardware de care avem nevoie

Problemele au fost mai puțin pentru noi, deoarece avem o cantitate uriașă de lucruri care se află în jurul nostru de lucru. În orice caz, știm cât de dificil este ca alții să îndepărteze partea potrivită într-un moment perfect de la punctul forte și care este protejat, acordând puțină atenție fiecărui bănuț. Așadar, vă vom ajuta.

1. Raspberry Pi

Pasul inițial a fost obținerea unei plăci Raspberry Pi. Raspberry Pi este o placă solitară bazată pe Linux. Acest mic PC conține un pumn în înregistrarea puterii, folosit ca o piesă de exerciții electronice și operațiuni pe computer, cum ar fi foi de calcul, procesare de text, navigare pe web, e-mail și jocuri. Puteți cumpăra unul de la orice magazin de electronice sau de amatori.

2. I2C Shield pentru Raspberry Pi

Principala preocupare pentru care Raspberry Pi este cu adevărat absentă este un port I2C. Deci, pentru asta, conectorul TOUTPI2 I2C vă oferă sensul de a folosi Raspberry Pi cu ORICE dispozitive I2C. Este disponibil pe Magazinul DUBE

3. Accelerometru cu 3 axe, AIS328DQTR

Aparținând senzorilor de mișcare STMicroelectronics, AIS328DQTR este un accelerometru liniar cu 3 axe, de înaltă performanță, de înaltă performanță, cu ieșire standard SPI a interfeței seriale digitale. Am achiziționat acest senzor de la DCUBE Store

4. Cablu de conectare

Am achiziționat cablul de conectare I2C de la magazinul DCUBE

5. Cablu micro USB

Cel mai umil uimit, dar cel mai strict la nivelul necesar de energie este Raspberry Pi! Cel mai simplu mod de a face față planului de joc este prin utilizarea cablului Micro USB. Pinii GPIO sau porturile USB pot fi utilizate în mod similar pentru a oferi o sursă de alimentare amplă.

6. Accesul web este o necesitate

Obțineți Raspberry Pi asociat cu un cablu Ethernet (LAN) și conectați-l la rețeaua dvs. Pe de altă parte, căutați un conector WiFi și utilizați unul dintre porturile USB pentru a ajunge la rețeaua de la distanță. Este o decizie ascuțită, fundamentală, mică și simplă!

7. Cablu HDMI / Acces la distanță

Raspberry Pi are un port HDMI pe care îl puteți interfața în special la un monitor sau TV cu un cablu HDMI. Opțional, puteți utiliza SSH pentru a vă aduce Raspberry Pi de pe un computer Linux sau Macintosh de la terminal. De asemenea, PuTTY, un emulator de terminal gratuit și open-source sună ca o alegere nu chiar atât de proastă.

Pasul 2: Conectarea hardware-ului

Conectarea hardware-ului
Conectarea hardware-ului
Conectarea hardware-ului
Conectarea hardware-ului
Conectarea hardware-ului
Conectarea hardware-ului

Faceți circuitul așa cum este indicat de schema prezentată. În grafic, veți vedea diferitele părți, fragmente de putere și senzorul I2C.

Conexiune Raspberry Pi și I2C Shield

Cel mai important, luați Raspberry Pi și localizați scutul I2C pe el. Apăsați Shield cu atenție peste pinii GPIO ai lui Pi și am terminat cu acest pas la fel de simplu ca plăcinta (a se vedea clipul).

Conexiune Raspberry Pi și senzor

Luați senzorul și interfațați cablul I2C cu el. Pentru funcționarea adecvată a acestui cablu, vă rugăm să revizuiți I2C Output ÎNTOTDEAUNA preluați cu I2C Input. Același lucru trebuie luat după Raspberry Pi cu scutul I2C montat peste pinii GPIO.

Încurajăm utilizarea cablului I2C, deoarece anulează cerința de disecare a pinouturilor, securizarea și deranjarea realizată chiar de cea mai umilă încurcătură. Cu această asociere semnificativă și cablu de redare, puteți prezenta, schimba înșelăciuni sau adăuga mai multe gadgeturi la o aplicație adecvată. Acest lucru susține greutatea de lucru până la un nivel imens.

Notă: firul maro ar trebui să urmeze în mod fiabil conexiunea la masă (GND) între ieșirea unui dispozitiv și intrarea unui alt dispozitiv

Rețeaua web este cheia

Pentru ca încercarea noastră să câștige, avem nevoie de o conexiune web pentru Raspberry Pi. Pentru aceasta, aveți opțiuni precum interfațarea unei conexiuni Ethernet (LAN) cu rețeaua de domiciliu. Mai mult, ca o opțiune, un curs plăcut este de a utiliza un conector USB WiFi. În general, pentru aceasta, aveți nevoie de un driver pentru a-l face să funcționeze. Deci, înclinați-vă spre cel cu Linux în descriere.

Alimentare electrică

Conectați cablul Micro USB la mufa de alimentare a Raspberry Pi. Punch up și suntem gata.

Conexiune la ecran

Putem avea cablul HDMI conectat la un alt monitor. Uneori, trebuie să ajungeți la un Raspberry Pi fără a-l interfața cu un ecran sau poate fi necesar să vizualizați informații de pe acesta din altă parte. Posibil, există modalități creative și inteligente din punct de vedere fiscal de a face față tuturor lucrurilor luate în considerare. Unul dintre aceștia folosește - SSH (conectare la linie de comandă la distanță). De asemenea, puteți utiliza software-ul PuTTY pentru asta.

Pasul 3: Codificare Python pentru Raspberry Pi

Codificare Python pentru Raspberry Pi
Codificare Python pentru Raspberry Pi

Puteți vizualiza codul Python pentru senzorul Raspberry Pi și AIS328DQTR în depozitul nostru Github.

Înainte de a trece la cod, asigurați-vă că citiți regulile date în arhiva Readme și configurați Raspberry Pi în conformitate cu acesta. Va rămâne doar o clipă pentru a face toate lucrurile luate în considerare.

Un accelerometru este un dispozitiv electromecanic care va măsura forțele de accelerație. Aceste puteri ar putea fi statice, asemănătoare cu forța constantă a gravitației care îți trage picioarele sau ar putea fi modificabile - aduse prin mișcarea sau vibrația accelerometrului.

Mersul este codul python și puteți clona și schimba codul în orice mod către care vă înclinați.

# Distribuit cu o licență de voință liberă. # Folosiți-o în orice mod doriți, profit sau gratuit, cu condiția să se încadreze în licențele lucrărilor sale asociate. # AIS328DQTR # Acest cod este conceput pentru a funcționa cu Mini-modulul AIS328DQTR_I2CS I2C disponibil de pe dcubestore.com # https://dcubestore.com/product/ais328dqtr-high-performance-ultra-low-power-3-axis-accelerometer-with -output-digital-pentru-aplicații-auto-i% C2% B2c-mini-modul /

import smbus

timpul de import

# Ia autobuzul I2C

autobuz = smbus. SMBus (1)

# Adresă AIS328DQTR, 0x18 (24)

# Selectați registrul de control1, 0x20 (32) # 0x27 (39) Mod pornire, selecție viteză date = 50Hz # X, Y, bus Z-Axis enabled.write_byte_data (0x18, 0x20, 0x27) # Adresă AIS328DQTR, 0x18 (24) # Selectați registrul de control4, 0x23 (35) # 0x30 (48) Actualizare continuă, selecție la scară completă = +/- 8G bus.write_byte_data (0x18, 0x23, 0x30)

time.sleep (0,5)

# Adresă AIS328DQTR, 0x18 (24)

# Citește datele înapoi de la 0x28 (40), 2 octeți # X-Axis LSB, X-Axis MSB data0 = bus.read_byte_data (0x18, 0x28) data1 = bus.read_byte_data (0x18, 0x29)

# Convertiți datele

xAccl = data1 * 256 + data0 dacă xAccl> 32767: xAccl - = 65536

# Adresă AIS328DQTR, 0x18 (24)

# Citește datele înapoi de la 0x2A (42), 2 octeți # Axa Y LSB, Axa Y MSB date0 = bus.read_byte_data (0x18, 0x2A) data1 = bus.read_byte_data (0x18, 0x2B)

# Convertiți datele

yAccl = data1 * 256 + data0 dacă yAccl> 32767: yAccl - = 65536

# Adresă AIS328DQTR, 0x18 (24)

# Citiți datele înapoi de la 0x2C (44), 2 octeți # Z-Axis LSB, Z-Axis MSB data0 = bus.read_byte_data (0x18, 0x2C) data1 = bus.read_byte_data (0x18, 0x2D)

# Convertiți datele

zAccl = data1 * 256 + data0 dacă zAccl> 32767: zAccl - = 65536

# Ieșire date pe ecran

print "Accelerare în axa X:% d"% xAccl print "Accelerare în axa Y:% d"% yAccl print "Accelerare în axa Z:% d"% zAccl

Pasul 4: Practicitatea codului

Practicitatea codului
Practicitatea codului

Descărcați (sau git pull) codul de la Github și deschideți-l în Raspberry Pi.

Rulați comenzile pentru a compila și încărca codul în terminal și a vedea randamentul pe ecran. După câteva minute, va afișa fiecare dintre parametri. În urma garantării faptului că totul funcționează fără efort, puteți folosi această întreprindere în fiecare zi sau faceți din această parte o mică parte a unei misiuni mult mai mari. Oricare ar fi nevoile tale, acum ai încă o armă în acumulare.

Pasul 5: Aplicații și caracteristici

Fabricat de STMicroelectronics, accelerometru liniar ultracompact, de înaltă performanță, cu 3 axe, de înaltă performanță, care aparține senzorilor de mișcare. AIS328DQTR este adecvat pentru aplicații precum telematice și cutii negre, navigație în bord, măsurarea înclinării / înclinației, dispozitiv antifurt, economie inteligentă de energie, recunoaștere și înregistrare a impactului, monitorizare și compensare a vibrațiilor și funcții activate de mișcare.

Pasul 6: Concluzie

Dacă v-ați gândit să explorați universul senzorilor Raspberry Pi și I2C, atunci vă puteți șoca utilizând elementele de bază hardware, codare, aranjare, autoritate etc. În această metodă, ar putea exista câteva comisioane care poate fi simplu, în timp ce unii vă pot testa, vă pot emoționa. În orice caz, puteți face o cale și o poate face perfect, schimbând și formând o formație a dvs.

De exemplu, puteți începe cu gândul la un prototip de urmărire a comportamentului pentru a monitoriza și descrie mișcările fizice și pozițiile corpului animalelor cu AIS328DQTR și Raspberry Pi folosind Python. În sarcina de mai sus, am folosit calculele fundamentale ale unui accelerometru. Protocolul este de a crea un sistem de accelerometru împreună cu orice girometru și un GPS și un algoritm de învățare supravegheat (mașină) (suport vector machine (SVM)) pentru identificarea automată a comportamentului animalelor. Aceasta va fi urmată de colectarea măsurătorilor paralele ale senzorilor și evaluarea măsurătorilor utilizând clasificarea suportului vectorial (SVM). Utilizați diferite combinații de măsurători independente (așezat, mers sau alergat) pentru antrenament și validare pentru a determina robustețea prototipului. Vom încerca să realizăm o redare funcțională a acestui prototip mai devreme decât mai târziu, configurația, codul și modelarea funcționează pentru mai multe moduri comportamentale. Credem că tuturor vă place!

Pentru confortul dvs., avem un videoclip fermecător pe YouTube, care vă poate ajuta la examinare. Încrederea în acest efort motivează explorarea în continuare. Începeți de unde sunteți. Folosește ceea ce ai. Fă ce poți.

Recomandat: