-         
+ Antworten
Ergebnis 1 bis 4 von 4

Thema: Streckenmessung etc.?

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    02.01.2004
    Alter
    47
    Beiträge
    11

    Streckenmessung etc.?

    Hallo,
    habe bis jetzt mal einfache Sachen mit dem AVR (Atmega gemacht, da ich ja noch Anfänger bin.
    Aber ich habe ein Frage.
    Ich möchte an der Achse meines geplanten Robots einen Sensor anschließen der mir pro Umdrehung zwei Pulse gibt. Diese Pulse möchte ich auf einer bestimmten Strecke messen (z.B. 10 Meter) und anschließend "zwischenspeichern" damit alle nachfolgenden Unterprogramme mit diesem Wert arbeiten können. Wie schreibt man so etwas in Assembler, finde da keine Beispiele?
    Habt ihr ein Programmierbespiel für für mich?
    danke wölfchen

  2. #2
    Gast
    Hallo, kann mir denn niemand etwas sagen?
    Mir reicht auch schon wenn mir jemand erklärt wie ich die zurückgelegte Strecke messen kann, im Meter.
    danke wölfchen

  3. #3
    Gast
    Mir reicht auch schon wenn mir jemand erklärt wie ich die zurückgelegte Strecke messen kann, im Meter.
    Mit dem Teil den du in der Grundschule versäumt hast, kann ich dir gerne aushelfen:
    Die Formel für den Radumfang ist PI*Raddurchmesser. Genau diese Strecke legt dein Robot zurück, wenn sich das Rad einmal dreht.
    Wenn du die Radumdrehungen zählst kannst du dir ausrechnen, wieweit der Robot gefahren ist.

    Wie du deinem AVR beibringst, dass der die Radumdrehungen zählt weiss ich auch nicht.

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    02.02.2004
    Ort
    Greifswald
    Alter
    36
    Beiträge
    102
    An deiner Stelle würde ich mir die AVR-Programmierung mit der Sprache C aneignen. Dafür gibt es einen tollen freien Compiler, AVR-GCC, zu bekommen bei www.avrfreaks.net unter dem Namen "WINAVR". Das Programmieren in einer Hochsprache ist viel einfacher und bei C auch ziemlich hardwarenah.

    Ausserdem musst du dir keinen Kopf machen um math. Routinen, die sind alle dabei. Du kannst also durchaus direkt mit Fließkommazahlen arbeiten (Pi ist ja eine solche). Das ist allerdings etwas rechenzeitaufwendig. Vielleicht brauchst du auch keine absoluten Werte in Meter, sondern kannst auch mit Ticks wirtschaften.

    Ich würde den Sensor an einen Interruptpin anschließen, eine globale Variable definieren, und diese bei jedem Interrupt inkrementieren.

    Gruß,

    Jan

+ Antworten

Berechtigungen

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