Daftar Isi:
- Perlengkapan
- Langkah 1: De Foton Instellen
- Langkah 2: Paardenhaar
- Langkah 3: Maak Een Horizontale Opstelling Met Daaraan Een Kastje
- Langkah 4: Maak Een Kastje Voor De Photon En LCD-scherm
- Langkah 5: Maak Een Hefboom
- Langkah 6: Plaats De Afstandmeter Onder Het (kartonnen) Plaatje
- Langkah 7: Kode Schrijven
- Langkah 8: Verbind De Photon
- Langkah 9: Plaats De Photon En Het LCD-Scherm di De Opstelling
- Langkah 10: Kalibreren (optionel)
- Langkah 11: Pengukur Indeks De Warmte Adalah Klaar Voor Gebruik
Video: Pengukur Indeks Warmte: 11 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
Met deze yang dapat diinstruksikan kun je je eigen warmte index meter dibuat.
Een warmte index meter geeft de gevoelstemperatuur aan op basis van de omgevingstemperatuur en de luchtvochtigheid.
Deze meter adalah tempat tidur voor binnen maar kan buiten worden gebruikt mits er geen neerslag valt en er een windvrij plekje wordt gebruikt.
Perlengkapan
- Partikel Foton bertemu papan tempat memotong roti
- Sensor suhu (TMP36)
- Afstandssensor voor afstanden tussen 10 en 20 cm.
- Bank Daya
- penyangga 220 Ohm
- draadjes papan tempat memotong roti, 9+
- Telepon seluler + Komputer
- Paardenhaar
- Hout en houtlijm
- Gereedschap: Boormachine/schroevendraaier, zaag en vijl
- Zeep
- 2 potloden- Kurk
- Kartonnen plaatje + wit papier
- Gewichtjes, denk aan kleine loodjes dari metalen plaatjes
Pilihan:
- LCD scherm + potensiometer 10k Ohm + jumper draadjes Pria / Wanita, 12
- Pengukur Luchtvochtigheids
- Pengukur suhu - Rolmaat
Langkah 1: De Foton Instellen
Benodigdheden:- Telepon seluler
- Foton
- Komputer
Unduh aplikasi partikel op je telefoon en maak een akun partikel.
Stop de usb-kabel van de photon di komputer je, klaim de photon en stel de wifi in.
Dit kan melalui setup.particle.io.
Langkah 2: Paardenhaar
Benodigdheden:- Paard
Voor het maken van de haar-hydrometer heb je een ontvette paardenhaar nodig van bij voorkeur minimal 60 cm
De haren kunnen worden afgeknipt, dari uit de staart/manen worden getrokken (op eigen risico).
Langkah 3: Maak Een Horizontale Opstelling Met Daaraan Een Kastje
Benodigdheden:- Zeep
- Hout + lijm
- Gereedschap
Maak een ombouw waarbij de paardenhaar horizontaal kan worden gespannen en die tegelijkertijd enige bescherming biedt
Ontvet de paardenhaar
Span de haar horizontaltaal, bij voorkeur minimal 50 cm. Zorg dat er genoeg haar over is om de hefboom en het gewicht te bevestigen (zie volgende stap)
Langkah 4: Maak Een Kastje Voor De Photon En LCD-scherm
Benodigdheden:- Hout en houtlijm
- Gereedschap: zaag
Maak een simpele houten bak zonder deksel bertemu een houten plank die in het midden staat als een divider. op deze plank moet het breadboard bertemu de foton passen als de bak op zijn zijkant wordt gezet. Daarnaa kan aan de onderkant van de bak een gat worden gemaakt voor het LCD-scherm. Dit gat moet parallel zijn met het plankje dat in de bak is gezet. Als de bak klaar adalah kan deze op zijn zijkant naast de haar worden gezet aan de kant waar de gewichtjes aan de haar hangen.
Langkah 5: Maak Een Hefboom
Benodigdheden:- 2 potloden
- Kurki
- Kartonnen plaatje + wit papier
- Gewichtjes
- Gereedschap: vijl en boor
Boor een gat in het kastje en plaats het korte potlood. Het lange potlood dient uitgevijld te worden zodat deze op het korte potlood kan balanceren.
Plak een wit velletje papier onder een plaatje (in dit geval karton) en plaats deze aan het uiteinde van de hefboom.
Verbind de paardenhaar aan de hefboom en balanceer deze uit met een gewichtje (zie afbeelding 3 ringen).
Langkah 6: Plaats De Afstandmeter Onder Het (kartonnen) Plaatje
Benodigdeden:
- Sensor Afstand
- Opzetstukje (optioneel)
- Ekstra draad en solder set (optioneel)
Bij voorkeur met een afstand van minimaal 12 cm bij een relatieve luchtvochtigheid van +- 60%.
Indien nodig op een opzetstukje.
Als de bedrading van de afstandssensor niet de houten bak halen zullen deze eerst verlengd moeten worden.
Langkah 7: Kode Schrijven
Benodigdheden:- Komputer bertemu partikel akun
Ga naar build.particle.io dan maak een nieuwe app aan. Indeks Panas Noem deze bijvoorbeeld.
Di perpustakaan, zoek LiquidCrystal dan impor deze di aplikasi.
Dan kan de volgende kode gekopieerd worden di aplikasi:
Lihat komentar goed door als je wilt begrijpen wat elk stukje kode precies doet.
Ook al er een masalah optreedt adalah het goed om de komentar te raadplegen.
// Sertakan library berikut:#include #include
// Pin pembacaan analog untuk semua sensor dalam build ini:
int sensor suhu = A0; int sensor = A1;
// Aturan penerbitan:
// Waktu tunda dan nama acara untuk penerbitan. // Waktu tunda dalam milidetik. int waktu tunda = 15000; String eventName = "Actual_Temperature";
/////////////////////////////////////////////////
// Kode tampilan kristal cair //////////// //////////////////////////////////////////////// ////////////////// // Inisialisasi tampilan dengan pin data LiquidCrystal lcd(D5, D4, D3, D2, D1, D0);
// Atur batas untuk nilai indeks panas
int hati-hati = 27; int eCD = 33; int bahaya = 40; int ekstrim = 52;
// Mengembalikan pesan untuk nilai indeks panas tertentu.
String pesan(int hI) { if(hI < hati-hati) { return "Tidak hati-hati."; } if(hI < eCD) { return "Perhatian! "; } if(hI < bahaya) { return "Sangat hati-hati!"; } if(hI < ekstrim) { return "Bahaya!! "; } return "BAHAYA EKSTRIM!!"; }
// Pesan pada baris kedua tampilan.
String pesan2 = "T Sebenarnya: ";
//////////////////////////////////////////////////////
// Kode sensor jarak /////////////////////////// //////////////// //////////////////////////////////// // Nilai mentah minimum dan maksimum yang dikembalikan sensor. int minD = 2105; int maksD = 2754;
// Nilai mentah aktual yang dikembalikan sensor setiap 5mm.
int sepuluh = 2754; int tenP = 2691; int sebelas = 2551; int sebelasP = 2499; int dua belas = 2377; int dua belasP = 2276; int tiga belas = 2206; int tiga belasP = 2198; int empat belas = 2105;
// Mengembalikan jarak dalam cm yang termasuk dalam nilai mentah untuk setiap 5mm.
float getDis(int number) { switch(number){ case 2754: return 10; kasus 2691: kembalikan 10.5; kasus 2551: kembalikan 11; kasus 2499: pengembalian 11.5; kasus 2377: pengembalian 12; kasus 2276: kembalikan 12,5; kasus 2206: pengembalian 13; kasus 2198: kembalikan 13.5; kasus 2105: kembalikan 14; } }
// Menghitung jarak sebenarnya dalam cm yang ditangkap oleh sensor jarak.
float countDis(int start, float stop, int measurement) { float distance = getDis(start); float langkah = (berhenti - mulai)/10; for(int i = 0; i < 5; i++) { if(pengukuran = (langkah awal)){ jarak kembali; } mulai = mulai - langkah; jarak = jarak + 0,1; } }
// Memeriksa batas besar sensor jarak di antara keduanya.
float distance(int measurement) { // Jika jarak sensor tidak antara 10 dan 14 cm, // kita tidak mengetahui jarak sebenarnya dan kembali 10. if(measurement maxD) { return 10.0; } if(pengukuran <= tiga belasP) { kembali menghitungDis(tiga belasP, empat belas, pengukuran); } if(pengukuran <= tiga belas) { return countDis(tiga belas, tiga belasP, pengukuran); } if(pengukuran <= dua belasP) { kembali menghitungDis(dua belasP, tiga belas, pengukuran); } if(pengukuran <= dua belas) { kembali menghitungDis(dua belas, dua belasP, pengukuran); } if(pengukuran <= sebelasP) { kembali menghitungDis(sebelasP, dua belas, pengukuran); } if(pengukuran <= sebelas) { kembali menghitungDis(sebelas, sebelasP, pengukuran); } if(pengukuran <= sepuluhP) { return countDis(tenP, sebelas, pengukuran); } if(pengukuran <= sepuluh) { return countDis(sepuluh, sepuluhP, pengukuran); } // Kode tidak boleh sampai di sini. kembali -2; }
///////////////////////////////////////////////////////////////////////////////////////
// Kode sensor suhu ///////////////////////////////////////////////////////////// ////////////// //////////////////////////////////////////////////// //////////////////////////////////////////////////////////// / // Tegangan maksimum dalam mV yang digunakan untuk sensor suhu. float maxV = 3300.0;
// Tegangan dasar dan suhu yang menyertai yang dikembalikan oleh sensor suhu.
// Tegangan dalam mV. int basisV = 750; int basisT = 25;
// Menghitung suhu dari nilai terukur pada pin analog.
float countTemp(int pengukuran) { float voltage = ((maxV/4096)*pengukuran); float diff = baseV - tegangan; float temp = baseT - (diff/10); kembali suhu; }
///////////////////////////////////////////////////
// Perhitungan kelembaban //////////////////////// /////////////////////////////////////// ///////////////////////////// // Variabel untuk perhitungan kelembaban, // berasal dari sensor kelembaban aktual. mengapung h15 = 10,0; mengapung h30 = 10,5; mengapung h60 = 11.5; mengapung h75 = 12.0; mengapung h90 = 12,5; float langkahH = 0,167;
// Mengembalikan kelembaban relatif untuk rentang jarak tertentu.
int countHum(float diff, float lowH, float highH, int start) { float diff = dis - lowH; float i1 = diff/langkahH; int i = bulat(i1); int keluaran = (mulai + (5*i)); kembali keluaran; }
// Mengembalikan kelembaban relatif.
int kelembaban(float dis) { if (dis <= h30) { kembali menghitungHum(dis, h15, h30, 15); } if (dis <= h60) { kembali menghitungHum(dis, h30, h60, 30); } if (dis <= h75) { kembali menghitungHum(dis, h60, h75, 60); } if (dis <= h90) { kembali menghitungHum(dis, h75, h90, 75); } kembalikan 100; }
///////////////////////////////////////////////////
// Rumus indeks panas /////////////////////////// ////////////////////////////////// ///////////////////////////////// // Konstanta yang digunakan dalam rumus indeks panas float c1 = -8.78469475556; float c2 = 1.61139411; pelampung c3 = 2.33854883889; float c4 = -0,14611605; float c5 = -0.0123008094; float c6 = -0.0164248277778; float c7 = 0,002211732; mengapung c8 = 0,00072546; mengapung c9 = -0,000003582;
// Rumus indeks panas yang mengambil suhu dan kelembaban relatif.
float heatIndex(float t, int h) { kembali c1 + (c2*t) + (c3*h) + (c4*t*h) + (c5*t*t) + (c6*h*h) + (c7*t*t*h) + (c8*t*h*h) + (c9*t*t*h*h); }
///////////////////////////////////////////////////////////////////////////////
// Fungsi/variabel lain /////////////////////////////////////////////////////////// ////// //////////////////////////////////////////////////////////// ////////////////////////////////// // Mengembalikan representasi string float yang dibulatkan ke bawah hingga satu desimal. String rOne(float num) { int nilai = bulat(num*10); Output string = nilai (String); char end = keluaran[strlen(keluaran)-1]; int kiri = nilai/10; String mulai = (String) kiri; kembali mulai + "." + akhir; }
//////////////////////////////////////////////////////////////////////////////
/ Semua kode di sini harus dijalankan sekali di Foton sebelum fungsi perulangan dimulai.
void setup() { // Mengatur jumlah kolom dan baris LCD: lcd.begin(16, 2); }
// Semua kode di sini sedang dilingkarkan dan harus berisi pengambilan data, memperbaikinya, dan meletakkannya secara online.
void loop() { // Mendapatkan suhu dan kelembapan. float temp = hitungTemp(analogRead(tempSensor)); float dis = jarak(analogRead(disSensor)); int hum = kelembaban(dis); String lembab = (String) hum; // Hitung indeks panas. float hI = heatIndex(suhu, hum); // Atur string keluaran dan cetak semua pesan pada layar LCD. Keluaran string = rOne(hI); lcd.setCursor(0, 0); lcd.print(pesan(bulat(hI))); lcd.setCursor(0, 1); lcd.print(pesan2 + keluaran + "C"); keluaran = keluaran + " " + lembab; // Publikasikan nilai indeks panas secara online dan tunggu sebelum mengulang lagi. Particle.publish(eventName, output); tunda (waktu tunda); }
Langkah 8: Verbind De Photon
Benodigdeden:
- Foton dan papan tempat memotong roti
- Sensor suhu
- penyangga 220 Ohm
- Mendukung sensor
- LCD-scherm dan potensiometer 10k Ohm (optioneel)
- draadjes papan tempat memotong roti Genoeg, 9+
- Jumper draadjes Pria/Wanita, 12 (optionel)
Verbindt de 3.3V van de photon bertemu de + rails aan dezelfde kant en verbindt de ground aan de - rails.
Verbindt de 5V van de foton aan de andere kant aan de + rel aan die kant.
Stop de temperatuursensor ergens bertemu genoeg ruimte eromheen di papan tempat memotong roti panas.
Verbindt de analog output van de temperatuursensor bertemu A0 van de foton dan ground bertemu dengan rel ground.
Zet de weerstand voor de input van de sensor dan verbindt de weerstand bertemu dengan rel 3.3V.
De afstandssensor kan verbonden worden door de input di rel 3.3V te stoppen, de ground di de ground rails dan output analog di stoppen A1 van de photon te.
Als je een LCD-scherm layu aansluiten werkt dat al volgt:
1. Verbindt de potensiometer aan het breadboard bertemu 5V di tanah.
2. Verbindt de volgende jumper draadjes aan het LCD-scherm waarbij pin 1 het dichtsbij de rand van het scherm is.
Pin 1, 5 en 16 van de LCD naar ground. Pin 2 dan 15 naar 5V.
Verbindt de analog output van de potensiometer, de middelste pin, bertemu pin 3 van de LCD.
3. Verbindt de volgende photon pins naar LCD pin bertemu jumper draadjes.
Pin D5 dan Pin 4
Pin D4 dan Pin 6
Pin D3 dan Pin 11
Pin D2 dan Pin 12
Pin D1 dan Pin 13
Pin D0 dan Pin 14
Als de photon nu aanstaat en er aan de potensiometer dan kata-kata yang lebih mudah dioperasikan LCD-scherm blokjes verschijnen.
Langkah 9: Plaats De Photon En Het LCD-Scherm di De Opstelling
Benodigdheden:- Powerbank (optionel)
Nu de photon klaar voor gebruik is kan deze op het plankje in de bak geplaatst worden en het LCD-scherm kan tegen het gat geplakt worden. Nu is het een goed moment om de photon de laten draaien op een powerbank maar dit is natuurlijk niet verplicht.
Langkah 10: Kalibreren (optionel)
Benodigdeden:
- Sensor Luchtvochtigheids
- Pengukur suhu
- Rolmaat
- Keluaran kode voor rauwe waarden van de sensoren die gekalibreerd moeten worden
Als de software niet goed blijkt te werken met de sensoren kan er voor gekozen worden om de sensoren zelf de kalibreren.
De temperatuurmeter kan vrij makkelijk gekalibreerd worden door metingen met een temperatuurmeter te vergelijken met de sensor.
Voor de luchtvochtigheid zal eerst de afstandssensor gekalibreerd moeten worden op afstand met behulp van een rolmaat en daarna zal het pas mogelijk zijn om de luchtvochtigheid goed te meten en te vergelijken met een echechte luchtvo.
Dalam kode de bijgeleverde komentar zitten die aangeven waar dit soort kalibratie variabelen staan.
Langkah 11: Pengukur Indeks De Warmte Adalah Klaar Voor Gebruik
Plezier beludru!
Direkomendasikan:
Pengukur Waktu (Jam Pita Pengukur): 5 Langkah (dengan Gambar)
Pengukur Waktu (Jam Pita Pengukur): Untuk proyek ini, kami (Alex Fiel & Anna Lynton) mengambil alat ukur sehari-hari dan mengubahnya menjadi jam! Rencana awalnya adalah untuk menggerakkan pita pengukur yang ada. Dalam membuatnya, kami memutuskan akan lebih mudah untuk membuat cangkang kami sendiri untuk digunakan
Pengukur Indeks UV Menggunakan Sensor ULTRAVIOLET ML8511 Arduino: 6 Langkah
Pengukur Indeks UV Menggunakan Sensor ULTRAVIOLET ML8511 Arduino: Dalam tutorial ini kita akan mempelajari cara mengukur Indeks UV Matahari menggunakan Sensor ULTRAVIOLET ML8511. Tonton Videonya! https://www.youtube.com/watch?v=i32L4nxU7_M
Umpan Indeks EPA UV / IOT: 4 Langkah (dengan Gambar)
Umpan Indeks UV EPA / IOT: Perangkat kecil ini menarik indeks UV lokal Anda dari EPA dan menampilkan tingkat UV dalam 5 warna berbeda dan juga menampilkan detail pada OLED. UV 1-2 berwarna Hijau, 3-5 berwarna Kuning, 6-7 berwarna Oranye, 8-10 berwarna Merah, 11+ berwarna ungu
Monitor Cuaca M5Stack M5stick C Berbasis ESP32 Dengan DHT11 - Pantau Suhu Kelembaban & Indeks Panas pada M5stick-C Dengan DHT11: 6 Langkah
Monitor Cuaca M5Stack M5stick C Berbasis ESP32 Dengan DHT11 | Memantau Suhu Kelembaban & Indeks Panas pada M5stick-C Dengan DHT11: Hai teman-teman, dalam instruksi ini kita akan belajar bagaimana menghubungkan sensor suhu DHT11 dengan m5stick-C (papan pengembangan oleh m5stack) dan menampilkannya di layar m5stick-C. Jadi dalam tutorial ini kita akan membaca suhu, kelembaban & panas aku
UltraV: Pengukur Indeks UV Portabel: 10 Langkah (dengan Gambar)
UltraV: Pengukur Indeks UV Portabel: Karena tidak dapat mengekspos diri saya di bawah sinar matahari karena masalah dermatologis, saya menggunakan waktu yang saya habiskan di pantai untuk membuat pengukur sinar ultraviolet. UltraV. Ini dibangun di atas Arduino Nano rev3, dengan sensor UV, konverter DC/DC untuk menaikkan suhu