Batterie Unterspannung melden (Nur bei Solarreglern)

Hier werden Meldeblöcke, die man in die Datei "meldungen_senden.php" übernehmen kann, veröffentlicht.
Antworten
Benutzeravatar
Ulrich
Administrator
Beiträge: 309
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Kontaktdaten:

Batterie Unterspannung melden (Nur bei Solarreglern)

Beitrag von Ulrich » Sa 1. Dez 2018, 13:53

Diese Stelle in die Datei "meldungen_senden.php" im Verzeichnis /var/www/html
suchen. An dieser Stelle müssen die einzelnen Textblöcke untereinander eingefügt werden.
(Falls man später noch mehr Textblöcke benutzt):

/****************************************************************************
// NACHRICHTEN BLOCK START NACHRICHTEN BLOCK START BLOCK START
// NACHRICHTEN BLOCK START NACHRICHTEN BLOCK START BLOCK START
// NACHRICHTEN BLOCK START NACHRICHTEN BLOCK START BLOCK START
****************************************************************************/
// Hier können weitere Blöcke eingefügt werden.
//
//
//
/****************************************************************************
// NACHRICHTEN BLOCK STOP NACHRICHTEN BLOCK STOP BLOCK STOP
// NACHRICHTEN BLOCK STOP NACHRICHTEN BLOCK STOP BLOCK STOP
// NACHRICHTEN BLOCK STOP NACHRICHTEN BLOCK STOP BLOCK STOP
****************************************************************************/


Dieser Textblock ist für die Signalisierung der Batterie Unterspannung.
Bitte diesen Textblock einfügen:

Code: Alles auswählen

  /***************************************************************************/
  //  UNTERSPANNUNG BLOCK START    UNTERSPANNUNG BLOCK START    UNTERSPANNUNG

  //  Abfrage, wie hoch ist die Batteriespannung
  //  Funktioniert nur mit Solarreglern!
  //  Die Unterspannung muss mindestens 3 Minuten lang vorhanden sein.

  $Unterspannung = "11,5";  // Hier die Spannung in Volt eintragen!


  if ($Regler < 5) {
    $rc = messageControl("Unterspannung",0);

    $funktionen->log_schreiben("Unterspannung   Datum: ".date("d.m.Y",$rc[0])." Anzahl: ".$rc[1],"*  ",9);

    if ($rc === false or date("Ymd",$rc[0]) <> date("Ymd")) {

      $Unterspannung = str_replace(",",".",$Unterspannung);
      $aktuelleDaten["Query"] = urlencode("select Spannung from Batterie where Spannung <= ".$Unterspannung." and time > ".$HeuteMitternacht."000000000  and time <= now() limit 5");

      $rc = influxdb_lesen($aktuelleDaten);
      $funktionen->log_schreiben(var_export($rc,1),"*  ",10);

      if (isset($rc["results"][0]["series"][0])) {
        $TimestampOn = $rc["results"][0]["series"][0]["values"][0][0];

        $Nachricht = "Achtung! Batterie hat Unterspannung! ".$rc["results"][0]["series"][0]["values"][0][1]." Volt.";

        if (isset($rc["results"][0]["series"][0]["values"][3])) {
          //  Mindestens 3 mal Unterspannung gemessen.
          $funktionen->log_schreiben($Nachricht,"*  ",6);
          for ($Ui = 1; $Ui <= count($User_Key); $Ui++) {
            $rc = send_message($API_Token,$User_Key[$Ui],$Nachricht);
            if ($rc) {
              $funktionen->log_schreiben("Nachricht wurde versendet an User_Key[".$Ui."]","*  ",6);
            }
          }
          $rc = messageControl("Unterspannung",1);
        }
      }
    }
  }
  else {
    $funktionen->log_schreiben("Dieses Gerät ist kein Solarregler.","*  ",3);
  }
  //  UNTERSPANNUNG BLOCK ENDE     UNTERSPANNUNG BLOCK ENDE     UNTERSPANNUNG
  /***************************************************************************/
In Zeile 8 $Unterspannung = 11,8; noch die richtige Spannung eintragen, ab der man Informiert werden möchte. Die Information kommt nur einmal am Tag!
--------------------------------------
Ulrich [Admin]

Antworten