- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 10 von 15

Thema: Servo ansteuerung durch pwm

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Begeisterter Techniker Avatar von Torrentula
    Registriert seit
    10.10.2009
    Ort
    Procyon A
    Beiträge
    355
    Hallo!

    Ich bin zu Beginn auch an den Servos verzweifelt!

    Der Timer 1 (zu dem auch das Register OCR1A) gehört, ist an den Motortreiber angeschlossen um die Geschwindikeit eines Motors zu steuern. Bis jetzt habe ich es nicht probiert beides gleichzeitig laufen zu lassen. Vorausgesetzt du willst deine Getriebemotoren noch über den Motortreiber ansteuern, musst du einen anderen Timer mit PWM-Funktionalität benutzen. Auf dem Mega32 wäre das dann der Timer2.

    Dieses Programm habe ich damals benutzt um meinen RS-2 über Timer 1 anzusteuern:

    Code:
    #include <avr/io.h>
    #include <util/delay.h>
    
    int main(void){
        
        // PWM init
        
        DDRB |= (1<<PB1);
        
        TCCR1A = (1<<WGM11) | (1<<COM1A1); // Non-Inverting
        TCCR1B = (1<<WGM13) | (1<<WGM12) | (1<<CS11); // Fast PWM, Prescaler = 8
        
        ICR1 = 10000;
        
        
        while(1){
        
            OCR1A = 4500; // left
            
            _delay_ms(1000);
        
            OCR1A = 3600; // SE
            
            _delay_ms(1000);
        
            OCR1A = 2750; // middle
            
            _delay_ms(1000);
            
            OCR1A = 1900; // SW
            
            _delay_ms(1000);
        
            OCR1A = 1050; // right
            
            _delay_ms(1000);
        
            
        }
        
    }
    Den müsstest du eben für Timer2 anpassen!

    MfG

    Torrentula

    P.S.: Die RS-2 Servos sind komisch, deshalb habe ich die mit den Rechenbeispielen auch nie in die Stellung bekommen die ich wollte also sind die Werte für OCR1A experimentell ermittelt worden!
    MfG Torrentula

  2. #2
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    11.01.2008
    Ort
    Krefeld
    Beiträge
    272
    Ich glaub dann war da der fehler, weil sobald ich den timer benutzt habe (versucht) nichts mehr ging.
    Und das erklärt auch das wenn ich den signal kabel vom servo rausgezogen habe ein motor lief.
    Ich Probier es heute nachmittag sofort aus, und wenn das klappt, dann weiß ich nicht wie ich dir danken soll..., denn das hat mir jetzt scho richtig viel zeit weg genommen.

    Danke
    Ich kam, sah und alles funktionierte **** doch dann klingelte mein Wecker!!!

  3. #3
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    11.01.2008
    Ort
    Krefeld
    Beiträge
    272
    Ne sorry hab die getriebe motoren jetzt auch abgesteckt und nur der servo angeschlossen.
    Und da tut sich immer noch nichts... war das auch der komplette code??? weil der servo kann nicht kaputt sein weil ich den über andere ins steuern kann.


    Mit freundliche Grüße
    Sp666dy
    Ich kam, sah und alles funktionierte **** doch dann klingelte mein Wecker!!!

  4. #4
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.713
    Haben die Servos eine separate, ausreichende Spannungs- und Stromversorgung? Ist der Servo-GND mit dem Controller-GND zusätzlich zur Signalleitung verbunden (klick hier) ? Ist der Servostecker/-buchse korrekt belegt ?
    Ciao sagt der JoeamBerg

  5. #5
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    11.01.2008
    Ort
    Krefeld
    Beiträge
    272
    Also wenn cih den servo durch andere port steuern kann, geh ich von aus das er ein ausreichende versorgung hat oder?
    Die belegung ist einfach
    rot = 5V
    Schwarz= masse
    orange = Signal auf OCR1a...

    Also ich hab ehrlich nur das projekt aufgemacht und die sachen rein kopiert ... alle anderen komponente rausgesteckt nur den Servo angeschlossen und gestartet....
    Nach den Code müsste der servo nach einander auf alle drei stellungen gehen und von vorne anfangen aber er bewegt sich nur beim einschalten vom controller kurz....
    Habe danach auch versucht den servo an den motortreiber dran zu tun, an den wo der getriebe motor immer lief aber da tut sich auch nichts, und kaputt ist er glaube ich nicht weil ich
    kann ihn mit PORTC ansteuern....
    hat jemand ein anderen tipp für mich?
    Ich kam, sah und alles funktionierte **** doch dann klingelte mein Wecker!!!

  6. #6
    Erfahrener Benutzer Begeisterter Techniker Avatar von Torrentula
    Registriert seit
    10.10.2009
    Ort
    Procyon A
    Beiträge
    355
    Benutzt du das AVRStudio5? Wenn ja solltest du die Compiler-Optimizations auf "optimize for size" stellen, da sonst _delay_ms() nicht funktioniert und zusätzlich muss auch noch F_CPU irgendwo definiert sein (im Makefile oder im Quellcode selbst mit #define F_CPU 16000000UL).

    Wenn du WinAVR benutzt sollte das Makefile eigentlich alles übernehmen (sofern der richtige Controller und Quarzfrequenz eingestellt sind).

    kann ihn mit PORTC ansteuern....
    Wie meinst du das du kannst ihn über PORTC ansteuern?

    MfG

    Torrentula
    MfG Torrentula

  7. #7
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    11.01.2008
    Ort
    Krefeld
    Beiträge
    272
    Ok, mach ich sobald ich zuhause bin ....
    also ich kann den servo ja ne 1 geben und dan geht er an und mit pausen kann ich ihn dann ansteurn bis zum anschlag.
    darum bin ich der meinung wenn das geht, sollte er nicht kaputt gehen
    Ich kam, sah und alles funktionierte **** doch dann klingelte mein Wecker!!!

Ähnliche Themen

  1. RP6 Servo Ansteuerung
    Von Christian3 im Forum Robby RP6
    Antworten: 14
    Letzter Beitrag: 27.05.2012, 22:04
  2. Ansteuerung Servo mit Servo Fkt. oder mit PWM?
    Von cosanostra im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 8
    Letzter Beitrag: 14.11.2007, 10:26
  3. Antworten: 3
    Letzter Beitrag: 02.11.2007, 02:41
  4. Servo Ansteuerung
    Von Gerko im Forum Elektronik
    Antworten: 3
    Letzter Beitrag: 26.11.2006, 18:40
  5. Antworten: 4
    Letzter Beitrag: 07.08.2004, 21:13

Berechtigungen

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

12V Akku bauen