Hallo Liebe Community,
ich habe zur Zeit eine Aufgabe vorliegen, bei der ich mir im Ansatz
nicht ganz sicher bin und wollte daher mal Rat von Leuten einholen, die
Erfahrung haben.
Es geht dabei darum, dass ich mit Hilfe eines Arduino Boards eine
relativ große Last an- und ausschalten muss. Es handelt sich dabei um
eine elektrische 12VDC Heizung mit 100W; also ca. 8,3A, die
temperaturabhängig gesteuert werden soll (als Grundlage werden mehrere
Sensoren mittels des Arduino ausgelesen; das ist bereits alles da und
nicht von mir "fabriziert"^.^). Die Heizung wird ganz simpel über 2
Drähte angeschlossen. Dafür brauche ich nun eine Schaltung, da das
Arduino Board das logischerweise nicht stemmen kann. Bisher habe ich
mich noch nie mit so einer "Leistungselektronischen" Aufgabe im
Zusammenhang mit einem µC befasst und bin daher sehr vorsichtig, da es
doch um sehr große Ströme geht (im Vergleich zu ein paar mA :-) ). Ich
habe mir im Vorgang das hier durchgelesen:
http://www.mikrocontroller.net/articles/Relais_mit_Logik_ansteuern . Ein
lehrreicher Beitrag für mich. Es gibt keine großartigen Anforderungen an
die Zuschaltung. Sie muss nicht besonders schnell schalten können oder
so. Es kann durchaus Zeiten geben, in denen tagelang nicht geschaltet
wird.
Meine Frage dazu ist jetzt erstmal:
- Brauche ich überhaupt unbedingt ein Relais? Geht das eventuell nur mit
einer Art Leistungstransistor, ohne dahinterstehendes Relais, der ggf.
bei 5V die 8,3A durchschalten kann? Damit kenne ich mich wie gesagt
wenig aus und möchte nicht einfach irgendwas bunt rumprobieren bei
diesen Leistungen.
Des Weiteren ist meine Vorkenntnis bezüglich Bauformen, Ausführungsarten
usw. von Relais nur das, was ich jetzt in einiger Zeit googeln so
erlesen konnte. Was bietet sich denn da jetzt an, um das Ganze erstmal
mit einem einfachen Steckbrett auszuprobieren? Ich bräuchte ja ein
Relais, was bei einer Last von 100W bei 12VDC wenigstens die 8,3A
zuschalten kann. Wäre das z.B. sowas:
http://www.amazon.de/Relais-Module-Arduino-Special-Sensor/dp/B009P04ZKC
? Vielleicht hat diesbezüglich ja jemand ein paar nützliche Tipps/Links
für mich, an was ich mich bei der Auswahl von solchen Bauteilen
orientieren kann.
Es tut mir leid, wenn ich damit im falschen Unterforum gelandet bin oder
einen Beitrag übersehen habe, der mir alle Fragen beantwortet. Ich bin
einfach sehr überzeugt, von dem individuellen, fallspezifischen
Fachwissen hier :-)
Viele Liebe Grüße,
Frank
PS: Bevor Grundlagendiskussionen angefangen werden: Weder die Sache mit
dem Arduino, noch die Dimensionierung der Heizung, sind meine Auslegung
bzw. Komponentenwahl. Das ist bereits alles da und ich soll es nur
verwenden.
Frank schrieb:> Brauche ich überhaupt unbedingt ein Relais?
Nein, die 8A bei 12V schaltet auch ein MOSFET ohne Probleme und
zusätzlicher Kühlung. Einfach ein n-Kanal-MOSFET in
Logiclevel-Ausführung und geringem Leitwiderstand direkt (oder besser
mit kleinem Widerstand) an einen 5V IO des Arduino-Moduls.
Roland ... schrieb:> Einfach ein n-Kanal-MOSFET in> Logiclevel-Ausführung und geringem Leitwiderstand direkt (oder besser> mit kleinem Widerstand) an einen 5V IO des Arduino-Moduls.
Aber nur wenn:
1. Die Massen der Heizung und die Masse des Arduinos verbunden werden
dürfen.
2. Du die Masse der Heizung schalten kannst
Siehe auch der Artikel hier: Transistor
Hallo Udo,
Wie genau darf ich das mit dem "Schalten der Masse" verstehen bzw. was
ist der Zweck davon? Ich hätte diesbezüglich erwähnen sollen, dass es
sich um eine Heizfolie/matte handelt. Die ist komplett Silikongemantelt
und hat nur zwei rausgeführte Spannungsanschlüsse. Willst du damit
sagen, dass ich doch ein Relais brauche?
Eine Sache die mir noch eingefallen ist: Ich schalte ja gut 8 Ampere.
Das kann ich gar nicht mehr mit so einem handelsüblichen Prototypenboard
aufbauen oder (zumindest nicht bei durchgängiger Last)? Die hatte ich
für solche Testzwecke bisher im ganz praktisch gefunden. Muss ich mir da
vorher die Schaltung auf eine extra Testplatine löten oder gibt es da
eine einfachere Idee?
Vielen Dank im Voraus
Frank schrieb:> dass es> sich um eine Heizfolie/matte handelt.
Das Schalten mit FET ist kein Problem. Du hast ja den Beitrag mit Relais
schon gelesen. Anstelle des Relais deine Matte und ein entsprechender
FET, z.B. den IRLZ34.
Den FET und die notwendigen Klemmen auf ein Stück Lochrasterplatine
löten und die Bahnen mit etwas Draht verstärken.
So, ich habe mal noch einen Schaltplan davon dran gehangen, wie ich mir
das jetzt nach Rolands Hinweis spontan vorgestellt hätte. Hinweis: Ich
habe nur eine 12VDC Spannungsquelle, die aber für die Stromstärke
ausgelegt ist, die die Heizung braucht. Ich hoffe ich habe jetzt auf die
Schnelle nichts vergessen.
Das Arduino Board schaltet dann über den MOSFET entsprechend die Heizung
Ein oder Aus. Ist das so richtig?
Ich würde den 180 Ohm auf max. 47 Ohm verkleinern und die 10k auf 47k
erhöhen, wird aber keinen gravierenden Einfluss auf die Schaltung haben.
Ansonst sollte es so funktionieren.
Ich hoere bei der FET Loesung schon den naechsten Hilfeschrei: "Hilfe
mein Arduino stuerzt beim schalten der Heizung ab"
@ Frank (Gast)
Aufgrund deines Kenntnisstandes wuerde ich dir eher zu der Relaisloesung
raten. Die ist galvanisch vom uC getrennt. Bei der Transistorloesung
must du bei den Stroemen schon einen guten Masseanschluss haben sonst
hast du Stoerungen in deiner Schaltung.
Eine alte Bauernregel heißt: Steuerteil und Leistungsteil TRENNT man.
Praktisch jede SPS benutzt diese Sicherheitseinrichtung.
Ein Fehler im Leistungsteil lässt dann die Steuerung nicht gleich in
Rauch aufgehen.
Dazu: Alleine die Spannungsabfälle auf der GND-Leitung, vagabundierende
Schaltflanken usw. können die Elektronik durcheinanderbringen.
Also erst einmal einen Optokoppler zwischen Arduino und
Leistungsschalter vorsehen!
Für die Arbeit danach gibts jede Menge Leistungs-Mosfets und passende
Treiberschaltungen.
Wenn die Leitung zur Heizung länger ist, dann wäre eine Freilaufdiode
zwischen Source des MOSFETs und dem 12V Anschluss sinnvoll, da damit
Spannungsspitzen aufgrund etwaige Leitungsinduktivitäten kurzgeschlossen
werden. Auch empfiehlt es sich die 12V Versorgung mit Kondensatoren zu
stützen, damit der plötzliche Einschaltstromsprung etwas gedämpft wird.
Eine gute Verdrahtung der Leistungsleitungen und ich sehe keine
Probleme.
Frank schrieb:> Ich hoffe ich habe jetzt auf die Schnelle nichts vergessen.
12V auf VCC vom Arduino dürfte (mindestens) einen Toten geben. Mehr als
5V wird der Arduino nicht vertragen.
Michael schrieb:> 12V auf VCC vom Arduino dürfte (mindestens) einen Toten geben. Mehr als> 5V wird der Arduino nicht vertragen.
Gemeint ist (hoffentlich) Vin des Arduino ...
LG, Sebastian
Guten Morgen,
Danke für eure zahlreichen Hinweise.
Natürlich gehts hier um den Spannungsversorgungsanschluss des Arduino,
nicht um einen Vcc Pin, entschuldige diesen Fehler. Da sind zwar die 12V
leider etwas verbraten (besser wären so 9V ca.), aber die sollte er ganz
gut aushalten können.
Mit den ganzen Hinweisen die hier so zusammengekommen sind, geht es doch
mittlerweile sehr in die Richtung des Links, den ich schon gepostet
habe, oder seh ich das falsch?:
http://www.amazon.de/gp/customer-media/product-gallery/B009P04ZKC/ref=cm_ciu_pdp_images_0?ie=UTF8&index=0
Guten Start in den Tag,
Frank
Wenn du es mit Relais machen willst und sonst wenig Erfahrung in
Elektronik hast, ist das Teil von Amazon gut.
Nur wenn du falsch verdrahtest, hast du die selben Probleme wie ohne
Optokoppler.
Hallo Hubert,
Ja, ich möchte eigentlich ganz gerne eine eigene Lösung ausprobieren,
weil ich das sehr spannend finde und zusätzlich mal ein dieser Teile mit
Relais von Amazon kaufen.
Was meinst du jetzt mit falsch verdrahten? Prämisse ist, dass ich - ich
nenns jetzt mal "ganz außen rum" - nur eine Spannungsversorgung
verwenden soll. Das heißt irgendwo gibt es zwangsweise mal eine
galvanische Kopplung der Stromkreise (mindestens an der Stelle, wo sich
die Zuleitung in Arduino und Heizungsleitung trennt und die
zusammengeführten Massen). Ich nehme jetzt mal an, dass das Arduino
Board an Vin/Masse entsprechende Vorkehrungen besitzt. Durch die
galvanische Trennung des Steuerpins mittels Optokoppler ist man doch
dann auf der sicheren Seite?
Und ja, mit dem selber entwerfen von elektronischen Schaltungen (mal mit
Ausnahme von dem ganzen Arduino Evaluationszeug) habe ich bisher wenig
Erfahrung, komme eher aus der Programmierersparte :) Ich gebe mir größte
Mühe mich vorher ordentlich zu belesen, eh ich irgendwen nerve.
Hat jemand für den Optokoppler einen Hinweis? Die gibts ja wie Sand am
Meer auf Reichelt. Ich hätte ihn jetzt beschaltet, wie es hier
http://www.mikrocontroller.net/articles/Optokoppler im ganzen linken
Teilbild gegeben ist (nicht invertierend). Da ich ja relativ selten
schalten werde, muss der Koppler keine krassen Schaltfrequenzen oder
sowas bringen, er muss halt die max. 40mA/5V vom Arduino auf den MOSFET
bringen können. Bzw. mit entsprechendem Vorwiderstand für die Diode auch
weniger Strom.
mfG Frank
PS: Damit ihr auch nicht nur mit einem "Gast" redet, habe ich mir einen
Account gemacht. Danke für eure Hilfe bis hier hin.
Ein Optokoppler macht nur Sinn wenn Steuerspannung und Schaltspannung
potentialgetrennt sind.
Eine Rückwirkung auf den Arduino kann nur bei ungünstiger Verlegung der
Steuerleitung entstehen.
Weitere Störungen entstehen wenn die Spannungsquelle zu schwach
dimensioniert ist und daher beim Schalten Spannungseinbrüche entstehen.
Oder wenn der Arduino und deine Heizmatte aufgefädelt sind. Also von den
Klemmen der Stromquelle zum Arduino und dann weiter zum FET oder Relais.
Richtig ist von der Stromquelle zum Arduino und davon getrennt von der
Stromquelle zum FET oder Relais, und das mit Plus- und Minus-Leitung.
Mit deiner Optokopplerschaltung kannst du keinen Transistor anschalten,
da ist noch ein Basisvorwiderstand notwendig.
Wenn du einen FET damit ansteuerst wird der zwar schnell eingeschaltet,
aber über den 10k Widerstand sehr langsam ausgeschaltet.