Forum: Analoge Elektronik und Schaltungstechnik AC Frequenz messen und verarbeiten Arduino


von Speedy333 (Gast)


Lesenswert?

Erst mal Hallo und Guten Morgen,

ich habe zu einer bestimmten Sache mal ein paar Fragen.
Und zwar möchte ich gern eine Wechselspannung Frequenz mit meinem 
Arduino auslesen und verarbeiten.
Ich bin zwar noch Anfänger, aber ich denke wenn ich ein paar hilfreiche 
Tipps bekomme, wird das schon klappen! ;)

Ich habe mich jetzt 2 Tage damit beschäftigt, wie man eine AC 
Spannung/Frequenz mit einem Arduino messen könnte,
da gibts zum einen den etwas ungenaueren analogen Weg und einen präzisen 
auf Digitalen Weg.

Nur irgendwie habe ich Probleme direkt hier im Board etwas über AC 
Frequenz messen zu finden, um zu sagen das ist genau das, was ich 
gesucht habe.

Der Generator ist ein 3 Phasen 400V mit 3x90A und 50KW Leistung.

Jetzt habe ich im Netz mal ein bissel gesucht und diese Sachen gefunden:

http://www.robotshop.com/100a-ac-current-sensor.html
(5 Volt Spannung und analog)


http://www.conrad.de/ce/de/product/505264/Stromsensoren-CSN-Serie-Honeywell-CSNX25-5-V-
(genau 5V Betriebsspannung, aber 40A leider nur)


http://www.komputer.de/zen/index.php?main_page=product_info&products_id=165&zenid=93288c75d2779f116476e667f66019f6
(wieder 5 Volt Spannung, aber leider wieder nur 50A)


http://de.farnell.com/jsp/displayProduct.jsp?sku=1617417&CMP=KNC-GDE-FDE-GEN-LISTINGS&gross_price=true&mckv=sUGpAyJBA|pcrid|productlistings&gclid=CJLtvsGQk7kCFUS33godqioAZw
(dieser hier, scheint mir perfekt genug)


http://de.rs-online.com/web/p/entwicklungskits-power-management/7639756/
(soll bei Strommessungen sehr präzise sein)


Wobei ich euch jetzt einfach mal Frage, mit welchen Bauteilen ich am 
genausten die Frequenz auslesen könnte, oder vllt. euch schon einer 
gearbeitet hat, um Hilfestellungen zu bieten.

Habe auch noch was über einen OP und ADU gehört, ich denke mir 
Operationsverstärker und Analog Digital Wandler ist damit gemeint?!

Wenn mir jemand etwas Rat weiß, wie ichs angehe, wäre ich sehr dankbar.

LG Speedy

von dcf (Gast)


Lesenswert?

Speedy333 schrieb:
> Wobei ich euch jetzt einfach mal Frage, mit welchen Bauteilen ich am
> genausten die Frequenz auslesen könnte, oder vllt. euch schon einer
> gearbeitet hat, um Hilfestellungen zu bieten.

Du könntest hier in der Codesammlung suchen.
Oder fang doch erst einmal ganz einfach an und messe die DC-Frequenz.

von Speedy333 (Gast)


Lesenswert?

Nunja, ich glaube da vergehen noch nen paar Tage, bis ich das verstehe!

http://www.mikrocontroller.net/articles/Optokoppler

;)

von spess53 (Gast)


Lesenswert?

Hi

>http://de.farnell.com/jsp/displayProduct.jsp?sku=1...
>(dieser hier, scheint mir perfekt genug)

Das ist ein 50A Sensor.

MfG Spess

von amateur (Gast)


Lesenswert?

@Speedy333

Wenn Du mit 230/400V rummachen willst, wirst Du wohl um Optokoppler 
nicht herumkommen.

Alles andere bringt recht große Probleme mit sich.
1. Da ist zum einen, dass die Arduinos (Atmels und auch andere) oft
   nur mit Gleichspannung umgehen können.
2. Der Messbereich liegt da fast immer bei 0 bis +Ucc (5 oder 3,3V
   oder kleiner).

Natürlich kann man mit einem entsprechenden Spannungsteiler und/oder der 
Anpassung durch Operationsverstärker diese Probleme umgehen, ist aber 
wesentlich umfangreicher.
Auch könnte man das Problem durch Gleichrichtung handlicher gestalten 
(nur noch eine Polarität). Fakt bleibt aber: Ganz so einfach ist es 
nicht.
Ob es in der Arduino-Serie auch Prozessoren gibt, die mit 
Differenzspannungen umgehen können, weis ich nicht.

von Joachim (Gast)


Lesenswert?

hallo

Erstmal sollte die klar sein, was du messen willst.
Du sagst, du willst die Frequenz messen, verweist in
deinen Links aber auf Stromsensoren.

Trafo an die 400V, auf ungefährliche Spannungen wandeln
und mit diesen arbeiten.

Gruß
Joachim

von dcf (Gast)


Lesenswert?

Speedy333 schrieb:
> Nunja, ich glaube da vergehen noch nen paar Tage, bis ich das verstehe!

Sei mir nicht böse, aber dann solltest du die Finger davon lassen.

Im Betreff fragst du nach messen+verarbeiten, deine Links weisen aber 
auf die Signalanpassung auf einen µC geeigneten Pegel hin.

von Reinhard Kern (Gast)


Lesenswert?

Hallo,

um die Frequenz zu bestimmen, musst du nicht den Strom messen, also 
brauchst du auch keinen Sensor für 50 A. Die Frequenz bestimmt man aus 
der Spannung, auch dann wenn garkein Strom fliesst. Aber die Spannung 
ist das, was dich möglicherweise umbringt, bei deinem Kenntnisstand.

Gruss Reinhard

von Speedy333 (Gast)


Angehängte Dateien:

Lesenswert?

Ihr seit irgendwie richtig nett muss ich sagen! ;)

Würde das hier in etwa die Lösung zu meinem Problem werden.. außer wie 
manche meinen, zu meinem Tode?

Und soviel ich jetzt in Erfahrung bringen konnte, kann man mit einem 
Optokoppler nur den Schaltzustand ermitteln und eine Galvanische 
Trennung mit ihm erzielen. Nur wie ich damit die Amplitude etc. bekomme 
usw. um die Frequenz errechnen zu können, leider nicht!

Unter einer Frequenz aufgebauten Drehzahlsteuerung, hab ich leider auch 
nichts richtiges gefunden.

Irgendwie hatte ich mir gedacht, mit einem von dem Oben genannten 
Sensoren bekommt mans irgendwie hin ;)

LG

von Hubert G. (hubertg)


Angehängte Dateien:

Lesenswert?

Noch einfacher geht es so.
Der Kondensator muss ein X2-Typ sein.

Der Rest ist dann Software.

von Speedy333 (Gast)


Angehängte Dateien:

Lesenswert?

Nunja, könnte hier einer etwas drüber sagen? So dürfte ich eigentlich 
eine Spannung hin bekommen, mit der Arduino arbeiten könnte...

Printtrafo 230V auf 6V, dann gleichgerichtet, Poti dann auf geeigneten 
Wert eingestellt. Z-Diode dient nochmal als Sicherheit.

Kalibrieren durch 250 V kurzzeitig an die Primärwicklung, 
Ausgangsspannung mit dem Poti dann auf 5 V einstellen. Dient auch als 
Reserve.

Dann Programmablauf mit Analogem verfahren wie es beliebt ;)

Würde dieses funktionieren, oder gibts vllt auch noch eine bessere 
Methode?

LG Speedy

von Speedy333 (Gast)


Lesenswert?

Vielen Dank Hubert ;)

werd mich mal langsam aber sicher ran tasten..
ist ja schließlich noch kein Meister vom Himmel gefallen ;)

LG

von Reinhard Kern (Gast)


Lesenswert?

Speedy333 schrieb:
> Nur wie ich damit die Amplitude etc. bekomme
> usw. um die Frequenz errechnen zu können, leider nicht!

Das ist immer noch der falsche Dampfer - für die Frequenz musst du keine 
Amplitude messen, nur feststellen, ob die Spannung grösser oder kleiner 
Null ist. Das macht ein Optokoppler schon ganz von selbst.

Gruss Reinhard

von Hubert G. (hubertg)


Lesenswert?

Ich weiss nicht ob du einen Oszi hast. Wenn ja, dann schau dir mal an 
was bei meiner Schaltung herauskommt.

von Digi S. (digispark)


Lesenswert?

spontan würde ich sagen: mit Trafo auf 6 Volt --> Gleichrichter --> 
Schmitt Trigger (oder Analog-Komperator)--> Interrupt-Eingang des 
Controllers.

Den Controller selbst kannst Du dann noch flux über einen 7805 (mit 
zusätzlichen Kondensatoren zur Glättung) an den Gleichrichter hängen und 
die Schaltung damit gleich versorgen.

Als Referenz für den Schmitt Trigger kannst Du einen einfachen 
Spannungsteiler nehmen.

Im Interrupt-Handler die Zeit zwischen zwei Signalen messen und daraus 
die Frequenz errechnen und fertig.

Durch den Gleichrichter wird Du dann pro Halbwelle ein Signal am 
Schmitt-Trigger bekommen. Also must Du die Frequenz ggf. noch durch 2 
teilen.

von Speedy333 (Gast)


Lesenswert?

Ok.. das mit dem gleich versorgen klingt wunderbar.. bei dem Rest wie 
Analog-Komparator meinst du bestimmt einen LM393 oder ähnliches..

mhhm Spannungsteiler 
http://www.mikrocontroller.net/articles/Spannungsteiler ist so was 
gemeint..

Schmitt Trigger ist das gemeint 
http://www.mikrocontroller.net/articles/Schmitt-Trigger

nunja, schaun wir mal..

Vielen Dank erst mal ;)

von Speedy333 (Gast)


Angehängte Dateien:

Lesenswert?

Guten Abend euch allen,

ich hätte da gerne mal eine Auskunft.. und zwar habe ich mir bei euch 
son bissel was zusammen gesucht. Nur ich weiss nicht obs dementsprechend 
richtig so ist..

was sagt ihr dazu?

von Helmut W. (heweb)


Lesenswert?

Vielleicht hilft folgende Anregung für die Netzfrequenzmessung
mit einem Draht als Zusatzhardware:

https://www.youtube.com/watch?v=7JRM3pHV9XQ&html5=1&hd=1

Hier ist der Code dazu:
// (C) Dipl. Phys. H. Weber
//
// Wie genau ist die Netzfrequenz von 50 Hz ?
//
// Das kann sich unter www.netzfrequenzmessung.de ansehen.
//
// Stimmt die Ausgabe dort ?
// Ein längerer Draht in Digitalport 8 des Arduino zeigt es


int net = 8;
unsigned long lastmicro, micro;
char* txt =" 
";
int space, lastspace;


void setup() {
  // initialize the digital pin 8 as an input.
  pinMode(net, INPUT);
  Serial.begin(115200);
  micro=micros();
  lastmicro=micro;
  Serial.println("Start ...");
}



void loop() {
byte i;
double freq;
char chr;
char *pt;

  //Serial.println("Synchronisieren...");

  // Synchronize: low-high-low
  while (0==digitalRead(net));
  while (1==digitalRead(net));

  // just now changed to LOW
  lastmicro=micros();

  // Wait 50 periods
  for (i=0;i<100;i++) {
    while (1==digitalRead(net));
    while (0==digitalRead(net));
  }

  // just now changed to HIGH
  // measure the time needed
  micro=micros();
  // compute frequency, offset to equalize to netzfrequenzmessung.de
  //freq=100000000.0/(micro-lastmicro+12950);
  freq=100000000.0/(micro-lastmicro);
  freq-=0.256;
  Serial.print(freq,3);
  // prepare plot of measurements
  space=(freq-49.97)*1000;
  // limit max. freq.
  if (space>60) space=60;
  //clear buffer txt
  pt=txt; for (i=0;i<61;i++) *pt++=(const char)0x20;

  // plot scale of 49,98 50,0 and 50,02 Hz
  *(txt+30)=*((const char *) "|");
  *(txt+10)=*((const char *) ".");
  *(txt+50)=*((const char *) ".");

  // plot value
  chr=*((const char *)"o");
  *(txt+space)=chr;
  *(txt+space+1)==(char)0;

  //mark trend
  if (lastspace==space) *txt=*((const char *)"=");
  if (lastspace< space) *txt=*((const char *)"+");
  if (lastspace> space) *txt=*((const char *)"-");


  // remember last value
  lastspace=space;

  Serial.println(txt);

}

von Markus (Gast)


Lesenswert?

Immer diese alten Threads, die wieder hochgeholt werden. ;)

Mich würde ja mal von Speedy interessieren, ob das mit der Messung 
geklappt hat.

Falls jemand noch eine weitere Quelle für Live-Daten zur Netzfrequenz 
haben möchte, kann ich auch www.netzfrequenz.info sehr empfehlen. ;)

Wenn jemand ein paar Daten haben möchte, um sie mit seinen zu 
vergleichen, würde ich die auch zur Verfügung stellen.

Gruß...
...Markus

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
Noch kein Account? Hier anmelden.