Ankündigung

Einklappen
Keine Ankündigung bisher.

Zählerbaustein negative Werte

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    HS/FS Zählerbaustein negative Werte

    Hallo zusammen,

    zu folgender Frage habe ich in der Doku, im Netz, sowie auch hier per Suchfunktion keine Info gefunden: Kann der Zählerbaustein im HS 4 (Interne Bezeichnung: 9028) am Ausgang nur positive Werte ausgeben? D.h. wenn der Zählerstand 0 ist und ich ein 1-Telegramm auf den Eingang 2 (- Zähler) schicke, dann bleibt der Zählerstand auf 0, zählt also nicht in den negativen Bereich (das wäre Mist)?

    Wenn das evtl. jemand bestätigen könnte, dann müsste ich den Fehler nicht weiter bei dem, der vor dem Monitor sitzt, suchen...

    Vielen Dank im Voraus

    pauly

    #2
    Hallo,

    ich benutze den Zähler nicht selbst, aber das hier ist der Quellcode (steht in "Logik.dat"):

    Code:
    ### BS : Zählerbaustein = 9028
     5001|9028|4|1|0|1|1
    5002|9028|1|0                 # Zähl-Signal up
    5002|9028|2|0                 # Zähl-Signal down
    5002|9028|3|0                 # Reset bei Telegramm=1
    5002|9028|4|0                 # Ein/Aus
    5004|9028|1|0|0|2             # Ausgang in Takten
    5003|9028|1|0|1
    5012|9028|0|"EC[1] and EN[1] and EN[4]"|"SN[1]+1"|""|0|0|1|0
    5012|9028|0|"EC[2] and EN[2] and EN[4] and ([B][COLOR=red]SN[1]>0[/COLOR][/B])"|"SN[1]-1"|""|0|0|1|0
    5012|9028|0|"EC[3] and EN[3]"|"0"|""|0|0|1|0
    5012|9028|0|"SC[1] or EI"|"SN[1]"|""|1|0|0|0
    Die markierte Stelle bestätigt Deine Annahme, der Zähler zählt nicht in den negativen Bereich runter.


    Gruß
    Hartmut

    Kommentar


      #3
      SChnellschuss....
      nimm den Text raus, in eignen eigenen Baustein den Code rein, dann müsste das auch subtrahieren können
      and (SN[1]>0)
      never fummel a running system...

      Kommentar


        #4
        Vielen Dank schonmal für die Antworten.

        Aber ich denke, nur mit "and (SN[1]>0)" rausnehmen ist es ja nicht getan. Es muss ja noch definiert werden, welche Nummer der Baustein hat, und wo er im Verzeichnisbaum des Logikeditors einsortiert wird!?

        Sorry, bin beim Editieren/Erstellen von eigenen Bausteinen noch Anfänger...

        Code:
        ### 19999 Zaehlerbaustein_pos_neg
         5000|"Zähler\Zählerbaustein pos-neg"|[COLOR=red][B]????[/B][/COLOR]
         5001|9028|4|1|0|1|1
        5002|9028|1|0                 # Zähl-Signal up
        5002|9028|2|0                 # Zähl-Signal down
        5002|9028|3|0                 # Reset bei Telegramm=1
        5002|9028|4|0                 # Ein/Aus
        5004|9028|1|0|0|2             # Ausgang in Takten
        5003|9028|1|0|1
         5012|9028|0|"EC[1] and EN[1] and EN[4]"|"SN[1]+1"|""|0|0|1|0
        5012|9028|0|"EC[2] and EN[2] and EN[4]"|"SN[1]-1"|""|0|0|1|0
        5012|9028|0|"EC[3] and EN[3]"|"0"|""|0|0|1|0
        5012|9028|0|"SC[1] or EI"|"SN[1]"|""|1|0|0|0
        Wie muss ich da vorgehen?

        Kommentar


          #5
          Es ist auch nicht so, dass man mit dem Entwickeln/Ändern von Bausteinen anfängt, das machen nur wenige.
          Dein Problem ist, dass die System-Bausteine aus der Datei logik.dat eine etwas andere Syntax haben als eigene Bausteine.

          Das hier sollte gehen, ist aber von mir nicht getestet:

          Code:
          ### 19999 Zaehlerbaustein_pos_neg
          # 5000|Bezeichnung|Remanent|Anz.Eingänge|.n.|Anzahl Ausgänge|.n.
          #    Bezeichnung
          #    |                               Remanent
          #    |                               | Anz.Eingänge|.n.
          #    |                               | |                     Anzahl Ausgänge|.n.
          #    |                               | |                     |
          5000|"Zähler\Zählerbaustein pos-neg"|1|4|"E1"|"E2"|"E3"|"E4"|1|"A1"|"1.0"
           
          #################################################
          ### 5001 Definition des Bausteins
          #################################################
          # 5001|Anzahl Eingänge|Ausgänge|Zeitspeicher|Speicher|Berechnung bei Init
          #    Anzahl Eingänge
          #    | Ausgänge
          #    | | Zeitspeicher
          #    | | | Speicher
          #    | | | | Berechnung bei Init
          #    | | | | |
          5001|4|1|0|1|1      # 4 Eingänge, 1 Ausgang, 0 Timer, 1 Speicher, Berechnung bei Initialisierung 
           
          #################################################
          ### 5002 Definition der Eingänge EN[x]
          #################################################
          # 5002|Index Eingang|Default Wert|Datenformat 0=numerisch 1=alphanummerisch
          #    Index Eingang
          #    | Default Wert
          #    | | Datenformat
          #    | | |
          5002|1|0|0                 # Zähl-Signal up
          5002|2|0|0                 # Zähl-Signal down
          5002|3|0|0                 # Reset bei Telegramm=1
          5002|4|0|0                 # Ein/Aus
           
          #################################################
          ###5003 Definition des Speichers SN[x]
          #################################################
          #5003|Index Speicher|Initwert|Remanent
          #    Index Speicher
          #    | Initwert
          #    | |  Remanent
          #    | | |
          5003|1|0|1
           
          #################################################
          ### 5004 Definition der Ausgänge AN[x]
          #################################################
          # 5004|Index Ausgang|Initwert|Runden binär|Typ (1-send/2-sbc)|Datenformat 0=numerisch 1=alphanummerisch
          #    Index Ausgang
          #    | Initwert
          #    | | Runden binär
          #    | | | Typ
          #    | | | | Datenformat
          #    | | | | |
          5004|1|0|0|2|0             # Ausgang in Takten
           
          #################################################
          ### 5012 Definition der Formeln
          #################################################
          # 5012|Ende nach Ausführen|Bedingung|Formel|Zeitformel|Ausgang|Zeitspeicher|Speichervariable|Negierter Ausgang
          #    Ende nach Ausführen
          #    | Bedingung
          #    | |                           Formel
          #    | |                           |         Zeitformel
          #    | |                           |         |  Ausgang
          #    | |                           |         |  | Zeitspeicher
          #    | |                           |         |  | | Speichervariable
          #    | |                           |         |  | | | Negierter Ausgang
          #    | |                           |         |  | | | |
          5012|0|"EC[1] and EN[1] and EN[4]"|"SN[1]+1"|""|0|0|1|0
          5012|0|"EC[2] and EN[2] and EN[4]"|"SN[1]-1"|""|0|0|1|0
          5012|0|"EC[3] and EN[3]"          |"0"      |""|0|0|1|0
          5012|0|"SC[1] or EI"              |"SN[1]"  |""|1|0|0|0
          Die "Nummer" des Bausteins vergibst nur mit dem Speichern. Also z.B. unter "19999_MeinZaehler.hsl" speichern.

          Den Ort im Verzeichnisbaum der Logikelemente ergibt sich durch den Eintrag in Zeile 5000: Der Baustein hier würde in der Rubrik "Zähler" abgelegt, wenn es die Rubrik noch nicht gibt, dann wird sie neu angelegt.


          Gruß
          Hartmut

          Kommentar


            #6
            genau
            und dann noch das hier:
            Damit solltest du klarkommen.
            Angehängte Dateien
            never fummel a running system...

            Kommentar


              #7
              @TRex:

              Wenn wir schon die Dokus hier einstellen (ich hoffe, dass ist copyright-technisch OK), dann sollten wir auch aktuelle Versionen nehmen ;-)

              Die hier ist 4 1/2 Jahre jünger (obwohl natürlich im Kern identisch):


              Gruß
              Hartmut
              Angehängte Dateien

              Kommentar


                #8
                SUPER!

                Vielen Dank Euch beiden!

                Da hab ich ja jetzt erstmal was zu tun...


                Euch noch einen schönen Sonntagabend!

                pauly

                Kommentar


                  #9
                  So, es hat alles geklappt!

                  Der Baustein zählt jetzt auch im negativen Bereich (per zusätzlichem Eingang sperrbar) und per weiterem Eingang kann dem Zähler ein Startwert zugewiesen werden. Genau so, wie ich es brauche.

                  Jetzt sind noch zwei Fragen offen:

                  1.) In welchem Textformat müssen die hsl-Dateien gespeichert werden. Mit dem Windows-Editor erstellte Dateien machen Probleme mit den Umlauten im Kategorienbaum und im Baustein selber (nur in der Darstellung). Siehe Anhänge.

                  2.) Wie und wo muss der Verweis vom Baustein (Rechtsklick im Logikeditor) zu seiner Hilfedatei (...\Gira\HS+FS Experte 4.1\html\de\...) angelegt werden?

                  Vielleicht könnt Ihr mir ja auch hier weiterhelfen.

                  pauly
                  Angehängte Dateien

                  Kommentar


                    #10
                    Zitat von pauly Beitrag anzeigen
                    1.) In welchem Textformat müssen die hsl-Dateien gespeichert werden. Mit dem Windows-Editor erstellte Dateien machen Probleme mit den Umlauten im Kategorienbaum und im Baustein selber (nur in der Darstellung).
                    Ich meinte, irgendwo gelesen zu haben, dass für die aktuelle Version des Experten die hsl-Dateien unbedingt im UTF-8_Format vorliegen müssten. Dieses Format führt aber zu den unerwünschten Falschdarstellungen der Umlaute. Nun habe ich dann doch mal einen Versuch im ANSI-Format gemacht, uns siehe da...

                    Zitat von pauly Beitrag anzeigen
                    2.) Wie und wo muss der Verweis vom Baustein (Rechtsklick im Logikeditor) zu seiner Hilfedatei (...\Gira\HS+FS Experte 4.1\html\de\...) angelegt werden?
                    log[ID Baustein].html

                    pauly

                    Kommentar

                    Lädt...
                    X