Sisällysluettelo:

Warmte -indeksimittari: 11 vaihetta
Warmte -indeksimittari: 11 vaihetta

Video: Warmte -indeksimittari: 11 vaihetta

Video: Warmte -indeksimittari: 11 vaihetta
Video: Как избежать появления трещин на стенах? Подготовка под штукатурку. #11 2024, Marraskuu
Anonim
Warmte -indeksimittari
Warmte -indeksimittari

Met deze ohjattava kun je je eigen warmte -indeksimittari.

Lämpömittarimittari Geeft de gevoelstem Temperaa aan op base van de omgevingstem Temperature en de luchtvochtigheid.

Deze meter is bedoeld voor binnen maar kan buiten worden gebruikt mits er geen neerslag valt en er een windvrij plekje wordt gebruikt.

Tarvikkeet

- Hiukkasfotoni ja leipälauta

- Lämpötila -anturi (TMP36)

- Afstandssensor voor afstanden tussen 10 ja 20 cm.

- Powerbank

- Ymmärrämme 220 ohmia

- Breadboard draadjes, 9+

- Mobiele -puhelin + tietokone

- Paardenhaar

- Hout en houtlijm

- Gereedschap: Boormachine/schroevendraaier, zaag en vijl

- Seep

- 2 potloden- Kurk

- Kartonnen plaatje + nokkela paperi

- Gewichtjes, denk aan kleine loodjes of metalen plaatjes

Vaihtoehto:

- LCD -näyttö + 10 k ohmin potentiometri + uros/naarashyppyjohdin, 12

- Luchtvochtigheidsmeter

- Lämpötilamittari- Rolmaat

Vaihe 1: De Photon Instellen

De Photon Instellen
De Photon Instellen
De Photon Instellen
De Photon Instellen

Benodigdheden:- Mobiele-puhelin

- Fotoni

- Tietokone

Lataa hiukkassovellus op je telefoon en maak een particle account.

Pysäytä USB-kaapeli, jossa on fotoni tietokoneessa, vaadi fotoni ja langaton verkkoyhteys.

Dit kan kautta setup.particle.io.

Vaihe 2: Paardenhaar

Paardenhaar
Paardenhaar

Benodigdheden:- Paard

Voor het maken van de haar-hydrometer heb je een ontvette paardenhaar nodig van bij voorkeur minimumal 60 cm

De haren kunnen worden afgeknipt, of uit de staart/manen worden getrokken (op eigen risico).

Vaihe 3: Maak Een Horizontale Opstelling Met Daaraan Een Kastje

Maak Een Horizontale Opstelling tapasi Daaraan Een Kastjen
Maak Een Horizontale Opstelling tapasi Daaraan Een Kastjen
Maak Een Horizontale Opstelling Met Daaraan Een Kastje
Maak Een Horizontale Opstelling Met Daaraan Een Kastje
Maak Een Horizontale Opstelling Met Daaraan Een Kastje
Maak Een Horizontale Opstelling Met Daaraan Een Kastje

Benodigdheden:- Seep

- Hout + lijm

- Gereedschap

Maak een ombouw waarbij de paardenhaar horizontaal can worden gespannen en die tegelijkertijd enige bescherming biedt

Ontvet de paardenhaar

Vaakasuora alue, vähintään voorkeur 50 cm. Zorg dat er genoeg haar over is om de hefboom en het gewicht te bevestigen (zie volgende stap)

Vaihe 4: Maak Een Kastje Voor De Photon En LCD-scherm

Maak Een Kastje Voor De Photon ja LCD-näyttö
Maak Een Kastje Voor De Photon ja LCD-näyttö

Benodigdheden:- Hout en houtlijm

- Gereedschap: zaag

Maak een simpele houten bak zonder deksel met een houten plank die in het midden staat als een jakaja. Op deze plank moet het breadboard met de photon utas 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 is can deze op zijn zijkant naast de haar worden gezet aan de kant waar de gewichtjes aan de haar hangen.

Vaihe 5: Maak Een Hefboom

Maak Een Hefboom
Maak Een Hefboom
Maak Een Hefboom
Maak Een Hefboom

Benodigdheden:- 2 potloden

- Kurk

- Kartonnen plaatje + älykäs paperi

- 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 balancer deze uit met een gewichtje (zie afbeelding 3 ringen).

Vaihe 6: Plaats De Afstandmeter Onder Het (kartonnen) Plaatje

Plaats De Afstandmeter Onder Het (kartonnen) Plaatje
Plaats De Afstandmeter Onder Het (kartonnen) Plaatje
Plaats De Afstandmeter Onder Het (kartonnen) Plaatje
Plaats De Afstandmeter Onder Het (kartonnen) Plaatje

Benodigdheden:

- Kestävä anturi

- Opzetstukje (optioneel)

- Extra draad en juotosarja (optioneel)

Bij voorkeur met een afstand van minimumal 12 cm bij een relatieve luchtvochtigheid van +- 60%.

Intian nodig op een opzetstukje.

Als de bedrading van de afstandssensor niet de houten bak halen zullen deze eerst verlengd moeten worden.

Vaihe 7: Koodi Schrijven

Benodigdheden:- Tietokone tapasi hiukkastilin

Ga naar build.particle.io en maak een nieuwe app aan. Noem deze bijvoorbeeld HeatIndex.

Kirjastojen alla, zoek LiquidCrystal ja tuonti deze sovelluksessa.

Dan kan de Volgende -koodi gekopieerd worden sovelluksessa:

Kommentit kommentit menivät ovi als je wilt begrijpen wat elk stukje code precies doet.

Ook als er een probleem optreedt is het goed om de comments te raadplegen.

// Sisällytä seuraavat kirjastot: #include #include

// Analogiset lukunastat kaikille tämän rakenteen antureille:

int tempSensor = A0; int disSensor = A1;

// Julkaisusäännöt:

// Julkaisun viiveaika ja tapahtuman nimi. // Viiveaika millisekunteina. int delayTime = 15000; String eventName = "Todellinen_lämpötila";

/////////////////////////////////////////////////

// Nestekidenäyttökoodi ///////////// /////////////////////////////// /////////////////// // Alusta näyttö datanastat LiquidCrystal lcd (D5, D4, D3, D2, D1, D0);

// Määritä lämpöindeksiarvojen rajat

int varovaisuus = 27; int eCD = 33; int vaara = 40; int äärimmäinen = 52;

// Palauttaa tietyn lämpöindeksiarvon viestin.

Merkkijonoviesti (int hI) {if (hI <varoitus) {return "Ei varoitusta."; } if (hI <eCD) {return "Varoitus!"; } if (hI <vaara) {return "Äärimmäistä varovaisuutta!"; } if (hI <äärimmäinen) {return "Vaara !!"; } palauta "ERITTÄIN VAARA !!"; }

// Viesti näytön toisella rivillä.

String message2 = "Todellinen T:";

//////////////////////////////////////////////////////

// Etäisyysanturin koodi //////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////// // Anturin palauttamat vähimmäis- ja enimmäisraaka -arvot. int minD = 2105; int maxD = 2754;

// Todelliset raaka -arvot anturi palautti 5 mm välein.

int ten = 2754; int tenP = 2691; int yksitoista = 2551; int elevenP = 2499; int kaksitoista = 2377; int kaksitoistaP = 2276; int kolmetoista = 2206; int thirteenP = 2198; int neljätoista = 2105;

// Palauttaa etäisyyden senttimetreinä, joka kuuluu raaka -arvoon jokaista 5 mm: ää kohden.

float getDis (int -numero) {kytkin (numero) {tapaus 2754: paluu 10; tapaus 2691: paluu 10,5; tapaus 2551: palautus 11; tapaus 2499: palautus 11,5; tapaus 2377: palautus 12; tapaus 2276: palautus 12,5; tapaus 2206: palautus 13; tapaus 2198: palautus 13,5; tapaus 2105: palautus 14; }}

// Laskee todellisen etäisyyden cm, jonka etäisyysanturi on ottanut.

float calcDis (int start, float stop, int mitta) {float distance = getDis (start); kelluva askel = (stop - start)/10; for (int i = 0; i <5; i ++) {jos (mittaus = (aloitusvaihe)) {paluumatka; } start = start - step; etäisyys = etäisyys + 0,1; }}

// Tarkistaa etäisyysanturin suuret rajat.

float -etäisyys (sisäinen mittaus) {// Jos etäisyysanturi ei ollut välillä 10–14 cm, // emme tiedä todellista etäisyyttä ja paluuta 10. if (mittaus maxD) {return 10,0; } if (mittaus <= kolmetoistaP) {return laskeDis (kolmetoistaP, neljätoista, mittaus); } if (mittaus <= kolmetoista) {return calcDis (kolmetoista, kolmetoistaP, mittaus); } jos (mittaus <= kaksitoistaP) {return laskeDis (kaksitoistaP, kolmetoista, mittaus); } if (mittaus <= kaksitoista) {return calcDis (kaksitoista, kaksitoistaP, mittaus); } jos (mittaus <= yksitoistaP) {return laskeDis (yksitoistaP, kaksitoista, mittaus); } jos (mittaus <= yksitoista) {return laskeDis (yksitoista, yksitoistaP, mittaus); } if (mittaus <= tenP) {return calcDis (tenP, yksitoista, mittaus); } if (mittaus <= kymmenen) {return laskeDis (kymmenen, kymmenenP, mittaus); } // Koodin ei pitäisi koskaan tulla tänne. paluu -2; }

///////////////////////////////////////////////////////////////////////////////////////

// Lämpötila -anturin koodi ////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////. / // Lämpötila -anturissa käytetty suurin jännite mV. kelluva maxV = 3300,0;

// Perusjännite ja siihen liittyvä lämpötila, jonka lämpötila -anturi palauttaa.

// Jännite on mV. int baseV = 750; int emäsT = 25;

// Laskee lämpötilan analogisen nastan mittausarvosta.

float calcTemp (int -mittaus) {kelluva jännite = ((maxV/4096)*mittaus); float diff = baseV - jännite; float temp = baseT - (diff/10); paluulämpötila; }

///////////////////////////////////////////////////

// Kosteuslaskelmat ///////////////////////////////////////////////////////////// /////////////////////////////// // Kosteuslaskelmien muuttujat // ovat peräisin todellisista kosteusantureista. kelluva h15 = 10,0; kelluva h30 = 10,5; kelluva h60 = 11,5; kelluva h75 = 12,0; kelluva h90 = 12,5; kellukkeen vaihe H = 0,167;

// Palauttaa suhteellisen kosteuden tietyllä etäisyysalueella.

int calcHum (float dis, float lowH, float highH, int start) {float diff = dis - lowH; float i1 = diff/stepH; int i = pyöreä (i1); int -lähtö = (aloita + (5*i)); paluu lähtö; }

// Palauttaa suhteellisen kosteuden.

int kosteus (float dis) {if (dis <= h30) {return calcHum (dis, h15, h30, 15); } if (dis <= h60) {return laskeHum (dis, h30, h60, 30); } if (dis <= h75) {return laskeHum (dis, h60, h75, 60); } if (dis <= h90) {return laskeHum (dis, h75, h90, 75); } palauta 100; }

///////////////////////////////////////////////////

// Lämpöindeksi kaava ///////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////// // Lämpöindeksikaavassa käytetyt vakiot float c1 = -8.78469475556; kelluva c2 = 1,61139411; kelluva c3 = 2,33854883889; kelluva c4 = -0,14611605; kelluva c5 = -0,0123008094; kelluva c6 = -0,0164248277778; kelluva c7 = 0,002211732; kelluva c8 = 0,00072546; kelluva c9 = -0,000003582;

// Lämpöindeksikaava, joka mittaa lämpötilan ja suhteellisen kosteuden.

kelluva lämpö Indeksi (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); }

///////////////////////////////////////////////////////////////////////////////

// Muut sekoitukset/muuttujat /////////////////////////////////////////////////////////////// /////// /////////////////////////////////////////////////////////////////// // Palauttaa kellon merkkijonon, joka on pyöristetty alaspäin yhden desimaalin tarkkuudella. String rOne (float number) {int arvo = pyöreä (numero*10); Merkkijonoulostulo = (merkkijono) -arvo; char end = lähtö [strlen (output) -1]; int vasen = arvo/10; Merkkijonon alku = (Merkkijono) vasemmalle; paluu alkaa + "." + loppu; }

//////////////////////////////////////////////////////////////////////////////

/ Kaikki tässä olevat koodit tulee suorittaa kerran fotonilla ennen silmukointitoimintojen alkamista.

void setup () {// Määritä nestekidenäytön sarakkeiden ja rivien määrä: lcd.begin (16, 2); }

// Kaikki tässä oleva koodi on silmukoitu ja sen pitäisi sisältää tietojen hankkimista, hienosäätöä ja asettamista verkkoon.

void loop () {// Ota lämpötila ja kosteus. float temp = laskeTemp (analoginenluku (tempSensor)); float dis = etäisyys (analoginen lukema (disSensor)); int hum = kosteus (dis); Jono kostea = (Merkkijono) hum; // Laske lämpöindeksi. float hI = lämpöindeksi (lämpötila, hum); // Määritä tulostusjono ja tulosta kaikki viestit nestekidenäytölle. Merkkijonoulostulo = rOne (hI); lcd.setCursor (0, 0); lcd.print (viesti (kierros (hI)))); lcd.setCursor (0, 1); lcd.print (message2 + output + "C"); output = output + "" + kostea; // Julkaise lämpöindeksiarvot verkossa ja odota ennen silmukointia uudelleen. Particle.publish (eventName, output); viive (delayTime); }

Vaihe 8: Verbind De Photon

Verbind De Photon
Verbind De Photon
Verbind De Photon
Verbind De Photon
Verbind De Photon
Verbind De Photon
Verbind De Photon
Verbind De Photon

Benodigdheden:

- Photon ja leipälauta

- Lämpötila -anturi

- Ymmärrämme 220 ohmia

- Pysyvä anturi

- LCD-scherm ja 10 k ohmin potentiometri (lisävaruste)

- Genoeg -leipälauta draadjes, 9+

Uros/nainen hyppääjä draadjes, 12 (optioneel)

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.

Stop de temperatuursensor ergens met genoeg ruimte eromheen in hetkileipä.

Vertailulähtö vertailulähtöön lämpötila -anturi ja A0 van de photon en de ground met de ground rails.

Zet de weerstand voor de input van de sensor en verbindt de weerstand met de 3.3V rails.

Vahvistin voi verbonden sanan ovi de input in 3.3V rails te stoppen, de ground in de ground rails en de analogial output in A1 van de photon te stoppen.

Alle je een LCD-scherm wilt aansluiten werkt dat als volgt:

1. Verbindt de potentiometer aan het leipälauta ja 5V maadoitettu.

2. Verbindt de volgende jumper draadjes aan het LCD-scherm waarbij pin 1 het dichtsbij de rand van het scherm is.

Nasta 1, 5 ja 16 LCD -näytön maadoitus. Nasta 2 en 15 naar 5V.

Verbindt analogisen lähdön potentiometri, keskimmäinen nasta, LCD -nasta 3.

3. Verbindt de volgende fotonin nastat LCD -nastat ja hyppyjohtimet.

Nasta D5, nasta 4

Nasta D4, nasta 6

Nasta D3, nasta 11

Nasta D2, nasta 12

Nasta D1, nasta 13

Nasta D0 naar Nasta 14

Als de photon nu aanstaat en er aan de potentiometer gedraaid wordt moeten er op het LCD-scherm blokjes verschijnen.

Vaihe 9: Laittaa De Photon En Het LCD-Schermin De Opstellingiin

Plaats De Photon En Het LCD-Scherm in De Opstelling
Plaats De Photon En Het LCD-Scherm in De Opstelling

Benodigdheden:- Powerbank (lisävaruste)

Nu de photon klaar voor gebruik is can 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 natural and natt verplicht.

Vaihe 10: Kalibreren (optioneel)

Benodigdheden:

- Luchtvochtigheidssensor

- Lämpötilamittari

- Rolmaat

- Koodin tuotos voor rauwe waarden van de sensoren die gekalibreerd moeten worden

Als de software niet goed blijkt te werken met de sensoren can er voor gekozen worden om de sensoren zelf de kalibreren.

Lämpötilamittari voi säätää oven lämpötilan ja lämpötilan mittarin sekä mitata anturin.

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 luchtvochtigheidsmeter/sensor.

In de bijgeleverde code zitten comments die aangeven waar dit soort kalibratie variabelen staan.

Vaihe 11: De Warmte -indeksimittari on Klaar Voor Gebruik

Vielä miellyttävämpää!

Suositeltava: