Innehållsförteckning:

Spåra accelerationsvariationer med Raspberry Pi och MMA7455 med Python: 6 steg
Spåra accelerationsvariationer med Raspberry Pi och MMA7455 med Python: 6 steg

Video: Spåra accelerationsvariationer med Raspberry Pi och MMA7455 med Python: 6 steg

Video: Spåra accelerationsvariationer med Raspberry Pi och MMA7455 med Python: 6 steg
Video: День Стройки #Лайфхак #Ким #свс Азы Новичкам база знаний #theants Underground Kingdom 2024, November
Anonim
Image
Image

Jag trippade inte, jag testade gravitationen. Det fungerar fortfarande…

En representation av en accelererande rymdfärja klargjorde att en klocka vid pendelns högsta punkt skulle plocka snabbare än en vid basen på grund av gravitationstidsutvidgning. Vissa hävdade att acceleration ombord på skytteln skulle vara densamma för båda klockorna, så de borde kryssa i samma takt. Tänk efter.

Tankar, motivation och till och med riktlinjer kan härröra från var som helst-men när din uppmärksamhet är på innovation får det bidrag från individerna som koncentrerar sig på den punkten. Raspberry Pi, mini, single board Linux PC, erbjuder unika åtaganden och masterråd om arrangemang, programmering och elektronikföretag. I närheten av att vara tillverkare av Raspberry Pi och enheter får vi en kick av chansen att programmera och pyssla och göra häpnadsväckande saker med datavetenskap och elektronik. Vi hade för sent glädjen att ta ett skott på en uppgift med hjälp av en accelerometer och tankarna bakom vad du kan göra med den här prylen är riktigt coola. Så i den här uppgiften kommer vi att införliva MMA7455, en 3-axlig digital accelerometersensor, för att mäta acceleration i 3 dimensioner, X, Y och Z, med Raspberry Pi med Python. Låt oss se om det lönar sig.

Steg 1: Hårdvara vi kräver

Hårdvara vi kräver
Hårdvara vi kräver
Hårdvara vi kräver
Hårdvara vi kräver

Vi vet hur besvärligt det kan vara att försöka ta efter utan att veta vilka delar man ska hämta, var man ska ordna ifrån och hur mycket allt kommer att kosta i förväg. Så vi har gjort allt det arbetet för dig. När du väl har alla delar i kvadrat borde det vara snabbt att göra den här uppgiften. Take after the going with för att få en komplett reservdelslista.

1. Hallon Pi

Det första steget var att skaffa ett Raspberry Pi -kort. Raspberry Pi är en ensam Linux -baserad PC. Den här lilla datorn har en kraftfull effekt när det gäller att registrera makt, som används som en del elektronikövningar och PC -operationer som kalkylblad, ordbehandling, webbsurfing och e -post och spel. Du kan köpa en i vilken elektronik- eller hobbybutik som helst.

2. I2C Shield för Raspberry Pi

Det främsta bekymret Raspberry Pi verkligen saknas är en I2C -port. Så för det ger TOUTPI2 I2C -kontakten dig känslan av att använda Raspberry Pi med ALLA I2C -enheter. Den är tillgänglig på DCUBE Store

3. 3-axlig accelerometer, MMA7455

MMA7455 3-Axis Digital Accelerometer är tillverkad av Freescale Semiconductor, Inc. och är en maskin med mindre effekt som är anpassad för att mäta acceleration längs X-, Y- och Z-axeln. Vi fick denna sensor från DCUBE Store

4. Anslutningskabel

Vi köpte I2C -anslutningskabeln från DCUBE Store

5. Micro USB -kabel

Det minsta intrasslade, dock strängaste när det gäller strömbehov är Raspberry Pi! Det mest föreskrivna och minst krävande tillvägagångssättet för att hantera strategin är genom användning av Micro USB -kabeln. En mer avancerad och specialiserad väg är att ge ström specifikt med hjälp av GPIO- eller USB -portar.

6. Nätverksstöd

Få din Raspberry Pi associerad med en Ethernet -kabel (LAN) och anslut den till ditt hemnätverk. Å andra sidan, sök efter en WiFi -kontakt och använd en av USB -portarna för att komma till fjärranätet. Det är ett skarpt beslut, grundläggande, litet och enkelt!

7. HDMI -kabel/fjärråtkomst

Raspberry Pi har en HDMI -port som du kan ansluta särskilt till en skärm eller TV med en HDMI -kabel. Valfri, du kan använda SSH för att etablera med din Raspberry Pi från en Linux -dator eller Mac från terminalen. På samma sätt låter PuTTY, en gratis och öppen källterminalemulator som en smart tanke.

Steg 2: Ansluta hårdvaran

Ansluta hårdvaran
Ansluta hårdvaran
Ansluta hårdvaran
Ansluta hårdvaran
Ansluta hårdvaran
Ansluta hårdvaran

Gör kretsen som indikeras av den schematiska visade. I schemat ser du anslutningarna av olika elektronikkomponenter, anslutningskablar, strömkablar och I2C -sensor.

Raspberry Pi och I2C Shield Connection

Först och främst, ta Raspberry Pi och se I2C -skölden på den. Tryck på skärmen snyggt över GPIO -stiften på Pi och vi är klara med denna utveckling lika lätt som en paj (se bilden).

Raspberry Pi och sensoranslutning

Ta sensorn och anslut I2C -kabeln med den. För lämplig användning av denna kabel, vänligen granska I2C -utgången tar alltid upp I2C -ingången. Detsamma måste tas efter för Raspberry Pi med I2C -skölden monterad över GPIO -stiften.

Vi rekommenderar att du använder I2C -kabeln eftersom den förnekar kravet på att dissekera pinouts, säkra och besvär som uppnås av även den ödmjukaste röra. Med denna betydande kopplings- och spelkabel kan du presentera, byta ut kontraster eller lägga till fler prylar till en lämplig applikation. Detta stöder arbetsvikten upp till en enorm nivå.

Obs: Den bruna tråden ska på ett tillförlitligt sätt ta efter jordanslutningen (GND) mellan utgången på en enhet och ingången till en annan enhet

Internetåtkomst är nyckeln

För att vår strävan ska bli en vinst kräver vi en internetanslutning för vår Raspberry Pi. För detta har du alternativ som att ansluta ett Ethernet (LAN) till hemnätverket. Som ett alternativ är också en tillfredsställande kurs att använda en WiFi USB -kontakt. I stort sett representerar detta, du behöver en förare för att få det att fungera. Så luta dig mot den med Linux i avgränsningen.

Strömförsörjning

Anslut Micro USB -kabeln till strömuttaget på Raspberry Pi. Punch upp och vi är redo.

Anslutning till skärm

Vi kan ha HDMI -kabeln ansluten till en annan bildskärm/TV. Ibland måste du komma till en Raspberry Pi utan att ansluta den till en skärm eller så kan du behöva visa information från den från någon annanstans. Möjligen finns det kreativa och skattemässigt smarta sätt att hantera att göra allt som övervägs. En av dem använder - SSH (fjärrkommando -inloggning). Du kan också använda PuTTY -programvaran för det.

Steg 3: Python -kodning för Raspberry Pi

Python -kodning för Raspberry Pi
Python -kodning för Raspberry Pi

Du kan se Python -koden för Raspberry Pi och MMA7455 -sensorn i vårt GithubRepository.

Innan du fortsätter med koden, garantera att du läser standarderna som ges i Readme -krönikan och konfigurerar din Raspberry Pi enligt vad som anges av den. Det kommer helt enkelt att lindra en minut att göra mot bakgrund av nuvarande omständigheter.

En accelerometer är en elektromekanisk gadget som mäter accelerationskrafter. Dessa krafter kan vara statiska, liknande den konstanta tyngdkraften som drar vid dina fötter, eller de kan ändras - framkallade genom att flytta eller vibrera accelerometern.

Den som går med är pythonkoden och du kan klona och ändra koden på alla sätt du lutar mot.

# Distribueras med en fri viljelicens.# Använd den hur du vill, vinst eller gratis, förutsatt att den passar in i licenserna för dess associerade verk. # MMA7455L # Den här koden är utformad för att fungera med MMA7455L_I2CS I2C Mini Module tillgänglig från dcubestore.com # https://dcubestore.com/product/mma7455l-3-axis-low-g-digital-output-accelerometer-i%C2 %B2c-mini-modul/

importera smbus

importtid

# Skaffa I2C -buss

buss = smbus. SMBus (1)

# MMA7455L -adress, 0x1D (16)

# Välj lägesregistreringsregister, 0x16 (22) # 0x01 (01) Mätläge, +/- 8g buss. Skriv_byte_data (0x1D, 0x16, 0x01)

tid. sover (0,5)

# MMA7455L -adress, 0x1D (16)

# Läs tillbaka data från 0x00 (00), 6 byte # X-Axis LSB, X-Axis MSB, Y-Axis LSB, Y-Axis MSB, Z-Axis LSB, Z-Axis MSB data = bus.read_i2c_block_data (0x1D, 0x00, 6)

# Konvertera data till 10-bitar

xAccl = (data [1] & 0x03) * 256 + data [0] om xAccl> 511: xAccl -= 1024 yAccl = (data [3] & 0x03) * 256 + data [2] om yAccl> 511: yAccl - = 1024 zAccl = (data [5] & 0x03) * 256 + data [4] om zAccl> 511: zAccl -= 1024

# Mata ut data till skärmen

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

Steg 4: Kodens praktiska egenskaper

Kodens praktiska egenskaper
Kodens praktiska egenskaper

Ladda ner (eller git pull) koden från Github och öppna den i Raspberry Pi.

Kör kommandona för att kompilera och ladda upp koden i terminalen och se avkastningen på skärmen. Efter några minuter visas var och en av parametrarna. I kölvattnet av att se till att allt fungerar enkelt kan du använda denna vandring varje dag eller göra denna vandring till en liten del av en mycket mer framträdande uppgift. Oavsett dina behov har du nu ytterligare ett tillbehör i din samling.

Steg 5: Applikationer och funktioner

MMA7455, tillverkad av Freescale Semiconductor, en lågeffekts högpresterande 3-axlig digital accelerometer kan användas för sensordataändringar, produktorientering och gestdetektering. Den är perfekt för applikationer som mobiltelefon/PMP/PDA: Orienteringsdetektering (stående/liggande), bildstabilitet, textrullning, rörelseuppringning, tryck för att stänga av, bärbar dator: stöldskydd, spel: rörelsedetektering, automatisk väckning/ Sömn för låg strömförbrukning och digital stillbildskamera: bildstabilitet.

Steg 6: Slutsats

Om du har funderat på att utforska universum för Raspberry Pi- och I2C -sensorerna, kan du chocka dig själv genom att använda dig av grundläggande hårdvara, kodning, arrangera, auktoritativ etc. När du försöker vara mer kreativ i din liten satsning, det skadar aldrig att svänga till externa källor. I den här metoden kan det finnas ett par ärenden som kan vara enkla, medan vissa kan testa dig och röra dig. I vilket fall som helst kan du göra ett sätt och felfritt genom att ändra och skapa en bildning av din.

Till exempel kan du börja med tanken på en Gravimeter -prototyp för att mäta jordens lokala gravitationsfält med MMA7455 och Raspberry Pi med Python. I ovanstående satsning har vi använt grundläggande beräkningar. Grundprincipen för design är att mäta mycket små fraktionsförändringar inom jordens gravitation på 1 g. Så du kan använda den här sensorn på olika sätt du kan överväga. Algoritmen är att mäta förändringshastigheten för den vertikala tyngdkraftsvektorn i alla tre vinkelräta riktningar som ger upphov till en gravitationstensor. Det kan härledas genom att skilja tyngdkraftsvärdet på två punkter separerade med ett litet vertikalt avstånd, l, och dividera med detta avstånd. Vi kommer att försöka göra en fungerande återgivning av denna prototyp förr snarare än senare, konfigurationen, koden och modelleringen fungerar för strukturburen buller och vibrationsanalys. Vi tror att ni alla gillar det!

För din tröst har vi en förtrollande video på YouTube som kan hjälpa din undersökning. Lita på att denna strävan leder till ytterligare utredning. Om möjligheten inte knackar, bygg en dörr.

Rekommenderad: