Der Blätterkatalog benötigt Javascript.
Bitte aktivieren Sie Javascript in Ihren Browser-Einstellungen.
The Blätterkatalog requires Javascript.
Please activate Javascript in your browser settings.
20 DESIGN&ELEKTRONIK 04 2021 www designelektronik de LITERATUR 1 Dembowski K Computerschnittstellen und Bussysteme 3 Auflage 2013 VDE-Verlag ISBN 978-3-8007-3448-1 https www vdeverlag de buecher 483448 computerschnittstellenundbussysteme html 2 Maxim Integrated Übersicht One Wire-Komponenten 2020 https www maximintegrated com en pl_list cfm filter 21 3 Dembowski K Raspberry Pi Das technische Handbuch 3 Auflage 2020 Springer Verlag ISBN 978-3-658-27492-4 https www springer com de book 9783658274924#aboutBook die Zeit die das Signal braucht um sich über die Leitung auszubreiten Mit Verringern des Abstandes zum Pegel der noch als logische Null interpretierbar ist sinkt die Toleranz gegenüber Störungen Aus diesem Grund setzt man für umfassendere One-Wire-Netze einen sogenannten aktiven Pullup ein der die Flankensteilheit aktiv steuert Ein aktiver Pullup ist folgendermaßen zu realisieren Neben dem stets aktiven Pullup-Widerstand 1 kΩ in Bild 4 ist eine gesteuerte Pulldown-Schaltung high auf low hinzuzufügen Hiermit sind sogar Leitungslängen von 300 m mit bis zu 500 Slaves möglich Jedoch erfordert das eine kleine Zusatzschaltung Bild 4 die vom Mastercontroller zu steuern ist Einige Maxim-Mastercontroller DS2480B DS2482 enthalten diese Schaltungseinheit bereits Sie sind demnach ebenso für größere One-Wire-Netze zu verwenden Ein aktiver Pullup unterstützt in der Phase des Flankenanstiegs Bild 5 den passiven Pullup und schaltet sich danach wieder ab damit der bei Bedarf wieder auf Low gezogen werden kann ■ One-Wire-Controller mit Temperatursensor Um den Raspberry Pi als One-Wire-Controller 3 einsetzen zu können ist mit »raspiconfig« unter den Interfacing-Options lediglich »1-Wire« zu aktivieren Ebenso lässt sich das über den Desktop Einstellungen Raspberry-Pi-Konfiguration Schnittstellen und »Eindraht aktiviert« bewerkstelligen Nach dem Aktivieren ist ein Neustart empfehlenswert Mit der Einstellung wird standardmäßig der GPIO-Port 4 Pin 7 für One-Wire reserviert Grundsätzlich ist es ebenso möglich einen anderen Port hierfür zu bestimmen was dann manuell in der Datei » boot config txt« über die Zeile »dtoverlay=w1-gpio gpiopin=x« einzutragen ist wobei der gewünschte Port für das x einzusetzen ist Als One-Wire-Chip wird ein Temperatursensor vom Typ DS18B20 Bild 6 mit dem DQ-Pin an den Pin 7 GPIO 4 der Raspberry-Pi-GPIO-Leiste angeschlossen Maxim Integrated bietet den DS18B20 in verschiedenen Gehäuseformen an Praktisch ist die Version im 3-Pin-TO92-Gehäuse weil sie sich gut an der Messstelle positionieren lässt Die Versorgung von 3 3 ist mit Pin 1 der Leiste über einen Pullup-Widerstand 4 7 kΩ ebenfalls mit DQ zu verbinden und nicht etwa mit VDD sonst wäre keine parasitäre Spannungsversorgung gegeben Stattdessen ist der VDD-Anschluss des DS18B20 zusammen mit dem Masseanschluss GND an den Pin 9 der GPIO-Leiste zu schalten was somit den One-Wire-Betrieb ermöglicht Ein Überprüfen der Funktion lässt sich im Terminal Bild 7 mit »ls« im Verzeichnis » sys w1 devices« durchführen Hier muss der Sensor mit seiner spezifischen Adresse auftauchen über die er selektierbar ist Nötig ist das für das spätere Programmieren Wie in Bild 7 zu erkennen ist lassen sich mit dem cat-Befehl daraufhin die Daten auslesen Ein einfaches PythonProgramm das die gemessene Temperatur alle 10 s mit einem formatierten Messwert in °Csowie mit einem Zeitstempel ausgibt ist in Bild 8 dargestellt ts Bild 7 Kommunikation mit dem One-Wire-Temperatursensor embedded-Computing Maker mit One-Wire Bild 8 Ein einfaches Python-Programm das die gemessene Temperatur alle 10 s mit einem formatierten Messwert in °Csowie mit einem Zeitstempel ausgibt