Guten Tag, nachdem ich meine 0(4)-20mA Ausgang stabil zum laufen gebracht habe mit mienen PIC18, steht nun an diesen Ausgang auch galvanisch getrennt zu realisieren...das ist für mich derzeit noch Neuland.
Mein Plan war es mit einem DC/DC eine getrennte Versorgung für die analoge Schaltung zu realsieren und mit einem Optokoppler das PWM Signal dort einzuspeisen. Da ich platztechnisch beschränkt bin, muss ich auf ein zweites Netzteil auf der PCB verzichten.
Ist das der richtige Ansatz schonmal ?
Ich habe einen TLP2301 als Optokoppler und PDS1-S24-S24-S als DC/DC.
Allerdings bei der ersten Testschaltung steuert der Koppler immer durch und vom PWM Signal hab ich somit nichts( Dauerhaft 24V statt moduliertes Siganl ). Wenn ich allerdings mir das Datenblatt vom Koppler angucke, scheint es mir, dass dieser nicht so richtig für meinen 5V PWM (15khz) geiegnet ist.
Oder ist der Ansatz mit dem DC/DC falsch ? Die 24V werden aber brav ausgegeben..
So sieht es in Eagle bei mir aus. Die Schaltung hinterm RC-Glied ist nur eine einfache OP Schaltung für die 0-20mA die auch 1 zu 1 übernommen wurde vom vorgänger ohne Trennung.
Ein hervorragende Kombination zur Realisierung galvanisch getrennter Analogausgänge ist AD5753 mit ADP1031-5. Damit kann man sogar per Firmware zwischen Spannungs- und Stromausgang, Wertebereich und unipolaren/bipolaren Betrieb umschalten. Allerdings muss man sich schon etwas eingehender mit den ganzen Konfigurationsregistern befassen. Das ganze ist inklusive der galvanischen Trennung sehr kompakt aufzubauen.
Probier mal einen schnellen Digitalkoppler z.B. 6N137, da müsste das PWM
Signal unverändert rüber kommen.
In der Standardschaltung lt. DB invertiert der 6N137 das PWM Signal.
grün = Ausgang
blau = Eingang
Da hast du recht, sehe ich auch. Was aber theoretisch egal ist, weil ich im Programm die an und aus Zeit auch inventieren kann. Mir geht`s erstmal darum, das PWM Signal anständig 1 zu 1 zu übertragen. Ob dann 1023 0% sind oder 100% ist mir eagl (:
Ein hervorragende Kombination zur Realisierung galvanisch getrennter
Analogausgänge ist AD5753 mit ADP1031-5.
Für erhöhte Anforderungen bezüglich funktionaler Sicherheit gibt es auch noch den ADFS5758, obwohl schon der AD5753/8 diesbezüglich einiges zu bieten hat.
Ein hervorragende Kombination zur Realisierung galvanisch getrennter
Analogausgänge ist AD5753 mit ADP1031-5. Damit kann man sogar per
Firmware zwischen Spannungs- und Stromausgang, Wertebereich und
unipolaren/bipolaren Betrieb umschalten. Allerdings muss man sich schon
etwas eingehender mit den ganzen Konfigurationsregistern befassen. Das
ganze ist inklusive der galvanischen Trennung sehr kompakt aufzubauen.
Den werde ich mir mal merken, oder mal zu testzwcken bestellen. Aber der sprengt grade etwas den Preislichen Rahmen und auch bis ich das teil verstanden habe :D
Kuck mal auf Seite8. Die ganze Schaltung hat nirgendwo Potentialtrennung
und versorgt sich komplett aus den 4-20mA. Das ist eigentlich das
was man ueblicherweise anstrebt. Aber klar, das geht nicht immer.
Kuck mal auf Seite8. Die ganze Schaltung hat nirgendwo Potentialtrennung
und versorgt sich komplett aus den 4-20mA. Das ist eigentlich das
was man ueblicherweise anstrebt. Aber klar, das geht nicht immer.
Olaf
Jetzt weiß ich was du meinst, habe den XTR116 schon mehrfach verbaut. Aber in meinem Falle soll auch der Ausgang als Quelle dienen. Und selten, aber kommt vor, 0-20mA ._.
Die Optokoppler können die Kondensatoren auf VCC aufladen, aber da ist
nichts, was sie wieder entlädt.
Im Prinzip, ist es diese Schaltung nur etwas abgewandelt. Also die sollte die Kondensatoren entladen, hat sie auch vorher. Nur das jetzt Koppler dazwischen sitzen und diese Schaltung übern DC/DC gefüttert wird
Der sollte also 15 kHz können. Aber das ist ein open collector oder open emitter, hier als open emitter beschaltet. Üblicher ist open collector.
Da fehlt wie schon geschrieben eine Last nach GND.
Im Prinzip, ist es diese Schaltung nur etwas abgewandelt.
Verstehe ich nicht. Deine Zeichnung im Beitrag 02.01.2023 10:59 sieht
völlig anders aus.
Hat den Grund, dass es in Eagle unverständlich sein wird. Daher die
Schaltung die hinter dem RC Glied Steckt einzeln. :)
Oki, ich verstehe jetzt. Habe mal einen 10k Ohm vom Colletor zur Masse gelötet. Bringt etwas aber noch nicht mein gewünschtes 0-100%.
Daher die Frage bevor ich Try and Error betriebe, wie kommei ch am besten auf einen Korrekten Wert ? Ist dieser Lösungsanstaz richtig ? :)
Habe mal einen 10k Ohm vom Colletor zur Masse gelötet.
Da bringt er nichts, du meinst wohl den Emitter.
Bringt etwas aber noch nicht mein gewünschtes 0-100%.
Mit deiner aktuellen Konstruktion wird der Kondensator schneller geladen als entladen.
Ist dieser Lösungsanstaz richtig ?
Ich denke, du brauchst eine aktive Push-Pull Stufe damit das PWM Signal linear auf eine Spannung am C umgesetzt wird. Es gibt Optokoppler mit integriertem Schmitt-Trigger, vielleicht hilft das.
1 kΩ ist auch recht wenig, da spielt der Innenwiderstand der Quelle schon eine erhebliche Rolle. Nimm mal lieber 10 kΩ und mache den Kondensator dafür 10x kleiner.
Habe mal einen 10k Ohm vom Colletor zur Masse gelötet.
Da bringt er nichts, du meinst wohl den Emitter.
Bringt etwas aber noch nicht mein gewünschtes 0-100%.
Mit deiner aktuellen Konstruktion wird der Kondensator schneller geladen
als entladen.
Ist dieser Lösungsanstaz richtig ?
Ich denke, du brauchst eine aktive Push-Pull Stufe damit das PWM Signal
linear auf eine Spannung am C umgesetzt wird. Es gibt Optokoppler mit
integriertem Schmitt-Trigger, vielleicht hilft das.
1 kΩ ist auch recht wenig, da spielt der Innenwiderstand der Quelle
schon eine erhebliche Rolle. Nimm mal lieber 10 kΩ und mache den
Kondensator dafür 10x kleiner.
Hi, ich habe mit den Wiederständen was rumgespielt aber umso niedriger ich gegangen bin, auch unter einen kOhm, sank die Spannung. Allerdings wurde es mit unter 1kOhm liniar, aber ist ja auch nicht die Lösung...ich probiere mal deine Vorschläge aus.
Btw. PWM Frequenz hatte keinen einfluss auf Funktion oder Liniarität.
Moin, mir wurde angehängter Opto empfohlen. Aber Frage, im Plan sind die Massen miteinander verbunden, ist dann nicht die glavanische Trennung futsch ?
Alternativ habe ich den H11L1SR2M gefunden, dieser ist Lieferbar und scheint für mich gut zu sein.
Richtig. Optokoppler sind langsam und verfälschen PWM.
Genau!
Ich habe den Anwendungsfall nur nicht genau verstanden. Ist 15 kHz die Ausgangsfrequenz der PWM?
Bei schlappen 256 Stufen muss die schon mit 15000*256 (3.84 MHz) getaktet werden. Die 3.8 MHz müssen sauber übertragen werden, sonst verfälscht die PWM.
Ich habe mal mit der SI8631 Serie (Silicon Labs) gearbeitet. Der kann locker mit 100 MHz arbeiten, ist aber kein Optokoppler, sondern isoliert kapazitiv. Macht aber eine saubere Trennung und kann 5V Signale verarbeiten. (Gibt es aber nicht an jeder Ecke und nicht als Einfachausführung sondern erst ab 3 Kanälen)
Bei schlappen 256 Stufen muss die schon mit 15000*256 (3.84 MHz)
getaktet werden. Die 3.8 MHz müssen sauber übertragen werden, sonst
verfälscht die PWM.
Entscheidend ist doch, mit was die PWM taktet. Ich komme mit 32/Mhz / 1024 = ca 31 kHz.
Kann es sein, dass die PWM mit 16 MHz taktet? Dann kommen ungefähr 15 kHz raus.
Der kürzeste Puls, den die PWM generieren kann wäre dann 1/16 MHZ. Den muss der Optokoppler durchschalten können. Wenn die Einschaltzeit größer ist, schaltet der nicht durch und Du hast die erste Verfälschung.
Wenn es nicht so auf die Genauigkeit ankommt, kann man vielleicht damit leben. Aber die ersten Verfälschungen hast Du ab dem Punkt.
Ich habe mal mit der SI8631 Serie (Silicon Labs) gearbeitet. Der kann
locker mit 100 MHz arbeiten, ist aber kein Optokoppler, sondern isoliert
kapazitiv.
Wobei aus der Familie auch nicht jeder schnell genug ist, speziell der SI8631 "Minimum Pulse Width: 250ns". Der SI8610 schafft dann auch 5ns. Dazu kommen aber noch die Fehler der Ausgangsstufe, dieses 150MHz-Teil hat auch noch Anstiegszeiten von 4ns, aber immerhin symmetrisch.
Vor allem muss aber auch die Ausgangsspannung unter Last symmetrisch bleiben. Das Datenblatt sagt 0.4V bzw. 0.8V bei 4mA, das wären 12% bzw. 24% Fehler (bei 3.3V), auch noch ziemlich temperaturabhängig. Die erste Filterstufe muss also deutlich hochohmiger werden. Und das ist ein guter CMOS-Ausgang...
Finde ich so in meinem Datenblatt nicht. da steht 5ns.
Ich betrieb die als Koppler für 10 MHz RS485. Das würde mit 250ns nicht gehen. Vorher hatte ich Optokoppler ACPLxxx, die liefen bis 2.5 MHz sauber, aber 10 MHz waren nicht drin.
Mit den Ausgangsspannungen hast Du natürlich recht. Jetzt kommen wir zu den Feinheiten. Wenn es gut werden soll, muss man wie immer einiges berücksichtigen.
Entscheidend ist doch, mit was die PWM taktet. Ich komme mit 32/Mhz /
1024 = ca 31 kHz.
Kann es sein, dass die PWM mit 16 MHz taktet? Dann kommen ungefähr 15
kHz raus.
Der kürzeste Puls, den die PWM generieren kann wäre dann 1/16 MHZ. Den
muss der Optokoppler durchschalten können. Wenn die Einschaltzeit größer
ist, schaltet der nicht durch und Du hast die erste Verfälschung.
Wenn es nicht so auf die Genauigkeit ankommt, kann man vielleicht damit
leben. Aber die ersten Verfälschungen hast Du ab dem Punkt.
Bin kein großer Programmierer von PICs, daher verlasse ich mich auf MPLAB. Und das zeigt mir folgendes an. Hab die Frequenz über den zugehörigen Timer ohne große veränderung auch schonmal angepasst.
Finde ich so in meinem Datenblatt nicht. da steht 5ns.
Da sind beim Umzug von Silicon Labs zu Skyworks wohl die Umzugskartons durcheinander gekommen, jetzt gibt es z.B. den Si8631AB-AS1 doppelt ;) Oder mein Datenblatt ist jetzt ein wertvolles Sammlerstück. Vielleicht findet auch jemand den Fehler.
Finde ich so in meinem Datenblatt nicht. da steht 5ns.
Da sind beim Umzug von Silicon Labs zu Skyworks wohl die Umzugskartons
durcheinander gekommen, jetzt gibt es z.B. den Si8631AB-AS1 doppelt ;)
Oder mein Datenblatt ist jetzt ein wertvolles Sammlerstück. Vielleicht
findet auch jemand den Fehler.
Habe gerade noch mal nachgeschaut. Da muss man ja aufpassen wie ein Luchs:
Dein angehängtes Datenblatt hat die Überschrift:
Si86xx 1 Mbps Data Sheet
Den Verkauf an Skylabs hatte ich gar nicht mitbekommen. Also kurz bei Mouser geguckt und neues Datenlatt runtergeladen. Das hat die Überschrift:
Si8630/31/35 Data Sheet
Sind völlig unterschiedliche chips, der eine auf 1Mbps, der andere auf 150Mbps gespeckt.
Unterschied liegt im Suffix, wenn Si8631ABxxx ist nur 1Mbps und 250 ns Minimum Pulse width