Willkommen auf unserer neuen Forenplattform für das Bus-Profi Forum

Neue Felder für die persönlichen Daten
Man kann jetzt seine öffentlich einsehbare Daten genau bestimmen. Details findet ihr in in diesem Beitrag.

Durch die neue Forensoftware und die Portierung der Daten konnten die Passwörter aus dem alten Forum nicht übernommen werden, bitte lassen Sie sich ein neues Passwort über die Passwort vergessen Funktion zusenden. Sollte es zu Problemen kommen kontaktieren Sie das Bus-Profi Team per E-Mail.

Programmierung von Abhängigkeiten

Benutzeravatar

MartinH
Lord Forum
Lord Forum
Beiträge: 1511
Registriert: Di 11. Mai 2004, 16:39
Hat sich bedankt: 4 Mal
Kontaktdaten:

#11 RE: Programmierung von Abhängigkeiten

Beitragvon MartinH » Mi 5. Mär 2008, 14:09

Stef fragt: [zitat]Eine Art von IF ... THEN ... ELSE lässt sich bei LCN nicht anders abbilden ?[/zitat]
Bernd hat ja mit wechselseitigem Sperren/Entsperren eine LCN-Variante des "IF ... THEN ... ELSE" vorgeschlagen.
Auch ich war bei der Entscheidung für LCN selbstverständlich davon ausgegangen, dass sich mindestens einfache Programmierkonstrukte wie "IF ... THEN ... ELSE" direkt eingeben lassen. Es hiess und heisst doch in der Werbung "Sehr hohe "Intelligenz" / Funktionalität".
(Die Logik, die man heute z.B. mit IPS über das LCN-System drüberbauen kann, habe ich ursprünglich in jedem LCN-Busmodul erwartet :O :O )

Aber ich wurde beim genauen Hinsehen "eines Besseren" / "eines Anderen" belehrt.
Es gibt durchaus eine Reihe von LCN-Varianten wie man ein "IF ... THEN ... ELSE" Verhalten erreichen kann und ich denke es wird Zeit, die verschienden Varianten mal systematisch zu dokumentieren (im Wiki).
Ich denke an eine Art "Design Pattern" Ansatz, der für ein Aufgaben-Pattern (wie "IF ... THEN ... ELSE" Verhalten) eine Reihe von möglichen Lösungs-Pattern vorstellt. (Deswegen bezeichne ich das auch gerne als "Musterlösung" [Muster=Pattern]).

"IF ... THEN ... ELSE" lässt sich in LCN (je nach Anwendungsfall und Resourcenverfügbarkeit) umsetzen mit:
1. Lämpchensummen (=Standardverfahren)
2. wechselseitiges Tastensperren
3. Status eines virtuellen Relais
4. TVar + Schwellwerte (B1 .. B5: bis zu 5 Cases)
5. Sollwertmanipulation eines Reglers (und Status des Relais/Ausgangs)
6. dynamische Gruppenzugehörigkeit (analog zu Tastensperren)
7. alternative Lichtszenenregister
8. .. wahrscheinlich noch mehr (auf jeden Fall mit externer Logik im IPS oder im LCN-CH)

Viele Wege .. gehen mit LCN (!)

Gruß, Martin - es geht mal so - mal so

Benutzeravatar

Beleuchtfix
Administrator
Administrator
Beiträge: 5293
Registriert: Mi 10. Jan 2007, 18:49
Hat sich bedankt: 4 Mal
Danksagung erhalten: 15 Mal
Kontaktdaten:

#12 RE: Programmierung von Abhängigkeiten

Beitragvon Beleuchtfix » Mi 5. Mär 2008, 18:25

@Martin
Ich bin auf deinen Wiki Beitrag gespannt. Da du Probleme immer IT-Philosophisch angehst, sollten wir tolle Beispiele zu sehen bekommen.
Gruß
Florian

Benutzeravatar

Uwe
(†)
Beiträge: 14250
Registriert: So 26. Mai 2002, 23:10
Hat sich bedankt: 13 Mal
Danksagung erhalten: 56 Mal

#13 RE: Programmierung von Abhängigkeiten

Beitragvon Uwe » Do 6. Mär 2008, 04:22

Moin Stef,
die Einstellungen für Verknüpfungen im LCN sind immer etwas "tricky" und oftmals auch nicht wirklich resourcenschonend. Den Vergleich mit "anderen Steuerungen" muss man ablegen, eine logische Ablaufsteuerung (wie man sie z.B. aus einer SPS kennt) sieht im LCN völlig anders aus.

Da hier bereits gute Lösungsansätze vorgeschlagen wurden (ich würde auch eine Summe und Tastensperren nehmen) möchte ich nur etwas zur Sicherheit der Funktion beisteuern.
Die Summenlämpchen können über die Lämpcheneinstellungen direkt auf die Meldungen im Bus reagieren. Bei komplexen Vorgängen (was IMO eine Verknüpfung immer ist) kann eine solche Meldung mal untergehen. Dagegen ist das schalten der Lämpchen über die Statuskommandos (auf Dx) absolut sicher, ein Befehl wird immer ausgeführt.

Grüße, Uwe - der auch auf den Wiki-Eintrag gespannt ist
----------------o00o----'(_)'----o00o---------------------


Themenersteller
Stefbert
Schon länger hier...
Schon länger hier...
Beiträge: 93
Registriert: Di 4. Mär 2008, 09:32

#14 RE: Programmierung von Abhängigkeiten

Beitragvon Stefbert » Fr 7. Mär 2008, 12:20

Hallo zusammen,

ich durfte gestern mal wieder an meine "Eisenbahn" ... halt die LCN-Anlage, und habe dort folgenden Ansatz implementiert :

- Status der Badezimmerleuchten (Taste D1 & D2) setzen Lämpchen 11&12
- Aussentaste im Bad verschickt ein "Sende Tasten C7&C8"
- Taste C7 schaltet das Licht an
- Taste C8 schaltet das Licht aus
- Lämpchensumme mit Lämpchen 11&12
- Kurz und Lang sperren Taste C8 und entsperrt Taste C7
- Los sperrt Taste C7 und entsperrt Taste C8

(Vielleicht habe ich mich hier jetzt gerade mit der Polarität vertan ... egal, das Prinzip sollte klar sein).

Funktioniert stabil. Und weil es so schön war habe ich gleich noch selbiges in ein paar anderen Räumen, wo ein ähnliches Problem herrschte umgesetzt.

An dieser Stelle schon mal vielen Dank für Eure Tipps.

Da ich momentan "extrem offline" bin (habe vergessen mich um den Telefonanschluss unseres Neubaus zu kümmern ... argh), bin ich nur während meiner Arbeitszeit online, und in der möchte ich mich nicht mit einem Wiki-Beitrag herumschlagen. Sobald ich aber wieder online bin werde ich mich in meiner kargen Freizeit hinsetzen und ein bisschen was zusammenschreiben, so dass nachfolgende Generationen mit solchen Bedingten Kommandierungen weniger Probleme haben sollten.

Danke und Gruß
Stef

Benutzeravatar

Beleuchtfix
Administrator
Administrator
Beiträge: 5293
Registriert: Mi 10. Jan 2007, 18:49
Hat sich bedankt: 4 Mal
Danksagung erhalten: 15 Mal
Kontaktdaten:

#15 RE: Programmierung von Abhängigkeiten

Beitragvon Beleuchtfix » Fr 7. Mär 2008, 14:29

Hallo Stef, toll das es geklappt hat. Das entspricht genau dem, was hier u.a. vorgeschlagen wurde.

Hoffentlich sind die Teletuppies o.ä. bald erfolgreich :-)

Gruß
Florian


Zurück zu „Programmierfragen“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 38 Gäste