- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 10 von 13

Thema: Atmega8 und Servo ansteuern

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Benutzer Stammmitglied Avatar von Wombatz
    Registriert seit
    10.06.2011
    Beiträge
    70
    Blog-Einträge
    1
    mein GND ist mit GND des Boards zusammengeschaltet. Mein Netzteil versorgt beide Geräte mit Spannung... (Ca.7V und 1,5A)... sollte eigendlich reichen

  2. #2
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    Was soll das mit dem Timer1? Nach der Bascom-Hilfe verwendet der Servo-Befehl den Timer0. Schau dir mal den Hilfetext zu "Config Servos" an.

    Code:
    Do
    
    A = 63535
    
    Wait 2
    
    A = 61535
    
    Loop
    A wird 63535, dann zwei Sekunden warten, dann wird A 61535 und gleich wieder 63535! Dann wieder zwei Sekunden warten... Was passiert dann mit A?

    Gruß

    mic
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  3. #3
    Benutzer Stammmitglied Avatar von Wombatz
    Registriert seit
    10.06.2011
    Beiträge
    70
    Blog-Einträge
    1
    Du hast recht ich habe Wait 2 vergessen.... das ändert aber nichts an dem Servoverhalten.
    Mit dem Timer1 kann man das wohl auch machen, das habe ich auf jeden Fall im RN-Wissen gelesen.

    http://www.rn-wissen.de/index.php/Servoansteuerung

    Komisch ist nur, dass der Servo in unregeläßigen Intervallen hin und her dreht
    Geändert von Wombatz (30.09.2011 um 15:26 Uhr)

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    19.02.2006
    Beiträge
    982
    Ich verstehe gerade nicht wirklich wie du mit diesem Programm ein Servosignal zu erzeugen gedenkst..
    ..aber das besagte ruckeln kann ich angesichts der wait 2 und waitms 500 ungeprueft glauben.

    Schau erst mal hier wie das Signal ausschauen sollte..
    http://www.rn-wissen.de/index.php/Se..._und_Schaltung

    Gruss

    Edit: Den Ansatz mit Timer Intterupts zu arbeiten kann ich nur befuerworten, hatte schlechte Erfahrungen mit den Bascom Servo Befehlen (seltsames Zucken)
    Nam et ipsa scientia potestas est..

  5. #5
    Benutzer Stammmitglied Avatar von Wombatz
    Registriert seit
    10.06.2011
    Beiträge
    70
    Blog-Einträge
    1
    Ich habe jetzt mal das Beispiel des Links genommen
    $regfile = "m8def.dat" ' specify the used micro

    $crystal = 3686400 ' used crystal frequency


    Config Servos = 2 , Servo1 = Portb.0 , Servo2 = Portb.1 , Reload = 10

    Config Portb = Output

    Enable Interrupts


    Do
    Servo(1) = 100
    Servo(2) = 100
    Waitms 1000
    Servo(1) = 50
    Servo(2) = 50
    Waitms 1000
    Loop

    Das PWM-Signal wird erzeugt, nur der Servo dreht sich nicht. Irgendwie ist mir das nicht plausibel.
    Der Timer zählt bis 256... Immer wenn er die Zahl 100 oder 50 erreicht, ändert der das Signal.
    So müsste die Theorie sein.
    Geändert von Wombatz (30.09.2011 um 15:48 Uhr)

  6. #6
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Grundsätzlich wichtig ist, dass der Takt auch wirklich 3686400Hz ist.
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  7. #7
    Benutzer Stammmitglied Avatar von Wombatz
    Registriert seit
    10.06.2011
    Beiträge
    70
    Blog-Einträge
    1
    Das stimmt schon...alle anderen Sachen funktionieren auch... es ist ein externer Quarz. Das ist übrigends die Schaltung von Rowalt.de!
    Ich habe auch gerade mal den Speaker an den Servopin angeschlossen... Insofern, konnte ich auch hören, dass das PWM erzeugt wird.
    Ich versehe nur nicht, wieso der Servo nicht dreht.
    Der Servo ist übrigends auch nicht defekt, da ein anderer das selbe Phänomen zeigt

  8. #8
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Wo soll man da suchen?
    http://rowalt.de/index.htm

    "Das stimmt schon...alle anderen Sachen funktionieren auch... es ist ein externer Quarz." ist ja nicht wirklich der Beweis für den richtigen Takt. Fuses sind richtig gesetzt? Was wird ausgegeben:

    Do
    Waitms 500
    Toggle Portb.0
    Loop
    End
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  9. #9
    Benutzer Stammmitglied Avatar von Wombatz
    Registriert seit
    10.06.2011
    Beiträge
    70
    Blog-Einträge
    1
    Ich gehe mal davon aus, dass der Code richtig ist und theoretisch funktionieren müsste.
    Jetzt habe ich mal die Hardware beleuchtet und ein eigenartiges Phänomen festgestellt.
    Reibe ich mit dem GND-Pin des Servos an meiner GND-Krokodilklemme, ohne den Kontakt zu verlieren, bewegt sich der Motor manchmal unkontrolliert.
    Das PWM-Signal wird allerdings gleichmäßig übertragen... deswegen schließe ich einen Wackelkontakt aus. Weiterhin halte ich alle Kabel statisch. nur die beiden GND reibe ich gegeneinander.....?????.....der zweite Servo macht das gleiche

  10. #10
    Benutzer Stammmitglied Avatar von Wombatz
    Registriert seit
    10.06.2011
    Beiträge
    70
    Blog-Einträge
    1
    Ich habe fasst das gesamte Buch von Rowalt durchgelesen und ausprobiert. Alles hat geklappt. Die Fusebits sind auch richtig gesetzt.
    Sonst wäre ich schon viel früher auf Probleme gestoßen.
    Die Schaltung findest du auf der Rowalt Seite unter

    microcontroller=> Einführung 1

Ähnliche Themen

  1. Servo mit Atmega8 ansteuern?
    Von kif im Forum AVR Hardwarethemen
    Antworten: 10
    Letzter Beitrag: 16.01.2011, 16:25
  2. Schrittmotor mit ATMEGA8 ansteuern
    Von dadio im Forum Assembler-Programmierung
    Antworten: 1
    Letzter Beitrag: 07.02.2008, 23:10
  3. LC78211 mit Atmega8 ansteuern
    Von webbuddah im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 1
    Letzter Beitrag: 02.02.2007, 13:58
  4. 32 Servos mit Atmega8 ansteuern???
    Von ChRiZ im Forum Microcontroller allgemeine Fragen/Andere Microcontroller
    Antworten: 3
    Letzter Beitrag: 21.10.2006, 21:12
  5. Servo mit ATmega8
    Von Björn im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 23
    Letzter Beitrag: 20.09.2005, 21:00

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress