Nová verze aplikace pro TME/TH2E – TMEP 6

Tentokrát opravdu poslední verze (to už jsem říkal tolikrát…). Alespoň před koncem světa ano.

Pozor! Již existuje novější verze aplikace, více informací na této stránce.

Co je nového ve verzi 6?

  • Integrován jQuery FancyBox pro zobrazení dalších oken se statistikami a grafy (viz co je možné zobrazit níže).
  • Na záložce „Aktuálně“ přibyl řádek s minimální, průměrnou a maximální teplotou (a vlhkostí) za aktuální den.
  • Možnost zobrazit delší historii (31 dní) pro „Dříve touto dobou“ a to i pro konkrétní čas a včetně grafu.
  • Možnost zobrazit 15 dnů s rekordní nejmenší a nejvyšší teplotou (i průměrnou).
  • Možnost zobrazit přehled dnů s nejméně a nejvíce naměřenými hodnotami.
  • Možnost zobrazit nový rozptylový graf pro denní a měsíční statistiku teploty a vlhkosti.
  • Možnost zobrazit delší historii nej. rekordů u měsíců.
  • Možnost zobrazit delší historii u denní doby.
  • Možnost zobrazit vývoj teploty a vlhkosti za celý rok po dnech.
  • Další pročištění kĂłdu.
  • Opravena francouzština.

Odkaz na stažení z Google code: zde
Ukázka jako obvykle na roudnice.eu
Stránka projektu na GitHubu: zde

Po dlouhé době došlo k rozšíření aplikace o nové grafy a statistiky, tentokrát nenásilnou formou odkazů otevírajících okno se souvisejícím obsahem. Už dlouhou dobu jsem měl tuto myšlenku v hlavě a přišlo mi škoda ji nedotáhnout a aplikaci tak „jednoduše“ a neinvazivně neobohatit o řadu informací, které se mohou někomu hodit.

Děkuji všem, kteří se mi ozvali a dali vědět, jak se jim aplikace líbí či případně co jim chybí a za vyjádřenou podporu.

16 komentářů

  1. „Na záložce „Aktuáln쀝 přibyl řádek s minimální, průměrnou a maximální teplotou (a vlhkostí) za aktuální den.“

    Jo, tohle by se hodilo přidat i do mobilní verze… většinou mě zajímá jak moc ráno mrzlo (a v kolik!) a zjistit to hned v jednoduchým mobilním přehledu by bylo fajn 🙂

  2. Ahoj

    chválím a díky za novou verzi. Teď jsem ji nahrál na web a všechno super funguje. Pro mobilní verzi se mi zobrazí hodnoty, ale pozadí zůstává bílé. Dá se to ještě nějak upravit? Zkoušel jsem to i znovu přehrát, ale pořád beze změny.

    Díky

  3. Zdravím,
    Velice se mi tahle aplikace líbí, chtěl bych taky měřit teplotu a mít k ní on-line přístup, ale zatím se mi nepodařilo odeslat teplotu do databáze. Na papouch.com je sice návod na script, který by, alespoň podle toho jak tomu rozumím, měl otevřít stránku s php scriptem a tím ho spustit a nahrát data ze souboru do databáze.
    ze scriptu jsem smazal odesílání souboru a vytvořil php script, který vkládá přímo proměnné do SQL databáze. takže mám soubor.php?teplota=… ale Mikrotik to očividně nespustí, protože se nic nenahraje (narozdíl od webovýho prohlížeče).
    poradí mi někdo?
    Vit-ass@seznam.cz

  4. David: V pohodě, asi se mobilní aplikace v prvním případě nenahrála celá.

    Vit-ass: Stáhni si klidně rovnou tuhle aplikaci z její stránky na Google Code, rozbal a nastav hodnoty připojení k DB v config.php a teploměr podle návodu, který je v balíku spolu s aplikací. Kdyby se podle návodu něco nedařilo, tak mi klidně napiš na multi@tricker.cz s tím kde máš aplikaci rozjetou a kde jsi se zasekl a zkusím poradit jak nejlépe budu umět.
    Každopádně jestli je problém s port forwardingem na MikroTiku, tak mi do mailu napiš na jaké (veřejné?) IP to máš a jak vypadají pravidla ve Firewall->NAT.

  5. Dobrý večer,
    tak jsem se podíval na tu novou 6. verzi (z 01.12.2012) a ty úpravy v kĂłdu / i výsledném webu jsou zajímavé a i praktické, ale přiznávám, že některé věci by se mohli pořešit asi trošku jinak 😉

    I když dotazy do DB nejsou nijak složité, tak na záznamově více objemných tabulkách, na ne úplně raketových DB strojích jsou změny na verzi 6. už značně znát, že je těch dotazů do DB více a také že se často automaticky opět spouštějí skriptem na webu apod. Je to již znát i na http://www.roudnice.eu že to už nějaký čas zabere (tedy pokud se například nedegradovat server apod. a s aplikací by to nesouviselo) než se stránka k zobrazení vůbec připraví a daty naplní.

    Takže v mém případě si toto již musím bohužel poupravit, aby to tak často, respektive takovým způsobem nesahalo do hlavní největší tabulky a řešilo se to nějakým šetrnějším způsobem i když to asi bude znamenat úpravu struktury DB, přidáním například nějaké cache tabulky apod. Protože i když například dotaz do DB na nejnižší naměřenou teplotu za celou dobu měření je triviální, tak právě na pomalejších strojích řazení na tak velké tabulce dle hodnoty teploty na sloupci bez indexu trvá dost dlouho a zjišťovat to každých cca 60-120 sec dokola jak to je pomocí AJAXu pevně v kĂłdu webu nastavené, je asi zbytečné. Například toto je přeci dopočítáno už v tme_denni (za předchozí dny) která je o poznání kratší a pak už bych dopočítal z cache jen ten dnešek (aby to bylo správně zobrazeno, kdyby byl za dnešní ještě nepropočítaný den v tme_denni, překročen nějaký rekord apod.). To platí i pro některé další údaje.

    K tomu minimu, maximu a průměru, který se počítá za nějaké období (například za aktuální den jak je nově nad 4 h grafem vykresleno), by se dalo využít i vykreslení této hodnoty (i když jen jako horizontální přímky) přímo do grafů které tam již jsou, ve výchozím zobrazení nastaveno jako skryté, tj. pouze na dotaz (jako bývá skryt například rosný bod).

    Opět mi to nedalo a podíval jsem se ještě na chybku, kterou hlásil David (4. 12. 2012 v 14.57) ohledně nenatažené části (že je pouze bílé pozadí) pro mobilní verzi.
    No a David má bohužel pravdu. Našel jsem v souboru „mobile.php“ chybku a to na řádce 30 kde se má dotáhnout soubor „scripts/js/jquery.tools.ui.timer.tmep.js“. Takový ale od nové verze 6 neexistuje, respektive existuje ale jmenuje se „scripts/js/jquery.tools.ui.timer.colorbox.tmep.js“. Takže postačí opravit jedno nebo druhé a pravděpodobně to bude fungovat tak jak autor zamýšlel 😉

    Přeji pohodové měření 🙂

  6. Dobrý večer i Tobě,

    díky za obsáhlý komentář. Chybku v mobilní verzi jsem zcela opomenul, díky za upozornění a řešení.

    Máš naprostou pravdu a souhlasím ohledně rychlosti natahování dat (byť roudnice.eu běží od jisté doby na jiném a horším železe). Věděl bych, jak to pořešit nejen s cache tabulkou, ale nechtěl jsem hrabat do struktury DB, resp. v této verzi to řešit. Kdybys mohl poskytnout Tebou případně vytvořené úpravy a vylepšit tuhle oblast, budu rád.

  7. Ahoj Petře,

    Hezké svátky i Tobě a i všem ostatním!

    Na tom odkazu co jsi poslal vidím jen prázdnou bílou stránku a nic víc. Neděláš tam něco? Kdyžtak mi ty případné errory pošli do mailu na michal@rete.cz

    M.

  8. Ahoj,
    teploměr mi občas vyhazuje chybovou hodnotu 85 °C, která si mi následně zapíše do databáze a já to pak musím ručně opravovat. Vím, že to je chyba teploměru. Ale chtěl bych se zeptat, jestli by nešlo zápis do databáze upravit tak, že by se do ní nezapisovaly hodnoty vyšší než 80 °C, čímž by se problém s chybovou hodnotou vyřešil. Děkuji.

  9. Ahoj,

    přímo do aplikace bych to obecně nedával (někdo může měřit vysokou teplotu schválně), ale doplň si do index.php
    Před (řádek 60) kde je:
    // kontrolujeme IP a sedi

    Následující:
    if($teplota > 80){ exit; }

  10. Jen poznámka k těm Dallas čidlům (např. DS18B20): lepší by ale bylo, ošetřit přímo tu chybu čtení z čidla. Při čtení hodnot z čidla po 1-Wire může dojít k chybám (například díky i jen chvilkovému zarušení vedení 1-Wire apod.) a to i při přímém čtení například přímo na COM portu (pokud to není dostatečně ošetřeno a odstíněno apod.) a tak je s tím potřeba počítat a hodnoty předávané čidlem určitě kontrolovat na přítomnost „speciálních“ hodnot. Jako jsou například „32767“ nebo „16777216“ (které toto čidlo používá) a taky při čtení kontrolovat jestli předaná hodnota dorazila i s korektním CRC od čidla. A teprve pokud je hodnota v pořádku tak ji předat aplikaci k zaznamenání teploty, nebo zapsat do logu chybu čtení z čidla apod.

    Bohužel netuším, pomocí čeho ta čidla vyčítáte a jaké máte možnosti, ale pokud přes nějaký PIC s programem, tak bych se to pokusil ošetřit rovnou tam. Některé produkty, které obsahují 1-Wire sběrnici pro Dallas čidla, předávají mimo jiné i parametr s hodnotou o úspěšnosti přečtení hodnoty z čidla apod. aby bylo možné rozlišit, zda hodnota v parametru teploty je skutečně teplota, nebo nějaké hlášení od čidla. Například do těchto Dallas čidel se dá zapsat i „alarm“ který čidlo začne hlásit při překročení určité teplotní meze a toto je opět hlášeno speciální hodnotou v parametru teplota a je to opět potřeba rozlišit od opravdové naměřené teploty.

    Některé produkty (hlavně ty „hotové“ pro koncové uživatele) od Papoucha na výstup předávají už jen „hotovou“ korektně naměřenou teplotu a pokud je chyba čtení z čidla tak většinou nepředávají nic. Tam s tím pak většinou problém při zápisu do DB žádný nemáte (při jednoduchém čtení ze zařízení), ale jiné produkty od Papoucha určené většinou pro další montáž apod. předávají i parametr, který říká momentální stav měřiče, tj. jestli se hodnota zrovna načítá, nebo jestli byla naměřena chybná nebo korektní hodnota apod. (má to své velké klady, že se toto předává a je tak možno s hodnotou podle toho nakládat!) a s tím je potřeba počítat a ne jen číst bez ohledu na ostatní údaje onen údaj o teplotě, nebo stavu vstupu apod.

    No a nebo pak též může nastoupit „brutální“ metoda filtru, kdy všechny zdokumentované speciální hodnoty, které čidlo v teplotě může předávat prostě odfiltrujete a nebudete do DB zapisovat. Ale to je opravdu… 🙁

    A pokud máte opravdu nějaký problém s koncovým Dallas čidlem, tak dnes už není tak drahé (desítky korun), aby se nedalo vyměnit, nebo případně ošetřit kabeláž tak aby 1-Wire komunikovalo co nejspolehlivěji. 😉

  11. No, já mám TME ethernetový teploměr přímo od papoucha (viz: http://www.papouch.com/cz/shop/product/tme-ethernetovy-teplomer/). Nějak se mi nechce ten teploměr složitě vymontovávat a posílat papouchovi na opravu, tak mi řešení co napsal Multitricker plně vyhovuje (tímto mu mnohokrát děkuji). Jen bych měl ještě 3 drobné poznámky k aplikaci, resp. k řádku s min. avg. a max. teplotou na kartě aktuálně.
    1. pokud je v daný den nejvyšší naměřená teplota 0 °C pak se v tabulce max. teploty dnes zobrazuje pouze „- °C“. Nevím, jestli se ten problém týká i min. teploty, kdy je tato teplota 0 °C
    2. myslím, že by bylo fajn, kdyby se u max. a min. teploty v daný den zobrazoval i čas, ve kterém bylo teploty dosaženo,
    3. tak, jak již psal Neddy. Možná by nebylo od věci, kdyby se tento řádek objevil i v mobilní verzi.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *