Forum: Mikrocontroller und Digitale Elektronik Topologie eines (Haus)Steuerungsbus


von AVR-Beginner (Gast)


Lesenswert?

Hallo!

Ich überlege mir momentan wie man ein Haus vernetzen kann. Wie ich in 
Erfahrung gebracht habe, gibt es dort verschiedene Technologien, aber 
keine spricht mich wirklich an.

Diese Master-Slave-Busse überzeugen mich nicht wirklich, dafür habe ich 
aber besonders gefallen an der Ethernet-Topologie gefunden: Es hängen 
nur an den Kabelenden Geräte und um mehr als zwei Geräte zu realisieren, 
gibt es den Switch, der als Verteiler fungiert.
Das ist zwar alles gut und schön, aber mehrere Sachen halten mich davon 
ab: Die Stromversorgung, der Preis der Komponenten (Kabel, Switches, 
Ethernet-Treiber).
Also bilde ich mir ein, dass es besser wäre, nur die Topologie 
nachzuempfinden. Da gibt es dann auch noch den USB-Bus. Dieser ähnelt 
dem Ethernet irgendwie: Es gibt auch Verteiler, die hier allerdings 
immer USB-Hub heißen. Das ganze ist hierarchisch aufgebaut in Form einer 
Baumstruktur. So könnte dann eine Übertragung aussehen:
Ein Gerät legt die Daten in die Datenleitung. Diese bestehen aus einem 
Header, in dem z.b. die Empfängeradresse gespeichert ist, und dem 
Datenteil. Der übergeordnete Verteiler schaut in seinem Adressspeicher 
(vgl. Mac-Adressenspeicher beim Switch) nach, ob ein Gerät mit der 
Empfängeradresse untergeordnet ist. Wenn nicht, dann schickt es das 
Datenpaket weiter an den nächsthöheren Knotenpunkt.

So finde ich das schon klasse. Soweit die Theorie, hier beginnnen aber 
meine Probleme: Wie soll der eigentliche Bus aussehen? Soll ich hier 
irgendetwas mit dem UART basteln? Mit der RS485-Technologie könnte ich 
so sogar ziemlich große Entfernungen überbrücken. Aber wie soll ich dann 
die Verteiler/Swichtes/Knotenpunkte/Hubs realisieren? Ich bastel 
üblicherweise immer etwas mit ATmega16-Controllern rum, aber der besitzt 
gerade mal einen UART! Aber meine Verteiler bräuchten einen UART schon 
alleine für die Verbindung zum höheren Knotenpunkt und für jeden 
Unterzweig auch wieder einen UART (und es soll pro Verteiler schon 8 
Unterzweige geben!). Ein Software-UART ist zwar realisierbar. Aber wie 
sieht es mit 8 SUARTs aus? Das schafft ein normaler AVR doch garnicht, 
schon garnicht wenn die Datenpakete dann ja auch noch bearbeitet werden 
müssen. Wenn man die Baudrate auf wenige dutzend Baud drosselt, geht es 
vielleicht problemlos, aber ich benötige doch etwas höhere 
Übertragungsraten.

Hat jemand eine Idee? Was sagt ihr zu meinen Ideen?
Vielen, vielen dank im vorraus für eure Antworten!

PS: Ich sollte vielleicht bemerken, dass ich kein professioneller 
Elektrotechniker bin, sondern angefangen habe, in meiner Freizeit etwas 
mit meinem ATmega16 rumzuspielen.

von ... .. (docean) Benutzerseite


Lesenswert?

bei rs485 und can zB auch brauchst du keine Hubs/Switche...

Alle Teilnehmer hängen am selben Bus...

Wieso kein Master/Slave Bus?

von Ralf (Gast)


Lesenswert?

8 UARTS in Software zu machen wird happig, dann nimm lieber eine 
SPI-UART Brücke, oder gleich 16C55x UART(s).
Das wird im Endeffekt auch wieder ziemlich teuer.
Eine Alternative wäre, einen µC mit zwei UARTs zu verwenden, und den 
UART nach "unten" zu multiplexen.

Was genau spricht denn dagegen, eine Zentrale zu haben, die alles 
managed?

Ralf

von Karl-heinz S. (cletus)


Lesenswert?

AVR-Beginner wrote:

> Da gibt es dann auch noch den USB-Bus. Dieser ähnelt
> dem Ethernet irgendwie: Es gibt auch Verteiler, die hier allerdings
> immer USB-Hub heißen. Das ganze ist hierarchisch aufgebaut in Form einer
> Baumstruktur.

Bitte, NEIN.

USB und Ethernet haben NICHTS, aber auch absolut GAR NICHTS miteinander 
gemein.

Die Stationen, bei denen die Post-LKWs ihre Ladung tauschen, heißen auch 
Hubs. Und ein Schalter wird auch mal als Switch bezeichnet.

Bitte lies dir auf der Wikipedia mal die Artikel zu Ethernet und USB 
durch.

Achja: Ethernet kann auf verschiedenen Medien gefahren werden. Einfach 
Hubs sind für die Teilnehmer sogar volltransparent. Und an ein 
RG58-U-Kabel können sogar mehrere Teilnehmer ohne Hub angeschlossen 
werden.

von AVR-Beginner (Gast)


Lesenswert?

> Achja: Ethernet kann auf verschiedenen Medien gefahren werden. Einfach
> Hubs sind für die Teilnehmer sogar volltransparent. Und an ein
> RG58-U-Kabel können sogar mehrere Teilnehmer ohne Hub angeschlossen
> werden.

Hmm, okay, das ist auch richtig. Ich dachte eher so an das heutige 
Ethernet, wo HUBs nicht mehr sind und die Pakete nur dahingehen, wo sie 
auch hin sollen.

Okay, langsam frage ich mich selber, weshalb ich gegen ein 
Master-Slave-System bin. Gerade wenn ich schon eine hierarchische 
Basumstruktur habe, bietet sich Master-Slave ja eigentlich an. Ich 
glaube, das ist die Lösung.
Mit RS485 kann ein Verteiler dann ja sogar bis zu 32 Geräten bedienen - 
mit nur zwei UARTs.

Vielen dank für die Antworten.
Sorry, dass ich gefragt habe, ich hätte von selber drauf kommen müssen 
(manchmal ist es halt einfacher, seine Ideen schriftlich festzuhalten)

von Ralf (Gast)


Lesenswert?

> Mit RS485 kann ein Verteiler dann ja sogar bis zu 32 Geräten bedienen -
> mit nur zwei UARTs
Kommt drauf an, wenn du mehr als 32 bedienen willst, dann darfst du halt 
nicht den Standard MAX485 verwenden, sondern einen, der mehr kann, das 
geht je nachdem bis zu 128 oder sogar 256.

Ralf

von Karl-heinz S. (cletus)


Lesenswert?

AVR-Beginner wrote:
>> Achja: Ethernet kann auf verschiedenen Medien gefahren werden. Einfach
>> Hubs sind für die Teilnehmer sogar volltransparent. Und an ein
>> RG58-U-Kabel können sogar mehrere Teilnehmer ohne Hub angeschlossen
>> werden.
>
> Hmm, okay, das ist auch richtig. Ich dachte eher so an das heutige
> Ethernet, wo HUBs nicht mehr sind und die Pakete nur dahingehen, wo sie
> auch hin sollen.

Ähhh - Viele Switches werden zum Hub, wenn man ihren MAC-Speicher 
flooded.
Und ein "heutiges" Ethernet gibt es auch nicht.

> Okay, langsam frage ich mich selber, weshalb ich gegen ein
> Master-Slave-System bin. Gerade wenn ich schon eine hierarchische
> Basumstruktur habe, bietet sich Master-Slave ja eigentlich an. Ich
> glaube, das ist die Lösung.

USB ist Master-Slave. Und REINES Polling.

> Mit RS485 kann ein Verteiler dann ja sogar bis zu 32 Geräten bedienen -
> mit nur zwei UARTs.

Och nö.

Bitte lies dir den Wikipediaartikel zu EIA-485 durch.

Du brauchst nur einen UART. Und eben keinen Verteiler. Das ist ja gerade 
der Witz.

> Vielen dank für die Antworten.
> Sorry, dass ich gefragt habe, ich hätte von selber drauf kommen müssen
> (manchmal ist es halt einfacher, seine Ideen schriftlich festzuhalten)

Nein, fragen ist in Ordnung. Und nein, keiner erwartet, dass du von 
selber auf irgendwelche Ideen kommst. Sonst macht die Fragerei in Foren 
ja keinen Sinn ;-)

Aber über Schlagwörter, die dir zugeworfen werden, solltest du dich 
informieren. Und das kann man auch, wenn die mit Beispielen und Bildern 
in der WP behandelt werden.

von Karl-heinz S. (cletus)


Lesenswert?

Karl-heinz Strunk wrote:

>> Okay, langsam frage ich mich selber, weshalb ich gegen ein
>> Master-Slave-System bin. Gerade wenn ich schon eine hierarchische
>> Basumstruktur habe, bietet sich Master-Slave ja eigentlich an. Ich
>> glaube, das ist die Lösung.
>
> USB ist Master-Slave. Und REINES Polling.

Und nebenbei ist die hierarchische Baumstruktur nicht im 
Ethernetstandard vorgeschrieben und wird auch nicht so verdrahtet, wenn 
es über eine Fritzbox hinaus geht.

von Karl-heinz S. (cletus)


Lesenswert?

AVR-Beginner wrote:

> Okay, langsam frage ich mich selber, weshalb ich gegen ein
> Master-Slave-System bin. Gerade wenn ich schon eine hierarchische
> Basumstruktur habe, bietet sich Master-Slave ja eigentlich an.

OK, ich meine gefunden zu haben, warum wir alle aneinander vorbei reden:

Du gehts strikt von Punkt-zu-Punkt-Verbindungen aus, weil du das von 
deiner Ethernetverkabelung zu Hause so kennst.

Also Rechner, Switch, Rechner. Oder Rechner, Switch, Switch, Rechner.

Bei einem typischen Bussystem hängen die Teilnehmer aber ohne 
irgendwelche Switches an einem Strang. Deswegen heißt es Bus. Und das 
ist auch nicht weniger fortschrittlich.

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
Noch kein Account? Hier anmelden.