Ich plane, etwa 4-5 Arduino Pro Micro in meinem Garten zu betreiben, um die Steuerung von Magnetventilen für die Gartenbewässerung basierend auf Bodenmessungen zu steuern (damit wir es gut bewässert halten).
Meine Frage betrifft die Versorgungsspannung. Ich möchte Cat 6 über eine Gesamtlänge von vielleicht 20 m verwenden, um sowohl Strom als auch RS485-Netzwerke über die Twisted Pairs zu liefern.
Basierend auf früheren Antworten zu cat6 weiß ich, dass die Stromstärke in Ordnung sein sollte, vorausgesetzt, alle Arduino laufen sogar ohne Schlaf voll, etwa 45 mA, das sind etwa 250 mA.
Das Magnetventil sagt 8 W bei 12 V, was 0,6 A entspricht, vorausgesetzt, der Strom ist erforderlich, um es offen zu halten (nicht geschlossen - ist das richtig?), Was ich hoffen würde, sonst würde ein Stromausfall dazu führen, dass es sich öffnet.
Ich denke, ich müsste sowieso 12 V laufen lassen, sollte ich 12 V und 5 V die Paare runterlaufen lassen? Wenn ich nur 12 V betreibe, brauche ich einen linearen Spannungsregler, der ziemlich heiß wird, bedeutet das, dass er ineffizient ist? Wenn ich auch 5 V verwende, wie gut funktionieren 5 V über diese Entfernung aufgrund des Spannungsabfalls bei Cat6-Paaren?
Im Allgemeinen bedeutet eine höhere Spannung einen geringeren Verlust, daher sollten Sie die wirtschaftlichste Spannung verwenden (aber nicht mehr als 48 V, dies ist gefährlich). Ich empfehle auch, eine einzelne Spannung zu betreiben, aber zwei Drähte zu verwenden - zum Beispiel orange/oder-weiß für (+) und blau/blau-weiß für (-). Dies vereinfacht lediglich die Verkabelung und verringert die Wahrscheinlichkeit eines spontanen Neustarts von Mikrocontrollern aufgrund von Interferenzen oder Erdschleifen erheblich.
Lassen Sie uns zuerst sehen, ob Sie 12 V verwenden können. Ein 20 Fuß langes 23-AWG-Kabel hat einen Widerstand von 0,4 Ohm (unter der Annahme von 20 Ohm/1000 Fuß und zwei parallel geschalteten Drähten für Masse und Vcc). Bei 0,6 A verlieren Sie 0,24 V, was die Magnete nicht bemerken werden. Wenn Sie 5 Magnetventile gleichzeitig mit einem einzigen Kabel betreiben, ziehen sie insgesamt 3 A, und ein Kabel wird 1,2 Volt abfallen, was immer noch ausreicht, um die Magnete zu erregen. Also ja, sieht so aus, als könnten wir nur 12 V betreiben.
Beachten Sie, dass Sie, wenn Sie mehr Strom benötigen, auf 24 V oder 48 V umschalten und einen 12-V-Regler in jeder Box haben müssten.
Um nun 5 V zu erhalten, können Sie einen Linear- oder Schaltregler verwenden. Die Vorteile des Linearreglers bestehen darin, dass er einfach und bei einigen Arduinos bereits vorhanden ist (nicht bei Pro Micro). Bei 45 mA werden 0,3 W verschwendet, was nicht viel ist und leicht abgeleitet werden kann. Angesichts der Tatsache, dass 5-V-Schaltregler bei ebay jeweils weniger als 2 US-Dollar kosten, empfehle ich Ihnen dringend, einfach ein Dutzend davon zu kaufen und sie überall zu verwenden.
Zunächst einmal wäre der Betrieb von 12 V für die Stromversorgung angesichts der Einschränkungen in Ihrer Frage zumindest einigermaßen praktisch, Sie werden jedoch in Bezug auf die verfügbare Strommenge eingeschränkt. Die Verwendung von 24 oder 48 V mit Abwärtsreglern bis hinunter zu 12 V an jedem Endpunkt (diese sind als Module aus einer Vielzahl von Quellen erhältlich) ist wahrscheinlich ein weniger verlustbehafteter und vielleicht insgesamt etwas zuverlässigerer Ansatz.
Zweitens gibt es auch auf der Datenseite ein Problem – der UART des Pi unterstützt nicht wirklich das Multidrop-Adressierungssystem (9-Bit-UART-Modus), das üblicherweise mit RS-485-Netzwerken und Mikrocontroller-UARTs verwendet wird. Ich würde empfehlen, entweder einen externen UART für den Pi zu verwenden, der den 9-Bit-Modus ordnungsgemäß unterstützt, oder ein I2C-over-RS485-Netzwerk anstelle von UART-over-RS485 zu verwenden.
Glücklicherweise sind SPI-UART-ICs relativ günstig erhältlich und unterstützen den 9-Bit-Modus sowie andere Funktionen, die für RS-485 nützlich sind (z. B. die automatische Steuerung der Richtungssteuerstifte des RS-485-Transceivers). Einige USB->UART-Chips können diese Funktion ebenfalls unterstützen; Lesen Sie das Datenblatt für das, was Sie für die Details verwenden.
Der I2C-Bus bietet mehrere sehr nette Funktionen – Multidrop-Adressierung, Konkurrenzerkennung und Multi-Mastering-Unterstützung, alles direkt aus der Box. "Aber wie willst du es dazu bringen, 20 m über Twisted Pair zu gehen?" du fragst. Ganz einfach: Wir nehmen RS-485 und verwenden es mit Hilfe des Puffer-ICs P82B96 als physikalische Schicht für unsere I2C-Verbindung. Dieser Chip teilt die bidirektionalen I2C-Signale in jeweils zwei unidirektionale Signale für SCL und SDA auf – von dort aus können moderne RS-485-Transceiver verwendet werden, die eine Open-Bus/Floating-Bus-Failsafe in einem Pseudo-Open-Drain implementieren Weise (dh Draht DE mit dem Komplement von TX und D mit 0), wie im folgenden Schema dargestellt - U2 und U3 sind die RS-485-Transceiver, und das NOT-Gate kann alles sein, was Sie zur Hand haben und von dem ablaufen Versorgungsspannung vorhanden.
Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan
(Sie benötigen 3,3-V-Transceiver für U2 und U3, um dies mit dem Pi BTW zu verwenden.)
DreiPhasenEel
Mitchell Currie