Hallo liebes Forum, ich habe ein Problem mit einer Spannungsmessung auf einem PIC16F1823. Als Referenzspannung benutze ich die interne Referenz (FVR), die ich auf 2,048V gestellt habe. Die zu messende Spannung liegt immer unter 2V. Im Normalfall wird die Elektronik mit 4,7V versorgt, die ein Rauschen von +-0,5V aufweist (kleine Peak-Bursts, die mit 50Hz auftreten). Diese Spannung wird über eine Schottky-Diode und einen 470R Widerstand eingespeist. Es bleiben etwa 3,8+-0,5V. Die Versorgungsspannung fällt niemals unter 3,3V. Leider missglückt aber trotzdem die Spannungsmessung und das scheint an der Versorgungsspannung zu liegen. Wenn ich nämlich die Diode und den Widerstand überbrücke, also die 4,7V direkt auf den Controller gebe, funktioniert alles wie gewünscht. Mit der Diode und dem Widerstand wird die Spannung dagegen zu groß gemessen. Hat jemand eine Idee? Könnte das Rauschen das Problem sein? Eigentlich ist die Versorgungsspannung ja trotzdem innerhalb der Spezifikation. Grüße Bernd
Eine derart schlechte Versorgungs Spannung ... was erwartest du ? Mach die erst richtig, DC. Nicht mit Bursts und dergleichen.
1. Deine 0,5V peaks sind vieleicht in der Realität auch 1V peaks, ne nachdem wie gut dein Oszi-Eingangsverstärker ist. 2. Hast du alle notwendigen (keramische) Abblock Cs und zwar möglichst direkt an den Versorgungspins. 3. Ist dein Analogground und die Analogversorgung sauber ausgeführt und nach Datenblatt entkoppelt.
:
Bearbeitet durch User
Jetzt Nicht schrieb: > Eine derart schlechte Versorgungs Spannung ... was erwartest du ? Mach > die erst richtig, DC. Nicht mit Bursts und dergleichen. Die Versorgung von außen ist leider Systembedingt. Bisher hat das auch funktioniert. Bisher sollte die Elektronik aber auch keine Spannung messen... Vielleicht habe ich es aber auch schlimmer beschrieben, als es ist. Ich mache morgen ggf. noch ein Bild. Udo Schmitt schrieb: > 1. Deine 0,5V peaks sind vieleicht in der Realität auch 1V peaks, ne > nachdem wie gut dein Oszi-Eingangsverstärker ist. Könnte etwas dran sein. Das Oszi ist sehr hochwertig, aber man weiß ja nie. Kann ich das irgendwie überprüfen? Udo Schmitt schrieb: > 2. Hast du alle notwendigen (keramische) Abblock Cs und zwar möglichst > direkt an den Versorgungspins. Habe ich. Sollte ich die 100nF am Controller etwas hochschrauben? Oder bringt das bei dem hochfrequenten gezappel sowieso nichts? Udo Schmitt schrieb: > 3. Ist dein Analogground und die Analogversorgung sauber ausgeführt und > nach Datenblatt entkoppelt. mein Analogground ist Vss. Dementsprechend keine besondere Ausführung oder Entkoppelung.
Bernd schrieb: > Jetzt Nicht schrieb: >> Eine derart schlechte Versorgungs Spannung ... was erwartest du ? Mach >> die erst richtig, DC. Nicht mit Bursts und dergleichen. > Die Versorgung von außen ist leider Systembedingt. Na ja. Das ist ja kein Grund. Ein 0.5V Ripple ist schon nicht mehr klein. Mit einem größeren Kondensator ist der Ripple weg.
> Diese Spannung wird über eine Schottky-Diode und einen 470R Widerstand
eingespeist.
Wozu eigentlich der Widerstand?
Braucht der µC mal kurzfristig mehr Strom, bricht dir die
Versorgungsspannung ein. Der Widerstand fungiert dann zusammen mit
deinem µC als Spannungsteiler!
Karl Heinz schrieb: >> Diese Spannung wird über eine Schottky-Diode und einen 470R Widerstand > eingespeist. > > Wozu eigentlich der Widerstand? > > Braucht der µC mal kurzfristig mehr Strom, bricht dir die > Versorgungsspannung ein. Der Widerstand fungiert dann zusammen mit > deinem µC als Spannungsteiler! Da ist sowieso was faul, wenn dir deine Schotky-Widerstandskombination aus 4.7V nur mehr 3.8V bringt. An der Diode fallen ca 0.4V ab. D.h. am Widerstand müssen dann schon 0.5V abfallen - der ist schon recht aktiv als Teil des mit dem µC gebildeten Spannungsteilers.
>Da ist sowieso was faul, wenn dir deine Schotky-Widerstandskombination >aus 4.7V nur mehr 3.8V bringt... 1mA Verbrauch ist schnell beisammen. Anstelle des Widerstands eine kleine Induktivität mit selber Bauform und alles könnte gut werden. viel Erfolg Hauspapa
S. K. schrieb: >>Da ist sowieso was faul, wenn dir deine Schotky-Widerstandskombination >>aus 4.7V nur mehr 3.8V bringt... > > 1mA Verbrauch ist schnell beisammen. Eben. Und wenn der µC anstelle von 1mA kurzfristig sich schnell mal 2mA genehmigt, dann fallen nicht mehr 0.5V am Widerstand ab, sondern schon ein ganzes Volt.
Den 470R Widerstand hatte ich glatt überlesen. Der kann sogar für den gemessenen 0,5V Ripple verantwortlich sein, je nachdem wo der TO gemessen hat. S. K. schrieb: > Anstelle des Widerstands eine > kleine Induktivität mit selber Bauform und alles könnte gut werden. Spricht einiges dafür.
Hallo Leute, danke für die Antworten! Also die Rippel habe ich überall: vor der Diode, zwischen Diode und Widerstand und nach beiden. Der kommt schon von der Versorgung. Der Widerstand ist zum Schutz. Der Spannungseingang wird später von außen berührbar sein. Darum habe ich noch eine 5V1 Z-Diode auf der Versorgung des Controllers. Und damit die im schlimmsten Fall nicht direkt gebrutzelt wird, der Widerstand. Aber eine Spule hätte ja den gleichen Effekt. Ich werde jetzt mal mit Kondensatoren und Spulen experimentieren und über das Ergebnis berichten.
Bernd schrieb: > Ich werde jetzt mal mit Kondensatoren und Spulen experimentieren und > über das Ergebnis berichten. Wenn deine Schaltung mit stabilen 3,3V funktionieren würde, kannst du dir den Einsatz eines Lowdrop Reglers mal überlegen, und den anstelle des Widerstandes einsetzen. Am besten machst du davor noch einen dicken Elko als Puffer.
Es war gar nicht die Versorgungsspannung! Meine Versorgung kommuniziert gleichzeitig über I2C mit meinem Controller und scheinbar ist der Bus der Schuldige. Sobald SCL und SDA getrennt sind, funktioniert die Spannungsmessung. SDA scheint den größeren Einfluss zu haben. Meine Befürchtung ist nun, dass es sich um EMV handelt. Meine zu messende Spannung ist nämlich äußerst empfindlich. Sie wird über einen Spannungsteiler im Megaohm-Bereich erzeugt. Am Controller ist dann noch ein 1nF Kondensator, der dann den 10pF Eingangskondensator des ADCs lädt. Ohne Bus funktioniert das auch ganz gut... Zum Bestätigen der Vermutung habe ich mal mit einem Netzgerät die Spannung angelegt und der Bus hatte keinen Einfluss mehr. Die Messspannung scheint also einfach zu hochohmig eingespeist zu werden. Leider muss das auch so sein. Nun bin ich wieder Ratlos. :(
Die Salamitaktik hat also funktioniert. Jetzt kann man so langsam ahnen worum es eigentlich geht, und es fehlt immer noch ein Plan. 1 nF als Pufferkondensator ist reichlich knapp: der S&H Kondensator dürfte so bei 10-20 pF liegen - der 1 nF Kondensator wird damit bereits um 1-2 % entladen. Wenn es mit 10-20 nF zu langsam wird, hilft ein Verstärker als Impedanzwandler. Der Kondensator am µC sollte ggf. etwas größer werden, wenn der µC an Ausgängen mehr Signal treiben muss. Dann ggf. besser zusätzlich ein 10 µF Elko zum 100 nF Kondensator.
Es tut mir Leid, es ist immer etwas schwierig, alle die Relevanten Details zu nennen, ohne die Problematik mit zu vielen irrelevanten Informationen unübersichtlich zu machen. Meine Elektronik ist mit 23mmx35mm übrigens recht kompakt und bietet kaum noch Platz. Weitere Komponenten, wie Impedanzwandler sind eigentlich nicht mehr vorstellbar. Erstmal muss ich versuchen, das Problem anders zu lösen. Und zu allererst muss ich die Ursache verstehen. Das hat noch nicht ganz geklappt. Irgendwie scheint die Versorgungsspannung nämlich schon einen Einfluss zu haben. Mir ist nun etwas eigenartiges aufgefallen: Ich habe eine saubere Versorgungssapannung angelegt und den Bus getrennt. Wenn ich nun mit einem Netzteil die Messspannung direkt auf den µC Pin führe, stimmt die Messung unabhängig von der Versorgungsspannung. Dann habe ich die Messspannung über den hochohmigen Spannungsteiler erzeugt. Dazu habe ich einen 100:1 Tastkopf auf dem µC Pin. Dieser verfälscht die Spannung zwar bereits etwas, aber dafür kann ich sie messen. Wenn ich nun die Versorgungsspannung von 5V auf 4V reduziere, misst der µC plötzlich eine geringere Spannung, obwohl sich die Spannung am Pin um nicht ein mV verändert. Eigentlich hätte ich also das gleiche Verhalten erwartet, wie zuvor. Kann sich das jemand erklären?
Also was natürlich fehlt sind schaltplan und evtl C-Code. Den PIC habe ich noch nie programmiert, aber beim TI ist es so dass man als ADC Referenz verschiedene Einstellungen auswählen kann. Und es gibt eine Einstellung die nimmt einfach die Versorgungsspg Vcc vom µC, und wenn man die dann verändert, anstelle von 3,3V zum Beispiel 4V oder was auch immer noch erlaubt ist, dann ändert sich selbstredent der ADC Wert mit, weil er ja von seiner Referenz abhängt. Also gerade klingt dein Problem für mich genau danach. Und ansonsten würde ich eine Messschaltung nicht mit einem so riesigen Rippel betreiben wollen, gut wenns jetzt halt so funktionieren muss sei das dahingestellt, aber spontan würde ich da fixe 3V3 anlegen mit eventuell max 50mV Rippel drauf.
Die Referenzspannung erzeugt sich mein Controller selbst. Aber da dort ja das Problem zu sein schien, habe ich mir das gerade nochmal durchgelesen und hatte übersehen, dass ich warten muss, bis die Spannung steht. Mit einer entsprechenden Wartezeit scheint das Problem gelöst zu sein. Hoffentlich freue ich mich nicht zu früh. Ansonsten melde ich mich wieder mit Schaltplan und C-Code
Jetzt nutze ich nochmal diesen Thread für eine Frage. Eigentlich gibt es extra ein Bit, mit dem man abfragen kann, ob die Referenzspannung steht. Für meinen Controller, den PIC16F1823 ist dieses Bit leider immer 1. das minimale delay könne man aber in den Electrical Spezifications finden. Leider finde ich dazu einfach nichts. Ist jemand schalauer und sieht etwas, was ich nicht sehe? Oder kennt jemand sogar eine Methode, die FVR doch abzufragen? http://akizukidenshi.com/download/pic16f1823.pdf
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.