Hallo alle Ich hab mir das Ziel gesetzt einen Polyphasen-Umrichter zu bauen auf basis der ARM Architektur. Aber die Problematik liegt darin ich benötige mehr als 3 Phasen also auch mehr als 3 PWM Einheiten um den Sinus zu erzeugen.Außerdem in der berechnung der Sinus Werte. (sollen stätig neu berechnet werden) Also ich weiß nicht welches Entwicklungsboard diesen Ansprüchen stand halten kann. Darum möcht ich um euren Rat bitten. MFG Patrick
Ich dachte an so was in der Art wie einem Lpc 2917 wobei ich aber Neuland für mich betretten würde. Außerdem bin ich mir nicht sicher ob dieser MCU genug Performance hat zur berechnung der Sinuswerte.
Hab etwas im Internet geschaut und bin der Meinung das ein normaler µC nicht genug Rechenleistung hat. Meine Frage ist also µC oder gleich DSP ? Welches Entwicklungsboard dann ?
Leistungselektronik ist zwar nicht mein Ding aber ich halte es für unnötig die Sinuswerte zur Laufzeit zu berechnen. Wäre es nicht sinnvoller die Werte im Vorraus zu ermitteln und in einer Tabelle abzulegen?
Naja daran hätt ich auch schon gedacht aber die Tabelle wird verdammt groß wenn man nen hohen frequenzbereich abdeken muss. Naja wenn ich in 0,1 Grad Schritten alles abdecke brauch ich min 900 Tabellen einträge aber dann ist noch die Frage welches Entwicklungsboard soll ich nehmen um 12 Phasen zu generieren? @let Danke für den Rat
Naja, selbst bei 9000 Einträgen würde z.B. ein ARM7 nur müde lächeln. Wenn das also ein Option ist, dürfte die Auswahl einen Boards etwas leichter fallen, wobei zwölf PWM Kanäle schon ein Wort ist. Ich habe mal einige Datenblätter von NXP, ST und Luminary durchgesehen und nur den LPC2468 gefunden der so viele Kanäle bietet. Olimex hat soweit ich weiß ein Eval-Board mit diesem Controller. Vielleicht gibt es noch externe PWM Controller die für diese Aufgabe besser geeignet wären. National, Ti und ST wären meine ersten Anlaufstellen.
Die PWM's ansich sind kein Problem den zB bei 12 phasen sind eh immer 2 gleich also einfach den Interrupt der PWM abfangen (wenn vorhanden) und dann Spiegeln das eigentliche prob sind dann eher noch die EMV sachen und natürlich die MOSFET Treiber. Naja 9000 Einträge wären bei 8bit 9000byte (bei 16 bit 18 000byte) ob sich das wohl ausgeht beim LPC 2468 mit 9000 Einträge gg
>0,1 Grad Schritten alles abdecke brauch ich min 900 Tabellen einträge http://de.wikipedia.org/wiki/Interpolation bzw http://de.wikipedia.org/wiki/Spline-Interpolation ?
Ich versteh jetzt nicht ganz wie das mit Interpolation gemeint ist aber trotzdem danke
Naja das beste ist halt, einige Werte in einer Tabelle abzulegen und den Rest durch interpolieren auszurechnen. Im einfachsten Fall mit einer Grade. Die Sinusfunktion ist ja sehr rund (also kein abrupten Sprünge) und teilweise sogar fast wie eine Gerade. So kannst Du viel Speicherplatz sparen.
Hmm das mit dem Speicherplatz war eigentlich nur ein Scherz aber die find ich nicht einmal so schlecht. Bei den Frequenzen von 0 bis 6 Hz ist die Lösung sicher sehr vorteilhaft aber für meinen 8051er oder Atmega ist das sicher keine so gute Lösung sein. (zu langsam und nur 8bit )
Im Prinzip reicht ja eine sin-90° Tabelle. Die restlichen Werte kannst du durch Offset bzw. Vorzeichen Erschlagen. Gruß Christian
Ok jetzt bräucht ich nur noch ein passendes Entwicklungsboard
Wenn du dann mit sechs Kanälen auskommst, hast du bei ARM7 und M3 dann praktische freie Auswahl. Gut, der STM32 fällt raus da anscheinend nur vier Kanäle. Aber LPC23xx und die Luminary haben sechs bzw. acht Kanäle (die LPC23xx können 6x32Bit, die Luminaries 8x16Bit, alles unverbindlich). Der Vorteil der 23xx gegenüber dem 2468 ist das kleinere Gehäuse. Der 2468 hat 208 Pins die 23xx haben nur 100- bzw. 144 Pins. Wenn das auch noch zu groß ist gibt es noch den 213x/214x mit 64 Pins. Bei Luminary habe ich nicht nachgesehen was die 64 Pin Versionen können. Diese Luminary Teile haben allerdings trotz vieler Pins nur relativ wenige IOs. Achja, es gibt da noch die AT91SAM Reihe von Atmel. Warum weiß ich nicht ;). Eval-Boards: Speziell für PWM Anwendungen ist mir bisher noch nichts aufgefallen. Ansonsten gibt es bei Olimex schöne Sachen. Für den LPC2368/LPC2378 ist das MCB2300 von Keil weit verbreitet. Embedded Artists hat ein paar nette Boards, die jedoch recht teuer sind (habe lange nicht mehr nachgesehen). Diese Boards würden dir aber nur die nackten PWM Signale liefern. Alles weitere mußt du selber dranfummeln.
danke let Das konzept sieht von Haus aus vor ein zentrales Steuermodul und einzelne Leistungsteile (ein board 3 Phasen). Die Leistungsteile sind ansich nur MOSFET und der Treiber (vielleicht noch ein kleiner Tempsensor auf oneWire basis oder I²C ) also das rohe signal müsste reichen. Außerdem ich bleib lieber bei einem Entwiclungsboard weil diese Art von FU nie die Serienproduktion erreichen wird. Außerdem wo gibts Motoren mit mehr als 3 phasen ? Bessere Frage wo für braucht man so etwas ? Naja Verwendung könnte dies vielleicht in der Antriebstechnik finden ... let noch eine frage hast du selbst auch mit der ARM Architektur zutun wegen diesem Wissen ?
Ich mache seit ca. anderthalb Jahren mit den LPCs von NXP rum. Erst nur privat, inzwischen auch beruflich. Die 236x ersetzen bei uns in der Firma langsam aber sicher die PICs/AVRs. Vor allem in den vergangenen sechs Monaten ist viel passiert. Jetzt ab Juli beginnt eine neue Phase der Hardware-Entwicklung, nachdem wir zwei Jahre lang fast nur Software gemacht haben (vier Projekte bisher mit ARM7). Am Freitag gab es bereits Champus zum Einstieg. Soviel steht schon fest: 8-Bitter werden da keine Rolle mehr spielen. Der M3 kommt zu spät, deshalb wird wohl alles auf den 2368 hinauslaufen.
Naja von den 8 bitern hab ich die Nase voll. Einer Profs hat auch den 8bit vogel naja und sein liebling ist das Flexgate 3 . Aber die 8051er sind ned ganz meins einfach zu Programmieren aber Performance usw ist aber auch ned das ideale. Naja ich steig jetzt wegen dem Projekt auf 32iger um und dann mal sehen. Vielleicht bastel ich danach mit clustern herum oder was weiß ich. Mich würde interessieren wie die Firma heißt bei der du arbeitest.
@let Ich habe den LPC2368 auch schon lieb gewonnen, funktioniert sehr gut :) (mit Eclipse, Arm-Elf-... usw...) Aber an einem Problem kämpfe ich noch, haben Sie Ethernet schon zum Laufen bekommen? Wenn ja, mit welchem PHY? Irgendwie funktioniert es mit meinem Micrel 8721 nicht.
@Patrick Lieber nicht. Wenn ich mich hier zum Troll mache ist das eine Sache aber die Firma halte ich da besser raus. @du Ich verwende den DP83848V von National der auch auf dem MCB2300 sitzt. Passender Code (lwIP) dafür ist im FreeRTOS als Beispiel enthalten. Den RTOS Kram habe ich allerdings rausgeschmissen. Die Beispiele für den LPC2368 (es ist nicht nur FreeRTOS) die ich seinerzeit gefunden habe sind für die 'initial revision' geschrieben. Bei den Nachfolgern muß die EMAC Einheit etwas anders initialisiert werden.
1 | /* Enable P1 Ethernet Pins. */
|
2 | //PINSEL2 = 0x55555555; // Rev. -
|
3 | PINSEL2 = 0x50150105; // Rev. B |
4 | //PINSEL3 = (PINSEL3 & ~0x0000000F) | 0x00000005; // Rev. -
|
5 | PINSEL3 = 0x00000005; // Rev. B |
Vielleicht liegt es ja daran.
Den PINSEL hatte ich schon richtig. In der Zwischenzeit bin ich auch ein bischen weiter. Der Micrel Chip hat die Eigenschaft, dass er auch beim Reset über den Status an mehreren Pins parametriert wird. Und so waren an den Pins im Reset Zustand zum Teil Pegel anstehend, die nicht so gewollte waren. Also hatte der sich auf eine PHY_ADDR 0x19 und nicht 0x01 initialisiert. Jetzt habe ich mir eine Routine geschrieben, den erst mal den PHY auf seiner Adresse sucht, dann ist mir der Reset-Zustand egal. RTOS finde ich auch ist quatsch, nur gibt es von denen ein Eclipse LPC2368 Projekt, nur so zum Test mit uIP, was aber nicht funktioniert. Wenn jemand ordentlich programmiert kann auch ohne diese speziellen Tasks eigene Tasks schreiben, also nur Funktionen die in der Main "while(1)" nacheinander alle aufgerufen werden. Es darf natürlich niemals ein Task warten, der muss dann immer wieder raus und kommt dann im nächsten Main-Loop wieder dran. (Derzeit bin ich bei 120000 Zyklen in der Sekunde, ich denke da ist RTOS eher langsamer :) Und der Rest geht über ISR. Wird eigentlich der National Chip warm während dem Betrieb? Der Micrel wird zwar nicht sehr heiß, aber ordentlich warm schon. Wenn der National nicht so heiß wird, dann würde ich meine Schaltung nochmals umdesignen. (Strom Sparen ist mir persönich wichtig, der Umwelt zu liebe...wenns auch nur ein paar mA sind.) let, Sie sind ja schon eine ganze weile hier im Forum, ich wechsle öfter mein pseudo name. Im Internet bin ich ohnehin schon viel zu bekannt...Echt Toll dieses Forum, dass man ohne Logon was schreiben kann, weiter so. (Und ich hoffe alle halten sich auch Zukünftig an die Regeln...)
Naja das mit dem Troll kenn ich gg da gibts ja auch so leute die nich der Deutschen Sprache mächtig sind. Wenn das Datenblatt auf Engkisch ist stehts schon komplett an naja wenn man Ihnen erklärt hilfts auch nicht wirklich viel. Naja wenn ich Geld für Nachhilfe verlangen würde müsst ich nicht jammern das die Entwicklungsboard so teuer sind gg mfg Knecht der Dummen
@du Die PHY von National wird gut warm. Da scheinen sich die Implementierungen verschiedener Hersteller kaum zu unterscheiden. Bei meiner letzten Messung bin ich auf knapp 300mW für den DP gekommen.
Wie ist eigentlich mit so einem ARM eine Display ansteuerung zu realisieren ? Ich muss ehrlich zugeben ich hab von Displays 0 Ahnung und auch noch nie die Zeitgefunden um im Internet zu suchen. Was auch noch interessant wär wär ein Touchscreen (bis auf den Preis ) wie funktionier da die auswertung ? und mal ein herzlichen Dank an den let und alle anderen die mir mit ihren Kompetenten Antwort meine Frage versuchen zu lösen
Ich hab zwar noch nie ein Display selbst programmiert, aber es hat ein Display normalerweise für jede Frabe Datenleitungen und die werden mit einem Prozessor (mit LCD-Interface) verbunden, in der Regel sind es 4-8 Bit je Farbe und noch ein paar Synchronisationsbefehle. Der Touch ist im Prinzip eine Folie mit einem Widerstand, der einmal von links nach rechts und von oben nach unten gemessen wird. Dazu wird am Prozessor ledeglich 2 AD Eingänge und eventuell 2 Ausgänge benötigt. Details gibts im Datenblatt der LCDs. Der LPC2368 hat kein LCD Controller. Einfache Text-Displays oder kleinere Grafik-Displays können auch über SPI angesteuert werden, nur ein Film kann damit nicht abgespielt werden, da zu langsam. @let: wegen dem PHY würde ich einen neuen thread starten, ich denke dies ist besser so, da es mit der Frage hier nichts zu tun hat.
Braucht man eigentlich für die ARM ein besonderes JTAG Programmiergerät? Das ist die letzte Frage bevor ich mal bestelle ;-)
>Der M3 kommt zu spät, deshalb wird wohl alles auf den 2368 >hinauslaufen. Wobei laut NXP Präsentation die LPC236xer einen äquivalenten M3-Bruder bekommen werden und somit dann die 236xer auslaufen werden, da langsamer und schlechter (Interruptlatenz, etc.). Spielt sich allerdings in einem Zeitraum von Jahren ab...
Hallo wiedermal alle Ich hätt jetzt noch eine Frage. Wie kann man den Spannungsverlauf via Software bei einem FU auf Lastschwankungen optimieren. Naja für nen Fu hört sich das etwas absurd an wegen der Induktivetät der Motorspulen. Aber mich würds einfach mal interessieren ;-) MFG Patrick
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.