Isi kandungan:
- Langkah 1: Buat & Siapkan Saluran Thingspeak Anda
- Langkah 2: Siapkan Arduino IDE, Perpustakaan dan Konfigurasikan BME280
- Langkah 3: Program ESP8266 Dengan Arduino IDE
- Langkah 4: Kembali ke Thingspeak untuk Melakukan Penyesuaian Data
- Langkah 5: Edit Fail HTML yang Disediakan
Video: ESP8266 NodeMCU Dengan Tolok & Carta BME280: 5 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:12
Tolok dan Carta Mewah untuk papan Pembangunan NodeMCU ESP8266 anda dengan sensor Suhu, Kelembapan dan Tekanan BME280. Thingspeak akan menyimpan semua data anda di awan untuk diambil pada bila-bila masa selama bertahun-tahun (semoga) akan datang. Alat pengukur dan carta diisi dari data yang disimpan di thingspeak dan dikemas kini secara automatik setiap 5 minuet.
Item yang diperlukan:
Lembaga Pembangunan NodeMCU ESP8266 ($ 3,79 dari Banggood.com Hong Kong)
Bosch BME280 ($ 5.63 dari Banggood.com Hong Kong)
Pelompat Breadboard ($ 3.09 dari Banggood.com Hong Kong)
Papan Roti ($ 2.28 dari Banggood.com Hong Kong)
Bekalan Kuasa, Percuma jika anda mempunyai pengecas telefon USB mikro
Kabel USB mikro, Percuma jika anda sudah memilikinya
Arduino IDE, Muat turun Percuma
Dapatkan fail kod.ino &. HTML di sini
Langkah 1: Buat & Siapkan Saluran Thingspeak Anda
1. Buat akaun Thingspeak percuma dan saluran baru di https://thingspeak.com, Hubungi saluran "ESP8266-NodeMCU-12E-BME280"
2. Saluran baru harus mempunyai 3 bidang bernama Suhu Kelembapan Tekanan dalam urutan tertentu (Catatan huruf besar huruf besar).
3. Perhatikan "saluran ID" XXXXXX baru anda di bawah "Tetapan Saluran"
4. Klik pautan "Kunci API" dan perhatikan "Tulis API" dan "Kunci API Baca" anda XXXXXXXXXXXXXXX. Juga, jadikan ini sebagai saluran awam di bawah perkongsian.
5. Buat saluran Thingspeak kedua yang akan memuatkan "Hari Ini" (sejak tengah malam) data Rendah Tinggi. Sebut saja "Data Rendah Tinggi Harian BME280"
6. Saluran baru ini harus mempunyai 6 medan bernama Tmax Tmin Hmax Hmin Pmax Pmin dalam urutan khusus itu (Nota huruf besar Huruf Pertama).
7. Perhatikan ID saluran "Data Rendah Tinggi Harian BME280" "," Baca "&" Tulis kekunci API "seperti pada langkah di atas.
Langkah 2: Siapkan Arduino IDE, Perpustakaan dan Konfigurasikan BME280
8. Ikuti arahan untuk memasang teras Arduino IDE & ESP8266 di
9. Nyalakan Arduino IDE sehingga kami dapat memasang empat perpustakaan yang kami perlukan.
10. Anda memerlukan perpustakaan "Adafruit Unified Sensor Driver", memasangnya di "Library Manager" di Arduino IDE. Sketsa Menu Sertakan Perpustakaan Kelola Perpustakaan melakukan carian mengikut Jenis = "Disarankan" Topik = "Sensor" kemudian masukkan kata-kata Adafruit Unified Sensor Driver di kotak carian. Yang anda mahukan mengatakan "Adafruit Unified Sensor Driver by Adafruit"
11. Di samping itu, anda juga memerlukan "Adafruit BME280 Library" memasangnya di "Library Manager" di Arduino IDE. Sketsa Menu Sertakan Perpustakaan Kelola Perpustakaan melakukan carian mengikut Jenis = "Disarankan" Topik = "Sensor" kemudian letakkan kata-kata Adafruit BME280 Library di kotak carian. Yang anda mahukan mengatakan "Adafruit BME280 Library by Adafruit"
12. Perpustakaan lain yang anda perlukan adalah Wire.h, pasangkannya di "Library Manager" di Arduino IDE. Menu, Sketsa Sertakan Perpustakaan Menguruskan Perpustakaan Lakukan carian mengikut Jenis = "Disumbang" Topik = "Input / Output Isyarat" kemudian masukkan perkataan Wire di kotak carian. Yang anda mahukan mengatakan "Wire Built-in by Arduino" Kemungkinan besar di bahagian bawah pilihan.
13. Satu lagi perpustakaan, ESP8266WiFi, pasangkannya di "Library Manager" di Arduino IDE. Menu, Sketsa Sertakan Perpustakaan Menguruskan Perpustakaan Lakukan carian mengikut Jenis = "Disumbang" Topik = "Komunikasi" kemudian masukkan kata ESP8266wifi di kotak carian. Yang anda mahukan mengatakan "ESP8266wifi Built-in oleh Ivan Grokhotkov"
14. Alamat I2C untuk BME280 dikodekan keras dalam fail Adafruit_BME280.h (cari baris #define BME280_ADDRESS 0x77) di dalam folder Adafruit_BME280_Library. Modul sensor BME Adafruit berwayar keras untuk menggunakan alamat I2C 0x77. Tetapi BME280 boleh mempunyai alamat I2C yang sedikit berbeza (0x76) jika pin SDO luarannya dibumikan. Sekiranya anda menggunakan modul sensor dari pihak ketiga, kemungkinan alamatnya tidak sesuai dengan nilai lalai di perpustakaan Adafruit. Sebagai contoh, untuk kebanyakan modul sensor BME280 yang terdapat di eBay atau Aliexpress mempunyai alamat I2C mereka menjadi 0x76. Sekiranya anda tidak mendapat respons dari sensor menggunakan alamat lalai yang ditetapkan dalam fail Adafruit_BME280.h, anda mungkin perlu mengubahnya menjadi 0x76.
Titik Sambungan BME280 & ESP8266. ESP8266 3.3V hingga BME280 Vin, ESP8266 GND hingga BME280 GND, ESP8266 D4 hingga BME280 SCL, ESP8266 D3 hingga BME280 SDA. 15. Buka fail ESP8266-NodeMCU-12E-BME280.html yang disediakan dalam editor teks dan masukkan "ESP8266-NodeMCU-12E-BME280" (Saluran pertama yang anda buat) "Saluran ID" & "Baca API Kunci" untuk pemboleh ubah key1 & chan1. Masukkan juga "Baca API Key" dan "Channel ID" untuk "BME280 Daily High Low Data" (Saluran kedua yang anda buat) untuk key2 dan chan2. Di samping itu, masukkan pengimbangan zon waktu anda dari UTC. Seperti dalam -5 untuk saya. Semua nilai mesti ada di dalam petikan tunggal yang disediakan 'XXXXX'. Simpan dan keluar dari penyunting teks.
Pasangkan ESP8266 anda dengan kabel USB ke komputer anda kemudian pilih port bersiri anda untuk menjadi port USB.
Pengguna Linux mungkin perlu mengubah kepemilikan port USB untuk berkomunikasi dengan / dev / ttyUSB0 seperti dalam 'sudo chown yourusername / dev / ttyUSB0' atau apa sahaja yang anda pilih sebagai port anda dalam persediaan.
Langkah 3: Program ESP8266 Dengan Arduino IDE
16. Seterusnya kita akan memprogram ESP8266. Sambungkan kabel USB antara ESP8266 dan komputer anda.
Muatkan fail New_BME_Sensor.ino yang disediakan ke Arduino IDE. Sensor BME280 anda harus disambungkan ke D3 (SDA) & D4 (SCL) pada ESP8266. Masukkan "ESP8266-NodeMCU-12E-BME280" (Saluran pertama yang anda buat) "Tulis Kunci" "SSID Tanpa Wayar" & "Kata Laluan" ke bahagian lakaran yang betul. Kemudian klik item menu "Sketch" & "Upload". Selepas anda memuat naik lakaran (Kemajuan mencapai 100%) ke ESP8266, anda boleh membuka monitor bersiri (Ikon kanan atas kelihatan seperti kaca pembesar) dan melihat data anda dicetak selepas 5 Minit, setiap 5 Minit. Data dihantar ke thingspeak pada selang 5 minit sehingga akan ada beberapa saat sebelum anda mempunyai data carta yang bermakna tetapi anda harus mempunyai bacaan ukuran setelah 5 min.
Pastikan anda mendapat bacaan yang betul dari BME280 di monitor bersiri.
Pengukuran pertama kemungkinan menjadi nan tidak sah.
Tunggu beberapa minuet hingga bacaan seterusnya dan sahkan bacaannya bagus.
Langkah 4: Kembali ke Thingspeak untuk Melakukan Penyesuaian Data
17. Sekarang, sementara data perlahan-lahan memuat naik ke thingspeak memungkinkan kita melakukan tweak untuk mendapatkan beberapa data tambahan dari apa yang dimuat naik. Kembali ke laman web thingspeak dan di halaman saluran Thingspeak "BME280 Daily Low Low Data" (Saluran kedua yang anda buat) klik butang hijau "MATLAB Analysis". Pilih Templat "Custom (No Starter Code)"
18. Namakan Analisis MATLAB "Hitung Min Max Sejak Tengah Malam".
19. Salin kod MATLAB Analysis.txt ke ruang yang disediakan. Masukkan "ID saluran" untuk "ESP8266-NodeMCU-12E-BME280" (Saluran pertama yang anda buat) ke dalam "readChannelID". Masukkan "Data Rendah Tinggi Harian BME280" (Saluran kedua yang anda buat) Tulis "ID Saluran" & "Kunci Tulis" ke dalam tulisNewChannelID & tulisAPIKey dengan hormat. Saya tahu kedengarannya membingungkan (baca lagi). Klik simpan dan jalankan. Sekiranya anda melakukannya dengan betul dan saluran yang dibaca adalah umum, anda tidak akan melihat kesilapan dan berjaya mencetak nilainya. Perhatikan, Anda mungkin melihat ralat jika belum ada data yang diunggah ke saluran tersebut. Walaupun kesalahan tetap berlaku. Sekiranya dikehendaki, anda boleh melihat semula Klik simpan dan jalankan untuk memastikannya berfungsi setelah data dimuat naik.
20. Seterusnya, kita perlu membuat "Time Control" untuk mengaktifkan kod ini setiap 5 min dan data kita ditulis ke saluran "BME280 Daily High Low Data" (Saluran kedua yang anda buat). Dari halaman utama "Data Rendah Tinggi Harian BME280" (Saluran kedua yang anda buat) pilih Aplikasi di bahagian atas. Di bawah tindakan pilih "TimeControl" kemudian butang Hijau "New TimeControl". Namakannya "Kirim Suhu Rendah Tinggi ESP8266". Pilih zon waktu anda jika diperlukan dan pilih "Berulang" di bawah Kekerapan. Pilih Minit di bawah Berulang. Dijalankan setiap 5 Minit. Tindakan haruslah Analisis MATLAB dan "Code to Execute" adalah "Hitung Min Max Sejak Tengah Malam". Jimat Masa Kawalan.
Langkah 5: Edit Fail HTML yang Disediakan
Edit fail HTML dan cari komen yang bertuliskan "******** Change Me 1 of 8 *********" Ubah ini mengikut pilihan anda.
Catatan:
Sebilangan medan teks dan carta mingguan tidak akan terisi dengan betul sehingga anda mempunyai data sepanjang hari dan seminggu penuh untuk bahagian dan carta 24 Jam dan Minggu. Sebaik sahaja anda mempunyai banyak data, anda boleh memperbesar carta dengan roda tetikus (Klik Kanan untuk Reset). Anda juga boleh mempunyai alat pengukur keempat (seperti yang dilihat dalam tangkapan skrin) dari sensor lain dari saluran lain tetapi saya telah memulakan bahagian yang berkaitan. Sekiranya anda merasa bijak, sambungkannya. Terdapat juga beberapa masalah masa yang perlu diberi perhatian. Anda mungkin tidak akan mempunyai data terkini mutlak, tetapi data tersebut mestilah kurang dari 5 Minit. Ini berasal dari saat pengendalian waktu dipecat, Ketika data dikirim dari ESP8266 dan ketika Anda memuat / menyegarkan halaman web.
Buka fail ESP8266-NodeMCU-12E-BME280.html yang disediakan di penyemak imbas web anda dan anda akan melihat alat pengukur dan carta diisi.
Dapatkan fail kod.ino &. HTML di sini
Disyorkan:
Tolok Tekanan Maya Bahagian 1.: 4 Langkah
Tolok Tekanan Maya Bahagian 1.: Tolok tekanan digunakan dalam industri seperti ladang minyak. Saya telah menggunakan alat pengukur tekanan berkali-kali dalam pekerjaan siang hari, terutamanya ketika berurusan dengan mesin hidraulik. Dan saya tertanya-tanya bagaimana saya boleh membuat pengukur tekanan maya. Projek ini adalah 2-par
Tolok Tekanan Maya Bahagian 2.: 4 Langkah
Virtual Pressure Gauge Bahagian 2.: Projek ini adalah bahagian kedua dari projek yang saya buat sebelumnya. Pada bahagian pertama, saya telah merancang alat pengukur tekanan maya yang dapat dikawal dengan kekunci UP dan BAWAH di papan kekunci komputer anda. lihat Virtual Pressure Gauge Part1 Kali ini kita akan menyusun
Sensor Suhu Mesin / Tolok Dengan Probe Tanpa Wayar untuk Kenderaan Klasik: 7 Langkah
Sensor Suhu Enjin / Tolok Dengan Probe Tanpa Wayar untuk Kenderaan Klasik: Saya membuat penyelidikan ini untuk Çipitak saya yang cantik. Sebuah kereta fiat 126 dengan enjin 2 silinder berpendingin udara di bawah bonet belakang. Çipitak tidak mempunyai tolok suhu yang menunjukkan betapa panasnya enjin, jadi saya fikir sensor akan membantu. Juga mahu sensor menjadi wayar
Paparan Tolok Digital Kenderaan: 8 Langkah
Paparan Tolok Digital Kenderaan: Ini adalah projek tolok digital saya yang saya rancangkan untuk memasukkan 73 Montego saya. Ia dikuasakan oleh Arduino Mega 2560 R3, perisai terminal Skru, perisai TFT ITDB02 dan dilengkapi dengan Sain Smart 4.3 TFT. Tujuan projek ini adalah untuk memantau
Tolok Kelajuan Internet: 4 Langkah (dengan Gambar)
Tolok Kelajuan Internet: Gambaran Keseluruhan Ini " Tolok Kelajuan Internet " akan memberi anda pengawasan hampir masa nyata penggunaan rangkaian anda. Maklumat ini terdapat di antara muka web kebanyakan penghala rumah. Walau bagaimanapun, mengaksesnya memerlukan anda menghentikan tugas anda sekarang untuk