Hallo,
habe bei einer Registervariablen dauernd bei Änderung einen Log-File-Eintrag.
Hat jemand eine Idee wie man das abstellen könnte ?
Gruß
zkra
Hallo,
habe bei einer Registervariablen dauernd bei Änderung einen Log-File-Eintrag.
Hat jemand eine Idee wie man das abstellen könnte ?
Gruß
zkra
Hallo Attain,
ja das Thema kenne ich, meine Einstellungen in der Setttings.xml
<Kernel>
<LogfileVerbose Value="0"/>
<VariableWatch Value="0"/>
<ThreadCount Value="10"/>
<ScriptWatch Value="0"/>
<SaveInterval Value="10"/>
</Kernel>
PS: Der Eintrag erfolgt nur bei einer Registervariablen, bei anderen erfolgen keine Log-Einträge.
Gruß
zkra
Hallo zkra,
so hab ich das auch.
Ursache ist aber das Script und nicht die Variable.(Sieht man im Logfile an der ID).
Schau mal ob Du das in dem Script hast:
echo $IPS_VALUE;
Das macht so einen Eintrag.
Gruß
Hallo Attain,
einen echo Befehl habe ich nicht gefunden
hier der Code
<?
// Messswerte lesen
// Messwerte 1-Wire Temperaturen
// Daten in Array einlesen
$empfang = array();
$empfang = $IPS_VALUE;
$empfang_array = explode(";", $empfang);
$empfang_error = 1;
//$empfang = GetValueString("ZK_Micro01_lesen");
//$empfang_array = explode(";",$empfang);
if ($empfang_array[0] == "1W18B20") {
$Data_anzahl = $empfang_array[2];
$Data_first = 3;
$Data_last = $Data_first + $Data_anzahl-1;
$Data_pruef = $Data_last + 1;
$Pruef = 0.0;
$Mewe_1W_Temp_neu ="";
for ($i = $Data_first; $i <= $Data_last; $i++) {
$Pruef = $Pruef + $empfang_array[$i];
$Mewe_1W_Temp_neu = $Mewe_1W_Temp_neu.$empfang_array[$i].";";
}
if ($Pruef = $empfang_array[$Data_pruef]) {
$Mewe_1W_Temp = $Mewe_1W_Temp_neu.$empfang_array[$Data_pruef].";";
SetValueString("ZK_Micro01_1W_Temp",$Mewe_1W_Temp);
$empfang_error = 0;
}
}
if ($empfang_array[0] == "1W18B20_E") {
$Data_anzahl = $empfang_array[2];
$Data_first = 3;
$Data_last = $Data_first + $Data_anzahl-1;
$Data_pruef = $Data_last + 1;
$Pruef = 0.0;
$Mewe_1W_Temp_E_neu ="";
for ($i = $Data_first; $i <= $Data_last; $i++) {
$Pruef = $Pruef + $empfang_array[$i];
$Mewe_1W_Temp_E_neu = $Mewe_1W_Temp_E_neu.$empfang_array[$i].";";
}
if ($Pruef == $empfang_array[$Data_pruef]) {
SetValueString("Zk_Micro01_1W18B20_E", $empfang);
$empfang_error = 0;
}
}
if ($empfang_array[0] == "1W2423") {
$Data_anzahl = $empfang_array[2];
$Data_first = 3;
$Data_last = $Data_first + $Data_anzahl-1;
$Data_pruef = $Data_last + 1;
$Pruef = 0.0;
$Mewe_1W_Zaehl_neu ="";
for ($i = $Data_first; $i <= $Data_last; $i++) {
$Pruef = $Pruef + $empfang_array[$i];
$Mewe_1W_Zaehl_neu = $Mewe_1W_Zaehl_neu.$empfang_array[$i].";";
}
if ($Pruef = $empfang_array[$Data_pruef]) {
$Mewe_1W_Zaehl = $Mewe_1W_Zaehl_neu.$empfang_array[$Data_pruef].";";
SetValueString("ZK_Micro01_1W_Zaehl",$Mewe_1W_Zaehl);
$empfang_error = 0;
}
}
if ($empfang_array[0] == "1WID") {
SetValueString("Zk_Micro01_1WID", $empfang);
$empfang_error = 0;
}
if ($empfang_array[0] == "DE") {
$Pruef = 0;
$Pruef_str = $empfang_array[0].";".$empfang_array[1].";".$empfang_array[2].";".$empfang_array[3].";";
for ($i = 1; $i <= strlen($Pruef_str); $i++) {
$Pruef = $Pruef + ord(substr($Pruef_str, $i-1, 1));
}
if ($Pruef == hexdec($empfang_array[4])) {
SetValue(23386 /*[ZK-Heiz\ZK-Micro01\Zk_Micro01_DE]*/, $empfang);
setvalue(37662 /*[ZK-Heiz\ZK-Micro01\Zk-Abbild\Zk_De_Micro01_Str]*/,Zerlege_HexStr($empfang_array[1], 64));
setvalue(41406 /*[ZK-Heiz\ZK-Micro01\Zk-Abbild\Zk_Da_DeWert_Micro01_Str]*/,Zerlege_HexStr($empfang_array[2], 32));
setvalue(27239 /*[ZK-Heiz\ZK-Micro01\Zk-Abbild\Zk_Err_Micro01_Str]*/,Zerlege_HexStr($empfang_array[3], 32));
setValue(58790 /*[ZK-Heiz\ZK-Micro01\Zk_Micro01_Error_Micro]*/,hexdec($empfang_array[3]));
$empfang_error = 0;
}
}
if ($empfang_error) {
SetValueBoolean("ZK_Micro01_UART_OK",False);
SetValueString(17434 /*[ZK-Heiz\ZK-Micro01\Zk_Micro01_Uart_Error]*/, $empfang);
}
else {
SetValueBoolean("ZK_Micro01_UART_OK",True);
}
// ---------------------------------------------------
// Funktionen
// ---------------------------------------------------
function Zerlege_HexStr ($HexStr, $AnzahlBit)
{
$Temp_Str = "";
$Temp_StrLen = strlen($HexStr);
echo $HexStr;
if ($Temp_StrLen == $AnzahlBit/4) {
for ($i=$Temp_StrLen-1; $i>=0; $i--){
$TempByte = hexdec($HexStr[$i]);
if ($TempByte & 1) {$Temp_Str = $Temp_Str."1;";} else {$Temp_Str = $Temp_Str."0;";}
if ($TempByte & 2) {$Temp_Str = $Temp_Str."1;";} else {$Temp_Str = $Temp_Str."0;";}
if ($TempByte & 4) {$Temp_Str = $Temp_Str."1;";} else {$Temp_Str = $Temp_Str."0;";}
if ($TempByte & 8) {$Temp_Str = $Temp_Str."1;";} else {$Temp_Str = $Temp_Str."0;";}
}
return $Temp_Str;
}
}
?>
Gruß
zkra
Echo $HexStr
Paresy
Hallo Paresy,
ja das war es
Bedeutes das dann auch, dass generell alle „echo-Ausdrücke“ im Log protokolliert werden, und damit dann auch für das debuggen eingesetzt werden können.
Verwirrt war ich auch weil die Log-Ausgabe mit dem Bezug „MESSAGE | RegisterVariable“ ausgegeben wurden.
Besten Dank für die schnelle Hilfe,
Gruß
zkra