- fchao-Sinus-Wechselrichter AliExpress         
Ergebnis 1 bis 5 von 5

Thema: PWM Geschwindigkeit läßt sich nicht regeln

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    18.04.2005
    Ort
    Regensburg
    Alter
    45
    Beiträge
    13

    PWM Geschwindigkeit läßt sich nicht regeln

    Anzeige

    Powerstation Test
    Hallo,

    ich habe folgendes Programm für meinen ATMEGA8:

    Code:
    void pwm2(void){
    TCCR1A = (1<<COM1A1) | (1<<COM1B1) | (1<<COM1A0) | (1<<COM1B0) | (1<<WGM11)|(1<<WGM10); // 10 Bit Pwm, invertierend
       TCCR1B = (1<<CS11);      // Prescaler 8
       // Ausgänge für PWM
       PORTB &=  ~(( 1 << PB0 )| ( 1 << PB1 ));  // Motor an Port PB0 und PB1 aus
       OCR1A=1;         // Mindestzeit für PWM1
       OCR1B=1;         // Mindestzeit für PWM2
       // und in Ausgangswerte setzen 
       }
       
    void MotorSpeed(unsigned int left_speed, unsigned int right_speed)
    {
       PORTB &=  ~(( 1 << PB0 )| ( 1 << PB1 ));  // Motor an Port PB0 und PB1 aus
       OCR1A = left_speed;
       OCR1B = right_speed;
       PORTB |= (( 1 << PB0 )| ( 1 << PB1 ));  // Motor an Port PB0 und PB1 aus
    }
    Das main siht in etwa so aus:
    Code:
    int main(void)
    {
    		
    	pwm2();
    		
    	// Endlosschleife
    	while (1)
    
    	{
    	
    	MotorSpeed( 64, 128);
    	
    	}
    
    }
    Jetzt zu meiner Frage, der Motor dreht sich , aber leider reagiert er auf keine Wertänderungen bei MotorSpeed! nur bei 1 und 1024 bleibt er stehen, aber bei allen werten dazwischen dreht er immer gleich.
    Was mache ich falsch??
    Danke

    Gruß
    Fostie

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    21.10.2005
    Ort
    Erde
    Alter
    57
    Beiträge
    1.195
    Du schaltest in der Endlosschleife in Main() den Motor ständig an und aus, so bekommt der keinen Strom.

    Lass mal in MotorSpeed das aus und anschalten des Motors weg, dann sollte es klappen. Ist ohnehin nicht nötig, da die neuen PWM Werte erst beim nächsten PWM Zyklus übernommen werden.

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    18.04.2005
    Ort
    Regensburg
    Alter
    45
    Beiträge
    13
    Stimmt,

    aber es geht auch dann nicht!

    Aber ich glaub ich hab ein anderes Problem.

    Wenn ich in meinem Program Speed ändere ändere ich ja die Spannung.

    Ich habe aber am Ausgang eine Schrittmotorsteuerung hängen und will nicht die Spannung sondern die Abstände der Spannungen ändern.

    Da muß ich wohl einen anderen Wert ändern, aber welchen?

    Danke
    Gruß
    Frostie

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    21.10.2005
    Ort
    Erde
    Alter
    57
    Beiträge
    1.195
    Was für eine Steuerung ist das denn L297 (s. wiki) funktioniert nicht mit PWM.

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    18.04.2005
    Ort
    Regensburg
    Alter
    45
    Beiträge
    13
    Sollte zwar schon mit PWM gehen, habs jetzt aber über nen Timer gelöst.

    Danke an alle!

    Gruß
    Frostie

Berechtigungen

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

12V Akku bauen