1

Téma: Záporné hodnoty teploty

Upravil jsem si SDC-C program, aby hodnoty zasílal i na můj server a narazil jsem na problém se zápornými hodnotami teploty.
Kladné jsou ok, ale request pak pro záporné teploty blízké nule vypadá takto:
... write_temp.php?ver=1&line=a&devid=XYZ&timeNTP=1363931807&t1=-2867206&t2=16777216&t3=16777216& ...

problémem je pro mne právě hodnota -2867206 - je to možné nějak lehce převést např na -021?

teplota je brána z sys[310], řádek v SDS-C je v podstatě stejný s originálem, předpokládám, že stejný dotaz musí chodit na portál.

2

Re: Záporné hodnoty teploty

Evidentně máte použity DS18S20 namísto DS18B20.

3

Re: Záporné hodnoty teploty

if (teplota11<-2867200) {  //uprava teplomeru pokud je hodnota pod nulou a snimac typu DS18S20 (DS1820)
       teplota11+=2867200;
    }

4

Re: Záporné hodnoty teploty

Přísahal bych, že se jedná o DS18B20, ale můžete mít pravdu - bral jsem z šuplíkových zásob a nemohu to rozumně zkontrolovat - teploměr je v bužírce a venku (kde je teď zima :-) ).
Zkusim softwarový způsob.

5

Re: Záporné hodnoty teploty

Tak to vypadá, že softwarová úprava zafungovala - upravoval jsem přímo SDS-C kód a posílám je na portál i na svůj server.
A výsledek +/- odpovídá venkovnímu teploměru.

Díky za rychlou odpověď a radu.

6

Re: Záporné hodnoty teploty

Není za co. SDS sice podporuje i DS18S20, potažmo prapůvodní DS1820 ale je tam drobná chyba při měření záporných teplot kterou jsem před pár měsíci popisoval přímo autorovi FW, nicméně zatím neopraveno... Tak alespoň že se to dá takhle jednoduše napravit a navíc v okamžiku kdy tu chybu opraví tak nebude ani potřeba měnit SDS-C program....