06.11.2018 16:07 | |
Beigetreten: 29.10.2015 Letzter Bes: 08.01.2024 Beiträge: 179 Bewertung:
|
Hallo zusammen, heute möchte ich mein Projekt zur Haussteuerung vorstellen mit 7 Logos, darunter 2x 8er und 5x 7er Logos. Derzeit ist noch wenig Logik eingebaut und die meisten Fragen beziehen sich erstmal auf die Netzwerkkommunikation. Da ich zwischen 7er und 8er Logos nicht einfach Ein- und Ausgänge verbinden kann, habe ich einen zentralen Ansatz verfolgt gemäß logo-7-und-8-netzwerk-master-master. Leider konnte ich auf der Seite keinen Kontakt zum Author bekommen, auch nicht übers Forum, um zu klären, inwieweit der Ansatz noch aktuell ist mit Logo Soft Comfort 8.2. Hauptziel dabei ist, dass jede Logo jederzeit alle Daten der anderen kennt. Um keine Kreuzverbindungen zu schaffen wird eine der Logos zur zentralen Server-Logo bestimmt, bei mir ist das die Logo #3, weil das eine 8er Logo ist. Nachteil hierbei sind die verlängerten Laufzeiten der Signale. Ich stelle zunächst meine Pläne und Screenshots vor, im Anschluss stelle ich einige der vielen Fragen und Probleme vor. DateianhangLogo_Ins-Outs.pdf (449 Downloads) |
06.11.2018 16:16 | |
Beigetreten: 29.10.2015 Letzter Bes: 08.01.2024 Beiträge: 179 Bewertung:
|
Leider kann ich in jedem Beitrag nur einen Anhang mitsenden.... Ich lese die Eingänge nicht direkt von IB, sondern über Merker nach VB, da ich noch Verzögerungen einbauen musste, damit kurze Taster im Netzwerk nicht verloren gehen. Das Datenmodell sieht so aus, dass auf jeder Logo ab VB100 der Bereich der Logo#1 abgelegt wird, unter VB200 der Bereich der Logo#2 etc. Unter VBx00 bis VBx03 liegen die Merker, von VBx04 bis VBx05 liegen die Ausgänge. Der Datenaustausch läuft über die Logo #3. Jede Logo liest erstmal die Merker MB und Ausgänge QB der Logo #3 sowie die VBs der anderen Logos von der Logo #3, und schreibt die eigenen Merker und Ausgänge auf die Logo #3. DateianhangLogo_VM.pdf (414 Downloads) |
06.11.2018 16:42 | |
Beigetreten: 29.10.2015 Letzter Bes: 08.01.2024 Beiträge: 179 Bewertung:
|
Leider kann ich so nicht die Screenshots schön im Text integrieren. Hier ist erstmal das ZIP mit den Plänen, Screenshots und dem .mnp Projekt. Ich habe nun annähernd verstanden, wie es überhaupt mit der Netzwerkkommunikation funktioniert. Ein Problem dabei ist das Timing. Über 2 Logos transportiert kann ich am Ausgang der Logo #6 den Eltako-Dimmer kaum steuern. Er reagiert sehr verzögert, manche Tastungen kommen gar nicht an. Außerdem habe ich auf dem Netzwerk nun ziemlichen Sturm. Auch wenn ich noch keinen Router dazwischen habe, um das zu analysieren, kann ich am Switch schon regen Austausch erkennen. Werden hier wirklich die gesamten VBs permanent in jedem Zyklus übers Netzwerk transportiert? Das wäre natürlich suboptimal, ich hätte erwartet, dass nur Datenänderungen verteilt werden. Ich transportiere derzeit sehr wenige Daten, nur Bits für die Tasteraktionen, diese sollten aber zeitkritisch verteilt werden. Ich habe einmal angeschaut, wie eine Netzwerkverbindung implementiert wird, wenn man es nach dem Standard zwischen zwei 8er Logos macht, d.h. z.B. Eingang von Logo #1 auf entfernten Ausgang auf Logo #2 ziehen. Dadurch wird die Logo #2 als Client den NQ1 vom Server Logo #1 auf den eigenen NI1 schreiben. Warum geht das mit den 7er Logos nicht? Wäre das zwischen 8er Logos performanter oder am Ende vom Ablauf identisch? Was mich dabei wundert, wenn ich in so einem Minibeispiel mit 2 8er Logos den Bausteintyp des Netzwerkausgangs bearbeite, steht dort Remote-Gerät LOGO!8..., NI (Netzwerkeingang der anderen Logo). Wenn ich selbst den Bausteintyp editiere, kann ich aber nur I, Q, M, V wählen, nicht NI. Warum ist das so? DateianhangNetzwerkprojekt_Screenshots_Pläne.zip (420 Downloads) |
07.11.2018 09:55 | |
Beigetreten: 29.10.2015 Letzter Bes: 08.01.2024 Beiträge: 179 Bewertung:
|
Da ich schon dachte, dass die Kommunikation über Netzwerk suboptimal ist, habe ich bei der Planung natürlich versucht, alle IOs möglich auf den Logos lokal zu verteilen. Dennoch habe ich einige Signale, die ich netzwerkweit benötige, z.B. manche wenigen 230V Taster oder 230V Bewegungsmelder und Präsenzmelder, die ich auf Transistor-Ausgänge verbinden möchte. Wie analysiere ich nun die Fehler bei der Netzwerkübertragung? Ich dachte, zum einfachen Testen könnte ich schonmal den Hausgong auf so einen Remote-Taster legen und die Antwortzeiten testen. Das Dimm-Modul reagiert nämlich empfindlich auf das Timing, da Kurz-Tasten an/aus bedeutet und längere Tastung nach oben/unten dimmt, sowie initiales Lang-Tasten mit niedriger Dimmstufe hochdimmt etc. Scorp hat in einem anderen Thread geschrieben, dass er sowas lieber über Modbus trackt statt über den Datalog. Ist mit Datalog die Funktion E/A-Zustand in LSC gemeint? Dieser zeigt ja tatsächlich nur im Sekundentakt an, kurze Tastungen sieht man dort nicht immer. Warum macht Modbus das besser und gibt es spezielle Software für Modbus (Linux)? Ich finde zwar libmodbus, aber keine frontends. qmodbus werde ich mal testen. Wie läuft die Netzwerkkommunikation über Merker ab. Wird einfach in jedem Zyklus der gesamte Speicher geschrieben? Wie ist der Zyklus-Takt? Wenn das ebenfalls wie das Datalog einmal in der Sekunde nachschaut, würde es erklären, warum kurze Tastungen gar nicht übertragen werden. Würde das der Slave-Modus besser machen, auch wenn ich ungern auf Master-Master verzichten würde, um die Kapazitäten der Logos besser zu nutzen. |
07.11.2018 11:09 | |
Beigetreten: 29.10.2015 Letzter Bes: 08.01.2024 Beiträge: 179 Bewertung:
|
In 64143308_LOGO_Set9_Master_Slave_LOGO_7_de.pdf auf S.5 lese ich:
Das sagt mir einerseits, dass das Problem bei der Master-Slave Kommunikation ebenfalls besteht, und andererseits, dass ich mit meinen 150 oder 250ms Verzögerung evtl. zur kurz taste. Ich werde es mit 500ms versuchen, das könnte es schon lösen...Schade, dass solche wichtigen Informationen nur verteilt zu finden sind. Dateianhang64143308_LOGO_Set9_Master_Slave_LOGO_7_de.pdf (338 Downloads) |
Zuletzt bearbeitet von: massb am: 07.11.2018 11:09:52Zuletzt bearbeitet von: Jen_Moderator am: 07.11.2018 14:06:55PDF als Anhang hinzugefügt. |
|
07.11.2018 18:50 | |
Beigetreten: 18.12.2014 Letzter Bes: 10.09.2024 Beiträge: 33735 Bewertung:
|
Im Anhang mal ein Bildschirmvideo für eine Versuchsschaltung.. Ganz einfach ein Signal zwischen 2 LOGO!s hin- und zurückgeschickt. Das soll dir nur mal aufzeigen, wie du dir die Laufzeiten bei den Programm anschauen kannst. Das ist aber keine generelle Aussage. Es spielen zu viele Faktoren eine Rolle. DateianhangMessung.zip (380 Downloads) |
Folgen Sie uns auf