ich nutze einen STM32G070 um auf einem Pin eine 1kHz PWM zu erzeugen. Dieses Signal kommt sauber am Eingang eines Optokopplers an.
Siehe Schaltplan. An Pin4 sehe ich ein sauberes Signal, an Pin6 hingegen wird es löcherig. Dort fehlen etliche Flanken.
Ich vermute mein Optokoppler ist zu langsam, wobei 1kHz doch nun wirklich nicht schnell ist? Laut Datenblatt hat der LTV827 1,2V bei 20mA, daher habe ich einen 220Ohm WIderstand geniommen als R8. R37 habe ich mit 10k bestückt., R38 0Ohm.
CTR laut Datenblatt 50%.
Inzwischen würde ich den Optokoppler einfach weglassen, einen Treiber verwenden und Pin 1 vom Stecker direkt auf GND setzen, da die Trannung (hier sowieso nicht richtig ausgefüht) weniger wichtig ist. Aber der ist da jetzt nun mal.
An Pin4 sehe ich ein sauberes Signal, an Pin6 hingegen
wird es löcherig. Dort fehlen etliche Flanken.
Ich vermute mein Optokoppler ist zu langsam, wobei 1kHz doch nun
wirklich nicht schnell ist?
Selbst wenn der Optokoppler zu langsam sein sollte, äußert sich das nicht im "Verschlucken" von Flanken. Aber ein PWM-Signal ist ein Rechteck, das hat theoretisch eine unendliche Bandbreite. Insbesondere bei sehr schmalen Impulsen. Kann durchaus sein, daß da die 80kHz aus dem Datenblatt nicht reichen. Zumal die mit 100Ω Abschlußwiderstand gemessen werden, nicht mit 10KΩ.
Inzwischen würde ich den Optokoppler einfach weglassen
Jo, der Klassiker. Einen Optokoppler verbaut, obwohl man ihn nicht braucht.
Ich nutze den AUsgang vom STM32 als Push-Pull. Pin4 gegen GND sieht man das saubere PWM Signal, ebenso Pin3 nach GND mit einem entsprechenden Offset natürlich.
Wenn das Tastverhätnis gegen 0 oder 1 geht, werden aufgrund der begrenzten Bandbreite des 'OC auch bei 1kHz irgendwann natürlich ganze Pulse verschluckt. Das funktioniert nur ab einer minimalen Pulsbreite
Ich nutze den AUsgang vom STM32 als Push-Pull. Pin4 gegen GND sieht man
das saubere PWM Signal, ebenso Pin3 nach GND mit einem entsprechenden
Offset natürlich.
Aber ein PWM-Signal ist ein
Rechteck, das hat theoretisch eine unendliche Bandbreite. Insbesondere
bei sehr schmalen Impulsen. Kann durchaus sein, daß da die 80kHz aus dem
Datenblatt nicht reichen.
Unendliche Bandbreite wird schon der treibende Ausgang nicht schaffen. Das wäre also vergebliche Liebesmühe und der EMV nicht zuträglich.
Der Eingang des µC braucht hoffentlich kein Signal mit einer Flankenzeit von unter 1µs.
ich nutze einen STM32G070 um auf einem Pin eine 1kHz PWM zu erzeugen.
Dann verrate doch einmal, wie lang oder kurz die Impulse sind, die du über den Optokoppler schicken willst und wie die kapazitive Gesamtlast an deinem Pin 2 vom Stecker ist.
Wie stellst du fest, dass Flanken fehlen?
Ich hätte erwartet, dass nicht einzelne Flanken, sondern ganze Pulse fehlen - oder wie meinst du das?
Das funktioniert nur ab einer minimalen Pulsbreite
Vor allem: der OK schaltet unsymmetrisch. Das Einschalten geht viel schneller als das Ausschalten. Und Pullups x mal hochohmiger
als im DB sorgen vereinfacht für x mal langsameres Ausschalten.
ich nutze einen STM32G070 um auf einem Pin eine 1kHz PWM zu erzeugen.
Dieses Signal kommt sauber am Eingang eines Optokopplers an.
Siehe Schaltplan. An Pin4 sehe ich ein sauberes Signal, an Pin6 hingegen
wird es löcherig. Dort fehlen etliche Flanken.
Ich vermute mein Optokoppler ist zu langsam, wobei 1kHz doch nun
wirklich nicht schnell ist?
Ohne Screenshots mit einem 2-Kanal-Oszilloskop, wo man beide Signale gleichzeitig sehen und vergleichen kann, wird Dir das mit dem „Verschlucken der Flanken” kaum einer hier glauben oder nachvollziehen können, was überhaupt gemeint ist. Grundsätzlich würde ich sagen, dass auf der linken Seite des Optokopplers unnötig zu niederohmig und auf der rechten unwissentlich zu hochohmig die Schaltung aufgebaut wurde; und R9/R10 am besten ganz weglassen, d.h. brücken. 1kHz-PWM-Signal hört sich zwar nicht nach viel an, aber je nach Auflösung und Einstellung des Tastverhältnisses, ergibt das sehr kurze Spikes, die dann auf der rechten Seite des Optokopplers nicht ankommen bzw. nicht nachgebildet werden können, weil Du ja eben hier viel zu hochohmig und auch nur in eine Richtung (gegen Masse) mit dem Transistor schaltest bzw. überhaupt schalten kannst. Wird der Transistor dann gesperrt, muss sich an diesem Knotenpunkt die Spannung erst über diesen großgewählten Widerstand und der Eingangskapazität – oder generell der Kapazität an diesem ganzen Knotenpunkt – aufladen und das dauert dann entsprechend. Bei einer PWM-Auflösung von 256 Schritten dauert ein Schritt ca. 4µs, bei 1024 dann ca. 1µs – solche kurzen Pulse können dann das Filter, welches Du versehentlich und ahnungslos mit Deinem Optokoppler aufgebaut hast, auf der Ausgangsseite des Optokopplers nicht passieren und ab-/nachgebildet werden. Die grundsätzliche Frage, ob hier überhaupt ein Optokoppler – und damit das ganze selbstgenerierte Theater drumherum – nötig ist, bleibt natürlich bestehen.
Mit dem Oszilloskop. Tut mir leid, es kann auch sein, dass ganze Takte fehlen. Auf jedenfall ist das unvollständig.
Wie ich das noch merke? Mit der PWM steuer ich einen Motortreiber und dessen Geschwindigkeit ist entsprechend "wandernd", bzw. oszillierend. Gemessen habe ich ohne den Treiber, also kann der nicht der Grund sein.
Ich werde heute zunächst mal die Widerstände verändern.
Laut Datenblatt hat der Collector aber als typical value 1mA, was bei 5V 5kOhm sind. Ist ja gar nicht so weit weg von meinen 10k.
Inzwischen würde ich den Optokoppler einfach weglassen
Warum hast du hier überhaupt einen OK eingesetzt wenn beide Seiten des OKs auf schlicht dem selben Potential unterwegs sind? Der Einsatz des OKs macht so schlicht gar keinen Sinn. Es ist ja schon fragwürdig, wenn beide Seiten die selbe Masse haben aber bei dir ist ja sogar die Versorgung beider Seiten identisch...der OK wäre so schlicht überflüssig. Und ja, das n.b. habe ich gelesen (was aber im Grunde auch falsch ist ein "nicht bestücken" so zu kennzeichnen).
Ansonsten dürfte schon alles gesagt sein, dein OK ist ziemlich sicher viel zu hochohmig auf der Ausgangsseite beschaltet für die 1 kHz. Mach aus R37 mal 100Ω statt 10kΩ und schau dann noch mal.
Klar, als Eingang. Kann der mit vermutlich 3V3 versorgte µC auch tatsächlich 5V ausgeben, um die OK-LED sicher auszuschalten? Oder schaltest du zum Abschlaten der LED den Ausgang hochohmig?
Warum hast du hier überhaupt einen OK eingesetzt wenn beide Seiten des
OKs auf schlicht dem selben Potential unterwegs sind?
Ja, ich vermute auch sehr, dass hier gar kein OK nötig ist. Aber dazu sollte man links und rechts ein paar cm mehr vom Schaltplan sehen. Am einfachsten gleich den ganzen Plan.
Das weiß und wird hier auch niemand wissen können, nicht einmal die gute Fee weiß das – die „5 Teile samt Optokoppler” auf einem kleinen Stück Lochrasterplatine etc. nachbauen, am Eingang und Ausgang 220R mit jeweils einem Poti 1-2k in Reihe schalten (damit man versehentlich nicht zu wenig hat), Oszilloskop einschalten, das PWM-Signal anlegen, an den Potis drehen und die optimalen Einstellungen über den Bildschirm des Oszilloskops herausfinden, dabei das PWM-Tastverhältnis ändern, um die kritischen Bereiche abfahren zu können. Wenn alles passt, Verbindungen wieder trennen, die Gesamtwiderstände nachmessen und ähnliche Festwiderstände aus den bekannten Reihen in den richtigen Schaltungsteil einlöten. Danach nochmal die Extremstellen abfahren/überprüfen und ggfs. noch etwas ein wenig ändern oder anpassen.
die „5 Teile samt Optokoppler” auf einem kleinen Stück Lochrasterplatine
etc. nachbauen,
Dann nimm aber gleich den LTV827C der hat ein CTR von 200 bis 400% und ist vorm Zug schon allein deswegen schneller und der kann auch noch ganz andere Sachen schlucken.
Dann nimm aber gleich den LTV827C der hat ein CTR von 200 bis 400% und
ist vorm Zug schon allein deswegen schneller.
Sicher?
Ich dachte, je mehr man einen Transistor übersteuert, umso langsamer schaltet er danach wieder ab. Bin allerdings nicht sicher, ob das auch für die optische Ansteuerung gilt.
Ich dachte, je mehr man einen Transistor übersteuert, umso langsamer
schaltet er aus "aus". Bin allerdings nicht sicher, ob das auch für die
optische Ansteuerung gilt.
Ich dachte, je mehr man einen Transistor übersteuert, umso langsamer
schaltet er aus "aus". Bin allerdings nicht sicher, ob das auch für die
optische Ansteuerung gilt.
Ist auch da so.
Und vor allem: beim OK kann man nicht mit einer "Beschleunigerschaltung" zwischen B und E die Basisladung schneller "freiräumen". Nein, die muss beim OK ganz gemütlich über die BE-Diode entfleuchen.
Wenn man ihn aber nicht ausreichend übersteuert, dann hat man eine hohe verbleibende Uce.
Die Spec gibt z.B. das hier an:
Response time (tr : TYP. 4μs at VCE = 2V, IC = 2mA, RL = 100Ω)
Für eine Reaktionszeit von 4µs braucht man einen Ic mit 2mA bei einem Lastwiderstand von 100 Ohm. Als Uce müssen dann im durchgesteuerten ungesättigten(!!) Zustand noch 2V verbleiben. Wenn der CTR besser ist und der Transistor auf 1V durchgesteuert wird, dann wird er schon wieder langsamer.
Ich bin immer noch fest mit der Fraktion verbunden, die behauptet, dass man dank der gleichen +5V links und rechts vom OK gar keine Potentialtrennung braucht und somit auch keinen schwerkalkulierbaren OK braucht. Und wenn man keinen OK braucht, dann nimmt man auch keinen.
Ich sags mal so: OK werden von (Arduino-)Anfängern und von Profis verwendet. Die einen, weil sie nicht wissen, was sie da tun, die anderen, weil sie wegen einer Potentialtrennung unbedingt einen brauchen.
Ich sags mal so: OK werden von (Arduino-)Anfängern und von Profis
verwendet. Die einen, weil sie nicht wissen, was sie da tun, die
anderen, weil sie wegen einer Potentialtrennung unbedingt einen
brauchen.
Tja, es kann übrigens auch sein, dass es hier noch eine ganz andere Baustelle gibt und alles Geschriebene zu der ersten quasi umsonst war, denn wie das Signal, das vom Optokoppler an diesen Stecker geht, dann „weiterverarbeitet” wird, bleibt schaltplantechnisch geheim.
Ich bin immer noch fest mit der Fraktion verbunden, die behauptet, dass
man dank der gleichen +5V links und rechts vom OK gar keine
Potentialtrennung braucht und somit auch keinen schwerkalkulierbaren
OK braucht. Und wenn man keinen OK braucht, dann nimmt man auch
keinen.
Korrekt, aber wie ich bereits sagte: Nun ist der halt da.
Und wo sind jetzt die Oszi-Bilder von den Signalen? Am besten von Pin 3+6 des OK mit einem Zweikanal-Oszi. Und wenn Du noch mehr Kanäle hast, dann am besten von allen Pins des OK ...