Hi Ich bin gerade dabei mir einen Brushless Regler zu bauen, daher denke ich, dass es Zeit wird mich für einen Microcontroller zu entscheiden. Da ich schon Erfahrungen mit einem PIC 16F84 und F877 gemacht hab, dene ich natürlich zuerst an einen PIC, dieses mal aber an größere. Dabei sind mir zwei Familien ins Auge gesprungen, dsPIC 33, PIC 32 Jedoch kann ich mich überhaupt net entscheiden, der PIC32 hätte halt eine größere Rechenleistung, dafür aber nur 5 PWM ausgänge und die dsPIC 33 haben eine halb so große Rechenleistung, dafür mehr Timer und PWM Ausgänge. Ein weiterer Punkt wäre noch, dass sie hardwareseitiges multiplizieren unterstützen, aber des tuen sie ja beide Andere Vorschläge sind natürlich auch willkommen, auch von ganz anderen Mikrocontrollern, ich muss sowieso ein neues Programmerboard kaufen oder bauen Grüße
nimm einen dsPIC. warum: weil sie für deine zwecke gemacht sind. PIC32 ist eine ganz andere kategorie. die dsPICs haben massivst mehr leistung als die PIC16, und lass dich nicht von den DMIPS des PIC32 beeindrucken, der kann unter umständen langsamer sein als ein PIC24H (wenn auch selten).
Ich würde auch für dsPIC plädieren. Ich weiss nicht was genau du vorhast. Klingt irgendwie nach Modellbau. Brushless riecht irgendwie immer nach Quadrocopter. Da würde ich in jedem Fall wegen der Lageerkennung einen dsPIC empfehlen. Für starke Rechenarbeiten empfehle ich klar den dsPIC. Die PIC32 sind zwar auch nicht schlecht aber in dieser Richtung eher fehl am Platze.
ja, vielleicht sagst du besser, was du vorhast. sollte es batteriebetrieben sein, rate ich dir wider von einem dsPIC ab ;-) ..vermutlich würde es auch ein stromsparender PIC24F tun, dessen 16 MIPS nicht zu unterschätzen sind!
Ich will nen Brushless Regler bauen, nicht für Quadrocopter, sondern fürn Auto. Die Signale vom Funkenmpfänger will ich nach Möglichkeit auch mit dem gleich auswerten, allerdings hab ich mich damit noch net beschäftigt. Der PIC soll halt auch schnell sein, weil ich auch ne einstellbare Strombegrenzung haben möchte, die dann auch gescheit funktioniert, ne möglichst genaue Drehzahlregelung, ne Überwachung für die Versorgungsspannung, Spannung der Servos Und eventuell noch paar andere Sachen, die ich jetzt noch nicht kenne. Also möglichst viel Power um sicher zu gehen, dass ich alles noch machen kann, was mir einfällt.
> Auto [...] Servos
also modellbau ;-) ..mit bürstenlosen motoren ansteuern kenne ich mich
nicht aus (sorry) und weiss auch nicht wieviel rechenleistung du da
brauchst, aber mehr als messen, ein dutzend multiplikationen und PWM
wirst du nicht brauchen. wenn dein ganzer regelkreis 1ms reaktionszeit
voraussetzt und du 16 MIPS hast, hast du für jeden durchlauf 16'000
befehle, die du abarbeiten kannst. ich glaube, das sollte mehr als
genügen ;-)
zur sicherheit melde sich doch hier nochmals jemand anderes, der
schonmal mit mikrokontroller einen bürstenlosen motor angesteuert hat.
http://www.aerodesign.de/peter/2001/LRK350/SPEEDY-BL.html wenn ich mir hier die signale ansehe, und auch sehe, dass ein Atmel AT90S2313 mit 10 MIPS und 8bit-archidektur verwendet wird, wirst du es mit einem PIC18 (10, 12, 16 MIPS, 8bit-archidektur) oder einem PIC24F (16 MIPS, 16bit-archidektur) locker schaffen :-) die 10- und 12 MIPS PIC18 arbeiten mit netten 5V, falls das dir angenehmer ist, als die 3.3V für die 16 MIPS PIC18 oder PIC24 edit: zwischen PIC16 und PIC18 liegen welten (in jeder hinsicht) und die PIC24F sind einfach geniale teile mit einfach "noch mehr von allem" was die 18er bieten, die PIC24H sind etwas abgespeckter als die PIC24F aber haben massiv höhere performance. leg die PIC16 ins grab - du wirst sie nicht vermissen (rede aus eigener erfahrung)
coole seite, da war mein verständnis über brushlessmotoren wohl doch net ganz so falsch. du hast schon recht, viele verwenden nen kleinen atmel mit bedeutend niedriger rechenleistung, aber der hat zum beispiel keine regelnde Strombegrenzung, ich denke halt, dass es besser ist nen fettteren Microcontroller zu nehmen, weil man dann noch luft hat. Besser zuviel power als zu wenig. Ich will halt nen richtigen Regler bauen. klar sind 5V schon ne schöne Sache, aber mich störts jetzt net, wenn ein Mikrocontroller mit 3 bis 3,6V angesteuert wird. Soviel strom ziehen die teile ja auch net, da kann man schon was mit nem linear regler oder was in der Art machen. Der Strom kommt im Augenblick aus nem NimH Akku mit 7,2V, umrüsten auf nen LiPo mit 11,1V nicht ausgeschlossen. 6V brauch ich wegen den Servos sowieso, die stell ich mit nem step down wandler her. Die 15V für die Gates mach ich mit nem step up wandler Ich hab auch schon über nen ARM nachgedacht, aber ich glaub, dass mir des fast zu teuer wird. Aber nochmal zum PIC 32 und dsPIC 33, was für Vorteile hat denn der dsPIC, wenns um die Lageerkennung geht ? sorry, wenn ichs überlesen hab, hat des was mit der höheren Anzahl an Timern zu tun ?
auf der verlinkten seite, habe ich beim überfliegen gesehen, dass die lageerkennung (motorposition) schlussendlich via komparatoren zum uC geht, somit bringt dir dsPIC noch PIC32 einen vorteil ;-) die ansteuerung der phasen ist auch nur '0' oder '1' (also nicht sinus nachgebildet), von daher wirste auch mit 3 MIPS zurecht kommen ;-) dein regelprogramm läuft so ab, dass in einem timer-interrupt, die phasen-pins angesteuert werden, nebenher berechnest du die zeit zwischen zwei interrupts (umdrehungsgeschwindigkeit), die strombegrenzung (ADC auslesen und PWM anpassen) und alles andere, was du noch willst. leider habe ich keine ahnung von modellbaumotoren, nehmen wir aber an, dass der 10'000 umdrehungen macht, d.h. 30'000 interrupts pro sekunde um die phasen-pins anzusteuern (richtig?). ein interrupt braucht alles in allem vielleicht 50 befehle, d.h. du brauchst gerade mal 1.5 MIPS rechenleistung, dass der motor bei 10'000 dreht, die restlichen MIPS kannst du für alles andere brauchen - mehr als genug reserven! dsPIC hat einfach den vorteil eines DSPs (digital signal processor), d.h. der ist extrem(!) schnell in "multiply and accumulate" (der macht in einem taktzyklus eine multiplikation und addition - bei gescheiter programmierung), das macht aber nur dann sinn, wenn du FFTs berechnen willst oder einen sinus nachbilden willst oder dergleichen. ansonsten bringt dir die DSP-einheit nicht viel.
mein Motor dreht mit etwa 60 000 U/min bei 11,1V, ich werd auch auf nen 3 Zellen LiPo umrüsten. DSP, hört sich gut an, Sinus nachbilden wäre natürlich ideal, aber ich glaub, dass mir des net gelingen wird. Mit der geregelten Strombegrenzung muss ich auf jedenfall etwas berechnen, anderst wirds net gehen. Paar LEDs werd ich natürlich neber den ganzen Kontrollwerte auch noch läuchten lassen, aber des is ja alles kein problem. Der Sternpunkt geht zum Komperator, die 3 anderen gehen jeweils zu AD Wandlern, so kenn ichs auch. Von dem her wärs denk ich villeicht doch besser nen dsPIC 33 mit 40 MIPS und ordentlich programmspeicher, flash und Ram zu nehmen oder ? Wenn ichs richtig sehe haben die dsPICs auch mehr AD Wandler und mit ner höheren auflösung ?, wobei mir eigentlich 10 Bit reichen sollten. was für Programmerboards könnt ihr eigentlich empfehlen ? mein altes K8076 oder wies auch immer heißt eignet sich nicht mehr dafür
60k rpm = 1000 rps -> bei 50 befehle pro interrupt: 0.075 MIPS naja, wenn es eh ein demoboard sein soll, kannste natürlich das mit einem dsPIC machen. du wirst - wenn alles läuft - dann gut entscheiden können, welchen PIC es auch richten wird und den dann für die finale version auf deinem regler verwenden (code-anpassung ist bei den PICs schnell gemacht). ein demoboard habe ich nicht gekauft, ich habe mir eines selbst gemacht: http://www.kleiber.li/joomla/index.php?option=com_content&view=article&id=155&Itemid=54 da man meistens für etwas spezielles programmiert, müsste ein demoboard auch immer entsprechend speziell gestaltet sein, daher bin ich von eierlegenden wollmilchsäuen-demoboards weg gekommen: ein board, auf dem der PIC läuft und über pins die peripherie auf ein steckbrett führen, hat sich gut bewährt. letzteres empfehle ich dir dringenst, da du beim testen den einen oder anderen mosfet grillieren wirst oder die treiberstufe für die mosfets anpassen möchtest oder den schwellwert für die komparatoren etc.
PIC32 hat USB (z.B. für Programmupdates, Bootloader) und MUL+AKkumulate. Dafür dauert es etwas länger bis die Daten vom Mul verwendet werden können. Ich glaube PIC32 benötigt 11 Cycles bis der Interrupt aufgerufen wird. dsPIC unbekannt. Ich war vor einer ähnlichen Entscheidungsstellung und habe mich für den PIC32 entschieden. Acuh deshalb weil Ethernet für eine zukünftiges Projekt nciht ausgeschlossen ist und ich nicht jedes mal einen neue CPE erlernen möchte. Preisunterschied ist nicht weltbewegend. Grüße
Hi, Sieh dir bei Microchip mal AN1078 an. Dann weißt du was ein dsPic leistet. Dort wird ein PMSM aka BLDC mit sensorloser FOC realisiert, das ist denke ich genau das was du suchst. Und damit ist ein dsPic33 erst zu 40% belastet bei 40MIPS also ran da :), Wenn du noch dazu einen DsPic in der MC Variante nimmst dann hat der gleich 3 Phasen PWM mit Deadtimegeneration an Board. dsPic ist für n BL Regler egal mit welchem Regelungsverfahren zur Zeit das beste was ich kenne, ich ziehe ihm da sogar einem ARM wie dem STM32 vor,weil er kompakter ist. Meist macht der Prozessor eh nicht viel mehr als den Motor zu Regeln. Dafür brauchts kein ARM auch nicht bei FOC. MfG
eine kleine Frage, auf der Microchip Seite wird beim PIC 32 auch was von DSP Libraries erwähnt, jedoch steht im Datenblatt nichts direktes. Will man damit nur zeigen, dass auf dem PIC 32 die Berechnungen ebenfalls verschnellert wurden oder steckt da doch noch mehr dahinter ? Wieso werden die dsPIC eigentlich nicht unter 32 Bit geführt obwohl sie 32 Bit Timer haben ?
Modell Bauer schrieb: > Wieso werden die dsPIC eigentlich nicht unter 32 Bit geführt obwohl sie > 32 Bit Timer haben ? LOL! Eigentlich gehörten die unter 40 Bit einsortiert, denn so breit sind die DSP-Akkumulatoren. ;-)
ok, ich sehs schon, ich soll also einen dsPIC nehmen was haltet ihr vom dsPIC33FJ256MC710A ? oder gibts noch nen besseren, der villeicht mehr Programmspeicher hat ? auf der Microchip Seite find ich zwar keinen, aber ich frag lieber zur sicherheit
Modell Bauer schrieb: > oder gibts noch nen besseren, der villeicht mehr Programmspeicher hat ? Die meisten Programme werden durch mehr ROM nicht schneller und unbenutzes ROM zurückgeben geht nicht. Soll heissen: Was brauchst du? Nen STR9 gibt's mit 2MB Flash drauf.
Moin, Modell Bauer schrieb: > ok, ich sehs schon, ich soll also einen dsPIC nehmen > > > was haltet ihr vom dsPIC33FJ256MC710A ? > > oder gibts noch nen besseren, der villeicht mehr Programmspeicher hat ? > > > auf der Microchip Seite find ich zwar keinen, aber ich frag lieber zur > sicherheit Ich weiß ja nicht was du damit alles machen willst, ich verwende mit meinem Regler der sich an AN1078 anlehnt, einen Dspic30f3010, das ist ein 28 Pinner. für einen "reinen" Modelbauregler, glaube ich brauchst du nichts größeres als ein Dspic33fj12Mc202 oder besagten 30f3010 da bist du dann auch BEC Kompatibel. Wenn du aber noch mehr damit machen willst dann gilt wie immer das Motto RAM/Flash/MHz kann man nie genug haben. MfG
Die dsPIC30 würde ich eher vom Radar runternehmen, es sei denn man betreibt das Zeug draussen und braucht sonst eine Zusatzheizung für kalte Zeiten. Manche davon haben auch strunzdumme Pinouts: CAN- und Programmier-Pins zu überlagern - also nee. Ausserdem haben die meisten davon eine herzallerliebste Sammlung von Bugs. Nur den 601x haben sie eine A-Version angedeihen lassen um diesen Zoo etwas auszudünnen.
oben links unter "Parametric Search" kannst du zusammenklicken, was du haben willst: http://www.microchip.com/ParamChartSearch/chart.aspx?branchID=8154&mid=14&lang=en&pageId=75
Hi, ich hab hier einen Roxxy 80A Regler, da ist ein 30F3011 drauf. Gruß Simon
ich glaub ich werd zu Testzwecken einen dsPIC33FJ256MC710A nehmen, es sei denn einer sagt mir noch, dass ich damit keine möglichkeit hätte mein vorhaben auszuführen. Da ihr mir aber alle das gegenteil davon gesagt habt und er leistung ohne ende hat, glaub ich nehm ich den weils mir gerade auffällt, da gibts nen PWM Low und High output, was genau muss ich darunter verstehen, einmal inventiert oder was ? Ich mein, low und high gibts ja schon so oder so
ich glaub, dass ich ein kleines problem hab. Ich muss Spannungen von 15V mit einem AD Wandler messen können, die vom dsPIC mögen aber net mehr als 3,6V. Also kann ich ja nur einen externen AD Wandler nehmen und irgendwie mit einem DA Wandler eine Spannung ausgeben, die an dem dsPIC angepasst ist und dann per Programm umrechnen lassen ? oder gehts auch einfacher ?
> oder gehts auch einfacher ? spannungsteiler mit zwei widerständen (und ggf. einen OPV dazu, wenn die widerstände sehr gross sind - wenn du aber etwa 1mA durch deinen spannungsteiler lässt, kannst du auch auf einen OPV verzichten). http://www.hobby-bastelecke.de/grundschaltungen/spannungsteiler.htm
stimmt an ne messbereichsereweiterung hab ich garnet gedacht ich hab noch ein paar Operationsverstärker übrig, damit wärs doch dann auch möglich, die Spannung auf ein viertel zu verkleinern oder ? besser mit 2 Operationsverstärker oder würde auch einer reichen ? sinnvoller als messbereichserweiterung per Widerstand?
wenn du den platz hast für einen OPV, dann nimm ihn: einfach einen spannungsteiler (der kann dann auch schön hochohmig sein) und einen spannungsfolger mit dem OPV machen.
Spannungsteiler mit 2 Widerständen und einen 10nF-Kondensator gegen Masse um den S&H-Kondensator im PIC ordentlich laden zu können. Ich habe einen BLDC-Regler für einen Motor mit Hallsensoren geschrieben. Der Motor drehte so ca. 1000 UPM und wurde mit einem PWM-Signal gefüttert. Es wurden Sinus-Signale für die Motorspulen erzeugt. Das lastete den kleinen dsPIC33FJ12MC201 vielleicht zu 20% aus. Jetzt habe ich den etwas größeren dsPIC33FJ12MC202 in einer Motorsteuerung, weil ich eigentlich auch Sinus erzeugen wollte, Aber nach 7 verreckten Endstufen gehe ich auf Blockkummutierung... Da hat der kleine gar nichts zu tun, das kann auch schon ein PIC18F2431. Der dsPIC33FJ12MC202 hat aber auch schon 5V-tolerante Ein- und Ausgänge, das kann ganz nett sein, wenn man alte Sachen ansteuern will. Evtl. findest Du bei den Mikroelektronika-Jungs passende Demo-Boards, die bieten sehr viel an.
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.