Hi Nun kann mir jemand erklären wie eine Wechselspannung mit dem Atmega32 gemessen werden kann. In dem Datenblatt steht: selection of ADC input pins can be selected as positive and negative inputs to the differential gain amplifier. (Seite 200) und weiter kann man dann die Einstellung auf der Seite 213 den MUX einstellen. Wie ist das wenn ich jetzt den Mux so einstelle? 10001 ADC1 ADC1 1x Kann man dann mit dieser Einstellung am Kannal ADC1 positive und Negative Spannungen zu GND messen? Und bei der Einstellung des MUX: 10010 N/A ADC2 ADC1 1x Ist der ADC2 für Positive Spannung bezogen auf GND. Und ADC1 für negative Spannungen bezagen auf GND. ?????? Ich weiss das es nicht eine Einfache Frage ist und darum hoffe ich das damit schon mahl einer gearbeitet hat. Ich bedanke mich schon im voraus für eine Antwort. Mit freundlichen Grüssen Urs Müller
mußt du den beide Spannungen messen? Wenn es nur ne Wechselspannung ist in einem Sinus und du diese Messen willst reicht ja eventuell auch ne Diode vor dem ADC Pin, dann mißt du nur eine halbwelle, aber das ergebnisder zweiten ist jagleich nur mit anderem Vorzeichen.
Der ADC misst bei der Benutzung der Differenzeingänge eine Differenzspannung zwischen den beiden Eingängen. Wenn die Spannung an ADC2 größer als die an ADC1 ist, dann gibts einen positiven Wert in ADC, andersrum einen negativen. Wie beim normalen Operationsverstärker.
und die Spannung ADC1 und ADC2 (zwischen denen du differentiell mißt) müssen auf GND bezogen, zwischen VCC und GND liegen!
Danke für die Antworten die werden mir sicher helfen. Nun leider weiss ich jetzt das ich keine Negative Spannung so einfach messen kann. Vieleicht kann mir ja jemand sagen wie am besten eine Wechselspannung und DC Spannung gemessen werden kann ? --> ist mit einer Offsetspannung in der Mitte der Referenzspannung das beste? Oder hat jemanden eine Andere jdeeeeee ? Ich danke für eine Antwort. Mit freundlichen Grüssen Urs Müller
Hallo Urs Messen und messen sind halt 3 verschieden Dinge. Als billigvariante für AC: Wenn die Quelle belastbar und symetrisch ist: Die untere Halbwelle abtrennen zb mit vorgespannter Diodenklemme. (0,7v muss du das signal richtung + ziehen ). Die Obere Halbwelle Gleichrichten und somit hast du den halben Gleichrichtmittelwert der Spannung. ! das ist nicht der effektivwert!. Das kann für einfache "Überwachungen" reichen. Besser für AC. negative hilfspannung bereitstellen. Mit OPV einen aktiven Gleichrichter aufbauen. Da gibt es Schaltungsvarianten die den rms wert als Gleichspannung ausgeben. ( Bei interesse melden hab ich irgendwo noch rumliegen.) Die beste lösung ist wohl ein externer ADC. der neg Spannungen verarbeiten kann. Die gibts auch mit int. neg Spannungquelle. Andere Varianten die möglich sind. ja nach signalform und eigenschaft der Messquelle. Signal per C einkoppeln. -> Audio Verstärker mit einfacher Versorgung nur sin. Signal per lin. Optokoppler einspeisen. Hier muss die Quelle belastbar sein. Signalform unwichtig Signal per Übertrager einspeisen. für sin und f >50Hz <50Khz gar nicht sooo schlecht.
Moin! Beschäftige mich auch grad mit der problematik eine Wechselspannung zu messen und bin dann nach langem Hin und Her zu dem Schluss gekommen, das es ja reichen würde im Moment zu messen, wo ber Scheitelwert der AC anliegt. (Will im Bereich von mV messen, daher ist eine Verstärkung mittels OP von Nöten. dieser besorgt gleich das Abschneiden der negativen Halbwelle) Da hier nur global von AC gerdet wird, denke ich mal das es sich um eine sinusförmige AC handelt. Mein Ansatz liegt darin, einen Nulldurchgang mit steigender Flanke zu detektieren, dann einen Timer zu starten, der genau ein viertel Periodendauer wartet und dann den ADC anhaut zu messen. (Sollte netürlich alles per Int. geschehen, sonst ist der µC ja nur am warten und man kann nix anderes machen) Danach ist natrülich noch die Umrechnung von Scheitel- zu Effektivwert zu machen, aber das sollte ja kein Problem darstellen. Sollte es sich um die 50Hz Netzfrequenz handel, wären es also 50 Messungen pro sekunde, somit bleibt ausreichend Zeit um eine Umrechnung und ausgabe evtl. via LCD vorzunehmen.
Du könntest auch den AD-Wandler kontinuierlich messen lassen, und ein Vorher-Nachher-Vergleich anstellen, um den höchsten Wert herauszufinden; also solange der gemessene Wert grösser als der vorherige ist, wird dieser durch den neuen ersetzt. Werden die Werte wieder kleiner, hast du den Scheitelwert... ISR dürfte ein 3-5 Zeiler werden: newADC = ADC; if (newADC > oldADC) oldADC = newADC else //stop ADC, set scheitelflag. AUswertung von scheitelflag in der Main...
Auch möglich, aber meinst du net, dass es etwas "verschenderisch" ist, wenn man x Werte erfasst um sie dann wieder zu verwerfen? (Mit welcher Samplerate würdest du wo was denn starten?) Ausserdem könnte man die Zeit in der er die ganzen ADC´s macht, schön andere Dinge laufen lassen. Wie Soll denn die Ausgabe stattfinden, wenn er die ganze Zeit am Messen und Vergleichen ist? Das Einzige (was mir jetzt so einfällt) wozu das aufzeichnen von diversen Werten wäre, ist die Auswertung der Phasenverschiebung, aber dann reichts ja eh net nur die spannung zu messen, dann müsstest noch den Strom erfassen. (kla ist auch nur spannung messen, aber eben noch eine Zweite) Was ir grad dazu noch einfällt, sollte ein kleiner Spike in der Spannung ihn schon nach z.B. einer zehntel Periode dazu bringen abzubrechen, ist die Messung fürn A****. Dann sollte zumindest geprüft werden ob zwei aufeinanderfolgende Messungen höhere Werte liefern als eine vorherige. Grundlegend weiß ich jedoch nicht, wieso man dem µC so viel arbeit zumuten sollte, denn die Netzfrequenz schwank nur minimal und somit wäre eine Messung die Timergesteuert abläuft doch recht genau. Und sagen wir mal, man trifft die 5ms (viertel Periode bei 50Hz) nicht genau, dann hat man selbst beim Messun nach 4 bzw. 6ms (also 20% Fehler im Zeitpunkt) grad mal 5% Messfehler. Wenn man weiß das man zu einem "falschen" Teitpunkt misst, kann man den Fehler ja auch rausrechnen. Natürlich bleibt dann noch die Freq.abweichung des Netzes. Hab grad mal geschaut und gesehen, das RWE eine Abweichung von max. 0,2Hz zulässt. Somit ist dann eine Periode zwischen 19,92ms und 20,08ms lang. Und ÄÄÄHHHMMM das wirkt sich nun im Ergebnis so gut wie nicht aus! Bei korrektem Messzeitpunkt (für 50Hz) wäre das eine Abweichung von 0,002%. Und auch wenn der Messzeitpunkt nicht exakt ist ergibt sich in etwa die gleiche Abweichung wie oben angegeben. Hui, langer Text!
Das mit der Genauigkeit der Netzspannung war hier auch schon mal ein Thema... Natürlich ist mein Vorschlag nicht ganz komplett ausgereift, sollte ja auch nur eine weitere Möglichkeit aufzeigen. Man kann nebenbei auch noch die Zeit messen, und so dann Spikes auffinden bzw. die Spannungsabweichung zum vorherigen Wert bestimmen. Zeitlicher Aufwand: Du möchtest nur eine Halbwelle vermessen: das sind 10ms. In den nächsten 10ms (=10000µs) passiert gar nichts. Ein AVR mit 4MHz hat dann ziemlich viel Zeit (~40.000 Instuktionen)... Wenn man den ADC im kontinuierlchen Modus betreibt, springt er gelegentlich in die ISR, überprüft den Wert, und die Hauptschleife überprüft dann hin und wieder das Flag... Solange da keine weiteren zeitkritischen Sachen passieren, ist doch alles in Butter. Man muß halt mal gucken, mit welcher Frequenz man den ADC (Datenblatt)betreibt, und wie dann die zeitliche Teilung der Halbwelle aussieht...
Negative Spannung so einfach messen geht schon wenn ATMega GND und GND der Messspannung galvanisch getrennt sind. Das ist der Fall bei Batteriebetrieb wie auch bei den meisten modernen Transformatoren. Nur wenn deine Schaltung auf einem wirklich geerdetem GND potenzial liegt geht das nicht. Aber Vorsicht GND deiner Schaltung kann unter Umständen zur Erde hin ein hohe Spannung führen. Bei Messung an Netzspannung kann das Lebensgefährlich sein auch wenn due einen Spannungsteiler davor hast.
@Rahul Stimme dir voll zu, dass der µC dann die meiste Zeit nur als mini-Heizkörper dient, aber wenn man etwas misst, möchte man das auch gerne angezeigt haben. Und besonders wenn man dazu ein LCD hernimmt, dauert die ausgabe schon etwas. Auch die umrechnung nimmt ja etwas Zeit in Anspruch. Hab jetzt keinerlei betrachtungen angestellt, wie knapp es mit der Zeit wird, aber denke nicht dass es da irgendwo probleme geben sollte. Auch die von dir genannte möglichkeit wird sicher laufen! Zumal man da eigentlich auf eine Nulldurchgangserkennung verzichten kann.
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.