-         

Ergebnis 1 bis 6 von 6

Thema: gefahrene strecke messen

  1. #1
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    04.01.2008
    Alter
    24
    Beiträge
    540

    gefahrene strecke messen

    Anzeige

    ich möchte ein prog schreiben und habe mich gefragt, wie man die gefahrene strecke messen kann. ich will sie also net vorher angeben, sondern sie nachher messen. also z b am anfang die messung starten und am ende das ergebnis abrufen!

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    14.01.2008
    Beiträge
    164
    ob du nun die strecke vorgibst oder die encoder-schritte nur zählst und dann ausgibst is doch wurscht.

    nun progge los. schau dir den encoder-code an und schreib ihn um nur für eine ausgabe.

    warum sollen andere immer alles vorkauen.

  3. #3
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    04.01.2008
    Alter
    24
    Beiträge
    540
    danke(sry, haben net ale soviel ahnung, wie du vorgibst zu haben)
    ...and always remember...
    ...AVR RULES...

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    24.12.2007
    Beiträge
    13

    Hab da auch drüber nachgedacht

    Hallo Robomann93,

    ich finde die Frage durchaus nicht dumm. Ich bin kein Programmierweltmeister und habe mir ebenfalls überlegt, wie ich die beim RP6 mitgelieferten Beispielprogramme zum Bewegungsverhalten (StateMachine) mit möglichst wenig Aufwand so abändern kann, dass eine Positionsinformation ausgegeben wird, auch dann, wenn z.B. ein MoveAtSpeed-Befehl durch einen Kollisions-Interrupt unterbrochen wird.

    Ich hatte ursprünglich daran gedacht, einfach einen Timer zu verwenden, der bei Ausführung des MoveAtSpeed-Befehls auf 0 gesetzt und bei Abarbeiten des Interrupts ausgelesen wird. Aus der Zeit und der Geschwindigkeit kann man dann den Weg berechnen.

    Ob man dazu auch direkt die Drehgebersignale verwenden kann, weiss ich nicht, weil man die ja dauernd mitlesen (irgendwo hochzählen) müsste. Genauer wäre der Weg sicher.

    Vielleicht helfen Dir die Gedanken etwas weiter.

    Und: Es gibt keine dummen Fragen.

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    25.10.2007
    Ort
    Solingen
    Alter
    25
    Beiträge
    177
    Es gibt doch getLeftDistance() und getRightDistance(), damit wird die gesamte strecke gemessen die der RP6 seit dem Start zurück gelegt hat, also wenn du die strecke messen möchtest speicherst du getLeftDistance() und getRightDistance() in jeweils einer variable leftstart und rightstart ( nur ei vorschlag ). Die messung wurde damit gestartet. aM Ziel angekommen machst du einfach:

    uint16_t xxxx = getRightDistance()-rightstart
    ...und...
    uint16_t yyyy = getLeftDistance()-leftstart

    und schon hast du die strecke die die Ketten abgefahren haben


    MfG blenderkid

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    24.12.2007
    Beiträge
    13

    Danke!

    Danke!. Ohne weiteren Kommentar.

Berechtigungen

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