Innehållsförteckning:
- Tillbehör
- Steg 1: De Photon Instellen
- Steg 2: Paardenhaar
- Steg 3: Gör Een Horizontale Opstelling Med Daaraan Een Kastje
- Steg 4: Skapa ett foto för en LCD-skärm
- Steg 5: Maak Een Hefboom
- Steg 6: Plaats De Afstandmeter Onder Het (kartonnen) Plaatje
- Steg 7: Code Schrijven
- Steg 8: Verbind De Photon
- Steg 9: Plaats De Photon En Het LCD-Scherm in De Opstelling
- Steg 10: Kalibreren (tillval)
- Steg 11: De Warmte Index -mätaren kan användas
Video: Warmte Index Meter: 11 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:44
Med denna instruerbara kunskap kan du göra din egen värmeindexmätare.
En värmeindexmätare ger en känslomässig uppfattning på grundval av omgivningstemperaturen och luftfuktigheten.
Denna mätare är avsedd för inom, men jag kan inte använda mits för att ingen nelag ska användas och en vindplats kan användas.
Tillbehör
- Particle Photon met breadboard
- Temperatursensor (TMP36)
- Avståndssensor för avstånd mellan 10 och 20 cm.
- Powerbank
- 220 Ohm weerstand
- Brödbräda trådjes, 9+
- Mobiele telefon + dator
- Paardenhaar
- Hout en houtlijm
- Gereedschap: Boormachine/schroevendraaier, zaag en vijl
- Zeep
- 2 potloden- Kurk
- Kartonnen plateje + wit papier
- Gewichtjes, denk aan kleine loodjes of metalen plate
Alternativ:
- LCD -skärm + 10k Ohm potentiometer + Man/Kvinna tröja, 12
- Luchtvochtigheidsmeter
- Temperatuurmeter- Rolmaat
Steg 1: De Photon Instellen
Benodigdheden:- Mobiltelefon
- Foton
- Dator
Ladda ner partikelappen på din telefon och gör ett partikelkonto.
Stoppa den usb-kabel van de foton i din dator, gör anspråk på foton och ställ in wifi.
Detta kan via setup.particle.io.
Steg 2: Paardenhaar
Benodigdheden:- Paard
För att kunna göra en hydrometer för att ha en ontvette kan jag behöva minst 60 cm
De har inte kunnat bestämmas, eller de kan komma att tas ut (på egen risk).
Steg 3: Gör Een Horizontale Opstelling Med Daaraan Een Kastje
Benodigdheden:- Zeep
- Hout + lijm
- Gereedschap
Gör en ombyggnad där den horisontella parken kan sparas och den enda skyddade erbjuder
Ontvet de paardenhaar
Span de haar horizontalaal, för minimalt 50 cm. Det är nog att hon har tillräckligt med vikt att bekräfta (se följande stap)
Steg 4: Skapa ett foto för en LCD-skärm
Benodigdheden:- Hout en houtlijm
- Gereedschap: zaag
Gör en enkel träbak utan deksel med en träplanka som står i mitten som en delare. På denna plan måste brödbrädan med foton passera även om de kan användas tillsammans. Dessutom kan jag visa att baksidan kan skapas för LCD-skärmen. Det måste parallellt vara med det som planeras för att baka är gezet. Även om de är färdiga kan jag visa att den är bredvid att hon kan träffas på den kant där vikten ligger på hennes häng.
Steg 5: Maak Een Hefboom
Benodigdheden:- 2 potloden
- Kurk
- Kartonnen plateje + wit papier
- Gewichtjes
- Gereedschap: vijl en boor
Boor een gat in the kastje and place it korte potlood. Den långa potlood bör kunna användas så att denna på kort potlood kan balansera.
Plocka en med papperspapper under en plåt (i den här kartongen) och placera den här för att visa den utplacerade skivan.
Anslut de paardenhaar till de hefboom och balansera denna ut med en vikt (se bild 3 ringen).
Steg 6: Plaats De Afstandmeter Onder Het (kartonnen) Plaatje
Benodigdheden:
- Afstandsensor
- Opzetstukje (tillval)
- Extra tråd och lödsats (tillval)
Om du vill ha en avstånd på minst 12 cm kan du få en relativ luftfuktighet +- 60%.
Om det behövs kan du använda en enhet.
Om du vill avlägsna avståndssensorn kan du inte heller att de bakade träden behöver först.
Steg 7: Code Schrijven
Benodigdheden:- Computer met particle account
Gå till build.particle.io och gör en ny app till. Namn här till exempel HeatIndex.
Under bibliotek, sök LiquidCrystal och importera dessa i appen.
Den följande koden kan användas i appen:
Läs de kommentarer bra dörr om du vill börja med vilken kod kod som gäller.
Även om det finns ett problem som det är bra att kommentera.
// Inkludera följande bibliotek: #include #include
// De analoga läspinnarna för alla sensorer i denna byggnad:
int tempSensor = A0; int disSensor = A1;
// Publiceringsregler:
// Fördröjningstiden och händelsens namn för publicering. // Fördröjningstid i millisekunder. int delayTime = 15000; String eventName = "Faktisk_Temperatur";
/////////////////////////////////////////////////
// Display för flytande kristaller //////////////////// Initiera displayen med datastiften LiquidCrystal lcd (D5, D4, D3, D2, D1, D0);
// Ställ in gränser för värmeindexvärden
int försiktighet = 27; int eCD = 33; int fara = 40; int extrem = 52;
// Returnerar ett meddelande för ett specifikt värmeindexvärde.
Strängmeddelande (int hI) {if (hI <försiktighet) {return "Ingen försiktighet."; } if (hI <eCD) {return "Varning!"; } if (hI <fara) {return "Extremt försiktig!"; } if (hI <extrem) {return "Fara !!"; } returnera "EXTREME FARE !!"; }
// Meddelandet på displayens andra rad.
String message2 = "Faktiskt T:";
//////////////////////////////////////////////////////
// Avståndssensorkod //////////////////////////////////////////////// ////////////////////////////////////// int minD = 2105; int maxD = 2754;
// Faktiska råvärden returnerade sensorn var 5 mm.
int tio = 2754; int tenP = 2691; int elva = 2551; int elevenP = 2499; int tolv = 2377; int tolvP = 2276; int tretton = 2206; int trettonP = 2198; int fjorton = 2105;
// Returnerar avståndet i cm som tillhör ett råvärde för varje 5 mm.
float getDis (int number) {switch (number) {case 2754: return 10; fall 2691: retur 10,5; fall 2551: retur 11; fall 2499: retur 11,5; fall 2377: retur 12; fall 2276: retur 12,5; fall 2206: retur 13; fall 2198: retur 13,5; fall 2105: retur 14; }}
// Beräknar det faktiska avståndet i cm som avståndssensorn fångade.
float calculateDis (int start, float stop, int mätning) {float distance = getDis (start); flottörsteg = (stopp - start)/10; för (int i = 0; i <5; i ++) {if (mätning = (start-steg)) {returavstånd; } start = start - steg; avstånd = avstånd + 0,1; }}
// Kontrollerar de stora gränserna som avståndssensorn är däremellan.
flottöravstånd (int -mätning) {// Om avståndssensorn inte var mellan 10 och 14 cm, // vet vi inte det faktiska avståndet och avkastningen 10. if (mätning maxD) {retur 10,0; } if (mått <= trettonP) {returberäknaDis (trettonP, fjorton, mätning); } if (mätning <= tretton) {return calcDis (tretton, trettonP, mätning); } if (mått <= tolvP) {returberäknaDis (tolvP, tretton, mätning); } if (mätning <= tolv) {return beräknaDis (tolv, tolvP, mätning); } if (mätning <= elevenP) {return calculateDis (elevenP, tolv, mätning); } if (mätning <= elva) {return calculateDis (eleven, elevenP, mätning); } if (mätning <= tenP) {return calculateDis (tenP, elva, mätning); } if (mätning <= tio) {return calcDis (tio, tenP, mätning); } // Koden ska aldrig komma hit. avkastning -2; }
///////////////////////////////////////////////////////////////////////////////////////
// Temperaturgivarkod ////////////////////////////////////////////// //////////////////////////////////////////////// /////////////////////////////////////////////////////////////// / // Maximal spänning i mV som används för temperaturgivaren. float maxV = 3300.0;
// Basspänningen och tillhörande temperatur som temperaturgivaren returnerar.
// Spänningen är i mV. int basV = 750; int basT = 25;
// Beräknar temperaturen från det uppmätta värdet vid den analoga stiftet.
float calculateTemp (int -mätning) {float -spänning = ((maxV/4096)*mätning); float diff = baseV - spänning; float temp = baseT - (diff/10); returtemp; }
///////////////////////////////////////////////////
// Fuktighetsberäkningar ///////////////////////////// //////////////////// ////////////////////////////////////// Variabler för luftfuktighetsberäkningar, // kommer från faktiska fuktsensorer. flyta h15 = 10,0; flyta h30 = 10,5; flyta h60 = 11,5; flyta h75 = 12,0; flyta h90 = 12,5; flyta steg H = 0,167;
// Returnerar den relativa luftfuktigheten för ett specifikt avståndsintervall.
int calcHum (float dis, float lowH, float highH, int start) {float diff = dis - lowH; float i1 = diff/stepH; int i = rund (i1); int output = (start + (5*i)); returutgång; }
// Returnerar den relativa luftfuktigheten.
int luftfuktighet (float dis) {if (dis <= h30) {return calcHum (dis, h15, h30, 15); } if (dis <= h60) {return calculateHum (dis, h30, h60, 30); } if (dis <= h75) {return calculateHum (dis, h60, h75, 60); } if (dis <= h90) {return calculateHum (dis, h75, h90, 75); } returnera 100; }
///////////////////////////////////////////////////
// Värmeindexformel //////////////////////////// ////////////////////////////////////////// // Konstanter som används i värmeindexformeln float c1 = -8.78469475556; flottör c2 = 1.61139411; float c3 = 2.33854883889; flottör c4 = -0,14611605; flottör c5 = -0,0123008094; flyta c6 = -0,0164248277778; float c7 = 0,002211732; flottör c8 = 0,00072546; float c9 = -0.000003582;
// Värmeindexformeln som tar en temperatur och relativ luftfuktighet.
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); }
///////////////////////////////////////////////////////////////////////////////
// Andra faktorer/variabler ////////////////////////////// ////////////////////////////////////////// ////////////////////////////////////////// Returnerar en strängrepresentation av en float avrundad till en decimal. Sträng rOne (float num) {int värde = rund (num*10); String output = (String) value; char end = output [strlen (output) -1]; int vänster = värde/10; Sträng börjar = (Sträng) vänster; retur start + "." + slut; }
//////////////////////////////////////////////////////////////////////////////
/ All kod här bör köras en gång på Photon innan looping -funktionerna startar.
void setup () {// Ställ in LCD -skärmens antal kolumner och rader: lcd.begin (16, 2); }
// All kod här loopas och bör innehålla att hämta data, förfina den och lägga den online.
void loop () {// Få temperatur och luftfuktighet. float temp = calculateTemp (analogRead (tempSensor)); float dis = distance (analogRead (disSensor)); int hum = fuktighet (dis); Sträng fuktig = (String) hum; // Beräkna värmeindex. float hI = heatIndex (temp, hum); // Ställ in utmatningssträngen och skriv ut alla meddelanden på LCD -skärmen. Strängutgång = rOne (hI); lcd.setCursor (0, 0); lcd.print (meddelande (runda (hI))); lcd.setCursor (0, 1); lcd.print (meddelande2 + utgång + "C"); output = output + "" + fuktig; // Publicera värmeindexvärdena online och vänta innan du slingar igen. Particle.publish (eventName, output); delay (delayTime); }
Steg 8: Verbind De Photon
Benodigdheden:
- Foton och brödbräda
- Temperatursensor
- 220 Ohm återställning
- Afstandssensor
- LCD-skärm och 10k Ohm potentiometer (tillval)
- Genoeg breadboard trådjes, 9+
- Manlig/kvinnlig tröja, 12 (tillval)
Ansluter de 3,3V foton med + räls på samma kant och förbinder marken med räls.
Anslutning av 5V från foton till andra kant på de + rails vid die kant.
Stoppa temperatursensorn eller ergens med tillräckligt med utrymme i brödbrädan.
Anslutning av analoga utgångar av temperaturmätare med A0 av foton och jord med jordskenor.
Ställ in återställningen för ingången från sensorn och ansluta den igen med 3.3V -skenorna.
Den distanssensor som kan förbindas med inmatning i 3.3V -skenor stannar, jordas i markskenor och analoga utgångar i A1 -foton kan stoppas.
Om du vill att en LCD-skärm ska fungera som följande:
1. Anslutning av potentiometern till brödbrädan med 5V på marken.
2. Anslut de följande bygeltrådarna till LCD-skärmen där stift 1 har en riktning till skärmen.
Pin 1, 5 och 16 van de LCD till ground. Pin 2 en 15 naar 5V.
Anslutning av analoga utgångar av potentiometer, medelstift, stift 3 av LCD.
3. Anslut de följande fotonstiftet till LCD -stift med bygeltråd.
Pin D5 till Pin 4
Pin D4 till Pin 6
Pin D3 till Pin 11
Pin D2 till Pin 12
Pin D1 till Pin 13
Pin D0 till Pin 14
Om fotonen nu är en status och en potentiometer kan den användas på LCD-skärmen.
Steg 9: Plaats De Photon En Het LCD-Scherm in De Opstelling
Benodigdheden:- Powerbank (tillval)
Nu är foton färdiga att använda om de kan placeras på plattan som har placerats på LCD-skärmen och inte kan användas. Nu är det ett bra ögonblick för att foton ska kunna dras på en powerbank, men det är naturligtvis inte obligatoriskt.
Steg 10: Kalibreren (tillval)
Benodigdheden:
- Luchtvochtigheidssensor
- Temperaturmeter
- Rolmaat
- Kodutmatning för att kunna vänta på att de sensorer som är kända måste användas
Även om programvaran inte fungerar så bra kan de använda sensorerna för att de ska kunna kännas av de egna kalibrerna.
Temperaturmätaren kan enkelt göra en temperaturmätare för sensorer med en temperaturmätare.
För luftfartsskydd måste vi först avlägsna avläsaren för att kunna distansera med hjälp av en kompanjon och sedan kommer det att vara möjligt att använda luftfartsförmågan för att kunna meta och vergeleken med en verklig luftvaktmätare/sensor.
I de bijgeleverde koden kan vi kommentera vilka typer av kalibreringsvarianter som finns.
Steg 11: De Warmte Index -mätaren kan användas
Mycket roligare!
Rekommenderad:
E-dohicky den elektroniska versionen av Russ's Laser Power Meter Dohicky: 28 steg (med bilder)
E-dohicky den elektroniska versionen av Russ's Laser Power Meter Dohicky: Laserverktyg. E-dohicky är den elektroniska versionen av dohicky från Russ SADLER. Russ animerar den mycket bra SarbarMultimedia youtube-kanalen https://www.youtube.com/watch?v=A-3HdVLc7nI&t=281sRuss SADLER presenterar ett enkelt och billigt tillbehör
DIY Blood Oxygen Meter: 5 steg (med bilder)
DIY Blood Oxygen Meter: År 2020 stod världen inför ett osynligt monster vid namn Corona Virus. Detta virus gjorde människor mycket sjuka & svag. Många människor förlorade sina goda. Det fanns ett stort problem till en början, problemet var att det inte fanns rätt medicinsk utrustning som
Solar Soil Moisture Meter med ESP8266: 10 steg (med bilder)
Solar Soil Moisture Meter With ESP8266: I den här instruktionsboken gör vi en soldriven jordfuktighetsmonitor. Den använder en ESP8266 wifi -mikrokontroller med låg effektkod, och allt är vattentätt så att det kan lämnas utanför. Du kan följa detta recept exakt, eller ta från det
Atlas WiFi Pool Meter: 18 steg
Atlas WiFi Pool Meter: Denna handledning visar dig hur du konfigurerar WiFi Pool Kit från Atlas Scientific. Mätaren mäter pH, oxidationsreduktionspotential (ORP) och temperatur. Data laddas upp till ThingSpeak -plattformen, där den kan övervakas på distans via en
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): 8 steg
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): ultraljudsgivare L298N Dc kvinnlig adapter strömförsörjning med en manlig DC-pin Arduino UNOBreadboardHur det fungerar: Först laddar du upp kod till Arduino Uno (det är en mikrokontroller utrustad med digital och analoga portar för att konvertera kod (C ++)