-         

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 23

Thema: Schrittmotor Vibration

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    05.07.2012
    Beiträge
    9

    Schrittmotor Vibration

    Anzeige

    Hallo zusammen,

    ich habe vor kurzem angefangen mich mit Assembler zu beschäftigen.
    Nun möchte ich über einen Atmega8515L diesen Schrittmotor ansteuern:
    http://www.reichelt.de/Schrittmotore...c4cc51250383f2

    Als Treiber habe ich den L6205 genommen und die Schaltung aus dem Datenblatt aufgebaut. (Siehe Anhang)
    Als Versorgungsspannung dient ein 12V Netzteil.

    Der ATMEGA8515L ist noch auf einem STK500, die 4 Ausgänge des PORT B habe ich auf die Eingänge des L6205 geführt.
    Vollgendes Programm läuft auf dem ATMEGA

    .include "8515def.inc"
    .DEF Ausgabe = R16
    .DEF Counter1 = R17
    .DEF Counter2 = R18
    .DEF Sensor = R19
    RJMP main
    main:
    LDI Ausgabe,0b11111111
    OUT DDRB,Ausgabe

    Vor:
    LDI Ausgabe,0b00001001 ;Schritt 1
    OUT PORTB,Ausgabe
    LDI Counter1, 0b11111111
    LDI Counter2, 0b00010100
    Warten1:
    dec Counter1
    brne Warten1
    Warten2:
    LDI Counter1, 0b11111111
    dec Counter2
    brne Warten1
    LDI Ausgabe,0b00000101 ;Schritt 2
    OUT PORTB,Ausgabe
    LDI Counter1, 0b11111111
    LDI Counter2, 0b00010100
    Warten3:
    dec Counter1
    brne Warten3
    Warten4:
    LDI Counter1, 0b11111111
    dec Counter2
    brne Warten3
    LDI Ausgabe,0b00000110 ;Schritt 3
    OUT PORTB,Ausgabe
    LDI Counter1, 0b11111111
    LDI Counter2, 0b00010100
    Warten5:
    dec Counter1
    brne Warten5
    Warten6:
    LDI Counter1, 0b11111111
    dec Counter2
    brne Warten5
    LDI Ausgabe,0b00001010 ;Schritt 4
    OUT PORTB,Ausgabe
    LDI Counter1, 0b11111111
    LDI Counter2, 0b00010100
    Warten7:
    dec Counter1
    brne Warten7
    Warten8:
    LDI Counter1, 0b11111111
    dec Counter2
    brne Warten7

    RJMP vor


    Das ganze funktioniert auch soweit und der Motor dreht sich ungefähr mit einer Umdrehung pro Sekunde.
    Nur leider läuft er nicht ruhig und vibriert.
    Hat jemand eine Idee wieso der Motor vibriert?

    Gruß Coni
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken L6205.jpg  

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2004
    Ort
    Kreis Starnberg
    Alter
    52
    Beiträge
    1.819
    Reichelt verkauft den Motor mit der Bezeichnung 4218-35-026, im verlinkten Handbuch ist der Motor 4218-35-27 aufgeführt mit den elektrischen Kenndaten 5,3V, 1A. Der Betrieb mit niedriger Drehzahl an 12V dürfte also mehr als 2A Strangstrom bedeuten (das macht den Motor nicht sofort kaputt, ein Dauerbetrieb ist aber nicht möglich wegen Überhitzung).
    Das Vibrieren könnte daher kommen, dass der Stromfluss unterbrochen wird durch
    1. Den thermischen Überlastschutz im L6205 oder
    2. durch eine Schutzschaltung im Netzteil.
    Mögliches Vorgehen:
    1. Prüfen zu welchem Strom das Netzteil belastet werden kann.
    2. Prüfen wie heiß das IC wird (erstmal mit angefeuchtetem Finger)
    Abhilfen:
    Strangstrombegrenzung einführen.

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    05.07.2012
    Beiträge
    9
    Hallo ranke,

    Danke schon mal für deine Antwort.
    Geliefert wurde der 4218-35-27 von Reichelt.
    Der IC wird kaum warm, aber das Netzteil ist mit seinen 800mA total überforder. Da werde ich wohl warten müssen bis mein Akku da ist.
    Sollte der Motor bei niedriger Drehzahl lieber mit 5,3V betrieben werden?
    Wie kann ich denn den Strangstrom begrenzen?

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2004
    Ort
    Kreis Starnberg
    Alter
    52
    Beiträge
    1.819
    Sollte der Motor bei niedriger Drehzahl lieber mit 5,3V betrieben werden?
    Das könnte man machen, aber bei höheren Drehzahlen geht der Strom automatisch zurück, dann ist es besser man hat eine höhere Spannung zur Verfügung. Wenn man auch höhere Drehzahlen haben will ist das also nicht sehr praktisch.

    Wie kann ich denn den Strangstrom begrenzen?
    Wenn man die beiden "Sense" Pins nicht direkt mit Masse, sondern über einen kleinen Widerstand ( z.B. 0,1 Ohm) mit Masse verbindet kann man an den Pins eine Spannung abgreifen, die proportional zum Strangstrom ist (also bei 0,1 Ohm, 1A wären es 0,1 V).
    Diese Spannung könnte man z.B. über den ADC des MC einlesen. Allerdings müsstest Du Deinen Code dann dahingehend ändern, dass der Prozessor noch etwas anderes tun kann. Die Zählschleifen kann man mit einem Timer umgehen, der zählt dann ohne Beteiligung des Prozessors, der für andere Aufgaben frei wird.

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    05.07.2012
    Beiträge
    9
    Habe heute meinen Akku bekommen welcher den nötigen Strom von über 2A liefert.
    Leider ist das Problem damit nicht behoben, der Motor vibriert immernoch.
    Dazu kommt noch das der Motor mit dem Akku nur läuft wenn ich meinen Finger auf den Minuspol lege oder den Akku in der Hand halte.
    Braucht der Motor einen festen Massepunkt? Was ich mir aber nicht vorstellen kann, dann könnte man ja den Motor nie mit einen Akku betreiben.

    Der 8515 hat leider keinen ADC, da werde ich mir wohl einen anderen besorgen müssen und mich noch ein wenig mehr mit Assembler beschäftigen.

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2004
    Ort
    Kreis Starnberg
    Alter
    52
    Beiträge
    1.819
    Dazu kommt noch das der Motor mit dem Akku nur läuft wenn ich meinen Finger auf den Minuspol lege oder den Akku in der Hand halte.
    Das klingt noch nach einem Problem mit der Schaltung. Betreibst Du den MC auch mit dem Akku? Falls nein, musst Du die Minuspole der beiden Stromversorgungen verbinden, damit sie ein gemeinsames Potential haben.


    Der 8515 hat leider keinen ADC, da werde ich mir wohl einen anderen besorgen müssen und mich noch ein wenig mehr mit Assembler beschäftigen.
    Das wäre nur eine Möglichkeit. Es gibt auch andere Möglichkeiten den Strangstrom zu messen und auszuwerten. Eine davon ist das IC L297, das die Auswertung des Strangstroms umsetzt und gleichzeitig auch das Muster der Strangströme für Halb- oder Vollschrittbetrieb generiert (was Du momentan in Deinem Code machst). Die Schaltung ist hier in Kombination mit dem Treiber L298 kurz beschrieben, zum genaueren Verständnis holt man sich am besten die Datenblätter der ICs von www.st.com . Als dritte Variante kann man natürlich den Strom auch über seperate Komparatoren auswerten und als Digitalsignal an den MC senden oder direkt auf den enable-Eingang des L6205 geben.

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    05.07.2012
    Beiträge
    9
    Zitat Zitat von ranke Beitrag anzeigen
    Das klingt noch nach einem Problem mit der Schaltung. Betreibst Du den MC auch mit dem Akku? Falls nein, musst Du die Minuspole der beiden Stromversorgungen verbinden, damit sie ein gemeinsames Potential haben.

    Der MC wird noch über das STK500 betrieben, somit haben sie kein gemeinsames Potential.


    Das wäre nur eine Möglichkeit. Es gibt auch andere Möglichkeiten den Strangstrom zu messen und auszuwerten. Eine davon ist das IC L297, das die Auswertung des Strangstroms umsetzt und gleichzeitig auch das Muster der Strangströme für Halb- oder Vollschrittbetrieb generiert (was Du momentan in Deinem Code machst). Die Schaltung ist hier in Kombination mit dem Treiber L298 kurz beschrieben, zum genaueren Verständnis holt man sich am besten die Datenblätter der ICs von www.st.com . Als dritte Variante kann man natürlich den Strom auch über seperate Komparatoren auswerten und als Digitalsignal an den MC senden oder direkt auf den enable-Eingang des L6205 geben.
    Die Lösung mit dem L297 scheint mir noch am einfachsten sein, werde ich wohl demnächst mal angehen.

    Mein eigentliches Problem, das der Motor vibriert ist aber leider noch nicht gelöst.
    Habe mal den Strom gemessen welcher für die komplette Schaltung inklusive Motor fließt gemesse, da fließen grade mal 333mA.
    Rein theoretisch müssten doch bei I=12V/5,3Ohm ca. 2,26A fließen?

  8. #8
    Erfahrener Benutzer Robotik Einstein Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    29
    Beiträge
    4.545
    Wie misst du den Strom? Mit einem normalen Multimeter kannst du das nicht messen, da das DMM zu langsam misst bzw einen Mittelwert bildet. Wenn du den Strom messen willst musst du mit einem Oszi messen oder du misst es mit einem µC, den du so programmierst das dieser z.B. über eine Sekunde misst und die Messwerte über die Schnittstelle (RS232 bzw USB) an den PC sendest und dort auswertest.

    MfG Hannes

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    05.07.2012
    Beiträge
    9
    Genau, über ein Multimeter. Oszi oder einen anderen µC habe ich im moment leider nicht zur Hand. Da werde ich erstmal von meinem errechnetem Wert ausgehen.
    Was könnte es noch für Gründe für das vibrieren des Motors geben?

  10. #10
    Erfahrener Benutzer Robotik Einstein Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    29
    Beiträge
    4.545
    Es gibt verschiedene Möglichkeiten. Eine die mir einfällt (weiß nicht ob das schon geschrieben wurde) ist Überlast. Wenn der Motor zu stark belastet wird vibriert der Motor ebenfalls.

    Hast du die Schaltung schon kontrolliert (habe den Thread nicht mitverfolgt)?

    MfG Hannes

Seite 1 von 3 123 LetzteLetzte

Ähnliche Themen

  1. Vibration von Piezo Element, anschließend Servo ansteuern
    Von Gobstar im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 0
    Letzter Beitrag: 05.03.2012, 21:41
  2. Vibration dämmen ???
    Von jagdfalke im Forum Mechanik
    Antworten: 14
    Letzter Beitrag: 13.12.2005, 21:26
  3. Interface - Schrittmotor Endstufe - Schrittmotor
    Von Fladdie im Forum Elektronik
    Antworten: 0
    Letzter Beitrag: 18.11.2005, 22:37
  4. trittschall- vibration mit adxl 311 messen?
    Von redremus im Forum Sensoren / Sensorik
    Antworten: 7
    Letzter Beitrag: 12.07.2005, 15:00
  5. Vibration - Handy Motor
    Von Manf im Forum Kopfnüsse / Wissensquiz
    Antworten: 7
    Letzter Beitrag: 06.12.2004, 08:13

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •