Frage:
Kann Arduino 8 Magnete steuern?
Tim Christensen
2018-03-12 21:44:21 UTC
view on stackexchange narkive permalink

Ich weiß sehr wenig über Arduino und noch weniger über das Programmieren eines. Bevor ich ein Board kaufe und lerne, wie man es programmiert, habe ich mich gefragt, ob meine Idee realisierbar ist.

Ich möchte den Arduino so programmieren, dass er nacheinander ein Bewässerungsventil nach dem anderen öffnet. Es würde ungefähr acht 24-Volt-Magnetventile geben. Jeder muss ungefähr 15 Minuten geöffnet sein, dann das nächste Ventil nacheinander öffnen und schließlich das vorherige Ventil schließen. Ähnlich wie bei einem Mehrzonen-Bewässerungsregler.

Ich sehe, dass ich möglicherweise einen Transistor im Stromkreis des Magneten verwenden muss. Mir ist jedoch nicht klar, ob der Arduino acht Magnete steuern kann, und wenn ja, benötigt jeder Magnet seinen eigenen Transistor?

willst du das wirklich? es unterscheidet sich von der Bewässerung. "Jeder muss ungefähr 15 Minuten geöffnet sein, dann das nächste Ventil nacheinander öffnen und schließlich das vorherige Ventil schließen." .... Die Reihenfolge muss in Ihrem Kopf absolut klar sein, sonst wird es schwierig zu schreiben sein Ein Programm, das macht, was Sie wollen.
Sind das AC- oder DC-Magnete? Ich sehe, dass viele Bewässerungsmagnete Wechselstrom sind.
Wenn dies ein pädagogisches Unterfangen ist: Willkommen. Wenn dies in angemessener Zeit erledigt werden muss, empfehle ich die Verwendung vorhandener Bewässerungslösungen. Es ist viel Zeit und Geld erforderlich, um nicht nur das Gerät zu programmieren, sondern auch Schaltmechanismen auszuwählen und sicherzustellen, dass sie für das Feld gehärtet sind
Sieben antworten:
Michel Keijzers
2018-03-12 21:55:01 UTC
view on stackexchange narkive permalink

Ein Arduino kann (mindestens) 8 Geräte steuern. Anstelle eines Transistors ist es möglicherweise viel einfacher, einen 8-Wege-Relais-Controller zu verwenden, etwa:

8-Relais-Modul

Schließen Sie einfach alle 8 an Ventile zu den Relais, Sie versorgen das Relais mit einer separaten Quelle für die Ventile und verbinden die Stifte mit dem Arduino.

Diese haben Optokoppler, die eine zusätzliche Sicherheit zwischen den Ventilen und dem Arduino bieten.

8 Relaismodul mit Optokopplern (Hinweis: Ich habe gerade den ersten Eintrag eingegeben, den ich gefunden habe. Möglicherweise finden Sie bessere / billigere ähnliche Artikel, z. B. bei AliExpress für 4 US-Dollar.)

Wie Andre in einem Kommentar unten sagte, können Sie ein Arduino Mega verwenden, wenn Sie mehr Ausgänge benötigen. Wenn Sie eine Herausforderung suchen, können Sie einen Multiplexer-IC wie 74HC595 verwenden (viele Beispiele für Arduino).

Für die Steuerung eines Relais mit einem Arduino gibt es genügend Beispiele, für 8 ist es ähnlich (verwenden Sie einfach 8 GPIOs) oder einen Multiplexer-IC.

Ja, abhängig von der Strommenge ist es besser, eine physische Isolation zwischen Ihrer 24-V- / Hochstromseite der Ventile zu haben. und die 5V / Niedrigstromseite des Arduino.
@ChadG Für 10 Euro würde ich das Risiko nicht selbst eingehen, vorausgesetzt, die Ventile sind teurer (oder das Risiko, nicht zu bewässern, wenn dies das Hauptziel ist).
Diese Relaismodule haben normalerweise eine Optokopplerisolation, prüfen sie jedoch.
Wenn Sie mehr als I / O benötigen, verwenden Sie einfach einen Arduino Mega.
@AndreCourchesne Vielen Dank für die Kommentare, ich habe meine Antwort entsprechend aktualisiert.
Warum sollte man ein 70 IO Mega vorschlagen, um 8 Ausgänge zu steuern?
@CrossRoads Nur für den Fall, dass er mehr Outputs benötigt ... für 8 wird es nicht benötigt, aber ich weiß aus Erfahrung, dass Projekte leicht wachsen können.
@MichelKeijzers Ich stimmte Ihnen zu, falls dies nicht klar war. Ich sagte, eine physische Isolation (Relais) sei besser, als sie mit einem Transistor zu betreiben. Optokoppler an den Relais zu haben ist schön, aber wahrscheinlich übertrieben für diese kleinen Relais.
@CrossRoads Da das OP kein Board gekauft hatte und immer noch seine Optionen untersuchte (und nicht sagte, ob er ein bestimmtes Board geplant hatte), schlug dies vor, dass ein Mega nicht aus der Reihe war. Die Ventile allein machen 2/3 der E / A eines Uno aus, und es wäre sinnvoll, wenn er später eine Art Sensor oder manuelle Steuerung hinzufügen möchte.
Bei der Wahl zwischen Uno und Mega geht es auch um Flash / RAM. Bei einigen Anwendungen kann der Uno 2k-RAM ein Problem sein.
@Chad Vielleicht sind Optokoppler übertrieben, aber diese All-in-Once-Module sind so billig, dass ich nicht denke, dass dieses "Extra" ein Problem ist.
Robert Wilkinson
2018-03-13 04:22:20 UTC
view on stackexchange narkive permalink

Ja, Sie benötigen etwas, um 24-Volt-Magnete anzutreiben, da der Arduino dies nicht alleine kann.

Meine bevorzugte Methode wäre die Verwendung eines ULN2803-Geräts, mit dem Sie alle diese acht ansteuern können Magnetspulen (vorausgesetzt, sie benötigen weniger als 500 mA oder Strom) und verfügen über einen eingebauten Schutz gegen Spannungsspitzen beim Ausschalten der Magnetspule.

http://www.ti.com/lit/ds/symlink /uln2803a.pdf

Diese Geräte sind bei eBay erhältlich.

Die Software ist für diese Anwendung recht einfach und sollte für jeden, der eine liest, gut geeignet sein Arduino-Tutorial.

Alan Campbell
2018-03-13 14:15:30 UTC
view on stackexchange narkive permalink

Ein Magnet hat zwei Drähte und zwei Möglichkeiten, ihn zu betreiben:

1- Durch Schließen eines Relais werden 24 V ausgegeben, wobei die Rückleitungen auf 0 Volt gehen.

2- 24V Geht immer aus und ein Relais kann das Rückleitungskabel auf 0 Volt kurzschließen.

Testen Sie in beiden Fällen 2, indem Sie die Drähte zu einer Steuerplatine führen und die Magnetspulen manuell aktivieren. Wenn dies funktioniert, fügen Sie die Arduino-Relaissteuerung hinzu, wie andere vorschlagen.

Das Beibehalten der Schalter hilft, wenn Sie einen Magneten manuell bedienen möchten oder wenn Sie den Verdacht haben, dass ein Relais / Magnet defekt ist.

John Taylor
2018-03-14 00:58:14 UTC
view on stackexchange narkive permalink

Die meisten Bewässerungsventile werden mit Wechselstrom betrieben und verwenden normalerweise 24 V Wechselstrom bei etwa 250 mA (Verdoppelung auf 500 mA für den Einschaltstrom). Der beste Weg, diese zu fahren, ist über einen Triac. Wenn Sie eine Isolation zwischen Ihrem Regler und der Ventilspannung wünschen, ist ein Optokoppler mit Triac-Ausgang der beste Weg. Eine gute Wahl angesichts des typischen Bewässerungsventils ist der Vishay VO3023: 5-mA-LED-Eingangsstrom und 1-A-Ausgangsstrom und nur etwa 0,50 USD pro Einheit. Triacs sind ziemlich robuste Geräte und haben keine beweglichen Teile wie Relais, daher sind sie ziemlich zuverlässig.

NomadMaker
2018-03-13 04:54:22 UTC
view on stackexchange narkive permalink

Ein Arduino-Board ist lediglich ein Mikrocontroller mit dem Material, das erforderlich ist, um es am Laufen zu halten. Mit stufff meine ich Gedanken wie den Spannungsregler, der die Leistung liefert, den Oszillator, der die Frequenz für den Controller liefert, die GPIO-Pin-Anschlüsse und so weiter.

Dies ist eine sehr einfache Anwendung und könnte leicht von einem Arduino gemacht werden. Die Programmierung muss nicht schnell laufen. Sie machen immer nur eine Sache gleichzeitig.

Ich habe ein 8-Kanal-Relaismodul gefunden, das genau das tun sollte, was Sie brauchen. Sie würden vier von ihnen brauchen, aber sie sind nur etwa 11 Dollar pro Stück. Ich habe dieses Gerät noch nie benutzt, daher weiß ich nicht, wie gut es funktioniert, aber die technischen Daten scheinen richtig zu sein. Sie können von fast jedem Computer mit Ausgangspins mit 5 Volt gesteuert werden. Sie müssten also ein Arduino mit 5-V-Ausgangspins verwenden.

Sie benötigen wahrscheinlich mehr Ausgangspins als ein Standard-Arduino, aber das ist mit der Mega-Version einfach genug.

Es sind nicht 24 Ventile. es sind 8 24V Ventile :-)
Das macht es noch einfacher. Das Modul, das ich angeschlossen habe, kann 30 V DC bei 10 Ampere verarbeiten. Es kann auch Wechselstrom bis zu 250 V verarbeiten. Und jetzt wird nur noch einer benötigt.
CrossRoads
2018-03-12 21:57:07 UTC
view on stackexchange narkive permalink

Ja, Arduino kann acht Transistoren steuern.

Jeder Magnet benötigt einen Transistor.

Ideal wäre die Verwendung von N-Kanal-MOSFETs mit Logikpegel, die der Arduino 0 / 5V-Ausgang hat kann direkt fahren. IRFL540 wird oft erwähnt, Sie können sie auf digikey.com erhalten. Fahren Sie das Gate durch einen 150-Ohm-Widerstand und haben Sie einen 10K-Widerstand vom Gate zum Gnd, so dass der Transistor ausgeschaltet ist, während der Arduino zurückgesetzt wird (und die E / A-Pins alle zu Eingängen zurückkehren).

Abhängig von der aktuellen Ziehung können Sie möglicherweise ein Schieberegister mit Open Drain-Ausgängen verwenden. TPIC6C595, 100 mA. TPIC6B595, 150 mA. TPIC6595 und TPIC6A595 sind noch stromfähigere Teile.

Fügen Sie eine Diode mit der gleichen Stromstärke über die Magnetspule und die Kathode auf +24 V hinzu, damit der von der Spule beim Schließen des Transistors erzeugte Stromstoß auftritt irgendwo zu zerstreuen. (Der Strom in einer Spule möchte weiter fließen, wenn das Magnetfeld in der Spule zusammenbricht. Er kann nicht durch den ausgeschalteten Transistor fließen, fließt also durch die Spule und geht im Drahtwiderstand der Spule verloren.)

Dies ist keine Elektronik. Stapelaustausch
Ihr Kommentar macht keinen Sinn. Arduino-steuernde Transistoren sind eine Hauptfunktion dessen, was sie tun können.
@Juraj zu wissen, wie der elektronische Teil eines Systems an ein Arduino angeschlossen wird, ist ein wesentlicher Bestandteil der Auswahl / Verwendung von Arduino-Geräten. Warum hast du gedacht, dass es für diese SE vielleicht nicht zum Thema gehört?
Warum nicht Relaismodule verwenden? oder irgendein anderer Aktuator oder Sensor, den Sie als Modul mit werkseitig mit so kleinen Bauteilen verlöteter Stützschaltung verwenden können? Was kann er für die Anwendung spezialisierter machen als das der Regalrelaisplatine? Die Fragen sind nicht rhetorisch. Ich möchte wirklich wissen, was der Nachteil ist.
Die Magnete, die ich kürzlich für mein Bewässerungssystem installiert habe, wurden mit 24 V Wechselstrom betrieben, was einen MOSFET- oder BJT-Transistor ungeeignet machen würde. Ein Triac könnte in diesem Fall besser sein.
Bob Croft
2018-03-14 02:40:20 UTC
view on stackexchange narkive permalink

Eine alternative Methode ist die Verwendung eines I2c-Port-Expanders wie z. B. eines PCF8574. Diese sind als Breakout-Boards erhältlich. Durch Auswahl einer anderen I2C-Adresse auf jeder Breakout-Karte können bis zu 64 Relais mit optisch isolierten Relaismodulen gesteuert werden. Somit 64 Ausgänge oder Eingänge mit nur zwei Arduino-Pins.

Das braucht man für 8 kaum


Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 3.0-Lizenz, unter der er vertrieben wird.
Loading...