Isi kandungan:
- Langkah 1: Sediakan Pi
- Langkah 2: Wire It All Up
- Langkah 3: Uji I2C Anda
- Langkah 4: Pasang MySQL dan PhpMyAdmin
- Langkah 5: Pasang Modul Python
- Langkah 6: Kod untuk Log ke Pangkalan Data
- Langkah 7: Kod untuk Paparkan Temp
- Langkah 8: Lekapan Bercetak 3D
- Langkah 9: Perkara Yang Harus Dilakukan
Video: Jam Cuaca Raspberry Pi Barometer: 9 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:08
Dalam arahan ini saya akan menunjukkan kepada anda bagaimana untuk membina jam Thermometer / Barometer asas menggunakan Raspberry Pi 2 dengan sensor BMP180 I2C yang dipaparkan pada paparan Iaf 2 segmen 7 digit Adafruit. Pi juga menggunakan modul jam I2C masa nyata DS3231 untuk menyimpan masa ketika Pi dimulakan semula.
Jam bergerak sepanjang 4 peringkat masing-masing selama 5 saat. Mula-mula ia menunjukkan suhu dalam Celsius, kemudian di Fahrenheit kemudian tekanan barometrik dalam kPa * (ia berjalan nombor ini ke kiri kerana bilangan digit yang terhad) dan akhirnya ia menunjukkan aliran perubahan tekanan barometrik antara sekarang dan rata-rata jam sebelumnya.
Yang membuat jam ini berbeza dengan kebanyakannya ialah menggunakan pangkalan data MySQL pada Pi untuk log data dari BMP180 setiap minit. Oleh kerana tekanan barometrik semasa tidak begitu berharga dengan pergerakannya naik atau turun dalam jangka waktu tertentu, ia menggunakan pangkalan data ini untuk mengira purata selama satu jam antara 2 jam hingga 1 jam yang lalu dan membandingkannya dengan tekanan semasa. Peningkatan tekanan barometrik yang ketara biasanya menunjukkan peningkatan dalam keadaan cuaca vs penurunan yang besar dapat memberi amaran akan ribut yang akan datang.
Jam ditempatkan di perumahan ABS bercetak 3D dengan BMP180 dalam penutup berventilasi di bahagian belakang jam untuk mengelakkan haba yang dihasilkan oleh Pi daripada mempengaruhi bacaan suhu. Saya akan memberikan skema Autodesk 123D Design jika anda ingin mencetak sendiri.
Jam dihidupkan dengan kutil dinding USB standard dan menghasilkan keseluruhan 450 mA.
Saya tidak akan terlalu banyak terperinci mengenai penyediaan asas Pi dan I2C kerana ini telah diliputi dalam banyak arahan lain yang akan saya berikan pautan.
Langkah 1: Sediakan Pi
Sediakan Raspberry Pi - Butiran anda di Raspberrypi.org
- Muat turun dan pasangkan Pengedaran Linux yang anda pilih pada kad SD - Saya menggunakan Raspbian
- Pasang pi dan pasangkannya
- Saya menggunakan penyesuai WiFi mikro untuk menyambungkan pi ke penghala saya kerana perumahan jam mengaburkan port Ethernet.
- Saya menggunakan mod tanpa kepala di mana anda menyambung ke pi menggunakan SSH sehingga semua yang anda perlukan adalah kekuatannya.
- Konfigurasikan I2C di Pi - Saya mengikuti arahan ini di laman Adafruit.
Langkah 2: Wire It All Up
Semua modul yang saya gunakan dalam projek ini bertoleransi 5V dan menggunakan I2C yang merupakan protokol 2 wayar yang digunakan untuk IC berkomunikasi antara satu sama lain, jadi pendawaiannya cukup mudah. Sambungkan semua VCC ke 5V, semua Tanah bersama-sama dan semua garis SCA dan SCL bersama-sama mengikut skema. Kerja selesai.
Langkah 3: Uji I2C Anda
Sebahagian daripada pemasangan I2C adalah menjalankan i2cdetect yang akan kelihatan seperti gambar yang dilampirkan sekiranya semuanya dipasang dengan betul.
Berikut adalah alamat yang sepadan
- 0x70 = 7 Paparan Segmen
- 0x77 = Sensor Thermometer / Barometer BMP180
- 0x68 = Modul Jam Sebenar DS3231
- 0x57 = DS3231 di atas kapal EEPROM untuk menyimpan data penggera.
Langkah 4: Pasang MySQL dan PhpMyAdmin
Memasang mySQL agak lurus ke hadapan jika anda mengikuti tutorial di sini
sudo apt-get pasang mysql-server
Saya juga memasang phpMyAdmin yang merupakan laman web yang berjalan di Apache yang boleh anda gunakan untuk membuat dan menguruskan pangkalan data mySQL. Tutorial di sini
sudo apt-get install phpmyadmin
Setelah dipasang, saya menyediakan pangkalan data bernama BP180 menggunakan phpMyAdmin dengan struktur seperti gambar.
Saya juga menggunakan modul python yang disebut mysqlDB yang boleh anda pasang menggunakan
sudo apt-get install python-mysqldb
Langkah 5: Pasang Modul Python
Muat turun dan pasang modul python di bawah yang akan anda gunakan untuk menyambung ke sensor.
- Modul Adafruit_BMP085
- Modul SDL_DS3231
- Modul Adafruit 7 Segmen
Langkah 6: Kod untuk Log ke Pangkalan Data
Coretan kod di bawah digunakan untuk mencatat suhu dan tekanan barometrik dan dipanggil dari skrip cron (tugas berjadual Linux) yang berjalan setiap 5 minit. Untuk mengetahui cara menggunakan crond lihat tutorial ini.
NB! Jangan repot-repot membuang kemahiran pengkodan saya, saya bukan pemaju jadi ya mungkin ada satu juta cara yang lebih baik, lebih cepat, lebih lancar, lebih bersih untuk melakukan ini
Anda akan perhatikan dalam kodnya suhu menurun sebanyak 7 darjah yang setara dengan haba yang dihasilkan oleh Raspberry Pi walaupun BMP180 dipasang di bahagian luar perumahan. Ketika saya mula-mula memilikinya di dalam perumahan, suhu sekitar 15 darjah lebih panas daripada persekitaran. Nampaknya agak linier, tetapi saya tidak berkesempatan untuk menguji tahap ekstrem. Maklum balas pengalaman anda akan dihargai.
Langkah 7: Kod untuk Paparkan Temp
Kod ini dipanggil untuk menelusuri tampilan sesuai pengenalan.
Sekali lagi, saya bukan pemaju jadi kodnya benar-benar kasar, tetapi ia berfungsi
Langkah 8: Lekapan Bercetak 3D
Seterusnya adalah reka bentuk kandang. Ini agak mencabar kerana bentuknya cenderung melengkung kerana bahagian cangkang luar hanya setebal 2mm. Saya mula-mula membuat tiruan Pi dan semua bahagiannya dan kemudian merancang kandang di sekelilingnya. Cetakan mengambil masa sekitar 7 jam pada RapMan 3.2 saya (yang merupakan pencetak yang agak perlahan) pada kedalaman lapisan 0.25.
Skema yang dilampirkan dilakukan dalam Autodesk 123D Design yang saya rasa adalah perisian percuma yang hebat.
Perhatikan beberapa lubang seperti lubang yang diperlukan untuk memasang Pi tidak sesuai dengan reka bentuk kerana lebih baik untuk mengebornya selepas itu sekiranya cetakan melengkung anda sedikit. Tangan yang stabil, bit gerudi 3 mm adalah yang anda perlukan. Tandakan kedalaman pada bit dengan beberapa pita pelekat sehingga anda tidak sengaja membaca cetakan 7 jam anda seperti yang saya lakukan.
Langkah 9: Perkara Yang Harus Dilakukan
- Jam Waktu Nyata adalah penambahan setelah penutup dicetak untuk kali ke-5 sehingga saat ini terpaku panas di sisi kandang yang tidak kelihatan baik jadi saya ingin membuat semula reka bentuk dan menambah tempat untuknya.
- Kecerahan paparan segmen 7 saat ini diatur ke paling ringan yang tidak optimum untuk keadaan cahaya yang kuat. Saya ingin menambahkan perintang foto ke bahagian atas kandang dan menyesuaikan kecerahan 7 segmen berdasarkan keadaan cahaya sekitar.
- Terdapat beberapa masalah reka bentuk kecil dengan keretakan asas yang juga akan diperbaiki.
- Sebarang idea dialu-alukan.
Saya harap anda menikmati pengajaran ini dan cukup memberi inspirasi untuk membuat anda terus maju. Ideanya adalah untuk menyediakan platform yang boleh anda gunakan untuk menambahkan idea anda sendiri. Berseronok!
Disyorkan:
Stesen Cuaca NaTaLia: Stesen Cuaca Bertenaga Suria Arduino Selesai Dengan Cara yang Betul: 8 Langkah (dengan Gambar)
Stesen Cuaca NaTaLia: Stesen Cuaca Bertenaga Suria Arduino Selesai Dengan Cara yang Betul: Setelah 1 tahun beroperasi di 2 lokasi yang berbeza, saya berkongsi rancangan projek stesen cuaca berkuasa solar saya dan menerangkan bagaimana ia berkembang menjadi sistem yang benar-benar dapat bertahan dalam jangka masa yang lama tempoh dari tenaga suria. Sekiranya anda mengikuti
Jam Pasang surut dan Cuaca: 9 Langkah (dengan Gambar)
Jam Pasang dan Cuaca: Walaupun anda boleh membeli jam pasang analog yang mempunyai satu tangan yang menunjukkan sama ada air pasang tinggi atau rendah atau di suatu tempat di antara, apa yang saya mahukan adalah sesuatu yang akan memberitahu saya pada waktu surut. Saya mahukan sesuatu yang saya dapat melihat q
Jam Persaraan / Jam Naik / Jam Dn: 4 Langkah (dengan Gambar)
Jam Persaraan / Jam Naik / Jam Dn: Saya mempunyai beberapa paparan dot-matriks 8x8 LED di dalam laci dan memikirkan apa yang harus dilakukan dengan mereka. Diilhamkan oleh instruksional lain, saya mendapat idea untuk membuat paparan hitung mundur / naik untuk dikira ke tarikh / masa yang akan datang dan jika waktu sasaran
Jam Penggera Pintar: Jam Penggera Pintar Dibuat Dengan Raspberry Pi: 10 Langkah (dengan Gambar)
Jam Penggera Pintar: Jam Penggera Pintar Dibuat Dengan Raspberry Pi: Adakah anda pernah mahukan jam pintar? Jika ya, ini adalah penyelesaian untuk anda! Saya membuat Jam Penggera Pintar, ini adalah jam yang boleh anda ubah waktu penggera mengikut laman web. Apabila penggera berbunyi, akan ada bunyi (bel) dan 2 lampu akan
Stesen Cuaca Acurite 5 dalam 1 Menggunakan Pi Raspberry dan Weewx (Stesen Cuaca lain Sesuai): 5 Langkah (dengan Gambar)
Stesen Cuaca Acurite 5 in 1 Menggunakan Raspberry Pi dan Weewx (Stesen Cuaca yang Lain Sesuai): Semasa saya membeli stesen cuaca Acurite 5 in 1, saya ingin dapat memeriksa cuaca di rumah saya semasa saya tiada. Semasa saya pulang dan menyiapkannya, saya menyedari bahawa saya mesti mempunyai paparan yang disambungkan ke komputer atau membeli hab pintar mereka