Moin, zweiter Beitrag hier, ich hoffe die Blamage wird sich im Rahmen halten: Ich möchte gerne einen ACS758LCB-050B-PFF-T mit einem Feld-Wald-Wiesen STM32 ADC (0-3.3, 12bit) intim abtasten. Jetzt sind diese Sensor-Boards leider meistens für die versammelte Arduino-5V-Kommune gemacht und noch dazu in China. Siehe Schaltplan. Ach ja, bei der Übersetzung macht euch gar keine Mühe, da kann nicht einmal ein Muttersprachler was rausholen: OU1 analog signal output OU2 process follower's signal output follower so wie voltage follower Nun - da der ACS758 mit 5V aber auch mit 3.3V betrieben werden kann, hat man sich in China gedacht, man schaltet irgendwie einen TLC2272 dazu, der das OU1 Signal im 3.3V Fall auf 0-5V levelshiften könnte. Glaube ich - aber nix genaues weiß man nicht. Leider hat der fernöstliche Ingenieur nur einen Vcc spendiert, nämlich 5V. Wenn man da 3.3V reinspeist, dann bekommt man zwar auf OU1 ein Signal, OU2 ist tot, da TLC2272 mit 3.3V nix anfangen kann. Wenn man - wie wohl geplant - 5V einspeist, dann sind OU1 und OU2 identisch. Wenn die Chinesen wüssten, dass sie sich 0.2374 komma 8 cent sparen könnten und den TLC2272 einfach rausrupfen könnten... Nunja genug des Prologs, kommen wir zu meinem Problem: Ich habe hier also einen ACS758LCB-050B-PFF-T, werde den niemals nie gar nicht als Bidirektionalen Strommesser benutzen, sondern immer nur - großes Indianerehrenwort - unidirektional. Damit es auch was zu lachen gibt, speise ich auch 5V ein. Zurück bekomme ich 0-5V je nach Stromfluss (-50A = 0V, 0A = 2.5V, 50A = 5V). Da mich aber [-50A, 0A[ nicht interessiert möchte ich gerne JETZT KOMMTS einen Pegelwandler mit Offset realisieren. Vulgo: Ich möchte die 2.5V-5V auf 0-3.3V abbilden. Ich habe da mal was in Perl vorbereitet #!/usr/bin/env perl use List::Util qw(min max); my $Vin = $ARGV[0]; my $Vout = min(3.3, max(0, ($Vin - 2.5) * 1.32)); say "Vin: $Vin V => Vout: $Vout V\n"; $ vtrans.pl -2 Vin: -2 V => Vout: 0 V $ vtrans.pl -0 Vin: -0 V => Vout: 0 V $ vtrans.pl 0 Vin: 0 V => Vout: 0 V $ vtrans.pl 2 Vin: 2 V => Vout: 0 V $ vtrans.pl 3.2 Vin: 3.2 V => Vout: 0.924 V $ vtrans.pl 4.6 Vin: 4.6 V => Vout: 2.772 V $ vtrans.pl 5 Vin: 5 V => Vout: 3.3 V $ vtrans.pl 5.2 Vin: 5.2 V => Vout: 3.3 V Das hätte ich gerne in Elektronik, aber keine Ahnung wie. Man sieht ich möchte gerne - in vernünftigem Rahmen Über-/Unterspannungen kappen, ansonsten halt den vollen Dynamikbereich des STM32 ADC ausnutzen. Die Alternative wäre nur den halben Dynamikumfang des ADC zu nutzen (1.65-3.3V) aber das widerstrebt mir ein wenig, da ich auch schon vom ACS758 nicht den vollen Dynamikumfang nutze (0-20A plusminus). Ich habe mich natürlich umgesehen, aber erfolglos. Von WP https://de.wikipedia.org/wiki/Pegelumsetzer bin ich auf den vorzüglichen Artikel https://www.mikrocontroller.net/articles/Pegelwandler gestoßen, finde dort aber nicht was ich bräuchte. Wenn jemand Rat weiß... Mueh
Alfons K. schrieb: > Nun - da der ACS758 mit 5V aber auch mit 3.3V betrieben werden kann, hat > man sich in China gedacht, man schaltet irgendwie einen TLC2272 dazu, > der das OU1 Signal im 3.3V Fall auf 0-5V levelshiften könnte. Glaube ich > - aber nix genaues weiß man nicht. Nein, dafür ist der nicht da. Der dient als Impedanzwandler, d.h. er verstärkt das Ausgangssignal 1:1, kann aber mehr Strom liefern als der ACS. > Vulgo: Ich möchte die 2.5V-5V auf 0-3.3V abbilden. Gegenvorschlag: drehe den Eingang des ACS um, so dass Du dann nur Ausgangsspannungen von 2.5V...0V bekommst. Dann schließt Du an VREF+ eine 2.5V Spannungsreferenz wie MCP1525 oder LM4040-2.5 an, und schon hast Du den vollen Messbereich mit wenig Schmerzen zur Verfügung. Man ist ja faul. fchk
Alfons K. schrieb: >ACS758.png >1,1 MB Hast du dir mal dein Bild angeschaut? FAIL! Siehe Bildformate. > zweiter Beitrag hier, ich hoffe die Blamage wird sich im Rahmen halten: > > Ich möchte gerne einen ACS758LCB-050B-PFF-T mit einem Feld-Wald-Wiesen > STM32 ADC (0-3.3, 12bit) intim abtasten. Wie meinen? > Nun - da der ACS758 mit 5V aber auch mit 3.3V betrieben werden kann, hat > man sich in China gedacht, man schaltet irgendwie einen TLC2272 dazu, > der das OU1 Signal im 3.3V Fall auf 0-5V levelshiften könnte. Du arbeitest hart für deine Blamage. "levelshiften", soso. > Glaube ich > - aber nix genaues weiß man nicht. Es ist ein einfacher Spannungsfolger mit der Verstärkung 1. > Leider hat der fernöstliche Ingenieur nur einen Vcc spendiert, nämlich > 5V. Wenn man da 3.3V reinspeist, dann bekommt man zwar auf OU1 ein > Signal, OU2 ist tot, da TLC2272 mit 3.3V nix anfangen kann. Stimmt, der braucht mindestens 5V. > einen Pegelwandler mit Offset realisieren. Kann man, auch wenn man das eher nicht als Pegelwandler bezeichnet. > Vulgo: Ich möchte die 2.5V-5V auf 0-3.3V abbilden. > Ich habe da mal was in Perl vorbereitet Was soll der Unsinn? Nimm einen OPV mit passender Beschaltung und gut. > Wenn jemand Rat weiß... Nimm einen einfachen Differenzverstärker, siehe Anhang. V4 ist die Referenzspannung von 2,5V, die erzeugt man sich praktisch mit einem 10k+10k Spannungsteiler + OPV als Spannungsfolger. Als OPV nimmt man einen Rail 2 Rail Typen, z.B. TS912. Die duale Versorgung mit 12V ist nur für die Simulation, ich hab auf die Schnelle keinen andern OPV in dem ollen Programm gefunden. Ich muss mal LTspice installieren.
Frank K. schrieb: > Gegenvorschlag: drehe den Eingang des ACS um, so dass Du dann nur > Ausgangsspannungen von 2.5V...0V bekommst. Dann schließt Du an VREF+ > eine 2.5V Spannungsreferenz wie MCP1525 oder LM4040-2.5 an, und schon > hast Du den vollen Messbereich mit wenig Schmerzen zur Verfügung. > > Man ist ja faul. :-O Oh wow! Das ist grenzgenial. Vielleicht schon leicht hinter der Grenze. Danke!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.