Hallo Leute, ich möchte mit einem ACS722 Sensor (+/-5 A) den Wechselstrom einer Phasenanschnitt-Steuerung messen, um einen Motor zu überwachen. Jedoch schwanken die Messwerte im Moment noch zu stark. Wie bekomme ich mit den Sensor ein brauchbares Ergebnis? Den Strom berechne ich über den quad. Mittelwert.
Tim K. schrieb: > Jedoch schwanken die Messwerte im Moment noch zu stark. a) Wie stark? b) Mit welcher Abtastrate werden die Werte eingelesen?
Dieter schrieb: > Tim K. schrieb: >> Jedoch schwanken die Messwerte im Moment noch zu stark. > > a) Wie stark? Der Sensor liefert im Leerlauf einen Spannungswert von 1,64 V. Die Messwerte bei Motorbetrieb schwanken zwischen 1,5 V und 1,79 V. > b) Mit welcher Abtastrate werden die Werte eingelesen? Ich lese den A/D-Wandler jede Millisekunde aus und speichere den Wert in einem Array bis ich 20 Messwerte habe.
Schnell genug sollte er ja sein, schmalbandig bis 80 kHz: https://www.allegromicro.com/en/Products/Sense/Current-Sensor-ICs/Zero-To-Fifty-Amp-Integrated-Conductor-Sensor-ICs/ACS722 Anstiegszeiten im Mikrosekundenbereich, allerdings ein hohes Rauschen, 42mA rms bezogen auf den gemessenen Strom, das sollte bei max. 5A noch nicht so stark stören.
:
Bearbeitet durch User
Tim K. schrieb: > Der Sensor liefert im Leerlauf einen Spannungswert von 1,64 V. > > Die Messwerte bei Motorbetrieb schwanken zwischen 1,5 V und 1,79 V. Aus Datenblatt: Sensitivity Sens IPR(min) < IP < IPR(max) – 264 – mV/A Zero Current Output Voltage VIOUT(Q) Bidirectional; IP = 0 A – VCC × 0.5 – V Kann das sein das dein Motor ~ 0.5A zieht ? Was du als Schwanken bezeichnest, ist das nicht einfach die Positive halbwelle und Negative halbwelle gemessen ? 1A -> 0.264V 1.64V - 1.5 V = 0.14V --> ~0.5A 1.64V - 1,79V =-0,15V --> ~ -0.5A
versuchmachtkluch schrieb: > Tim K. schrieb: >> Der Sensor liefert im Leerlauf einen Spannungswert von 1,64 V. >> >> Die Messwerte bei Motorbetrieb schwanken zwischen 1,5 V und 1,79 V. > > Aus Datenblatt: > Sensitivity Sens IPR(min) < IP < IPR(max) – 264 – mV/A > Zero Current Output Voltage VIOUT(Q) Bidirectional; IP = 0 A – VCC × > 0.5 – V > > Kann das sein das dein Motor ~ 0.5A zieht ? > > Was du als Schwanken bezeichnest, ist das nicht einfach die Positive > halbwelle und Negative halbwelle gemessen ? > > 1A -> 0.264V > > 1.64V - 1.5 V = 0.14V --> ~0.5A > 1.64V - 1,79V =-0,15V --> ~ -0.5A Ja, der Motorstrom liegt im Bereich von 0,5 A. Etwas mehr noch. 1,5 V und 1,79 sind Min und Max-Wert. Muss ich mehr Samples aufnehmen?
Bei der -5A/+5A-Ausführung liegt die Leerlaufmessspannung bei 0,5*Vcc. Das scheint mit 1,64V bei einer 3,3V-Versorgung ja einigermaßen zu stimmen. Für ein genaues Ergebnis sind Messungen in 1msec-Abständen aber doch relativ selten (5% einer 50Hz-Vollschwingung). Welche Eigenschaften hat der A/D-Wandler? Deshalb vielleicht für mehr Genauigkeit tatsächlich öfter messen und für die Mittelwertbildung erst den tatsächlichen Nullwert vom Messwert abziehen (ggf. hierzu auch Vcc messen).
Tim K. schrieb: > Ich lese den A/D-Wandler jede Millisekunde aus und speichere den Wert in > einem Array bis ich 20 Messwerte habe. Nur damit da kein Missvertändnis aufkommt: Liefert der A/D-Wandler auch jede Millisekunde einen neuen Wert oder liest du ihn jede Millisekunde aus - auch wenn er noch beim Wandeln ist?
Die Frage ist auch ob die Messwerte immer equidistant sind. Wenn der Abtastzeitpunkt driftet kann das auch zu solchen Schwankungen führen.
Du schreibst zwar zu Beginn: Tim K. schrieb: > Den Strom berechne ich über den quad. Mittelwert was danach klingt, dass du den Effektivwert des Stroms bestimmst. Aber die von dir beschriebenen Zahlenwerte Tim K. schrieb: > Ja, der Motorstrom liegt im Bereich von 0,5 A. Etwas mehr noch. > 1,5 V und 1,79 sind Min und Max-Wert. sehen dann eher nach den Momentanwerten des Stroms aus. Wie versuchmachtkluch beschrieben hat: wenn der Momentanwert 0A ist gibt dein Sensor 1,64V aus. Die positive Halbwelle des Stroms liefert dann größere Spannungen (bis 1,79V), die negative Halbwelle liefert kleinere Spannungen (bis 1,5V). Falls der Bereich 1,5V bis 1,79V also für deine Momentanwerte gilt, ist alles richtig, ein Wechselstrom muss so um den Mittelwert schwanken. Deshalb zur Sicherheit nochmal die explizite Nachfrage: gilt der Bereich 1,5V-1,79V für die einzelnen Messwerte deines ADCs oder gilt er für den von dir berechneten Effektivwert? Falls die genannten Werte den Momentanwerten entsprechen, musst du - von jedem der 20 Einzelwerte 1,64V abziehen - die Differenz quadrieren - die 20 quadrierten Werte aufaddieren - die Summe durch 20 teilen - die Wurzel daraus ziehen. Dann erst siehst du den Effektivwert des Stroms, und der sollte einigermaßen konstant sein. Wenn das klappt kann man immer noch überlegen, schneller abzutasten um die Genauigkeit zu erhöhen. Wichtig ist aber, dass der Zeitbereich, über den du mittelst, immer ein ganzzahliges Vielfaches der Netzperiode ist (bei 20 Werten im Abstand von 1ms passt das).
Achim S. schrieb: > Wichtig ist aber, dass der Zeitbereich, über > den du mittelst, immer ein ganzzahliges Vielfaches der Netzperiode ist > (bei 20 Werten im Abstand von 1ms passt das). d.H. du musst wirklich jede Millisekunde messen. ein
1 | for (int i=0; i<20; ++i) { |
2 | messwerte[i]= analogRead(PIN); |
3 | delay(1); |
4 | }
|
erfüllt das nicht.
Achim S. schrieb: > - die Differenz quadrieren > - die 20 quadrierten Werte aufaddieren > - die Summe durch 20 teilen > - die Wurzel daraus ziehen. Ja, SqareMainRoot. Also umgekehrt wie in der Abkürzung.
Achim S. schrieb: > - von jedem der 20 Einzelwerte 1,64V abziehen Wenns denn genau 1,64V sind. Besser die Werte über 1 Periode mitteln und diesen Mittelwert dann von den einzelnen Messwerten abziehen.Dann diese quadrieren und... Der Sensor scheint generell nicht das "Überding" zu sein. Temperaturkoeffizienten sind nirgends angegeben (warum wohl?). 3,9mm Kriechstrecke laden zum schmunzeln ein. 4mm wäre Mindestmaß, 8mm meist gefordert. Die Pins mit der Netzspannung viel zu enger Abstand.Dafür billig... Grüsse
Gebhard R. schrieb: > Die Pins mit der Netzspannung viel zu enger Abstand Wieso, was glaubst du denn wieviel Potenzialdifferenz zwischen den Pins für IP+ und IP- auftreten? Gebhard R. schrieb: > 3,9mm > Kriechstrecke laden zum schmunzeln ein. 4mm wäre Mindestmaß, 8mm meist > gefordert. Das Teil hat ja auch nur eine Basic Isolation. Ohne frage nicht geeigent um ohne eine weitere Isolierung an Netzspannung zu messen. Zumindest wenn man direkt mit der Niedervoltseite durch die er versorgt wird interagieren kann.
:
Bearbeitet durch User
Mal dumm eingeworfen. Hast du ein sauberes LC Filter am Wandler Eingang? Phasenabschnittsteuerungen machen gerne Spikes, diese musst du sauber raus filtern. Weiter wen du nicht Phasen-synchronisiert misst, "misst du natürlich Misst", wie mann im Volksmund so schön sagt. Wie ein Vorposter schon bemerkt hat ist 5% zu wenig bei >Sinus und erst recht bei Phasenanschnitt! Hast du ein Entsprechendes Filter das ein Sauberen "Spannungsdurchschnitt" dem DA Wandler übergibt? Sonnst müsstest du mehr Messzyklen generieren und am Besten Phasen-synchronisiert. Gruß
:
Bearbeitet durch User
Gebhard R. schrieb: > 3,9mm Kriechstrecke laden zum schmunzeln ein. 4mm wäre Mindestmaß, Klar, die weniger als 3% ändern die Welt :-( Solche Aussagen laden zum Schmunzeln ein ;-)
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.