Innehållsförteckning:
- Steg 1: Grundläggande hårdvara som vi kräver
- Steg 2: Ansluta hårdvaran
- Steg 3: Python -kodning för Raspberry Pi
- Steg 4: Kodens praktiska egenskaper
- Steg 5: Applikationer och funktioner
- Steg 6: Slutsats
Video: 3-axlig accelerometer, ADXL345 med hallon Pi med Python: 6 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:44
Tänker på en gadget som kan kontrollera vid vilken punkt din Offroader lutar mot att dröja kvar. Skulle det inte vara trevligt om någon justeras när det finns möjlighet att välta? Uppenbarligen ja. Det skulle verkligen vara användbart för personer som älskar att åka på bergen och företagsresor.
Utan tvekan, en verkligt lysande period av avancerad bedömning av I -T, ligger IoT på oss. Som Gadgets- och programmeringsälskare tror vi, Raspberry Pi, att mikro -Linux -PC: n har behandlat människors kreativa förmågor i allmänhet och med sig en sprängning i innovativa metoder. Så vad är de tänkbara resultaten som vad vi kan göra om vi har en Raspberry Pi och en 3-axlig accelerometer i närheten? Vi borde upptäcka! I denna uppgift kommer vi att känna accelerationen på 3 axlar, X, Y och Z med Raspberry Pi och ADXL345, en 3-axlig accelerometer. Så vi bör observera på denna utflykt för att tillverka ett ramverk för att mäta den tredimensionella accelerationen upp eller G-Force.
Steg 1: Grundläggande hårdvara som vi kräver
Problemen var mindre för oss eftersom vi har massor av saker som ligger och jobbar utifrån. Ändå vet vi hur det är besvärligt för andra att montera rätt del i perfekt tid från den lämpliga platsen och det är motiverat oavsett varje öre. Så vi skulle hjälpa dig i alla regioner. Läs följande för att få en komplett reservdelslista.
1. Hallon Pi
Det första steget var att skaffa ett Raspberry Pi -kort. Denna lilla, lågdrivna dator ger en billig och allmänt enkel bas för elektroniska satsningar, Internet of Things (IoT), Smart Cities, School Education.
2. I2C Shield för Raspberry Pi
Det viktigaste som Raspberry Pi verkligen saknar är en I²C -port. Så för det ger TOUTPI2 I²C -kontakten dig känslan av att använda Rasp Pi med MULTIPLE I²C -enheter. Det är tillgängligt i DCUBE Store
3. 3-axlig accelerometer, ADXL345
Tillverkad av analoga enheter, ADXL345, är en lågeffekts 3-axlig accelerometer med högupplöst 13-bitars mätning på upp till ± 16g. Vi köpte den här sensorn från DCUBE Store
4. Anslutningskabel
Vi hade I2C -anslutningskabeln tillgänglig på DCUBE Store
5. Micro USB -kabel
Det minsta förvirrade, men ändå strängaste när det gäller strömbehov är Raspberry Pi! Det mest enkla sättet att starta upp Raspberry Pi är med hjälp av Micro USB -kabeln.
6. Webbåtkomst är ett behov
Webbåtkomst kan ges genom en Ethernet -kabel (LAN) som är associerad med ett lokalt nätverk och webben. Å andra sidan kan du associera med ett trådlöst nätverk med en trådlös USB -dongel, vilket kräver konfiguration.
7. HDMI -kabel/fjärråtkomst
Med HDMI -kabel ombord kan du ansluta den till en digital -TV eller till en bildskärm. Behöver spara pengar! Raspberry Pi kan fjärranslutas till att använda distinkta strategier som SSH och Access på webben. Du kan använda källprogramvaran PuTTYopen.
Steg 2: Ansluta hårdvaran
Gör kretsen enligt schematisk framträdde. Rita upp en kontur och ta efter konfigurationen medvetet.
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 föreskriver användning av I2C -kabeln eftersom den motbevisar kravet på genomgång av pinouts, lödning och obehag som orsakas av även den minsta felet. Med den här grundläggande plug and play -kabeln kan du enkelt introducera, byta ut enheter eller lägga till fler enheter i en applikation. Detta gör saker okomplicerade.
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 satsning ska bli en vinst kräver vi en webbanslutning för vår Raspberry Pi. För detta har du alternativ som att koppla en Ethernet (LAN) kabel till hemmasystemet. Dessutom, som ett alternativ, är dock en användbar väg att använda en WiFi -anslutning. En del av tiden för detta kräver du en förare för att få det att fungera. Så luta dig mot den med Linux i skildringen.
Strömförsörjning
Anslut Micro USB -kabeln till strömuttaget på Raspberry Pi. Tänd upp det så är vi igång.
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.
Steg 3: Python -kodning för Raspberry Pi
Python -koden för Raspberry Pi och ADXL345 -sensorn är tillgänglig i vårt Github -arkiv.
Innan du går vidare till koden, se till att du läser riktlinjerna i Readme -dokumentet och konfigurerar din Raspberry Pi enligt den. Det kommer helt enkelt att pausa i en minut för att göra som sådant.
En accelerometer är en enhet som mäter korrekt acceleration; korrekt acceleration är inte detsamma som koordinatacceleration (hastighetsändring av hastighet). En- och fleraxliga modeller av accelerometern är tillgängliga för att identifiera storleken och riktningen för rätt acceleration, som en vektormängd, och kan användas för att känna av orientering, koordinera acceleration, vibrationer, stötar och fall i ett resistivt medium.
Koden är enkel framför dig och den är i den mest okomplicerade strukturen som du kan tänka dig och du borde inte ha några problem.
# 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. # ADXL345 # Denna kod är utformad för att fungera med ADXL345_I2CS I2C Mini Module tillgänglig från dcubestore.com # https://dcubestore.com/product/adxl345-3-axis-accelerometer-13-bit-i%C2%B2c-mini -modul/
importera smbus
importtid
# Skaffa I2C -buss
buss = smbus. SMBus (1)
# ADXL345 -adress, 0x53 (83)
# Välj bandbreddshastighetsregister, 0x2C (44) # 0x0A (10) Normalt läge, Utdatahastighet = 100 Hz buss.write_byte_data (0x53, 0x2C, 0x0A) # ADXL345 -adress, 0x53 (83) # Välj effektregistreringsregister, 0x2D (45) # 0x08 (08) Auto Sleep inaktivera buss.write_byte_data (0x53, 0x2D, 0x08) # ADXL345-adress, 0x53 (83) # Välj dataformatregister, 0x31 (49) # 0x08 (08) Självtest inaktiverat, 4-tråds gränssnitt # Full upplösning, Område = +/- 2g buss.write_byte_data (0x53, 0x31, 0x08)
tid. sover (0,5)
# ADXL345 -adress, 0x53 (83)
# Läs tillbaka data från 0x32 (50), 2 byte # X-Axis LSB, X-Axis MSB data0 = bus.read_byte_data (0x53, 0x32) data1 = bus.read_byte_data (0x53, 0x33)
# Konvertera data till 10-bitar
xAccl = ((data1 & 0x03) * 256) + data0 om xAccl> 511: xAccl -= 1024
# ADXL345 -adress, 0x53 (83)
# Läs tillbaka data från 0x34 (52), 2 byte # Y-Axis LSB, Y-Axis MSB data0 = bus.read_byte_data (0x53, 0x34) data1 = bus.read_byte_data (0x53, 0x35)
# Konvertera data till 10-bitar
yAccl = ((data1 & 0x03) * 256) + data0 om yAccl> 511: yAccl -= 1024
# ADXL345 -adress, 0x53 (83)
# Läs data tillbaka från 0x36 (54), 2 byte # Z-Axis LSB, Z-Axis MSB data0 = bus.read_byte_data (0x53, 0x36) data1 = bus.read_byte_data (0x53, 0x37)
# Konvertera data till 10-bitar
zAccl = ((data1 & 0x03) * 256) + data0 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
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 utdata på Monitor. Efter några ögonblick kommer det att visa var och en av parametrarna. Efter att ha säkerställt att allt fungerar enkelt kan du ta denna satsning till en större uppgift.
Steg 5: Applikationer och funktioner
ADXL345 är en liten, tunn, ultralåg effekt, 3-axlig accelerometer med hög upplösning (13-bitars) mätning på upp till ± 16 g. ADXL345 är lämplig för mobiltelefonapplikationer. Det kvantifierar den statiska tyngdaccelerationen i lutningsdetekterande applikationer och dessutom kommer dynamisk acceleration på grund av rörelse eller chock. Andra applikationer inkluderar mobiltelefoner, medicinsk instrumentering, spel- och pekdon, industriell instrumentering, personliga navigeringsenheter och hårddiskskydd (HDD).
Steg 6: Slutsats
Hoppas den här uppgiften motiverar ytterligare experiment. Denna I2C -sensor är utomordentligt flexibel, billig och tillgänglig. Eftersom det är ett i hög grad obestämt system finns det intressanta sätt att bredda denna uppgift och förbättra den till och med.
Till exempel kan du börja med tanken på en lutningsmätare med ADXL345 och Raspberry Pi. I ovanstående projekt har vi använt grundläggande beräkningar. Du kan improvisera koden för G-värden, lutningsvinklar (eller lutningar), höjd eller fördjupning av ett objekt med avseende på gravitationen. Sedan kan du kontrollera avancerade alternativ som rotationsvinklar för rulle (fram-till-bak-axel, X), tonhöjd (sida-till-sida-axel, Y) och gaffel (vertikal axel, Z). Denna accelerometer visar 3D-styrkor. Så du kan använda den här sensorn på olika sätt du kan överväga.
För din bekvämlighet har vi en fascinerande videoinstruktion på YouTube som kan hjälpa din undersökning. Lita på detta företag motiverar ytterligare utforskning. Fortsätt fundera! Tänk på att söka efter, eftersom mer ständigt kommer.
Rekommenderad:
Raspberry Pi - ADXL345 3 -Axis Accelerometer Python Handledning: 4 steg
Raspberry Pi-ADXL345 3-Axis Accelerometer Python Tutorial: ADXL345 är en liten, tunn, ultralåg effekt, 3-axlig accelerometer med hög upplösning (13-bitars) mätning på upp till ± 16 g. Digital utdata formateras som 16-bitars tvåkomplement och är tillgängliga via I2 C digitalt gränssnitt. Den mäter
Cocktailmaskin med GUI -hallon: 7 steg (med bilder)
Cocktailmaskin med GUI Hallon: Gillar du teknik och fest? Detta projekt är gjord för dig! I denna handledning kommer vi att skapa en automatiserad cocktailmaskin med ett grafiskt gränssnitt. Allt som styrs av hallon! EDIT: Jag gjorde en ny enklare och billigare länk här
Automatisk videokonferens för mormor med hallon Pi: 9 steg (med bilder)
Automatisk videokonferens för mormor med hallon Pi: Jag är orolig för min 90-åriga mormor eftersom även hon borde stanna hemma under COVID-epidemin, hon ständigt går ut och gör " viktigt " saker på gatan, som att köpa några lotter, prata med grannar. Jag
Hallon Pi i det vilda! Utökad timelapse med batterikraft: 10 steg (med bilder)
Hallon Pi i det vilda! Utökad timelapse med batterikraft: Motivation: Jag ville använda batteridriven Raspberry Pi-kamera för att ta foton en gång om dagen utomhus för att skapa långsiktiga time-lapse-videor. Min speciella applikation är att registrera växttillväxt för markskydd under våren och sommaren. Utmaning: D
Raspberry Pi - ADXL345 3 -Axis Accelerometer Java Handledning: 4 steg
Raspberry Pi-ADXL345 3-Axis Accelerometer Java Tutorial: ADXL345 är en liten, tunn, ultralåg effekt, 3-axlig accelerometer med hög upplösning (13-bitars) mätning på upp till ± 16 g. Digital utdata formateras som 16-bitars tvåkomplement och är tillgängliga via I2 C digitalt gränssnitt. Den mäter