- Labornetzteil AliExpress         
Ergebnis 1 bis 10 von 3542

Thema: Willas Shrediquette Tricopter / Quadrocopter / Hexacopter

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    24.03.2012
    Beiträge
    6
    Hi Jürgen,

    ich versteh immer noch nicht warum du die motor ausgänge über I2C lösen willst .. wieviele motoren brauchst du den? 4, 6 oder 8?

    hab mir das datasheet vom atmega32 nochmal angeguckt und du könntest 4 motoren direkt mit den PWM modes (hardware) betreiben und sogar 8 mit 488Hz software pwm..

    gruß

    Felix

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    08.03.2012
    Beiträge
    10
    Zitat Zitat von ronco Beitrag anzeigen
    Hi Jürgen,

    ich versteh immer noch nicht warum du die motor ausgänge über I2C lösen willst .. wieviele motoren brauchst du den? 4, 6 oder 8?

    hab mir das datasheet vom atmega32 nochmal angeguckt und du könntest 4 motoren direkt mit den PWM modes (hardware) betreiben und sogar 8 mit 488Hz software pwm..

    gruß

    Felix
    Bin zwar nicht Jürgen, aber egal.
    Theoretisch schon. Aber wenn ich das alles richtig verstanden habe, gehen für 4 mal HW-PWM alle Timer dabei drauf.
    Wenn du jetzt einen Timer für die Auswertung des Receivers abziehst sieht es schon nicht mehr so gut aus.
    Hinzu kommt das auch die RS232 ja noch einen Timer, zumindest im Bascom benötigt.

    So jetzt habe ich definitiv nur noch einen Timer.
    Jetzt wird es eng mit dem HW-PWM.

    Zum SW-PWM hatte ich oben ja schon was geschrieben. Um eine vernünftige Auflösung hin zubekommen muss der IRQ alle 3,9µs kommen.
    1/500/256 *2 da wir ja von einer Pulszeit von 1ms bis 2ms reden.
    Und in der Zeit muss er 1-n Zustände verarbeiten. Das ganze in Bascom braucht ca. 6µs.

    Eventuell kann man es in Assembler lösen. Aber das bezweifel ich mittlerweile.

    Also ich habe SW-PWM für mich abgehakt.

    Gruß
    Jens

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    24.03.2012
    Beiträge
    6
    oh sorry für den "jürgen"

    na gut .. ich hab wirklich keine ahnung wie das in Bascom ist .. hab gerade mal was rum gegoogelt und das scheint ja alles recht vordefiniert zu sein ..

    dehalb kann ich dir auch nicht sagen ob es in Bascom möglich ist die comperator IRQ's zu nuzen .. also OCIE0, OCIE1A ,OCIE1B und OCIE2
    mit denen kan man dann nemlich 2x 1-2ms PWM signale in einem machen (also man stellt den timer auf 976hz so das pro durchlauf ~1ms ableuft und dann macht man während der eine ausgang die statische 1ms high time absitzt den variablen wert des 2. ausgangs.. und anderstrum)

    aber I2C wird wohl auch gehen ..

    gruß

    felix

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    32
    Beiträge
    1.578
    Hallo,

    sry, dass ich mich erst jetzt melde, war von Montag bis einschließlich heute in Berlin, "Abschlussfahrt" mit meiner Freundin
    @Bernd:
    Dass die Motoren so spät erst anlaufen liegt wohl wirklich am eingelernten Gasweg. LEDs benutze ich nicht, da ich immer selbst weiß, in welchem Mode ich mich befinde. Der MPU ist bei mir so eingebaut, dass die Seite mit PIN1 nach vorne zeigt. Ich glaube(!!!), du musst deine Platine um 90° im Uhrzeigersinn drehen (wenn denn der Kopter im 1. und 2. Bild in die selbe Richtung zeigt). Wie lange die PWM-Impulse bei mir sind, kann ich dir gerade nicht sagen, aber falls nötig, könnte ich mal nachsehen
    @Harald:
    Grundsätzlich ist IMHO beides sinnvoll. Zum Einen könnte man, sofern man noch keine wirklich passenden Parameter für seinen Kopter gefunden hat, diese evtl. (wenn er dabei nicht zustark schwingt) 30cm über dem weichen Boden dadurch finden und anschließend Auslesen / Speichern / etc... Zum Anderen kann man den Algo auch ständig mitlaufen lassen (mit kleiner Temperatur --> kleine Änderungen der Parameter), um ständig die passenden Parameter zur aktuellen Situation (Wind / kein Wind, Kunstflug / Schwebeflug, etc...) parat zu haben. Natürlich ist das kein Wunderwerk, aber ich finde es doch beachtlich, was diese paar Zeilen Code alles bewirken können
    Das Gute daran: Der Algo braucht stets Zufallswerte, welche ja eigentlich nicht wirklich zufällig wären und bei jedem Neustart des µC die gleiche Folge generiert werden würde. Doch aufgrund der wirklich echten zufälligen Umwelt des Kopters kann man die seed-Variable des RND() Befehls immer mit irgendeinem Motor-Ansteuerungswert füttern, sodass die Werte wirklich zufällig sind und nicht jedesmal die gleichen Parameter rauskommen --> Folge: Manchmal ist der Algo besser, manchmal schlechter.

    Gruß
    Chris

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    02.12.2011
    Ort
    Muggensturm
    Beiträge
    116
    Hallo Chris,

    nächster Versuch, kein besseres Ergebnis.
    Ab einer bestimmten Gasknüppelstellung geht der Motor 1 auf Vollgas.
    Welchen Sender fliegts du?
    Bei mir ist es GR/Jeti.
    Impulslängen:
    1 Gas 1,03 - 1,98
    2 Roll 1,08 - 1,91
    3 Nick 1,11 - 1,86
    4 Yaw 1,10 - 1,91

    auf die Steuervorgaben reagiert er richtig, auch der MPU ist jetzt richtig.

    Wenn ich mich richtig erinnere, flog er mit der alten Version besser d. h. nicht so nervös.

    Die LEDs fand ich wichtig um den richtigen Punkt zu finden wo ich nach dem Einschalten die Motoren scharfschalten konnte.
    Mit Willas Software war da ja immer so ein gewisser Ablauf ein zu halten.
    Gruß Bernd

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    32
    Beiträge
    1.578
    Hi Bernd,

    hm das ist sehr komisch... Ich habe einen Graupner MX-16 Hott mit einem GR-24 Empfänger.
    Ich warte nach dem anstecken immer ein paar Sekunden und dann passt das schon
    Übrigens: Meine Routine zur Offset-Bestimmung der Gyros ist wirklich sehr empfindlich. Ich habe mal testweise den Kopter 5 Min. lang auf den Boden gestellt und nur mit der Hand von oben leicht festgehalten --> die Routine wurde immer wieder durchlaufen, da sie keine absolute Ruhelage feststellen konnte. Man muss den Kopter also auf einen wirklich Bewegungsfreien Untergrund stellen, damit die Routine korrekt initialisiert.
    Bist du dir sicher, dass du die Motoren auch korrekt eingelernt hast (v.a. Motor 1)?

    Gruß
    Chris

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    02.12.2011
    Ort
    Muggensturm
    Beiträge
    116
    Hallo Chris,

    ich muss auch 6 sek warten, das habe ich schon herausgefunden, wenn ich aber zu lange warte, laufen die Motoren nicht mehr an.
    Ich stelle ihn im Hof auf den Boden, ich habe da noch nichts schwanken sehen, außer mich selbst
    Beim Einlernen der Motoren muß ich auf min. 1050ms gehen, bei 1100ms initialisieren die Motoren nicht, wenn sie nach deiner Software hängen, direkt am Empfänger schon.
    Gruß Bernd

Stichworte

Berechtigungen

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

Labornetzteil AliExpress