-
        

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: Quadrokopter

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    15.07.2009
    Beiträge
    10

    Quadrokopter

    Anzeige

    Ich möchte meinen eigenen Quadrocopter bauen, der zumindest so hoch fliegt, dass er eine Treppe überwinden kann (ich denke so hoch wie zwei Stufen müsste reichen), nur leider habe ich noch keine Erfahrung in diesem Gebiet, deshalb habe ich einige Fragen:

    *Warum müssen jeweils 2 Rotoren in eine andere Richtung drehen
    *Gibt es einen bestimmten Sensor, der überprüfen kann, ob der Quadrokopter wagrecht fliegt
    *Welche Motoren benötigt man dafür (Kann man normale DC-Motoren verwenden mit 14000U/min bei 5V)
    *Welche Akkus sind empfehlenswert

  2. #2
    Erfahrener Benutzer Roboter Experte Avatar von ikarus_177
    Registriert seit
    31.12.2007
    Ort
    Grein
    Alter
    24
    Beiträge
    601
    Hi,

    ich hab zwar selbst keinen Copter gebaut, jedoch finde ich das ein sehr spannendes und interessantes Vorhaben!

    *Warum müssen jeweils 2 Rotoren in eine andere Richtung drehen
    Die Drehmomente der vier Motoren müssen sich aufheben, sonst würde der Copter ja in der Luft kreiseln. Genau dafür haben auch Hubschrauber einen Heckrotor.

    *Gibt es einen bestimmten Sensor, der überprüfen kann, ob der Quadrokopter wagrecht fliegt
    Die meisten Bastler verwenden hier eine Verbindung aus Gyros und Beschleunigungssensoren. Vielleicht würden auch Lagesensoren funktionieren, das kann ich nicht sagen. Schau dir mal Willas Tricopter-Projekt hier im Forum an. Was er aus seinem Copter gemacht hat, ist echt spitze!

    *Welche Motoren benötigt man dafür (Kann man normale DC-Motoren verwenden mit 14000U/min bei 5V)
    Ich würde Brushless-Motoren verwenden, die sind sehr leicht, und haben trotzdem eine hohe Leistung.

    *Welche Akkus sind empfehlenswert
    Hier kommen wohl nur LiPo's in Frage: leicht, leistungsstark, aber auch nicht ganz ohne in der Handhabung in Puncto Sicherheit.

    Viele Grüße

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    15.07.2009
    Beiträge
    10
    Danke für die Antwort

    Ich verstehe zwar dass Gyros allein nicht reichen wegen der Beschleunigung bei einer Bewegung doch wie kann man das mit einfachen Beschleunigungssensoren kompensieren?

  4. #4
    Erfahrener Benutzer Roboter Genie Avatar von Willa
    Registriert seit
    26.10.2006
    Ort
    Bremen
    Alter
    37
    Beiträge
    1.269
    Hallo!
    Gyros alleine würden theoretisch reichen. Gyros messen eine Winkelgeschwindigkeit. Wenn du diese Geschwindigkeit aufintegrierst, bekommst du den Winkel mit dem der Copter grad in der Luft steht. Das würde reichen um einen Copter waagerecht zu halten. Leider passieren beim integrieren aber immer Fehler. Diese Fehler summieren sich mit der Zeit und werden irgendwann unendlich groß. Dein Copter denkt dann er würde waagerecht sein, in Wirklichkeit ist er aber um 180° gedreht bzw. schon längst eingeschlagen. Um diesen Fehler zu korrigieren verwendet man Beschleunigungssensoren (ACC). So ein Sensor kann die Erdbeschleunigung messen, und weiss daher immer ziemlich genau wo unten ist. Diese Information gibt er an das Gyrointegral weiter und korrigiert es langsam.
    Ein ACC alleine reicht leider nicht, denn der rauscht von Natur aus ziemlich stark und ist zu langsam. Gyros sind extrem empfindlich und steuern bei jeder geringsten Abweichung gegen. Das kann ein ACC prinzipbedingt nicht so gut.
    *Gibt es einen bestimmten Sensor, der überprüfen kann, ob der Quadrokopter wagrecht fliegt
    Die Antwort lautet also nein. Ob der Copter waagerecht fliegt findest du mit zwei verschiedenen Sensoren und mit für einen Anfänger nicht ganz trivialen Algorithmen heraus.

    P.S.: Übrigens ist die Navigation in geschlossenen Räumen auch nicht ganz trivial... Man könnte es so wie ich machen (mit Kamera und Markern), oder man nimmt infrarot Distanzsensoren. Mit letzterem weiss der Copter aber immernoch nicht wo er ist. Aber evtl. erkennt er Hindernisse....
    Viele Grüße, William
    -> http://william.thielicke.org/

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    15.07.2009
    Beiträge
    10
    Erstmal danke für die Antwor

    Im Prinzip verstehe ich erstmal die Lageerkennung. Doch wie ich dieses Vorhaben realisieren soll weiß ich immer noch nicht.
    Gyros + Integrator sind kein Problem
    Korrigiert wird es mit dem angepassten Signal des Beschleunigungssensors (wahrscheinlich Summierer oder Subtrahierer)

    Doch wie sehen die Algorithmen aus die dieses Signal anpassen (bzw ist hier ein bestimmtes Filter für die Realisierung gemeint)

  6. #6
    Erfahrener Benutzer Roboter Genie Avatar von Willa
    Registriert seit
    26.10.2006
    Ort
    Bremen
    Alter
    37
    Beiträge
    1.269
    Doch wie sehen die Algorithmen aus die dieses Signal anpassen
    Das kannst du machen wie du willst. Dafür gibt es wohl zig Möglichkeiten. Ich habe mir etwas sehr sehr einfaches ausgedacht, was aber scheinbar vollkommen genügt:
    Code:
    if Gyro_Integral > ACC_Wert then
       Gyro_Integral = Gyro_Integral - 1
    end if
    if Gyro_Integral < ACC_Wert then
       Gyro_Integral = Gyro_Integral +1
    end if
    Anschliessend wird das Gyro_Integral mit dem Faktor 0.01 multipliziert, zu einem Integer konvertiert und in die Regelung eingespeist. Das Rauschen des ACCs kommt durch diesen kleinen Faktor überhaupt nicht bis zu den Motoren durch.
    Man kann es wohl auch so machen:
    Code:
    Gyro_Integral = Gyro_Integral * 0.999 + ACC_Wert * 0.001
    Ob das genauso schön funktioniert probiere ich evtl. irgendwann mal aus.
    Viele Grüße, William
    -> http://william.thielicke.org/

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    15.07.2009
    Beiträge
    10
    Okay vielen Dank

  8. #8
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    29.01.2004
    Beiträge
    2.441
    Anschliessend wird das Gyro_Integral mit dem Faktor 0.01 multipliziert, zu einem Integer konvertiert und in die Regelung eingespeist. Das Rauschen des ACCs kommt durch diesen kleinen Faktor überhaupt nicht bis zu den Motoren durch.
    Die einzelnen Fragmente leuchten mir für sich als solche immer ien, das Gesamtbild wird dadurch aber irgendwie immer unklarer
    Wenn du das bereinigte Gyrointegral als I-Anteil nimmst, was nimmst du für deine Regelung als P-Anteil?
    Der absolute Messwert des Gyros, sprich die aktuelle Winkelgeschwindigkeit sagt doch nichts über die Lage aus.

    Und wie gehts du damit um, dass der Gyro schnell und der ACC langsam ist?
    Machst du einfach alle x-ms passend zur Geschwindigkeit des Gyros dieselbe Messung und Berechnung und ignorierst, dass du dabei vom langsamen ACC x-mal denselben (alten) Messwert verwendest?

  9. #9
    Erfahrener Benutzer Roboter Genie Avatar von Willa
    Registriert seit
    26.10.2006
    Ort
    Bremen
    Alter
    37
    Beiträge
    1.269
    Hi!
    Also, diese Nomenklatur mit P, I und D ist mir absolut schleierhaft. Ich bin kein Regelungstechniker und möchte auch keiner werden, deswegen heisst bei mir "I-Anteil" einfach nur "Integral des Gyros". Der "P-Anteil" ist für mich das Signal, was aus dem Gyro rauskommt. Das ist zwar nicht korrekt, stört mich aber erstmal nicht.
    Meine Regelung funktioniert nach diesem Schema (dabei steht "Gyro" jetzt für den Sensorwert den ich aus dem Gyro herausbekomme, "Knüppel" steht für die Stellung des entsprechenden Knüppels) In diesem Schema ist die Gyrointegralkorrektur nicht eingebaut. Diese würde beim Faktor "B" zum Einsatz kommen:

    Modus1, Winkelgeschw. Steuerung:
    A=Gyro-Knüppel
    B=B+A
    Motorsoll=A+B

    Modus 2, Winkelsteuerung:
    A=Gyro
    B=B+A
    C=B-Knüppel
    Motorsoll=A+C

    Wie würde ein Regelungstechniker diese Dinge benennen? Ich habe mal gehört, dass man evtl. den Schritt "Motorsoll = A+C" als Backstepping bezeichnet....

    Und wie gehts du damit um, dass der Gyro schnell und der ACC langsam ist?
    Da achte ich nicht drauf. Der Drift der Gyros ist extrem klein, der Korrekturfaktor dementsprechend auch. Da fällt sowas gar nicht ins Gewicht denke ich mal.

    Machst du einfach alle x-ms passend zur Geschwindigkeit des Gyros dieselbe Messung und Berechnung und ignorierst, dass du dabei vom langsamen ACC x-mal denselben (alten) Messwert verwendest?
    Leider liefert der ACC niemals zwei gleiche werte... Der rauscht zu stark (gefördert durch die Motorvibrationen). Abgefragt wird der Sensor genauso oft wie die Gyros. Das ergebnis wird gleich verrechnet.
    Viele Grüße, William
    -> http://william.thielicke.org/

  10. #10
    Neuer Benutzer Öfters hier
    Registriert seit
    15.07.2009
    Beiträge
    10
    Würde eurer Meinung nach so etwas funktionieren


    Messanzahl++
    if(Messanzahl==n)
    {
    Korrekturwert=Wert_Gyro - Wert_ACC;
    Messanzahl=0;
    }
    Endwert = Wert_Gyro - Korrekturwert * Faktor

    n ist eine bestimmte Anzahl an Messungen um die der ACC-Sensor langsemer ist.
    Der Faktor wird sehr klein ausfallen (ca. 0.05).

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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