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.

Verlorene Kommandos


Themenersteller
BerndR
Fleißiges Mitglied
Fleißiges Mitglied
Beiträge: 383
Registriert: Mo 14. Feb 2005, 07:46
Kontaktdaten:

#1 Verlorene Kommandos

Beitragvon BerndR » So 6. Jan 2008, 19:22

Moin zusammen,

ich hab mal wieder ein Problem mit meiner Programmierung: Teilweise gehen bei mir Bus-Protokolle verloren. D.h. wenn zuviele Aktionen gleichzeitig über ein Modul ausgeführt werden, kann es schonmal sein - d.h. es ist desöfteren der Fall, daß Kommandos einfach verloren gehen :-( . Dadurch fahren teilweise (vereinzelt) Rolläden nicht runter oder das Licht geht erst beim zweiten Druck auf den Taster aus :-( . Kann es sein, daß der Empfangs- oder Sende-Puffer der LCN-Module viel zu klein dimensioniert ist ??? Hätte man wohl anstatt den Speicher mit Kommentaren aufzufüllen lieber dem Puffer mehr Speicher spendieren sollen :=( :=( :=( .

Es ist auf jedenfall ärgerlich. Abundzu geht auch mal ein Status verloren, so daß eine Summe nicht vernünftig schaltet. Dieses hab ich aber in den Griff bekommen, indem ich den Status aller Module periodisch (per Befehl) abfrage (dies geschieht z.Z. alle 30 Sekunden). Die Statuskommandos möchte ich aber nicht periodisch wiederholen lassen, da bestimmte andere Programmierungen nicht mehr funktionieren würden :-( .

Hat jemand "ne Idee wie man den Verlust von Befehlen minimieren könnte? Gibt es vielleicht eine Möglichkeit den Modulen beizubringen alle Befehle zu quittieren (so wie es die Pro tut)?

Gruß, Bernd.

Benutzeravatar

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

#2 RE: Verlorene Kommandos

Beitragvon Uwe » So 6. Jan 2008, 23:39

Hallo Bernd,
du musst unterscheiden zwischen "Kommando" und "Meldung" ...

ein Kommando wie "Lämpchen 3 ein" wird immer ausgeführt (die Module quittieren den Empfang (!) ).

Eine Meldung kann bei erhöhtem Busverkehr schon mal verschluckt werden (weil keine Quittung). Die Einstellungen unter "Lämpchen" reagieren z.B. nur auf Statusmeldungen ...

Vermeide Meldungen und führe wichtige Befehle immer über Kommandos aus, dann wird es gehen.
An die Grenzen des möglichen Busverkehrs beim LCN wirst du im EFH kaum stossen ...

Grüße, Uwe - der seine Verluste mit klaren Kommandos minimiert hat (... es geht)
----------------o00o----'(_)'----o00o---------------------

Benutzeravatar

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

#3 RE: Verlorene Kommandos

Beitragvon MartinH » Mo 7. Jan 2008, 00:44

[zitat]Teilweise gehen bei mir Bus-Protokolle verloren. D.h. wenn zuviele Aktionen gleichzeitig über ein Modul ausgeführt werden, kann es schonmal sein - d.h. es ist desöfteren der Fall, daß Kommandos einfach verloren gehen [/zitat]
Hmm ? (Uwe hat ja schon seine Profi-Kommentare gegeben)
Wie stellst Du den fest, dass da "etwas fehlt"?

Kommandos sollten eigentlich immer irgendwann am Zielmodul ankommen oder es gibt einen Quittungsfehler. (Die zeitliche Reihenfolge ist wohl nicht garantiert.)

Wenn Quittungen von Kommandos fehlen (nicht zurückkommen), erscheint im Busmonitor von LCN-Pro ein roter Eintrag. Siehst Du so etwas?

Müllt bei Dir ein Modul die Busleitung zu mit Zig Kommandos pro Sekunde? Ist Dein Bus überlastet? Kannst Du modul-interne Kommunikation vom Busverkehr ausschliessen?

Wie sehen die Fehlerzähler Deiner Module aus? In der neue LCN-Pro gibt es ja eine nette Übersichtsseite für alle Module der Anlage.

Soweit ich es verstehe, werden alle LCN-Kommandos quittiert (und u.a. sollte das LCN auch etwas stabiler machen als EIB/KNX Systeme).
Wenn allerdings Kommandos an eine Gruppe von Modulen gesandt werden, wird aber wohl keine Quittung von allen Modulen erwartet. Und das liegt schon einfach daran, dass ein Sende-Modul garnicht alle Gruppenmodule kennt (insbesondere können die Ziel-Module ja auch einer dynamischen Gruppe angehören und sich im nächsten Moment wieder davon trennen).

Gruß, Martin - mit unquittierten Grüßen

Benutzeravatar

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

#4 RE: Verlorene Kommandos

Beitragvon Uwe » Mo 7. Jan 2008, 02:00

[zitat]Wie stellst Du den fest, dass da "etwas fehlt"? [/zitat]
Na, wenn es nicht geht, Martin. Meistens passiert das, wenn W bedient. Darauf folgt dann ein "WAF-Schwall" ... :-O :-O :-O

Glaub mir, ich bin sicher - und ich habe die Verwandschaftsverhältnisse meiner besseren Hälfte geprüft. Ein "Murphy" ist da nirgends im Stammbaum ;-)

Bei einer nicht zu quitierenden Statusmeldung kommt kein roter Eintrag.

Wenn der Bus im EFH überlastet wird, liegt ein Programmierfehler (meist eine "Schleife") vor, dann geht nichts mehr (auch kein Licht schalten).
Die Anzeige der LEDs am PC/PK-Modul ist dann eindeutig.

Die "Fehlerzähler" sollte man natürlich mal ansehen. Wenn dort ein "Ausreisser" mit deutlich anderen Zahlen bei gleicher Laufzeit drin ist, würde ich schon dort anfangen zu suchen.
Ähnliche Zahlen (fast) egal welcher Größe sind bedenkenlos.

Gestandene EIB"ler wollen das immer nicht wahrhaben, aber der LCN-Bus ist tatsächlich um einiges sicherer und stabiler ...

Kommandos werden immer ausgeführt und quittiert, auch von den Gruppenmodulen. Dabei können Meldungen untergehen ...
Beispiel: ein Kommando an eine Gruppe von 20 Modulen erzeugt (bei neuesten Modulen) bis zu 60 Statusmeldungen von Ausgängen, wenn ich Relais anspreche können das auch 160 Meldungen sein.
Haben die Module Statuskommandos aktiviert, so werden diese gesendet und ausgeführt. Ob bei 160 fast zeitgleichen Kommandos dann noch alle Meldungen sauber rüberkommen ...

Grüße, Uwe - der dieses Meldeverhalten mal stundenlang auf einem Treffen (mit einem Kollegen der Issendorff-Hotline) diskutiert hat. Es ist Spitze, aber es hat Grenzen.
----------------o00o----'(_)'----o00o---------------------


Themenersteller
BerndR
Fleißiges Mitglied
Fleißiges Mitglied
Beiträge: 383
Registriert: Mo 14. Feb 2005, 07:46
Kontaktdaten:

#5 RE: Verlorene Kommandos

Beitragvon BerndR » Mo 7. Jan 2008, 08:47

Wusste ich garnicht, daß es einen Fehler-Zähler gibt ?!?!? Wo finde ich diesen in der Pro?

Daß Statusmeldungen untergehen können, ist mir bekannt. Deshalb weiderhole ich diese auch periodisch ;-) . Es gehen bei mir aber eindeutig Befehle verloren. Dabei handelt es sich um Statuskommandos und Kommandos, die von einem Tasten-Druck durchgeführt werden.

Beispiel 1: Rolladen-Programmierung

Jeder Rolladen wird durch eine Summe geschaltet. Ist die Summe erfüllt, wird der Rolladen hochgefahren und ist sie nicht erfüllt, wird der Rolladen runtergefahren. Da die Relais-Umschalt-Timer bei mir nicht zufriedenstellend funzen (da gibt es leider nur einen für alle Relais, ich benötige aber einen pro Rolladen - das hatte ich schonmal woanders erwähnt), habe ich mir eine eigene Umschalt-Zeit gebastelt. Schaltet eine Summe, so wird zuerst das zugehörige Relais ausgeschaltet und ein 1-Sekunden-Timer auf einer Taste gestartet. Nach dieser einen Sekunde wird der Rolladen in Bewegung gesetzt. Nach ca. 1 Minute werden die 2 Rolladen-Relais wieder ausgeschaltet.
D.h. also, daß ich für 4 Rolläden in einem Modul vier Summen und vier Timer "verbrauche" (A, B, C, D)! Wenn nun die Außen-Helligkeit einen bestimmten Wert unterschreitet, wird ein virtuelles Relais gesetzt. Dieses sorgt in den Summen dafür, daß die Rolläden runterfahren sollen. Dadurch senden dann natürlich viele Summen ihren Status und ihre Statuskommandos! Zusätzlich werden eine ganze Reihe von Timern gestartet. Die Bus-Last ist hier schon extrem hoch. Es passiert aber immer wieder mal, daß ein Rolladen (es ist nicht immer der gleiche) nicht losfährt :-( . Wenn ich dann an Gruppe 3 den Befehl "Wiederhole Statuskommandos aller Summen" schicke, fährt dieser Rolladen auch los.

Beispiel 2: Reset

In jedem Modul habe ich eine Taste spendiert (D8), die dafür sorgt, daß alle Verbraucher in diesem Modul ausgeschaltet werden, bzw. virtuelle Relais zurückgesetzt werden. Die Status-Kommandos einiger virtueller Relais sorgen z.B. dafür, daß die Beleuchtung in den entsprechenden Räumen ausgeschaltet wird (sofern das Relais aus ist). Wenn ich das Haus verlasse führe ich das Kommando "Drücke Taste D8" an Gruppe 3 aus! Trotzdem kommt es hin- und wieder mal vor, daß das Licht irgendwo im Haus an bleibt ...

Beispiel 3: Einschalten der Licht-Stimmung "Grillen"

Bei dieser Licht-Stimmung werden relativ viele Aktionen durchgeführt. Das Licht wird in vielen verschiedenen Bereichen eingeschaltet. Einige Rolläden fahren hoch (sofern sie unten sind). Viele virtuelle Relais werden gesetzt, um z.B. Heizungen auszuschalten oder zu Markieren, daß Licht eingeschaltet ist. Dabei spielt sich sehr viel in einem Modul ab. Ich schätze, daß da schon so 30 bis 50 Kommandos auf dieses Modul einstürzen, wobei aber auch wieder viele Kommando ausgesand werden. Da kommt es immer wieder mal vor, daß eine Aktion nicht sauber ausgeführt wird :-( .

Ich werd mal den Fehler-Zähler auswerten. BTW: Das Piepen bei einem Fehler hab ich ausgeschaltet, da ich sehr oft die vierte Summe für Schaltaufgaben benötige.

Gruß, Bernd.


Johannes
Dr. Forum
Dr. Forum
Beiträge: 708
Registriert: Sa 3. Dez 2005, 17:24

#6 RE: Verlorene Kommandos

Beitragvon Johannes » Mo 7. Jan 2008, 14:49

Hallo Bernd,

[zitat] Wusste ich garnicht, daß es einen Fehler-Zähler gibt ?!?!? Wo finde ich diesen in der Pro?[/zitat]
Das sind die RE/SE-Werte. Diese werden dir im Status-Fenster des Moduls bzw. auf dem neuesn Reiter "Statistik" für alle angezeigt.

[zitat]Da die Relais-Umschalt-Timer bei mir nicht zufriedenstellend funzen (da gibt es leider nur einen für alle Relais, ich benötige aber einen pro Rolladen - das hatte ich schonmal woanders erwähnt), [/zitat] In welchen Thread? Ich verstehe das nicht ganz, weshalb benötigst du für vier Rolläden vier verschiedene Umschaltzeiten?


Ich denke, wenn du dich da auf die eingebaute Umschaltzeit zurückziehst, geht deine Buslast deutlich zurück.

Gruß, Johannes


Themenersteller
BerndR
Fleißiges Mitglied
Fleißiges Mitglied
Beiträge: 383
Registriert: Mo 14. Feb 2005, 07:46
Kontaktdaten:

#7 RE: Verlorene Kommandos

Beitragvon BerndR » Mo 7. Jan 2008, 15:43

Hallo Johannes,

hier "ne kurze Erläuterung zu den "Rolläden-Umschalt-Timern": In den Modulen wird beim Umschalten der Fahrtrichtung der Rolläden eine kurze Pause eingelegt (wenn man dies Aktiviert hat). Das Problem ist, daß ich 4 Rolläden über 4 Summen in einem Modul schalte. D.h. wenn es Nacht wird, lösen alle 4 Summen nacheinander (!!!) den Befehl zum Runterfahren der 4 Rolläden aus. Sollten jetzt 2 oder mehr Summen während des Runterfahrens auf "Hochfahren" umschalten (weil z.B. die zugehörigen Fenster geöffnet werden), so findet eine Umschalt-Pause nur bei einem der Rolläden statt, was nicht befriedigend ist. Der letzte Rolladen, der umschaltet, gewinnt (d.h. erhält eine kleine Pause), die anderen fahren sofort in die andere Richtung :-( . Deshalb "bastele" ich mir meine eigenen Zeiten, auch wenn dadurch 4 Timer draufgehen.

Gruß, Bernd.

P.S.: Danke für den Hinweis wo ich die Fehler-Zähler finde. Werd ich heut abend gleich mal nachschauen.


Philipp
Lord Forum
Lord Forum
Beiträge: 1987
Registriert: Mi 29. Mär 2006, 12:06

#8 RE: Verlorene Kommandos

Beitragvon Philipp » Mo 7. Jan 2008, 16:14

Hallo Bernd,

wie ich lernen musste ( :-O ) ist eine direkte Umschaltung bei Rolläden wohl nicht problematisch (gabs in einem anderen Thread).
Somit denke ich, dass das bei Dir auch so sein dürfte.
Von daher ist IMO dein Aufwand dies zu verhindern sehr hoch und man kann das evtl. auch lassen. Zumal ich davon ausgehe, dass nicht bei jedem Fahren der Rolläden mehrere einen Richtungswechsel bekommen.

Gruß Philipp


Philipp
Lord Forum
Lord Forum
Beiträge: 1987
Registriert: Mi 29. Mär 2006, 12:06

#9 RE: Verlorene Kommandos

Beitragvon Philipp » Mo 7. Jan 2008, 16:17

Hallo,

was mir gerade auch noch einfällt: Ist das wirklich so, dass der Umschalttimer bei den Rolläden je Modul nur einmal zur Verfügung steht??
Kann ich fast gar nicht glauben, da sonst so gut wie jeder Gruppenbefehl an Rolläden (an Relais) diese Funktion "aushebeln" würde.

Gruß Philipp - mit allen Rolläden an UPPs :-O

Benutzeravatar

Niko
Moderator
Moderator
Beiträge: 2280
Registriert: Di 7. Aug 2007, 17:37
Danksagung erhalten: 5 Mal

#10 RE: Verlorene Kommandos

Beitragvon Niko » Mo 7. Jan 2008, 17:05

Hallo Bernd,

zu Deinem Beispiel 2: Ich habe bei mir auch so eine Taste implementiert (auch D8, vermutlich aus dem gleichen Grund wie bei Dir ;-) ) und ähnliches beobachtet bei per TrHs geschalteten Lampen (insbesondere, wenn dies durch ein verzögert ausgelöst BMI-"Los" aktiviert wird). Uwe hat mir das Verhalten dann bestätigt: erst muss die TrHs-Zeit ablaufen, dann wird es dunkel. Ein einfaches "Ausgang aus"-Kommando wirkt nicht unbedingt.
Bei mir hat allerdings ein "kill -9" geholfen. Für Nicht-Linux-/Unix-Nutzer: Sperre Ausgang teilweise (0%) für 10 Sekunden (damit sollte auch das BMI-"Los" wirkungslos bleiben, ggf. längere Zeitdauer wählen).

Eine mögliche Mit-Ursache für vermisste Kommandos könnte auch die Aussage von Martin:
[zitat]Die zeitliche Reihenfolge ist wohl nicht garantiert.[/zitat] liefern, wenn sie mit dem Sperren von Tasten kombiniert wird. Genau solch ein Problemchen hat mich einige Zeit gekostet, bis ich es im Busprotokoll gesehen habe. Ich weiß nicht, was schlimmer war: Die ungewohnte Tätigkeit des manuellen Lichteinschaltens oder die spöttischen Bemerkungen von W :-O
Die Kurzfassung:
Erstbelegung in Modul A: Sende D2 und D4 kurz an Modul B
Zweitbelegung: Sperre D2 und D4 in Modul B

In Modul B wurde D2 noch ausgeführt. D4 dann nicht mehr, da scheint sich irgendwie die Sperre dazwischengequetscht zu haben. Lösung: erst D4 kurz sperrt die Tasten, dann sollte Ausführungsreihenfolge egal sein.

Schöne Grüße
Niko, der sich im Modulstatus der PRO die Anzeige der gesperrten Tasten in Tabelle D wünscht (hätte das Debuggen verkürzt)


Zurück zu „Hardware Ungereimtheiten - systembedingt“

Wer ist online?

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