Ankündigung

Einklappen

Sammelbestellung ETS6 Vollversionen aktiv!

Sammelbestellung für ETS6 Vollversionen (Prof., Home, Lite) mit 40% Rabatt aktiv! Infos im Forum!
Mehr anzeigen
Weniger anzeigen

Nachkommastelle Logikbaustein

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

    Nachkommastelle Logikbaustein

    Hallo,

    ich hab mich mal an einen Baustein ran gewagt der mir auf die Ausgänge die Vor- und Nachkommastelle ausgibt. Aber irgendwas läuft hier noch schief. Wenn ich das mit dem Logikdebugger teste zeigt mir die Nachkommastelle immer einen falschen Wert an. Wer kann mir Helfen das er mir den richtigen Wert bzw. nur drei Nachkommastellen anzeigt.

    Code:
    ###5000|"Text"|Remanent(1/0)|Anz.Eingänge|.n.|Anzahl Ausgänge|.n.|.n.
    ###5001|Anzahl Eingänge|Ausgänge|Offset|Speicher|Berechnung bei Start
    ###5002|Index Eingang|Default Wert|0=numerisch 1=alphanummerisch
    ###5003|Speicher|Initwert|Remanent
    ###5004|ausgang|Initwert|runden binär (0/1)|typ (1-send/2-sbc)|0=numerisch 1=alphanummerisch
    ###5012|abbruch bei bed. (0/1)|bedingung|formel|zeit|pin-ausgang|pin-offset|pin-speicher|pin-neg.ausgang
    ###################################################
    
    
    ###BESCHREIBUNG
    ###5000 | "Text" | Remanent(1/0)| Anz.Eingänge |.n.| Anzahl Ausgänge | "Text Version" |.n.
    5000|"eigene BS\Vorkomma-Nachkomma"|0|1|"E1 Eingangswert"|2|"A1 Vorkomma"|"A2 Nachkomma"|"v0.1"
    
    ### INIT
    ### 5001 | Eingänge Anzahl|Ausgänge Anzahl | Offset | Speicher Anzahl | Berechnung bei Start (0/1)
    5001|1|2|0|1|1
    
    ### SPEICHER
    ### 5003 | Speicher-Nr. | Initwert | Remanent (0/1)
    5003|1|0|0
    
    ### EINGANG
    ### 5002 | Index Eingang | Defaultwert | 0=numerisch/1=alphanummerisch
    5002|1|0|0               # E1: Eingang
    
    ### AUSGANG
    ### 5004 | ausgang | Initwert| runden/binär (0/1)| Typ (1-send/2-sbc)| Typ: 0=numerisch/1=alphanummerisch
    5004|1|0|0|1|0           # A5: Vorkomma
    5004|2|0|0|1|0           # A6: Nachkomma
    
    ### LOGIK
    ### 5012|abbruch bei bed. (0/1)|bedingung|formel|zeit|pin-ausgang|pin-offset|pin-speicher|pin-neg.ausgang
    
    # zerlegung in vorkomma und nachkomma mit modf
    5012|0|""|"__import__('math').modf(EN[1])"|""|0|0|1|0
    
    # AUSGAENGE bedienen
    5012|0|"EC[1]"|"SN[1][1]"|""|1|0|0|0
    5012|0|"EC[1]"|"SN[1][0]"|""|2|0|0|0

    Grüße
    Jascha
    Angehängte Dateien

    #2
    Ich hätte es straight forward mit trunc(x) und mit trunc(x-trunc(x))*1000) für 3 Nachkommastellen gemacht.

    Könnte aber auch einfach nur ein Rundungsfehler sein...
    Zuletzt geändert von Tokamak; 27.12.2017, 07:57. Grund: Edit: Nachdem ich das Bild gesehen habe
    KNX, openHAB 4.3, EibPC²

    Kommentar


      #3
      Zitat von Tokamak Beitrag anzeigen
      (x-trunc(x))*1000)
      Hi,

      erstmal danke für den Tip. Hast du da eine Bespielszeile für mich wie ich das komplett einsetzen kann. Gebe ich
      5012|0|""|"__import__('math').trunc(x-trunc(EN[1])*1000)"|""|0|0|1|0 klappt es nicht.

      Grüße

      Kommentar

      Lädt...
      X