Ich denke darüber nach, ein Hausautomationssystem um meinen Raspberry Pi herum zu implementieren, aber ich fand den Preis und den Platzbedarf für das Einsetzen eines Pi an jeder Stelle, an der eine Steuerung zu viel erforderlich ist, aber die für dieses Design erforderlichen Cat5e-Kabel sind bereits während der Renovierung installiert. Ich habe einige PCF8574, PCF8591 und SSRs herumliegen. Ist es also möglich, sie mit Cat5e-Kabeln zu betreiben?
Alle meine Cat5e-Kabel sind bereits mit der Pinbelegung TIA / EIA 568B verdrahtet. Sie sind Teil meiner strukturellen Verkabelung und nicht abgeschirmt, daher ist eine höhere Netzspannung erforderlich. Ich denke, Strom- und I2C-Leitungen über das Kabel mit dieser Pinbelegung zu senden:
Pin 1 (Pair 1): SCL+
Pin 2 (Pair 1): SCL-
Pin 3 (Pair 2): SDA+
Pin 4 (Pair 3): +12V
Pin 5 (Pair 3): +12V
Pin 6 (Pair 2): SDA-
Pin 7 (Pair 4): GND
Pin 8 (Pair 4): GND
Die Power-Pin-Anordnung entspricht der 100BASE-TX-PoE-Verkabelung, sodass auch die Nennleistung gleich ist. In 1000BASE-T, für das Cat5e erforderlich ist, wird eine bidirektionale Differenzsignalisierung verwendet.
Die ursprünglichen I2C-SCL- und SDA-Leitungen werden bei TTL-Pegeln in zwei bidirektionale Differentialpaare abgeleitet (der Open-Drain wird nicht auf dem Draht gehalten, sondern in der von mir entworfenen Leitungsabschluss- / Pegelverschiebungsvorrichtung wiederhergestellt).
Irgendein Vorschlag dazu? Welchen Chip sollte ich auch verwenden, um I2C-Leitungen in die Differenzsignalisierung umzuwandeln? Bitte schlagen Sie mir Chips mit DIP-Durchgangslochoption vor. Ich weiß nicht, wie ich mit SMT umgehen soll.
BEARBEITEN
Ich fand diesen Chip, SN65LBC180, ist es eine gute Wahl? Wie verdrahtet man es zu einer bidirektionalen Einheit? Wie kann man den Pegel verschieben (es ist ein BiCMOS-Teil, der einen TTL-Pegel benötigt, aber Pi mit 3,3 V CMOS-Pegel fährt) und ihn Open-Drain-kompatibel machen?
BEARBEITEN 2
Die Kommentatoren schlugen RS-485 vor, was mir akzeptabel erschien, aber dennoch müssen die beiden Differentialpaare bidirektional und nur zwei bidirektionale Differentialpaare sein. Ich verwende vorhandene Ethernet-Kabel neu.
BEARBEITEN 3
Da es jemand angesprochen hat, kann ich CAN nicht verwenden. Es gibt keine Möglichkeit, CAN auf RPi anzupassen, ohne etwas zu opfern (SPI wird von einem Touchscreen belegt, also kein SPI-CAN-Konverter).
Ich bin mir der Einschränkung von I2C PHY bewusst, daher versuche ich im Wesentlichen, 1000BASE-T PHY daran anzupassen - bidirektionale Differenzsignalisierung für SCL- und SDA-Signale, aber zusätzlich wird das I2C-Protokoll ausgeführt.
BEARBEITEN 4
Ein neuer Chip kam zu mir: NXP P82B96, der I2C in 4 unidirektionale Leitungen aufteilt, die wiederum durch Optoisolation (nur Pi-Seite) in SN65LBC180 eingespeist werden können, um eine 8-polige Ferngesprächssignalisierung zu bilden. Jetzt muss ich nur noch herausfinden, wie ich Strom über das Kabel bekomme oder wie ich feststelle, ob der Bus sendet, und die Paare bidirektional machen.
BEARBEITEN 5
Aufgrund der Vorschläge für Antworten denke ich, dass ich die Pinbelegung der Stromversorgung ein wenig ändern muss:
Pin 1 (Pair 1): SCL+
Pin 2 (Pair 1): SCL-
Pin 3 (Pair 2): SDA+
Pin 4 (Pair 3): +5V
Pin 5 (Pair 3): GND
Pin 6 (Pair 2): SDA-
Pin 7 (Pair 4): GND
Pin 8 (Pair 4): +12V
Die differentielle I2C-Signalisierungsspannung beträgt TTL. Die + 5V über Paar 3 kommen vom Pi, ungepuffert, aber verschmolzen. Die + 12V über Paar 4 sind möglicherweise nicht vorhanden und werden nur zum Ansteuern einiger Hochleistungsgeräte verwendet. Bei Bedarf kann das Gerät eine eigene Stromversorgung verwenden und beide Schienen nicht angeschlossen lassen oder eine eigene höhere Spannung liefern, jedoch die 5-V-Schiene verwenden.
VERGISS DAS
Pinbelegung ist immer noch mein ursprüngliches Design, das 802.1af-kompatibel ist.