Indholdsfortegnelse:
- Trin 1: Grundlæggende hardware, vi kræver
- Trin 2: Tilslutning af hardwaren
- Trin 3: Python -kodning til Raspberry Pi
- Trin 4: Det praktiske i koden
- Trin 5: Applikationer og funktioner
- Trin 6: Konklusion
Video: 3-akset accelerometer, ADXL345 med hindbær Pi ved hjælp af Python: 6 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
Tænker på en gadget, der kan kontrollere det punkt, hvor din Offroader er vippet mod at blive hængende. Ville det ikke være behageligt i tilfælde af, at nogen justeres, når der er mulighed for at vælte? Selvfølgelig ja. Det ville virkelig være nyttigt for personer, der elsker at tage på bjergene og forretningsrejser.
Uden tvivl, en sand strålende periode med avanceret beregningsevaluering, er IoT over os. Som elskere af gadgets og programmering tror vi, Raspberry Pi, at mikro -Linux -pc'en har behandlet menneskers kreative evner generelt og medbragt en eksplosion i innovative metoder. Så hvad er de tænkelige resultater, hvad vi kan gøre, hvis vi har en Raspberry Pi og et 3-akset accelerometer i nærheden? Vi burde opdage! I denne opgave vil vi fornemme accelerationen på 3 akser, X, Y og Z ved hjælp af Raspberry Pi og ADXL345, et 3-akset accelerometer. Så vi bør observere på denne udflugt for at fremstille en ramme til måling af den tredimensionelle acceleration op eller G-Force.
Trin 1: Grundlæggende hardware, vi kræver
Problemerne var mindre for os, da vi har masser af ting liggende at arbejde ud fra. Ikke desto mindre ved vi, hvordan det er besværligt for andre at samle den rigtige del i perfekt tid fra det passende sted, og det er berettiget uanset hver krone. Så vi ville hjælpe dig i alle regioner. Læs følgende for at få en komplet reservedelsliste.
1. Hindbær Pi
Det første trin var at anskaffe et Raspberry Pi -kort. Denne lille, lavdrevne computer giver en billig og generelt enkel base til elektronikvirksomheder, Internet of Things (IoT), Smart Cities, School Education.
2. I2C Shield til Raspberry Pi
Det vigtigste, Raspberry Pi virkelig mangler, er en I²C -port. Så til det giver TOUTPI2 I²C -stikket dig følelsen af at bruge Rasp Pi med MULTIPLE I²C -enheder. Det er tilgængeligt i DCUBE Store
3. 3-akset accelerometer, ADXL345
Fremstillet af analoge enheder, ADXL345, er et laveffekt 3-akset accelerometer med høj opløsning 13-bit måling på op til ± 16g. Vi købte denne sensor fra DCUBE Store
4. Tilslutningskabel
Vi havde I2C -forbindelseskablet tilgængeligt i DCUBE Store
5. Micro USB -kabel
Den mindste forvirrede, men alligevel strengeste, hvad angår strømbehov, er Raspberry Pi! Den mest ubesværede tilgang til at tænde Raspberry Pi er ved hjælp af Micro USB -kablet.
6. Webadgang er et behov
Webadgang kan styrkes via et Ethernet (LAN) kabel, der er knyttet til et lokalt netværk og internettet. På den anden side kan du tilknytte et trådløst netværk ved hjælp af en trådløs USB -dongle, hvilket kræver konfiguration.
7. HDMI -kabel/fjernadgang
Med et HDMI -kabel om bord kan du tilslutte det til et digitalt tv eller til en skærm. Skal spare penge! Raspberry Pi kan fjernstyres til at bruge særprægede strategier som-SSH og Access over internettet. Du kan bruge kildesoftwaren PuTTYopen.
Trin 2: Tilslutning af hardwaren
Lav kredsløbet i henhold til den skematiske dukkede op. Tegn en oversigt, og følg konfigurationen bevidst.
Tilslutning af Raspberry Pi og I2C Shield
Frem for alt andet, tag Raspberry Pi og få øje på I2C Shield på den. Tryk forsigtigt på skærmen over GPIO -benene på Pi, og vi er færdige med denne fremgang så enkel som en tærte (se snap).
Tilslutning af sensoren og Raspberry Pi
Tag sensoren og tilslut I2C -kablet med den. For den korrekte betjening af dette kabel skal du huske på, at I2C -output ALTID er forbundet med I2C -indgangen. Det samme skal tages efter for Raspberry Pi med I2C -skjoldet monteret over GPIO -benene.
Vi foreskriver brug af I2C -kablet, da det modbeviser kravet om gennemlæsning af pinouts, lodning og utilpashed forårsaget af selv den mindste bommert. Med dette grundlæggende plug and play -kabel kan du nemt introducere, bytte enheder eller tilføje flere enheder til en applikation. Det gør tingene ukomplicerede.
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 venture til en sejr, kræver vi en internetforbindelse til vores Raspberry Pi. Til dette har du alternativer som at tilslutte et Ethernet (LAN) kabel til hjemmesystemet. Derudover er en nyttig rute som en mulighed at bruge et WiFi -stik. Nogle gange kræver dette 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. Tænd det, og vi er godt i gang.
Tilslutning til skærm
Vi kan have HDMI -kablet forbundet med en anden skærm. I nogle tilfælde skal du komme til en Raspberry Pi uden at have en grænseflade på en skærm, eller du skal muligvis se nogle data fra den et andet sted. Tænkeligt er der innovative og økonomisk kyndige tilgange til at gøre som sådan. En af dem bruger - SSH (fjernkommandolinje -login). Du kan også bruge PuTTY -softwaren til det.
Trin 3: Python -kodning til Raspberry Pi
Python -koden til Raspberry Pi og ADXL345 -sensoren er tilgængelig i vores Github -depot.
Inden du går videre til koden, skal du sørge for at læse retningslinjerne i Readme -dokumentet og konfigurere din Raspberry Pi i henhold til den. Det vil simpelthen stoppe i et minut for at gøre som sådan.
Et accelerometer er en enhed, der måler korrekt acceleration; korrekt acceleration er ikke det samme som koordinatacceleration (hastighedsændring). Enkelt- og flerakset modeller af accelerometeret er tilgængelige for at identificere størrelsen og retningen af den korrekte acceleration som en vektormængde og kan bruges til at fornemme orientering, koordinere acceleration, vibrationer, stød og fald i et resistivt medium.
Koden er ren foran dig, og den er i den mest ligefremme struktur, du kan forestille dig, og du burde ikke have problemer.
# 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. # ADXL345 # Denne kode er designet til at fungere med ADXL345_I2CS I2C Mini Module tilgængelig fra dcubestore.com # https://dcubestore.com/product/adxl345-3-axis-accelerometer-13-bit-i%C2%B2c-mini -modul/
import smbus
importtid
# Få I2C -bus
bus = smbus. SMBus (1)
# ADXL345 adresse, 0x53 (83)
# Vælg båndbreddehastighedsregister, 0x2C (44) # 0x0A (10) Normal tilstand, Output datahastighed = 100 Hz bus.write_byte_data (0x53, 0x2C, 0x0A) # ADXL345 adresse, 0x53 (83) # Vælg strømstyringsregister, 0x2D (45) # 0x08 (08) Auto Sleep deaktiver bus.write_byte_data (0x53, 0x2D, 0x08) # ADXL345 adresse, 0x53 (83) # Vælg dataformatregister, 0x31 (49) # 0x08 (08) Selvtest deaktiveret, 4-leder interface # Fuld opløsning, Range = +/- 2g bus.write_byte_data (0x53, 0x31, 0x08)
time.sleep (0,5)
# ADXL345 adresse, 0x53 (83)
# Læs data tilbage fra 0x32 (50), 2 bytes # X-Axis LSB, X-Axis MSB data0 = bus.read_byte_data (0x53, 0x32) data1 = bus.read_byte_data (0x53, 0x33)
# Konverter dataene til 10-bit
xAccl = ((data1 & 0x03) * 256) + data0 hvis xAccl> 511: xAccl -= 1024
# ADXL345 adresse, 0x53 (83)
# Læs data tilbage fra 0x34 (52), 2 bytes # Y-Axis LSB, Y-Axis MSB data0 = bus.read_byte_data (0x53, 0x34) data1 = bus.read_byte_data (0x53, 0x35)
# Konverter dataene til 10-bit
yAccl = ((data1 & 0x03) * 256) + data0 hvis yAccl> 511: yAccl -= 1024
# ADXL345 adresse, 0x53 (83)
# Læs data tilbage fra 0x36 (54), 2 bytes # Z-Axis LSB, Z-Axis MSB data0 = bus.read_byte_data (0x53, 0x36) data1 = bus.read_byte_data (0x53, 0x37)
# Konverter dataene til 10-bit
zAccl = ((data1 & 0x03) * 256) + data0 hvis zAccl> 511: zAccl -= 1024
# 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
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 output på Monitor. Efter få øjeblikke vil det vise alle parametrene. Efter at sikre, at alt fungerer let, kan du tage dette venture til en større opgave.
Trin 5: Applikationer og funktioner
ADXL345 er et lille, tyndt, ultralavt, 3-akset accelerometer med høj opløsning (13-bit) måling på op til ± 16 g. ADXL345 er egnet til mobiltelefonprogrammer. Det kvantificerer den statiske tyngdekraftacceleration i applikationer, der kan detektere hældning, og derudover kommer dynamisk acceleration på grund af bevægelse eller stød. Andre applikationer omfatter f.eks. Håndsæt, medicinsk instrumentering, spil- og pegeudstyr, industriel instrumentering, personlige navigationsenheder og beskyttelse af harddisk (HDD).
Trin 6: Konklusion
Håber denne opgave motiverer til yderligere eksperimentering. Denne I2C -sensor er ekstraordinært fleksibel, billig og tilgængelig. Da det i høj grad er ubestandigt system, er der interessante måder, du kan udvide denne opgave og endda forbedre den.
For eksempel kan du starte med ideen om et hældningsmåler ved hjælp af ADXL345 og Raspberry Pi. I ovenstående projekt har vi brugt grundlæggende beregninger. Du kan improvisere koden for G-værdier, hældningsvinkler (eller hældninger), højde eller depression af et objekt med hensyn til tyngdekraften. Derefter kan du kontrollere forhåndsindstillingerne som rotationsvinkler for rulle (forreste-til-bag-akse, X), stigning (side-til-side-akse, Y) og kæbe (lodret akse, Z). Dette accelerometer viser 3D-styrker. Så du kan bruge denne sensor på forskellige måder, du kan overveje.
For din bekvemmelighed har vi en fascinerende videoinstruktionsøvelse på YouTube, som kan hjælpe din undersøgelse. Tro på, at dette projekt motiverer til yderligere udforskning. Fortsæt med at overveje! Husk at søge efter, da der hele tiden kommer mere.
Anbefalede:
Vandstandsmåler ved hjælp af Oled -skærm med hindbær Pi: 4 trin
Vandstandsmåler ved hjælp af Oled -skærm med Raspberry Pi: Hej alle sammen, jeg er Shafin, medlem af Aiversity. Jeg vil dele om, hvordan man bygger en vandstandssensor med et Oled -display til vandtanke med en Raspberry pi. Oled -displayet viser procentdelen af spanden fyldt med vand
Sådan laver du en drone ved hjælp af Arduino UNO - Lav en quadcopter ved hjælp af mikrokontroller: 8 trin (med billeder)
Sådan laver du en drone ved hjælp af Arduino UNO | Lav en Quadcopter ved hjælp af mikrokontroller: Introduktion Besøg min Youtube -kanal En Drone er en meget dyr gadget (produkt) at købe. I dette indlæg vil jeg diskutere, hvordan jeg gør det billigt ?? Og hvordan kan du lave din egen sådan til en billig pris … Nå i Indien alle materialer (motorer, ESC'er
RF 433MHZ radiostyring ved hjælp af HT12D HT12E - Lav en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: 5 trin
RF 433MHZ radiostyring ved hjælp af HT12D HT12E | Oprettelse af en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: I denne instruktør vil jeg vise dig, hvordan du laver en RADIO -fjernbetjening ved hjælp af 433mhz sendermodtagermodul med HT12E -kode & HT12D -dekoder IC.I denne instruktive kan du sende og modtage data ved hjælp af meget meget billige KOMPONENTER SOM: HT
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino - Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter - Rc Helikopter - Rc -fly ved hjælp af Arduino: 5 trin (med billeder)
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino | Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter | Rc Helikopter | Rc -fly ved hjælp af Arduino: At betjene en Rc -bil | Quadcopter | Drone | RC -fly | RC -båd, vi har altid brug for en modtager og sender, antag at vi til RC QUADCOPTER har brug for en 6 -kanals sender og modtager, og den type TX og RX er for dyr, så vi laver en på vores
Læs og skriv fra seriel port med hindbær Pi ved hjælp af Wemos: 5 trin
Læs og skriv fra seriel port med Raspberry Pi ved hjælp af Wemos: Kommunikation med en Raspberry Pi ved hjælp af en Wemos D1 mini R2