Forum: Mikrocontroller und Digitale Elektronik Raumzeigermodulation auf Tricore


von plottermeier (Gast)


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

von Johann L. (gjlayde) Benutzerseite


Lesenswert?

Mit DAvE? oje...

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

von plottermeier (Gast)


Lesenswert?

Hallo,

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

Jens

von Patrick W. (seennoob)


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

von Johann L. (gjlayde) Benutzerseite


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.

von Patrick W. (seennoob)


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.

von Patrick W. (seennoob)


Lesenswert?

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

von Johann L. (gjlayde) Benutzerseite


Lesenswert?

Beitrag "Tricore Einsteigerfragen"

http://www.infineon.com/cms/de/product/channel.html?channel=ff80808112ab681d0112ab6b55d607d9

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.

von Patrick W. (seennoob)


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.

von Patrick W. (seennoob)


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?

von Wichard (Gast)


Angehängte Dateien:

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.

von Patrick W. (seennoob)


Lesenswert?

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

von Wichard (Gast)


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.

von Patrick W. (seennoob)


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.

von Wichard S. (wichard)


Angehängte Dateien:

Lesenswert?

Schau' Dir mal das PWM Trainingsbeispiel an.

von Patrick W. (seennoob)


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

von Wichard (Gast)


Lesenswert?

Online bestellen über 
http://www.infineon.com/cms/en/product/channel.html?channel=db3a304312dc768d0112e70f851f0b2a 
oder ggf. (UNI Projekt) beim Infineon Service Center nach einem 
kostenfreien Kit fragen.

von Patrick W. (seennoob)


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

von Patrick W. (seennoob)


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

von plottermeier (Gast)


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

von Patrick W. (seennoob)


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

von plottermeier (Gast)


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

von Patrick W. (seennoob)


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

von plottermeier (Gast)


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

von Patrick W. (seennoob)


Angehängte Dateien:

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

von plottermeier (Gast)


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

von Patrick W. (seennoob)


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

von plottermeier (Gast)


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

von Patrick W. (seennoob)


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

von plottermeier (Gast)


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

von Patrick W. (seennoob)


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

von C. H. (_ch_)


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

von Patrick W. (seennoob)


Lesenswert?

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

MFG Patrick

Viel dank Plottermeister

von Frank M. (frankm)


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

von Patrick W. (seennoob)


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

von Frank M. (frankm)


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

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.