mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Haussteuerung RS485, IIC oder CAN


Autor: Marco Schramm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Folgende Ausgangslage:

1 Stk. C-Control I Station 2.0

8 im Einfamilienhaus verteilte Schalter (Standart-Serienschalter der
230V-Technik)

Anbindung teilweise über neu verlegtes Cat 7-Kabel möglich. Einige
Schalter sind jedoch nur über das bereits vorhandene 8adrige
"Postkabel" Es ist auch nur Sterntopologie realisierbar. Maximale
Entfernung zwischen Schalter und C-Control-Station: 50m

Als Busankoppler an den Schaltern kann ich AVR´s in Bascom
programmieren.


Folgende Frage:

Für welchen Bustyp soll ich mich entscheiden? Dabei möchte ich
möglichst EINFACH und SCHNELL zum Ziel kommen.

RS 485, IIC oder CAN?


Zusatzfrage: Ich habe mal gelesen, der IIC-Bus wäre nur für
Entfernungen bis 3m spezifiziert. Ist das richtig?

Autor: 123 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
im wiki unter hausbus werden deine fragen beantwortet. Einfach und
schnell geht nicht;-)

Autor: Marco Schramm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im ?? wiki ??    Ich habe eben die Suche bemüht und unter Hausbus stehen
immer wieder die freudige Nachricht, das ein eigenes Unterforum
aufgemacht wurde. Aber wo isses denn nun? Bin ich zu blind?

Autor: David W. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Joachim B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Marco,

nähere Informationen zum Hausbus gibt es hier:
http://www.mikrocontroller.net/articles/Hausbus

Der IIC-Bus wurde als "Inter-IC-Bus" zur Verbindung von IC's
innerhalb von Geräten entwickelt. Er ist nicht als störsichere
Verbindung über lange Strecken gedacht.
RS 485 kann man degegen bis auf 1200m verlängern.

Mit einer Sternverdrahtung kann man übrigens auch einen Bus
realisieren, wenn man in jeden Zweig mit zwei Adern hineingeht, diese
am Ende anschließt und mit zwei weiteren Adern wieder zurückehrt. Der
Bus wird dadurch länger, das sollte aber kein Problem sein.

Gruß
Joachim

Autor: Marco Schramm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Deshalb hatte ich auch das CAT7 Kabel gewählt, da bei diesem auch die
einzelnen Doppeladern gegeneinander geschirmt sind. Wie du es schon
sagst. Damit kann man dann aus Stern einen Ring bauen.

IIC ist wohl gestorben (wie schon vermutet).

Bliebe dann noch RS 485. CAN erscheint mir augenblicklich als zu Hard-
und Softwareaufwändig.

Autor: mmerten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
für 8 simple schalter (kontakte) gleich nen hausbus, mit µc an jedem
schalter ist das nicht ein wenig übertrieben ???

Autor: Marco Schramm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du Hast recht, 8 normale Schalter könnte man ja so ansteuern. Ziel ist
es aber, jeden der 8 Schalter mittelfristig gegen einen wie auch immer
gearteten Mehrfachschalter 4 bis 8 Kanäle) mit optischer Rückmeldung zu
ersetzen. Zur Debatte steht auch ein LCD-Display mit Hardkeys unten
drunter oder sogar die immer mehtr erschwinglich werenden Touchpanels.

Zusammengefaßt: Von jedem Schalterstandort sollen im Endausbau bis zu 8
Kanäle (Licht, Rolladensteuerung) mit optischer Rückmeldung erfolgen.
Und dann müsste ja eh ein uc her. RS 485 hätte ich halt gerne wegen der
Störsicherheit. Und ich möchte gleichzeitig was "Basteln" was man auch
später nutzt
und dabei den AVR besser kennnenlernen. was man auch später nutzt.

Autor: Max (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kleiner Tipp: Wenn man anstelle eines RS485-Treibers einen CAN-Treiber
nimmt (z.B. den 82C250), ist die Übertragung auch "Kurzschlussfest".
Bei den originalen RS-485 Treibern ist das nicht so. Auch Multi-Master
ist dann mit dem RS-485 möglich, da sich bei den CAN-Treibern der
"0"-Pegel durchsetzt. Der Tipp ist nicht von mir, habe ich irgendwo
hier im Forum mal gelesen, aber k.A. wo das genau war. Ich habs
ausprobiert und das funktioniert prächtig.
RS-485 ist mir eher sympathisch als CAN, weil ich einfach mal so einen
PC mit einklinke und mir dann die Datentelegramme direkt anschauen
kann.

Autor: Michael Wilhelm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Korrigiert mich bitte, wenn ich falsch liege, aber RS485 ist ein
physikalischer Layer, unter dem auch CAN läuft. CAN ist reine Software,
die diesen Layer (Differenzsignal mit Schirm, verdrillte Leitungen usw.)
nutzt.
Unter RS485 läuft z. B. auch DMX. Aber auch das ist wieder die
Software.

MW

Autor: Detlef Wilken (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@MAX:

Multi-Master Betrieb ist auch mit herkömmlichen Treibern (MAX485)
möglich. Das einzige Problem sind eben die häufig genannten
Buskollisionen (die vermutlich durch CAN-Treiber bereits HW-mässig
ausgeschlossen werden). Es spricht absolut nichts dagegen, solche
Bus-Kollisionen via SW zu erkennen und zu umgehen !
Eine Buskollision zu erkennen, ist kaum aufwändiger als einen Port auf
HIGH zu schalten !
Mein RS-485 ist Multi-Master -fähig mit normalen Treibern (Für so ein
bischen SW kaufe ich mir doch keine CAN-Treiber !

Gruß
Detlef

Autor: Peter Dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Detlef

"Mein RS-485 ist Multi-Master -fähig mit normalen Treibern (Für so
ein
bischen SW kaufe ich mir doch keine CAN-Treiber !"


Darum geht es doch überhaupt nicht !

RS-485 Treiber haben keinen dominanten Pegel und sind sehr stromstark.
Wenn da also einige Ohm an Leitung zwischen 2 kollidierenden Mastern
sind, liest jeder seinen Pegel zurück und denkt, daß gar keine
Kollision stattgefunden hat. Und alle dazwischen lesen Datensalat.

Bei CAN gibt es einen dominaten Pegel, d.h. jeder kriegt eine Kollision
mit, auch der Sender. Und es kommt auch bei einer Kollision zu keiner
erhöhten Stromaufnahme.

Außerdem sparst Du bei CAN-Treibern das Umschaltsignal für den Sender.

Außerdem sind CAN-Treiber wesentlich billiger als RS-485 Treiber.

Der einzige Vorteil von RS-485 Treibern ist, daß eine geringfügig
höhere Datenrate möglich ist.


Peter

Autor: Detlef Wilken (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

> Wenn da also einige Ohm an Leitung zwischen 2 kollidierenden Mastern
> sind, liest jeder seinen Pegel zurück und denkt, daß gar keine
> Kollision stattgefunden hat

Ich habe zwar bisher nur Tests mit Aufbauten auf meinem Schreibtisch
gemacht, aber ich glaube kaum, dass durch die Strecken, die die Daten
in einem Hausnetzwerk zurückzulegen haben, eine Kollision übersehen
werden kann.
Ich bitte um Korrektur, wenn jemand von Euch diesbezüglich andere
Erfahrungen gemacht hat.


Um Mißverständnisse auszuschließen, hier mein Prinzip der
Kollisionserkennung:
Jedes gesendete Byte löst im gleichen Steuergerät ein Interrupt aus.
Das empfangene Byte wird mit dem gerade gesendeten verglichen. Schlägt
dieser Vergleich bei einem der Bytes fehl, wird die Sendung mit einer
geringen Zeitverzögerung erneut gesendet. Dadurch, dass die Sendung
unterbrochen ist, ist auch die ENDE-Kennung des Protokolls beim
Empfanger nicht angekommen und die Botschaft wird beim Empfänger
verworfen.


Gruß
Detlef

Autor: Peter Dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Detlef,

der LTC490 braucht +/-0,2V Differenzspannung zum Erkennen 0/1 und kann
typisch 100mA Strom liefern, d.h. für 0,2V reicht ein
Leitungswiderstand von 2 Ohm aus.

Also 2 LTC490 mit 2 Adern a 2 Ohm verbunden, einer sendet 1 und liest
1, der andere sendet 0 und liest 0.

Und keiner kriegt die Kollision mit.



Peter

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.