Indholdsfortegnelse:

Overvågning af acceleration ved hjælp af Raspberry Pi og AIS328DQTR Brug af Python: 6 trin
Overvågning af acceleration ved hjælp af Raspberry Pi og AIS328DQTR Brug af Python: 6 trin

Video: Overvågning af acceleration ved hjælp af Raspberry Pi og AIS328DQTR Brug af Python: 6 trin

Video: Overvågning af acceleration ved hjælp af Raspberry Pi og AIS328DQTR Brug af Python: 6 trin
Video: ZEITGEIST: MOVING FORWARD | OFFICIAL RELEASE | 2011 2024, November
Anonim
Image
Image

Acceleration er begrænset, tror jeg ifølge nogle fysiske love.- Terry Riley

En gepard udnytter fantastisk acceleration og hurtige hastighedsændringer, når de jagter. Det hurtigste væsen i land en gang imellem udnytter sit øverste tempo til at fange bytte. Skabningerne får denne hastighed ved at anvende næsten fem gange mere effekt end Usain Bolts midt i hans rekordstore 100 m løb.

I øjeblikket kan enkeltpersoner ikke forestille sig deres eksistens uden innovation. Omkring os hjælper forskellige innovationer mennesker med at fortsætte deres eksistens med mere ekstravagance. Raspberry Pi, mini, single board Linux PC, giver en billig og respektabel base for elektroniske bestræbelser og banebrydende fremskridt som IoT, Smart Cities og School Education. Som computer- og gadgets -fans har vi taget et betydeligt mål med Raspberry Pi og valgt at blande vores interesser. Så hvad er de mulige resultater, hvad vi kan gøre, hvis vi har en Raspberry Pi og et 3-akset accelerometer i nærheden? I denne opgave vil vi inkorporere AIS328DQTR, en digital 3-akset MEMS lineær accelerometer sensor, til måling af acceleration i 3 retninger, X, Y og Z, med Raspberry Pi ved hjælp af Python. Det er værd at undersøge.

Trin 1: Hardware, vi har brug for

Hardware vi har brug for
Hardware vi har brug for
Hardware vi har brug for
Hardware vi har brug for

Problemerne var mindre for os, da vi har en enorm mængde ting, der ligger og arbejder ud fra. Under alle omstændigheder ved vi, hvordan det er besværligt for andre at afsætte den rigtige del i perfekt tid fra det stærke sted, og det er beskyttet med lidt varsel til hver krone. Så vi ville hjælpe dig.

1. Hindbær Pi

Det første trin var at få et Raspberry Pi -bord. Raspberry Pi er en enslig board Linux -baseret pc. Denne lille pc giver et slag til at registrere strøm, der bruges som et stykke elektronikøvelser og pc -operationer som regneark, tekstbehandling, websurfing og e -mail og spil. Du kan købe en i enhver elektronik- eller hobbybutik.

2. I2C Shield til Raspberry Pi

Den primære bekymring, Raspberry Pi virkelig mangler, er en I2C -port. Så til det giver TOUTPI2 I2C -stikket dig følelsen af at bruge Raspberry Pi med ALLE I2C -enheder. Den er tilgængelig i DCUBE Store

3. 3-akset accelerometer, AIS328DQTR

AIS328DQTR, der tilhører STMicroelectronics-bevægelsessensorer, er et ultra-laveffekt højtydende 3-akset lineært accelerometer med en digital seriel interface SPI-standardudgang. Vi købte denne sensor fra DCUBE Store

4. Tilslutningskabel

Vi købte I2C -tilslutningskablet fra DCUBE Store

5. Micro USB -kabel

Den ydmygeste forvirrede, men alligevel strengest i omfanget af strømbehov er Raspberry Pi! Den mest enkle måde at håndtere spilplanen er ved brug af Micro USB -kablet. GPIO -ben eller USB -porte kan på samme måde bruges til at give rigelig strømforsyning.

6. Webadgang er et behov

Få din Raspberry Pi tilknyttet et Ethernet (LAN) kabel og tilslut den til dit netværk. På den anden side skal du scanne efter et WiFi -stik og bruge en af USB -portene til at komme til fjernnetværket. Det er en skarp beslutning, grundlæggende, lidt og enkel!

7. HDMI -kabel/fjernadgang

Raspberry Pi har en HDMI -port, som du især kan tilslutte til en skærm eller et tv med et HDMI -kabel. Valgfri, du kan bruge SSH til at hente din Raspberry Pi fra en Linux -pc eller Macintosh fra terminalen. PuTTY, en gratis og open source terminalemulator lyder også som et ikke så dårligt valg.

Trin 2: Tilslutning af hardwaren

Tilslutning af hardware
Tilslutning af hardware
Tilslutning af hardware
Tilslutning af hardware
Tilslutning af hardware
Tilslutning af hardware

Lav kredsløbet som angivet af den skematiske dukkede op. I grafen ser du de forskellige dele, strømfragmenter og I2C -sensor.

Raspberry Pi og I2C Shield -forbindelse

Vigtigst af alt, tag Raspberry Pi og få øje på I2C Shield på den. Tryk forsigtigt på skjoldet over GPIO -benene på Pi, og vi er færdige med dette trin lige så enkelt som tærte (se snap).

Hindbær Pi og sensorforbindelse

Tag sensoren og tilslut I2C -kablet med det. For den korrekte betjening af dette kabel, bedes du læse I2C Output tager altid op med I2C Input. Det samme skal tages efter for Raspberry Pi med I2C -skjoldet monteret over GPIO -benene.

Vi opfordrer til brug af I2C -kablet, da det ophæver kravet om dissekering af pinouts, sikring og besvær, der udføres af selv det ydmygeste rod. Med denne betydningsfulde tilknytning og afspilningskabel kan du præsentere, bytte udstyr eller tilføje flere gadgets til en passende applikation. Dette understøtter arbejdsvægten op til et enormt niveau.

Bemærk: Den brune ledning bør pålideligt følge jordforbindelsen (GND) mellem output fra en enhed og input fra en anden enhed

Webnetværk er nøglen

For at gøre vores forsøg til en sejr, kræver vi en internetforbindelse til vores Raspberry Pi. Til dette har du muligheder som at tilslutte et Ethernet (LAN) tilslutning til hjemmenetværket. Desuden er det som en mulighed et behageligt kursus at bruge et WiFi USB -stik. Generelt for dette kræver du en chauffør for at få det til at fungere. Så læne dig mod den med Linux i skildringen.

Strømforsyning

Sæt Micro USB -kablet i strømstikket på Raspberry Pi. Slå op, og vi er klar.

Tilslutning til skærm

Vi kan have HDMI -kablet tilsluttet en anden skærm. Nogle gange er du nødt til at komme til en Raspberry Pi uden at have en grænseflade på en skærm, eller du skal muligvis se oplysninger fra den andre steder. Muligvis er der kreative og finanspolitisk kloge måder at håndtere at gøre alt taget i betragtning. En af dem bruger - SSH (fjernkommandolinje -login). Du kan ligeledes bruge PuTTY -softwaren til det.

Trin 3: Python -kodning til Raspberry Pi

Python -kodning til Raspberry Pi
Python -kodning til Raspberry Pi

Du kan se Python -koden til Raspberry Pi og AIS328DQTR -sensoren i vores Github -depot.

Inden du går videre til koden, skal du sørge for at læse reglerne i Readme -arkivet og konfigurere din Raspberry Pi i henhold til den. Det vil bare hvile et øjeblik for at gøre alt taget i betragtning.

Et accelerometer er en elektromekanisk gadget, der måler accelerationskræfter. Disse kræfter kan være statiske, svarende til den konstante tyngdekraft, der trækker ved dine fødder, eller de kan ændres - forårsaget af bevægelse eller vibration af accelerometeret.

Den går med er python -koden, og du kan klone og ændre koden på enhver måde, du hælder mod.

# Distribueret med en fri vilje-licens.# Brug den, som du vil, profit eller gratis, forudsat at den passer ind i licenserne til de tilhørende værker. # AIS328DQTR # Denne kode er designet til at fungere med AIS328DQTR_I2CS I2C Mini Module tilgængelig fra dcubestore.com # https://dcubestore.com/product/ais328dqtr-high-performance-ultra-low-power-3-axis-accelerometer-with -digital-output-til-automotive-applikationer-i%C2%B2c-mini-modul/

import smbus

importtid

# Få I2C -bus

bus = smbus. SMBus (1)

# AIS328DQTR adresse, 0x18 (24)

# Vælg kontrolregister1, 0x20 (32) # 0x27 (39) Tændt-tilstand, valg af datahastighed = 50Hz # X, Y, Z-akse aktiveret bus.write_byte_data (0x18, 0x20, 0x27) # AIS328DQTR-adresse, 0x18 (24) # Vælg kontrolregister4, 0x23 (35) # 0x30 (48) Kontinuerlig opdatering, valg i fuld skala = +/- 8G bus.write_byte_data (0x18, 0x23, 0x30)

time.sleep (0,5)

# AIS328DQTR adresse, 0x18 (24)

# Læs data tilbage fra 0x28 (40), 2 bytes # X-Axis LSB, X-Axis MSB data0 = bus.read_byte_data (0x18, 0x28) data1 = bus.read_byte_data (0x18, 0x29)

# Konverter dataene

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

# AIS328DQTR adresse, 0x18 (24)

# Læs data tilbage fra 0x2A (42), 2 bytes # Y-Axis LSB, Y-Axis MSB data0 = bus.read_byte_data (0x18, 0x2A) data1 = bus.read_byte_data (0x18, 0x2B)

# Konverter dataene

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

# AIS328DQTR adresse, 0x18 (24)

# Læs data tilbage fra 0x2C (44), 2 bytes # Z-Axis LSB, Z-Axis MSB data0 = bus.read_byte_data (0x18, 0x2C) data1 = bus.read_byte_data (0x18, 0x2D)

# Konverter dataene

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

# Output data til skærmen

print "Acceleration i X-Axis: %d" %xAccl print "Acceleration i Y-Axis: %d" %yAccl print "Acceleration i Z-Axis: %d" %zAccl

Trin 4: Det praktiske i koden

Kodeksens praktiske egenskaber
Kodeksens praktiske egenskaber

Download (eller git pull) koden fra Github, og åbn den i Raspberry Pi.

Kør kommandoerne for at kompilere og uploade koden i terminalen og se udbyttet på skærmen. Efter flere minutter viser det hver en af parametrene. I kølvandet på at garantere, at alt fungerer ubesværet, kan du bruge dette projekt hver dag eller gøre dette projekt til en lille del af en meget større opgave. Uanset dine behov har du nu endnu en ting i din akkumulering.

Trin 5: Applikationer og funktioner

Fremstillet af STMicroelectronics, ultrakompakt laveffekt højeffektive 3 aksede lineært accelerometer, der tilhører bevægelsessensorerne. AIS328DQTR er velegnet til applikationer såsom telematik og sorte bokse, In-Dash bilnavigation, måling af skråning / hældning, tyverisikringsenhed, intelligent energibesparelse, slaggenkendelse og logning, vibrationsovervågning og kompensation og bevægelsesaktiverede funktioner.

Trin 6: Konklusion

Hvis du har overvejet at udforske universet i Raspberry Pi og I2C -sensorerne, kan du chokere dig selv ved at bruge hardware -grundlæggende, kodning, arrangering, autoritativ osv. I denne metode kan der være et par ærinder, der kan være ligetil, mens nogle kan teste dig, flytte dig. Under alle omstændigheder kan du lave en måde og fejlfri den ved at ændre og lave din formation.

For eksempel kan du begynde med tanken om en adfærdstracker -prototype til at overvåge og skildre dyrs fysiske bevægelser og kropsholdninger med AIS328DQTR og Raspberry Pi ved hjælp af Python. I ovenstående opgave har vi brugt grundlæggende beregninger af et accelerometer. Protokollen er at oprette et system af accelerometer sammen med ethvert Gyrometer og en GPS og en overvåget (maskine) indlæringsalgoritme (supportvektormaskine (SVM)) til automatiseret adfærdsidentifikation af dyr. Dette efterfølges af indsamling af parallelle sensormålinger og evaluering af målingerne ved hjælp af understøttelsesvektormaskine (SVM) klassificering. Brug forskellige kombinationer af uafhængige målinger (siddende, gående eller løbende) til træning og validering til at bestemme prototypens robusthed. Vi vil forsøge at lave en fungerende gengivelse af denne prototype før snarere end senere, konfigurationen, koden og modelleringen fungerer til mere adfærdsmæssige tilstande. Vi tror på at alle kan lide det!

For din komfort har vi en charmerende video på YouTube, som kan hjælpe din undersøgelse. Tillid til dette forsøg motiverer til yderligere udforskning. Start hvor du er. Brug hvad du har. Gør hvad du kan.

Anbefalede: