Cuprins:
- Pasul 1: Hardware pe care îl solicităm
- Pasul 2: Conectarea hardware-ului
- Pasul 3: Codificare Python pentru Raspberry Pi
- Pasul 4: Practicitatea codului
- Pasul 5: Aplicații și caracteristici
- Pasul 6: Concluzie
Video: Urmărirea variațiilor de accelerare cu Raspberry Pi și MMA7455 folosind Python: 6 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:43
Nu m-am împiedicat, testam gravitația. Încă funcționează …
O reprezentare a unei navete spațiale accelerate a clarificat că un ceas în cel mai înalt punct al navetei ar alege mai rapid decât unul la bază din cauza expansiunii timpului gravitațional. Unii au susținut că accelerarea la bordul navetei ar fi aceeași pentru ambele ceasuri, așa că ar trebui să bifeze în același ritm. Gândește-te la asta.
Gândurile, motivația și chiar liniile directoare pot proveni din orice loc - totuși, atunci când atenția dvs. este dedicată inovației, ea primește contribuția persoanelor care se concentrează asupra acestui punct. Raspberry Pi, PC-ul Linux cu o singură placă, oferă întreprinderi unice și sfaturi majore privind aranjarea, programarea și proiectele electronice. Aproape, fiind Raspberry Pi și producători de tutoriale pentru dispozitive, obținem o șansă de a șansa de a programa și a face jocuri și de a face lucruri uimitoare cu informatică și electronică. În ultima vreme, am avut bucuria de a face o lovitură la o sarcină folosind un accelerometru și gândurile din spatele a ceea ce ați putea face cu acest gadget sunt cu adevărat interesante. Așadar, în această sarcină, vom încorpora MMA7455, un senzor de accelerometru digital pe 3 axe, pentru a măsura accelerația în 3 dimensiuni, X, Y și Z, cu Raspberry Pi folosind Python. Să vedem dacă merită.
Pasul 1: Hardware pe care îl solicităm
Știm cât de dificil poate fi să încerci și să iei după ce nu știi ce părți să obții, de unde să aranjezi și cât va costa totul în avans. Așa că am făcut toată treaba asta pentru tine. Odată ce aveți toate piesele la patrat, ar trebui să fie o mișcare rapidă pentru a face această sarcină. Luați după ce mergeți pentru a obține o listă completă de piese.
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 și 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 DCUBE
3. Accelerometru cu 3 axe, MMA7455
Produs de Freescale Semiconductor, Inc., accelerometrul digital cu 3 axe MMA7455 este un senzor prelucrat cu putere redusă, la scară mai mică, potrivit pentru măsurarea accelerației de-a lungul axelor X, Y și Z. Am obținut acest senzor de la DCUBE Store
4. Cablu de conectare
Am achiziționat cablul de conectare I2C de la magazinul DUBE
5. Cablu micro USB
Cel mai mic încurcat, cu toate acestea, cel mai strict în ceea ce privește necesitatea energiei este Raspberry Pi! Cea mai prescrisă și mai puțin solicitantă abordare a gestionării strategiei este prin utilizarea cablului Micro USB. O cale mai avansată și specializată este de a oferi energie în mod specific prin intermediul porturilor GPIO sau USB.
6. Suport în rețea
Obțineți Raspberry Pi asociat cu un cablu Ethernet (LAN) și conectați-l la rețeaua dvs. de acasă. 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 pe un ecran sau televizor cu un cablu HDMI. Opțional, puteți utiliza SSH pentru a stabili cu Raspberry Pi de pe un computer Linux sau Mac de la terminal. La fel, PuTTY, un emulator de terminal gratuit și open-source sună ca un gând inteligent.
Pasul 2: Conectarea hardware-ului
Faceți circuitul așa cum este indicat de schema prezentată. În schemă, veți vedea conexiunile diferitelor componente electronice, fire de conectare, cabluri de alimentare și senzor I2C.
Conexiune Raspberry Pi și I2C Shield
Ca o chestiune de primă importanță, luați Raspberry Pi și localizați scutul I2C pe el. Apăsați Shield frumos peste pinii GPIO ai lui Pi și am terminat cu această progresie la fel de ușoară 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.
Vă recomandăm să folosiți cablul I2C, deoarece acesta neagă 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ă ia în mod fiabil după conectarea la masă (GND) între ieșirea unui dispozitiv și intrarea unui alt dispozitiv
Accesul la internet este cheia
Pentru ca efortul nostru să câștige, avem nevoie de o conexiune la Internet pentru Raspberry Pi. Pentru aceasta, aveți alternative precum interfața unei conexiuni Ethernet (LAN) cu rețeaua de domiciliu. De asemenea, ca alternativă, un curs satisfăcător este utilizarea unui conector USB WiFi. În general, reprezentând acest lucru, aveți nevoie de un driver pentru a-l face să funcționeze. Deci, înclinați-vă spre cel cu Linux în delimitare.
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 / televizor. 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 ele 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
Puteți vedea codul Python pentru senzorul Raspberry Pi și MMA7455 în GithubRepository.
Înainte de a continua cu codul, asigurați-vă că citiți standardele date în cronica Readme și configurați Raspberry Pi așa cum este indicat de acesta. Pur și simplu va fi ușurat pentru un minut, în lumina circumstanțelor actuale.
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. # MMA7455L # Acest cod este conceput pentru a funcționa cu Mini-modulul MMA7455L_I2CS I2C disponibil de pe dcubestore.com # https://dcubestore.com/product/mma7455l-3-axis-low-g-digital-output-accelerometer-i%C2 % B2c-mini-modul /
import smbus
timpul de import
# Ia autobuzul I2C
autobuz = smbus. SMBus (1)
# Adresă MMA7455L, 0x1D (16)
# Selectați registrul de control al modului, 0x16 (22) # 0x01 (01) Mod de măsurare, +/- 8g bus.write_byte_data (0x1D, 0x16, 0x01)
time.sleep (0,5)
# Adresă MMA7455L, 0x1D (16)
# Citiți datele înapoi de la 0x00 (00), 6 octeți # Axa X LSB, Axa X MSB, Axa Y LSB, Axa Y MSB, Axa Z LSB, Axa Z MSB data = bus.read_i2c_block_data (0x1D, 0x00, 6)
# Convertiți datele în 10 biți
xAccl = (data [1] & 0x03) * 256 + data [0] if xAccl> 511: xAccl - = 1024 yAccl = (data [3] & 0x03) * 256 + data [2] if yAccl> 511: yAccl - = 1024 zAccl = (date [5] & 0x03) * 256 + date [4] dacă zAccl> 511: zAccl - = 1024
# 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
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 asigurării faptului că totul funcționează ușor, puteți utiliza această rătăcire în fiecare zi sau faceți din această rătăcire o mică parte a unei sarcini mult mai proeminente. Indiferent de nevoile tale, acum ai încă o înșelăciune în adunarea ta.
Pasul 5: Aplicații și caracteristici
MMA7455, fabricat de Freescale Semiconductor, un accelerometru digital cu 3 axe de înaltă performanță, de înaltă performanță, poate fi utilizat pentru modificări ale datelor senzorului, orientarea produsului și detectarea gesturilor. Este perfect pentru aplicații precum Telefon mobil / PMP / PDA: Detecție orientare (Portret / Peisaj), Stabilitate imagine, Derulare text, Apelare mișcare, Apăsați pentru a dezactiva, Laptop PC: Antifurt, Jocuri: Detecție mișcare, Auto-Wake / Sleep pentru consum redus de energie și cameră foto digitală: stabilitate a imaginii.
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. Când încercați să fiți mai creativi în mică aventură, nu dăunează niciodată să te orientezi către surse exterioare. În această metodă, ar putea exista câteva comisioane care ar putea fi simple, în timp ce unii vă pot testa, vă vor mișca. Î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 Gravimetru pentru a măsura Câmpul Gravitațional Local al Pământului cu MMA7455 și Raspberry Pi folosind Python. În cadrul proiectului de mai sus, am folosit calcule fundamentale. Principiul de bază al proiectării este de a măsura modificări fracționare foarte mici în greutatea Pământului de 1 g. Așadar, puteți utiliza acest senzor în diferite moduri pe care le puteți lua în considerare. Algoritmul este de a măsura rata de schimbare a vectorului gravitației verticale în toate cele trei direcții perpendiculare, dând naștere unui tensor gradient de gravitație. Poate fi dedus prin diferențierea valorii gravitației în două puncte separate de o mică distanță verticală, l și împărțirea la această distanță. 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 analiza zgomotului și vibrațiilor suportate de structură. Credem că tuturor vă place!
Pentru consola dvs., avem un videoclip încântător pe YouTubew care vă poate ajuta la examinare. Încredeți-vă în acest efort, urmărind investigații suplimentare. Dacă ocazia nu bate, construiește o ușă.
Recomandat:
Urmărirea mișcării folosind MPU-6000 și Arduino Nano: 4 pași
Urmărirea mișcării utilizând MPU-6000 și Arduino Nano: MPU-6000 este un senzor de urmărire a mișcării pe 6 axe, care are încorporat accelerometru pe 3 axe și giroscop cu 3 axe. Acest senzor este capabil să urmărească eficient poziția și locația exactă a unui obiect în planul tridimensional. Poate fi folosit în
Urmărirea feței folosind ARDUINO !!!: 7 pași
Urmărirea feței utilizând ARDUINO !!!: Într-o instruire anterioară am împărtășit cum puteți comunica între Arduino și Python folosind modulul „pyserial” și cum puteți controla un LED. Dacă nu l-ați văzut, verificați-l aici: COMUNICARE ÎNTRE ARDUINO & PITON! Și cum poți detecta culoarea o
Urmărirea mișcării folosind MPU-6000 și Raspberry Pi: 4 pași
Urmărirea mișcării folosind MPU-6000 și Raspberry Pi: MPU-6000 este un senzor de urmărire a mișcării pe 6 axe care are încorporat accelerometru pe 3 axe și giroscop cu 3 axe. Acest senzor este capabil să urmărească eficient poziția și locația exactă a unui obiect în planul tridimensional. Poate fi folosit în
DIY Smart Robot Urmărirea truselor de mașini Urmărirea mașinii fotosensibile: 7 pași
DIY Smart Robot Tracking Car Kits Tracking Car Photosensitive: Design by SINONING ROBOT Puteți cumpăra de la robotul de urmărire Teoria LM393 cip comparați cei doi fotorezistenți, când există un LED fotorezistor lateral pe ALB, partea motorului se va opri imediat, cealaltă parte a motorului răsuciți, astfel încât
Modificare Jeep - Accelerare cu buton: 7 pași
Modificare Jeep - Accelerare cu buton: DISCLAIMER: Barstow School și echipa FRC 1939 sau oricare dintre membrii săi nu sunt responsabili pentru vătămările aduse vreunei persoane sau daunele aduse obiectelor, inclusiv mașinii, cauzate de modificări. Orice tip de modificare va anula, de asemenea, garanția