MĚŘENÍ TEPLOTY (WEBSERVER)- PROBLÉM!
MĚŘENÍ TEPLOTY (WEBSERVER)- PROBLÉM!
Ahoj, zkoušel jsem měřit teplotu pomocí snímače DS18B20. Vše šlo hladce, až do okamžiku, kdy mi tzv. "zamrzla teplota" na webserveru, seriový monitor teplotu ukazuje správně, ale na web ji program posílá špatně. Přikládám program + foto. Budu moc rád za každou pomoc ! Díky!
- Přílohy
-
- program.ino
- (3.22 KiB) Staženo 138 x
-
- Příspěvky: 1030
- Registrován: 06 zář 2017, 20:04
- Reputation: 0
- Bydliště: Brno
- Kontaktovat uživatele:
Re: MĚŘENÍ TEPLOTY (WEBSERVER)- PROBLÉM!
Vidím rozpor v tom, že na serial posíláš Serial.print(sensors.getTempCByIndex(0));, ale na web sensors.getTempC(deviceAddress);
Tak myslím, že v tom druhým je nějaká chyba, třeba adresy. Mimochodem, v tom webu bych řekl, že nemáš standardně ukončenou http hlavičku.
Tak myslím, že v tom druhým je nějaká chyba, třeba adresy. Mimochodem, v tom webu bych řekl, že nemáš standardně ukončenou http hlavičku.
- pavel1tu
- Příspěvky: 2054
- Registrován: 26 říj 2017, 08:28
- Reputation: 0
- Bydliště: Trutnov
- Kontaktovat uživatele:
Re: MĚŘENÍ TEPLOTY (WEBSERVER)- PROBLÉM!
Já v kodu nevidím žádné odesílání na "server" ale běžící server na arduinu ?
PS: kdyby něco neberte mě vážně a moje zprávy kontrolujte antivirotikem - řádí nám tu spalničky
PS: kdyby něco neberte mě vážně a moje zprávy kontrolujte antivirotikem - řádí nám tu spalničky
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"
Pavel1TU
"Správně napsaný kod lze číst jako knihu"
Re: MĚŘENÍ TEPLOTY (WEBSERVER)- PROBLÉM!
Jak to přesně myslíš? IP a MAC?. Díky
-
- Příspěvky: 1030
- Registrován: 06 zář 2017, 20:04
- Reputation: 0
- Bydliště: Brno
- Kontaktovat uživatele:
Re: MĚŘENÍ TEPLOTY (WEBSERVER)- PROBLÉM!
Ahoj myslel jsem to takhle, čteš teplotu dvěma různými příkazy
Ten první funguje a ten druhý nefunguje. Tak je v něm asi nějaká chyba a ta chyba je nejpravděpodobněji v adrese zařízení.
Můžeš zkusit třeba tuhle úpravu
Kód: Vybrat vše
sensors.getTempCByIndex(0)
sensors.getTempC(deviceAddress);
Můžeš zkusit třeba tuhle úpravu
Kód: Vybrat vše
...
void getTemperature(const uint8_t param)
{
tempC = sensors.getTempCByIndex(param);
tempF = DallasTemperature::toFahrenheit(tempC);
}
void loop()
{
Ethernet.maintain();
// požádáme senzor o hodnotu teploty
sensors.requestTemperatures();
Serial.print("Teplota je: ");
// tento řádek je vysvětlený v článku
Serial.print(sensors.getTempCByIndex(0));
Serial.println(" stupnu Celsia");
delay(1000);
sensors.requestTemperatures();
sumTempC = sumTempF = 0.0;
getTemperature(0);
sumTempC += tempC;
sumTempF += tempF;
getTemperature(1);
...
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 9 hostů