Hallo Forum, ich plane gerade eine Rolladen-Gruppensteuerung für mein CAN-Hausbusprojekt. Für die Kommunikation habe ich mir überlegt, dass mehrere BUS-Teilnehmer über Gruppen adressierbar sind. Ein BUS-Teilnehmer kann also einen Wert an eine Gruppenadresse schicken, alle anderen Teilnehmer entscheiden anhand ihrer Konfiguration ob sie die Nachricht auswerten oder nicht. Ok, nun folgende vereinfachte Annahme: Ich habe einen Raum mit - 2 Rolläden unterschiedlicher Höhe (Normales Fenster + Tür) an jewails einem Aktor - 2 Taster-Kombinationen mit jewails einem "Hoch" und "Runter"-Taster, jewails an einem BUS-Teilnehmer Zusammen also 4 Bus-Teilnehmer. Beide Taster-Kombinationen sind so programmiert, dass sie bei Betätigen der Taster eine Nachricht an die Gruppe "Rolladen" senden ("Runter/Stop" und "Hoch/Stop"). Drückt man nun einen Taster "Runter/Stop", sollen beide Rolladen runter fahren. Ein weiteres drücken auf einen der beiden Taster (egal welche Richtung) soll die Bewegung stoppen. Und hier kommt es zum Problem: Sobald ein Rolladen die Endposition erreicht hat geht er in den Zustand Stop, während der andere noch im Zustand "Runter" ist. Wenn jetzt die Taste "Hoch/Stop" gedrückt wird bleibt der höhere Rolladen stehen (da der ja noch in der Abwärtsbewegung war), der kürzere fährt hoch! Egal wohin ich die Logik verschiebe, so ganz einfach ist das Problem nicht zu lösen. Hat jemand einen Tip? Wie machen das Kommerzielle Systeme?
Also, bei KNX geht das wohl ohne eine "Stopp" funktion, sonder mit einem Kurzzeit-Fahrbefehl (Fahrzeit zum Öffnen/Schließen einer Lamelle) der anschließend immer stoppt: 1. "Fahrt/Langzeit auf/ab" (langer Tastendruck) 2. "Stopp/Kurzzeit auf/ab" (kurzer Tastendruck) Das wäre eine Lösung, wenn auch nicht so flexibel wie erhofft.
Hallo Lukas, woher weiss denn Deine Steuerung, welcher Motor noch fährt / welcher nicht ? Bei kommerziellen Systemen ist es so, das das jeweilige Relais einfach für eine bestimmte Zeit geschaltet wird (wesentlich länger als der jeweilige Rolladen braucht) Die Endabschaltung geschieht durch den Endschalter im jeweiligen Motor Grüße Klaus
Hallo, Rollläden haben immer einen Endstopp; damit ist die Laufzeit bei vollständiger Betätigung an sich egal. Man kann also einfach in beide Rollladensteuerungen die Laufzeit des langen Rollladens eintragen und so das Problem umgehen (Antwort hat sich mit vorhergehender überschnitten). Schwieriger wird es, wenn Du Zwischenpositionen einspeichern und Anfahren können möchtest. Dann wäre eine Lösung, die Motorlaufzeit von der Befehlsakzeptanszeit zu trennen (also Laden 1 fährt vollständig in 30 Sekunden, Laden 2 vollständig in 15 Sekunden aber beide interpretieren einen neuen Befehl, der innerhalb von 30 Sekunden nach dem letzten kommt, als Stopp-Signal). Schöne Grüße, Martin
Zwischenpositionen will ich schon haben - die Idee mit der Entkopplung hatte ich auch schon. Problem dabei ist, dass ich in meine Hardware eine automatische Laufzeitbestimmung implementiert habe, es ist also nicht ganz trivial die längste Laufzeit einer Gruppe zu bestimmen - zumal ja auch noch eine Zugehörigkeit zu unterschiedlichen Gruppen bestehen kann. Aber vielleicht muss ich hier Abstriche machen, ist schließlich "nur" ein Eigenbauprojekt ohne wirtschaftliche Ziele ;-)
Hallo, falls Du doch automatisieren möchtest und überschüssige Controller- und Buskapazität hast, kannst Du auch mit einem Handshaking arbeiten: Beim Losfahren meldet jedes Aktor-Gruppenmitglied "Ich fahr los" auf den Bus an die Gruppenadresse. Jedes andere Gruppenmitglied hört dies und zählt die Losfahrkommandos in einem Aktivitätszähler. Beim Anhalten sendet jedes Mitglied ein "Ich haben fertig" an die Gruppenadresse. Jedes andere Mitglied dekrementiert daraufhin den Aktivitätszähler. Kommt nun ein Kommando zum Umsteuern, stoppt jedes Gruppenmitglied den Rolladen, wenn der Aktivitätszähler >0 ist oder führt das Kommando aus, wenn der Aktivitätszähler = 0 ist. Allerdings muss bei dieser Methode sichergestellt sein, dass kein einziges Buskommando verloren gehen kann (sonst geht die Synchronisation verloren). Als "Hosenträger" kann dann noch der Aktivitätszähler nach einer längeren Zeit ohne Kommando an die Gruppenadresse genullt werden, damit so ein Busfehler durch Nichtbetätigung des Schalters geheilt werden kann. Schöne Grüße, Martin
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.