-         

Ergebnis 1 bis 5 von 5

Thema: Schrittmotoren mit L297/L298 ansteuern

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    23.03.2011
    Beiträge
    51

    Schrittmotoren mit L297/L298 ansteuern

    Anzeige

    hallo,
    mein Frage ist:
    Ein Schrittmotor soll 50 Schritte fahren,danach soll er dir Richtung ändern dann wieder 50 Schritte machen.Wie kann man die frequenz rechnen, womit der Motor drehen soll?
    Code:
    ISR (INT0_vect)					//recht fahren
    {
    	PORTB|=(1<<PB0);   // Enable 
            PORTB|=(1<<PB1);   // Richtung
    for(int i=0,i<50,i++) 
    {
            PORTB|=(1<<PB2)  //Clock 
          _delay_us(x)      // wie berechnet man die x damit der Motor sauber sich dreht
            PORTB&=~(1<<PB2)
    }	
           PORTB&=~(1<<PB0);   // Enable löschen
    }
    ISR (INT1_vect)					//"Mache viele Schritte"
    {
    	    PORTB|=(1<<PB0);   // Enable 
                PORTB&=~(1<<PB1);   // Richtung
    for(int i=0,i<50,i++) 
    {
            PORTB|=(1<<PB2)  //Clock 
          _delay_us(x)      // wie berechnet man die x damit der Motor sauber sich dreht
            PORTB&=~(1<<PB2)
    }  
            PORTB&=~(1<<PB0);   // Enable löschen  
    }
    wird das so funktioniern und wenn ja wie kann man die genaue Wartezeit x für _delay_us berechnen.

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Geistesblitz
    Registriert seit
    16.03.2011
    Ort
    Dresden
    Alter
    30
    Beiträge
    1.937
    Ganz einfach: Wartezeit=1/Frequenz
    Wenn du also 500Hz erzeugen willst musst du bis zum Umschalten 1/500Hz=2ms=2000µs warten.
    Mit C-Programmierung bei µC kenn ich mich allerdings nicht so gut aus.

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    23.03.2011
    Beiträge
    51
    hi, ich habe ein Formel bei Nanotec gefunden:
    Md= P * z / 6.28 * f; (P = Leistung in W, z = Schritte/ Umdrehung, f = Frequenz in Hz) kann man damit frequenz berechnen?
    wenn ich zb den Motor vom Typ(SH4009M0806) mit einer Spg von 6V und 0,8 A betreibe, dann habe ich eine Leistung von 4,8W dann ist die Frequenz: f = Md*6,28/P/z, jetzt kommt die frage wie berechnet man Z(Schritte Pro Umdrehung), mein Motor macht 400 Schritte pro Umdrehung, und ich will das der Motor nur 50 Schritte drehen soll. wie macht man das?

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von Geistesblitz
    Registriert seit
    16.03.2011
    Ort
    Dresden
    Alter
    30
    Beiträge
    1.937
    Du gehst an die Sache etwas falsch heran. Der Schrittmotor verhält sich ähnlich wie eine Synchronmaschine, will heißen die Drehzahl ist völlig unabhängig von der Leistung, solange er keine Schritte verliert. Du gibst ihm ja die Schritte mit der Impulsfrequenz vor, an die er sich auch richtet. Je mehr Leistung du draufschaltest desto höher wird das Moment, welches er erzeugt, allerdings beschleunigt er dann nicht, sondern kann einfach nur mehr Kraft übertragen. Die Drehzahl wird von der Pulsfrequenz des Ansteuersignals vorgegeben. Wenn jetzt zB. am Takteingang des L297 im Wechsel je 100ms Low und 100ms High anliegen, dann bewegt sich der Motor alle 200ms um einen Schritt weiter. Mehr gibts da eigentlich nicht zu verstehen. Dann musst du es im µC nur noch so Programmieren, dass er genau 50 Impulse sendet und schon hat es sich erledigt. Die Frequenz und somit die Geschwindigkeit ergibt sich aus den Wartezeiten zwischen den Impulsen.
    In Pseudocode:

    Wiederhole 50 Mal:
    setze Ausgang high
    warte Wartezeit
    setze Ausgang low

    Die Drehzahl ist dann Schritte/Umdrehung geteilt durch die Wartezeit

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    23.03.2011
    Beiträge
    51
    danke für die Erklärung

Ähnliche Themen

  1. Schrittmotor ansteuern mit L298 und L297
    Von berserker im Forum Motoren
    Antworten: 406
    Letzter Beitrag: 26.07.2014, 11:51
  2. 6 Schrittmotoren (L298/L297) an einem ATmega16/32
    Von the_muck im Forum AVR Hardwarethemen
    Antworten: 0
    Letzter Beitrag: 31.01.2010, 22:46
  3. unipolaren schrittmotor mit l298 & l297 ansteuern
    Von Benedikt.Seidl im Forum Elektronik
    Antworten: 11
    Letzter Beitrag: 05.03.2007, 18:12
  4. Schrittmotor mit L297/L298 ansteuern
    Von Ronnie.B im Forum Motoren
    Antworten: 15
    Letzter Beitrag: 22.06.2005, 19:31
  5. Anzahl Schrittmotoren an einem L297 / L298 Treiber
    Von commander7 im Forum Motoren
    Antworten: 1
    Letzter Beitrag: 17.12.2004, 16:26

Berechtigungen

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