Mundarija:

Raspberry Pi barometrli ob -havo soati: 9 qadam (rasmlar bilan)
Raspberry Pi barometrli ob -havo soati: 9 qadam (rasmlar bilan)

Video: Raspberry Pi barometrli ob -havo soati: 9 qadam (rasmlar bilan)

Video: Raspberry Pi barometrli ob -havo soati: 9 qadam (rasmlar bilan)
Video: Pico 10DOF IMU — гироскоп, акселерометр, барометр и магнетометр для Raspberry Pi Pico от Waveshare 2024, Noyabr
Anonim
Raspberry Pi barometrli ob -havo soati
Raspberry Pi barometrli ob -havo soati

Bu yo'riqnomada men sizga Adafruit 4 -raqamli 7 -segmentli I2C -displeyda ko'rsatiladigan BMP180 I2C sensori bilan Raspberry Pi 2 yordamida termometr / barometrning asosiy soatini qanday qurishni ko'rsataman. Pi, shuningdek, Pi qayta ishga tushirilganda vaqtni saqlash uchun DS3231 real vaqtda I2C soat modulidan foydalanadi.

Soat har biri 5 soniya davomida 4 bosqichdan o'tadi. Birinchidan, u Selsiydagi haroratni, keyin Farengeytda, keyin kPa *da barometrik bosimni ko'rsatadi (bu raqamlar soni cheklanganligi uchun bu raqamni chap tomonga yuradi) va nihoyat, hozirgi va o'rtacha harorat o'rtasidagi barometrik bosim o'zgarishi tendentsiyasini ko'rsatadi. oldingi soat.

Bu soatni boshqasidan farqi shundaki, u har daqiqada BMP180 ma'lumotlarini qayd qilish uchun Pi -dagi MySQL ma'lumotlar bazasidan foydalanadi. Hozirgi barometrik bosim ma'lum vaqt davomida yuqoriga yoki pastga siljishidan unchalik qimmat bo'lmaganligi sababli, u bu ma'lumotlar bazasidan 2 soatdan 1 soatgacha bo'lgan bir soatlik o'rtacha vaqtni hisoblab chiqadi va uni hozirgi bosim bilan solishtiradi. Barometrik bosimning sezilarli darajada oshishi, odatda, ob -havo sharoitining yaxshilanishini ko'rsatdi va katta pasayish bo'ron bo'layotganini ogohlantirishi mumkin edi.

Piy ishlab chiqaradigan issiqlik harorat ko'rsatkichlariga ta'sir qilmasligi uchun soat BMP180 shamollatilgan qopqoqli, 3D bosilgan ABS korpusida joylashgan. Agar siz o'zingiz chop qilmoqchi bo'lsangiz, Autodesk 123D Design sxemasini taqdim etaman.

Soat standart USB devori bilan jihozlangan va umumiy qiymati 450 mA ni tashkil qiladi.

Men Pi va I2C -ning asosiy sozlamalari haqida juda ko'p tafsilotlarni aytmayman, chunki bu havolalarni taqdim etadigan boshqa ko'plab ko'rsatmalarni o'z ichiga oladi.

1 -qadam: Pi tayyorlang

Pi tayyorlang
Pi tayyorlang

Raspberry Pi -ni sozlang - Tafsilotlar Raspberrypi.org saytida

  1. Siz tanlagan Linux Distribution -ni SD -kartaga yuklab oling va o'rnating - men Raspbian -dan foydalanardim
  2. Pi -ni ulang va uni ishga tushiring
  3. Men pi -ni yo'riqchimga ulash uchun micro WiFi adapteridan foydalandim, chunki soat korpusi Ethernet portini yashiradi.
  4. Men SSH yordamida pi -ga ulanadigan boshsiz rejimdan foydalandim, shuning uchun sizga faqat quvvat kerak.
  5. Pi -da I2C -ni sozlang - men bu ko'rsatmalarni Adafruit saytida bajarganman.

2 -qadam: Hammasini bog'lang

Hammasini bog'lang
Hammasini bog'lang

Men ushbu loyihada ishlatadigan barcha modullar 5 V ga bardoshli va I2C dan foydalanadi, bu 2 simli protokoli bo'lib, IClar bir -biri bilan aloqa o'rnatadi, shuning uchun simlarni ulash juda oddiy. Barcha VCC -ni 5V ga, barcha Grounds -ni va barcha SCA va SCL liniyalarini sxemaga muvofiq ulang. Ish tugadi.

3 -qadam: I2C -ni sinab ko'ring

I2C -ni sinab ko'ring
I2C -ni sinab ko'ring

I2C o'rnatishning bir qismi i2cdetect -ni ishga tushirishdir, agar hamma narsa to'g'ri ulangan bo'lsa, u ilova qilingan rasmga o'xshaydi.

Quyida mos keladigan manzillar keltirilgan

  1. 0x70 = 7 segmentli displey
  2. 0x77 = BMP180 termometr / barometr sensori
  3. 0x68 = Real vaqt soati DS3231
  4. 0x57 = signalli ma'lumotlarni saqlash uchun EEPROM bortida DS3231.

4 -qadam: MySQL va PhpMyAdmin -ni o'rnating

MySQL va PhpMyAdmin -ni o'rnating
MySQL va PhpMyAdmin -ni o'rnating

Agar siz bu erdagi ko'rsatmaga amal qilsangiz, mySQL -ni o'rnatish juda oson

sudo apt-get mysql-serverni o'rnating

Men phpMyAdmin -ni o'rnatdim, u Apache -da ishlaydigan veb -sayt bo'lib, undan mySQL ma'lumotlar bazalarini yaratish va boshqarish mumkin. Qo'llanma bu erda

sudo apt-get phpmyadmin-ni o'rnating

O'rnatilgandan so'ng, rasmga ko'ra tuzilishi bilan phpMyAdmin yordamida BP180 nomli ma'lumotlar bazasini o'rnatdim.

Men ham o'rnatishingiz mumkin bo'lgan mysqlDB deb nomlangan python modulidan foydalanaman

sudo apt-get install python-mysqldb

5 -qadam: Python modullarini o'rnating

Sensorlarga ulanish uchun quyidagi python modullarini yuklab oling va o'rnating.

  1. Adafruit_BMP085 moduli
  2. SDL_DS3231 moduli
  3. Adafruit 7 segment moduli

6 -qadam: Ma'lumotlar bazasiga kirish uchun kod

Quyidagi kod parchasi harorat va barometrik bosimni qayd qilish uchun ishlatiladi va har 5 daqiqada ishlaydigan cron skriptidan (Linux rejalashtirilgan vazifalar) chaqiriladi. Crond -dan qanday foydalanishni bilish uchun ushbu qo'llanmani ko'rib chiqing.

NB! Mening kodlash ko'nikmalarimni buzishdan bezovta bo'lmang, men ishlab chiquvchi emasman, ha, ehtimol, buni qilishning millionlab yaxshiroq, tezroq, silliq va toza usullari bor

Siz kodda harorat 7 darajaga pasayganini ko'rasiz, bu hatto Raspberry Pi ishlab chiqaradigan issiqlikka teng, hatto korpus tashqarisida o'rnatilgan BMP180 bilan. Men uni dastlab korpus ichida bo'lganimda, u atrof -muhitga qaraganda 15 daraja issiqroq edi. Bu juda chiziqli ko'rinadi, lekin men hech qanday cheklovlarni sinab ko'rish imkoniyatiga ega emasman. Sizning tajribangiz haqidagi fikr -mulohazalaringiz minnatdor bo'lardi.

7 -qadam: haroratni ko'rsatish uchun kod

Haroratni ko'rsatish uchun kod
Haroratni ko'rsatish uchun kod
Haroratni ko'rsatish uchun kod
Haroratni ko'rsatish uchun kod
Haroratni ko'rsatish uchun kod
Haroratni ko'rsatish uchun kod
Haroratni ko'rsatish uchun kod
Haroratni ko'rsatish uchun kod

Bu kod kirish qismiga muvofiq displeyda aylanib o'tishga chaqiriladi.

Shunga qaramay, men ishlab chiquvchi emasman, shuning uchun kod juda qo'pol, lekin u ishlaydi

8 -qadam: 3D bosma korpus

3D bosma korpus
3D bosma korpus
3D bosma korpus
3D bosma korpus
3D bosma korpus
3D bosma korpus
3D bosma korpus
3D bosma korpus

Keyingi - korpus dizayni. Bu juda qiyin edi, chunki shakli burilishga moyil, chunki tashqi qobig'ining qismlari qalinligi atigi 2 mm. Men avval Pi va uning barcha qismlarining maketlarini chizdim, so'ngra uning atrofini o'rab oldim. Bosma 0,25 qavat chuqurlikdagi RapMan 3.2 -da (bu juda sekin printer) taxminan 7 soat davom etdi.

Ilova qilingan sxema Autodesk 123D Dizaynida qilingan, menimcha, bu ajoyib dasturiy ta'minot.

E'tibor bering, Pi -ni o'rnatish uchun zarur bo'lgan ba'zi teshiklar dizaynda emas, chunki matbaa biroz burishgan bo'lsa, ularni keyinroq burg'ulash yaxshiroqdir. Barqaror qo'l - 3 mm matkap uchi. Siz tasodifan men kabi 7 soatlik bosmadan o'tib ketmasligingiz uchun chuqurlikni niqob tasmasi bilan belgilang.

9 -qadam: Nima qilish kerak

Nima qilish kerak
Nima qilish kerak
  1. Haqiqiy vaqt soati 5-marta bosilgandan so'ng qo'shimcha edi, shuning uchun u hozirda korpusning yon tomoniga issiq yopishtirilgan, u yaxshi ko'rinmaydi, shuning uchun men dizaynni qayta bajarib, unga joy qo'shmoqchiman.
  2. 7 segmentli displeyning yorqinligi hozircha eng yorug'lik darajasida o'rnatildi, bu kuchli yorug'lik sharoitlari uchun maqbul emas. Men korpusning yuqori qismiga fotosurat qarshiligini qo'shmoqchiman va atrofdagi yorug'lik sharoitiga qarab 7 segmentli nashrida sozlashni xohlayman.
  3. Asosiy yorilish bilan bog'liq kichik dizayn muammolari mavjud, ular ham hal qilinadi.
  4. Har qanday fikr qabul qilinadi.

Umid qilamanki, sizga bu ko'rsatma yoqdi va sizni ilhomlantirdi deb o'ylayman. Maqsad - bu o'z g'oyalaringizni qo'shish uchun foydalanishingiz mumkin bo'lgan platformani taqdim etish. Maza qiling!

Tavsiya: