-
        

+ Antworten
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 18

Thema: (Hilfe!)Jahresarbeit: Roboter mit autonomer Linienverfolgung

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    29.09.2004
    Ort
    Tiefenbach
    Beiträge
    14

    (Hilfe!)Jahresarbeit: Roboter mit autonomer Linienverfolgung

    Anzeige

    Hallo,

    wir müssen dieses Jahr in der Schule eine "technische Übungsarbeit" durchführen. Wir haben uns die Aufgabe gestellt einen Roboter zu entwickeln, der einer vorgezeichneten schwarzen Linie (auf weißem Untergrund) autonom nachfahren kann.
    In unserem Profilfach IT haben wir zwar schon einiges über die Technik und die Programmierung von Mikrocontrollern der 8051er-Familie in Assembler erfahren, aber eben alles nur in der Theorie.

    Bisher haben wir in unserem Projekt mangels Know-how eher nach der Trial-And-Error Methode gearbeitet: Bauteile bestellt, Platinen zusammengelötet, geschaut ob es funktioniert und meistens wieder von vorne angefangen...

    Mittlerweile hat sich das Projekt etwas festgefahren. Doch nun der Reihe nach:


    Aktueller Projektstand

    Der Roboter besteht aktuell aus drei Platinen:

    - Spannungsversorgungsplatine
    - Controllerplatine
    - Sensorplatine
    - Motorplatine

    Die Spannungsversorgungsplatine hat lediglich die Aufgabe, die Spannung des Akkupacks herunterzuregeln und auf die einzelnen Platinen zu verteilen.
    Die Controllerplatine arbeitet mit dem ATMEL AT89S8252 aus der 8051er-Familie und verfügt über vier 8x2-Pfostenstecker für die Ein-/Ausgabeports.
    Die Motorplatine bietet Anschluss für zwei Servomotoren. Wir haben uns für die Conrad 5€ Servos entschieden und haben diese modifiziert, so dass sie sich um 360° drehen können (genaue Beschreibung siehe Motoren). (Gibt es geeignetere Lösungen?)
    Die Sensorplatine soll über fünf Optokoppler(CY70) die schwarze Linie erkennen und Signale an den Mikrocontroller weitergeben. Die Schwellenwerte der Sensoren bzw. letztendlich die Farbe welche die Sensoren erkennen sollen, werden einzeln über fünf Potis geregelt. Das analoge Signal der Sensoren wandelt ein Schmitt-Trigger (40106) in digitale Zustände. (Genauere Informationen siehe Anhang: Schaltpläne)


    Probleme

    Motoren

    Wir verwenden die modifizierten Conrad 5€-Servos (Hersteller: Carson), bei denen der Hacken entfernt sowie die Kopplung von Zahnrad und Poti gelöst wurde. Das Poti dreht also nicht mehr mit und bleibt in seiner Mittelstellung stehen.
    Alle zwei Motoren sind uns bereits während der Testphase schon nach wenigen Minuten Betrieb kaputt gegangen. Möglicherweise weil die Dauer des Testimpulses zu lang war (?). Alle anderen Werte wurden nach Spezifikation eingehalten.
    Wir haben jetzt ein neues Programm geschrieben, hatten aber noch nicht die Möglichkeit es zu testen.


    Sensoren

    Die Sensoren unterscheiden keine Farben, bzw. melden nicht bei schwarzer Farbe. Ein reflektierender Gegenstand ist bereits ausreichend damit am Ausgang des Schmitt-Triggers ein Highpegel messbar ist (?).
    Der Mikrocontroller registriert diesen Highpegel allerdings noch nicht einmal als solchen. Vermutlich weil der Schwellenwert für den Highpegel nicht erreicht wird (?). Unser Fachlehrer hat uns empfohlen einen anderen Schmitt-Trigger zu verwenden (IC SN7414 N), also ein Umstieg von der CMOS-Serie auf die TTL-Serie (bringt das was?).


    Wir sind natürlich dankbar für jeden Vorschlag zur Problemlösung und für jede Anregung zu unserem Projekt.

    Über den weiteren Projektfortschritt halten wir euch weiter auf dem laufenden. Wir hoffen, dass wir mit eurer Unterstützung bis März diesen Jahres unser abgeschlossenes Projekt hier posten können.

    Gruß
    raimarc
    Angehängte Dateien Angehängte Dateien

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    09.06.2004
    Ort
    Aachen
    Beiträge
    2.674
    Alle zwei Motoren sind uns bereits während der Testphase schon nach wenigen Minuten Betrieb kaputt gegangen.
    Also meine Laufen noch einwandfrei, vielleicht war die Spannung zu hoch!?
    Allerdings gibt es auch keinen Grund nicht andere Motoren zu verwenden und diese über nen PWM und H-Brücken anzusteuern.

    Die Sensoren unterscheiden keine Farben,
    Nein, sie geben nur den analog-wert der zurückgeworfenen Strahlungsintensität zurück. Sie sehen also nur schwarz-weiß und graustufen, was bei einer andersfarbigen Linie aber kein Problem sein sollte.

    Ein reflektierender Gegenstand ist bereits ausreichend damit am Ausgang des Schmitt-Triggers ein Highpegel messbar ist (?).
    Also es sind natürlich mehrere Faktoren entscheidend:
    Wie stark hebt sich die Helligkeit der Linie vom Boden ab,
    Wie groß ist der Abstand zwischen Sensoren und Linie...

    Ich verwende auch Schmitttrigger daür (LM324), beide Eingänge zusammen, Fertig! Ich würde über einen Poti die Intensität der Sendeled regulieren. Habt ihr denn überhaupt einen Pull-up/-down am Ausgang der Empfangsdiode? Wenn eure Controller nen DAC haben, könntet ihr auch die benutzten, dann könnte man noch feiner Differenzierungen machen:
    Sensor ist noch halb über Linie...

    MFG Moritz

  3. #3
    Gast
    Danke erstmal für die Antwort.

    das Problem ist dass komischerweise kein unterschied zwischen einem schwarzen und einem weißen Blatt Papier erkannt wird.

    Ein Pullup ist in unserem MC schon an 3 Ports integriert, daran sollte es eigentlich nicht liegen.

    Gruß Alex

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    09.06.2004
    Ort
    Aachen
    Beiträge
    2.674
    Das verstehe ich echt nicht! hast du mal einfach einen Finger davor geahlten und geguckt, wann der Trigger schaltet? kannst du vielleicht mal einen Schaltplans schicken, vielleicht bringt uns das weiter.

    Wenn du zufällig einen besorgen kannst, dann verwenden doch einfach einen Operationsverstärker, z.B. den LM324, den ich auch verwende, damit funktionierts auf jeden Fall! Der hat auch direkt 4 OPAMPs inne, so dass du an einen 4 CNY70 hängen könntest.

    Ähm ein Frage häte ich da noch, du hast CY70 geschrieben, ich bin einfach davon ausgegangen, dass du den Reflexkoppler CNY70 meintest, da ich unter CY70 nix gefunden habe. Stimmt das?

    MFG Moritz

  5. #5
    Erfahrener Benutzer Roboter Genie Avatar von Michael
    Registriert seit
    17.01.2004
    Ort
    Karlstadt
    Alter
    47
    Beiträge
    1.246
    Hallo RCO,
    kannst du vielleicht mal einen Schaltplans schicken,
    Anhang angesehn?
    @ raimarc:
    Vermutlich weil der Schwellenwert für den Highpegel nicht erreicht wird
    Und der wird nicht erreicht, weil deine CNY70 falsch herum eingebaut sind.
    Emitter und Kathode gehören auf GND.
    Gruß, Michael

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    09.06.2004
    Ort
    Aachen
    Beiträge
    2.674
    Anhang angesehn?


    Emitter und Kathode gehören auf GND.
    Theoretisch kann man sie auch in Sperrichtung betreiben, das macht man bei vielen Fotodioden, ob das hier sinnvoll ist kann ich nciht sagen. Ich betreibe sie auch nicht in Sperrichtung. Vielleicht sperren sie ja zu schnell?

    MFG Moritz[/quote]

  7. #7
    Erfahrener Benutzer Roboter Genie Avatar von Michael
    Registriert seit
    17.01.2004
    Ort
    Karlstadt
    Alter
    47
    Beiträge
    1.246
    Hallo RCO,
    Hast du überhaupt verstanden, wie der CNY70 funktioniert? (mitdemKopfschüttel)
    Gruß, Michael

  8. #8
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    09.06.2004
    Ort
    Aachen
    Beiträge
    2.674
    Scheinbar nicht, aber vielleicht kannst du es mir (uns) ja erklären.
    (Ernst gemeint)

    MFG Moritz

    EDIT:
    Ok, ich nehm alles zurück!

    Aber die Aussage:

    Emitter und Kathode gehören auf GND.
    Finde ich ein wenig missverständlich.

    Macht Eagle das automatisch, dass es die Bauteile intern einfach verdreht?
    Das hat halt bei mir für verwirrung gesorgt:



    Hier liegen beide Kathoden und Anoden auf einer Seite!

    MFG Moritz

  9. #9
    Gast
    Hallo,

    eingebaut ist es richtig, das habe ich nochmal überprüft. Die Belegung vom CNY70 ist auf dem Board und auf dem Schaltplan verschieden - es ist also schon leicht verwirrend.

    Ich habe mal mit einem Oszi überprüft ob der Schmitttrigger überhaupt ein Signal ausgibt und habe festgestellt dass er hin und herschaltet je nachdem ob ich etwas vor dem sensor gehalten habe oder nicht. Zu Testzwecken habe ich meinen MC so programmiert dass er einfach Port0 (sensoren angeschlossen) nach Port 1(Leds angschlossen) weiterleitet. Komischerweise passierte da überhaupt nichts. Dann habe ich vermutet dass es vielleicht am Atmel liegt, habe mir ne Platine mit paar normalen schaltern gelötet und wieder getestet. Siehe da, es funktioniert.

    Jetzt weiß ich nicht mehr weiter...habe mir mal einen anderen schmitttrigger bestellt der die gleiche Belegung aber andere schwellspannungen hat. Wenns dann wieder nicht funktioniert werde ich wohl den LM324 nehmen.

    Gruß Alex

  10. #10
    Erfahrener Benutzer Roboter Genie Avatar von Michael
    Registriert seit
    17.01.2004
    Ort
    Karlstadt
    Alter
    47
    Beiträge
    1.246
    Hallo RCO,
    Hier liegen beide Kathoden und Anoden auf einer Seite!
    Hmm, da liegen aber im Schaltbild Kathode und Emitter, bzw. Anode und Kollektor nebeneinander. Keine zwei von jeder Sorte!?

    @Gast-Alex(raimarc?):
    eingebaut ist es richtig, das habe ich nochmal überprüft
    Kannst du trotzdem mal ein Foto (*.brd) davon posten?
    Zu Testzwecken habe ich meinen MC so programmiert dass er einfach Port0 (sensoren angeschlossen) nach Port 1(Leds angschlossen) weiterleitet
    leider hast du das falsche Programm in deiner zip-Datei gepostet. Kannst du hier auch mal das "fehlerhafte" posten?
    Gruß, Michael

+ Antworten
Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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