PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Phasenwinkel Regelung



jarod26
06.05.2010, 12:24
Hallo zusammen! Ich bin neu hier und noch nicht so erfahren in Microcontroller.
ich hab das Programm geschrieben und ich weiss nicht ob es vernünftig ist mit dem Programm eine Verzögerungszeit zu realisieren, weil mein Programm wirklich bist jetzt nicht wirklich funktioniert.
ich hoffe könnt mir helfen
Angaben :
Atmega16
4MHz Oscillator
Prüfspannung 50Hz wird durch ein extern komparator digitalisiert.
das heisst eine Periode vom 50Hz entspricht 80KHz vom Mikrocontroller.

sternst
06.05.2010, 13:09
Wenn du konkrete Hilfe haben möchtest, wäre es sinnvoll erst mal zu erläutern, was denn das Programm überhaupt konkret machen soll. Aus dem Titel und einem ersten Blick auf das Programm habe ich zwar eine Ahnung davon, was es machen soll, aber auf der Basis von Ahnungen/Raten zu operieren, ist selten sinnvoll. Außerdem wäre es sinnvoll, den tatsächlichen Code zu posten. Das da oben compiliert ja noch nicht mal.

jarod26
06.05.2010, 13:27
Das Programm soll die Phasenlage steuern.in dem bei jeder Schleife, die IST-Zeit ermittlet und mit dem Soll-winkel verglichen dann eine Korrektur-wert berechnet . Dies wird dann dekrementiert (Verzögerungszeit).
dann sollte bei Soll_Zeit einschalten

ich würde eigentlich gern wissen, ob die Zeit zwischen die 2 steigende Flanken gespeichert ist und mit gleichem Takt dekrementiert wird.

Ich könnte auch noch das gesamte Schema hier hochladen wenn jmd Interesse hat

sternst
06.05.2010, 13:48
Das Programm soll die Phasenlage steuern.in dem bei jeder Schleife, die IST-Zeit ermittlet und mit dem Soll-winkel verglichen dann eine Korrektur-wert berechnet . Dies wird dann dekrementiert (Verzögerungszeit).
dann sollte bei Soll_Zeit einschalten
Ist für mich immer noch völlig unzureichend (was ja vielleicht auch an mir liegen mag).
Was ist die "IST-Zeit"? Die Zeit zwischen welchen zwei Ereignissen?

Mir ist auch immer noch völlig unklar, was du überhaupt als Eingangssignale hast. Einmal ist von irgendeinem Takt die Rede, dann von einem digitalisierten 50Hz-Signal. Man könnte jetzt denken, dass sich beides auf das selbe bezieht (digitalisiertes 50Hz-Signal = Takt), aber laut Source-Code hängt ja wohl das eine an PD0 und das andere an PD1.

PS: Und was ist z.B. die Absicht hinter diesem Code:

// Korrektur dekrementieren bis er 0 wird.
for(;korrektur !=0; korrektur--);Das kannst du auch gleich durch "korrektur = 0;" ersetzen (der Optimierer wird genau diese Ersetzung sowieso durchführen).

Vitis
06.05.2010, 15:57
Der Schaltplan wäre hilfreich ... welche Sensoren für Strom, bzw. Spannung, wo am µC angeschlossen, welche Aktoren werden eingesetzt ...
Gehts um die Messung der Last von Synchronmotoren und Nachführung des Frequenzumformers oder was?

Hab sowas mal designet mit Optokopplern und Current Transducer und dann Nulldurchgänge

jarod26
06.05.2010, 18:09
ich lad hier ein Flussdiagramm und das Konzept von der Regelung hoch