Messdaten regelmäßig zu einer zentralen Plattform senden

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • ktz985
    Dumb Home'r
    • 09.07.2017
    • 19

    Messdaten regelmäßig zu einer zentralen Plattform senden

    Hi,

    in unserem Unternehmen verwenden wir eine Webanwendung zur Visualisierung allerhand Messdaten von einer Vielzahl von Anlagen. Ich möchte gerne herausfinden ob auch die Daten welche in Loxone verwaltet werden zu diesem Visualisierungssystem übertragen werden können.

    Dazu müsste die Loxone alle möglichen Zustände erfassen (Status von Ein-/Ausgängen, Temperaturwerte, Zählerstand von Fronius Wechselrichter,...) und im viertelstunden Intervall an ein externes FTP-Verzeichnis senden?

    Im Export soll jedenfalls Datum/Zeitstempel, Bezeichnung, Messwert enthalten sein. Z.B. am besten als CSV-File:

    09.07.2017 19:00; Temperatur; 25,6
    09.07.2017 19:00; Eingang1; 0
    09.07.2017 19:00; Eingang2; 0
    09.07.2017 19:00; Eingang3; 1
    09.07.2017 19:00; PV-Zähler; 1234,567

    Diese Daten sollen wie schon erwähnt mindestens viertelstündlch übertragen werden aber auch bei Statusänderungen (wenn es z.B. eine Änderung an einem der Digitalen Eingänge gibt oder aber auch wenn ein Temperaturschwellwert überschritten wird, etc)


    Ist dies generell mit Loxone möglich?
    Gibt es neben meinem Vorschlag mit dem FTP-Server noch andere Möglichkeiten um diese Daten Viertelstündlich zu exportieren?
    Evtl. in einem anderen Format (XML,...)

    Würde mich auch über einen kleinen Hinweis freuen welche Funktion ich mir in der Loxone Config hierzu ansehen kann.

    beste Grüße
    ktz985
  • romildo
    Lebende Foren Legende
    • 25.08.2015
    • 5113

    #2
    Hallo,
    Vielleicht schaust Du Dir mal die Dokumentationen zu Logger, Virtuellem Ausgang und Programm - Baustein (PicoC) an.
    Logger: Ereignisse an Syslog-Server oder UDP-Empfänger
    Lernen Sie in unserer Dokumentation mehr, wie sich Ereignisse in einer log-Datei zusammenfassen lassen.


    Virtueller Ausgang für http, tcp, udp
    Erfahren Sie in der Online-Dokumentation, wie Sie UDP-Befehle mit dem Miniserver empfangen und versenden sowie die Befehle und Fernbedienung anlegen.

    Online-Dokumentation LoxoneConfig Peripheriebaustein Virtuelle Ein- und Ausgänge: Holen Sie sich hier mehr Informationen!


    Script Programmierung PicoC
    Online-Dokumentation LoxoneConfig Programm: Erfahren Sie, wie Sie Skripte und Programme mit der Loxone Konfigurationssoftware erstellen können!


    lg Romildo

    Kommentar

    • kerrick
      Smart Home'r
      • 03.09.2015
      • 91

      #3
      Ich glaube, das Loggen an sich ist kein Problem. Die Anforderung, es alle 15min zu machen, wird aber schwierig umzusetzen.
      Wie Romildo schon sagt, kann man einfach an einen syslog Daemon senden. Den muss man dann so konfigurieren, dass er die Log-Ereignisse in einem geeigneten Format in eine Datei schreibt.
      Wenn alle Abfrage-Intervalle kleiner als 15min sind, dann könnte man den Logger so limitieren, dass maximal alle 15min eine Log-Nachricht gesendet wird. Damit würde man aber nicht mehr unbedingt die Log-Nachrichten bei Änderung mitbekommen. Im Fall von Impuls-Eingängen wäre auch nur ein Log-Eintrag bei Impuls sinnvoll. Fix alle 15min den aktuellen Status zu senden würde wohl bedeuten, dass immer nur "aus" gemeldet wird.

      Kommentar

      • Leo Kirch
        MS Profi
        • 26.08.2015
        • 831

        #4
        Hier hatte schon mal jemand etwas Ähnliches vor:

        Moin zusammen, ich möchte mich daran machen ein Statistik-Plugin für den LoxBerry zu erstellen. Es gibt/gab ja schon viele Versuche hier im Forum das

        -

        Kommentar

        • hrvogel
          Smart Home'r
          • 30.04.2016
          • 47

          #5
          Hi
          Da nimmt mich im Gegenzug deine Visualisierung-Software wunder?

          Sent from my SM-G950F using Tapatalk

          Kommentar

          • Christian Fenzl
            Lebende Foren Legende
            • 31.08.2015
            • 11200

            #6
            Virtuelle Ausgänge ist das einfachste.
            Wiederholung alle 15 Minuten ist da schon mit an Bord.
            Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

            Kommentar

            • ktz985
              Dumb Home'r
              • 09.07.2017
              • 19

              #7
              Hallo, danke für die zahlreichen Antworten.

              offenbar gibt es zahlreiche Möglichkeiten für meine Anwendung.
              Mir fehlt nur leider etwas die Erfahrung um einzuschätzen was nun am besten für meine Anwendung geeignet ist.

              PicoC sieht sehr vielversprechend aus, um meine "Textzeilen" so aufzubereiten und zu formatieren wie ich sie haben möchte.

              Mit Http post und http Get bin ich etwas vertraut von meinen grundlegenden PHP-Programmierkenntnissen.

              Wie bekomme ich jetzt aber meine Variable ("Textzeile") welche ich in PicoC definiert habe über einen virtuellen Ausgang als http post-Nachricht raus? Oder kann ich das gleich aus dem PicoC per http post versenden?


              Das mit dem SyslogServer hört sich sogar noch einfacher an. Allerdings hab ich davon auf die schnelle nichts gefunden das mir weiterhilft. Gibts so einen Server von Loxone oder sonstige cloudlösungen oder muss ich diesen selbst betreiben? Ein Raspberry pi zur Überwachung meiner Anlagenüberwachungen möchte ich vermeiden.

              Sorry für meine Basic-Fragen. Gebt mir nur einen Hinweis in welche Richtung ich weiter recherchieren soll..

              LG ktz985

              Kommentar

              • Christian Fenzl
                Lebende Foren Legende
                • 31.08.2015
                • 11200

                #8
                Was kann denn die Empfänger-Seite?
                Ist das ein Linux, läuft dort ein Webserver usw.
                Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

                Kommentar

                • ktz985
                  Dumb Home'r
                  • 09.07.2017
                  • 19

                  #9
                  Ich habe mich jetzt etwas näher mit dem Miniserver beschäftigt und denke, dass ich dank Eurer Hinweise eine mögliche Lösung gefunden habe.
                  Anhand meines angefügten Screenshots kann man meine Strategie glaube ich ganz gut nachvollziehen.

                  Ich habe 2 Programmbausteine:

                  Der erste verarbeitet nur den Analogwert des Temperatursensors und wird über ein Statuselement viertelstündlich getriggert, im Programm wird eine Textzeile als String aus allen notwendigen Elementen zusammengestellt und über den Textausgang an einen Virtuellen Ausgang übergeben. Dieser sendet den String per UDP an den zentralen Server weiter.

                  Im zweiten Baustein passiert das gleiche, jedoch nur für die zu überwachenden digitalen Eingänge. Dieser sendet dann nur wenn es an den Eingängen zu einer Änderung kommt.

                  Serverseitig handelt es sich um einen Windows Server welcher von den Programmierern der Visualisierungsplattform betrieben wird. Üblicherweise holt sich dieser in regelmäßigen Abständen über FTP die fertiggefüllten Files ab und legt diese in einem "Lokalen Verzeichnis" ab wo sie dann "abgearbeitet" werden.
                  Mit einer Testversion vom Kiwi Syslog Server werden die UDP-Inhalte empfangen und als Log-File direkt im oben genannten "Lokalen Verzeichnis" abgelegt. Der Server fährt dann seine standardmäßige Routine und die zentrale Visualisierung und Alarmierung etc. kann beginnen.
                  Serverseitig kann bestimmt noch einiges optimiert werden. Um die Tauglichkeit von Loxone aufzuzeigen musste ich mich halt mal den Gegebenheiten anpassen.

                  Ein paar Fragen für die Optimierung habe ich jedoch noch:

                  -) Kennt vielleicht jemand eine besser geeignete (Windows-)Software als den Kiwi Syslog Server um die UDP-Commands als csv-File abzuspeichern? (der KIWI ist für meine Anwendung zu überdimensioniert und auch nicht kostenlos)
                  -) UDP, TCP, SNMP,... wenn das System in Zukunft in 600 Anlagen zur Anwendung kommt und diese gleichzeitig Daten an den Server übertragen, kann es dann bei UDP zu Paketverlusten kommen? Ich habe damit keine Erfahrung, mein Gefühl sagt mir, dass ich hierfür auf ein anderes Protokoll setzen sollte.
                  -) Ich bin eher ein PHP-Hobbyprogrammier. Mit PicoC habe ich einige Schwierigkeiten da ich außer auf der Loxone-Website keine genauere Doku und Beispiele, etc gefunden habe. (bei PHP ist man da schon etwas verwöhnt) Gibt es hierzu weitere Quellen (Tutorials usw...)?
                  -) z.B. habe ich auf der Loxone-Seite ein "getprogramname()" gefunden und habe keine Ahnung was das genau macht und wie ich es einsetze. Ich möchte es demjenigen der die Anlagen später in Betrieb nimmt einfach machen das Ding zu konfigurieren und dachte daran, den Programmbaustein einfach einen Namen zu geben bzws sämtliche Anschlüsse einfach zu benennen sodass diese Bezeichnungen dann im Programm genutzt werden können und im zu exportierenden String enthalten sein können. Aktuell verwende ich den virtuellen Eingang: "Anlage" um derartige Bezeichnungen zu transportieren. Soll halt etwas intuitiver werden
                  -) ist es möglich/empfehlenswert auf die virtuellen Ausgänge zu verzichten und die UDP-Commands direkt im PicoC-Programm zu versenden?




                  Kommentar

                  Lädt...