1

Téma: LOGování sběrnice 1wire

Řeším aktuálně tuto věc.
Všiml jsem si, že mě občas vypadne čidlo (data odesílám na svůj web, ale tam se chybová hodnota nezapsala, chyba nastala jindy než v 15minutovém intervalu pro odeslání.
Chtěl jsem vyřešit toto chybu případným zápisem do svého LOGu na webu (zapisují se mě sem resety atd.
Myslel jsem že když dostanu jinou hodnotu z sys350 než 2 (2 = vše ok, komunikuje, odpovidá, právě byl získán výsledek), tak to zapíšu jako chybu.
Bohužel to nefungovalo dle představ a házelo to chyby neustále dokola. Předpokládám, že to bude tím jak se čte sběrnice

Neřešil to někdo? Jde mě o kontrolu celé sběrnice.

Mám část tohoto kódu pro 4 čidla:

Chyba_cidla_DS1820
{
if (sys[353]==2) //vše ok, komunikuje, odpovidá, právě byl získán výsledek
{
}      //pokud není nalezeno, odešle se zápis do LOGu
else { http_get(88,86,117,154, 'xxxxx.cz','/chlog.php?chyba=porucha_cidla_01');
}
if (sys[354]==2)
{
}
else { http_get(88,86,117,154, 'xxxxx.cz','/chlog.php?chyba=porucha_cidla_02');
}
if (sys[355]==2)
{
}
else { http_get(88,86,117,154, 'xxxxx.cz','/chlog.php?chyba=porucha_cidla_03');
}
if (sys[356]==2)
{
}
else { http_get(88,86,117,154, 'xxxxx.cz','/chlog.php?chyba=porucha_cidla_04');
}
}

V main mám toto:

main
{
Chyba_cidla_DS1820();
Ping_na_druhe_SDS();
....atd......

Výpis chyb LOGu:

Cas: 03 11 2015 17:14:47 - Chyba: Reset_SDS_1
Cas: 03 11 2015 17:14:50 - Chyba: porucha_cidla_02
Cas: 03 11 2015 17:14:51 - Chyba: porucha_cidla_03
Cas: 03 11 2015 17:14:52 - Chyba: porucha_cidla_04
Cas: 03 11 2015 17:15:13 - Chyba: porucha_cidla_01
Cas: 03 11 2015 17:15:14 - Chyba: porucha_cidla_02
Cas: 03 11 2015 17:15:15 - Chyba: porucha_cidla_03
Cas: 03 11 2015 17:15:16 - Chyba: porucha_cidla_04
Cas: 03 11 2015 17:15:24 - Chyba: porucha_cidla_01
nějaké ukázky kódu zde: http://forum.merenienergie.cz//viewtopic.php?id=552

2

Re: LOGování sběrnice 1wire

Ještě je "správná" hodnota 8 tj. probíhající převod nejen 2.

3

Re: LOGování sběrnice 1wire

Viz http://wiki.merenienergie.cz/index.php/Sdsc_sysp  (popis pro: sys[350] až sys[381]).

Za chybu lze považovat pouze hodnoty 16 nebo 32. Hodnoty 2,4 a 8 jsou "v pořádku". Hodnota 0 je zřejmá, bude u prázdných pozic (logicky).

Pochlubte se - popište jak využíváte své zařízení SDS zde ! Můžete si bezplatně přidat svou reklamu !

4

Re: LOGování sběrnice 1wire

No právě jsem si náhodou všiml, že občas zmizelo to čidlo ze stránky "aktuální stav".
Při odeslání na web to bylo však OK. Jiinak bych si toho nevšiml.
Takže budu muset nechat splnit všechny tři stavy podmínek 2,4 a 8.
Možná nebude špatné k tomu čidlu napájet nějaký ten kondenzátor.

Díky

nějaké ukázky kódu zde: http://forum.merenienergie.cz//viewtopic.php?id=552

5

Re: LOGování sběrnice 1wire

Takže jsem zkoušel tohle (původně bez toho wait(60000);
Zapisovalo to odpojené čidlo po sekundě. Nechtěl jsem zbytečně plnit TXT do kterého se to ukládá, tak jsem přidal ten wait a tím asi zamrzlo SDS na tomto bodě (počítadla S0 se načítala dál, ale už se neodeslal GET  s teplotama a spotřebou na WEB). Asi to bude chyba toho wait, ale hrál jsem se i se součtem v RAM (  ram[110]=sys[494]+sys[527]; //RAM souctu elektrina )

Fungovalo to částečně dle představ, ale nesmíte tam dát to "wait".  Nebo se případně musí nějak omezit ten počet zápisů.

Chyba_cidla_DS1820
{
if ((sys[353]==2)  ||  (sys[353]==4) ||  (sys[353]==8)) //vše ok, komunikuje, odpovidá, právě byl získán výsledek
{
}      //pokud není nalezeno, odešle se zápis do LOGu
else { http_get(88,86,117,154, 'xxxx.cz','/chlog.php?chyba=porucha_cidla',sys[394]);
}
if ((sys[354]==2) ||  (sys[354]==4)|| (sys[354]==8))
{
}
else { http_get(88,86,117,154, 'xxxx.cz','/chlog.php?chyba=porucha_cidla',sys[395]);
}
if ((sys[355]==2)  ||  (sys[355]==4) ||  (sys[355]==8))
{
}
else { http_get(88,86,117,154, 'xxxx.cz','/chlog.php?chyba=porucha_cidla',sys[396]);
}
if ((sys[360]==2) ||  (sys[360]==4) ||  (sys[360]==8))
{
}
else { http_get(88,86,117,154, 'xxxx.cz','/chlog.php?chyba=porucha_cidla_', sys[401]); // čidlo kuchyň
}
wait(60000); //čekej se skenováním 1 minutu
}
nějaké ukázky kódu zde: http://forum.merenienergie.cz//viewtopic.php?id=552

6

Re: LOGování sběrnice 1wire

Klasická otázka, máte tam aktuální firmware . . .

Pochlubte se - popište jak využíváte své zařízení SDS zde ! Můžete si bezplatně přidat svou reklamu !