Talaan ng mga Nilalaman:
- Mga gamit
- Hakbang 1: De Photon Instellen
- Hakbang 2: Paardenhaar
- Hakbang 3: Maak Een Horizontale Opstelling Met Daaraan Een Kastje
- Hakbang 4: Maak Een Kastje Voor De Photon En LCD-scherm
- Hakbang 5: Maak Een Hefboom
- Hakbang 6: Plaats De Afstandmeter Onder Het (kartonnen) Plaatje
- Hakbang 7: Code Schrijven
- Hakbang 8: Verbind De Photon
- Hakbang 9: Plaats De Photon En Het LCD-Scherm sa De Opstelling
- Hakbang 10: Kalibreren (opsyoneel)
- Hakbang 11: Ang De Warmte Index Meter Ay Klaar Voor Gebruik
Video: Warmte Index Meter: 11 Mga Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:12
Nakakatagpo ng pagtuturo para sa je je eigen warmte index meter maken.
Een warmte index meter geeft de gevoelstemperatuur aan op batayan van de omgevingstemperatuur en de luchtvochtigheid.
Ang metro ng gulong ay bedoeld voor binnen maar para buiten worden gebruikt mits er geen neerslag valt en er een windvrij plekje wordt gebruikt.
Mga gamit
- Nakilala ng Particle Photon ang breadboard
- Temperatuursensor (TMP36)
- Afstandssensor voor afstanden tussen 10 en 20 cm.
- Powerbank
- 220 Ohm naiintindihan natin
- Breadboard draadjes, 9+
- Mobiele telefoon + Computer
- Paardenhaar
- Hout en houtlijm
- Gereedschap: Boormachine / schroevendraaier, zaag en vijl
- Zeep
- 2 potloden- Kurk
- Kartonnen plaatje + wit papier
- Gewichtjes, denk aan kleine loodjes ng metalen plaatjes
Optioneel:
- LCD scherm + 10k Ohm potentiometer + Lalaki / Babae na jumper draadjes, 12
- Luchtvochtigheidsmeter
- Temperatuurmeter- Rolmaat
Hakbang 1: De Photon Instellen
Benodigdheden: - Mobiele telefoon
- Photon
- Computer
I-download ang app ng maliit na butil sa iyong telepono sa loob ng maliit na account ng maliit na butil.
Ihinto ang de usb-kabel van de photon sa computer, i-claim ang photon en stel de wifi in.
Dit kan sa pamamagitan ng setup.particle.io.
Hakbang 2: Paardenhaar
Benodigdheden: - Bayad
Voor het maken van de haar-hydrometer heb je een ontvette paardenhaar nodig van bij voorkeur minimaal 60 cm
De haren kunnen worden afgeknipt, of uit de staart / manen worden getrokken (op eigen risico).
Hakbang 3: Maak Een Horizontale Opstelling Met Daaraan Een Kastje
Benodigdheden: - Zeep
- Hout + lijm
- Gereedschap
Maak een ombouw waarbij de paardenhaar horizontaal kay worden gespannen en die tegelijkertijd enige bescherming biedt
Ontvet de paardenhaar
Span de haar horizontaal, bij voorkeur minimaal 50 cm. Zorg dat er genoeg haar over is om de hefboom en het gewicht te bevestigen (zie volgende stap)
Hakbang 4: Maak Een Kastje Voor De Photon En LCD-scherm
Benodigdheden: - Hout para sa iyo
- Gereedschap: zaag
Maak een simpele houten bak zonder deksel met een houten plank die in het midden staat als een divider. Op deze plank moet het breadboard met de photon 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. Narito ang iyong kahilera zijn met het plankje dat in de bak is gezet. Als de bak klaar is kan deze op zijn zijkant naast de haar worden gezet aan de kant waar de gewichtjes aan de haar hangen.
Hakbang 5: Maak Een Hefboom
Benodigdheden: - 2 potloden
- Kurk
- 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.
Mag-isip ng mga tao sa pamamagitan ng papier onder een plaatje (in dit geval karton) en plaats deze aan het uiteinde van de hefboom.
Verbind de paardenhaar aan de hefboom en balanse deze uit met een gewichtje (zie afbeelding 3 ringen).
Hakbang 6: Plaats De Afstandmeter Onder Het (kartonnen) Plaatje
Benodigdheden:
- Afstandsensor
- Opzetstukje (opsyoneel)
- Extra draad en soldeer set (opsyoneel)
Nakilala ng Bij voorkeur ang nakatayo sa minimaal na 12 cm sa loob ng isang taon na + + 60%.
Hindien nodig op een opzetstukje.
Als de bedrading van de afstandssensor niet de houten bak halen zullen deze eerst verlengd moeten worden.
Hakbang 7: Code Schrijven
Benodigdheden: - Nakilala ng computer ang particle account
Ga naar build.particle.io en maak een nieuwe app aan. Noem deze bijvoorbeeld HeatIndex.
Sa mga silid aklatan, i-zoom ang LiquidCrystal para mag-import ng deze sa de app.
Dan kan de volgende code gekopieerd worden sa de app:
Ang mga komento ay nagpunta sa pinto als je bec begrijpen wat elk stukje code precies doet.
Ook als er een probleem optreedt is het goed om de comments te raadplegen.
// Isama ang mga sumusunod na aklatan: # isama ang # isama
// Ang analog na nagbasa ng mga pin para sa lahat ng mga sensor sa build na ito:
int tempSensor = A0; int disSensor = A1;
// Mga panuntunan sa pag-publish:
// Ang oras ng pagkaantala at pangalan ng kaganapan para sa pag-publish. // Pag-antala ng oras sa milliseconds. int delayTime = 15000; String eventName = "Actual_Temperature";
/////////////////////////////////////////////////
// Liquid crystal display code // ///. /// // ///.
// Mga hangganan ng pag-set up para sa mga halaga ng index ng init
int pag-iingat = 27; int eCD = 33; int panganib = 40; int matindi = 52;
// Nagbabalik ng isang mensahe para sa isang tukoy na halaga ng heat index.
String message (int hI) {if (hI <caution) {return "Walang pag-iingat."; } kung (hI <eCD) {ibalik ang "Pag-iingat!"; } kung (hI <panganib) {ibalik ang "Labis na pag-iingat!"; } kung (hI <matinding) {ibalik ang "Panganib !!"; } ibalik ang "SOBRANG PELIGRONG !!"; }
// Ang mensahe sa pangalawang linya ng display.
String message2 = "Tunay na T:";
//////////////////////////////////////////////////////
// Distansya sensor code // ///. // ///. int minD = 2105; int maxD = 2754;
// Tunay na halagang hilaw na ibinalik ng sensor bawat 5mm.
int ten = 2754; int tenP = 2691; int labing = 2551; int labing-isangP = 2499; int labindalawang = 2377; int doseP = 2276; int labing tatlong = 2206; int labing tatlongP = 2198; int labing-apat = 2105;
// Ibinabalik ang distansya sa cm na kabilang sa isang hilaw na halaga para sa bawat 5mm.
float getDis (int number) {switch (number) {case 2754: return 10; kaso 2691: ibalik ang 10.5; kaso 2551: ibalik ang 11; kaso 2499: ibalik ang 11.5; kaso 2377: ibalik ang 12; kaso 2276: ibalik ang 12.5; kaso 2206: ibalik ang 13; kaso 2198: ibalik ang 13.5; kaso 2105: ibalik ang 14; }}
// Kinakalkula ang aktwal na distansya sa cm na nakuha ng distansya ng sensor.
float calculDis (int start, float stop, int pagsukat) {float distance = getDis (start); float step = (stop - start) / 10; para sa (int i = 0; i <5; i ++) {kung (pagsukat = (panimulang hakbang)) {distansya ng pagbalik; } start = start - step; distansya = distansya + 0.1; }}
// Sinusuri ang malalaking hangganan na nasa pagitan ng sensor ng distansya.
float distansya (int pagsukat) {// Kung ang distansya sensor ay hindi sa pagitan ng 10 at 14 cm, // hindi namin alam ang aktwal na distansya at bumalik 10. kung (pagsukat maxD) {bumalik 10.0; } kung (pagsukat <= treseP) {return calculDis (labing-tatlongP, labing-apat, pagsukat); } kung (pagsukat <= trese) {return calculDis (labing tatlo, labing tatlongP, pagsukat); } kung (pagsukat <= doseP) {return calculDis (labingdalawangP, labing tatlong, pagsukat); } kung (pagsukat <= labindalawa) {return calculDis (labindalawa, labindalawangP, pagsukat); } kung (pagsukat <= labing-isangP) {return calculDis (labing-isangP, labindalawa, pagsukat); } kung (pagsukat <= labing-isang) {return calculDis (labing-isa, labing-isangP, pagsukat); } kung (pagsukat <= tenP) {return calculDis (tenP, labing-isang, pagsukat); } kung (pagsukat <= sampung) {return calculDis (sampu, sampungP, pagsukat); } // Ang code ay hindi dapat makarating dito. bumalik -2; }
///////////////////////////////////////////////////////////////////////////////////////
// Temperatura ng sensor code // ///. // ///. // ///. / // Ang maximum na boltahe sa mV na ginamit para sa temperatura sensor. float maxV = 3300.0;
// Ang base boltahe at kasamang temperatura na ibinabalik ng sensor ng temperatura.
// Boltahe ay nasa mV. int baseV = 750; int baseT = 25;
// Kinakalkula ang temperatura mula sa sinusukat na halaga sa analog pin.
float calculTemp (int pagsukat) {float voltage = ((maxV / 4096) * pagsukat); float diff = baseV - boltahe; float temp = baseT - (diff / 10); ibalik ang temp; }
///////////////////////////////////////////////////
// Mga kalkulasyon ng kahalumigmigan // ///. // ///.????? lumutang h15 = 10.0; lumutang h30 = 10.5; float h60 = 11.5; lumutang h75 = 12.0; lumutang h90 = 12.5; float stepH = 0.167;
// Ibinabalik ang kamag-anak na kahalumigmigan para sa isang tukoy na saklaw ng distansya.
int calculHum (float dis, float lowH, float highH, int start) {float diff = dis - lowH; float i1 = diff / stepH; int i = bilog (i1); int output = (start + (5 * i)); pagbalik ng output; }
// Ibinabalik ang kamag-anak na kahalumigmigan.
int halumigmig (float dis) {if (dis <= h30) {return calculHum (dis, h15, h30, 15); } kung (dis <= h60) {return calculHum (dis, h30, h60, 30); } kung (dis <= h75) {return calculHum (dis, h60, h75, 60); } kung (dis <= h90) {return calculHum (dis, h75, h90, 75); } ibalik ang 100; }
///////////////////////////////////////////////////
// Formula ng index ng init // ///. // ///.????? lumutang c2 = 1.61139411; lumutang c3 = 2.33854883889; lumutang c4 = -0.14611605; float c5 = -0.0123008094; float c6 = -0.0164248277778; lumutang c7 = 0.002211732; float c8 = 0,00072546; float c9 = -0.000003582;
// Ang formula ng heat index na tumatagal ng isang temperatura at kamag-anak halumigmig.
float heatIndex (float t, int h) {return 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); }
///////////////////////////////////////////////////////////////////////////////
// Iba pang mga fucntion / variable // ///. // /// // // ///. // ///. String rOne (float num) {int halaga = bilog (num * 10); String output = (String) na halaga; char end = output [strlen (output) -1]; int kaliwa = halaga / 10; Magsimula ang string = (String) pakaliwa; bumalik na magsimula + "." + wakas; }
//////////////////////////////////////////////////////////////////////////////
/ Lahat ng code dito ay dapat na pinatakbo nang isang beses sa Photon bago magsimula ang pag-andar ng looping.
void setup () {// I-set up ang bilang ng mga haligi at hilera ng LCD: lcd.begin (16, 2); }
// Lahat ng code dito ay inaikot at dapat maglaman ng pagkuha ng data, pinipino ito at inilalagay ito online.
void loop () {// Kumuha ng temperatura at halumigmig. float temp = calculTemp (analogRead (tempSensor)); float dis = distansya (analogRead (disSensor)); int hum = halumigmig (dis); String mahalumigmig = (String) hum; // Kalkulahin ang index ng init. float hI = heatIndex (temp, hum); // I-set up ang output string at i-print ang lahat ng mga mensahe sa LCD display. Output ng string = rOne (hI); lcd.setCursor (0, 0); lcd.print (mensahe (bilog (hI))); lcd.setCursor (0, 1); lcd.print (mensahe2 + output + "C"); output = output + "" + mahalumigmig; // I-publish ang mga halaga ng index ng init sa online at maghintay bago muling mag-loop. Particle.publish (eventName, output); antala (delayTime); }
Hakbang 8: Verbind De Photon
Benodigdheden:
- Photon en breadboard
- Temperatuursensor
- 220 Ohm naiintindihan natin
- Afstandssensor
- LCD-scherm tl 10k Ohm potentiometer (opsyoneel)
- Mga Genoeg breadboard draadjes, 9+
- Lalaki / Babae jumper draadjes, 12 (opsyoneel)
Verbindt de 3.3V van de photon met de + rails aan dezelfde kant en verbindt de ground aan de - rails.
Verbindt de 5V van de photon aan de andere kant aan de + rails aan die kant.
Itigil ang de temperatuursensor ergens na nakilala ang genoeg ruimte eromheen sa het breadboard.
Ang Verbindt de analoge output van de temperatuursensor ay nakilala ang A0 van de photon en de ground met de ground rails.
Hindi maunawaan ang voor de input van de sensor at ang verindt de weerstand na nakilala mula sa 3.3V riles.
De afstandssensor para sa pandiwang salita na pinto ng input ng de 3.3V daang-bakal sa stoppen, mula sa ground sa de ground riles at output ng analoge sa A1 van de photon te stoppen.
Narito ang LCD-scherm na aalisin sa iyong data:
1. Ang Verbindt de potentiometer aan het breadboard ay nakilala ang 5V sa de ground.
2. Verbindt de volgende jumper draadjes aan het LCD-scherm waarbij pin 1 het dichtsbij de rand van het scherm ay.
Pin 1, 5 tl 16 van de LCD naar ground. Pin 2 tl 15 naar 5V.
Verbindt de analoge output van de potentiometer, de middelste pin, nakilala ang pin 3 van de LCD.
3. Verbindt de volgende photon pins naar ng LCD pin na nakilala ang jumper draadjes.
Pin D5 naar ng Pin 4
Pin D4 naar Pin 6
Pin D3 naar Pin 11
Pin D2 naar Pin 12
Pin D1 naar Pin 13
Pin D0 naar Pin 14
Als de photon nu aanstaat en er aan de potentiometer gedraaid wordt moeten er op het LCD-scherm blokjes verschijnen.
Hakbang 9: Plaats De Photon En Het LCD-Scherm sa De Opstelling
Benodigdheden: - Powerbank (opsyoneel)
Nu de photon klaar voor gebruik is kan deze op het plankje in de bak geplaatst worden en het LCD-scherm para tegen het gat geplakt worden. Nu ay het een goed moment om de photon de laten draaien op een powerbank maar dit is natuurlijk niet verplicht.
Hakbang 10: Kalibreren (opsyoneel)
Benodigdheden:
- Luchtvochtigheidssensor
- Temperatuurmeter
- Rolmaat
- Ang output ng code ay maaaring magbigay ng van van sensoren die gekalibreerd moeten worden
Als de software niet goed blijkt te werken met de sensoren kay 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 echte luchtvoch / sensor.
Sa de bijgeleverde code zitten komento mamatay aangeven waar dit soort kalibratie variabelen staan.
Hakbang 11: Ang De Warmte Index Meter Ay Klaar Voor Gebruik
Pakiusap ni Veel!
Inirerekumendang:
Meter ng UV Index Gamit ang ML8511 ULTRAVIOLET Sensor Arduino: 6 na Hakbang
UV Index Meter Gamit ang ML8511 ULTRAVIOLET Sensor Arduino: Sa tutorial na ito matututunan natin kung paano sukatin ang Sun UV Index gamit ang ML8511 ULTRAVIOLET Sensor. Panoorin ang Video! https://www.youtube.com/watch?v=i32L4nxU7_M
EPA UV Index Feed / IOT: 4 Hakbang (na may Mga Larawan)
EPA UV Index Feed / IOT: Ang maliit na aparato ay hinihila ang iyong lokal na UV index mula sa EPA at ipinapakita ang antas ng UV sa 5 magkakaibang mga kulay at nagpapakita rin ng mga detalye sa OLED. Ang UV 1-2 ay Green, 3-5 ay Dilaw, 6-7 ay Orange, 8-10 ay Pula, 11+ ay lila
10 Mga kahalili sa DIY sa Mga Off-The-Shelf na Elektroniko na Mga Bahagi: 11 Mga Hakbang (na may Mga Larawan)
10 Mga Kahalili sa DIY sa Mga Off-The-Shelf na Mga Elektroniko na Bahagi: Maligayang pagdating sa aking kauna-unahang itinuro! Sa palagay mo ba ang ilang mga bahagi mula sa mga tagatingi sa online ay masyadong mahal o may mababang kalidad? Kailangan bang makakuha ng isang prototype nang mabilis at tumatakbo nang mabilis at hindi makapaghintay linggo para sa pagpapadala? Walang mga lokal na electronics distributor? Ang fol
UltraV: isang Portable UV-index Meter: 10 Hakbang (na may Mga Larawan)
UltraV: isang Portable UV-index Meter: Dahil hindi mailantad ang aking sarili sa araw dahil sa isang problemang dermatological, ginamit ko ang oras na gugugol ko sa beach upang makabuo ng isang ultraviolet rays meter. UltraV. Itinayo ito sa isang Arduino Nano rev3, na may sensor ng UV, isang converter ng DC / DC upang itaas ang
Bumuo ng isang Ham Receiver Mula sa Mga Elektronikong Bahagi: Maghinang ng isang Ramsey FR146 2 Meter FM Kit: 27 Mga Hakbang (na may Mga Larawan)
Bumuo ng isang Ham Receiver Mula sa Mga Elektronikong Bahagi: Maghinang ng isang Ramsey FR146 2 Meter FM Kit: Magtipon ng isang radio kit - mula sa pag-unpack hanggang sa pagpapatakbo. Ang pagbuo ay nagsasangkot ng paghihinang ng pangunahing mga elektronikong sangkap, kabilang ang mga integrated circuit at transistor, at pag-tune ng lokal na oscillator. Kasama ang maraming mga pahiwatig at tip, pati na rin ang isang simpleng ali