Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Stasiun Cuaca Pribadi (Arduino+ ESP8266 + Thingspeak)

Komponen dan persediaan

Adafruit BMP180
× 1
Sensor Suhu &Kelembaban DHT11 (4 pin)
× 1
LDR
Resistor Bergantung Cahaya
× 1
Espressif ESP8266 ESP-01
× 1
Arduino Nano R3
× 1
Resistor 4.75k ohm
× 1
Resistor 51K
× 1
Modul Daya Step-Down Konverter Buck DC-DC LM2596
× 1
Jaket DC
× 1
sakelar
× 1
adaptor dinding 12v-2A
× 1
PCB
× 1
Header Pria 40 Posisi 1 Baris (0,1")
× 1
Judul Wanita 8 Posisi 1 Baris (0,1")
× 5
kotak plastik
× 1

Alat dan mesin yang diperlukan

pencabut kabel
Pistol lem panas (generik)
Besi solder (generik)
driver obeng
File
digunakan untuk kerajinan tangan

Aplikasi dan layanan online

Arduino IDE
ThingSpeak API

Tentang proyek ini

Intro:Membuat Stasiun Cuaca Pribadi

Duduk di kamar Anda, Anda mulai berkeringat atau merasa kedinginan; Anda bertanya-tanya berapa suhu di kamar Anda? atau apa yang akan menjadi kelembaban? Ini terjadi dengan saya beberapa waktu lalu.

Hal ini menyebabkan lahirnya Personal Weather Station, yang memantau suhu, kelembapan, tekanan, dan intensitas cahaya ruangan Anda dan mengunggahnya ke saluran pribadi di thingspeak.com.

Mari kita mulai.

Langkah 1:Video cepat

Ini adalah video kecil, yang merangkum semuanya dalam 5 menit.

Klik di sini untuk menonton di youtube.

Langkah 2:Komponen elektronik yang dibutuhkan untuk Personal Weather Station

Deskripsi: Kami akan menggunakan DHT11 untuk merasakan kelembaban, BMP180 untuk merasakan suhu dan tekanan dan Light Dependent Resistor (LDR) untuk mendapatkan gambaran kasar tentang intensitas cahaya. Arduino nano akan mengumpulkan data dari sensor ini dan mengirimkannya ke ESP8266 untuk diunggah ke saluran pribadi Anda di thingspeak.com. Kami akan memberi daya Arduino nano kami dari adaptor dinding 12V-2A, sensor dan ESP8266 akan menerima tegangan turun yang dikonversi dari konverter uang berbasis LM2596.

Daftar komponen:

  • Sensor tekanan dan suhu BMP180,
  • Sensor kelembaban DHT11,
  • Light Dependent Resistor (LDR),
  • Modul wifi ESP8266 (siap firmware),
  • Arduino nano,
  • 2 Resistor- 51 KOhm dan 4,7 KOhm,
  • Konverter uang LM2596,
  • Soket DC,
  • Beralih dan
  • Adaptor dinding 12V-2A.

Langkah 3:Alat dan item tambahan yang dibutuhkan untuk Personal Weather Station

Deskripsi: Kami akan menggunakan wire stripper untuk pengupasan kawat, file untuk menghaluskan luka/lubang pada enclosure, glue gun untuk menempatkan komponen di dalam enclosure, obeng untuk menutup penutup enclosure dan solder besi dengan kawat solder untuk merakit rangkaian pada general purpose circuit board (GCB) . Kotak plastik 4x4x2 inci berfungsi sebagai penutup. Kami juga membutuhkan strip berg pria dan wanita bersama dengan konektor wanita untuk perakitan yang benar di GCB.

Daftar Alat:

  • Pencabut kabel,
  • Berkas,
  • Pistol lem,
  • Sopir sekrup dan
  • Besi solder dan kawat solder.

Daftar item tambahan:

  • Kotak plastik berukuran 4x4x2 inci (saya menggunakan dimensi ini, semua dimensi terdekat tidak masalah),
  • Papan sirkuit serba guna,
  • jalur berg pria dan wanita dan
  • konektor wanita.

Langkah 4:Persyaratan perangkat lunak

Deskripsi:Untuk melihat nilai data sensor, kami membutuhkan saluran pribadi di thingspeak.com. Kita akan membutuhkan Arduino IDE untuk menulis kode arduino untuk arduino nano. (Saya berasumsi bahwa kalian memiliki PC/laptop dan rute wifi dengan akses ke internet)

Daftar persyaratan perangkat lunak:

  • Saluran pribadi di Thingspeak.com dan
  • Arduino IDE (Lebih disukai versi terbaru).

Anda dapat mengunduh Arduino IDE versi terbaru dari arduino.cc. Sekarang mari buat saluran pribadi di thingspeak.com.

Langkah 5:Membuat saluran pribadi di Thingspeak.com

Untuk membuat saluran pribadi di thingspeak.com ikuti langkah-langkah berikut:

  • Buka browser web Anda dan buka thingspeak.com dan klik tab 'Daftar' di pojok kanan atas, (Gambar no.1)
  • Isi detail dan klik 'Buat akun', (Nomor gambar 2)
  • Sekarang klik tab 'Saluran Baru', (Gambar no.3)
  • Sekali lagi isi detail untuk saluran dan aktifkan 4 bidang (karena kami akan mengirimkan 4 nilai sensor), gulir ke bawah dan klik tab 'Simpan Saluran', (Gambar no.4/5)
  • Pada halaman ini, klik tab 'Kunci API' dan catat 'Tulis Kunci API' Anda.

Itu saja, sekarang Anda memiliki saluran ThingSpeak pribadi Anda.

Sekarang mari kita gabungkan semua komponen elektronik.

Langkah 6:Skema untuk Stasiun Cuaca Pribadi

Berikut saya lampirkan gambar skema Personal Weather Station. Saya juga melampirkan file fritzing untuk hal yang sama. Koneksi cukup sederhana.

  • BMP180 terhubung ke port I2C arduino nano.
  • LDR dihubungkan dengan cara pembagi tegangan dengan resistor 51 KOhm dan sambungannya dihubungkan ke pin A1 arduino nano.
  • Pin data DHT11 ditarik tinggi dengan resistor 4,7 KOhm dan dihubungkan ke pin A0 arduino nano.
  • TX dan RX ESP8266 masing-masing terhubung ke D10 dan D11 dari arduino nano. CH_PD ESP8266 terhubung ke rel 3.3V.
  • Sesuaikan output modul LM2596 ke 3.3V dengan memutar potensiometer pada modul ini. Hubungkan output modul ini ke Vcc dan Gnd masing-masing Vcc dan Gnd BMP180, DHT11, LDR dan ESP8266.
  • Input modul LM2596 berasal dari adaptor dinding 12V-2A yang juga terhubung ke Vin dan Gnd Arduino nano.

Kita perlu merakit sirkuit ini di papan Sirkuit Tujuan Umum. Mari lakukan itu.

Langkah 7:Merakit sirkuit pada papan Sirkuit Tujuan Umum (GCB)

Alat perangkat keras dan item tambahan dari langkah 3 sekarang ada dalam bisnis.

  • Gunakan female berg strip untuk penempatan Arduino nano dan ESP8288 di GCB,
  • Gunakan besi solder dan kawat solder untuk menghubungkannya secara elektrik ke papan,
  • Gunakan konektor perempuan untuk memperluas jangkauan semua sensor dan modul LM2596 karena akan menempel pada tutup dan dinding enklosur,
  • Gunakan strip berg pria untuk membuat titik penghubung untuk ekstensi wanita yang dibuat di atas,
  • Realisasikan skema rangkaian pada GCB menggunakan kabel (kupas menggunakan wire stripper), atau rel dari kawat solder yang dilelehkan dan terakhir,
  • Periksa jenis sebelum memberi daya pada sirkuit menggunakan multimeter.

Sekarang setelah semua perangkat keras ditempatkan di GCB, mari kita lihat kodenya.

Langkah 8:Kode

Kode untuk Personal Weather Station cukup sederhana. Saya telah mengomentari kode dengan benar untuk kemudahan portabilitas. Sebelum Anda membakar kode, perhatikan hal-hal berikut.

  • Pastikan semua pustaka sudah terpasang,
  • Ganti tanda hubung dengan SSID titik akses Anda (router wifi) di baris 14 kode,
  • Ganti tanda hubung dengan PASSWORD jaringan wifi Anda pada baris 15 kode,
  • Ganti tanda hubung dengan saluran pribadi ThingSpeak Anda, tulis kunci API di baris 17 dan
  • Saat memprogram Arduino nano, pastikan suplai DC 12V Anda MATI.

Berikut ini tautan ke github (Personal Weather Station) untuk mengunduh kode dan pustaka yang saya gunakan.

Sekarang setelah kami memiliki perangkat keras dan perangkat lunak, yang tersisa hanyalah pengemasan.

Langkah 9:Persiapan kandang

Sekarang kita perlu membuat lubang dengan berbagai bentuk dan ukuran pada kotak berukuran 4x4x2 inci. Kita perlu membuat lubang untuk jack DC dan menyalakan setiap dinding selungkup yang diinginkan. Kita juga perlu membuat lubang untuk sensor pada tutup enklosur.

Saya telah melampirkan gambar yang menunjukkan dimensi lubang yang perlu kita buat pada enklosur.

Gunakan pisau panas untuk memotong plastik.

Gunakan file untuk menghaluskan lubang.

Sekarang enklosur Anda siap untuk menampung sirkuit Anda.

Langkah 10:Menutup penutupnya

Letakkan GCB rakitan Anda di dalam enklosur.

Tempatkan sakelar dan jack DC di lubang di dinding; sensor pada lubang tutupnya. Selesaikan posisi mereka dan gunakan lem untuk memperbaikinya. Terakhir gunakan obeng untuk menutup tutupnya.

Itu dia, Stasiun Cuaca Pribadi Anda. Nyalakan catu daya dan lihat suhu, kelembapan, tekanan, dan intensitas cahaya ruangan Anda dari mana saja di dunia melalui ponsel cerdas/PC/Laptop/Tablet Anda di saluran pribadi ThingSpeak Anda.

Itu saja untuk Proyek ini. Komentar jika ada keraguan. Terima kasih sudah membaca.

Kode

  • Kode
KodeArduino
#include #include #include #include #define DEBUG 0 // ubah nilai menjadi 1 untuk mengaktifkan debug menggunakan serial monitor #define dht_pin A0 // mendefinisikan pin A0 untuk sensor DHT#define lightSensor A1 // mendefinisikan pin A1 sebagai pin input untuk pembagi tegangan LDR DHT;Adafruit_BMP085 bmp;SoftwareSerial esp8266Module(10, 11); // RX, TXString jaringan ="----"; // kata sandi SSIDString titik akses Anda ="-------------"; // kata sandi Titik Akses wifi Anda#define IP "184.106.153.149" // alamat IP thingspeak.comString GET ="GET /update?key=----------------"; // ganti dengan pengaturan keyvoid saluran Anda(){ if(DEBUG){ Serial.begin(9600); // Mengatur baud rate serial perangkat keras ke 9600 } esp8266Module.begin(9600); // Mengatur baud rate softserial ke 9600 if (!bmp.begin()) { if(DEBUG){ Serial.println("Could not find a valid BMP085 sensor, check wiring!"); } while (1) {} } delay(2000);}void loop() { setupEsp8266(); DHT.read11(dht_pin); humi ganda =DHT.kelembaban; bmp_temp ganda =bmp.readTemperature(); double bmp_pressure =bmp.readPressure(); int lightIntensity =analogRead(lightSensor); updateTemp(String(bmp_temp) ,String(lightIntensity),String(bmp_pressure),String(humi)); delay(30000);}//------------------------------------------------------ -------------------------// Berikut fungsi setup esp8266, letakkan di stasiun yang dibuat dan // sambungkan ke titik akses wifi.//- -------------------------------------------------- ---------------void setupEsp8266() { if(DEBUG){ Serial.println("Mengatur ulang esp8266"); } esp8266Module.flush(); esp8266Module.println(F("AT+RST")); penundaan (7000); if (esp8266Module.find("OK")) { if(DEBUG){ Serial.println("Ditemukan OK"); Serial.println("Mengubah espmode"); } esp8266Module.flush(); mengubahMode(); penundaan(5000); esp8266Module.flush(); connectToWiFi(); } else { if(DEBUG){ Serial.println("OK tidak ditemukan"); } }}//-------------------------------------------------------- ----------------------// Fungsi berikut menyetel esp8266 ke mode stasiun//----------------- -------------------------------------------------- bool changeMode(){ esp8266Module.println(F("AT+CWMODE=1")); if (esp8266Module.find("OK")) { if(DEBUG){ Serial.println("Mode diubah"); } kembali benar; } else if(esp8266Module.find("TIDAK ADA PERUBAHAN")){ if(DEBUG){ Serial.println("Sudah dalam mode 1"); } kembali benar; } else { if(DEBUG){ Serial.println("Error saat mengubah mode"); } kembali salah; }}//--------------------------------------------- ---------------------// Fungsi berikut menghubungkan esp8266 ke titik akses wifi //----------------- -------------------------------------------------- bool connectToWiFi(){ if(DEBUG){ Serial.println("di dalam connectToWiFi"); } String cmd =F("AT+CWJAP=\""); cmd +=jaringan; cmd +=F("\",\""); cmd +=kata sandi; cmd +=F("\""); esp8266Module.println(cmd); penundaan (15000); if (esp8266Module.find("OK")) { if(DEBUG){ Serial.println("Connected to Access Point"); } kembali benar; } else { if(DEBUG){ Serial.println("Tidak dapat terhubung ke Access Point"); } kembali salah; }}//--------------------------------------------- ---------------------// Fungsi berikut mengirimkan data sensor ke thingspeak.com//---------------- -------------------------------------------------- -void updateTemp(String voltage1,String voltage2,String voltage3,String voltage4){ String cmd ="AT+CIPSTART=\"TCP\",\""; cmd +=IP; cmd +="\",80"; esp8266Module.println(cmd); penundaan(5000); if(esp8266Module.find("Error")){ if(DEBUG){ Serial.println("ERROR saat MENGIRIM"); } kembali; } cmd =GET + "&field1=" + voltage1 + "&field2=" + voltage2 + "&field3=" + voltage3 + "&field4=" + voltage4 + "\r\n"; esp8266Module.print("AT+CIPSEND="); esp8266Module.println(cmd.length()); penundaan (15000); if(esp8266Module.find(">")) { esp8266Module.print(cmd); if(DEBUG){ Serial.println("Data terkirim"); } }else { esp8266Module.println("AT+CIPCLOSE"); if(DEBUG){ Serial.println("Koneksi ditutup"); } }}
Perpustakaan dan kode untuk Stasiun Cuaca Pribadi
Lihat Readmehttps://github.com/jayraj4021/Personal-Weather-Station-14

Skema

schematic.fzz

Proses manufaktur

  1. Stasiun cuaca berdasarkan Raspberry Pi
  2. Stasiun Cuaca Raspberry Pi 2
  3. Stasiun Cuaca Raspberry Pi
  4. Bergabunglah dengan IOT dengan Stasiun Cuaca Anda – CWOP
  5. Pemantau Cuaca
  6. Stasiun Cuaca V 2.0
  7. Smart Blinds
  8. MKR1000 ke ThingSpeak.com
  9. $10 Portable Arduino Weather Station (AWS)
  10. eDOT - Jam Presisi dan Stasiun Cuaca Berbasis Arduino