Ankündigung

Einklappen
Keine Ankündigung bisher.

Problem/Bug im Logikeditor HS

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

  • Taxus
    antwortet
    Nachfrage:
    Wir reden jeweils vom Neustart?
    Auf welche Weise werden die Reed-KOs initialisiert?

    Einen Kommentar schreiben:


  • gaert
    antwortet
    Gerne

    Das Beispiel ist natürlich Schwachsinn - aber verdeutlicht hoffentlich das Problem.

    Von Oben nach Unten:

    1. Funktioniert, wenn beide Reeds auf 1 sind

    2. Funktioniert NICHT, wenn der erste Reed auf 1 ist und der zweite auf 0

    3. Funktioniert, wenn der erste Reed auf 1 ist und der zweite auf 0
    Angehängte Dateien

    Einen Kommentar schreiben:


  • Taxus
    antwortet
    @drego, schön, dann weiter mit E2. Setze Urlaub aktiv auf 0, damit die 1 ankommt (eventbasiert!).
    Dann weiter mit E3, setze den Sonnenaufgang aktiv auf 1.
    Und dann E4 ...
    Deine Fixwerte 0 müssen alle erstmal überschrieben werden.

    @gaert: bitte poste ein Beispiel dazu, dann nehme ich das gerne auseinander.

    Einen Kommentar schreiben:


  • gaert
    antwortet
    Aber selbstredend ist das ein Bug! Oder warum funktioniert das ODER-Gatter wie gewünscht?!

    Nochmals zur Erklärung:
    Ich nehme ein 2er UND-Gatter und lege an die beiden Eingänge jeweils ein KO. Die KO's haben beide den Wert 1 (z.B. ein Reed-Kontakt). Jetzt starte ich den HS neu - das UND-Gatter sendet "true" (bzw. 1).

    Soweit alles gut.

    Jetzt setze ich ein KO auf 0 und invertiere aber den Eingang am UND-Gatter. Also sollten beide Eingänge wieder auf 1 stehen. Jetzt starte ich den HS neu - und das UND-Gatter sendet "false" (0).

    Also wird die Invertierung am Eingang nicht beim Start durchgeführt!

    Invertiere ich den Eingang NICHT, sondern schalte ein ODER-Gatter als Inverter davor und nutze dazu seinen neg.-Ausgang, funktioniert es wieder.

    Mit SBC hat das Ganze rein garnichts zu tun...

    Einen Kommentar schreiben:


  • drego
    antwortet
    Ja, soweit hab ich das verstanden!
    Nun habe ich die Aussentemperatur auf 100 gesetzt. Die Schwelle liegt bei 25 -> das wird zu einer 1.
    Das UND bleibt aber bei 0!

    drego

    Einen Kommentar schreiben:


  • Taxus
    antwortet
    Das ist nun wieder ein Mischmasch von Fragen. Gehen wir also zu Post 1.
    Gehen wir weiter zum Verständnis davon aus, dass alle Eingänge des UND und somit die beim Start priorisierten Fixwerte mindestens einmal durch KO-Änderungen geändert wurden. Dass das UND im Bild nicht gesendet hat, liegt dann an der zu geringen Außentemperatur (KO Beschattung größer = 0). Soweit erstmal nachvollziehbar?

    Einen Kommentar schreiben:


  • drego
    antwortet
    Also wo bei mir der Fehler liegt, ich weiss es nicht. Ich hab die Logik umgeschrieben.

    Aber warum das generell so ist, dass er beim Neustart, Initialisieren und sbc den Wert nicht einfach heraussendet, wenn er unterschiedlich ist zu dem Wert, der als Default Out steht. Steh ich grad auf dem Schlauch?

    Einen Kommentar schreiben:


  • MatthiasS
    antwortet
    Calc bei init ist auf 1

    Einen Kommentar schreiben:


  • drego
    antwortet
    In der Doku selbst steht ja aber drin, dass er bei sbc nicht beim Start sendet. Den Code kann ich leider nicht interpretieren.

    Einen Kommentar schreiben:


  • MatthiasS
    antwortet
    Tut er

    Code:
    #5001 Logikbaustein
    #-BausteinID
    #-Anzahl Inputs
    #-Anzahl Outputs
    #-Anzahl Ofsets
    #-Anzahl Speicher
    #-calc bei init?
    Code:
    ### BS : UND-Gatter (4 Eingänge) = 9003
    
    5001|9003|4|4|0|0|1
    5002|9003|1|1
    5002|9003|2|1
    5002|9003|3|1
    5002|9003|4|1
    5004|9003|1|0|1|1
    5004|9003|2|0|1|1
    5004|9003|3|0|1|2
    5004|9003|4|0|1|2
    5012|9003|0|""|"EN[1] and EN[2] and EN[3] and EN[4]"|""|1|0|0|2
    5012|9003|0|"(EI==0)"|"EN[1] and EN[2] and EN[3] and EN[4]"|""|3|0|0|4

    Einen Kommentar schreiben:


  • drego
    antwortet
    EDIT: Wenn wir gerade mal dabei sind, dass zu besprechen. Warum ist das eigentlich so, dass er beim Start den Wert nicht sendet? Aus welchem Grund?

    Einen Kommentar schreiben:


  • drego
    antwortet
    Hi Ihr, ich habe das gerade noch mal genau durchgelesen. Habe schon mehrere HS programmiert, würde mich nicht als Newbie bezeichnen. Mir ist wohl bekannt, dass das so ist!

    Bei mir ist aber das Problem, das die Logik gar nichts sendet ... d.h.
    wenn ich die Einganswerte so über HS-Mon verändere, dass sich SBC von 0 auf 1 und dann wieder auf 0 ändert wird trotzdem nichts geschickt!

    Daher verstehe ich die Aufregung nicht, ich finde den Fehler einfach nicht.

    drego

    Einen Kommentar schreiben:


  • MatthiasS
    antwortet
    Ich teile das Kopfschütteln.

    Über zehn jahre haben wir Trottel diesen "Bug" nicht entdeckt....

    Einen Kommentar schreiben:


  • Taxus
    antwortet
    Zitat von drego Beitrag anzeigen
    oder referenziere ... Danke!
    Aber gerne, wer so nett nachfragt: über <F1> im Experten wird sich Dir eine Wunderwelt eröffnen . Gib dort die o.g. Begriffe ein und folge den Links.

    Einen Kommentar schreiben:


  • drego
    antwortet
    Zitat von Taxus Beitrag anzeigen
    Bevor man 'Bug' schreit, sollte man sich mit der Dokumentation, dem Begriff des sbc und der Initilialisierungslogik auseinandersetzen *kopfschüttel*.
    Hi TAXUS, ich finde Deine Antwort unangemessen, mal ehrlich!
    Kläre uns bitte auf oder referenziere ... Danke!

    Einen Kommentar schreiben:

Lädt...
X