Zuvor haben wir eingehend über Möglichkeiten der Eingangsbeschaltung zu
FPGAs diskutiert. Weil es so interessant war möchte ich nun noch gerne
über mögliche Ausgangsbeschaltungen diskutieren.
Muss-Anforderungen:
1. Sicher bei Berührung des Ausganges mit statisch aufgeladenen Teilen
2. Kurzschlussfest wen der geschaltete Ausgang mit Ground verbunden ist.
3. Ausgangspegel 0, 5 V
4. Maximale Ausgangsfrequenz 1 MHz
Kann-Anforderung:
5. Leuchtdiode zur Anzeige des Schaltzustandes
Fehlt eine Anforderug (Abgesehen vom Temperaturbereich, Feuchte und
Vibrationsfestigkeit) für den Einsatz im industriellen Umfeld?
Mein Design sieht wie im Bild aus. Ich glaube aber nicht, dass es den
genannten Anforderungen genügt. Gerade auch, wenn man versehentlich 24 V
von aussen anlegt.
2, 3, 4 und 5 wären erfüllt.
Für 1. könnten man evtl. eine Schottkey-Diode in Serie einbauen. Dann
erreicht man halt nicht mehr die 5 V am Ausgang...
Ein nachgeschalter Optokoppler wäre. Der liesse sich bei Beschädigung
wenigstens relativ leicht tauschen:)
> den Einsatz im industriellen Umfeld?
Das passt m.E. nicht zu
> 3. Ausgangspegel 0, 5 V
An den Aktorschnittstellen sind hier idR. 24V.
Und das hier ist für eine IO-Schnittstelle auch etwas hoch gegriffen:
> 4. Maximale Ausgangsfrequenz 1 MHz
Welcher Aktor sollte das sein?
Oder willst du damit eine Art "Zwischenwelt" zwischen FPGA und 24V
einführen? Was soll an den Ausgang angeschlossen werden?
>3 Ausgangsspannung 0..5 V
Ja, hast recht. Es würde auch ausreichen, wenn das 8 Ausgänge könnten.
Ich möchte Schrittmotorkarten anschliessen (25000 Mikroschritte bei 4 mm
Spindel und 100 m/min). Mechanisch würde man bei dieser Geschwindigkeit
wahrscheinlich Spindeln grösserer Steigung verwenden (z.B. 20 mm), man
wäre dann aber immer noch bei 200 KHz.
Ok, 200 KHz würden als Anforderung auch ausreichen:)
Diese Schrittmotorkarten sind oft mir Optokoppler ausgesatattet.
Weiter möchte ich zwei PWM-Signale mit ca. 100 KHz ausgeben.
Bei den anderen Ausgängen könnte die Ausgangsfrequenz deutlich geringer
sein. Ich weiss nicht ob hier Standards gibts, ein paar KHz würden aber
ausreichen, wenns leicht geht.
@Hogo Fogo
Wie würde eine Ausgangsbeschaltung nach deinen Vorstellungen dann bitte
aussehen?. Würdes du am Ausgang noch einen Pullup-Widerstand anbringen.
Und sähe die Siete FPGA -> Optokoppler aus.
Ich habe etwa 40 Ausgänge. Ganz schnell benötigt man da ja ordentlich
Fläche auf der Leiterplatte:)
Beste Grüsse
Geri
HSR412L heißt der Optokoppler den ich in einer ähnlichen,
hochempfindlichen und sauteuren Anwendung eingesetzt habe. Funktioniert
prima und du hast 100%ige Isolation und kannst mit den Ausgängen
jeglichen Mist machen ohne gleich dein FPGA zu zerschiessen ;-) Für
Eingänge ist das Teil auch super.
Platz ist natürlich der Preis, den Du für diese Lösung bezahlst...
Viele Grüße!
Nach wie vor offen ist ja, ob du überhaupt galvanische Trennung
brauchst.
> Diese Schrittmotorkarten sind oft mir Optokoppler ausgesatattet.
Offensichtlich nicht unbedingt...
Falls nicht, schaltest du einfach wie von dir gepostet Leistungstreiber
evtl. am IC Ausgang wieder mit den Dioden nach Vcc und GND. Dann geht
nur der Widerstand kaputt, falls da mal einer 24V anlegt.
Und die 75 Ohm liegen lustigerweise für die hochfrequenten Ausgänge
wieder im sinnvollen Bereich, um als Serienterminierung durchgehen zu
können...
Und für die langsamen Ausgänge kannst du ja solche Photomos-Relais
nehmen, (allerdings ist dann bei spätestens 500 Hz Schluss). Oder auch
sowas wie BTS724G & Co...
> Weiter möchte ich zwei PWM-Signale mit ca. 100 KHz ausgeben.
100kHz Zykluszeit? Mit welcher Auflösung? Da hast du bei 8 Bit auflösung
mal Ruck-Zuck eine kürzeste Impulsdauer von 10us/256 = 40ns beisammen.
Und das müsste deine Ankopplung natürlich übertragen können.... :-o
> Platz ist natürlich der Preis, den Du für diese Lösung bezahlst...
Der Satz müsste eher so heißen:
Platz und natürlich den Preis, das mußt Du für diese Lösung bezahlen...
Immerhin kostet so ein Ding knapp 2$ :-o
Also ich verwendie die Teile zum Schutz von FPGA, wo allein der FPGA
3000 Euro kostet. Dafür bekomme ich bis zu 4000V Isolation. Der
Themenersteller sollte sich seiner Anforderungen bewusst sein und dann
die beste Lösung wählen. Wildes Spekulieren führt zu nichts.
Gruß!
Hallo Hogo
Vielen Dank für deine Infos. Der Optokoppler ist ja richtig ein teures
Teil. Bei 40 Ausgängen kommt da ja einiges für einen Hobbiisten
zusammen...
Wie schaltest du ihn eigentlich FPGA-seitig bitte. FPGA-Ausgang mit
Pullup auf Ground/VCC?
Beste Grüsse
Geri
Hallo Lothar
Vielen Dank, habe deinen Beitrag erst jetzt gesehen weil ich offline
getippt habe.
Eine optische Trennung ist nicht unbedingt erforderlich, wenn ich mit
einfachen Mitteln einen sinnvollen Schutz erreichen kann.
Die Idee mit den Dioden finde ich sehr gut. Einen Widerstand kann man
noch recht gut verschmerzen.
Für die langsamen Ausgänge fällt mir noch der ULN2003A ein. Was hält ihr
von dem?
Die PWM-Frequenz muss ich noch überdenken. Ich kann sie auch deutlich
kleiner machen, dann wird auch die Auflösung etwas besser.
Bzgl. den Anforderungen habt ihr recht. Ich ging davon aus, dass sie
nicht so hoch sind. Zu schnell geschossen. Das schätze ich hier im Forum
aber auch, dass Dinge auch von manchen Leuten hinterfragt werden!
Beste Grüsse und vielen Dank nochmals
Geri
> Für die langsamen Ausgänge fällt mir noch der ULN2003A ein.> Was hält ihr von dem?
Naja, ein Low-Side-Treiber eben...
Üblich sind High-Side-Treiber, wo aus der Leitung Strom herauskommt und
der Aktor an Masse angeklemmt ist.
In der Steuerungstechnik wird sowas gerne verwendet, weil bei einem
Erdschluss (durchgescheuertes Kabel) dann z.B. der Motor nicht einfach
so losläuft...
@Rick:
Hm, ist ja ein cooles Teil! Möchte mal die Lieferzeiten dafür wissen:)
Und in ein paar Jahren werkeln solche Dinger dann in Kaffeemaschinen:)
@Lothar:Erdschluss, ja hast recht.
werde es mal mit den genannten BTS724G oder etwas schwächeren (Z.B.
VNQ860-E) probieren sofern es sich auf dem Layout ausgeht. So wie es
aussieht kann man diese Bauteile direkt mit dem FPGA verbinden.
Vielen Dank nochmals für die super Hilfestellung!
Geri