Hallo,
ich habe seit einiger Zeit das "Spartan 3 Starter Kit" Board. War früher
nur in der Software tätig, und nun wird es Zeit etwas meine
Hardwarekenntnisse zu erweitern. Nach 20 verschiedenen Versuchen und 500
Fehlschlägen, soll sich das Resultat nicht mehr auf eine blinkede LED
auf dem Board oder die Ausgabe per serielle Schnittstelle beschränken.
Ich möchte mit Hilfe der IO Pins Geräte ansteuern.
Habe schon etliches gegoogelt, aber noch nichts gefunden, dass jemand
mal sowas gemacht hat. Da ich kein Physik mehr haben durfte, bin ich
Elektrortechnisch nicht so bewandert, aber generell habe ich mir das so
vorgestellt: An die IOs hängt ich einfach ein Relais, welches ja durch
den FPGA gesteuert werden kann und somit auch den Arbeitsstromkreis
steuert. Ich möchte normale Haushaltsgeräte betreiben also (~230 V).
Deswegen auch das Relais. Probiert habe ich das nicht, da ich vor
folgendem Angst habe: Ein relai ist ja eine Spule, also ist der
Widerstand nicht besonders hoch. Das bedeutet, dass ein "relativ großer"
Strom im Steuerstromkreis fließt. Mein bedenken ist nun, das der FPGA
nicht so einen großen Strom verkraftet und kaputt geht. Kann das
passieren? Ab welchen Strömen ist das der Fall? Oder ist das unwichtig,
da die Spannungen so gering sind (3,3 im FPGA, 5 V Output) Habe auch
schon überlegungen bzgl. des Relais angstellt ... Wenn das Relais
schalten gibt es doch Induktionsströme ... können die dem FPGA schaden?
Muss ich da eine Schutzsdiode einbauen? Wie ihr seht habe ich Fragen
über Fragen ... und weiß nicht so richtig wo ich anfangen soll. Nochmal
zusammengefasst das wichtigste:
1. Ist es möglich normale Haushaltsgeräte (Glühlampe, Kaffeemaschiene,
Verstärker...) über dieses Board zu steuern (steuern im Sinne von Gerät
bekommt Strom oder nicht)
2. Ist ein relais die richtige Wahl (da im Steuerstromkreis ja viel
geringere Spannungen herschen)
3. Was mucc ich dabei beachten? Kann ich das relais einfach an das Board
schließen oder fließen dann zu große ströme?
Habe bereits mal in die DOKU geschaut, da wird aber nichts über Ströme
beschrieben.
vielen Dank für eure Hilfe,
Marc
Nein, auch 1,1 Vo können Ampere treiben! Was der Ausgang kann, steht im
Datenblatt. Dicke Spulen - womöglich noch ohne Spannungsbegrenzung -
kann er definitv NICHT!
Du kannst, wenn du Basteln willst, einige CMOS-GAtter dranhängen. Die
können ordentlich treiben und kosten 0,50, wenn sie abrauchen. Ich würde
an einen FPGA-pin alle Eingänge eines Und dranhängen und die Ausgänge
über kleine R parallel schalten.
Steuern kannst du das Kit über die serielle Schnittstelle. Brauchts halt
noch einen CORE, der das kann und dein individuelles Protokoll.
Hallo,
vielen Dank für deine Antwort. Datenblatt ist prima. Da habe ich auch
schon reingeschaut. Da finden sich Werrte von 5 mA bis 12 mA. Ich denke
mal bis 10 mA sollte nichts passieren? Wo schaust du denn speziell nach?
Also das steuern per UART und so, funktioniert alles. Das ganze läuft
über den PicoBlaze. Es geht wirklich nur darum, dass anstatt den LEDS
auf dem Board eben Lampen an der Decke blinken sollen :-)
Ich merke schon, die Sache mit den Relais sollte man verwerfen, auch
schon wegen dem Verschleiß. Du hast CMOS angesprochen. Das hatte ich vor
1 Jahr in der Uni behandelt. Mir ist hängengeblieben, dass das CMOS in
den stabilen Zuständen Stromlos funktioniert, dank der MOSFETS. Also es
fließt kein Strom, sondern die Spannungen reichen aus. Da stellt sich
für mich sofort eine Frage:
Wenn die Schaltung wechselt, fließt ja trotzdem Stromvom gate zum
Source. Wie groß ist der? Zerstört der bereits den FPGA?
Ich denke mal du willst nicht über den MOSFET den Strom zur Arbeit
jagen, soll ich hinter die MOSFETS dann das relai hängen? Oder gibts dan
andere Möglichkeiten zwecks verschleiß.
Vielen Dank nochmals. ich merke praktis ist 10000 x besser als das
theoretische UNI gelabere.
@marc
prinzipiell kann man natürlich verbraucher mit einem fpga schalten.
>Ich merke schon, die Sache mit den Relais sollte man verwerfen,
also wenn du 230v Verbraucher schalten willst würde ich es NUR über
relais machen. (egal ob solid-state oder die mechanischen)
Mit einem CMOS Gatter kannst du dann die Ströme die das relais braucht
schalten. Es ist schon (fast) zwingend notwendig einen solchen Gatter
(oder aber auch Relais-Treiber wie der ULN einer ist).
Das Thema spannungsspitzen, hervorgerrufen durch spulen, darf man nicht
unter den tisch kehren. Vergess blos nicht die freilaufdioden, denn
sonst kann es dir dein CMOS-Gatter bzw. Treiber plätten. Und wenn du
großes Pech hast auch deinen FPGA (wenn die Spannungsspitze so groß ist
das diese durch deinen Gatter durchschlägt. Denk daran, CMOS ist was das
angeht weitaus empfindlicher als ttl).
so gesehen gelten für das steuern von verbrauchern die selben regeln wie
für einen Mikrocontroller. da kann man sich dann auch einige
schaltungsbeispiele abkupfern.
aber in sofern mal ne frage : warum willst du mit einem fpga so langsame
sachen machen ?
ist das eine übung für dich ? dann ist ok.
wenn du mit dem spartan3 richtig was machen willst, versuche doch mal
eine ausgabe per vga-schnittstelle zu machen. ab da wirds interessant,
und es ist auch gar nicht soo schwierig.
schau auch mal auf die seite fpga4fun.com
da stehen schon einige lustige (aber kleine) projekte drin, die allesamt
gut beschrieben sind (z.b. Servo Steuern, Töne erzeugen, Schnittstellen
und noch div. andere kleinigkeiten. allerdings ist das meiste in verilog
geschrieben.
gruß
rene
>also wenn du 230v Verbraucher schalten willst würde ich es NUR über
relais machen.
Man sollte generell wieder mehr mit Relais machen. Auch Computer z.B:,
dann hört man , wenn im Hintergrund das Windows wieder unerlbaut Daten
funkt.
Nee im Ernst: Nimm Dir eine alte Lichtorgel und steuere das ganze
indirekt an: Du brauchst einen schnellen Optokoppler wegen der
Potenzialtrennung.
Hallo,
ich habe die letzten Tage rumprobiert und leider doch zu viele Fehler
gemacht und mir so mein Spartan 3 Board kaputt gemacht. Aber dank
Nebenjob konnte ich mir grade so Ersatz ranschaufeln.
Also jetzt bin ich erstmal aufgeklärt warum es wahrscheinlich kaputt
gegangen ist. Ich war im Elektroladen und habe so eine Art Relais, also
kein direktes aber so ne Minivariante. Habs nicht genau verstanden. Der
Elektrofreak meinte, das köännte man bedenkenlos mit Logik schalten.
Habs rangehangen und ab dem Zeitpunkt konnte ich den FPGA nicht mehr
konfigurieren und jetzt geht garnichts mehr am Board. Habe dann nochmals
nachgemessen, den widerstand und kam nach einer Berechnung auf einen
Strom von 40 mA der geflossen sein muss. Das war wohl zu viel.
Okay, so viel zur vergangenheit. Alle machen fehler und da ich nicht so
ein Theorie Uni Mensch sein will, wie die meisten meiner Professoren,
habe ich mir halt zwei neue Boards bestellt. Ein sehr Logik optimiertes
für den Test eines eigenen Prozessors (Spartan 3E Starter Board mit dem
XC3S500E-4FG320C Chipsatz, also mit 500 k Gatter). Und eins für
Minisachen zum testen: das basys von http://digilentinc.com/. Hat einen
Spartan 3e 100 Chip. Der vorteil hier ist, das es günstige Platinen
hierfür gibt, die man ranstecken kann, die genau diese hier theoretisch
diskutiere Transistorschaltung beinhalten. Ich wills aber nicht nur
anwenden sondern auch verstehen. Also habe ich mir die datenblätte mal
von Spartan 3 reingezogen. Das Problem ist, hier finden sich zwar einige
milli Ampere Angaben, aber ich konnte diese nicht 100 % zuordnen, welche
sich nun auf welche Pins beziehen. Vielleicht könnte einer von euch mir
mal auf die sprünge helfen. Hier:
http://www.xilinx.com/xlnx/xweb/xil_publications_d...
ist die Adresse des Datenblatts des alten Spartan 3, welches ja nun
kaputt ist. Vielleicht könnte mir hier jemand mal zeigen, wo die mA
Angabe steht, welche ich an die normalen USERPins anlegen kann. Wie
gesagt, ich will ja aus meinen Fehlern lernen.
Ich möchte zwar hauptsächlich in der Informatik tätig bleiben (da ich
das ja auch studiere), aber so etwas Elektrotechnik kann nicht schaden.
Für das oben stehende Problem haben wir uns ja nun schon geeinigt an
einen FPGA eine CMOS schaltung ranzuhängen und an die dann das Relais.
Habe mich letztens nochmal mit MOSFETs beschäftigt ... Theoretisch würde
sich ja mein Problem schon lösen, wenn ich 2 Inverter
hinternanderschalte. Einzelne Mosfets sind ja viel zu sensibel, also
müsste mans chon einen fertigen baustein nehmen. Wo finde ich
handelsnamen und schaltpläne? Hatte bei Conrad mal geschaut, da stehen
aber nur die namen und weder irgendwelche PIN belegungen noch
irgendwelche einsatzgebiete. Außerdem hätte ich noch ein
verständnisproblem. Also zwei inverter hintereinander würden ja
funktionieren. Wie gehen ja jetzt mal von einzelnen MOSFETs aus.
Bestehend aus gate, Drain und Source. Diese werden eben zu Invertern
zusammen geschalten. Also muss der Inverter 3 Eingänge und 1 Ausgang
haben. Zu den Eingängen: Das was aus dem FPGA rauskommt (worauf keine
last liegen darf). Dann einmal +5V (die dann aich hinten rauskommen die
das Relais schalten sollen) und einmal die Masse. Meine Frage ist jetzt:
Die externe Spannungsquelle, die die +5 V liefert, hat ja auch eine
Masse. Muss diese Masse mit der Masse des FPGA Boards
zusammengeschlossen werden? Und dieser Zusammenschluss dann in den
inverter geführt werden? Theoretisch ja, nur so würde es ja sinn machen,
da der Eingang ja gegenüber der Masse die Mosfets schalten muss: Dann
habe ich aber bedenken: Der doppelte Inverter gibt ja dann den Ausgang
gegenüber der Masse aus. Im "Aus" fall ist Masse und Ausgang
zusammengeschlossen, d.h. alles ist Okay. Was ist aber im "ein" fall
wenn das Relai geschalten wird. Dann fließt über die externe
Spannungsquelle +5V über die Mosfets (ich hoffe die können die
Stromstärke ab) über das relais und zurück zur masse. Also in diesem
Stromkeis fließen dann die, sagen wir rund 50 mA. Da ja aber die masse
auch verbunden mit dem FPGA Board ist, kann es nicht passieren, dass
auch strom dort zurückfließen kann? Das macht zwar theoretisch keinen
sinn, da ja die Spannung von der externen spannungsquelle ausgeglichen
wird, aber wär es da sicherer vielleicht eine diode ranzuhängen zwische
boardmasse und externer masse?
Vielen dank für eure Hilfe und eure Bemühungen. Ihr seid wenigst
kompetent. Von meinen Profs höre ich meistens nur, dass sie nur
theoretisch tätig sind ....
Marc
Am Besten, du besorgst Dir mal ein Grundlagen- und ein Schalttungsbuch.
Was Du alles wissen musst, ist nicht verbal in zwei/drei Themn zu
kommunizieren,
Hast du irgendwelche speziellen Buch Empfehlungen? Wie gesagt bin nicht
dumm in der Uni und in dem Fachgebiet, hatte eben nur kein Physik mehr.
Vielleicht könnte mir auch speziell mal jemand diese Schaltung aufmalen?
Marc
>Dann fließt über die externe Spannungsquelle +5V über die Mosfets>(ich hoffe die können die Stromstärke ab) über das relais und>zurück zur masse.
Spannung fliesst nicht ab. Strom fliesst.
Die Massen müssenverbunden sein, es sei denn Du nutzt Potenzialtrennung
über Optokoppler. Deine Bedenken bez des Rückflusses in das Board sind
ungebegründet. Nur, wenn Du von dort aus treibts, liegt dort ein
Stromkreis vor.
Marc wrote:
> Hast du irgendwelche speziellen Buch Empfehlungen? Wie gesagt bin nicht> dumm in der Uni und in dem Fachgebiet, hatte eben nur kein Physik mehr.> Vielleicht könnte mir auch speziell mal jemand diese Schaltung aufmalen?>> Marc
Sorry, wenn ich das jetzt hier sage, aber wie du selbst
zugibst hast du von Physik und Elektrotechnik nicht viel
Ahnung.
Deshalb:
Lass die Finger weg von 230 Volt!
230 Volt ist Lebensgefährlich!
Probier es erst mal mit kleineren Spannungen (24 V oder
so). Den Relais ist nacher dann egal ob du
24V oder 230 Volt schaltest. Vorrausgesetzt du verwendest
Relais die beide Spannungen am Kontakt schalten können.
Gruß
Ralf
> ich habe die letzten Tage rumprobiert und leider doch zu viele Fehler> gemacht und mir so mein Spartan 3 Board kaputt gemacht.
Argh!
> Also jetzt bin ich erstmal aufgeklärt warum es wahrscheinlich kaputt> gegangen ist. Ich war im Elektroladen und habe so eine Art Relais, also> kein direktes aber so ne Minivariante. Habs nicht genau verstanden.
Ich hoffe der Typ im Elektroladen hat etwas mehr Ahnung als deine
Erzählung befürchten lässt.
Damit du zumindest die armen FPGAs nicht weiter hinwegmordest, schließe
irgendwelche Relais-Sachen am besten nur optisch getrennt an das Board,
dann können irgendwelche Kurzschlüsse/Überspannungen etc. zumindest
nicht das Board töten, höchstens den Experimentator.
Machs wie in der Zeichnung: An das Board kommt nur die linke Seite des
Optokopplers. Der Ausgangspin des FPGAs geht per Vorwiderstand (ca.
1000-2200 Ohm) an die LED des Optokopplers, damit ist der Strom begrenzt
und er FPGA brennt nicht durch.
Zu der rechten Seite des Optokopplers gibt es keinerlei Verbindungen per
Draht. Die rechte Seite wird mit einem extra (Stecker-)Netzteil
versorgt, das eine zu deinem Relais passende Spannung hat. Die in der
Spannung umschaltbaren Teile bieten sich an.
Als Optokoppler kannst du nehmen was dein Eletronikfuzzi da hat, z.B.
den CNY 17
http://www.vishay.com/docs/83606/83606.pdf
Oder was ähnliches, die 4N26,4N27, etc. Reihe z.B.
Transistor genauso, einen BC548 hat er wahrscheinlich, der kann einen
Strom bis 100mA ab, das sollte für die Relaisspule reichen. Andere
Ähnliche tun es auch. Pinbelegung (Emitter, Kollekort, Basis)-> siehe
Internet.
Wenn du an das Relais (nimm ein echtes, mechanisches) tatsächlich 230V
dranhängst, dann sei vorsichtig. Wenn du helle Lampen Schalten willst
versuch es evtl. erstmal mit 12V Halogen, bei denen du mit dem Relais
nach dem Trafo auf der 12V Seite schaltest.
Wenns unbedingt 230V sein müssen: Es gibt Funksteckdosen, da muß man nur
die Fernsteuerung schlachten und die Taster per Elektronik (z.B.
Optokoppler) überbrücken. Sehr bastlerfreundlich.
Und bevor du noch ein Board killst, frag lieber nochmal nach.
Ich weiß nicht ob du schon löten kannst, und wie du den mechanischen
Aufbau geplant hast. Am einfachsten sollte das mit einer
Lochrasterplatine gehen, in die du die Bauteile steckst und auf der
anderen Seite verlötest, so ähnlich wie auf dieser Webseite (ist eine
komplett andere Schaltung, geht nur um den mechanischen Aufbau):
http://www.ocinside.de/go_d.html?http://www.ocinside.de/html/modding/ultra_ir_receiver/ultra_ir_empfaenger_loeten_d.html
HTH
Randy
Vielen Dank für eure Hilfe. Hab das mittlerweile soweit hinbekommen.
Kann jetzt ströme von max. 200 mA fließen lassen. Aber nun stellt sich
schon wieder ein neues Problem: Die Relais unterliegen zu starker
mechanischer abnutzung ... Der Typ aus dem Elektroladen hat mir da ein
Buch empfolen: 306 Schaltungen. Da soll sowas drin sein, wie man das
ganze ohne Relais realisieren kann.
Nochmals Danke. Besonders für die Zeichnung. Sehr nett und hilfsbereit
:-)
Marc
Hmm, versuch nie wieder mich summ zu machen!
Da ich als erste Anwendung von externen Geräten eine Art Lichtorgel
bauen wollte, musste ich wohl oder übel merken, dass bei schnellen
Schaltvorgängen die Relais keine 30 Minuten mitmachen.
@Marc
>Da ich als erste Anwendung von externen Geräten eine Art Lichtorgel>bauen wollte, musste ich wohl oder übel merken, dass bei schnellen>Schaltvorgängen die Relais keine 30 Minuten mitmachen.
Naja, die richtige Beschaltung vorausgesetzt, halten Relais auch bei
schnellen Schaltungen im Sub-Sekundenbereich schon länger als 30 min.
Stichwort Snubber.
Für ne Lichtorgel ist ein Photorelais/Phototriac das Mittel der Wahl.
z.B.
http://www.reichelt.de/?SID=200QtHpqwQARQAABN5QxM9af3ed24651c9786d702bc3a6edfd1f8;ACTION=4
MFg
Falk