www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Raumzeigermodulation auf Tricore


Autor: plottermeier (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe eine Raumzeigermodulation auf einem Tricore1796 programmiert 
(mit Dave und Tasking).
Prinzipiell funktioniert das auch, aber leider ignoriert der µC 
sporadisch Aus-und Einschaltbefehle, so dass hin und wieder Kurzschlüsse 
in der IGBTBrücke geschaltet werden.
Hat von Euch schonmal irgendwer sowas zum Laufen gebaracht oder weiß, ob 
man irgendwo so eine RZM für den Tricore als Beispiel bekommt?

viele Grüße
Jens

Autor: Johann L. (gjlayde) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit DAvE? oje...

Machst Du die PWM etwa "von Hand" oder mittels GPTA?

Autor: plottermeier (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

genau so, gibt´s da bessere Möglichkeiten?

Jens

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo

Hört sich interessant an. Betände vielleicht die möglichkeit das Konzept 
etwas genauer zu sehen zu bekommen. Plan gerade sowas ähnliches aber 
begehe damit eher "Technisches Neuland".

Ich muss zu geben die TRICORE Architektur ist mir nicht bekannt. Ich 
hätt das mit der PWM einfach über den Compare modus von den Timern 
gelöst oder wenn vorhanden PMW funktion.

mfg Patrick

Autor: Johann L. (gjlayde) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die meisten TriCore-Derivate haben Timer-Arrays, der TC1796 zB zwei 
globale Timer Arrays GPTA0/1 und ein lokales Timer Array LTCA, insgesamt 
glaub an die 96 Timer.

Mehrere solcher Timer eines Arrays können zusammengefasst werden, um 
komplexere Signale zu erzeugen, dazu gehört auch Mehrphasen-PWM.
D.h. in einem Timer des Arrays kann man auf das Ergebnis des 
vorhergehenden zurückgreifen und die Signale sukzessive durch AND, OR, 
Timer Start/End/Reset zusammenbasteln bis man die gewünschten 
Signalformen hat. Ist schon ne Zeit her, daß ich das gemacht hab. Code 
kann ich hier keinen posten.

Evtl. kann man mit DAvE was zusammenclicken um nen Anfang zu bekommen, 
aber der Code, den DAvE macht, ist für viele Sachen zu statisch. Auf 
lange Sicht fährst man mit handgemachtem Code besser, stabiler und 
wartbarer.

Function Units auf TriCore selbst zu proggen ist dennoch ne Ochsentour. 
Die Maschine ist mächtig, aber die Datenblätter sind grottenmies und die 
Errata Sheets meterdick.

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
An was erinnert mich nur an eine meterdicke Fehlerliste.

Außerdem wirds so sein wenn man sich in eine neue Architektur einliest 
und dann in die Praxis umsetzt kommts zu verdammt viel Problemen wie 
schon gesagt worden ist der Tricore ist verdammt mächtig. Wenn es ein 
günstiges Entwicklungsboard gibt ist er sicher mal das Ausprobieren 
wert. Aber im Internet hab ich so eins noch nicht gefunden.

Mir stellt sich grad die Frage braucht man echt einen Tricore für so ein 
Projekt bei nur 3 Phasen ?

Zu den 96 timern muss ich echt sagen WOW.

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie soll man eigentlich am besten an den TriCore rantreten. Also welches 
Entwicklungstool? Entwicklungsumgebung ? usw

Autor: Johann L. (gjlayde) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Beitrag "Tricore Einsteigerfragen"

http://www.infineon.com/cms/de/product/channel.htm...

Da sind auch Links auf Entwicklungsboards:

Ansonsten würd ich mal versuchen, Kontakt aufzunehmen mit potentiellen 
Lieferanten von Hardware (TriBoard, EasyRun, miniWiggler, UAD, ...), 
Compiler (GCC, zB von Tasking, HighTec), Debugger (PLS, ...). Das hast 
schon mal ein Gefühl was der Support taugt, ist ja nicht unwichtig.

Vorher würd ich aber überlegen, ob ein anderer µC nich besser geeignet 
bzw mit weniger Aufwand die Aufgabe zu lösen ist. Es ist wohl nicht NUR 
eine 3-Phasen-PWM, sondern ist bestimmt noch anderes Zeug zu erledigen, 
so daß sich vielleicht ein Echtzeit-OS rechnet: TCP/IP-Stack, NTFS, weiß 
der Teufel...

Für das EasyRun gibts ne Beispiel-Applikation mit 3-Phasen PWM für 
sensorlose BLDC, vielleicht passt das ja schon. Ticker einfach mal den 
Hersteller an.

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja mein Professor würde sagen "so ein ATmega oder der alte 8051er ist 
auch genug"

Für den FU werd ich nen ARM7 oder was in die Richtung verwenden.

Gibts da auch etwas in Linux richtung weil du ja gesagt Echtzeit-OS
Denn dann hät ich schpn ein paar Ideen um die leistung auszunutzen.

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Andere Frage welche Spannungen/Ströme gibt so ein TriCore an einem Pin 
aus?
Auf was ist zu achten bei der Beschaltung ?
Mit welcher Leistungsaufnahme sollte man rechen?

Autor: Wichard (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Infineon hat reichlich Beispiele für PWM generierung mit der GPTA. Für 
RMZ gibt's hochoptimierte Routinen. Hängen aber nicht im Web. Einfach 
den FAE oder Infineon Customercare fragen.

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die frage die ich mich gerade stell ist sollte man echt hardware PWM für 
eine Raumzeigermodulation benutzen ?

Autor: Wichard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die PWM musst Du mit Hardware machen (CCU6 oder GPTA module bei 
Infineon), sonst riskierst Du Kurzschlüsse (siehe plottermeier oben). In 
SW läuft Clarke, Park und Space Vector Modulation.

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du meinst also eine zB 500ns lange Pause zwischen dem Umschalten der 
IGBT-Brücken um solche Kurzschlüsse bei den Halbbrücken zu verhindern.

Autor: Wichard S. (wichard)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Schau' Dir mal das PWM Trainingsbeispiel an.

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wo bekommt man so ein Entwicklungsboard für den Tricore am besten her ? 
Jetzt ist endgültig die die Wahl für den µC gefallen. Manche werden 
glauben ich schieß mit einem Schiffsmörser auf Spatzen, aber ich GLAUBE, 
dass ich die solche Leistung benötige. Naja das GPTA ist einfach nur 
genial für das!


Leider muss ich zugeben, es wird ein Neuanfang!

MFG Patrick

Autor: Wichard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Online bestellen über 
http://www.infineon.com/cms/en/product/channel.htm... 
oder ggf. (UNI Projekt) beim Infineon Service Center nach einem 
kostenfreien Kit fragen.

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da gibts 2 Probleme ich bin noch nicht Student. Die andere Frage ist ob 
ich für ein Projekt an der HTL eine Kostenfreie Version bekomme ist die 
andere Frage.

MFG Patrick

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab mal etwas in den Datenblättern gestöbert und da sind mir die 
Begriffe "Globaler Timer" und "Lokaler Timer" aufgefallen. Was sollte 
man darunter verstehen ?


MFG Patrick

Autor: plottermeier (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

bin grad vom Betreuer meiner Diplomarbeit drauf aufmeksam gemacht 
worden, dass es in diesem Fred noch weiter ging. Wenn man bei Google 
nach "Raumzeigermodulation" sucht, ist dieser Fred der erste Treffer.
Daher möchte ich kurz Rückmeldung geben.
Das ganze war eine Diplomarbeit mit der Aufgabe, eine Asynchronmaschine 
feldorientiert zu regeln. Dabei kann motorisch und generatorisch 
gefahren werden. Bei generatorischem Betrieb kann die Energie in das 
Netz eingespeist werden.
Mittlerweile funktioniert alles und die Arbeit wurde letzte Woche 
abgegeben.
Ich hab Code mit Dave erzeugt, um mit den Timern eine RZ-PWM zu steuern.
Diesen hab ich unter Tasking eingebunden und mit meiner Soft zusammen 
auf den Tricore überspielt.
Wenn die Arbeit bewertet ist, werde ich mal fragen, ob und in welchem 
Umfang ich weitere Infos herausgeben darf.

viele Grüße
Jens

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das klingt ja fast so wie ein Betriebsgeheimniss gg
Naja das Konzept von einem solchen Fu ist nicht wirklich was neues oder 
?

Aber trotzdem danke das du Allgemeinheit etwas Fedback gibst.

MFG Patrick

Autor: plottermeier (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

nein das Grundkonzept nicht. Möglicherweise das eine oder andere Detail, 
oder das was weiter draus wird. Um jeden Ärger zu vermeiden, lassen wir 
einfach jede Info, die den Lehrstuhl verlässt, über den Schreibtisch vom 
Prof laufen.

viele Grüße
Jens

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja ich mach das so, dass diese Arbeit KOMPLET PRIVAT. Muss hald alles 
selber bezahlen dafür können mir meine Profs nicht reinpfuschen. 
Außerdem gewisse von ihnen meinen das so etwas einfach zu viel ist naja 
das kennt man dann besonders an ihrer begeisterung aber egal.

Ist es eigentlich erlaubt sich erkundigen mit welcher Frequenz du bei 
der PWM arbeitest und ein paar Tipps vielleicht bezüglich des µC's 
usw...

Hab das gleiche vor wie du nur hald mit 6 Phasen und Dahlandermotor.

MFG Patrick

Autor: plottermeier (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

meine PWM läuft auf 20 KHz. Der Tricore kann auch wesentlich mehr (da 
kann man dann z.B. lustige Dinge mit Funkuhren machen...;-)
Wenn es der Tricore sein soll, würd ich das wieder mit Dave und Tasking 
machen. Kannst ja vorher mal beim Hersteller fragen, ob der was fertiges 
hat, aber 6-phasige Motoren sind ja nicht so der Standart.
Unter Dave die Timerzellen so verschalten, dass immer 2 folgende Zellen
einen Pin schalten. Dann ist immer ein einem Register der 
Einschaltzeitpunkt, in einem anderen der Ausschaltzeitpunkt. So hast Du 
denn erstmal ein festes Tastverhältnis. In dem C-Code werden die 
Register dann mit durch Sinus- und Cosinusfunktionen berechneten Werten 
überschrieben.
Würde das dann erstmal einphasig machen und dann erweitern.

viele Grüße
Jens

Autor: Patrick Weinberger (seennoob)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich nehm auch keinen direkten 6 Phasenmotor sondern nehm einen 
Dahlandermotor und schalte die 6Phasen in Secheck. Dann wird das mit den 
Quadranten für die Vektoren schon etwas aufwendig. Achja wenn ich 
pfusche bei den Halbbrücken werd ich wohl auch einiges Stören aber das 
ist ne nebensache gg.

Werd wohl vom 8051 er auf den Tricore umsteigen müssen. Jetzt kämpf ich 
noch mit der Steuersoftware und Hardware. Hast du die 
Sinus-/Cosinuswerte immer wieder berechnet oder eine Tabelle benutzt ?
Fallst sonst noch irgendwelche Tipps zum Tricore hast ich würd mich über 
jede Hilfe freuen die ich bekomme. Das Projekt ist komplett Privat also 
der Fortschritt ist eher langsam muss ja noch zur Schule.

MFG Patrick

Wenn du von Funkuhren sprichst dann fällt mir die 5m Parabolschüssel ein 
auf dem Dach der HTL mit eier Sendeleistung von 160W die direkt auf den 
Mondgericgtet sind. echt cooles Teil gg

Autor: plottermeier (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

warum nimmst Du keine Standart-Asynchrommaschine oder schaltest Deinen
Motor nicht einfach zu einem Dreiphasigen?
Hab Sinus-Cosinus-Funktionen verwendet. Der TC hat da genug Power.
Später als noch Regelungen usw. dazu kamen hab ich die dann Durch 
Tabellen
ersetzt.

Jens

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn es was "normales" wäre würd ich mir einfach einen Gebrauchten bei 
eBay kaufen un diesen etwas modifizieren. Es geht mir um die höhere 
Leistung bei 6 Phasen Betrieb und noch so ein paar Kleinigkeiten.

MFG Patrick

Autor: plottermeier (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Warum sollte die Leistung höher sein? Wenn Du den Motor im Dreieck 
schaltest, kannst Du bei Nennspannung einen wunderschönen Kreis 
innerhalb
des Sechsecks abfahren.

Jens

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja wie du das sagst klingt das einfach aber ich muss ne 
Clarke-Transformation machen um auf den Zeiger zu kommen. Das ist bei 3 
(6) Phasen nicht mehr so leicht.

Aja zu der Leistungserhöhung. Bei 6 Phasen fließt ja gleichzeitig mehr 
Strom in den Motor was die folge hat das das Magnetfeld stärker wird. 
Aber das mit der Sätigung usw muss ich ja dir ned erzählen.

MFG Patrick

Autor: plottermeier (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

nein, das brauchst Du nicht. Der Raumzeiger läuft mit konstanter 
Geschwindigkeit um. Entsprechend werden die Leistungsstufen angesteuert.
Zumindest ist das im gesteuerten Betrieb so und das sollte die Basis 
sein. Falls Du eine komplette Feldorientierte Regelung planst, brauchst 
Du mehrere Transformationen. Aber das sollte der übernächste Schritt 
sein.
Der mögliche Strom ist abhängig vom Drahtdurchmesser. Dabei ist es egal,
ob die Spulen zusammengeschaltet sind, oder jede ihre eigene 
Leistunggstufe hat.

Jens

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schön langsam erreich ich mit dem Vorhaben meine Grenzen denn 
Raumzeigermodulation und besonders der Tricore stehen nicht auf dem 
Stundenplan . Wenn ich an µC Programmieren denke was wir zur zeit machen 
dann kommt mir ein Schmunzeln "C-Crashkurs". Deswegen ist es auch 
Privat.

MFG Patrick

Autor: C. H. (_ch_)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Patrick Weinberger wrote:
> Schön langsam erreich ich mit dem Vorhaben meine Grenzen denn
> Raumzeigermodulation und besonders der Tricore stehen nicht auf dem
> Stundenplan . Wenn ich an µC Programmieren denke was wir zur zeit machen
> dann kommt mir ein Schmunzeln "C-Crashkurs". Deswegen ist es auch
> Privat.

Hallo Patrick,

gleich in zwei Freds parallel zum gleichen Thema :-)
Ohne dich jetzt beleidigen oder kleinmachen zu wollen - ein kleiner 
Hinweis meinerseits:
Hol dir doch mal ein schönes Buch über Grundlagen der elektrischen 
Maschinen. Da wird der ganze Kram mit Raumzeigerdarstellung und 
Maschinengrößen ein bisschen ausführlicher und mit mehr background als 
hier im Forum erklärt. Wenn du spezielle Fragen irgenwo hast, kannst du 
ja gerne nachhaken, aber dieses doch relativ komplexe Thema alles nur zu 
"ergoooogeln" und zu erfragen halte ich für etwas uneffektiv...

Ein Literaturvorschlag wäre beispielsweise "Elektrische Antriebe - 
Grundlagen" von Schröder

Schalte doch - gerade wenn es ein privates Projekt ist - erstmal einen 
Gang zurück. Hol dir erst mal einen kleineren Controller und 
programmiere deine Zeigermodulation erstmal für ein "ganz normales" 
3-phasen System. Die Thematik ist komplex genug um später aufzubohren 
;-)

Gleich mit einem Tricore und 6-phasen anzufangen ist schon etwas heftig 
für meinen Geschmack - gerade wenn die Theorie dahinter noch nicht so 
recht sitzt (wie es ja der Fall zu sein scheint).

Komplizierter kann man es immer machen, aber dazu muss die Basis 
stimmen!

Gruß
Christian

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich glaub das ist wohl das beste dann sag ich mal bis in so ein 2 
Monaten.

MFG Patrick

Viel dank Plottermeister

Autor: Frank Mayer (frankm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Zusammen,

wir verwenden auch einen TC1796 für Antriebs-Systeme.
Dazu haben wir ein Multiprozessor-System aufgebaut, das wir auch gerne 
an Private Kunden verkaufen oder wenn man eine Zusammenarbeit erwarten 
kann, ein Rack auch gerne verleihen...

@ Patric,

Du hast Dir ja eine schöne Einstiegsarbeit gesucht, wie sieht diese im 
Moment aus?


Gruss an alle & schöne Weihnachten!


Frank Mayer

Autor: Patrick Weinberger (seennoob)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im moment mach ich nen minimalst aufbau mit nen PIC.
Aber das Multiprozessorsystem klingt interessant. Ist davon vielleich 
mal so etwas wie ein kleine Skizze über die zusammenschaltung usw zu 
bekommen ?

MFG Patrick

Autor: Frank Mayer (frankm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Patrick,

wie war Weihnachten? Bist Du fertig geworden?
Kann man schon einen Sinus sehen?
Wie schaut der Strom dazu aus?

Schreib mal wieder...


Gruss


Frank

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.