ThermokonSR04 Rausch mit 20°C

Begonnen von immi, 18 August 2013, 11:00:18

Vorheriges Thema - Nächstes Thema

immi

Hallo Zusammen
Ich habe eine neue Feature  bei ThermokonSR04 entdeckt

Ich sehe seit 3 Tage "Rausch" in der Logfiles


(siehe Anhang / see attachement)


anbei auch Teil der Logfiles
2013-08-18_09:18:32 Term_EG_Cucina temperature: 23.8
2013-08-18_09:18:32 Term_EG_Cucina set_point: 0.0
2013-08-18_09:20:03 Term_EG_Cucina temperature: 20
2013-08-18_09:20:03 Term_EG_Cucina set_point: 0.0
2013-08-18_09:20:04 Term_EG_Cucina temperature: 20
2013-08-18_09:20:04 Term_EG_Cucina set_point: 0.0
2013-08-18_09:35:27 Term_EG_Cucina T: 23.8 SP: 0 F: 3 SW: 1
2013-08-18_09:35:27 Term_EG_Cucina fanStage: 3
2013-08-18_09:35:27 Term_EG_Cucina switch: 1
2013-08-18_09:35:27 Term_EG_Cucina setpoint: 0
2013-08-18_09:35:27 Term_EG_Cucina temperature: 23.8
2013-08-18_09:35:27 Term_EG_Cucina set_point: 0.0
2013-08-18_09:52:21 Term_EG_Cucina T: 24.0 SP: 0 F: 3 SW: 1
2013-08-18_09:52:21 Term_EG_Cucina fanStage: 3
2013-08-18_09:52:21 Term_EG_Cucina switch: 1
2013-08-18_09:52:21 Term_EG_Cucina setpoint: 0
2013-08-18_09:52:21 Term_EG_Cucina temperature: 24.0
2013-08-18_09:52:21 Term_EG_Cucina set_point: 0.0
2013-08-18_10:01:27 Term_EG_Cucina temperature: 20
2013-08-18_10:01:27 Term_EG_Cucina set_point: 0.0
2013-08-18_10:01:28 Term_EG_Cucina temperature: 20
2013-08-18_10:01:28 Term_EG_Cucina set_point: 0.0
2013-08-18_10:09:16 Term_EG_Cucina T: 24.0 SP: 0 F: 3 SW: 1
2013-08-18_10:09:16 Term_EG_Cucina fanStage: 3
2013-08-18_10:09:16 Term_EG_Cucina switch: 1
2013-08-18_10:09:16 Term_EG_Cucina setpoint: 0
2013-08-18_10:09:16 Term_EG_Cucina temperature: 24.0
2013-08-18_10:09:16 Term_EG_Cucina set_point: 0.0




M.e. Der Rausch (die 20°C) kommt aus defaultWerte


if ($st eq "roomSensorControl.05") {
      # Room Sensor and Control Unit (EEP A5-10-01 ... A5-10-0D)
      # [Eltako FTF55D, FTF55H, Thermokon SR04 *, Thanos SR *, untested]
    ..
      $rorg = "A5";
      # primarily temperature from the reference device then the attribute actualTemp is read
      my $temperatureRefDev = AttrVal($name, "temperatureRefDev", undef);
      my $actualTemp = AttrVal($name, "actualTemp", 20);
      $actualTemp = ReadingsVal($temperatureRefDev, "temperature", 20) if (defined $temperatureRefDev);
      $actualTemp = 20 if ($actualTemp !~ m/^[+-]?\d+(\.\d+)?$/);
      $actualTemp = 0 if ($actualTemp < 0);
      $actualTemp = 40 if ($actualTemp > 40);
      readingsSingleUpdate($hash, "temperature", $actualTemp, 1);
      my $setCmd = 8;


Ich möchte mehr dazu verstehen.
1) Entweder die Routine wird jeztz ohne ein Telegramm getriggert.
2) Oder 2% der Telegramme sind immer fehlerhaft gewesen und vorher wurden einfach ignoriert.

danke und gruess
immi

klaus.schauer

Zitat von: immi schrieb am So, 18 August 2013 11:00Hallo Zusammen
Ich habe eine neue Feature  bei ThermokonSR04 entdeckt

Ich sehe seit 3 Tage "Rausch" in der Logfiles


(siehe Anhang / see attachement)


anbei auch Teil der Logfiles
2013-08-18_09:18:32 Term_EG_Cucina temperature: 23.8
2013-08-18_09:18:32 Term_EG_Cucina set_point: 0.0
2013-08-18_09:20:03 Term_EG_Cucina temperature: 20
2013-08-18_09:20:03 Term_EG_Cucina set_point: 0.0
2013-08-18_09:20:04 Term_EG_Cucina temperature: 20
2013-08-18_09:20:04 Term_EG_Cucina set_point: 0.0
2013-08-18_09:35:27 Term_EG_Cucina T: 23.8 SP: 0 F: 3 SW: 1
2013-08-18_09:35:27 Term_EG_Cucina fanStage: 3
2013-08-18_09:35:27 Term_EG_Cucina switch: 1
2013-08-18_09:35:27 Term_EG_Cucina setpoint: 0
2013-08-18_09:35:27 Term_EG_Cucina temperature: 23.8
2013-08-18_09:35:27 Term_EG_Cucina set_point: 0.0
2013-08-18_09:52:21 Term_EG_Cucina T: 24.0 SP: 0 F: 3 SW: 1
2013-08-18_09:52:21 Term_EG_Cucina fanStage: 3
2013-08-18_09:52:21 Term_EG_Cucina switch: 1
2013-08-18_09:52:21 Term_EG_Cucina setpoint: 0
2013-08-18_09:52:21 Term_EG_Cucina temperature: 24.0
2013-08-18_09:52:21 Term_EG_Cucina set_point: 0.0
2013-08-18_10:01:27 Term_EG_Cucina temperature: 20
2013-08-18_10:01:27 Term_EG_Cucina set_point: 0.0
2013-08-18_10:01:28 Term_EG_Cucina temperature: 20
2013-08-18_10:01:28 Term_EG_Cucina set_point: 0.0
2013-08-18_10:09:16 Term_EG_Cucina T: 24.0 SP: 0 F: 3 SW: 1
2013-08-18_10:09:16 Term_EG_Cucina fanStage: 3
2013-08-18_10:09:16 Term_EG_Cucina switch: 1
2013-08-18_10:09:16 Term_EG_Cucina setpoint: 0
2013-08-18_10:09:16 Term_EG_Cucina temperature: 24.0
2013-08-18_10:09:16 Term_EG_Cucina set_point: 0.0




M.e. Der Rausch (die 20°C) kommt aus defaultWerte


if ($st eq "roomSensorControl.05") {
      # Room Sensor and Control Unit (EEP A5-10-01 ... A5-10-0D)
      # [Eltako FTF55D, FTF55H, Thermokon SR04 *, Thanos SR *, untested]
    ..
      $rorg = "A5";
      # primarily temperature from the reference device then the attribute actualTemp is read
      my $temperatureRefDev = AttrVal($name, "temperatureRefDev", undef);
      my $actualTemp = AttrVal($name, "actualTemp", 20);
      $actualTemp = ReadingsVal($temperatureRefDev, "temperature", 20) if (defined $temperatureRefDev);
      $actualTemp = 20 if ($actualTemp !~ m/^[+-]?\d+(\.\d+)?$/);
      $actualTemp = 0 if ($actualTemp < 0);
      $actualTemp = 40 if ($actualTemp > 40);
      readingsSingleUpdate($hash, "temperature", $actualTemp, 1);
      my $setCmd = 8;


Ich möchte mehr dazu verstehen.
1) Entweder die Routine wird jeztz ohne ein Telegramm getriggert.
2) Oder 2% der Telegramme sind immer fehlerhaft gewesen und vorher wurden einfach ignoriert.
Ich vermute eher 1). Wahrscheinlich wird der Wert schon geschrieben, sobald z. B. das WEB-Frontend aufgerufen wird. Bitte mal testen. Ich müsste dann die Programmteile in die einzelnen Befehlsblöcke verlagern. Wäre dann aber mehrfach redundant.

10_EnOcean V3746: Schreiben des readings temperature in die Befehlsblöcke verlagert.

immi