Seite 4 von 4

Re: Binärausgänge abhängig vom Zahlenwert

Verfasst: Do Nov 07, 2019 7:43 am
von StefanW
Hallo MAtthias,
Matze76 hat geschrieben: Mi Nov 06, 2019 8:17 pmMir gefällt dieser Schaltungs-basierte Ansatz immer besser und ich halte ihn für den Anwendungszweck und eure Intention mit dem LE auch für "runder" als die an eine Programmier-/Scriptsprache angelehnten Editoren! Meine bis jetzt übertragenen Logiken sind auf jeden Fall insgesamt sauberer geworden als sie das vorher mit dem Wiregate-Logikprozessor waren.
Danke sehr, das ist, was wir erreichen wollten.

Die Logik wurde insbesondere für die Zielgruppe der Elektriker / Integratoren entworfen.

Die Elektriker denken - kraft ihrer Ausbildung - in Schaltungsblöcken die ggfls. miteinander verschaltet sind. Jeder Block tut für sich das, was er soll. Solche Blöcke kann man sich als entsprechende Relaisschaltungen oder Multifunktionsrelais vorstellen, so wie es diese auch gibt und früher massenhaft verbaut worden sind.

Solche Relais waren dann nebeneinander im Schaltschrank angeordnet und verdrahtet. So ist dann auch der Logikeditor entstanden, nur dass wir die "Hutschiene" hier vertikal angeordnet haben und die Module damit untereinander.

Daraus entstehen eine ganze Reihe von Vorteilen:
  • Hat man einmal dieses Blockschema verstanden, dann ist es auch einfach umsetzbar
  • Diese Blöcke lassen den Doktormodus mit alle den vielen Fähigkeiten der Diagnose und des Eingriffes die dieser bietet. Mit prozeduralen Sprachen wäre das nicht gegangen.
  • Die Logikengine wird dadurch sehr schnell. Der Code ist kompakt, da intern alles auf wenigen Grundschaltungen basiert die jeweils nur wenige Codezeilen umfassen. Das passt dann auch in die Caches der Prozessoren, was die Ausführungsgeschwindigkeit erheblich beschleunigt. Das kann man sich so vorstellen wie der Aufbau von Microprozessoren. Diese basieren im Kern auf einfachen Logik-Gattern, einem Takt und ggfls. Zeitgliedern.
  • Die jeweiligen Module sind nicht nur klein und kompakt, sondern eben auch übersichtlich und damit sehr schnell fehlerfrei zu bekommen.
lg

Stefan

Re: Binärausgänge abhängig vom Zahlenwert

Verfasst: Fr Nov 08, 2019 9:48 pm
von Robert_Mini
S. Kolbinger hat geschrieben: Sa Nov 02, 2019 12:28 pm
Der Vollständigkeit halber wollte ich noch eine weitere Möglichkeit zeigen, wie du solche IF_THEN_ELSE- ,bzw. SWITCH_CASE_DEFAULT-Konstrukte nachbilden kannst:

Code: Alles auswählen

        ["Limiter","$In_val",0,"$Stat_offen",["$Val_offen","$Val_offen"]],
Hierzu verwendet man den boolschen Ausgang von "Limiter", der anzeigt, wenn der Eingangswert innerhalb der Grenzen liegt.
Was sich da gleich noch aufdrängt:
Arbeitet Limiter mit Untergrenze <= Wert <= Obergrenze, d.h. die Grenzen werden beide mit <= bewertet?

Stimmt das?
Fehlt mir in der KB selber noch...

Danke
Robert

Re: Binärausgänge abhängig vom Zahlenwert

Verfasst: Sa Nov 09, 2019 5:16 pm
von S. Kolbinger
Hallo Robert,
Robert_Mini hat geschrieben: Fr Nov 08, 2019 9:48 pm Was sich da gleich noch aufdrängt:
Arbeitet Limiter mit Untergrenze <= Wert <= Obergrenze, d.h. die Grenzen werden beide mit <= bewertet?
Genau so ist es.
Wenn Unter- und Obergrenze den gleichen Wert haben, wird bei genau diesem Wert am Eingang der Status "Val_ok" true, ansonsten false

Re: Binärausgänge abhängig vom Zahlenwert

Verfasst: Sa Nov 09, 2019 6:06 pm
von Robert_Mini
Danke! Schon in die KB eingearbeitet, ein Extra-Kapitel zu If-Then-Else Varianten hab ich mir notiert.
Robert