Përmbajtje:

Lartësia, Presioni dhe Temperatura Duke Përdorur Raspberry Pi Me MPL3115A2: 6 Hapa
Lartësia, Presioni dhe Temperatura Duke Përdorur Raspberry Pi Me MPL3115A2: 6 Hapa

Video: Lartësia, Presioni dhe Temperatura Duke Përdorur Raspberry Pi Me MPL3115A2: 6 Hapa

Video: Lartësia, Presioni dhe Temperatura Duke Përdorur Raspberry Pi Me MPL3115A2: 6 Hapa
Video: Урок 68. Домашняя автоматизация: как управлять 16-канальным релейным модулем с помощью Arduino, управляя 16 нагрузками переменного тока. 2024, Nëntor
Anonim
Lartësia, Presioni dhe Temperatura Duke Përdorur Raspberry Pi Me MPL3115A2
Lartësia, Presioni dhe Temperatura Duke Përdorur Raspberry Pi Me MPL3115A2
Lartësia, Presioni dhe Temperatura Duke Përdorur Raspberry Pi Me MPL3115A2
Lartësia, Presioni dhe Temperatura Duke Përdorur Raspberry Pi Me MPL3115A2

Duket interesante. Quiteshtë mjaft e mundur në këtë kohë kur të gjithë ne po hyjmë në brezin IoT. Si një fanatik elektronik, ne kemi luajtur me Raspberry Pi dhe vendosëm të bëjmë projekte interesante duke përdorur këtë njohuri. Në këtë projekt, ne do të matim lartësinë, presionin e ajrit, temperaturën duke përdorur Raspberry Pi. Pra, këtu shkon dokumentacioni (gjithnjë duke u modifikuar dhe zgjeruar). Ne ju rekomandojmë të filloni duke ndjekur udhëzimet dhe kopjoni kodin. Mund të eksperimentoni më vonë. Pra, le të fillojmë.

Hapi 1: Pajisjet Imperative Ne kemi nevojë

Pajisje Imperative Ne kemi nevojë
Pajisje Imperative Ne kemi nevojë
Pajisje Imperative Ne kemi nevojë
Pajisje Imperative Ne kemi nevojë
Pajisje Imperative Ne kemi nevojë
Pajisje Imperative Ne kemi nevojë
Pajisje Imperative Ne kemi nevojë
Pajisje Imperative Ne kemi nevojë

1. Raspberry Pi

Hapi i parë ishte marrja e një bordi Raspberry Pi. Ne i kemi blerë tonat, po kështu edhe ju. Filluam të mësonim nga mësimet, ne kuptuam konceptet e shkrimit dhe lidhjes dhe mësuam më pas. Ky gjeni i vogël është i zakonshëm për hobistët, mësuesit dhe krijimin e mjediseve inovative.

2. Mburoja I²C për Raspberry Pi

INPI2 (përshtatësi I2C) siguron Raspberry Pi 2/3 një port I²C për përdorim me pajisje të shumta I2C. Availableshtë në dispozicion në Dyqanin Dcube

3. Altimetri, Sensori i Presionit dhe Temperaturës, MPL3115A2

MPL3115A2 është një sensor presioni MEMS me një ndërfaqe I²C për të dhënë të dhëna Presioni/Lartësia dhe Temperatura. Ky sensor përdor protokollin I²C për komunikim. Ne e blemë këtë sensor nga Dyqani Dcube

4. Kabllo lidhëse

Ne kishim kabllon lidhës I2C të disponueshëm në Dyqanin Dcube

5. Kabllo mikro USB

Kablloja mikro USB Furnizimi me energji elektrike është një zgjedhje ideale për fuqizimin e Raspberry Pi.

6 Përmirësimi i Qasjes në Internet - Përshtatës kabllor Ethernet/WiFi

Në këtë epokë, për të fituar qasje në çdo gjë ka nevojë për një lidhje interneti (pothuajse ashtu siç ka jetë edhe jashtë linje). Pra, ne marrim këshillën e një kabllo LAN ose një Përshtatësi USB Nano USB (WiFi) pa tel për të krijuar lidhjen e internetit në mënyrë që të mund të përdorim Rasp Pi -në tonë me lehtësi dhe pa asnjë problem fare.

7. Kabllo HDMI (Opsionale, Zgjedhja juaj)

Ashtë pak e ndërlikuar. Ju mund të keni fuqinë për të bashkangjitur një Monitor tjetër në rast se dëshironi ose është shumë kosto-efektive për veten tuaj duke bërë një lidhje Pi pa kokë me kompjuterin/laptopin tuaj.

Hapi 2: Lidhjet e pajisjeve për të bashkuar qarkun

Lidhjet e pajisjeve për të bashkuar qarkun
Lidhjet e pajisjeve për të bashkuar qarkun
Lidhjet e pajisjeve për të bashkuar qarkun
Lidhjet e pajisjeve për të bashkuar qarkun

Bëni qarkun sipas skemës së treguar. Në përgjithësi, lidhjet janë shumë të thjeshta. Ndiqni udhëzimet dhe imazhet, dhe nuk duhet të keni probleme.

Ndërsa planifikonim, ne shikuam bazat e harduerit dhe kodimit, si dhe elektronikën. Ne donim të krijonim një skemë të thjeshtë elektronike për këtë projekt. Në diagram, ju mund të vini re pjesët e ndryshme, komponentët e fuqisë dhe sensorin I²C që ndjekin protokollet e komunikimit I²C. Shpresojmë, kjo ilustron se sa e thjeshtë është pajisja elektronike për këtë projekt.

Lidhja e Raspberry Pi dhe I2C Shield

Para së gjithash merrni Raspberry Pi dhe vendosni IeldC Shield mbi të. Shtypni Shield me butësi (Shih fotografinë).

Lidhja e Sensorit dhe Raspberry Pi

Merrni sensorin dhe lidhni kabllon I²C me të. Sigurohuni që dalja I²C të lidhet GJITHMON me hyrjen e I²C. E njëjta gjë do të ndiqet nga Raspberry Pi me mburojën I²C të montuar mbi të. Ne kemi I²C Shield dhe kabllot lidhës I²C në anën tonë si një avantazh shumë i madh pasi na mbetet vetëm opsioni plug and play. Nuk ka më probleme me kunjat dhe instalimet elektrike dhe kështu, konfuzioni është zhdukur. Çfarë lehtësimi sapo të imagjinoni veten në rrjetën e telave dhe të futeni në të. Vetëm procesi i thjeshtë që kemi përmendur.

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

Lidhshmëria në internet është jetike

Ju në fakt keni një zgjedhje këtu. Mund ta lidhni Raspberry Pi me kabllon LAN ose përshtatësin pa tel Nano USB për lidhje me WiFi. Sidoqoftë, ai bëri qëllimin kryesor që është lidhja me internetin.

Fuqizimi i qarkut

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

Lidhja me ekranin

Ne ose mund ta lidhim kabllon HDMI me një monitor të ri ose mund ta bëjmë Pi-in tonë pa kokë i cili është krijues dhe me kosto efektive duke përdorur qasje në distancë si-SSH/PuTTY. (Unë e di që ne nuk financohemi si një organizatë sekrete)

Hapi 3: Programimi i Raspberry Pi në Python

Programimi i Raspberry Pi në Python
Programimi i Raspberry Pi në Python

Kodi Python për Sensorin Raspberry Pi dhe MPL3115A2. Availableshtë në dispozicion në depon tonë Github.

Para se të kaloni në kod, sigurohuni që të lexoni udhëzimet e dhëna në skedarin Readme dhe Konfiguroni Raspberry Pi tuaj sipas tij. Do të duhet vetëm një moment për ta bërë këtë.

Lartësia llogaritet nga presioni duke përdorur ekuacionin më poshtë:

h = 44330.77 {1 - (p / p0) ^ 0.1902632} + OFF_H (Vlera e Regjistrit)

Ku p0 = presioni i nivelit të detit (101326 Pa) dhe h është në metra. MPL3115A2 e përdor këtë vlerë pasi regjistri i kompensuar përcaktohet si 2 Paskalë për LSB.

Kodi është qartë para jush dhe është në formën më të thjeshtë që mund të imagjinoni dhe nuk duhet të keni probleme.

Ju gjithashtu mund të kopjoni kodin Python të punës për këtë sensor nga këtu.

# 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. # MPL3115A2 # Ky kod është krijuar për të punuar me Mini Modulin MPL3115A2_I2CS I2C i disponueshëm nga ControlEverything.com. #

import smbus

koha e importit

# Merrni autobusin I2C

autobus = smbus. SMBus (1)

# Adresa MPL3115A2, 0x60 (96)

# Zgjidh regjistrin e kontrollit, 0x26 (38) # 0xB9 (185) Modaliteti aktiv, OSR = 128, autobusi i modalitetit Altimeter. Shkruani_byte_data (0x60, 0x26, 0xB9) # adresa MPL3115A2, 0x60 (96) # Zgjidhni regjistrin e konfigurimit të të dhënave, 0x13 (19) # 0x07 (07) Ngjarja e gatshme e të dhënave është aktivizuar për lartësinë, presionin, autobusin e temperaturës. Shkruani_bajt_data (0x60, 0x13, 0x07) # Adresa MPL3115A2, 0x60 (96) # Zgjidh regjistrin e kontrollit, 0x26 (38) # 0xB9 (185) Modaliteti aktiv, OSR = 128, autobusi i modalitetit Altimeter. Shkruani_byte_data (0x60, 0x26, 0xB9)

koha. gjumi (1)

# Adresa MPL3115A2, 0x60 (96)

# Lexoni të dhënat mbrapa nga 0x00 (00), 6 bajt # status, tHeight MSB1, tHeight MSB, tHeight LSB, temp MSB, temp LSB data = bus.read_i2c_block_data (0x60, 0x00, 6)

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

tHeight = ((të dhënat [1] * 65536) + (të dhënat [2] * 256) + (të dhënat [3] & 0xF0)) / 16 temp = ((të dhënat [4] * 256) + (të dhënat [5] & 0xF0)) / 16 lartësi = tHeight / 16.0 cTemp = temp / 16.0 fTemp = cTemp * 1.8 + 32

# Adresa MPL3115A2, 0x60 (96)

# Zgjidh regjistrin e kontrollit, 0x26 (38) # 0x39 (57) Mënyra aktive, OSR = 128, autobusi i modalitetit Barometër. Shkruani_byte_data (0x60, 0x26, 0x39)

koha. gjumi (1)

# Adresa MPL3115A2, 0x60 (96)

# Lexoni të dhëna mbrapa nga 0x00 (00), 4 bytes # status, pres MSB1, pres MSB, pres LSB data = bus.read_i2c_block_data (0x60, 0x00, 4)

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

pres = ((të dhënat [1] * 65536) + (të dhëna [2] * 256) + (të dhëna [3] & 0xF0)) / 16 presion = (pres / 4.0) / 1000.0

# Dalja e të dhënave në ekran

print "Presioni: %.2f kPa" %shtypja me presion "Lartësia: %.2f m" %printimi në lartësi "Temperatura në Celsius: %.2f C" %cTamp print "Temperatura në Fahrenheit: %.2f F" %fTemp

Hapi 4: Prakticiteti i Kodit (Testimi)

Prakticiteti i Kodit (Testimi)
Prakticiteti i Kodit (Testimi)

Tani, shkarkoni (ose git pull) kodin dhe hapeni atë në Raspberry Pi.

Drejtoni komandat për të përpiluar dhe ngarkuar kodin në terminal dhe shihni daljen në Monitor. Pas disa sekondash, do të shfaqë të gjithë parametrat. Pasi të siguroheni që gjithçka funksionon pa probleme, mund ta merrni këtë projekt në një projekt më të madh.

Hapi 5: Aplikimet dhe Karakteristikat

Përdorimi i zakonshëm i sensorit MPL3115A2 Precision Altimeter I²C është në aplikacione si Map (Assist Map, Navigation), Compass Magnetic, Or GPS (GPS Dead Reckoning, GPS Enhancement For Emergency Services), Altimetria e Saktësisë së Lartë, Smartphone/Tableta, Elektronikë Personale Altimetri dhe Satelitët (Pajisjet/Parashikimet e Stacionit Moti).

Për p.sh. një projekt për prodhimin e një altimetri elektronik personal që mat lartësinë, presionin e ajrit, temperaturën duke përdorur Raspberry Pi. Altimetri Personal Elektronik është një projekt total për tu ndërtuar. Do të duhen vetëm disa momente nëse i keni të gjitha pjesët dhe nuk improvizoni (natyrisht që mundeni!). Një lartësimatës presioni është një lartësimatës që gjendet në shumicën e avionëve, dhe parashutistët përdorin versione të montuara në dore për qëllime të ngjashme. Alpinistët dhe alpinistët përdorin altimetra të montuar në dore ose të mbajtur me dorë.

Hapi 6: Përfundimi

Shpresoj se ky projekt frymëzon eksperimente të mëtejshme. Ky sensor I²C është tepër i gjithanshëm, i lirë dhe i arritshëm. Meqenëse është një program jashtëzakonisht i ndryshueshëm, ka mënyra interesante që mund ta zgjeroni këtë projekt dhe ta bëni atë edhe më të mirë. Për shembull, altimetri është një instrument opsional në automjetet jashtë rrugës për të ndihmuar në lundrim. Disa makina luksoze me performancë të lartë që kurrë nuk ishin menduar të linin rrugë të shtruara, përdorin këtë teknologji. Për lehtësinë tuaj, ne kemi një video mësimore interesante në YouTube e cila mund të japë një dorë për eksplorimin tuaj. Shpresoj se ky projekt frymëzon eksperimente të mëtejshme.

Recommended: