Ich habe vor, einen Schrittmotor mit L6207 anzutreiben. Der MC hat viele Pins, deren Bedeutung und Notwendigkeit für meine Schaltung ich nicht verstehe. Mit IN, OUT, VS und GND komme ich noch klar. EN bekommt 5V, Widerstand und Kapazität und fertig. Die SENSE-Eingänge sind anscheint für Strombegrenzung des Motors gedacht. Brauche ich diese? VCP und VBOOT muss ich wahrscheinlich nicht anschlissen, oder? Was mache ich mit VREF und RC? Wozu sind die?
Da ist doch im Datenblatt hinten ein Schaltplan. Der ist das nicht ohne Grund
> Die SENSE-Eingänge sind anscheint für Strombegrenzung des Motors > gedacht. Brauche ich diese? Ja wenn du willst das der Motor vernüftig im Chopperbetreib läuft! > VCP und VBOOT muss ich wahrscheinlich nicht anschlissen, oder? Doch, die sind ja nicht aus Spaß da. > Was mache ich mit VREF und RC? Wozu sind die? Steht doch alles im Datenblatt! Auf Seite 6 und 7 im Datenblatt ist eine Tabelle deren letzte Spalte die Funktion des pins Beschreibt und ob er notwendig ist oder nicht!
Da steht dann z.B. zu VBOOT: Bootstrap voltage needed for driving the upper Power MOSFETs of both bridge A and bridge B Übersetzt etwa: Bootstrap Spannung benötigt zum treiben der oberen MOSFETS beider H-Brücken A und B. Und bei VREFb: Bridge B current controller reference voltage. Do not leave this pin open or connect to GND Referenzspannug des Stromreglers der H-Brücke B. lassen Sie diesen Pin nicht offen und auch nicht an einfach mit GND verbinden. usw.
uwe schrieb: > Da steht dann z.B. zu VBOOT: > Bootstrap voltage needed for driving the upper Power > MOSFETs of both bridge A and bridge B > > Übersetzt etwa: > Bootstrap Spannung benötigt zum treiben der oberen MOSFETS beider > H-Brücken A und B. > Heißt es, um überhaupt die oberen MOSFETS einzuschalten, muss man VBOOT einschließen? > Und bei VREFb: > Bridge B current controller reference voltage. > Do not leave this pin open or connect to GND > > Referenzspannug des Stromreglers der H-Brücke B. > lassen Sie diesen Pin nicht offen und auch nicht an einfach mit GND > verbinden. So wie der Einleitung mit 1V verbinden?
Düsendieb schrieb: > Da ist doch im Datenblatt hinten ein Schaltplan. Der ist das nicht ohne > Grund Sicher! Nun, ich wollte wissen, ob ich EN Pin anschlissen muss. Laut Anleitung ja, auf 5V bzw. GND. Mit dem Rest bin ich nicht klar gekommen. Daher Fragen.
Michael R. schrieb: > Heißt es, um überhaupt die oberen MOSFETS einzuschalten, muss man VBOOT > einschließen? Die Gatespannung für die Highside FETs kommt von Vboot, ohne können die FETs also nicht durchschalten. > So wie der Einleitung mit 1V verbinden? Brauchst du eine Stromregelung? Wenn ja wie viel Strom, wie groß ist Rsense?
Max H. schrieb: > Michael R. schrieb: >> Heißt es, um überhaupt die oberen MOSFETS einzuschalten, muss man VBOOT >> einschließen? > Die Gatespannung für die Highside FETs kommt von Vboot, ohne können die > FETs also nicht durchschalten. Danke. >> So wie der Einleitung mit 1V verbinden? > Brauchst du eine Stromregelung? Wenn ja wie viel Strom, wie groß ist > Rsense? Wie weiß ich, dass ich eine Stromregelung brauche?
Michael R. schrieb: > Wie weiß ich, dass ich eine Stromregelung brauche? Brauchst du auch bei höherer Drehzahl noch ein hohes Drehmoment?
Max H. schrieb: > Michael R. schrieb: >> Wie weiß ich, dass ich eine Stromregelung brauche? > Brauchst du auch bei höherer Drehzahl noch ein hohes Drehmoment? Nein, das Gewicht wird sich nicht ändern.
Michael R. schrieb: > Wie weiß ich, dass ich eine Stromregelung brauche? Das Drehmoment ist von Strom abhängig. Mit zunehmender Frequenz der Ansteuerung (also mehr Schritte pro Zeit) steigt der induktive Widerstand der Spulen. Dadurch sinkt der Spulenstrom wenn man eine konstante Spannung vorraussetzt. Dadurch hat man ein riesen Drehmoment in unteren Drehzahlbereich, und kaum geht es schneller zieht das Ding keinen Hering mehr vom Teller. Die Frage ist: wirst Du unterschiedliche Geschwindigkeiten brauchen? Oder auch Anfahrrampen?
Michael R. schrieb: >> Brauchst du auch bei höherer Drehzahl noch ein hohes Drehmoment? > > Nein, das Gewicht wird sich nicht ändern. Aber vielleicht soll der Motor das Gewicht nicht nur im Stand halten, sondern auch mit einer gewissen Drehzahl bewegen, ohne dass der Motor dann im Stand heiß wird.
Nimms mir nicht übel: Bei den Fragen die du hier stellst, solltest du dir vielleicht erstmal ein paar Schaltpläne ansehen oder einen Bausatz aufbauen und versuchen, dessen Funktion nachzuvollziehen. Hier mal ein Beispiel mit dem L6203, dass ist im Prinzip ein halber L6207, dafür mit höherem Ausgangsstrom: http://www.mechapro.de/pdf/hpstep_doku_15b.pdf Mit freundlichen Grüßen Thorsten Ostermann
Düsendieb schrieb: > Die Frage ist: wirst Du unterschiedliche Geschwindigkeiten brauchen? > Oder auch Anfahrrampen? Ich will meinen Motor mit PWM ansteuern können. Frage zu PWM: Ich will das PWM-Signal nicht genirieren sondern über mein Programm umleiten. Auf ein Pin bekommen, auf das andere weiterschicken. Ich habe leider nichts passendes auf C gefunden.
Michael R. schrieb: > Ich will meinen Motor mit PWM ansteuern können. Wie steuert man einen Schrittmotor mit PWM an? > Frage zu PWM: Ich will das PWM-Signal nicht genirieren sondern über mein > Programm umleiten. Auf ein Pin bekommen, auf das andere weiterschicken. > Ich habe leider nichts passendes auf C gefunden. Was spricht dagegen es direkt anzuschließen? Welchen µC hast du? Es gibt z.B. PICs mit CLC die das können
Max H. schrieb: > Michael R. schrieb: >> Ich will meinen Motor mit PWM ansteuern können. > Wie steuert man einen Schrittmotor mit PWM an? Wenn es eine Frage, um meine Wissen zu testen, dann bin ich gescheitert. Ansonsten kann man mit PWM die Geschwindigkeit des Motors über MC regeln. Verstehe ich es richtig? >> Frage zu PWM: Ich will das PWM-Signal nicht genirieren sondern über mein >> Programm umleiten. Auf ein Pin bekommen, auf das andere weiterschicken. >> Ich habe leider nichts passendes auf C gefunden. > Was spricht dagegen es direkt anzuschließen? Über ein Drähtchen? :) Wenn es hilft, würde ich machen. Über das Programm ist es eleganter, finde ich. > Welchen µC hast du? Es gibt z.B. PICs mit CLC die das können Ich benutze ATmega8.
Michael R. schrieb: > Wenn es eine Frage, um meine Wissen zu testen, dann bin ich gescheitert. > Ansonsten kann man mit PWM die Geschwindigkeit des Motors über MC regeln. > Verstehe ich es richtig? Dir ist aber schon klar, wie ein Schrittmotor funktioniert? Seine Geschwindigkeit regelt man in dem man die Anzahl der Schritte kontrolliert, die er pro Sekunde machen soll. Mit PWM hat das .... eigentlich nichts zu tun.
> Ansonsten kann man mit PWM die Geschwindigkeit des Motors über MC > regeln. Verstehe ich es richtig? Nö, nicht bei einem Schrittmotor! Du könntest mit dem L6207 entweder 2 normale Gleichstrommotore über PWM steuern (die Drehzahl) ODER einen Schrittmotor. Beim Schrittmotor wird durch umpolen der Spulen einen Schritt weiter geschaltet, nix mit PWM. http://de.wikipedia.org/wiki/Schrittmotor
Naja man könnte mit PWM irgendwie nen µschrittbetrieb hinbekommen. Aber das ist jetzt nicht zielführend.
Michael R. schrieb: > Wenn es eine Frage, um meine Wissen zu testen, dann bin ich gescheitert. Nein, ich sehe keine sinnvolle Möglichkeit einen Schrittmotor mit PWM anzusteuern außer man erzeugt damit die Referenzspannung für die Stromregelung, das habe ich aber mal ausgeschlossen da du noch nicht wusstest ob du das brauchst. Michael R. schrieb: > Frage zu PWM: Ich will das PWM-Signal nicht genirieren sondern über mein > Programm umleiten. Auf ein Pin bekommen, auf das andere weiterschicken. > Ich habe leider nichts passendes auf C gefunden. Woher kommt das PWM das du umleiten willst? Und wieso willst du es durch den µC leiten?
:
Bearbeitet durch User
Karl Heinz schrieb: uwe schrieb: Max H. schrieb: Danke für eure Antworten. Karl Heinz schrieb: > Dir ist aber schon klar, wie ein Schrittmotor funktioniert? > Seine Geschwindigkeit regelt man in dem man die Anzahl der Schritte > kontrolliert, die er pro Sekunde machen soll. > Mit PWM hat das .... eigentlich nichts zu tun. uwe schrieb: > Nö, nicht bei einem Schrittmotor! Du könntest mit dem L6207 entweder 2 > normale Gleichstrommotore über PWM steuern (die Drehzahl) ODER einen > Schrittmotor. Beim Schrittmotor wird durch umpolen der Spulen einen > Schritt weiter geschaltet, nix mit PWM. Ok, jetzt verstehe ich, dass PWM hier gar nicht passt. Wie kann ich dann die Geschwindigkeit ändern? Max H. schrieb: > Woher kommt das PWM das du umleiten willst? Und wieso willst du es durch > den µC leiten? Anscheint soll es kein PWM sein, jedoch ist die Umleitung wichtig. Die Idee ist, dass ich ein Signal zur Steuerung von meinem Motor bekomme. Über eine andere Platine z.B.
Michael R. schrieb: > Wie kann ich dann > die Geschwindigkeit ändern? Wie viele Schritte du den Motor pro Sekunde machen lässt.. > Anscheint soll es kein PWM sein, jedoch ist die Umleitung wichtig. Die > Idee ist, dass ich ein Signal zur Steuerung von meinem Motor bekomme. > Über eine andere Platine z.B. Was ist das für ein Signal und wieso muss es durch deinen µC? Von welcher Platine kommt es? Da du anscheinend nicht viel Ahnung hast, halte ich es für eine gute Idee die Karten auf den Tisch zu legen und nicht alles scheibchenweise zu Servieren...
:
Bearbeitet durch User
Max H. schrieb: > Michael R. schrieb: >> Wie kann ich dann >> die Geschwindigkeit ändern? > Wie viele Schritte du den Motor pro Sekunde machen lässt.. > >> Anscheint soll es kein PWM sein, jedoch ist die Umleitung wichtig. Die >> Idee ist, dass ich ein Signal zur Steuerung von meinem Motor bekomme. >> Über eine andere Platine z.B. > Was ist das für ein Signal und wieso muss es durch deinen µC? Von > welcher Platine kommt es? > > > Da du anscheinend nicht viel Ahnung hast, halte ich es für eine gute > Idee die Karten auf den Tisch zu legen und nicht alles scheibchenweise > zu Servieren... Das habe ich mir auch schon gedacht. Ich dachte am Anfang, dass ich alles verstehe und ein paar Kleinigkeiten sind von mir verdeckt. Jetzt ist es genau andersrum :) Also. Ich mache beim Projekt "Balanciernde Kugel" mit. In Youtube gibt es Videos dazu. Mein Teil ist, eine Platine zu entwickeln und ein Programm dazu zu schreiben. Ich habe schon eine gemacht. Der Motor braucht aber 1,4A meine Treiber (BD6231) können nur 1A maximal liefern! So habe ich mich entschieden, nach einen anderen Treiber zu suchen. L6207 hat gepasst. Da ich wirklich nicht besonders oft mit Motoren, Treibern und ähnlichem zu tun habe, habe ich mich gewundert, was das alles für kommische Pins seien sollen. Jemand anders macht das andere Projektteil. Er muss sein Kamerasignal verarbeiten und ein Signal an meine Platine schicken und so die Motore ansteuern, welche von beiden Motoren und mit welcher Geschwindigkeit gedreht werden müssen.
Michael R. schrieb: > Signal an meine Platine schicken und so die Motore > ansteuern, welche von beiden Motoren und mit welcher Geschwindigkeit > gedreht werden müssen. Dann wäre der erste Schritt sich auf ein Übertragungsprotokoll zu einginge...
Michael R. schrieb: > Das habe ich mir auch schon gedacht. Ich dachte am Anfang, dass ich > alles verstehe und ein paar Kleinigkeiten sind von mir verdeckt. Jetzt > ist es genau andersrum :) Dann solltest du dir erst mal klar machen, wie ein Schrittmotor arbeitet. Dsa ist im Grund nichts anders als ein drehbahrer Magnet, um den rund herum Spulen angeordnet sind. Setzt du eine Spule unter Strom, dann erzeugt sie ein Magnetfeld und der drehbare Magnet richtet sich in Richtung der Spule aus. Setzt du die daneben liegende Spule unter Strom (und die erste aus), dann dreht sich der drehbare Magnet in deren Richtung. Der Motor hat 'einen Schritt gemacht'. Und so geht es reihum weiter. Nacheinander wird eine Spule nach der anderen bestromt und jedesmal dreht sich der drehbare Magnet in Richtung der jetzt bestromten Spule. Aus praktischen Gründen reicht es aus, wenn man immer nur 4 Spulen reihum anordnet. Sonst kriegt man zuviele Pins am Motor zustande. D.h. alle 4 Spulen wiederholt sich die Anordnung. Der drehbare Magnet dreht sich immer zur nächstgelegenen bestromten Spule, selbst wenn 4 Spulen weiter ebenfalls eine bestromte wäre. Die ist aber zu weit weg, ihr Magnetfeld ist schon zu schwach. Daher gewinnt immer die nächstgelegene und der drehbare Magnet richtet sich in ihre Richtung aus. Die Drehzahl regelt man daher logischerweise mit dem Zeitabstand, in dem man die Spulen reihum aktiviert. Je schneller das nacheinander passiert, desto schneller dreht sich auch der drehbare Magnet. Die Stärke des Stroms, und damit die Stärke des Magnetfeldes welches die jeweilige Spule erzeugt, hat nur Einfluss darauf wie stark die Spule den Magneten 'festhält', aber nicht darauf wie schnell die Spulen reihum bestromt werden. Eigentlich eine ganz einfache Sache.
:
Bearbeitet durch User
Max H. schrieb: > Michael R. schrieb: >> Signal an meine Platine schicken und so die Motore >> ansteuern, welche von beiden Motoren und mit welcher Geschwindigkeit >> gedreht werden müssen. > Dann wäre der erste Schritt sich auf ein Übertragungsprotokoll zu > einginge... Hm, ich möchte eine Zahl von der anderen Platine bekommen, welche mir sagt, welchen Motor und wieviele Umdrehungen pro Sekunde er machen muss. Ich hatte es mir wie folgt gedacht: 11001000 Die ersten 4 Bits ist der erste Motor, die zweiten 4 ist der zweite. Die Zahl 1100 = 12Dec. Ich will 12 Umdrehungen pro s/ms/µs. Die zweite Kombination 1000 = 8Dec, nur 8 Umdrehungen. Ich möchte nun wissen, wie man es in C realisiert. Mein Kollege wird nichts dagegen haben. :) Karl Heinz schrieb: > Eigentlich eine ganz einfache Sache. Aha. Mit dem Motor ist klar. Danke. Über den Aufbau habe ich auch noch im Netz nachgelesen. Zum Motor, ich habe ihn vom Nanotec L41(2 St). Er hat 4 Ausgänge und laut des Datenblatts nur 2 Spulen (wahrscheinlich billige Version :)))
Michael R. schrieb: > Hm, ich möchte eine Zahl von der anderen Platine bekommen, welche mir > sagt, welchen Motor und wieviele Umdrehungen pro Sekunde er machen muss. > > Ich hatte es mir wie folgt gedacht: > > 11001000 > Die ersten 4 Bits ist der erste Motor, die zweiten 4 ist der zweite. Die > Zahl 1100 = 12Dec. Ich will 12 Umdrehungen pro s/ms/µs. Die zweite > Kombination 1000 = 8Dec, nur 8 Umdrehungen. Schön. Dann ist aber PWM so ziemlich das umständlichste was ihr dazu benutzen könnt. > Ich möchte nun wissen, wie > man es in C realisiert. Das kommt drauf an welchen Kommunikationsweg ihr wählt. Wählt ihr zb. eine UART, dann ist das ganz simples programmieren einer seriellen Schnittstelle. Und solange die Werte nicht eine halbe Million mal pro Sekunde upgedatet werden müssen, ist eine UART sicherlich auch schnell genug dazu. Wie man auf einem AVR mit einer UART umgeht, findet sich zb im AVR-GCC-Tutorial. > Zum Motor, ich habe ihn vom Nanotec L41(2 St). Er hat 4 Ausgänge und > laut des Datenblatts nur 2 Spulen (wahrscheinlich billige Version :))) Nope. Aber man kann eine Spule auf 2 Arten bestromen :-) Einmal + der Spannung auf der einen Seite, einmal + der Spannung auf der anderen Seite. Irgendwie les ich bei dir dauernd, du hättest dich schon im Web schlau gemacht. Und irgendwie merk ich bei dem was du von dir gibst nicht wirklich was davon.
:
Bearbeitet durch User
Karl Heinz schrieb: > Irgendwie les ich bei dir dauernd, du hättest dich schon im Web schlau > gemacht. Und irgendwie merk ich bei dem was du von dir gibst nicht > wirklich was davon. Einige Informationen, die ich von dir und von anderen freundlicherweise bekomme, habe ich im Netz gesehen. Weil die Informationen aber unsystematisch sind bzw. ich schaue in eine, dann in die andere Quelle, fehlt mir auch einiges. :( > Wählt ihr zb. eine UART, dann ist das ganz simples programmieren einer > seriellen Schnittstelle. . . . > Wie man auf einem AVR mit einer UART umgeht, findet sich zb im > AVR-GCC-Tutorial. Danke!
:
Bearbeitet durch User
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.