-
        

Ergebnis 1 bis 7 von 7

Thema: Kuriose Probleme mit UART zw. PC und Atmega8

  1. #1
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.08.2006
    Ort
    Budapest
    Alter
    30
    Beiträge
    563

    Kuriose Probleme mit UART zw. PC und Atmega8

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    Hallo!

    Ich habe ein ziemlich kurioses Problem mit der Datenübertragung zwischen PC und Robby über UART (virtuelle COM-Schnittstelle mit einem Bluetooth to serial Wandler von Sunix).

    Da ich am Anfang gedacht habe, dass da ein Softwarefehler vorliegt, habe ich schon ein Thread bei den Programmierern aufgemacht, inzwsichen bin ich aber der Meinung dass es was anderes ist (http://www.roboternetz.de/phpBB2/viewtopic.php?t=32729)

    Zum besseren Verständnis beschreibe ich das ganze Projekt ein bisschen näher.

    Damit der Roboter seine Umgebung erkunden kann, bekam er eine Art Radar. Dieser besteht aus einer drehbaren Scheibe, mit zwei Sharp GP2Y0A02 (20-150 cm) oben drauf, jeweils eine für die zwei Kreishälften (also 180°). Der Schrittmotor der die Scheibe dreht, macht in 256 Schritten eine halbe Umdrehung, und es wird bei jedem Schritt gemessen.
    Wie gesagt: die ersten 100 Werte (einmal die ersten 97, dann die ersten 106, also keine bestimmte Anzahl) kommen von beiden Sensoren richtig an, die gemessene Spannung liegt also zwischen 0 und 2,56V (interne Referenz). Danach kommen bei beiden Sensoren Werte um die 160, auf alle Fälle um einiges größer als 2,56V.

    Anhand diesen Angaben würde ich auf ein Problem in der Datenübertragung schliessen, da die ersten Wandlungswerte richtig übertragen werden, und erst dann die Probleme auftreten.

    Hat jemand eine Idee woran das liegen könnte? Danke im Voraus!

    MfG

    pongi

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.08.2006
    Ort
    Budapest
    Alter
    30
    Beiträge
    563
    Hat da keiner eine Idee?
    Wie sieht es mit Bufferüberläufen aus? Wie groß ist der Buffer im PC? Kann es sein, dass ich den zu langsam auslese?
    Bzw. wie sollte ich das Timing verändern, um mögliche Fehlerquellen zu minimieren?

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    14.11.2003
    Beiträge
    813
    Hallo
    Zu deinem eigentlichen Problem hab ich keine Idee.
    Vielliecht zuwenig Informationen

    Deinen SUNIX Bluetooth Adapter finde ich interessant.
    Wo hast du den her ?
    MFG

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.08.2006
    Ort
    Budapest
    Alter
    30
    Beiträge
    563
    Wasfür Infos würdet ihr denn noch brauchen? Die UART-Software in C habe ich aus dem RN-Wissen, mit einem 10B FIFO.
    Bin ja schon am verzweifeln, ich hab ja schon alles ausprobiert, es geht aber trotzdem nicht....

    Das Bluetooth Adapter wurde hier diskutiert, da sind auch meine Erfahrungen dabei: http://www.roboternetz.de/phpBB2/zei...ag.php?t=26585

  5. #5
    Erfahrener Benutzer Robotik Visionär Avatar von Hubert.G
    Registriert seit
    14.10.2006
    Ort
    Pasching OÖ
    Beiträge
    6.186
    Das du im PC einen Bufferüberlauf hast kann ich mir nicht vorstellen. Wie hoch ist die Baudrate, ist der Datenfluss kontinuierlich, wie sieht deine Hardware µC-Seitig aus. Wie sieht es aus wenn du die Schrittgeschwindigkeit des Drehmotors halbierst und damit auch den Datenstrom.

  6. #6
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.08.2006
    Ort
    Budapest
    Alter
    30
    Beiträge
    563
    Die Baudrate ist 9600, die Daten werden nach jedem Schritt einzeln übertragen, also nicht das ganze auf einmal (falls Du das mit dem kontinuierlichem Datenfluss meinst).

    Zwischen den Schritten ist eine Wartezeit von 20ms, plus die Wandlungszeit des AD-Wandlers.

    Am Atmega8 wird der eingebaute UART benutzt, danach kommt die Pegelwandlung mit einem MAX232, das geht dann auf den Bluetooth-Serial Wandler.

    Schrittgeschwindigkeit halbieren werde ich mal ausprobieren, wahrscheinlich komme ich aber erst am Ende der Woche dazu.

    Danke für die Anregungen, mfG

    pongi

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.08.2006
    Ort
    Budapest
    Alter
    30
    Beiträge
    563
    Mit 40ms Wartezeit funktionierts...
    Es würde mich trotzdem interessieren warum es mit 20 nicht geklappt hat...

Berechtigungen

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