Zitat
Eine im Modul eingespeicherte Adresse ist für mich eine fixe Adresse.
Für mich auch, aber ich würde ja auch nicht die Adresse speichern!!!
Ich würde die Position speichert (oder den Modultyp anpassen). Zwar ist diese dann fix und kann nicht geändert werden, aber die Adresse wird immer noch vom Buscontroller vergeben und somit gibt es keine Adress-Kollisionen.
Zitat
Ja, aber wenn man es so macht, dass ein Controllermodul "ab Werk" Adresse Null hat, dann wird es problematisch, wenn ein zweiter Controller, auf einer zweiten Hutschiene, dazu kommt.
Meine Idee war, dass der Buscontroller / Busconnector /... halt 2 Adressen hat. Einmal die interne Adresse 0 und die exteren von einem übergeordneten Buscontroller vergebene Adresse.
Zitat
Wenn Du auf Hausautomation setzt, kommt übrigens recht schnell ein rechtgroßer Adressraum zusammen. Anders als bei komplexen Modulen auf 'ner Hutschiene, wo man mit 8 Bit Adressraum richtig derbe viel machen kann. Aber wenn schon ein simpler Lichtschalter 'ne eigene Adresse bekommt, wird es rasch eng.
Bin daher am überlegen, ob wir den Adressraum nicht auf 16 Bit erweitern.
Ja das stimmt wohl, vorallem wenn man im Wohnzimmer so an die 10 Module problemlos verbauen kann
Die Überlegung wäre da entweder die 16Bit-Adressen, wobei das natürlich aufwändiger bei der Abfrage ist, es müssen ja immerhin 2Byte ausgewertet werden. Als Alternative / oder zusätzlich kann man natürlich bei der Hausautomatisierung in jedem Stockwerk einen eigenen Subbus anlegen und da sollten 256 Adressen ausreichen (oder nicht?). Bei 10 Räumen pro Etage und 10 Modulen pro Raum wären das immer noch nur 100 Module / Adressen. Da aber nicht in jedem Raum 10Module sitzen sondern im Schnitt vielleicht so 5, wären das 50 Adressen. Die 8Bit könnten also für 5 Stockwerke reichen.
Zitat
Wobei: Man sucht sich dämlich nach dem Fehler, wenn man einen Lichtschalter einbaut, der schon eine Adresse eingespeichert hat, die sich aber mit einem anderen Teilnehmer überschneidet und man vergisst die Taste zu betätigen.
Dafür könnte man dem Bus ja ein paar Diagnoseverfahren spendieren. Zum Beispiel alle Adressen ansprechen die vom Buscontroller vergeben wurden oder Auflistung aller angemeldeten Module (Das fehlende Modul ist dann für die Fehler zuständig). Man könnte aber auch eine Broadcast-Adresse vergeben, worüber man dann eine neue Initialisierung starten könnte.
Zitat
Zu Deinen beiden Beispielen: "Programmierter Taster" vs. "Programmierter Buscontroller":
Ich würde notmalerweise die zweite Variante bevorzugen. Unter Vorbehalt des weiter unten Geschrienbenen.
Ja da würde ich auch den programmierten Buscontroller bevorzugen, dann kann man die Programme einfacher anpassen und muss nicht zu jedem Schalter/Schaltermodul rennen.
Zitat
Bei der Hausautomatisation fallen wohl üblicherweise ohnehin keine großen Datenmengen an, schließlich arbeitet auch KNX mit 'ner lahmen Übertragungsrate.
Insofern kommen wir, mit unserem geilen 2,5MHz-Bus, niemals in Timing-Probleme.
Da muss sich natürlich zeigen, ob die 2,5MHz auch über längere Strecken problemlos möglich sind. Bzw. würde ich da die Geschwindigkeit anpassen wollen.
Zitat
Wenn ich das richtig sehe, wäre das bei einer dezentralen Lösung anders?
Da kann, sobald der Schalter und die Lampe sich gegenseitig kennen, anschließend der Controller wegfallen?
Der wird also praktisch nur einmal, für die Adresszuweisung benötigt, ab
da laufen die anderen Teilnehmer autark, selbst wenn man den Controller
entfernt?
Zugegeben, das hat was! Ist das echt so?
Im Grunde ist das so richtig, was natürlich dann nicht mehr funktioniert, wäre die Kommunikation über die Busgrenzen hinweg. Aber bei nur einem Bus ist der quasie wirklich überflüssig, hatte ich so noch garnicht drüber nach gedacht.
Zitat
Wenn nicht, hätte ich persönlich Multimaster gerne vom Tisch und würde gerne alles über den Controller laufen lassen.
Man kann ja auch selbst beim Multimaster alles über einen Controller laufen lassen.
Was wir auch machen könnten, wäre eventuell die Auslegung des Busses für beide Betriebsweisen. Das kann man ja z.B. in die defines des HBUS-Dekoders einbauen, da braucht man das beim programmierne nur einstellen und schon läuft das entsprechend.
Zitat
Was ich mich halt frage, bei Multimaster:
Angenommen, der Controller haut gerade richtig viel Daten an Module raus, die jeweils durch Rücksendung bestätigen.
Dann sind beide RS485-Wege permanent belegt.
Das stimmt natürlich, aber das kann dir auf deinem System auch passieren, wenn das Datenvolumen so groß wird, dass der Bus nicht ausreicht. Da ist dann der Programmierer an der Reihe und muss entweder das Volumen reduzieren oder einen neuen Subbus anlegen, um den jeweiligen Bus zu entlasten.
Zitat
Wenn nun ein Schalter so Multimaster-mäßig direkt an einen anderen
Teilnehmer senden können soll, wird es wesentlich aufwändiger, mit der
Konfliktvermeidung. Es gibt halt nicht den einen (Controller), über über
das ganze Geschehen wacht und wie ein Verkehrspolitist den Verkehr
regelt.
Das hatte ich ja bereits erwähnt, dass das mit den Konflikten Probleme machen könnte.
Zitat
Da muss also jeder Teilnehmer richtig viel Intelligenz mitbringen.
Das erschwert wiederum Firmware-Updates.
Was jetzt die Intelligenz mit Firmware-Updares zu tun hat, kann ich nicht nachvolziehen. Mir ist schon klar, dass bei mehr Intelligenz die Firmware größer wird, aber die Updates sollten doch immer gleich funktionieren, bzw deine HBUS-Decoder sind ja auch nicht gerade mit 3 Zeilen Code fertig oder?
Ich denke jetzt müssen wirklich erst mal Prototypen und Test her, um die Machbarkeit der ganzen Ideen zu überprüfen und dann schauen wir weiter. Sonst drehen wir uns ja doch nur im Kreis und sind nächstes Jahr noch am diskutieren ob Multimaster oder nicht, ... und wenn sich rausstellt, dass iergendwas nicht praktikabel ist, dann steht die Entscheidung ja schon fest.
EDIT: Endlich ist der Post fertig!!!