Text für Visu-Anzeige speichern

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • HRA
    Lox Guru
    • 27.08.2015
    • 1037

    #1

    Text für Visu-Anzeige speichern

    Hallo,
    ich möchte eine Text-Anzeige, welche im Statusbaustein per Trigger zusammengesetzt wird permanent in der Visu angezeigt bekommen.
    Wie könnte ich dies umsetzen, da am Statusbaustein jeweils ein Triggersignal (2sek) zum zusammenbauen anstehet.
    Wenn also der Trigger wieder auf "0" geht, dann ist natürlich auch der zusammengebaute Text wieder weg.
    Habe schon verscheidene Varianten probiert, aber leider keinen Erfolg verzeichnet.
    Der Analogspeicher kann leider keinen Text.
    Gruß HRA

    ### MS Gen2 + Gen1, MultiExt, Ext, AirExt, DMXExt; DMX4ALL ###
    ### EnOcean, KNX, MDT GTII ###
  • Christian Fenzl
    Lebende Foren Legende
    • 31.08.2015
    • 11238

    #2
    Kannst du den Trigger, der auf 0 geht, nicht einfach nicht auf 0 setzen? Oder steht da sonst auch Text drin?
    Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

    Kommentar

    • Labmaster
      Lox Guru
      • 20.01.2017
      • 2592

      #3
      Ich würde auch aus Unwissenheit über eine andere Methode vermutlich einfach ein PicoC Script basteln:

      z.B. so in der Art: ( kann es jedoch leider im Moment nicht testen )


      Code:
      char Text[200];    // set max text lenght
      
      //initial input to output
      Text = getinputtext(0);    
      setoutputtext(0,Text);
      
      while (TRUE)
      {
          if (getinputevent() & 0x08)        // input(0) has changed
          {
              if (getinput(0)==1)            // was it a change to high ?
              {                            // yes
                  Text = getinputtext(0);    // get textinput(0) 
                  setoutputtext(0,Text);    // set text on textoutput(0)
              }
          }
          sleep(100);
      }
      TI1 wäre der Texteingang, TQ1 der Textausgang, ein Wechsel des Eingang AI1 von 0 auf 1 (min 100ms Haltezeit) würde den Text vom Eingang auf den Ausgang übertragen und den Ausgang dann bis zum nächsten Wechsel auf AI0 beibehalten.
      Wichtig:
      In der ersten Zeile müsste man die maximal zu erwartende Textlänge anpassen.
      Zuletzt geändert von Labmaster; 17.07.2017, 22:40.

      Kommentar

      • romildo
        Lebende Foren Legende
        • 25.08.2015
        • 5161

        #4
        Ich wüsste jetzt auch nichts anderes wie einen Programmbaustein mit PicoC.
        Meine PicoC Script ist nicht so Professionell wie das von Labmaster, da es aber im Prinzip genau das gleiche macht, kann ich bestätigen dass es funktioniert.

        Code:
        int nEvents;
        while(TRUE)
        {
            nEvents = getinputevent();
            if (nEvents & 0x08)
                {
                if (getinput(0)==1)
                    {
                    setoutputtext(0,getinputtext(0));
                    }
                }
            sleep(100);
        }
        Den Text generiere ich auch in einem Statusbaustein. Mit dem Trigger am Statusbaustein setze ich neben dem Statustext am Ausgang TQ auch noch den Statuswert am Ausgang AQ auf 1.
        AQ vom Statusbaustein verbinde ich mit AI1 vom Programmbaustein.
        Zuletzt geändert von romildo; 17.07.2017, 23:03.
        lg Romildo

        Kommentar

        • Labmaster
          Lox Guru
          • 20.01.2017
          • 2592

          #5
          @romildo:
          hast du nähere Infos wie sich PicoC bezüglich Pointer verhält welche sich auf eigentlich nicht instanzierten Speicher beziehen ?
          Ich bin da gerade bei so kleinen Maschinen doch eher vorsichtig.
          Gerade der ARM im MS hat eh schon nicht viel Resourcen, da dann auch noch einen Interpreter am laufen zu haben welche wiederum nur einen sehr kleinen Bruchteil der Resourcen bekommen kann, phuu bin da eh beeindruckt, das es überhaupt so gut funktioniert.

          Kommentar


          • romildo
            romildo kommentierte
            Kommentar bearbeiten
            Nein tut mir leid. Ich kenne mich nicht wirklich mit PicoC aus.
            War beim Beispiel auch sehr Schreibfaul, da ich es nur mal so zum Testen geschrieben habe.
        • romildo
          Lebende Foren Legende
          • 25.08.2015
          • 5161

          #6
          Eine Möglichkeit ohne PicoC ist mir doch noch eingefallen.

          Du könntest einen Virtuellen Texteingang anlegen und den Text vom Statusbaustein mittels Virtuellem HTTP Ausgangsbefehl an den Texteingang senden.
          Beispiel:
          Virtueller Ausgang Adresse:
          Code:
          http://benutzer:passwort@IP-Miniserver
          Virtueller Ausgangs Befehl Befehl bei EIN:
          Code:
          <v>
          Statusbaustein, im Statustext vor dem eigentlichen Text folgendes einfügen: /dev/sps/io/Speichertext/
          Virtueller Texteingang Bezeichnung: Speichertext
          Den Texteingang an einen Virtuellen Statusbaustein hängen und diesen Visualisieren.
          lg Romildo

          Kommentar

          • romildo
            Lebende Foren Legende
            • 25.08.2015
            • 5161

            #7
            Hier noch das Bildchen zu #6.
            Den Präfix /dev/sps/io/Speichertext/ habe ich mittels Virtuellen Texteingang an den Statusbaustein gelegt, dann muss er nicht im Statustext eingefügt werden.
            Nicht gerade eine smarte Lösung dafür aber eine Funktionierende, sollten dir restlichen Vorschläge aus irgendwelchen Gründen nicht möglich sein

            Klicke auf die Grafik für eine vergrößerte Ansicht

Name: TextSpeicher.png
Ansichten: 844
Größe: 184,3 KB
ID: 107352
            lg Romildo

            Kommentar

            • HRA
              Lox Guru
              • 27.08.2015
              • 1037

              #8
              Danke für eure Anregungen.
              Sobald ich zeit finde werde ich die Eine oder Andre ausprobieren.
              Gruß HRA

              ### MS Gen2 + Gen1, MultiExt, Ext, AirExt, DMXExt; DMX4ALL ###
              ### EnOcean, KNX, MDT GTII ###

              Kommentar

              • thesaint976
                Smart Home'r
                • 25.08.2015
                • 30

                #9
                Hallo zusammen!

                Ich hole diesen Tread mal wieder hervor in der Hoffnung, das sich hier etwas getan hat.
                Ich suche eine Möglichkeit einen Text zu speichern, der auch noch nach einem Neustart nach "Netz aus" erhalten bleibt. Vielleicht könnte vom Trackereintrag immer nur die letzte Zeile irgendwie ausgelesen werden?
                mfg
                Jürgen

                Kommentar

                • Tico
                  Lox Guru
                  • 31.08.2016
                  • 1035

                  #10
                  Wenn Sie einen Miniserver Gen1 haben, ist der KNX/EIB Text Aktor/Sensor über Reboots hinweg remanent.

                  Klicke auf die Grafik für eine vergrößerte Ansicht

Name: Retentive Text.png
Ansichten: 425
Größe: 10,3 KB
ID: 408985

                  Der Aktor sendet den Text über eine interne Schleife an den Miniserver zurück. Wenn Sie einen Miniserver Gen2 und eine KNX-Erweiterung haben, wird dies wahrscheinlich auch funktionieren (ungetestet).​
                  Ich spreche kein Deutsch. Gib Google Translate die Schuld, wenn ich unverständlich bin.

                  Kommentar

                  • thesaint976
                    Smart Home'r
                    • 25.08.2015
                    • 30

                    #11
                    Leider. Ich habe einen Gen 2 Miniserver ohne KNX Extension.

                    Kommentar

                    • romildo
                      Lebende Foren Legende
                      • 25.08.2015
                      • 5161

                      #12
                      thesaint976
                      Ich denke die entscheidende Frage ist doch, woher der Text kommt.
                      lg Romildo

                      Kommentar

                      • thesaint976
                        Smart Home'r
                        • 25.08.2015
                        • 30

                        #13
                        Der Text (User, mit Datum und Uhrzeit) wird vom Berechtigungsbaustein ausgegeben, im Textbaustein "zusammengebaut" und dann mittels Statusbaustein visualisiert.

                        Kommentar

                        • romildo
                          Lebende Foren Legende
                          • 25.08.2015
                          • 5161

                          #14
                          Mir ist jetzt nicht klar, wozu die ganzen Bausteine notwendig sind, aber egal.
                          Das müsste doch problemlos funktionieren, wenn der Text, ähnlich wie ich es in Post 6-7 beschrieben habe, vom Statusbaustein an einen Texteingang übergeben wird.
                          lg Romildo

                          Kommentar

                          • thesaint976
                            Smart Home'r
                            • 25.08.2015
                            • 30

                            #15
                            Entweder verstehe ich deine Anleitung falsch, oder es gibt hier einen Bug:

                            Hier auf dem Bild ist schön zu sehen das nach einem "Netz Aus" auf dem Texteingang etwas anderes angezeigt wird als davor ausgegeben wurde:

                            Klicke auf die Grafik für eine vergrößerte Ansicht

Name: grafik.png
Ansichten: 295
Größe: 32,0 KB
ID: 410183

                            Kommentar

                            Lädt...