Inhaltsverzeichnis:
Video: Optisch isolierte Single-Wire-Kommunikation - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:21
Hallo, für ein Aquarienprojekt brauchte ich ein langes elektrisches Kabel, das:
- Gerät mit Strom versorgen
- Kommunikation zulassen
Sonstiges
- Strom und Spannungen sind niedrig
- Draht ist +/- 3m lang
- Langsame Datenübertragungen
- Bidirektionale Kommunikation, Halbduplex
- Begrenzter Platz im Gerät
- Galvanische Isolierung
Die Kommunikation erfolgt zwischen 2 Geräten. Das Gerät kann ein Arduino, Raspberry PI oder ein anderes Gerät sein, das die digitalen Pins verwendet.
Schritt 1:
Einige Sensoren, wie der DS18B20, verwenden 3 Drähte, um Strom zu liefern und mit einem anderen Gerät zu kommunizieren. In diesem Projekt haben die Drähte folgende Funktionen:
- +5V
- Boden
- Daten (0 / +5V)
Nach einigem Suchen im Netz konnte ich nichts einfaches finden, das sich leicht implementieren ließe. Die meisten Setups basieren auf bestimmten Chips und Protokollen mit vielen Optionen, die ich nicht brauchte. Obwohl ich einige schöne Beispiele gefunden habe, die an meine Bedürfnisse angepasst werden könnten, wie:
- NXP, AN2342, https://www.nxp.com/docs/en/application-note/AN23…. Abbildung 5
- EmSa, https://www.esacademy.com, Kann ich meinen I2C-Bus galvanisch entkoppeln?
- Eingebettet, https://www.embedded.com/print/4025023, Abbildung 1
Um flexibel zu sein, beschloss ich, eine Schaltung zu bauen, Standard- / Gleichteile zu verwenden, ein einfaches Protokoll zu programmieren. Hinweis: Da dieses Projekt in einem anderen Projekt verwendet wird, werde ich den Aufbau der Schaltung und die Programmierung des Testprogramms erklären. Sie können dies gerne für Ihr eigenes Projekt verwenden, Sie müssen ein geeignetes Protokoll für Ihre Bedürfnisse erstellen.
Schritt 2: Teileliste
- Stromversorgung +5V
- Flexibles Haushaltskabel mit 3 Leitern
- Perfoboard 5x7cm
- 2x Widerstand 470Ω
- 1x Widerstand 680Ω
- 2x Widerstand 1kΩ
- 2x Diode (z. B. 1N4148)
- 2x Optokoppler EL817
- LED
- Stiftleiste Buchse 2 Pin
- Stiftleiste Buchse 3 Pin
- Stiftleiste Buchse 4 Pin
- Rundkopfbuchse 6-polig
- Rundkopfbuchse 4 Pin
Auch einige Werkzeuge werden benötigt: Pinzette, Cutter, Schraubstock, Lötkolben, Docht, Ständer.
So löten Sie:
Seien Sie sich der Sicherheitsrisiken bewusst und verwenden Sie persönliche Schutzausrüstung.
Schritt 3: Schaltplan
Erklärung zum Schaltplan:
Aus Platzgründen ist die rechte Seite des Schaltplans in der Maschine mit Gerät 2 untergebracht. Die linke Seite des Schaltplans ist der Großteil und wird von Gerät 1 bedient. Zwischen linker und rechter Seite die Datenleitung.
- Der digitale „OUT“auf der rechten Seite ist durch eine Diode geschützt.
- Der Optokoppler „OUT“ist durch eine Diode geschützt.
- Zur Strombegrenzung befindet sich vor Pin 1 der Optokoppler „IN“und „OUT“ein Widerstand
- Pin 2 der Optokoppler ist mit Masse verbunden
- Der Emitter von Pin 3 ist mit einem Widerstand geerdet
- Pin 4 Kollektor wird mit Strom versorgt
Zur Visualisierung der Datenübertragung wird eine LED an die Datenleitung angeschlossen. Der Widerstandswert hängt von der LED und der gewünschten Helligkeit ab. Warnung: Wenn der Widerstandswert zu niedrig ist, brennt zu viel Strom Pin aus Gerät 2 heraus oder der Optokoppler „IN“wird nicht richtig angesteuert.
Siehe Tabelle:
- Wenn „OUT1“oder „OUT2“„HIGH“ist, beträgt die Datenleitung +5V.
- Wenn „OUT1“oder „OUT2“„LOW“ist, ist die Datenleitung 0V.
- An Pin „IN1“oder IN2“kann der Wert der Datenleitung gelesen werden.
In Fritzing wird das Layout der Teile auf dem Perfoboard festgelegt. Die Dioden und Widerstände sind vertikal angeordnet, siehe gelbe, orange und rote Linien. Die blauen Linien sind die Leiter unter dem Perfoboard.
Schritt 4: Programmierung
Um zu testen, ob die Schaltung funktioniert, können Sie die beigefügten Programme verwenden.
Gerät 1 ist der Master und sollte zuletzt mit Strom versorgt werden. Es wird eine bestimmte Folge von Bits gesendet. Zuerst 8 Startbits, 1 Stopbit und dann eine Sequenz „ein“und „aus“.
Gerät 2 ist der Slave und sollte zuerst mit Strom versorgt werden. Das Programm beginnt mit dem Lesen der Datenzeile. Wenn 8 Startbits gelesen werden. Das Programm beginnt mit der Aufzeichnung der Bits. Wenn 8 Bits aufgezeichnet sind, gibt das Programm die Bits zurück.
Während des Datenaustauschs können die „Ein“- und „Aus“-Bits durch die blinkende LED und die LEDs (Pin13) an den Geräten überwacht werden.
Wenn das Löten in Ordnung ist und die Programme geladen sind, sehen Sie das Blinken der LEDs ähnlich der LED im Video.
(Um einen Kurzschluss des Stromkreises zu vermeiden, können die blanken Metallleiter mit Epoxidharz beschichtet werden)