Mündəricat:
- Addım 1: Ehtiyacımız olan təcili avadanlıq
- Addım 2: Dövrəni Bir araya gətirmək üçün Avadanlıq Bağlantıları
- Addım 3: Pythonda Raspberry Pi Proqramlaşdırması
- Addım 4: Kodun Praktikliyi (Test)
- Addım 5: Tətbiqlər və Xüsusiyyətlər
- Addım 6: Nəticə
Video: MPL3115A2 ilə Raspberry Pi istifadə edərək yüksəklik, təzyiq və temperatur: 6 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:44
Maraqlı səslənir. Hamımızın IoT nəslinə girdiyimiz bu dövrdə olduqca mümkündür. Bir elektronika qəribəsi olaraq, Raspberry Pi ilə oynadıq və bu bilikdən istifadə edərək maraqlı layihələr etmək qərarına gəldik. Bu layihədə Raspberry Pi istifadə edərək hündürlüyü, hava təzyiqini, temperaturu ölçəcəyik. Beləliklə, sənədləşmə gedir (həmişə dəyişdirilir və genişləndirilir). Təlimatları yerinə yetirməyi və kodu kopyalamağı məsləhət görürük. Daha sonra təcrübə edə bilərsiniz. Beləliklə, başlayaq.
Addım 1: Ehtiyacımız olan təcili avadanlıq
1. Moruq Pi
İlk addım bir Raspberry Pi lövhəsi əldə etmək idi. Biz özümüzü aldıq, siz də. Dərsliklərdən öyrənməyə başladıq, skript və əlaqə anlayışlarını anladıq və sonra öyrəndik. Bu kiçik dahi həvəskarlar, müəllimlər və yenilikçi mühitlər yaratmaq üçün ortaqdır.
2. Raspberry Pi üçün I²C Shield
INPI2 (I2C adapteri) birdən çox I2C cihazı ilə istifadə üçün Raspberry Pi 2/3 və I²C portunu təmin edir. Dcube Mağazasında mövcuddur
3. Altimetr, Təzyiq və Temperatur Sensoru, MPL3115A2
MPL3115A2, təzyiq/yüksəklik və temperatur məlumatları vermək üçün I²C interfeysli MEMS təzyiq sensoru. Bu sensor ünsiyyət üçün I²C protokolundan istifadə edir. Bu sensoru Dcube Mağazasından aldıq
4. Bağlayıcı Kabel
Dcube Store -da I2C birləşdirən kabelimiz var idi
5. Mikro USB kabeli
Mikro USB kabel Güc təchizatı, Raspberry Pi -ni gücləndirmək üçün ideal seçimdir.
6. İnternetə çıxışın genişləndirilməsi - Ethernet Kabeli/WiFi Adapteri
Bu dövrdə hər şeyə giriş əldə etmək üçün internet bağlantısı lazımdır (demək olar ki, offline həyat olduğu kimi). Beləliklə, İnternet bağlantısı qurmaq üçün LAN kabelindən və ya Simsiz Nano USB Adaptöründən (WiFi) istifadə edərək Rasp Pi -ni rahatlıqla və heç bir problem olmadan istifadə edə bilərik.
7. HDMI Kabeli (İsteğe bağlı, Seçdiyiniz)
Bir az çətindir. İstəyirsinizsə və ya PC/Laptopunuzla başsız bir Pi bağlantısı quraraq özünüzə çox qənaətcil olsanız başqa bir Monitor bağlamaq gücünə sahib ola bilərsiniz.
Addım 2: Dövrəni Bir araya gətirmək üçün Avadanlıq Bağlantıları
Göstərilən sxemə görə dövrə qurun. Ümumiyyətlə əlaqələr çox sadədir. Təlimatları və şəkilləri izləyin və heç bir probleminiz olmayacaq.
Planlaşdırarkən, biz aparat və kodlaşdırma ilə yanaşı elektronikanın əsaslarını da nəzərdən keçirdik. Bu layihə üçün sadə bir elektronika sxemini hazırlamaq istədik. Diaqramda, I²C ünsiyyət protokollarından sonra fərqli hissələri, güc komponentlərini və I²C sensorunu görə bilərsiniz. İnşallah, bu, bu layihə üçün elektronikanın nə qədər sadə olduğunu göstərir.
Raspberry Pi və I2C Shield bağlantısı
Əvvəlcə Raspberry Pi götürün və üzərinə I²C Shield qoyun. Qalxanı yumşaq bir şəkildə basın (Şəkilə baxın).
Sensor və Raspberry Pi -nin əlaqəsi
Sensoru götürün və I²C kabelini onunla bağlayın. I²C Çıxışının DAİMA I²C Girişinə qoşulduğundan əmin olun. Üzərində I²C qalxanı olan Raspberry Pi -nin ardınca gedən tərəfimizdə I²C Shield və I²C birləşdirən kabellər çox böyük bir üstünlük olaraq qalır, çünki yalnız plug -play seçimi qalır. Artıq sancaqlar və naqillər problemi yoxdur və buna görə də qarışıqlıq aradan qalxdı. Özünüzü tellər şəbəkəsində təsəvvür etmək və ona girmək nə qədər rahatdır. Sadəcə qeyd etdiyimiz sadə prosesdir.
Qeyd: Qəhvəyi tel həmişə bir cihazın çıxışı ilə digər cihazın girişi arasındakı Ground (GND) bağlantısını izləməlidir
İnternet Bağlantısı çox vacibdir
Əslində burada seçiminiz var. Raspberry Pi -ni LAN kabeli və ya WiFi Bağlantısı üçün simsiz Nano USB Adaptoru ilə bağlaya bilərsiniz. Hər halda, əsas məqsədi İnternetə qoşulmaq idi.
Dövrün Gücü
Micro USB kabelini Raspberry Pi -nin elektrik prizinə qoşun. Yandırın və getməyimiz yaxşıdır.
Ekrana keçid
Ya HDMI kabelini yeni bir monitora bağlaya bilərik, ya da SSH/PuTTY kimi uzaqdan girişdən istifadə edərək yaradıcı və qənaətcil başsız Pi qura bilərik. (Gizli bir təşkilat kimi maliyyələşdirilmədiyimizi bilirəm)
Addım 3: Pythonda Raspberry Pi Proqramlaşdırması
Raspberry Pi və MPL3115A2 Sensor üçün Python kodu. Github depomuzda mövcuddur.
Kodu işə salmadan əvvəl, Readme faylında verilən təlimatları oxuduğunuzdan və Raspberry Pi -ni ona uyğun olaraq qurduğunuzdan əmin olun. Bunu etmək üçün bir az vaxt lazım olacaq.
Hündürlük aşağıdakı tənlikdən istifadə edərək təzyiqdən hesablanır:
h = 44330.77 {1 - (p / p0) ^ 0.1902632} + OFF_H (Qeyd Dəyəri)
Burada p0 = dəniz səviyyəsindəki təzyiq (101326 Pa) və h metrlərlədir. MPL3115A2 ofset reyestri hər LSB üçün 2 Paskal olaraq təyin olunduğundan bu dəyəri istifadə edir.
Kod aydın şəkildə qarşınızdadır və xəyal edə biləcəyiniz ən sadə formadadır və heç bir problem yaşamamalısınız.
Bu sensor üçün işləyən Python kodunu buradan da kopyalaya bilərsiniz.
# Sərbəst iradə lisenziyası ilə paylanmışdır.# İstənilən şəkildə, mənfəət və ya pulsuz olaraq, əlaqəli işlərin lisenziyalarına uyğun olması şərtilə istifadə edin. # MPL3115A2 # Bu kod ControlEverything.com saytında mövcud olan MPL3115A2_I2CS I2C Mini Modulu ilə işləmək üçün hazırlanmışdır. #
smbus idxal edin
idxal vaxtı
# I2C avtobusu alın
avtobus = smbus. SMBus (1)
# MPL3115A2 ünvanı, 0x60 (96)
# İdarəetmə qeydini seçin, 0x26 (38) # 0xB9 (185) Aktiv rejim, OSR = 128, Altimetr rejimi bus.write_byte_data (0x60, 0x26, 0xB9) # MPL3115A2 ünvanı, 0x60 (96) # Məlumat konfiqurasiya qeydini seçin, 0x13 (19)) # 0x07 (07) Hündürlük, təzyiq, temperatur busu üçün aktiv olan məlumatlara hazır hadisə.write_byte_data (0x60, 0x13, 0x07) # MPL3115A2 ünvanı, 0x60 (96) # İdarəetmə qeydini seçin, 0x26 (38) # 0xB9 (185) Aktiv rejim, OSR = 128, Altimetr rejimi bus.write_byte_data (0x60, 0x26, 0xB9)
vaxt.yuxu (1)
# MPL3115A2 ünvanı, 0x60 (96)
# 0x00 (00), 6 bayt # status, tHeight MSB1, tHeight MSB, tHeight LSB, temp MSB, temp LSB data = bus.read_i2c_block_data (0x60, 0x00, 6)
# Məlumatı 20 bitə çevirin
tHeight = ((data [1] * 65536) + (data [2] * 256) + (data [3] & 0xF0)) / 16 temp = ((data [4] * 256) + (data [5] & 0xF0)) / 16 yüksəklik = tHeight / 16.0 cTemp = temp / 16.0 fTemp = cTemp * 1.8 + 32
# MPL3115A2 ünvanı, 0x60 (96)
# İdarəetmə qeydini seçin, 0x26 (38) # 0x39 (57) Aktiv rejim, OSR = 128, Barometr rejimi bus.write_byte_data (0x60, 0x26, 0x39)
vaxt.yuxu (1)
# MPL3115A2 ünvanı, 0x60 (96)
# 0x00 (00), 4 bayt # status, MSB1 pres, MSB pres, LSB data = bus.read_i2c_block_data (0x60, 0x00, 4)
# Məlumatı 20 bitə çevirin
pres = ((data [1] * 65536) + (data [2] * 256) + (data [3] & 0xF0)) / 16 təzyiq = (pres / 4.0) / 1000.0
# Ekrana məlumat çıxarın
çap "Təzyiq: %.2f kPa" %təzyiq çapı "Yüksəklik: %.2f m" %yüksəklik çapı "Selsi İstiliyi: %.2f C" %cTemp çapı "Fahrenheitdə Temperatur: %.2f F" %fTemp
Addım 4: Kodun Praktikliyi (Test)
İndi kodu yükləyin (və ya git pull) və Raspberry Pi -də açın.
Kodu tərtib etmək və terminala yükləmək üçün əmrləri işlədin və Monitorda çıxışı görün. Bir neçə saniyə sonra bütün parametrləri göstərəcək. Hər şeyin problemsiz işlədiyinə əmin olduqdan sonra bu layihəni daha böyük bir layihəyə götürə bilərsiniz.
Addım 5: Tətbiqlər və Xüsusiyyətlər
MPL3115A2 Precision Altimeter I²C sensorunun ümumi istifadəsi Xəritə (Map Assist, Navigation), Magnetic Compass, or GPS (GPS Dead Reckoning, GPS Enhancement for Emergency Services), High Accuracy Altimetry, Smartfon/Tablet, Personal Electronics Altimetry kimi tətbiqlərdədir. və Peyklər (Hava Stansiyası Avadanlıqları/Proqnozlaşdırma).
Məsələn Raspberry Pi istifadə edərək hündürlüyü, hava təzyiqini və temperaturu ölçən Fərdi Elektronik Altimetr hazırlamaq üçün bir layihə. Fərdi Elektronik Altimetr qurmaq üçün olduqca sürətli bir layihədir. Bütün hissələriniz varsa və improvizasiya etməsəniz, bir neçə dəqiqə çəkəcək (əlbəttə edə bilərsiniz!). Təzyiq altimetri əksər təyyarələrdə olan bir altimetrdir və göydələnlər oxşar məqsədlər üçün biləyə quraşdırılmış versiyalardan istifadə edirlər. Yürüyüşçülər və alpinistlər bilək və ya əllə tutulan altimetrlərdən istifadə edirlər.
Addım 6: Nəticə
Ümid edirik ki, bu layihə daha çox sınaqlara ilham verəcək. Bu I²C sensoru inanılmaz dərəcədə çox yönlü, ucuz və əlçatandır. Son dərəcə dəyişkən bir proqram olduğundan, bu layihəni genişləndirmək və daha da yaxşılaşdırmaq üçün maraqlı yollar var. Məsələn, altimetr off-road avtomobillərində naviqasiyaya kömək etmək üçün isteğe bağlı bir alətdir. Asfalt yolları tərk etməyi düşünməyən bəzi yüksək performanslı lüks avtomobillər bu texnologiyadan istifadə edir. Rahatlığınız üçün YouTube -da araşdırmalarınıza kömək edə biləcək maraqlı bir video dərsimiz var. Ümid edirik ki, bu layihə daha çox sınaqlara ilham verəcək.
Tövsiyə:
CPS120 və Raspberry Pi istifadə edərək təzyiq ölçülməsi: 4 addım
CPS120 və Raspberry Pi istifadə edərək təzyiq ölçülməsi: CPS120, tam kompensasiya edilmiş çıxışı olan yüksək keyfiyyətli və aşağı qiymətli kapasitiv mütləq təzyiq sensoru. Çox az enerji sərf edir və təzyiqin ölçülməsi üçün ultra kiçik Mikroelektromekanik Sensordan (MEMS) ibarətdir. Sigma-delta əsaslı
BMP280 -DHT11 istifadə edən Arduino Hava İstasyonu - Temperatur, Rütubət və Təzyiq: 8 Addım
BMP280 -DHT11 -dən istifadə edən Arduino Hava İstasyonu - Temperatur, Rütubət və Təzyiq: Bu təlimatda TFT 7735 LCD Ekranda SICAKLIQ, NEMLİK və BASINCI göstərəcək bir hava stansiyası qurmağı öyrənəcəyik
Neopixel Ws2812 M5stick-C ilə Göy qurşağı LED Glow - Arduino IDE -dən istifadə edərək M5stack M5stick C -dən istifadə edərək Neopixel Ws2812 -də Göy qurşağının Çalışması: 5 addım
Neopixel Ws2812 M5stick-C ilə Göy qurşağı LED Glow | Arduino IDE istifadə edərək M5stack M5stick C istifadə edərək Neopixel Ws2812 üzərində Göy qurşağı çalıştırın: Salam uşaqlar bu təlimatlarda Arduino IDE ilə m5stack m5stick-C inkişaf lövhəsi ilə neopixel ws2812 LED və ya led şerit və ya led matris və ya led üzük istifadə etməyi öyrənəcəyik. onunla bir göy qurşağı nümunəsi
HT12D HT12E istifadə edərək RF 433MHZ Radio İdarəetmə - 433mhz ilə HT12E və HT12D istifadə edərək Rf Uzaqdan İdarəetmə edilməsi: 5 addım
HT12D HT12E istifadə edərək RF 433MHZ Radio İdarəetmə | HT12E və HT12D -dən 433mhz istifadə edərək Rf Uzaqdan İdarəetmə edilməsi: Bu təlimatda sizə HT12E kodlu 433mhz ötürücü qəbuledici modulu istifadə edərək RADIO uzaqdan idarə etməyi göstərəcəyəm. HT12D kod deşifratoru IC. Bu təlimatda çox ucuz komponentləri istifadə edərək məlumat göndərə və ala bilərsiniz: HT
Raspberry Pi istifadə edərək, MPL3115A2 ilə Yüksəkliyi, Təzyiqi və Temperaturu Ölçün: 6 Addım
MPL3115A2 ilə Raspberry Pi, Yüksəkliyi, Təzyiqi və Temperaturu Ölçün: Sahib olduğunuzu bilin və niyə sahib olduğunuzu bilin! Maraqlıdır. Bir çox yeni tətbiqə girən İnternet Avtomatlaşdırma əsrində yaşayırıq. Kompüter və elektronika həvəskarları olaraq, Raspberry Pi a ilə çox şey öyrənmişik