www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Drehzahl messen im MC


Autor: Joachim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich hätte eine prinzipielle Frage über Drehzahlmessung.

Geht man davon aus, man bekommt in Abhängigkeit der Drehzahl Impulse, 
die auf die Versorgungsspannung angepasst über einen PIN im MC 
eingelesen werden.

Wie sieht dann am besten der Programmcode aus, um die Drehzahl zu 
bestimmen. Ich hätte mir gedacht, ich lasse einfach einen Timer laufen, 
und addiere die Impulse auf.

In C-Code könnte das z.b so aussehen

if(bit_is_set (PORTD,PIND1))
i++;

Bei z.B. 10 Impulsen teilt man dann durch die Zeit und normiert auf 
U/min.

Was anderes fällt mir im Moment nicht ein.

Autor: N. K. (bennjo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kommt auf die Drehzahl an...und die Anzahl der Impulse/Umdrehung ... 
zunächst ist es sinvoller die "Periodendauermessung", also die Messung 
der Zeit zwischen 2 Impulsen zu verwenden, erst bei höheren Drehzahlen 
geht man zur "Frequenzzählung", wie von dir beschrieben, über.

Gruß,
Nikias

Autor: Joachim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also mein Drehzahlmesser macht einen Impuls pro Umdrehung.

Die Periodendauer bei 3000U/min wäre T=0,02s.

Ich würde dann einen Impuls die Messung starten, der Timer läust los und 
stoppt bei dem nächsten Impuls. Den erreichten Zählerstand (bei einem 
10Bit Timer mit 4/256 MHZ wären das dann 312 Schritte) dann auswerten 
und auf U/min normieren ?

t=312*256/(4*10^6) in sec

n=1/t * 60 in  U/min

Während der Berechnung sollte wahrscheinlich der Timer angehalten werden 
?

Autor: N. K. (bennjo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
1/Umdrehung? Also dann auf jedenfall Periodendauermessung!
Du kannst im Interrupt den Timer als aller erstes auslesen und sofort 
wieder zurücksetzten. Der kann dann gleich wieder losrennen.

Allerdings würde ich den Timer wesentlich schneller laufen lassen. Das 
gibt sonst nur ne Schätzung :-)

Ich hab mich grad im Rahmen meiner Studienarbeit intensiv mit dem Thema 
beschäftigt! Da hatte ich allerding 1024 bzw. 2048 Impulse pro Umdrehung 
... das ist dann nochmal was anderes.

Die Formel für den maßgeblichen Quantisierungfehler ist übrigends:

Fr = ( Z / f0 ) * f

mit f0 als Zählerfrequenz (bei dir 4MHz/256), Z als Anzahl der Impulse 
pro Umdrehung (bei dir 1), und f als Drehfrequenz (Bei dir 2000/60).

Gruß,
Nikias

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie wäre es mit ICP???

Autor: Joachim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Nikias,

danke für die Info.

Nur aus Interesse:
Worüber schreibst du deine Studienarbeit ?
Ich versuche ich eine drehmomentgereglete GNM zu entwerfen.
Die Spannungsversorgung ist fertig, nur eine möglichst genaue Drehzahl 
muss ich zurückgeben um in Abhängigkeit davon und dem gemessenen Strom 
die speisende Spannung zu regeln.

Autor: N. K. (bennjo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Thema lautete:
"Implementierung einer
Drehzahlregelung für umrichtergespeiste
Asynchronmaschinen mit
einem Mikrocontroller"

Das Ganze läuft auf nem 16er Pic ... mit IGBT's und richtig Dampf (27kW 
Maschine).

Ich hab sie heute binden lassen :-) Morgen ist Abgabe :-))))

Wenn du interesse hast, schreib mir ne Mail an nikias (ät) stnd (dot) de
Dann schick ich se dir als PDF...da ist ein ganzes Kapitel über die 
Drehzahlerfassung drinn.

Gruß,
Nikias

Autor: N. K. (bennjo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mail ist unterwegs...

Autor: Svente (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Nikias,

ich beschäftige mich auch mit diesem Thema. Allerdings habe ich ich eine 
24V ASM mit 1,1kW und 1400U/min Nenndrehzahl.

Habe bis einen Winkelgeber IC (MLX90316) implementiert um für die 
Regelung Rotorlage und Drehzahl zu bekommen. Ca. alle 2ms liefert er den 
aktuellen Rotorwinkel (0...360°) per SPI in den MC (M16C). Nun brauche 
ich halt auch die Drehzal und komme da nicht weiter.

Ich habe ja nicht wirklich definierte Pulse die ich Zählen kann... Hast 
du vielleicht eine Idee wie man das lösen könnte?

Da ich mit Regelung bis jetzt auch nicht viel zu tun hatte, wäre es nett 
wenn du mir ein paar tips geben könntest was Regelzeiten angeht.

Wie oft und von welcher Dauer sind Regelzyklen bei der Regelung einer 
ASM?

Vielleicht kannst du mir auch eine Kopie oder einen Auszug deiner Arbeit 
zukommen lassen... das wäre toll!

Ich bedanke mich

Autor: N. K. (bennjo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich weiß nicht ob dir meine Arbeit da weiterhilft...aber Schreib mir 
einfach ne mail.

Allerdings, Rotorlage das hört sich nach Feld-Orientierter Regelung an. 
Richtig?

Ich hab mich für die U/f Kennlinie entschieden, weil es mit 
unterschiedlichsten Motoren und der ziemlich begrenzten Rechenzeit des 
PIC machbar sein sollte.

24V? Arbeitest du mit MOSFet's?

Meine Drehzahlregelung läuft mit läppischen 40Hz (ja wirklich nur 40Hz) 
... dafür aber ziemlich gut.


Gruß,
Nikias

Autor: Svente (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also erstmal meine mail adresse: p_tornado@gmx.de

Ja, ist korrekt. Der Umrichter läuft über eine B6- Brücke mit MOSFet´s. 
Im Moment wird der Motor auch über U/F gesteuert. Da ein Fahrzeug damit 
betrieben werden soll, muss ich da ne Regelung implementieren. Das soll 
feldorientiert mit Sensoren laufen...

Wäre super, wenn du mir die Arbeit rüberschickst. Da kann ich sicher 
viel draus lernen...

Danke dir

Autor: N. K. (bennjo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist raus...
bin übrigends durchaus an Kritik an meiner Arbeit interessiert :-)

Gruß,
Nikias

Autor: Svente (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hey, vielen Dank!

Werde mir das jetzt mal reinziehen...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.