- Labornetzteil AliExpress         
Ergebnis 1 bis 10 von 11

Thema: Möglichkeiten der AVR/Arduino PWM?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    32
    Beiträge
    1.578
    Hi,

    ich hab selbst schon mehrere Kopter von Grund auf selbstgebaut! Die Hersteller der Regler geben meistens 50Hz an, das ist aber bei weitem nicht die größtmögliche Frequenz.
    Hier ist unter anderem eine Liste von kompatiblen Reglern: http://fpv-community.de/showthread.p...MultiWiiCopter
    Die 8kHz beziehen sich glaub ich eher auf die Frequenz des Reglers intern
    Ja, 16Bit-PWM ist bei den meisten (oder allen??) AVRs hardwaremässig dabei. Die Frage ist nur, ob dein AVR eine genügend große Anzahl an solchen Kanälen bereitstellt. Zur Not ginge aber auch Soft-PWM, wird teilweise bei Multiiwii verwendet.

    Gruß
    Chris

  2. #2
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    21.02.2013
    Ort
    Graz
    Beiträge
    211
    Ok, der ATMega hat mehrere 16bit timer. Damit wirds was. Ob es diese Funktionalität auch bei einem Arduino-Modell gibt, find ich morgen raus, wenn die Homepage wieder erreichbar ist. Was ich so lese, gibts da meist nur 2 16bit-PWM pins.

    Danke für die Hilfe.

  3. #3
    Erfahrener Benutzer Roboter Genie Avatar von m.a.r.v.i.n
    Registriert seit
    24.07.2005
    Ort
    Berlin
    Beiträge
    1.247
    Hallo,


    Das klingt doch für mich als ob diese Regler wie normale Servos angesteuert werden. Für Arduino gibt es dafür die Servo Library, die genau das tut, was du benötigst. Eine Pulsdauer von 1-2ms bei 50Hz, bzw. zwischen 0..180Grad. 90Grad entspricht 1.5ms. Einige Beispiele sind in der Arduino IDE bereits enthalten.

  4. #4
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    21.02.2013
    Ort
    Graz
    Beiträge
    211
    Zitat Zitat von m.a.r.v.i.n Beitrag anzeigen
    Das klingt doch für mich als ob diese Regler wie normale Servos angesteuert werden.
    Ja, davon geh ich aus. Im klassischen Modelbau werden die direkt an den Empfänger angeschlossen und drehen rauf, wenn der Hebel an der Fernsteuerung nach vorne geht.

    edit: 180 verschiedene Werte? Nicht gerade üppig, aber könnt gehen.

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.236
    180 verschiedene Werte? Nicht gerade üppig, aber könnt gehen
    Es war die Rede von 0 bis 180°.
    Bei einem 8MHz Quarz sind für die Werte von 1ms bis 2ms immerhin 1000Werte möglich.
    Das bei einem 16Bit Timer und einem Prescaler von 8.
    Mit dem Comparematch Interrupt und ein wenig Software ist die Ansteuerung von bis zu 8 Servos möglich.
    Nutzt man zusätzlich noch den Comparematch B sind es bis zu 16 Kanäle mit einem 16 Bit Timer.

  6. #6
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    21.02.2013
    Ort
    Graz
    Beiträge
    211
    Die Arduino Servo Lib nimmt ints von 0 bis 180, also genau Gradschritte. Ich würd mir lieber sparen, zuviel selbst herumzuschreiben, Mikrocontrollerprogrammierung ist Chinesisch für mich.

    Verdammt, mir fällt jetzt erst auf, dass das wieder nur 90 Werte pro Richtung sind ... muss ich wohl doch selbst ran.

    edit: aso, nein, da gibts ja mehr als eine Funktion
    http://arduino.cc/en/Reference/ServoWriteMicroseconds

    Untere und obere Grenzen für die Pulslänge kann man auch einstellen, damit man keine Genauigkeit verschwendet. Nur die Frequenz ist scheinbar unveränderlich.
    Geändert von ichbinsisyphos (23.02.2013 um 08:47 Uhr)

  7. #7
    Erfahrener Benutzer Begeisterter Techniker Avatar von Picojetflyer
    Registriert seit
    03.08.2004
    Ort
    Sauerland
    Beiträge
    247
    Zitat Zitat von ichbinsisyphos Beitrag anzeigen

    edit: 180 verschiedene Werte? Nicht gerade üppig, aber könnt gehen.
    Mit 8Bit Hardware PWM bekommt man bei Ca 490Hz nur Ca 120 Schritte. mehr geht nicht. aber das fliegt auch sehr gut. Sollte arduino mehr Auflösung schaffen muss mir das mal einer erklären. Edit: bei 16MHz
    Gruß
    Matthias
    Geändert von Picojetflyer (23.02.2013 um 09:07 Uhr)

  8. #8
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    21.02.2013
    Ort
    Graz
    Beiträge
    211
    Die Frequenz der Servo Lib ist diese standardmäßigen ~50Hz. Mit der oben verlinken Funktion hat man damit Mikrosekunden-Auflösung und 1000 Einzelschritte (beide Richtungen gezählt).

    Wie das in dieser Bibliothek gelöst ist, weiß ich nicht.

Ähnliche Themen

  1. Arduino vs. AVR
    Von primus inter pares im Forum Arduino -Plattform
    Antworten: 2
    Letzter Beitrag: 30.09.2011, 08:35
  2. Robotik: Bilibot soll der Arduino der Robotik werden
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 2
    Letzter Beitrag: 22.04.2011, 18:24
  3. Möglichkeiten der Orientierung mit 2 SRF02
    Von Fabian E. im Forum Robby RP6
    Antworten: 5
    Letzter Beitrag: 03.02.2010, 21:54
  4. Arduino PWM Code
    Von Lota im Forum Asuro
    Antworten: 2
    Letzter Beitrag: 20.12.2008, 09:03
  5. Möglichkeiten der Funkübertragung?
    Von carom im Forum Elektronik
    Antworten: 3
    Letzter Beitrag: 21.05.2008, 16:51

Berechtigungen

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

Solar Speicher und Akkus Tests