www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Erklärung zur SVM


Autor: jack (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
könnte mir jemand diese Berechnung kurz erklären?
Bei einer App Notes zum XC878 von Infineon gibt es eine CORDIC 
Berechnung

Ta   = (unsigned int) ((CD_CORDY));     //ta  =m*sin(angle)

Tb   = ((unsigned int) (((7*(CD_CORDX))>>2)-(CD_CORDY)))>>1;     //tb 
=m*sin(60-angle)

Würde dies gerne durchrechnen, aber mir fehlt die Angabe zu m in der 
Formel. Könnte mir jemand erklären was m bedeutet??

  Grüße
   jack

Autor: jack (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Noch zur Vervollständigung die kompl. Berechnung.

  Angle = Angle+Speed_Reference;

  Sector = (int)((((long)(Angle)*6)>>16) & 0x0007);

  AngleTab= (unsigned int)Angle-10922*Sector;

  //  AngleTab=(Angle*6)/6 ;


  //cordic implementation

  SYSCON0 |= 0x01;

  CD_STATC = 0x00;
  CD_CON   = 0x0A;             //Circular /Rotation Mode
  CD_CORDYL = 0x00;          //Xfinal = K[X cos(Z) - Y sin(Z)]
  CD_CORDYH = 0x00;          //Yfinal = K[Y cos(Z) + X sin(Z)]
  CD_CORDXH = (Amplitude>>8);
  CD_CORDZH = (AngleTab>>8);
  CD_CORDZL = (AngleTab);
  CD_CORDXL = Amplitude;

    while(!(CD_STATC & 0x04));


  if((Sector&0x0001)==1)
  {
  Ta   = (unsigned int) ((CD_CORDY));     //ta  =m*sin(angle)

  Tb   = ((unsigned int) (((7*(CD_CORDX))>>2)-(CD_CORDY)))>>1;     //tb 
=m*sin(60-angle)
  } // tb= (sqrt(3)*cos(angle)-sin(angle))/2

  else
  {
  Tb = (unsigned int) ((CD_CORDY));     //tb  =m*sin(angle)

  Ta   = ((unsigned int) (((7*(CD_CORDX))>>2)-(CD_CORDY)))>>1;     //ta 
=m*sin(60-angle)
  } // tb= (sqrt(3)*cos(angle)-sin(angle))/2


Ich denke das m steht für den Modulationsindex.
Ich würde aber gerne die Berechnung im CORDIC nachvollziehen können um m 
ohne CORDIC zu berechnen.

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.