Përmbajtje:

Përshpejtues 3-bosht, ADXL345 Me Raspberry Pi duke përdorur Python: 6 hapa
Përshpejtues 3-bosht, ADXL345 Me Raspberry Pi duke përdorur Python: 6 hapa

Video: Përshpejtues 3-bosht, ADXL345 Me Raspberry Pi duke përdorur Python: 6 hapa

Video: Përshpejtues 3-bosht, ADXL345 Me Raspberry Pi duke përdorur Python: 6 hapa
Video: Как использовать гироскоп, акселерометр, магнитометр MPU-9250 для Arduino 2024, Nëntor
Anonim
Përshpejtues 3-Bosht, ADXL345 Me Raspberry Pi Duke përdorur Python
Përshpejtues 3-Bosht, ADXL345 Me Raspberry Pi Duke përdorur Python

Duke menduar për një vegël që mund të kontrollojë pikën në të cilën Offroader juaj është anuar drejt për të zgjatur. A nuk do të ishte e këndshme në rast se dikush përshtatet kur ekziston mundësia e përmbysjes? Padyshim që po. Do të ishte vërtet e dobishme për individët që duan të shkojnë në male dhe udhëtime ndërmarrje.

Pa dyshim, një periudhë e vërtetë brilante e vlerësimit të avancuar të figurave, IoT është mbi ne. Si adhurues të Gadgets dhe Programimit, ne besojmë, Raspberry Pi, mikro Linux PC ka trajtuar aftësitë krijuese të njerëzve në përgjithësi, duke mbajtur me vete një shpërthim në metodologjitë inovative. Pra, cilat janë rezultatet e imagjinueshme se çfarë mund të bëjmë në rast se kemi një Raspberry Pi dhe një Përshpejtues me 3 boshte pranë? Ne duhet të zbulojmë! Në këtë detyrë, ne do të ndiejmë përshpejtimin në 3 akse, X, Y dhe Z duke përdorur Raspberry Pi dhe ADXL345, një akselerometër me 3 boshte. Pra, ne duhet të vëzhgojmë në këtë ekskursion për të fabrikuar një kornizë për të matur nxitimin 3-dimensionale lart ose G-Force.

Hapi 1: Pajisjet themelore që kërkojmë

Pajisjet bazë që ne kërkojmë
Pajisjet bazë që ne kërkojmë
Pajisjet bazë që ne kërkojmë
Pajisjet bazë që ne kërkojmë
Pajisjet bazë që ne kërkojmë
Pajisjet bazë që ne kërkojmë

Çështjet ishin më pak për ne pasi ne kemi një ton gjëra të shtrira për të punuar nga. Sidoqoftë, ne e dimë se sa e mundimshme është që të tjerët të mbledhin pjesën e duhur në kohën e përsosur nga vendi i përshtatshëm dhe kjo është e justifikuar pavarësisht nga çdo qindarkë. Kështu që ne do t'ju ndihmojmë në të gjitha rajonet. Lexoni sa vijon për të marrë një listë të plotë të pjesëve.

1. Raspberry Pi

Hapi fillestar ishte blerja e një bordi Raspberry Pi. Ky kompjuter i vogël, me fuqi të ulët siguron një bazë të lirë dhe përgjithësisht të thjeshtë për ndërmarrjet elektronike, Internetin e Gjërave (IoT), Qytetet e Zgjuara, Edukimin Shkollor.

2. Mburoja I2C për Raspberry Pi

Gjëja kryesore që Raspberry Pi mungon vërtet është një port I²C. Pra, për këtë, lidhësi TOUTPI2 I²C ju jep kuptimin të përdorni Rasp Pi me pajisje IULTI I²C. Accessibleshtë i arritshëm në Dyqanin DCUBE

3. Përshpejtues me 3 boshte, ADXL345

Prodhuar nga Analog Devices, ADXL345, është një akselerometër me fuqi të ulët me 3 boshte me matje 13-bit me rezolucion të lartë deri në g 16g. Ne e morëm këtë sensor nga Dyqani DCUBE

4. Kabllo lidhëse

Ne kishim kabllon lidhës I2C të arritshëm në Dyqanin DCUBE

5. Kabllo mikro USB

Hutimi më i vogël, por më i rrepti për sa i përket nevojës për energji është Raspberry Pi! Qasja më e lehtë për të fuqizuar Raspberry Pi është me anë të kabllit Micro USB.

6. Qasja në internet është një nevojë

Qasja në internet mund të fuqizohet përmes një kabllo Ethernet (LAN) të lidhur me një rrjet lokal dhe ueb. Nga ana tjetër, mund të lidheni me një rrjet pa tel duke përdorur një dongle pa tel USB, e cila do të kërkojë konfigurim.

7. Kabllo HDMI/Qasje në distancë

Me kabllo HDMI në bord, mund ta lidhni me një televizor dixhital ose me një Monitor. Duhet të kurseni para! Raspberry Pi mund të përdoret nga distanca për të përdorur strategji dalluese si-SSH dhe Qasja në Internet. Mund të përdorni softuerin burimor PuTTYopen.

Hapi 2: Lidhja e harduerit

Lidhja e harduerit
Lidhja e harduerit
Lidhja e harduerit
Lidhja e harduerit
Lidhja e harduerit
Lidhja e harduerit
Lidhja e harduerit
Lidhja e harduerit

Bëni qarkun sipas skemës së shfaqur. Hartoni një skicë dhe merrni pas konfigurimit qëllimisht.

Lidhja e Raspberry Pi dhe I2C Shield

Mbi të gjitha, merrni Raspberry Pi dhe vëreni Mburojën I2C në të. Shtypni Shield me delikatesë mbi kunjat GPIO të Pi dhe ne kemi mbaruar me këtë përparim aq të thjeshtë sa byrek (shiko fotografinë).

Lidhja e Sensorit dhe Raspberry Pi

Merrni sensorin dhe ndërlidhni kabllon I2C me të. Për funksionimin e duhur të këtij kablli, ju lutemi kujtoni daljen I2C GJITHMON të lidhur me hyrjen I2C. E njëjta gjë duhet të merret edhe për Raspberry Pi me mburojën I2C të montuar mbi të, kunjat e GPIO.

Ne përshkruajmë përdorimin e kabllit I2C pasi ai hedh poshtë kërkesën për të lexuar pinouts, bashkim dhe keqtrajtim të shkaktuar edhe nga gabimi më i vogël. Me këtë kabllo bazë plug and play, ju mund të prezantoni, ndërroni pajisjet ose shtoni më shumë pajisje në një aplikacion me lehtësi. Kjo i bën gjërat të pakomplikuara.

Shënim: Teli kafe duhet të ndjekë në mënyrë të besueshme lidhjen Ground (GND) midis daljes së një pajisjeje dhe hyrjes së një pajisjeje tjetër

Rrjeti i uebit është çelësi

Për ta bërë sipërmarrjen tonë një fitore, ne kërkojmë një lidhje në internet për Raspberry Pi tonë. Për këtë, ju keni alternativa si ndërlidhja e një kabllo Ethernet (LAN) me sistemin shtëpiak. Për më tepër, si një opsion, megjithatë, një rrugë e dobishme është të përdorni një lidhje WiFi. Disa herë për këtë, ju duhet një shofer që ta bëjë atë të funksionojë. Pra, drejtohuni drejt atij me Linux në përshkrim.

Furnizimi me energji elektrike

Futeni kabllon Micro USB në prizën e energjisë të Raspberry Pi. Ndizeni atë dhe jemi mirë të shkojmë.

Lidhja me ekranin

Mund të kemi kabllon HDMI të lidhur me një ekran tjetër. Në disa raste, ju duhet të shkoni te një Raspberry Pi pa e ndërlidhur atë me një ekran ose mund t'ju duhet të shikoni disa të dhëna prej tij nga diku tjetër. Në mënyrë të kuptueshme, ka qasje novatore dhe financiarisht të mençura për të bërë si të tilla. Njëra prej tyre po përdor - SSH (hyrje në linjën e komandës në distancë). Ju gjithashtu mund të përdorni softuerin PuTTY për këtë.

Hapi 3: Kodimi Python për Raspberry Pi

Kodimi Python për Raspberry Pi
Kodimi Python për Raspberry Pi

Kodi Python për Sensorin Raspberry Pi dhe ADXL345 është i arritshëm në Depon tonë të Github.

Para se të vazhdoni me kodin, sigurohuni që të lexoni udhëzimet e dhëna në dokumentin Readme dhe të vendosni Raspberry Pi tuaj sipas tij. Thjesht do të ndalet për një minutë për ta bërë si të tillë.

Përshpejtuesi është një pajisje që mat nxitimin e duhur; nxitimi i duhur nuk është i njëjtë me nxitimin koordinativ (shkalla e ndryshimit të shpejtësisë). Modelet me një dhe shumë boshte të akcelerometrit janë të arritshme për të identifikuar madhësinë dhe drejtimin e nxitimit të duhur, si një sasi vektoriale, dhe mund të përdoren për të ndjerë orientimin, për të koordinuar nxitimin, dridhjen, goditjen dhe rënien në një medium rezistent.

Kodi është i thjeshtë para jush dhe është në strukturën më të drejtpërdrejtë që mund të imagjinoni dhe nuk duhet të keni probleme.

# Shpërndarë me një licencë të vullnetit të lirë.# Përdoreni atë në çdo mënyrë që dëshironi, fitimprurëse ose falas, me kusht që të përshtatet me licencat e veprave të tij shoqëruese. # ADXL345 # Ky kod është krijuar për të punuar me Mini Modulin ADXL345_I2CS I2C i disponueshëm nga dcubestore.com # https://dcubestore.com/product/adxl345-3-axis-accelerometer-13-bit-i%C2%B2c-mini -modul/

import smbus

koha e importit

# Merrni autobusin I2C

autobus = smbus. SMBus (1)

Adresa # ADXL345, 0x53 (83)

# Zgjidh regjistrin e shkallës së brezit, 0x2C (44) # 0x0A (10) Mënyra normale, Shkalla e të dhënave të daljes = autobus 100 Hz. Shkruani_byte_data (0x53, 0x2C, 0x0A) # Adresa ADXL345, 0x53 (83) # Zgjidhni regjistrin e kontrollit të energjisë, 0x2D (45) # 0x08 (08) Gjumi automatik çaktivizoni autobusin. Shkruani_byte_data (0x53, 0x2D, 0x08) # Adresa ADXL345, 0x53 (83) # Zgjidhni regjistrin e formatit të të dhënave, 0x31 (49) # 0x08 (08) Vetë-testimi i çaktivizuar, 4-tela ndërfaqe # Rezolucion i plotë, Gama = +/- 2g bus.write_byte_data (0x53, 0x31, 0x08)

koha. gjumi (0.5)

Adresa # ADXL345, 0x53 (83)

# Lexoni të dhënat mbrapa nga 0x32 (50), 2 bajt # X-Axis LSB, X-Axis MSB data0 = bus.read_byte_data (0x53, 0x32) data1 = bus.read_byte_data (0x53, 0x33)

# Ktheni të dhënat në 10-bit

xAccl = ((të dhënat1 & 0x03) * 256) + të dhëna0 nëse xAccl> 511: xAccl -= 1024

Adresa # ADXL345, 0x53 (83)

# Lexoni të dhënat përsëri nga 0x34 (52), 2 bajt # Y-Axis LSB, Y-Axis MSB data0 = bus.read_byte_data (0x53, 0x34) data1 = bus.read_byte_data (0x53, 0x35)

# Ktheni të dhënat në 10-bit

yAccl = ((të dhënat1 & 0x03) * 256) + të dhëna0 nëse yAccl> 511: yAccl -= 1024

Adresa # ADXL345, 0x53 (83)

# Lexoni të dhënat mbrapa nga 0x36 (54), 2 bajt # Z-Axis LSB, Z-Axis MSB data0 = bus.read_byte_data (0x53, 0x36) data1 = bus.read_byte_data (0x53, 0x37)

# Ktheni të dhënat në 10-bit

zAccl = ((të dhënat1 & 0x03) * 256) + të dhëna0 nëse zAccl> 511: zAccl -= 1024

# Dalja e të dhënave në ekran

print "Përshpejtimi në boshtin X: %d" %xAccl print "Përshpejtimi në boshtin Y: %d" %yAccl print "Përshpejtimi në boshtin Z: %d" %zAccl

Hapi 4: Prakticiteti i Kodit

Prakticiteti i Kodit
Prakticiteti i Kodit

Shkarkoni (ose git pull) kodin nga Github dhe hapeni atë në Raspberry Pi.

Drejtoni komandat për të përpiluar dhe ngarkuar kodin në terminal dhe shihni daljen në Monitor. Pas pak çastesh, ai do të tregojë secilin nga parametrat. Pas sigurimit që gjithçka funksionon lehtë, ju mund ta çoni këtë sipërmarrje në një detyrë më të madhe.

Hapi 5: Aplikimet dhe Karakteristikat

ADXL345 është një akselerometër i vogël, i hollë, me fuqi ultra të ulët, me 3 boshte me matje me rezolucion të lartë (13-bit) deri në ± 16 g. ADXL345 është i përshtatshëm për Aplikimet e Celularit. Ai përcakton shpejtësinë statike të gravitetit në aplikimet për zbulimin e pjerrësisë dhe gjithashtu përshpejtimin dinamik që vjen për shkak të lëvizjes ose goditjes. Aplikacionet e tjera përfshijnë pajisje të aparatit celular, pajisje mjekësore, pajisje për lojëra dhe drejtime, instrumente industriale, pajisje të navigimit personal dhe mbrojtje nga hard disku (HDD).

Hapi 6: Përfundimi

Shpresoj që kjo detyrë të motivojë eksperimente të mëtejshme. Ky sensor I2C është jashtëzakonisht fleksibël, i lirë dhe i arritshëm. Meqenëse është një sistem i përhershëm në një shkallë të madhe, ka mënyra interesante që mund ta zgjeroni këtë detyrë dhe madje ta përmirësoni atë.

Për shembull, Mund të filloni me idenë e një Inclinometri duke përdorur ADXL345 dhe Raspberry Pi. Në projektin e mësipërm, ne kemi përdorur llogaritjet bazë. Ju mund të improvizoni kodin për vlerat G, këndet e pjerrësisë (ose pjerrësisë), ngritjen ose depresionin e një objekti në lidhje me gravitetin. Pastaj mund të kontrolloni opsionet e përparimit si këndet e rrotullimit për rrotullimin (boshti para-mbrapa, X), lartësinë (boshti krah për krah, Y) dhe devijimin (boshti vertikal, Z). Ky përshpejtues tregon forcat 3-D G. Kështu që ju mund ta përdorni këtë sensor në mënyra të ndryshme që mund të merrni parasysh.

Për lehtësinë tuaj, ne kemi një stërvitje tërheqëse video mësimore në YouTube e cila mund të ndihmojë në hetimin tuaj. Besoni se kjo sipërmarrje motivon eksplorimin e mëtejshëm. Vazhdoni të meditoni! Mbani në mend të kërkoni pasi më shumë po vjen vazhdimisht.

Recommended: