Hallo Forum, ich hab ein ausgebauten Festplattenmotor mit 4 Anschlüssen. durch googlen hab ich rausgefunden, dass es kein Schrittmotor ist (die Platte ist nicht uralt) Es stehen keine aufgedruckten Buchstaben auf dem Gehäuse, noch irgendwelche Angaben zur internen Verschaltung der 4 Anschlussbeinchen. Falls jemand das Bild sehen will, kann ich Foto machen. Weiss jemand wie ich den Motor anschliesse? Es kommt mir erstmal nur darauf an es zum Laufen zu bringen, Die genau Umdrehungszahl ist mir erstmal unwichtig. Kennt jemand eine einfache Schaltung zum Ansteuern? Gruss, Daniel
Das ist ein BLDC Motor. Unter diesem Begriff solltest du bei google einiges finden. Einfach wird es aber nicht, meist besteht solch eine Ansteuerung aus einem µC + Endstufe.
Aus CDROM-Laufwerken kenne ich den Aufbau so, dass da neben dem Motor noch Hall-Sensoren auf der PCB sitzen, die das Motortiming einfach vorgeben, quasi wie die Kommutierung über Schleifring. Wenn diese Sensoren verwendet werden, geht die Ansteuerung sehr viel einfacher. Ohne Sensoren ist's die ganz hohe Mikrocontroller-Schule. z.B.: http://ww1.microchip.com/downloads/en/AppNotes/01083a.pdf
Nur mal so am Rande gefragt, wieviel Leistung kann man eigentlich aus so einem Festplattenmotor rausholen? Weiß das zufälligerweise jemand?
Nebenbei: so ein Motor wär sicher interessant für ein Propeller-Display... :-)
(Das elektrisch bezieht sich natürlich auf das, was der Motor aufnimmt.)
Zur Leistung. Die elektrische Leistung ist auf der Platte angegeben. Ein paar Watt. Der Wirkungsgrad ist hoch >80% wuerd ich sagen.
Mechanische Energie ist da nicht viel rauszuholen, das dürfte sich irgendwo im unteren einstelligen Watt-Bereich bewegen, normalerweise wird damit ja auch nicht wirklich eine "Last" angetrieben. Jedenfalls hat bei uns im Geschäft mal einer der Ober-Bastler so einen in Betrieb genommen und das Ergebnis war vor Allem eine Heizung (Sowohl der Motor, wie auch der Treiber). Alle Angaben ohne Gewähr. @Realplotter: Ob der Wirkungsgrad wirklich so hoch ist, wage ich zu bezweifeln. Das Zeug wird ja doch ordentlich warm. Und bei 12V, 1A hast du 12W Eingangsleistung, ich könnte mir gut vorstellen, dass gut die Hälfte schon in den Motortreibern verheizt wird. Vielleicht unterschätze ich auch die Hersteller ;)
Da kommen ausser BLDC wohl auch Synchronmotoren (Drehstrommotor mit Magnetläufer) zum Einsatz.
Ein BLDC und ein Synchronmotor mit Magnetlaeufer sind dasselbe. Die Namensgebung ist etwas verwirrend.
>Ein BLDC und ein Synchronmotor mit Magnetlaeufer sind dasselbe. Die >Namensgebung ist etwas verwirrend. den Eindruck hab ich auch DC ist doch totaler Schwachsinn, da ist doch nix DC
Naja, es gibt Synchonmotoren mit Magnetlaeufer, bei denen ist der Controller Teil des Motors, die laufen daher ab DC. Werden daher buerstenlose DC Motoren genannt.
vielleicht ketzerische Frage .. warum braucht man denn mc unbedingt? Wieso nicht einfach 3 gegeneinander um 120° verschobene sinusspanungen benutzen? Die Motorscheibe wird einen Trägheitsmoment haben, deswegen darf man nicht die volle Frequenz sofort benutzen, sondern langsam anfahren, das ist mir klar. U1(t)=A*sin(2*pi*f0*t) U2(t)=U1(t-120°) U3(t)=U1(t-240°) U1 ist Spannung zwischen U1_x und U1_y es sind 4 Anschlüsse, ich nehme an eins ist Mittelpunkt und schlisse U1_y U2_y U3_y zusammen daran. Die restlichen jeweils an die restlichen 3 Beinchen. Und dann mit f0=1Hz bis 120Hz hochfahren. 120U/s=7200U/s Gibt es IC's die mir einen netten sinus mit vorgegeben Frequenz rausgeben? Grüsse, Daniel
Darf's auch etwas weniger sein? 7200 U/s = 432000 U/min. bei 7,6cm Plattendurchmesser und 7200U/s ergibt das einen Speed am Rand der Scheibe von knapp 6200km/h! Jaja, ich weiß, sollte 7200 U/min heißen.... scnr Hegy PS: nein, ich kenne so'n Schipp nicht, der die aus Gleichstrom einen sinusförmigen Drehstrom macht mir var. Frequenz. Ich habe aber noch ein Frequenzumrichter im Keller, der kann sowas, ich glaube auch von 0,x Hz bis 400 Hz hoch. Für 1500 Festplattenmotoren geeignet :> Cäüven?
Also ich hab den ganz geschmeidig zum laufen bekommen mit ner sinusartigen PWM ansteuerung, ist nicht ganz trivial aber sollange man das nicht regelt hält sich der Aufwand in Grenzen, macht natürlich auch weniger spass wenn dernicht mehr synchron ist steht der sofort, um das zu verhindern muss man das Ding regeln (hall oder sensorless) es gibt einige gute app notes von atmel einfach mal nach "sinusoidal" suchen. Ach ja und warm werden nur meine Trieber und auch nur weil das der lausige L298 is der an sich ja auch für schrittmotoren gedacht war. Der Motor selbst bleibt kalt. Wenn man das nicht regelt hilft es ungemein die Frequenz mit nem poti zu steuern, dann kann man den Motor "wieder auffangen" und die Drehzahl hochziehen. Und ja sowas schreit irgendwie schon nach nem Propeller. -wiebel
Ich habe schon öfters gelesen, dass BLDC die mit einer externen Frequenz angesteuert werden, heiß werden. Das entspricht auch meinen eigenen Erfahrungen. Vermutlich liegt es daran, dass man den Strom sehr viel höher wählen muss, um den Motor syncron zu halten. Ich habe schon etliche Schaltungen aus dem Internet ausprobiert: Interessanterweise funktionierte fast keine an Festplattenmotoren, aber an anderen BLDC Motoren. Es kann natürlich auch sein, dass ich Mist gebaut habe, aber ich habe einige Festplattenmotoren die einfach nicht anlaufen wollen. Die Kommutierung durch die Gegen EMK ist alles andere als einfach, unter anderem deshalb weil das RC Filter dass die PWM entfernt eine Phasenverschiebung verursacht. Alternativ muss man synchron zur PWM messen, was einen schnellen ADC erfordert, der dazu nach mit der PWM gekoppelt ist. Für die ersten Versuche empfehle ich die Schaltung mit einem mega8 (oder war es mega48 ?) der dessen internen Komparator nutzt. Und das ganze ohne PWM. Damit bekommt man jeden Festplattenmotor auf >10000UpM. Eine Sinusförmige Spannung ist nicht unbedingt notwendig, viele Motoren sind für Rechteckförmige (bzw. Trapezförmig wenn man Phase-Phase misst) ausgelegt. Einige neueren Festplatten scheinen übrigends keine PWM mehr zu verwenden, sondern eine lineare Stromquelle um die Drehzahl zu regeln.
"The electronics can either have position sensor inputs that provide information about when to commutate or use the Back Electromotive Force generated in the coils." ich bin mir nicht sicher, aber von dem was ich gelesen hab, meine ich, dass Festplattenmotoren BEF zur Kommutiertung nutzen. "This application note described the control of a BLDC motor with Hall effect position sensors (referred to simply as Hall sensors). The implementation includes both direction and open loop speed control." Trotzdem Danke
Benedikt K. wrote: ... > Für die ersten Versuche empfehle ich die Schaltung mit einem mega8 (oder > war es mega48 ?) der dessen internen Komparator nutzt. Und das ganze > ohne PWM. Damit bekommt man jeden Festplattenmotor auf >10000UpM. Verstehe ich dich richtig? Einfach Spannung an, dann den Strom auf den Komperator und ab nem gewissen Level einfach weiter zum nächsten, oder wie? > Eine Sinusförmige Spannung ist nicht unbedingt notwendig, viele Motoren > sind für Rechteckförmige (bzw. Trapezförmig wenn man Phase-Phase misst) > ausgelegt. Hmm, geht das? Ist am Ende nicht doch ein "echtes" Drehfeld immer ideal? Klar das ne trapezansteuerung viel simpler ist, aber auch bei Motoren, die für sowas ausgelegt sind sollte sich doch noch eine Verbesserung (Drehzahl, Leistung, Effizienz) ergeben wenn man dann doch einen Sinus (über die Phasen) anlegt. > Einige neueren Festplatten scheinen übrigends keine PWM mehr zu > verwenden, sondern eine lineare Stromquelle um die Drehzahl zu regeln. ??? Eine lineare Stromquelle hat auf jedenfall einen grossen Nutzen, da man bei niedrigen Drehzahlen unbedingt weniger Stom braucht als bei höheren (will sagen bei zu viel Stom rucken die wie blöde) aber darüber kann man doch nicht die Drehzahl selbst regeln. man braucht doch zwingend das Drehfeld Ich find grade Synchronmaschinen (vielleicht ja auch mal bals Asynchrone) doch extrem Spannend, das macht ne Menge Spass. -wiebel
Michael Waiblinger wrote: > Benedikt K. wrote: > ... >> Für die ersten Versuche empfehle ich die Schaltung mit einem mega8 (oder >> war es mega48 ?) der dessen internen Komparator nutzt. Und das ganze >> ohne PWM. Damit bekommt man jeden Festplattenmotor auf >10000UpM. > Verstehe ich dich richtig? Einfach Spannung an, dann den Strom auf den > Komperator und ab nem gewissen Level einfach weiter zum nächsten, oder > wie? Nicht ganz: Man hat 3 Anschlüsse (bzw. eigentlich 4 mit dem Sternpunkt den man, wenn er fehlt, künstlich nachbilden muss). Auf 2 Anschlüsse gibt man die Spannung und vergleicht Sternmittelpunkt mit dem ungenutzen Anschluss. Wenn der Wert größer wird, schaltet man weiter. So funktioniert es zumindest in der Theorie. In der Praxis hat man noch Störungen die man Filtern muss, außerdem sollte man im Idealfall je nac Drehzahl ein kleinwenig eher umschalten, um den verlangsamten Stromanstieg durch die Induktivitäten zu kompensieren. Das kann dir sicher jemand der schonmal eine ordentliche (d.h. geregelte) BLDC Ansteuerung gebaut hat, besser erklären. Meine Ansteuerungen beschränkten sich bisher nur auf die rein Kommutierung, also dass der Motor überhaupt läuft. Und so ein Festplattenmotor läuft an 25V verdammt schnell. > >> Eine Sinusförmige Spannung ist nicht unbedingt notwendig, viele Motoren >> sind für Rechteckförmige (bzw. Trapezförmig wenn man Phase-Phase misst) >> ausgelegt. > Hmm, geht das? Ist am Ende nicht doch ein "echtes" Drehfeld immer ideal? > Klar das ne trapezansteuerung viel simpler ist, aber auch bei Motoren, > die für sowas ausgelegt sind sollte sich doch noch eine Verbesserung > (Drehzahl, Leistung, Effizienz) ergeben wenn man dann doch einen Sinus > (über die Phasen) anlegt. Keine Ahnung, wie gesagt: Ich bin froh wenn die Motoren sauber laufen. Ob der Wirkungsgrad jetzt 90 oder 92% beträgt ist mir da meistens ziemlich egal. Ein Trapez nutzt auf jedenfall die Spannung besser aus, als ein Sinus. Daher fügt man bei FU Frequenzumrichtern häufig noch eine Oberwelle Hinzu, damit der Sinus Rechteckförmiger wird, und daher das Verhältnis Spitze/Effektivwert kleiner wird. > >> Einige neueren Festplatten scheinen übrigends keine PWM mehr zu >> verwenden, sondern eine lineare Stromquelle um die Drehzahl zu regeln. > ??? > Eine lineare Stromquelle hat auf jedenfall einen grossen Nutzen, da man > bei niedrigen Drehzahlen unbedingt weniger Stom braucht als bei höheren > (will sagen bei zu viel Stom rucken die wie blöde) aber darüber kann man > doch nicht die Drehzahl selbst regeln. man braucht doch zwingend das > Drehfeld Es kann sein, dass auch die Gleichmäßigkeit der Umdrehungen ein Grund ist, keine Ahnung. Auf jedenfall weicht das ganze von der üblichen Ansteuerung etwas ab. So sieht das Signal an einer der 3 Phasen aus: http://www.mikrocontroller.net/attachment/13905/hdd.jpg GND ist ein Kästchen von unten entfernt. Die 2 Stücke mit der konstanten Spannung oben liegen bei 12V. Wie man sieht, werden unten etwa 2-4V in den Mosfets verheizt. Die senkrechten Striche an den Übergängen der einzelnen Abschnitte entstehen durch die Selbstinduktion in den Wicklungsinduktivitäten. Man erkennt schön wann zur nächsten Phase umgeschaltet wird. Hier ist es ein wenig verzögert (nicht genau in der Mitte des linearen Übergangs). In diesem Bereich ist der Wicklungsanschluss mit nichts verbunden und dient zur Gegen EMK Erfassung. > > Ich find grade Synchronmaschinen (vielleicht ja auch mal bals > Asynchrone) doch extrem Spannend, das macht ne Menge Spass. Ja, ich finde generell alle Motoren interessant, die man digital steuern kann, und vor allem die sehr schnell laufen. Es macht immer wider Spaß eine CD auf einen Asynchronmotor zu stecken und diesen auf >30000UpM hochzudrehen, bis es die CD zerreist...
Sind nur zwei Spulen, die mit 90° Phasenlage angesteuert werden. Wie in jedem besseren DDR-Plattenspieler.
@benedikt Cool, das ist genau die Kurvenform die ich auch verwende (sin(0..120°)und zurück), "Umgeschaltet" wird nach jeweis 60°. Hab ich aus: http://www.atmel.com/dyn/resources/prod_documents/doc8010.pdf An den "Umschalt" stellen zu messen macht perfekt sind, da genau dann auch der algorithmus umschaltet und man schön Messungen einfügen kann. Ich häng mal mein letztes Machwerk nochmal an (sehr schlampig, aber funktional) wobei noch keine Regelung drin ist und ich das teil mit nem Poti steuere.
Axel Rühl wrote: > Sind nur zwei Spulen, die mit 90° Phasenlage angesteuert werden. > Wie in jedem besseren DDR-Plattenspieler. Es sind 3 Spulen in 120° Phasenlage, aber die Schaltung ist hübsch. ;) Benedikt K. wrote: > Es macht immer wider Spaß > eine CD auf einen Asynchronmotor zu stecken und diesen auf >30000UpM > hochzudrehen, bis es die CD zerreist... Wo bekommt man den am einfachsten für den Hausgebrauch Asynchronmaschinen her? [edit: Ach ja nochwas,wie bilde ich den am einfachsten künstlich den Sternmittelbunkt nach? Einfach drei Widerstände Sternverschaltet, oder drei Spulen, oder wie? -wiebel
Michael Waiblinger wrote: > Cool, das ist genau die Kurvenform die ich auch verwende > (sin(0..120°)und zurück), "Umgeschaltet" wird nach jeweis 60°. Verwendest du eine Kommutierung oder machst du das nach eine bestimmten Zeit ? > Wo bekommt man den am einfachsten für den Hausgebrauch > Asynchronmaschinen her? Gute Frage. Meine habe ich aus einer alten Laborzentrifuge. Der Motor ist mit 12000UpM bei 300Hz angegeben. Ansonsten noch aus Waschmaschinen, die laufen aber langsam (ich glaube so 600UpM), haben dafür ein höheres Drehmoment. Und es sind echte Asynchronmotoren für 230V Strangspannung. Nahezu alle anderen Motoren sind keine echten 3 Phasenmotoren, sonder es sind Kondensatormotoren mit nur 2 Wicklungen die eine um 90° verschobene Spannung benötigen. > [edit: Ach ja nochwas,wie bilde ich den am einfachsten künstlich den > Sternmittelbunkt nach? Einfach drei Widerstände Sternverschaltet, oder > drei Spulen, oder wie? Einfach mit 3 Widerständen. Das ist zwar nicht ganz so gut wie der orginale, funktioniert aber einigermaßen. Im Anhang mal meine Schaltung zur HDD Motoransteuerung: Hat nicht viel Leistung, ist ungeregelt, dreht eine HDD aber fast so schnell wie orginal. Ich verwende das ganze für eine HDD als Dekoobjekt, bei der ich den Deckel entfernt habe und eine Plexiglasplatte stattdessen eingesetzt habe. Beim Starten arbeiten die Transistoren im linearen Bereich und begrenzen jeweils auf etwa 200-300mA. Sobald das ganze einmal läuft werden die Transistoren kaum noch warm.
http://www.gryspeerdt.ch/index.php?nNavi=1 http://www.techeblog.com/index.php/tech-gadget/video-hard-drive-speaker-system hier ging es wohl eher darum, den "Arm" auszulenken ;-))
Den Arm anzusteuern, ist noch schwerer als den Motor: Bei einer einfachen Spannung schlägt der Arm immer an die Begrenzung, die absolute Position ist nicht messbar. Daher ist beim normalen Betrieb die Position auf der Festplatte gespeichert und wird vom Lesekopf ausgelesen. Also eine analoge Steuerung mit digitaler Rückführung. Die Spule wird mit einem Konstantstrom angesteuert. Dieser bestimmt die Beschleunigung des Armes. Die normalen Armbewegungen nachzustellen ist garnichtmal so einfach, ein gezieltes Anfahren einer bestimmten Position total unmöglich (ohne zusätzliche Positionssensoren).
Ich mach keine Komutierung, einfach nur Zeitgesteuert (siehe quellcode oben). Bei Arm ansteuern fällt mir ein, dass ich noch einen schönen Industrie Servo-Motor hab (29V@3A) der hat auf der Achse ein Kupferzahnrad mit einem Hall(?)Sensor dran als Positionsgeber mit Initialisierungs"finger". Das muss ich auch bald mal ans drehen kriegen, damit ist ne herrvorragende Positionierung möglich. Ich Frage mich ob man über diese Positionen auch die Komutierung Regeln kann, sollte aber ja auf jeden Fall gehen. -wiebel
Ich habe noch etwas rausgefunden: Es gibt verschiedene BLDC Motoren: Welche für Trapez und welche für Sinusförmige Ansteuerung. Beide sind nicht kompatibel, für die sensorlose Kommutierung werden unterschiedliche Schaltungen verwendet. Das erklärt, wiso meine Ansteuerungen nur mit manchen Motoren problemlos funktioniert.
Hi zusammen! Die Ansteuerung von BLDC Motoren hängt im wesentlichen von der EMK des Motors ab da die EMK zusammen mit dem Strom für die Drehmomententwicklung des Motors verantwortlich ist. Das Drehmoment entspricht dem Produkt aus den beiden Werten (beim Strom nur der Drehmomentbildende Anteil). Am besten misst man die EMK des Motors zunächst mal mit einem Scope (Strang gegen Sternpunkt). Ist die EMK näherungsweise trapezförmig so steuert man den Motor am besten auch mit einer Block oder Trapezspannung an. Ist sie sinusförmig so wird der Motor am besten auch mit einer Sinusspannung angesteuert. Damit ergibt sich dann letztendlich ein näherungsweise konstantes Drehmoment. Informationsquellen sind die bekannten Controllerhersteller. Besonders interessant finde ich STM (sensorless mit EMK), NEC, Infineon (feldorientierte Regelung), Atmel oder auch Texas => einfach mal nach BLDC BLAC oder PMSM gugeln. Wer die ultimativen Details über Motoren wissen will: http://www.iem.ing.tu-bs.de/ Positionserfassungen gibt es im Prinzip 3: - mit Hallsensoren - Erfassung der EMK - feldorientiert durch Messung der Phasenströme (sehr aufwändig) @Benedikt: Wo hast Du gelesen das die Beschaltung der EMK Erfassung vom Motortyp Sinus oder Trapez abhängt? Viele Grüße, Gonzo
Es gibt von Microchip 2 Application Notes zu dem Thema: Beide für die dsPICs, eine mit einem kleinen Controller für Trapezansteuerung, da werden die Signale direkt PWM syncron mit dem ADC abgestastet, gefiltert usw. (benötigt insgesamt etwa 20MIPs Rechenleistung !!!). Die andere für sinusförmige Ansteuerung, bei dieser wird irgendwie nur der Strom von 2 Phasen gemessen und daraus die Kommutierung berechnet. Ich habe das bisher nur überflogen, aber es ist relativ kompliziert, ich habe zumindest nicht allzuviel davon verstanden. Die beiden heißen AN1083 und AN1078.
Habe mir mal die beiden Appnotes mal angesehen. Bei dem ersten AppNote 1083 handelt es sich um das Standardverfahren bei dem die EMK während der Nullstromphase gemessen wird. Das man dafür 20MIPS braucht kann ich mir nicht vorstellen. Es gibt verschiedene Implementierungen auf relativ schwachbrüstigen Controllern die mit Sicherheit keine 20Mips leisten können. Beispiele währen z.B. der ST7MC1 wobei der schon relativ viel HW mit an Bord hat. Das zweite Verfahren (1078) ist eine feldorientierte Regelung. Dieses Verfahren erzeugt automatisch eine sinusförmige Ansteuerung. Prinzipiell geht man bei dem Verfahren einfach davon aus, dass der Motor einfach durch ein Ersatzschaltbild mit R, L und EMK in Reihe dargestellt werden kann. Angesteuert wird diese Schaltung durch die angelegte Spannung welche mit einer Sinus-PWM erzeugt wird. Wenn man nun noch den Phasenstrom kennt kann man eigentlich die gesamte Maschengleichung des Motors berechnen, d.h. man kann die EMK (Amplitude und Phasenlage) berechnen. Wenn man die Phasenlage der EMK kennt weiß man auch wie man die Ausgangsspannung anlegen muss. Prinzipiell sucht man also die gleiche größe wie beim ersten Verfahren (die Phasenlage der EMK). Der Nachteil des Verfahrens ist jedoch der enorme Rechenaufwand. Normalerweise implementiert man solche Regelungen auf 16Bit/32Bit Controllern oder DSPs. Hier kann ich mir die 20Mips gut vorstellen. Wenn man nur den Nulldurchgang der EMK erkennen will kann man also eigentlich immer die gleiche Schaltung hernehmen egal ob die EMK des Motors sinus- oder trapezförmig ist. Wenn man nur die beiden Phasenströme misst braucht man die EMK nichtmehr zu erfassen. Bis denne, Gonzo
Danke für die Erklärung. Wenn ich das also richtig verstehe, benötigt diese Sinus Version die Daten des Ersatzschaltbild des Motors, um richtig zu funktionieren ?
Hossa heute hab ich mein Servo zum laufen gebracht, was für ein Regelverhalte, oder besser Steuerungsverhalten. Ich bin mit meinem immernoch stumpf Zeitgesteuerten Sinus drauf wieder mit nem Steuerhebel (Poti) angesteuert und was soll ich sagen, ich hab es nicht geschafft aus dem Sync zu kommen, der ist einfach mitgekommen und in welcher Geschwindigkeit, traumhaft. Leider hat schon in kürzester zeit auch mein zweiter L298 den Löffel abgegeben. Es wird zeit für was vernünftigeres mit FETS. Ich bin noch hierüber gestolpert: http://mikrocontroller.cco-ev.de/ucwiki/BL-Ctrl_Anleitung Die Platine bekommt man für 9€ das system ist Vollkommen Offen, ISP I2C Servo Signal Serielles Debuggen, und das nur mit der original quelloffenen Firmware. gar kein Proprietärer quatsch wie sonst üblich. Ich denke darauf werd ich meine weiteren Experimente aufbauen. Die haben auch die Virtuelle Sternmitte realisiert und überwachen auch noch den Strom (allerdings nur zur Strombegrenzung). @Benedikt ich kann mir das nicht vorstellen, sonst gäbe es nicht so viele app notes, wobei es mir immer noch ein Rätsel ist wie ich die Komutierungsinformation in mein Signal einbringen soll, ich werd' da wohl die Frequenz rausrechnen müssen oder so. -wiebel
Mal was ganz anderes kennt ihr gute halbbrückentreiber die schon eine Logik für high und low side drin haben am besten mit einstelbarem delay gegen shoot-through? ich würde gerne meine Controller hier nutzen, die haben aber hächstens 4 PWMs daher geht das mit direkter ansteuerung erstmal nicth, ich muss mir noch ein m162 besorgen der klingt fein. die PWM in software klingt mir zu krude das will ich eigentlich nicht haben. Die L297 sind ja ganz nett aber ich kill die zu schnell dafür sind sie definitiv mit 9 Euro zu teuer.
Michael Waiblinger wrote: > Ich bin noch hierüber gestolpert: > http://mikrocontroller.cco-ev.de/ucwiki/BL-Ctrl_Anleitung > Die Platine bekommt man für 9€ das system ist Vollkommen Offen, ISP I2C > Servo Signal Serielles Debuggen, und das nur mit der original > quelloffenen Firmware. gar kein Proprietärer quatsch wie sonst üblich. Das war die Schaltung von der ich den Trick mit dem umschaltbaren Komparator im mega8 hatte. Allerdings lief die Software nicht mit mehreren von meinen Festplatten Motoren. Es gibt einscheinend doch ziemliche Unterschiede zwischen den einzelnen Motoren, wie du selbst schon gemerkt hast. > @Benedikt ich kann mir das nicht vorstellen, sonst gäbe es nicht so > viele app notes, wobei es mir immer noch ein Rätsel ist wie ich die > Komutierungsinformation in mein Signal einbringen soll, ich werd' da > wohl die Frequenz rausrechnen müssen oder so. Was meinst du jetzt ? > Mal was ganz anderes kennt ihr gute halbbrückentreiber die schon eine > Logik für high und low side drin haben am besten mit einstelbarem delay > gegen shoot-through? Ja, gibt es, aber nur im unteren Leistungsbereich. Es gibt einige von ST (L620x, können aber nur 2A) und noch einige in der Richtung, mit mehr als 5A kenne ich aber keinen. Für höhere Spannungen muss man einzelne Mosfets verwenden und selber etwas bauen (diskreter Levelshifter, Bootstrapschaltung oder ein Highside Mosfet Treiber z.B. von IR) > Die L297 sind ja ganz nett aber ich kill die zu schnell dafür sind sie > definitiv mit 9 Euro zu teuer. 9€ ? Conrad ? Bei Reichelt für etwa 3€ zu haben...
> ich würde gerne meine Controller hier nutzen, die haben aber hächstens > 4 PWMs daher geht das mit direkter ansteuerung erstmal nicth, Wieso? Du brauchst doch nur 3.
@Benedikt: Ja, man benötigt den Wicklungswiderstand und die Induktivität der Motorwicklungen damit diese Sinusansteuerung richtig funktioniert. Die Parameter kann man aber ungefähr zumindest Messtechnisch bestimmen. @Michael: Das mit der Kommutierungsinformation funktioniert im Prinzip so, dass Du den Nulldurchgang der EMK finden musst. Wenn du diesen Zeitpunkt kennst weißt Du, dass du etwa 30° el. später auf den nächsten Spannungsblock kommutieren musst (gilt für den Blockbetrieb so). Im Sinusbetrieb musst du entsprechend in einen Winkel umrechnen und deinen Sinustabellenzeiger verstellen. Für die Ansteuerung nimmst Du am besten einen Controller mit 6PWM Ausgängen die optimalerweise noch eine Totzeit mit generieren können. Treiber für MOSFETS gibts z.B. von IR, Fairchild oder ST. Inwieweit die aber auch für privat zu haben sind weiß ich nicht. Evtl. gibt es aber Muster. Ich glaube einen Treiber mit Totzeitgenerierung hat IR im Programm. Ich bin mir aber nicht ganz sicher. Gruß, Gonzo
Benedikt K. wrote: > Das war die Schaltung von der ich den Trick mit dem umschaltbaren > Komparator im mega8 hatte. Allerdings lief die Software nicht mit > mehreren von meinen Festplatten Motoren. Es gibt einscheinend doch > ziemliche Unterschiede zwischen den einzelnen Motoren, wie du selbst > schon gemerkt hast. Mit dem Sinus hab ich bisher alle Motoren zum Laufen gebracht, nicht alle gleich gut aber immerhin. >> @Benedikt ich kann mir das nicht vorstellen, sonst gäbe es nicht so >> viele app notes, wobei es mir immer noch ein Rätsel ist wie ich die >> Komutierungsinformation in mein Signal einbringen soll, ich werd' da >> wohl die Frequenz rausrechnen müssen oder so. > > Was meinst du jetzt ? Oh da hab ich nicht anständig zitiert. ;) Ich meinte deine Aussage: >>> Wenn ich das also richtig verstehe, benötigt diese Sinus Version die >>> Daten des Ersatzschaltbild des Motors, um richtig zu funktionieren ? > Ja, gibt es, aber nur im unteren Leistungsbereich. Es gibt einige von ST > (L620x, können aber nur 2A) und noch einige in der Richtung, mit mehr > als 5A kenne ich aber keinen. > Für höhere Spannungen muss man einzelne Mosfets verwenden und selber > etwas bauen (diskreter Levelshifter, Bootstrapschaltung oder ein > Highside Mosfet Treiber z.B. von IR) Extra Mosfets sind fein (will ja vielleicht auch mal Dicke Motoren anseuern) mir geht es lediglich darum das ich nicht auch noch die Dead-time selbst basteln muss (zumindest bis ich hier einen anständigen 6PWM uC hab) also irgendwelche Treiber die mit einem Eingang pro Halbbrücke auskommen und mir dann jeweils Zwei FETS treiben (ideal natürlich zwei n-Kanal) würde mir reichen. Allegro hat einige nette Teile im Programm. http://www.allegromicro.com Die sind mir aber schonwieder zu hoch integriert, da hab ich ja gar keinen Spass mehr, ausserdem schreien die alle nach Hall Sensoren. >> Die L297 sind ja ganz nett aber ich kill die zu schnell dafür sind sie >> definitiv mit 9 Euro zu teuer. > > 9€ ? Conrad ? Bei Reichelt für etwa 3€ zu haben... ich meinte den L298, hab mich vertippt, aber ja ich geh eindeutig zu oft bei Conrad einkaufen sig @Rolf Naja wenn ich alle Fets selbst ansteuern will bräuchte ich schon 6PWMs. Aber ich muss zugeben die von Atmel haben es selbst auch mit 4PWMs gelöst in einer ihrer Appnotes. Muss ich wohl nochmal sinieren gehen. ;) @Gonzo Vielen Dank, das hilft mir weiter. ;) Also führe ich zur Komutation einen echten Sprung in der Tabelle durch, und passe das nicht über die Frequenz an, das vereinfacht die sache natürlich extrem. Lässt aber auch noch raum für optimierungen. Besser wäre es ja schon wenn ich in den 30° quasi die Frequenz auf den nötigen Wert anpasse und danach mit dem Mittelwert der alten Frequen un der "Anpassfrequenz" weitermache. Ok das wäre dann aner auch schon wieder recht aufwendig. Schon das Ermitteln der "Anpassfrequenz" könnte u.U zu lange dauern. Muss wohl doch mal durch die Datenblätter von IR durchgehen scheint ja recht vielversprechend. Der Thread hier wird immer besser und besser, grosses Lob an alle Beteiligten so macht Internet richtig Spass. (Frei nach ebay)
@Michael Wenn Du die Position über eine stetige Veränderung der Ausgangsfrequenz nachregelst (PLL) ist das natürlich die bessere Variante da jeder Sprung Schwingungen auslöst die sich letztendlich auf die Stabilität und die Geräuschentwicklung des Motors auswirken. Im ersten Schritt sollte es aber ausreichen mit direkten Sprüngen zu arbeiten. Wenn du die Synchronisation über die Frequenz machen willst musst Du natürlich darauf achten, dass die Nachregelung schnell genug ist damit Du auch bei Lastsprüngen nicht die Synchronität verlierst. Synchronmotoren stehen in einem solchen Fall sofort.
Michael Waiblinger wrote: > Mit dem Sinus hab ich bisher alle Motoren zum Laufen gebracht, nicht > alle gleich gut aber immerhin. Die Motoren und die Treiberschaltungen werden aber relativ warm, oder ? Zumindest war das bei mir so. >>> @Benedikt ich kann mir das nicht vorstellen, sonst gäbe es nicht so >>> viele app notes, wobei es mir immer noch ein Rätsel ist wie ich die >>> Komutierungsinformation in mein Signal einbringen soll, ich werd' da >>> wohl die Frequenz rausrechnen müssen oder so. >> >> Was meinst du jetzt ? > Oh da hab ich nicht anständig zitiert. ;) > Ich meinte deine Aussage: >>>> Wenn ich das also richtig verstehe, benötigt diese Sinus Version die >>>> Daten des Ersatzschaltbild des Motors, um richtig zu funktionieren ? Das ist nur bei dieser einen Ansteuertechnik so, die Gonzo schön erklärt hat, dass sogar ich das verstehe. Das mit den 30° könnte erklären, warum meine Schaltung manchmal nicht läuft: Ich lasse die 30° weg und schalte sofort weiter zum nächsten Zustand wenn die Spannung am unbenutzen Motoranschluss gleich der Sternspannung ist... PS: Schau dir mal den AT90PWM3. Der hat 6 PWMs, einstellbare Deadtime, die Timer laufen mit 64MHz, usw.
Gonzo wrote: > @Michael > Wenn Du die Position über eine stetige Veränderung der Ausgangsfrequenz > nachregelst (PLL) ist das natürlich die bessere Variante da jeder Sprung > Schwingungen auslöst die sich letztendlich auf die Stabilität und die > Geräuschentwicklung des Motors auswirken. Im ersten Schritt sollte es > aber ausreichen mit direkten Sprüngen zu arbeiten. Wenn du die > Synchronisation über die Frequenz machen willst musst Du natürlich > darauf achten, dass die Nachregelung schnell genug ist damit Du auch bei > Lastsprüngen nicht die Synchronität verlierst. Synchronmotoren stehen in > einem solchen Fall sofort. Ack, das ist definitiv dann die höhere Schule, werd ich mich später mal mit beschäftigen. Ich muss mir extrem dringend nochmal im Detail anschauen wie ein PLL funktioniert, die Schemen die ich noch im Kopf rumschwirren hab sind definitiv unzulänglich. Auf jedenfall danke für das Stichwort. @Benedikt: > Die Motoren und die Treiberschaltungen werden aber relativ warm, oder ? > Zumindest war das bei mir so. Der Treiber (L298 = räudig) JA sehr, sogar mit meiner patentierten Zippo Kühlung, zu heiss ... tot. Die Motoren, nicht die Spur, bei dem kleinen 2.5" motörchen könnteich mir eine ganz leichte erwärmung vorstellen aber nix echtes, meine beiden anderen Motoren sind viel zu massiv (5.25" Motor ca. 10cm * 4cm, der Servo 20x20cm) wobei der L298 ja auch nicht lange genug gelebt hat um den Servo ernsthaft aufzuwärmen. Man freu ich mich wenn ich einen anständigen Treiber hab. > PS: > Schau dir mal den AT90PWM3. Der hat 6 PWMs, einstellbare Deadtime, die > Timer laufen mit 64MHz, usw. Ja die Speziall PWM Teile sind klasse. Aber die Deadtime kann ich doch sowieso einstellen wenn ich Phase-correct PWM nutze. Ich hab übrigens einen neuen Thread aufgemacht der sich mit dem Thema befasst. -> Beitrag "BLDC, Synchronmaschine, Drehfeld Experimentierschaltung"
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.