Innehållsförteckning:

Rörelsekontroll med Raspberry Pi och LIS3DHTR, 3-axlig accelerometer, med Python: 6 steg
Rörelsekontroll med Raspberry Pi och LIS3DHTR, 3-axlig accelerometer, med Python: 6 steg

Video: Rörelsekontroll med Raspberry Pi och LIS3DHTR, 3-axlig accelerometer, med Python: 6 steg

Video: Rörelsekontroll med Raspberry Pi och LIS3DHTR, 3-axlig accelerometer, med Python: 6 steg
Video: СМОТРИМ ВОВРЕМЯ! Реабилитация после инсульта, начиная с первых часов, 1/2 часть 2024, November
Anonim
Image
Image
Grundläggande hårdvara vi kräver
Grundläggande hårdvara vi kräver

Skönhet omger oss, men vanligtvis måste vi gå i en trädgård för att veta det. - Rumi

Som den utbildade gruppen som vi verkar vara investerar vi den stora majoriteten av vår energi i att arbeta före våra datorer och mobiltelefoner. Därför låter vi ofta vårt välbefinnande ta den sekundära loungen, utan att hitta ett perfekt tillfälle att gå till gymmet eller träna och som regel välja snabbmat framför mycket mer fördelaktiga val. Den upplyftande nyheten är om allt du behöver är lite hjälp med journalföring eller för att övervaka dina framsteg. Du kan använda dagens innovation för att tillverka någon gadget för att hjälpa dig själv.

Tekniken utvecklas snabbt. Genomgående får vi vind av ny innovation som kommer att förändra världen och hur vi lär oss den. När du är intresserad av datorer, kodning och robotar eller bara gillar att pyssla, finns det en teknisk välsignelse där ute. Raspberry Pi, den enda Linux -datorn med en enda platta, är dedikerad till att förbättra sättet du lär dig med den innovativa tekniken men också nyckeln till att förbättra utbildningsinlärning runt om i världen. Så vad är de möjliga resultaten av vad vi kan göra om vi har en Raspberry Pi och en 3-axlig accelerometer i närheten? Vad sägs om vi hittar det här! I denna uppgift kommer vi att kontrollera accelerationen på 3 vinkelräta axlar, X, Y och Z med Raspberry Pi och LIS3DHTR, en 3-axlig accelerometer. Så vi borde se på denna resa för att skapa ett system för att kontrollera den tredimensionella accelerationen upp eller G-Force.

Steg 1: Grundläggande hårdvara som vi kräver

Grundläggande hårdvara vi kräver
Grundläggande hårdvara vi kräver
Grundläggande hårdvara vi kräver
Grundläggande hårdvara vi kräver

Problemen var mindre för oss eftersom vi har en enorm mängd saker som ligger och jobbar utifrån. I alla fall vet vi hur det är besvärligt för andra att samla rätt del i obefläckad tid från den hjälpsamma platsen och det försvaras med liten hänsyn till varje krona. Så vi skulle hjälpa dig. Följ den medföljande 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 Linux-baserad PC med ett kort. Den här lilla datorn ger kraft i datorkraften, som används som en del av gadgetsaktiviteter och enkla funktioner som kalkylblad, ordförberedelse, webbsökning och e -post och spel.

2. I2C Shield för Raspberry Pi

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

3. 3-axlig accelerometer, LIS3DHTR

LIS3DH är en högeffektiv treaxlig linjär accelerationsmätare som hör till "nano" -familjen och har ett digitalt I2C/SPI-seriellt gränssnitt som standardutgång. Vi köpte den här sensorn från DCUBE Store

4. Anslutningskabel

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

5. Micro USB -kabel

Den minsta förvirrade, men ändå strängaste i den mån strömbehovet är Raspberry Pi! Det enklaste sättet att hantera är med hjälp av Micro USB -kabeln.

6. Webbåtkomst är ett behov

INTERNET -barn sover ALDRIG

Anslut din Raspberry Pi till en Ethernet -kabel (LAN) och anslut den till din nätverksrouter. Valfri, sök efter en WiFi -kontakt och använd en av USB -portarna för att komma till fjärrsystemet. Det är ett angeläget beslut, enkelt, litet och busigt!

7. HDMI -kabel/fjärråtkomst

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

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 enligt schematisk framträdde. Rita upp ett diagram och följ konturen exakt. Fantasi är viktigare än kunskap.

Anslutning av Raspberry Pi och I2C Shield

Framför allt annat, ta Raspberry Pi och upptäck I2C -skölden på den. Tryck på skärmen försiktigt över GPIO -stiften på Pi och vi är klara med den här utvecklingen så enkel som en paj (se bilden).

Anslutning av sensorn och Raspberry Pi

Ta sensorn och anslut I2C -kabeln med den. För korrekt användning av denna kabel, kom ihåg att I2C -utgång ALLTID är associerad med I2C -ingången. Detsamma måste tas efter för Raspberry Pi med I2C -skölden monterad över GPIO -stiften.

Vi stöder användningen av I2C-kabeln eftersom den förnekar behovet av att undersöka pinouts, fastsättning och obehag som orsakas av även den minsta skruven. Med denna grundläggande anslutnings- och uppspelningskabel kan du presentera, byta ut prylar eller lägga till fler prylar till ett program effektivt. Detta underlättar arbetsvikten upp till en betydande nivå.

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

Webbnätverk är nyckeln

För att vår strävan ska bli en vinst kräver vi en internetförening för vår Raspberry Pi. För detta har du val som att ansluta en Ethernet -kabel (LAN) till hemnätverket. Som ett alternativ, hur som helst, är en tillmötesgående kurs att använda en WiFi USB -kontakt. Som regel kräver du en förare för att få det att fungera. Så luta dig mot den med Linux i beskrivningen.

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 associerad med en annan skärm. I vissa fall måste du komma till en Raspberry Pi utan att ansluta den till en skärm eller så kan du behöva visa lite data från den någon annanstans. Tänkbart finns det innovativa och ekonomiskt kunniga tillvägagångssätt för att göra som sådant. En av dem använder -SSH (fjärrkommando -inloggning). Du kan också använda PUTTY -programvaran för det. Dessa är för avancerade användare. Så detaljerna ingår inte här.

Steg 3: Python -kodning för Raspberry Pi

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

Python -koden för Raspberry Pi och LIS3DHTR -sensorn är tillgänglig i vårt GithubRepository.

Innan du fortsätter med koden, se till att du läser reglerna i Readme -arkivet och konfigurerar din Raspberry Pi enligt den. Det kommer bara att pausa ett ögonblick för att göra allt som övervägs.

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.

Det medföljande är pythonkoden och du kan klona och justera 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. # LIS3DHTR # Denna kod är utformad för att fungera med LIS3DHTR_I2CS I2C Mini Module tillgänglig från dcubestore.com # https://dcubestore.com/product/lis3dhtr-3-axis-accelerometer-digital-output-motion-sensor-i%C2 %B2c-mini-modul/

importera smbus

importtid

# Skaffa I2C -buss

buss = smbus. SMBus (1)

# LIS3DHTR -adress, 0x18 (24)

# Välj styrregister1, 0x20 (32) # 0x27 (39) Power ON-läge, val av datahastighet = 10 Hz # X, Y, Z-axelaktiverad buss. Skriv_byte_data (0x18, 0x20, 0x27) # LIS3DHTR-adress, 0x18 (24) # Välj kontrollregister4, 0x23 (35) # 0x00 (00) Kontinuerlig uppdatering, Fullskaleval = +/- 2G buss.write_byte_data (0x18, 0x23, 0x00)

tid. sover (0,5)

# LIS3DHTR -adress, 0x18 (24)

# Läs tillbaka data från 0x28 (40), 2 byte # X-Axis LSB, X-Axis MSB data0 = bus.read_byte_data (0x18, 0x28) data1 = bus.read_byte_data (0x18, 0x29)

# Konvertera data

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

# LIS3DHTR -adress, 0x18 (24)

# Läs tillbaka data från 0x2A (42), 2 byte # Y-Axis LSB, Y-Axis MSB data0 = bus.read_byte_data (0x18, 0x2A) data1 = bus.read_byte_data (0x18, 0x2B)

# Konvertera data

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

# LIS3DHTR -adress, 0x18 (24)

# Läs tillbaka data från 0x2C (44), 2 byte # Z-Axis LSB, Z-Axis MSB data0 = bus.read_byte_data (0x18, 0x2C) data1 = bus.read_byte_data (0x18, 0x2D)

# Konvertera data

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

# 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 funktionsförmåga

Kodens funktionsförmåga
Kodens funktionsförmåga

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 ett par minuter visar det var och en av parametrarna. Eftersom du garanterar att allt fungerar utan problem kan du ta detta våg till ett mer anmärkningsvärt företag.

Steg 5: Applikationer och funktioner

Tillverkad av STMicroelectronics, LIS3DHTR har dynamiskt användarvalbara hela skalor på ± 2g/± 4g/± 8g/± 16g och den kan mäta accelerationer med utdatahastigheter från 1Hz till 5kHz. LIS3DHTR är lämplig för rörelseaktiverade funktioner och fritt fallavkänning. Det kvantifierar den statiska tyngdaccelerationen i lutningsdetekterande applikationer, och dessutom kommer dynamisk acceleration på grund av rörelse eller chock. Andra applikationer inkluderar klick-/dubbelklickigenkänning, intelligent energibesparing för handhållna enheter, stegräknare, displayorientering, spel- och virtuell inmatningsenheter, effektigenkänning och loggning och vibrationsövervakning och kompensation.

Steg 6: Slutsats

Lita på att detta företag leder till ytterligare experiment. Denna I2C -sensor är fenomenalt anpassningsbar, blygsam och tillgänglig. Eftersom det är en i en otrolig grad obeständig ram, finns det intressanta sätt att utöka detta uppdrag och förbättra det till och med.

Till exempel kan du börja med idén om en stegräknare med LIS3DHTR och Raspberry Pi. I ovanstående uppgift har vi använt grundläggande beräkningar. Acceleration kan vara den relevanta parametern för att analysera den härskande en gång. Du kan kontrollera de tre rörelsekomponenterna för en individ som är framåt (rulle, X), sida (tonhöjd, Y) och vertikal (gungaxel, Z). Ett typiskt mönster för alla 3 axlar registreras. Minst en axel kommer att ha relativt stora periodiska accelerationsvärden. Så toppriktning och en algoritm är avgörande. Med hänsyn till stegets parameter (digitalt filter, toppdetektering, tidsfönster etc.) för denna algoritm kan du känna igen och räkna steg samt mäta avstånd, hastighet och i viss utsträckning förbrända kalorier. Så du kan använda den här sensorn på olika sätt du kan överväga. Vi litar på att ni alla gillar det! Vi kommer att försöka göra en fungerande återgivning av denna stegräknare förr snarare än senare, konfigurationen, koden, delen som beräknar medel för att separera gång och löpning och förbrända kalorier.

För din tröst har vi en spännande video på YouTube som kan hjälpa dig att granska. Lita på detta företag motiverar ytterligare utforskning. Fortsätt fundera! Kom ihåg att leta efter, eftersom mer ständigt kommer.

Rekommenderad: