- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 10 von 10

Thema: Eigenbau RP6 ... wie Encoder kalibrieren

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Benutzer Stammmitglied Avatar von Jackeder
    Registriert seit
    08.02.2015
    Ort
    Chemnitz, Germany
    Beiträge
    53

    Eigenbau RP6 ... wie Encoder kalibrieren

    Hallo zusammen,

    da ich neu bin stelle ich mich kurz vor. Ich heiße Hendrik, bin 36 und komme aus Chemnitz(Sachsen). Beruflich bin ich in der Metallverarbeitung ais Schleifer tätig.
    Das Thema Modellbau begeistert mich schon seit vielen Jahren, angefangen mit Eisenbahn...Schiffe...RC-Cars. Seit mehr als einem Jahr beschäftige ich mich mit dem Thema Mikrokontroler.
    Angefangen habe ich mit dem Atmel Evolations Board und das blinken von LEDs. Später kamen dann LEDs dazu, irgendwann auch ein LCD und Sensoren (temperatur,Licht).
    (M)Ein Traum von mir ist ja mal ein Hexapod, doch nach dem was ich hier im Forum schon alles darüber gelesen habe werden meine geringen Kenntnise im programmieren nicht ausreichen dafür und hab erstmal den RP6.


    Da ich sehr gerne bastel hab ich mir nur das RP6 Fahrgestell gekauft + die Encoder und tüftel nun schon seit ein paar Monaten daran rum. die Motoren werden über 2 Mini Fahrtregler von Conrad gesteuert die ich über PWM regle.
    Die Encoder lass ich über INT0 und INT1 auszählen (Steigende und fallende Flanke) und übertrage die Werte aufs Display. Und hier liegt mein Proplem. Der RP6 lauft durchs einstellen der Potis am Fahrtregler geradeaus, dennoch werden mir unterschiedliche Schritte gezählt.
    Mein Ziel ist es irgendwann mal zu sagen fahr x-Schritte gerade aus usw.

    Noch schnell noch 2 Fotos von meinem "kleinen", wenn mal alles rund läauft und zusammen harmoniert will ich alles minimieren
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken DSC_7298.jpg   DSC_7299.jpg  
    Geändert von Jackeder (31.08.2015 um 18:14 Uhr)

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von inka
    Registriert seit
    29.10.2006
    Ort
    nahe Dresden
    Alter
    77
    Beiträge
    2.180
    hi,

    beeindruckend, was Du da als nicht-elektroniker auf die beine gestellt hast - ich weiss nicht ob ich es so schaffen würde. Da Du aber offensichtlich nicht die elektronik vom RP6 verwendest (bis auf die encoder?) wird es schwierig sein Dir einen tipp zu geben. Zwei ideen:

    - deine software mit der Du die encoder ausliest hier zu posten (evtl. kann Dir dann einer der experten hier helfen)
    - die libs von arexx oder RP-wiki zu studieren
    gruß inka

  3. #3
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    66
    Beiträge
    2.435
    Hallo Inka,
    Zitat Zitat von inka Beitrag anzeigen
    beeindruckend, was Du da als nicht-elektroniker auf die beine gestellt hast
    Ein Teil der Elektronik besteht nun mal aus Mechanik und da ist er vom Fach.

    Übrigens, ganz in den Anfängen, wurden viele Detektor-Radios von Uhrmachern gebaut.

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  4. #4
    Benutzer Stammmitglied Avatar von Jackeder
    Registriert seit
    08.02.2015
    Ort
    Chemnitz, Germany
    Beiträge
    53
    danke für die Blumen, ich programmiere in C
    Wie gesagt die Encoder sind an einem ATmega 16 angeschlossen an Pin PD2 und PD3 über einen 10Kohm Pull UP, sprich wie als wären es Taster
    sieht dann im Prog. so aus

    volatile int TaktLi;
    volatile int TaktRe;
    // ** Interrupt-routinen**
    ISR(INT0_vect) //Encoder rechts zählen
    {
    TaktRe++;
    }
    ISR(INT1_vect) //Encoder links zählen
    {
    TaktLi++;
    }

    mit "TaktLi" und "TacktRe" arbeite ich dann weiter bzw. anzeigen auf dem LCD

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    66
    Beiträge
    2.435
    Hallo,
    Zitat Zitat von Jackeder Beitrag anzeigen
    danke für die Blumen, ich programmiere in C
    Wie gesagt die Encoder sind an einem ATmega 16 angeschlossen an Pin PD2 und PD3 über einen 10Kohm Pull UP, sprich wie als wären es Taster
    sieht dann im Prog. so aus

    volatile int TaktLi;
    volatile int TaktRe;
    // ** Interrupt-routinen**
    ISR(INT0_vect) //Encoder rechts zählen
    {
    TaktRe++;
    }
    ISR(INT1_vect) //Encoder links zählen
    {
    TaktLi++;
    }

    mit "TaktLi" und "TacktRe" arbeite ich dann weiter bzw. anzeigen auf dem LCD
    Ich kenne die Decoder vom RP6 nicht.

    Grundsätzlich hat man aber immer das Problem des Prellens.

    Ein mechanischer Schalter macht nicht einfach sauber Kontakt. Der hüpft beim Schliessen erst mal wie ein Ball etwas rum und macht mal Kontakt und mal nicht. Die Prellzeit liegt typischerweise im Bereich von ms. Wenn die Elektronik schneller ist, wertet sie dies als mehrere Impulse.

    Beim RP6 werden zwar Lichtschranken verwendet, die können aber auch Probleme haben sich eindeutig zu entscheiden, wenn sie nur teilweise abgedeckt sind.
    Deine Interruptroutine wird aber Impulse bis in de Bereich von 100kHz bis etwa 1MHz noch als einzelne Impulse erkennen und zählen.

    Eine Andere Möglichkeit sind Störsignale, welche auf die Sensorleitung eingestreut werden und auch als gültige Impulse gewertet werden.

    Am einfachsten wäre es, sich die Signale mal mit einem Oszilloskop anzusehen.
    Nun wissen wir aber nicht ob du diese Möglichkeit hast?

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  6. #6
    Unregistriert
    Gast
    > dennoch werden mir unterschiedliche Schritte gezählt.

    Wieviel unterschiedlich denn etwa auf eine bestimmte Distanz?
    Durch Radschlupf gibts da immer Abweichungen, das könnte also auch normal sein.
    (Nutze mal die Suchfunktion im Forum, da gibts hunderte Threads zu diversen Robotern)

  7. #7
    Erfahrener Benutzer Robotik Einstein Avatar von inka
    Registriert seit
    29.10.2006
    Ort
    nahe Dresden
    Alter
    77
    Beiträge
    2.180
    hallo Peter,

    Zitat Zitat von Peter(TOO) Beitrag anzeigen
    Ein Teil der Elektronik besteht nun mal aus Mechanik und da ist er vom Fach.
    das meinte ich ja nicht, ich wäre dann als gelernte bergmann ja genauso vom fach, ich wollte damit ausdrücken, dass sich seine mechanik ja offensichtlich mit hilfe von elektronik und software auch bewegt. Und das ist nicht selbstverständlich...
    und hier - da er offensichtlich mit ISR routinen arbeitet - die mir noch sowas von suspekt sind...

    Zitat Zitat von Peter(TOO) Beitrag anzeigen
    Übrigens, ganz in den Anfängen, wurden viele Detektor-Radios von Uhrmachern gebaut.
    hatte ich auch mal mit 6 oder 7, mit einer irrelangen antenne und kopfhörern, habs zusammen mit meinem grossvater gebaut und war stolz wie oskar...
    gruß inka

Ähnliche Themen

  1. RP6 Probleme Bootloader und Encoder
    Von bernd01 im Forum Robby RP6
    Antworten: 17
    Letzter Beitrag: 11.08.2012, 15:57
  2. RP6 Encoder
    Von Kene im Forum Robby RP6
    Antworten: 12
    Letzter Beitrag: 02.10.2010, 14:54
  3. RP6 alternative Encoder / Drehimpulsgeber
    Von RP6User im Forum Robby RP6
    Antworten: 2
    Letzter Beitrag: 13.10.2008, 10:42
  4. Antworten: 8
    Letzter Beitrag: 26.04.2006, 22:29
  5. wie funktioniert encoder(LEFT) und encoder(RIGHT)
    Von natalie im Forum Sonstige Roboter- und artverwandte Modelle
    Antworten: 2
    Letzter Beitrag: 22.11.2005, 22:45

Stichworte

Berechtigungen

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

Solar Speicher und Akkus Tests