INHOUDSOPGAWE:

Bewegingsbeheer met Framboos Pi en LIS3DHTR, 3-as versnellingsmeter, met behulp van Python: 6 stappe
Bewegingsbeheer met Framboos Pi en LIS3DHTR, 3-as versnellingsmeter, met behulp van Python: 6 stappe

Video: Bewegingsbeheer met Framboos Pi en LIS3DHTR, 3-as versnellingsmeter, met behulp van Python: 6 stappe

Video: Bewegingsbeheer met Framboos Pi en LIS3DHTR, 3-as versnellingsmeter, met behulp van Python: 6 stappe
Video: Hierom is bewegingsbestuur belangrik 2024, November
Anonim
Image
Image
Basiese hardeware wat ons benodig
Basiese hardeware wat ons benodig

Skoonheid omring ons, maar gewoonlik moet ons in 'n tuin loop om dit te weet. - Rumi

As die opgevoede groep wat ons blykbaar is, belê ons die oorgrote meerderheid van ons energie voor ons rekenaars en selfone. Daarom laat ons ons welstand gereeld die sekondêre sitkamer inneem, en vind nooit werklik 'n ideale geleentheid om na die gimnasium of 'n fiksheidsklas te gaan nie en kies ons gewoonlik kitskos oor baie voordeliger keuses. Die opbouende nuus is of u net hulp nodig het met die byhou van rekords of om u vordering te monitor; u kan vandag se innovasie gebruik om 'n apparaat te vervaardig om u te help.

Tegnologie ontwikkel vinnig. Konsekwent vind ons nuwe innovasie wat die wêreld en die manier waarop ons daarin leer, verander. As u van rekenaars, kodering en robotte hou of net daarvan hou om te knibbel, is daar 'n tegniese seën. Raspberry Pi, die mikro -enkelbord -Linux -rekenaar, is toegewy aan die verbetering van die manier waarop u leer met die innoverende tegnologie, maar ook die sleutel tot die verbetering van opvoedingsleer oor die hele wêreld. Wat is die moontlike resultate wat ons kan doen as ons 'n Framboos Pi en 'n 3-as versnellingsmeter in die buurt het? Hoe gaan dit met ons! In hierdie taak kyk ons na die versnelling op 3 loodregte asse, X, Y en Z met behulp van Raspberry Pi en LIS3DHTR, 'n 3-as versnellingsmeter. Ons moet dus op hierdie reis kyk na 'n stelsel om die 3-dimensionele versnelling of G-Force na te gaan.

Stap 1: Basiese hardeware wat ons benodig

Basiese hardeware wat ons benodig
Basiese hardeware wat ons benodig
Basiese hardeware wat ons benodig
Basiese hardeware wat ons benodig

Die kwessies was vir ons minder, want ons het 'n groot hoeveelheid goed om rond te werk. Ons weet in elk geval hoe moeilik dit is vir ander om op 'n onberispelike tyd die regte deel bymekaar te kry, en dit word verdedig deur min aandag aan elke sent te gee. Ons sal u dus help. Volg die meegaande om 'n volledige onderdele lys te kry.

1. Framboos Pi

Die eerste stap was om 'n Raspberry Pi -bord te kry. Die Raspberry Pi is 'n enkelbord-gebaseerde Linux-rekenaar. Hierdie klein rekenaar het 'n groot mate van rekenaarkrag, wat gebruik word as deel van gadgets -aktiwiteite, en eenvoudige operasies soos sigblaaie, woordvoorbereiding, webskandering en e -pos en speletjies.

2. I2C -skild vir Framboos Pi

Die belangrikste punt dat die Raspberry Pi werklik afwesig is, is 'n I²C -poort. Die TOUTPI2 I²C -aansluiting gee u die rede om Rasp Pi te gebruik met ELKE I²C -toestelle. Dit is beskikbaar in DCUBE Store

3. 3-as versnellingsmeter, LIS3DHTR

Die LIS3DH is 'n ultra-lae-krag hoëprestasie drie-as lineêre versnellingsmeter wat tot die "nano" -familie behoort, met 'n digitale I2C/SPI-seriële koppelvlak standaarduitset. Ons het hierdie sensor by DCUBE Store aangeskaf

4. Aansluitkabel

Ons het die I2C -aansluitkabel by DCUBE Store aangeskaf

5. Mikro -USB -kabel

Die kleinste verbouereerde, maar tog die strengste in die mate wat krag nodig is, is die Raspberry Pi! Die maklikste manier om dit te hanteer, is deur die gebruik van die mikro -USB -kabel.

6. Webtoegang is 'n behoefte

INTERNET -kinders slaap NOOIT

Verbind u Raspberry Pi met 'n Ethernet -kabel (LAN) en koppel dit aan u netwerkrouter. Verkieslik, soek 'n WiFi -aansluiting en gebruik een van die USB -poorte om na die afstandstelsel te kom. Dit is 'n skerp besluit, eenvoudig, min en slordig!

7. HDMI -kabel/afstandtoegang

Die Raspberry Pi het 'n HDMI -poort wat u spesifiek met 'n HDMI -kabel op 'n skerm of TV kan koppel. Verkieslik, u kan SSH gebruik om met u Raspberry Pi te assosieer vanaf 'n Linux -rekenaar of Macintosh vanaf die terminale. PuTTY, 'n gratis en open-source terminale emulator, klink ook na 'n goeie alternatief.

Stap 2: Koppel die hardeware aan

Koppel die hardeware
Koppel die hardeware
Koppel die hardeware
Koppel die hardeware
Koppel die hardeware
Koppel die hardeware

Maak die stroombaan volgens die skematiese verskyn. Stel 'n diagram op en neem die uiteensetting presies na. Verbeelding is belangriker as kennis.

Verbinding van die Raspberry Pi en I2C Shield

Bo alles, neem die Raspberry Pi en sien die I2C -skild daarop. Druk die Shield delikaat oor die GPIO -penne van Pi, en ons is klaar met hierdie progressie so eenvoudig soos tert (sien die snap).

Aansluiting van die sensor en Framboos Pi

Neem die sensor en koppel die I2C -kabel daarmee. Onthou altyd dat die I2C -uitvoer altyd verband hou met die I2C -invoer vir die korrekte werking van hierdie kabel. Dieselfde moet gevolg word vir die Raspberry Pi met die I2C -skild daaroor, die GPIO -penne.

Ons onderskryf die gebruik van die I2C-kabel, aangesien dit die noodsaaklikheid vir die ondersoek van pinouts, bevestiging en ongemak wat selfs deur die kleinste opskroefing ontken word, ontken. Met hierdie fundamentele aanhegsel- en speelkabel kan u gadgets voorstel, uitruil of meer gadgets effektief by 'n toepassing voeg. Dit vergemaklik die werkgewig tot 'n aansienlike vlak.

Let wel: Die bruin draad behoort betroubaar die grondverbinding (GND) tussen die uitset van een toestel en die ingang van 'n ander toestel te volg

Webnetwerk is die sleutel

Om ons strewe te wen, benodig ons 'n internetvereniging vir ons Raspberry Pi. Hiervoor het u keuses soos om 'n Ethernet (LAN) kabel aan te sluit by die tuisnetwerk. As alternatief, as 'n alternatief, is 'n aangename kursus ook om 'n WiFi USB -aansluiting te gebruik. As 'n reël hiervoor benodig u 'n bestuurder om dit te laat werk. Neig dus na die een met Linux in die beskrywing.

Kragtoevoer

Steek die mikro -USB -kabel in die kragaansluiting van die Raspberry Pi. Maak vas en ons is gereed.

Koppel aan skerm

Ons kan die HDMI -kabel met 'n ander skerm verbind. In sommige gevalle moet u by 'n Raspberry Pi uitkom sonder om dit op 'n skerm te koppel, of u moet data van elders af sien. Daar is moontlik innovatiewe en finansieel vaardige benaderings om dit as sodanig te doen. Een daarvan is die gebruik van -SSH (afstandsbedienings op die opdraglyn). U kan ook die PUTTY -sagteware daarvoor gebruik. Dit is vir gevorderde gebruikers. Die besonderhede is dus nie hier ingesluit nie.

Stap 3: Python -kodering vir Framboos Pi

Python -kodering vir Framboos Pi
Python -kodering vir Framboos Pi

Die Python -kode vir die Raspberry Pi en LIS3DHTR -sensor is toeganklik in ons GithubRepository.

Voordat u met die kode gaan, moet u die reëls wat in die Readme -argief gegee word, lees en die Raspberry Pi daarvolgens opstel. Dit sal net 'n oomblik rus om alles in ag te neem.

'N Versnellingsmeter is 'n elektromeganiese apparaat wat versnellingskragte kan meet. Hierdie kragte kan staties wees, soortgelyk aan die konstante swaartekrag wat aan u voete trek, of dit kan veranderbaar wees - veroorsaak deur die versnelling van die versnellingsmeter.

Die meegaande is die python -kode en u kan die kode kloon en aanpas op enige manier waarheen u neig.

# Versprei met 'n vrywillige lisensie.# Gebruik dit op enige manier wat u wil, wins of gratis, mits dit in die lisensies van die gepaardgaande werke pas. # LIS3DHTR # Hierdie kode is ontwerp om te werk met die LIS3DHTR_I2CS I2C Mini Module beskikbaar by dcubestore.com # https://dcubestore.com/product/lis3dhtr-3-axis-accelerometer-digital-output-motion-sensor-i%C2 %B2c-mini-module/

invoer smbus

invoer tyd

# Kry I2C -bus

bus = smbus. SMBus (1)

# LIS3DHTR -adres, 0x18 (24)

# Kies kontroleregister1, 0x20 (32) # 0x27 (39) Inskakelingsmodus, Datatempo-seleksie = 10 Hz # X, Y, bus met Z-as geaktiveer. Skryf_byte_data (0x18, 0x20, 0x27) # LIS3DHTR-adres, 0x18 (24) # Kies kontroleregister4, 0x23 (35) # 0x00 (00) Deurlopende opdatering, volskaalse keuse = +/- 2G bus.write_byte_data (0x18, 0x23, 0x00)

tyd. slaap (0,5)

# LIS3DHTR -adres, 0x18 (24)

# Lees data terug van 0x28 (40), 2 grepe # X-Axis LSB, X-Axis MSB data0 = bus.read_byte_data (0x18, 0x28) data1 = bus.read_byte_data (0x18, 0x29)

# Skakel die data om

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

# LIS3DHTR -adres, 0x18 (24)

# Lees data terug van 0x2A (42), 2 grepe # Y-as LSB, Y-as MSB-data0 = bus.read_byte_data (0x18, 0x2A) data1 = bus.read_byte_data (0x18, 0x2B)

# Skakel die data om

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

# LIS3DHTR -adres, 0x18 (24)

# Lees data terug van 0x2C (44), 2 grepe # Z-Axis LSB, Z-Axis MSB data0 = bus.read_byte_data (0x18, 0x2C) data1 = bus.read_byte_data (0x18, 0x2D)

# Skakel die data om

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

# Uitset data na die skerm

print "Versnelling in X-as: %d" %xAccl druk "Versnelling in Y-as: %d" %yAccl druk "Versnelling in Z-as: %d" %zAccl

Stap 4: Die werkbaarheid van die kode

Die werkbaarheid van die kode
Die werkbaarheid van die kode

Laai die kode van Github af (of trek dit af) en maak dit oop in die Raspberry Pi.

Voer die opdragte uit om die kode in die terminale op te stel en op te laai en sien die opbrengs op die skerm. Na 'n paar minute sal dit elkeen van die parameters demonstreer. As gevolg van die waarborg dat alles moeiteloos werk, kan u hierdie waag na 'n meer noemenswaardige onderneming neem.

Stap 5: Toepassings en funksies

Die LIS3DHTR is vervaardig deur STMicroelectronics en het dinamiese gebruikersskaalbare skale van ± 2g/± 4g/± 8g/± 16g en is in staat om versnellings te meet met uitsetdatatempo's van 1Hz tot 5kHz. Die LIS3DHTR is geskik vir bewegings geaktiveerde funksies en vryvalopsporing. Dit kwantifiseer die statiese versnelling van swaartekrag in kantelopsporingstoepassings, en daarbenewens kom dinamiese versnelling voor as gevolg van beweging of skok. Ander toepassings sluit in: klik-/dubbelklikherkenning, intelligente kragbesparing vir draagbare toestelle, stappenteller, vertoonoriëntering, invoertoestelle vir speletjies en virtuele realiteit, impakherkenning en aanmelding en trillingmonitering en kompensasie.

Stap 6: Gevolgtrekking

Vertrou dat hierdie onderneming verdere eksperimentering veroorsaak. Hierdie I2C -sensor is fenomenaal aanpasbaar, beskeie en beskikbaar. Aangesien dit in 'n ongelooflike mate onbestendige raamwerk is, is daar interessante maniere waarop u hierdie opdrag kan uitbrei en selfs kan verbeter.

U kan byvoorbeeld begin met die idee van 'n stappenteller met behulp van die LIS3DHTR en Raspberry Pi. In die bogenoemde taak het ons fundamentele berekeninge gebruik. Versnelling kan die relevante parameter wees om die beslissing tydens die loop te analiseer. U kan die drie komponente van beweging na 'n individu kyk wat vorentoe is (rol, X), sy (toonhoogte, Y) en vertikaal (kromas, Z). 'N Tipiese patroon van al 3 asse word aangeteken. Ten minste 1 as sal relatief groot periodieke versnellingswaardes hê. Piekrigting en 'n algoritme is dus noodsaaklik. Met inagneming van stappe Parameter (Digitale Filter, Piekopsporing, Tydvenster, ens.) Van hierdie algoritme, kan u stappe herken en tel, asook afstand, spoed en tot 'n mate verbrande kalorieë meet. U kan hierdie sensor dus op verskillende maniere gebruik. Ons vertrou dat u almal daarvan hou! Ons sal probeer om die stappenteller vroeër as later 'n werkende weergawe te maak, die konfigurasie, die kode, die deel wat die middele bereken om loop en hardloop en kalorieë verbrand te skei.

Vir u vertroosting het ons 'n interessante video op YouTube wat u kan help ondersoek. Vertrou hierdie onderneming motiveer verdere verkenning. Gaan voort om te dink! Onthou om na te kyk, want daar kom meer en meer aan.

Aanbeveel: