Jak vložit teplotu na webové stránky?

Chcete na svých webových stránkách zobrazovat teploměr? Hledáte způsob, jak vložit na web teplotu ve Vaší firmě nebo ve Vašem sportovním areálu? Právě pro Vás je určen tento článek. Dozvíte se, čím teplotu měřit a jak jí dostat na web.

Tip: Příklad, jak naměřenou teplotu odesílat do Google Tabulek najdete v článku Node-RED: 2. zápis dat do Google Tabulky.

Jak to funguje?

Teploměr nebo speciální program posílá aktuálně naměřenou teplotu na webový server jako jednoduchý požadavek typu HTTP GET.

tweb-princip.jpg

Obrázek 1. - Nákres principu vkládání teploty na WEBové stránky

Jaký použít hardware?

Měření teploty zajišťují teploměry TM (teploměr pro RS232), TMU (teploměr pro USB) nebo TME (Ethernetový teploměr).

Internetový teploměr v PHP

Co je třeba pro toto řešení:

  • Hosting (nebo intranetový server) se skriptováním PHP.
  • Počítač s připojeným teplotním čidlem TM nebo TMU, připojený alespoň občas k Internetu, nebo teploměr TME připojený k Internetu.

Systém měření a aktualizace teploty na WEBovou stránku je naznačen na obrázku nahoře. K počítači v místě měření teploty je připojeno teplotní čidlo TM nebo TMU a je spuštěn ovládací program. Program v pravidelných intervalech měří teplotu z čidla a odesílá ji na server v internetu (nebo intranetu).

V případě Ethernetového teploměru TME je systém odesílání teploty ještě jednodušší. Přímo v TME se nastaví perioda odesílání a internetová adresa skriptu, který teplotu zpracovává. To je celé nastavení, které je třeba provést.

Na serveru stačí do WEBových stránek vložit jednoduchý skript, popsaný dále, který zajistí uložení přijaté teploty a také její zobrazení na Vámi zvoleném místě na Vaší stránce.

[ Řešení přenosu teploty, popsané dále, je pouze úplně nejzákladnějším příkladem řešení. Toto řešení by samozřejmě bylo vhodné rozšířit o zabezpečení, případně ošetřit dlouhodobou ztrátu komunikace se serverem. ]

Obslužný skript

Zdrojový kód obslužného skriptu na serveru:

<?php
// Zjisteni existence vstupní promenne
if (isset($_GET['temp'])) {

    // Nacteni promene temp z cidla a osetreni proti XSS utokum
    $TEMP = htmlspecialchars($_GET['temp'], ENT_QUOTES, "UTF-8");

    // Jestlize prijde jako parametr teplota, zapis ho do souboru a zobraz vysledek
    // Jestlize nema soubor patricna prava, vypis chybove hlaseni
    if ($file=@fopen("teploty.dat", "w")) {
        $text=fwrite($file,$TEMP);
        fclose($file);
        echo $TEMP;
    } else {
        echo "Chyba - soubor teploty.dat nema pravo pro zapis!";
    }

} else {

    // Jestlize neprijde teplota jako parametr, nacti a zobraz teplotu ze souboru
    // Jestlize nema soubor patricna prava, vypis chybove hlaseni
    if ($file=@fopen("teploty.dat", "r")) {
        $text=fread($file,10);
        fclose($file);
        echo $text;
    } else {
        echo "Chyba - soubor teploty.dat nema pravo pro cteni!";
    }
    
}
?>

Skript zajišťuje jak příjem hodnot naměřené teploty, tak její zobrazení. Uvedený kód stačí uložit například do souboru teplota.php do kořenového adresáře Vašeho WEBu. Má-li Váš server v internetu název například www.server.cz, bude mít skript adresu www.server.cz/teplota.php. Uložení teploty na server je možné přes parametr, předávaný skriptu. Teplotu 25,6 °C je možné vložit takto: www.server.cz/teplota.php?temp=25,6. Tím můžete vyzkoušet funkčnost skriptu. Předávání teploty tímto způsobem zajišťuje ovládací program popsaný dále.

Pokud potom otevřete ve Vašem internetovém prohlížeči adresu www.server.cz/teplota.php, zobrazí se text 25,6 (naposledy předaná hodnota teploty).

[ Skript pro ukládání aktuální teploty používá soubor teploty.dat, který je ve stejném adresáři jako skript. Je třeba zajistit, aby měl PHP server plná práva pro zápis i pro čtení tohoto souboru. ]

Tím je skript na serveru hotov. Můžete jej samozřejmě začlenit do Vašich stránek, případně rozšířit o další funkce nebo o zabezpečení. Pravidelnou aktualizaci naměřených teplot zajišťuje obslužná aplikace, popsaná dále. (V případě měření teploty Ethernetovým teploměrem TME není aplikace potřeba. TME odesílá teplotu přímo do Internetu bez potřeby PC.)

Program pro měření teploty

Co je třeba pro tento program:

  • Počítač s operačním systémem Windows 2000, XP nebo vyšší.
  • Stálé nebo pravidelné připojení k internetu. (Nutné pro odesílání teploty na server v internetu.)
  • Připojený teploměr TM nebo TMU.
  • [ V případě Ethernetového teploměru TME není aplikace potřeba. TME odesílá teplotu sám, bez pomoci PC. ]

Ovládací program zajišťuje měření teploty čidlem TM nebo TMU a její odesílání na server v internetu. Umožňuje nastavit periodu měření a umí naměřenou teplotu ukládat do souboru, který je snadno importovatelný do programu Microsoft Excel. Program musí být spuštěn na počítači, ke kterému je připojen teploměr.

tweb_sw.png

Na obrázku jsou zachycena všechna okna programu. Vlevo dole je hlavní okno programu. Vlevo nahoře je zmenšené hlavní okno. Vpravo je nastavení parametrů.

Hlavní okno

V hlavním okně se zobrazuje naměřená teplota a průběh odesílání teploty na internet, případně chyby v komunikaci s čidlem nebo se serverem. Záznam z tohoto okna je také ukládán do textového souboru s názvem ve formátu TM2web - dd.M.yyyy.log. Soubor je uložen v adresáři, kde je umístěn program.

Tlačítkem vpravo od teploty je možné hlavní okno minimalizovat do velikosti proužku (vlevo nahoře na obrázku).

Tlačítkem Options se otevře Okno nastavení, tlačítkem Hide se hlavní okno skryje na dolní lištu do oblasti hodin.

Okno nastavení

Target URL address - adresa skriptu, který zpracovává teplotu na serveru v internetu. Klepnutím na tlačítko Send je možné právě naměřený údaj jednorázově odeslat na zadanou adresu.

Period of automatic sending to server - perioda s jakou se bude odesílat teplota na server v Internetu. Časový interval zadejte v minutách. Zadáním intervalu 0 se zruší automatické odesílání teploty na internet.

Source serial port - Ze seznamu vyberte sériový port COM, ke kterému je připojen teploměr TM nebo vyberte virtuální sériový port teploměru TMU. Tlačítkem vpravo od výběru COMu otevřete/zavřete vybraný port pro komunikaci s čidlem. Je-li zatrženo Automatic, vybraný port se otevře automaticky po startu programu.

Další nastavení - ukládání teplot do textového souboru

Always on top - Hlavní okno bude vždy nahoře nad ostatními okny.

Generate temperature LOG - Do adresáře, kde je umístěn program, se bude každý den ukládat textový soubor s naměřenými teplotami. Soubory s teplotou mají název ve formátu Temperature(dd.M.yyyy).log. Na každém řádku je jeden záznam včetně data a času měření. Hodnoty jsou odděleny tabulátory a soubory tak lze snadno importovat například do programu Microsoft Excel.

Okno nastavení je možné zavřít bez uložení změn tlačítkem Close nebo uložit změny a zavřít okno tlačítkem Save and close.

tweb_sw.ziptweb_sw.zip

Program pro odesílání teploty z TM a TMU na webserver.

Velikost souboru: 284,71 kB

Datum: 09.03.2010

Stáhnout

Vytvořeno05.03.2010
Na vašem soukromí nám záleží
Tento internetový obchod ukládá soubory cookies, které pomáhají k jeho správnému fungování. Využíváním našich služeb s jejich používáním souhlasíte.
Povolit všePodrobné nastavení