PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Low-Cost Experimentträger



Arkon
15.09.2011, 11:32
Hallo an alle,

anlässlich einer Frage die mich im Moment quält stelle ich in diesem Thread ein kleines Roboterprojekt für meine FH vor.

Hintergrund:

An unserer FH (Jade Hochschule Wilhelmshaven *schleichwerbung*) findet jährlich ein Konstruktions- und Roboterwettkampf statt. (www.design-challenge.de (http://www.design-challenge.de) *nochmehrschleichwerbung*) Bei diesem Wettkampf bekommen die teilnehmenden Teams eine Kiste mit Materialien (sinvolle Materialien wie Plexi, Stahlblech, Schrauben, Muttern, Motoren, Elektronik, uvm. sowie "sinnlose" Utensilien á la Bierflaschen, BHs, 5-Minuten-Nudeln, Quietscheentchen) aus denen sie innerhalb von ca. zwei Wochen einen ferngesteuerten Roboter konstruieren und bauen müssen. Mit diesem Bot wird dann am Wettkampftag eine bestimmte Aufgabe zu erfüllen sein (jährlich wechselnd, orientiert am Hauptsponsor).

Das Besondere, und der Hauptgrund für diesen Bot, ist, dass das Orga-Team, bestehend aus Studenten der FH, jedes Jahr meistens komplett erneuert wird. Ab und an sind Studenten aus dem ehemaligen Teilnehmerfeld oder Ex-Orgas (die ganz Harten) dabei. Im Prinzip beginnt aber jedes Jahr ein neues Team bei fast 0. So kommt es, dass immer mal wieder geplant wird, diverse Sensoren in den Bausatz geben, welche dann aber auf Grund einer fehlenden Testplattform ungetestet oder gar nicht in den Bausatz wandern.

Da die Roboter der vergangenen Jahre nur ungern für Testzwecke zerlegt werden sollen, soll ich jetzt einen einfachen Bot konstruieren, welcher leicht erweitert werden kann und dem neuen Team als Versuchsträger zur Verfügung gestellt werden kann.


Rahmenbedingungen:

Der Bot soll Low-Cost sein. Daraus ergibt sich, dass ich diverse Bauteile verwenden soll, welche bereits in der FH vorhanden sind (Akkus, Motoren, Controller):
Akku: 2s 1200mAh LiPos vom großen C
Motor: Anhand der vorhandenen Stückzahlen und deren Kennwerte hab ich mich hier für einen Getriebemotor entschieden. 6V/9Ncm/64upm
Controller: Ist ein Board mit bereits verbautem Motortreiber, Spannungswandler, LCD-Anschluss uvm. auf Basis eines ATMega32


Konzept:

Ich habe mich für ein Chassis im Asuro-Stil entschieden. Die Motoren treiben mit einem einstufigen Getriebe i=2,2 die 70mm Räder von Robotikhardware an.
Das Chassis wird an der FH aus 5mm PMMA gelasert und mit einem Feder-Nut-Schraube-System verschraubt (Bilder dazu folgen die Tage). Damit entfällt das lästige Gewindeschneiden in die Stirnseiten der Bauteile.


Kommen wir jetzt zur eigentlichen, ersten Frage:

Zum Projekt gehört ein erster einfacher Aufbau mit einem SHARP-IR-Sensor der ein Objekt anpeilen soll auf welches der Bot dann zu fahren soll. Daher wird ein Gradeauslauf nötig. Und hier kommt meine Unwissenheit zum Tragen:

Mein erster Gedanke war, wie auch beim Asuro, Decoderscheiben am Antriebsstrang anzubringen und diese mittels CNY70 auszuwerden. Allerdings ist mir dies nicht genau genug, dass die schwarz-weiß Flächen eine gewissen Größe benötigen um Sicher ausgewertet zu werden. Aufgrund der einstufigen Übersetzung wäre der Winkelfehler, bei einer Montage am Getriebe zu hoch. Eine Dekoderscheibe auf die Laufräder zu montieren sieht blöd aus.

Meine aktuelle Idee ist, eine Gabellichtschranke wie die TCST 2103 zu verwenden. Eine Scheibe mit den benötigten Schlitzen kann ich ebenfalls an der FH per Laser zuschneiden lassen. Was ich hierbei aber nicht genau abschätzen kann ist, wie schmal die Schlitze/Stege sein können um zuverlässig von der Lichtschranke ausgewertet zu werden. Sind das die im Datenblatt angegebenen 0,6mm? Bezieht sich das auf die Steg- oder Schlitzbreite oder auf beides?

Besten Dank für eure Antworten

oberallgeier
15.09.2011, 13:21
... wie schmal die Schlitze/Stege sein können ... die im Datenblatt angegebenen ...Was schreibt denn das Datenblatt? Ich lese dort:
... path of the shutter crossing the radiant sensitive zone ...... und path klingt für mich nach Hell- und/oder Dunkelzone im Betrieb. Aus Sicherheitsgründen würde ich 1mm/1mm nehmen - entsprechend der aperture, oder, wenns doch ne höhere Auflösung sein soll, irgendwas dazwischen. Denk bitte daran, dass das hier die engste Stelle in der "radiant sensitive zone" betrifft, der Schlitz in einer Scheibe ist ja fast immer radial geschnitten.

Arkon
15.09.2011, 14:31
Was schreibt denn das Datenblaund path klingt für mich nach Hell- und/oder Dunkelzone im Betrieb. Aus Sicherheitsgründen würde ich 1mm/1mm nehmen - entsprechend der aperture, oder, wenns doch ne höhere Auflösung sein soll, irgendwas dazwischen. Denk bitte daran, dass das hier die engste Stelle in der "radiant sensitive zone" betrifft, der Schlitz in einer Scheibe ist ja fast immer radial geschnitten.

So würde ich das auch interpretieren. Ich werde einfach mehrere Scheiben durch den Laser schieben und dann mal testen mit welcher sich am besten arbeiten lässt.

Die Dekoderscheibe kann max. 30mm im Durchmesser erreichen.Bei einer Steg-Schlitz-Breite von 1mm komme ich auf rund 90 Segmente (45 Schlitze/45 Stege). Grob überschlagen würde ich damit auf eine Abweichung von +-20mm auf 1m Fahrstrecke kommen. Das sollte für ein Low-Cost-Projekt akzeptabel sein.

oberallgeier
15.09.2011, 16:47
... Dekoderscheibe ... max. 30mm ... Steg-Schlitz-Breite von 1mm ... rund 90 Segmente ...So ungefähr - ja. Allerdings würde ich die Teilung auf ca. 0,8 mm in Fenstermitte machen, diesen Teilkreis auf R 13,3 mm legen, Fensterhöhe (Kreisringsegmente !!) 2,6 mm. Den äusseren Ring von 0,4 mm Breite stehen lassen! Das gibt eine wesentlich geringere Verletzungsgefahr für Mensch und Encoderscheibe als die nach aussen offenen Schlitze. Denk daran: die Anwender sind nicht durch die Bank feinmotorische Genies und vermutlich nicht alle perfekt in mechanischen Arbeiten. Die 2,6 mm Fensterhöhe ergibt 0,2 mm Toleranz in der Lagerung von Gabellichtschranke zu Encoderscheibe. Damit bekommst Du 42 Fenster-Schlitz-Paare. Der Cutter darf ruhig sein Programm so gestalten, dass der Anschnitt innerhalb des Fensters erfolgt, allenfalls (gegen Protest *gg*) am kleineren Radius des Fensters.

Aber es ist DEIN Projekt.

Arkon
15.09.2011, 16:50
Genau so hab ich es geplant ;)

Besserwessi
15.09.2011, 18:32
Die Encoderscheiben kann man auch ganz gut mit einem Laserdrucker ausdrucken, ggf. auch auf Folie. Das ist wesentlich günstiger als per Laser schneiden. Da macht es auch nichts wenn man 2-3 Versuche braucht. So viel größer als 1 mm müssen die Flächen beim CNY70 auch nicht sein. Die Frage wäre gff. ob man mit einer Lichtschranke je Rad auskommt, oder mit 2 Lichtsschranken auch die Richtung mit detektiert und so verhindert dass sich ggf. Fehler aufsummieren. Mit einfachen Getriebemotoren wird es schon schwer, dass die Motoren so genau dem Sensorsignal folgen.

Decoderscheiben kann man ggf. auch aus einer alten mechanischen Maus Recyceln.

Arkon
15.09.2011, 19:31
Da der Laser in der FH steht kosten uns die Dekoderscheiben nur das Material. Ich lasse einfach ein paar verschiedene Versionen fertigen und teste die dann in Ruhe durch.

Die Scheiben aus eine Maus sind zu klein und damit zu ungenau für einen guten Gradeauslauf.

oberallgeier
15.09.2011, 19:39
... Die Scheiben aus eine Maus sind zu klein und damit zu ungenau für einen guten Gradeauslauf ...??? Kommt sicher auf die Maus drauf an. Meine sehen aus wie im Bild - Øa = 15 mm!!

......
20028



Sorry für die blöde Bildgröße, bekomm grad kein kleineres hochgeladen.

Arkon
15.09.2011, 20:19
Ui. Ich hatte die etwas "gröber" in Erinnerung. Zu den Schreiben passen dann halt nicht die Lichtschranke die ich mir rausgesucht hatte. Man könnte beim Mäuseschlachte aber auch auf die dort verbauten zurückgreifen. Muss ich mal sehen, ob ich von Denennoch ein paar rum liegen habe. Einen Blick sind sie auf jeden Fall wert.

oberallgeier
15.09.2011, 21:13
... Zu den Schreiben passen ... nicht die Lichtschranke ... beim Mäuseschlachte ... die dort verbauten ...Das wäre ja auch ein Ansatz für die Projektaufgabe - Recycling. Wer nutzt denn heute noch Kugelmäuse? Die Lichtschranken der Mäuse sind nur bedingt brauchbar - das sind (waren) bei mir zweiteilige Lichtschranken - sprich: LED und Phototransistor getrennt. Aber ansonsten - wie ne übliche Lichtschranke ohne Extras. Andererseits neige ich dazu, Recyling-Teile nur zu nehmen, wenn sie richtig passen. Saubere Anpassarbeit ist ziemlich aufwendig. Ich kenns von meinem gelungenen, aber wegen des mächtigen Aufwandes nicht weiterverfolgten Einbau der Ø5mm-Encoderscheibe - s=0,5mm - in dieses (klick) Motörchen (https://www.roboternetz.de/community/threads/36121-Autonom-in-kleinen-Dosen-R2_D03-Nachfolger-R3D01?p=370230&viewfull=1#post370230). Das hatte mit einer mikroskopischen Anfräsung der Motörchen funktioniert, siehe hier (https://www.roboternetz.de/community/threads/36121-Autonom-in-kleinen-Dosen-R2_D03-Nachfolger-R3D01?p=381383&viewfull=1#post381383) , und nach Umbau der Loch-Encoderscheibe auf eine aussengeschlitzte (klick) (https://www.roboternetz.de/community/threads/36121-Autonom-in-kleinen-Dosen-R2_D03-Nachfolger-R3D01?p=381766&viewfull=1#post381766) gabs auch die richtige Signalform. ABER die Anpassungsarbeiten waren dramatisch hoch und ich wählte eine andere Lösung.

......http://oberallgeier.ob.funpic.de/mmini_mot_1661.jpg

Das Maßbändchen ist metrisch! Die Abtriebswelle ist D3mm, die Motorwelle ist 1 mm - der Encoder kommt auf die Welle der nächsten Stufe, siehe zweiten Link oben.

PICture
15.09.2011, 23:55
Als einfachste (mechanisch) und ausprobierte Lösung, könnte das vielleicht interessant sein: https://www.roboternetz.de/community/threads/51885-Drehzahlmessung-mit-B%C3%BCrstenimpulsen-an-kleinem-DC-Motor . ;)

Arkon
16.09.2011, 09:15
@oberallgeier: Süß XD. Wie du schon geschrieben hast sind solche Anpassungsarbeiten meist aufwändiger als man zuerst denkt

@PICture: Danke für den Link. Die Motoren werden über PWM angesteuert. Dafür habe ich in dem Thread leider keine "fertige" Lösung gefunden. Und um die von jeffrey vorgeschlagene Lösung umzusetzen fehlt mir das nötige Fachwissen.

Ich werde daher erst einmal auf selbst gefertigte Dekoderscheiben+Gabellichtschranke setzten und mir einfach mehrere Versionen durch den Laser schieben lassen. Die Arbeiten sind dank modernem CAD-System sehr schnell erledigt.

Arkon
21.10.2011, 09:54
*staubwisch*

Ein paar Wochen war es ruhig hier aber das Projekt läuft weiter. Mittlerweile habe ich eine V0.1 der Hardware:
2032720328

Auf dem ersten Bild sieht man ein an der Front angebrachtes Servo. Die seltsam aussehende Halterung habe ich gewählt, da, wie schon erwähnt, der Roboter bei der Bestückung mit Sensoren möglichst modular sein soll. Darunter hängt, momentan noch in der Luft, ein Sharp-IR-Sensor (hab die genaue Bezeichnung grad nicht zur Hand). Im hinteren Teil sind zwei identische Platinen aufgeschraubt. Diese Platinen sind bereits an der FH vorhanden und im Eingangsposting kurz beschrieben (wenn ihr genauere Infos haben wollt einfach fragen)

Auf dem zweiten Bild sieht man die Unterseite. An der Front der angesprochene Tischtennisball und im hinteren Teil die Antriebe. Jeweil ein Bühler Getriebemotor mit 9Ncm und 64upm treiben über eine Untersetzung die Antriebsräder an. Diese sind die 70mm-Räder von Robotikhardware.de und wurden mit einem selbst gefertigten Adapter auf der 6mm Welle befestigt. Auf dieser Welle sitzt ebenfalls eine Dekoderscheibe (welche genau muss noch ermittelt werden. Habe 4 oder 5 verschiedene Rastermaße fertigen lassen) welche mit einer kleinen Schraube am Zahnrad befestigt wird. Somit ist eine direkte Verbindung zwischen Antriebsrad und Odometrie hergestellt wodurch ich keine Einflüsse wie Getriebespiel ect. beachten muss.

Was noch nicht zu sehen ist, ist die "Bedieneinheit". Über den µC-Platinen wird eine Platte befestigt, in welcher ein paar Taster und ein LCD mit 16x2 oder 20x4 Zeilen angebracht wird. Über das Menü soll sich später eine bestimmte Anwendung auswählen lassen welche dann vom Roboter ausgeführt wird. Die beiden µC sollen miteinander kommunizieren. Und hierzu betreibe ich im Moment Grundlagenforschung:

Ich habe bisher ein wenig Erfahrung mit I2C und UART gesammelt. Ich dachte daran, einen µC die Kommunikation mit der Hardware und die "Regelungen" übernehmen zu lassen. Der zweite Controller dient zur Ansteuerung des LCDs, auswerten der Tasten und übermitteln der "Befehle" (im Sinne von: Führe Aufgabe xyz aus) an den ersten µC. Mir ist dabei bewusst, dass für diese Aufgaben auch ein einzelner µC ausreichen würde aber so ist nunmal die Aufgabenstellung -_-
Welches der Protokolle ist sinnvoller für den Einsatz zwischen den beiden µC?

mausi_mick
21.10.2011, 11:32
Hallo Arkon,

hab den Thread erst heute gesehen.

Interessantes Projekt!

Hab vor einiger Zeit auch mal mit Encodern gearbeitet und bin dann - gerade bei Einsatz im Freien - von den Refelexsensoren weggegangen und hab Gabellichtschranken verwandt.
Um den Aufwand/Kosten mit den Encoderscheiben zu minimieren, hab ich einfach ein Modul 1 Kunststoff-Zahnrad (z.B. mit 40 Zähnen) verwandt und die Zahnlücken abgetastet. Hab dann gleich für einen Quadroencoder jeweils 2 Gabellichtschranken verwandt, Justage in Zahnmitte (und für Quadro 90° Versatz) über 2-Kanal Oskar. Als Gabellichtschranke hab ich eine TC ... von Pollin verwandt, die zum einen preisgünstig ist (25 Cent), zum anderen einen Schmitttrigger beinhaltet, der ein sauberes TTL Rechtecksignal liefert, sodass man auf die AD-Umsetzung (ASURO) verzichten kann.

Siehe:
https://www.roboternetz.de/community/threads/51177-Quadraturencoder-mit-Gabellichtschranken-und-Zahnrad?highlight=quadraturencoder


Gruss mausi_mick

021aet04
21.10.2011, 11:37
Hast du beim Getriebe mit Encoderscheibe eine Abdeckung? Ich hätte bedenken wegen Staub/Schmutz. Ich würde eine Abdeckung machen.

Welchen Bus du nimmst bleibt eigentlich dir überlassen.Ich würde eine UART Schnittstelle nehmen. Damit hättest du den Vorteil das du über PC debuggen könntest. Ansonsten könnte, wenn etwas nicht funktioniert, vom µC1 oder vom µC2 kommen. Die beiden µCs würde ich über Steckverbinder verbinden (damit man mit dem PC debuggen kann).

PS: Protokoll und Busssystem ist nicht das Gleiche. Hier am Beispiel vom CAN Bus http://de.wikipedia.org/wiki/Controller_Area_Network
Protokoll ist nur das Verfahren wie die Daten auffgeteilt wird u.Ä.

MfG Hannes

Arkon
21.10.2011, 12:55
@mausi_mick: Ich nutze ja auch eine Gabellichtschranke TCST 2103 für die Odometrie. Eine Drehrichtungsbestimmung ist bisher nicht vorgesehen, da diese ja durch die Drehrichtung der Motoren bekannt ist. Höchstens um den Bot punktgenau um eines der Räder zu drehen könnte die Erkennung nötig werden, um ein "Wegdrehen" des eigentlich stillstehenden Rades zu kompensieren. Aber dazu gibt es bisher noch keine Anwendung ;)

Die Lösung mit dem Zahnrad ist natürlich ein sehr elegantes Workaround. Ich habe glücklicherweise freien Zugriff auf die beiden Laser der FH, so dass mich die Dekoderscheiben 30 Minuten Arbeit gekostet haben. In dieser Zeit hätte man es wahrscheinlich nicht geschafft, ein geeignetes Zahnrad zu finden und die Preise verschiedener Shops zu vergleichen. Und die Genauigkeit dürfte auch besser sein.

@021aet04 (hat der Name eigentlich einen tieferen Sinn oder ist er das Ergebnis Kopf->Tastatur :D )

Eine Abdeckung ist bisher noch nicht vorhanden. Der (https://www.roboternetz.de/community/members/7714-021aet04) Bot ist für den Betrieb in geschlossenen Räumen, auf ebenen Untergründen gedacht. Staub, Schmutz und Co. sollten sich daher in Grenzen halten. Gelegentliches Säubern vorausgesetzt ;)

UART ist auch mein Favorit bei den beiden gewesen, eben zum debuggen. Dann werde ich meine weiteren Recherchen wohl in diese Richtung eingrenzen. Kann ich die UART-Verbindung im laufenden Betrieb "anzapfen"? Ich stelle mir das so vor, dass den jeweiligen RX-TX-Verbindungen zwischen den µCs eine Buchse ist, in die ich meinem USB-UART-Adapter einstecke. So könnte ich die Daten auf jeweils einer Leitung (mit einem zweiten Adapter vll sogar beide Leitungen?) unter "Realbedingungen" abhören.

oberallgeier
21.10.2011, 13:12
Hi Arcon,

sieht ganz gut aus. Bei einem (von mir geschätzten Gesamtgewicht 1 kg, in der Rechnung 0,5 kg weil es ja zwei Motoren sind) und der geschätzten Untersetzung 2:1 sind die Motoren recht gut gewählt (klick). (https://www.roboternetz.de/phpBB2/motordrehmoment.php?raddurchmesser=7&gewicht=0.5&umin=64&untersetzung=2&Button=Berechnen&wegprorad=15.7&sekgeschwindigkeit=13.08&mingeschwindigkeit=7.85&stdgeschwindigkeit=0.47&TvorgetriebeNcm=1.5&TvorgetriebeNm=0.015&TnachgetriebeNcm=150&TnachgetriebeNm=1.5)

021aet04
22.10.2011, 12:05
Der Name hat einen Sinn. Das war meine Bezeichnung in der HTL/Fachschule.
02 => Jahr in dem ich in die HTL kam
1aet => Klassenbezeichnung => "1a" ist die Klasse und "et" bedeutet HTL für Elektrotechnik (Fachschule wäre dann "ef")
04 => Klassenbuchnummer

Mittlerweile hat sich die Bezeichnung der Klassen aber geändert.

UART gleichzeitig mit PC und Bedienteil verbinden funktioniert soweit ich weiß nicht, da UART eine Punkt zu Punkt Verbindung ist. Was ich mir vorstellen kann wäre beim Pc und beim BT (Bedienteil) einen Punkt einzufügen das man Debuggen und steuern umschalten kann.
Als Beispiel: Umschalten von BT auf PC (bedienen auf debuggen)
=> man wählt am BT den Punkt zum Umschalten in den Debugmodus
=> man trennt die Verbindung zum BT und verbindet mit dem PC
=> vom PC schickt man einen Befehl damit die Daten zum Debuggen gesendet werden können (PC für Empfang bereit)
Beim Umschalten von Debugmodus auf Bedienmodus genau umgekehrt.

MfG Hannes

Richard
22.10.2011, 16:02
UART gleichzeitig mit PC und Bedienteil verbinden funktioniert soweit ich weiß nicht, da UART eine Punkt zu Punkt

Doch, das geht, aber bitte nur zum Lesen / Lauschen. Dazwischen Funken (Senden) könnte Probleme bis hin zu Daten Kurzschlüssen führen. Aber zum "Mitschneiden" was da so "Verhandelt" wird ist das ideal. :-) Es gibt auch gute Sniffer Programme für RS232 oder USB bekannter allerdings für Netzwerke.

Gruß Richard

Arkon
24.10.2011, 09:01
Abhören würde mir ja völlig reichen, um die Kommunikation zu überwachen.

Eigentlich wollte ich am Wochenende die gelaserten Teile zusammen schrauben um ein "rolling Chassis" zu erhalten. Aber erstens kommt es anders und zweitens als man denkt. Da ich am kommenden Wochenende zu meinen Eltern fahre (unter anderem um meine Winterreifen abzuholen) nutze ich die Gelegenheit und greife auf die Werkstatt meines Elternhauses zurück. Da hab ich mehr/besseres Werkzeug als in meiner Studentenbude ;)

Gibt es Literatur, die mir ein paar Strategien für eine sinnvolle Kommunikation zwischen zwei µC zeigt? Welche Teile des Programms am besten auf welchem µC abgelegt werden, wie man die einzelnen Funktionen auf dem "ausführenden" µC startet/beendet/überwacht ect. ?

Arkon
01.11.2011, 14:49
Bei mir geht es im Moment leider nur langsam voran.

Wie im Fehlschlag-Thread schon erwähnt habe ich, auf Grund unglücklicher Umstände, falsche Zahnräder bestellen lassen. Ein erster Zusammenbau ist daher gescheitert. Auch war die Aussage "M3-Schraubem mit 12mm Gewinde" nicht deutlich genug. Ich habe jetzt Schrauben mit 12mm "über Alles" bekommen, welche natürlich nur mit einem halben Gewindegang die Muttern in ihren Nuten erreichen.

In der heutigen Mittagspause habe ich eine Halterung für das LCD und die Taster zur Bedienung konstruiert. Diese befinden sich im hinteren Teil über den Platinen. Die schwarzen Taster sind zur Navigation im "Menü" und zur Parametereinstellung gedacht. Grün dient der Bestätigung/Menüebene tiefer/Start und Rot ist für Abbruch/Menüebene höher/Stopp gedacht:
20415

Zudem habe ich einen Teststand entworfen, auf dem ich die Dekoderscheiben testen will, um zu ermitteln welche Kombination am besten passt. Dazu habe ich mit spezielle Dekoderscheiben lasern lassen, welche eine zusätzliche Nase haben, welche mit einer zweiten Gabellichtschranke erfasst wird. Meine Idee ist es, den Motor mit verschiedenen Drehzahlen laufen zu lassen und dabei die Schritte/Umdrehung zu ermitteln. Die Nase dient dabei als Referenz um eine Messreihe aufnehmen zu können. Anhand dieser kann ich dann auswerten mit welchen Drehzahlen welche Dekoderscheibe zuverlässig arbeitet und kann zudem noch äußere Einflüsse wie Streulicht testen:
20416

oberallgeier
01.11.2011, 16:34
... Teststand entworfen, auf dem ich die Dekoderscheiben testen will ...Vermutlich ist das nur eine grobe Konstruktionsstudie!? Denn üblicherweise stehen die Gabellichtschranken mit ihrer Achse parallel zum Radius der Dekoderscheibe - dann stimmen die Lichtschrankenfenster optimal zum Fenster der Dekoderscheibe.

Arkon
01.11.2011, 17:45
Dem kann ich grade nicht folgen:

wenn ich die Gabellichtschranke um 90° drehe kann doch die Dekoderscheibe nicht mehr dazwischen.

Richard
01.11.2011, 18:02
Dem kann ich grade nicht folgen:

wenn ich die Gabellichtschranke um 90° drehe kann doch die Dekoderscheibe nicht mehr dazwischen.

Wenn Du die im Bild rechte Lichtschranke entgegen den Urzeiger Sinn um 90 Grad drehst passt die Scheibe sehr wohl dazwischen. :-) Die Lichtschranke (sollte) Mittig im 90 Grad Winkel in Richtung Scheiben Zentrum sitzen damit die Schlitze sauber quer zueinander ausgewertet werden. Die zweite Lichtschranke natürlich ebenso und möglichst nahezu 90 Grad zur ersten versetzt. Dabei ist eine Möglichkeit zur Feijustage sehr brauchbar. wenn die erste Lichtschranke in der Mitte eines Schlitzes steht muss die zweite genau auf einen Rand vom Schlitz zeigen. Siehe RN Wissen Quadrur Enkoder. :-) Wenn Du noch eine alte Kugelmouse findest kannst Du dir das anschauen.

Gruß Richard

Arkon
02.11.2011, 11:01
Der Quadrur Enkoder ist nur nötig wenn ich die Drehrichtung bestimmen will. Diese ist jedoch bekannt und muss nicht ermittelt werden. Die Zweite Gabellichtschranke (GLS) dient hier nur zur Erfassung der äußeren Nase um einen vollständigen Umlauf zu detektieren. Ich zähle mit der "primären" GLS die einzelnen Schlitze. Sobald die Nase die "sekundäre" GLS unterbricht sollen die gezählten Schlitze "gespeichert" werden und später zur Auswertung herangezogen werden. Hier eine etwas detailliertere Ansicht:
20432

Mit den 90° meinst du eine Ausrichtung wie auf diesem Bild?:
20433

Ist der "IR-Strahl" der GLS eher ein | als ein ° ?

021aet04
02.11.2011, 11:08
Man sollte die GLS so ausrichten wie im 2ten Bild. Der Strahl ist ein Punkt, wie bei einer normalen Led. Der Strahl ist nur durch das Gehäuse seitlich begrenzt. Ich kenne aus eigener Erfahrung das man die GLS relativ genau einstellen muss. Deswegen sollte auch die GLS richtig montiert werden.

MfG Hannes

mausi_mick
02.11.2011, 11:30
Hallo,

die GLS hat wohl eine Blende von 1mm (Aperture), vermutlich rund. Aber das Gehäuse ist wohl längs geschlitzt und schirmt in dieser Richtung das Licht weniger. Daher ist die 2. Anordnung wohl günstiger.
Ich hab anfangs auch mit nur einer GLS gezählt, hatte dann doch aber immer geringe Abweichungen (1 Count) - gerade bei schnellen Bewegungen - , die sich aber mit der Zeit kumulierten . Daher hab ich eine 2. GLS (Quadrodecoder) hinzugenommen, mit denen ich exakt die Impulse zählen kann .

Gruss mausi_mick

oberallgeier
02.11.2011, 11:57
... Ist der "IR-Strahl" der GLS eher ein | als ein ° ?Sorry, aber irgendwann werden alle wissen, dass das Arbeiten mit Mikrocontrollern/Mikroelektronik ohne Datenblatt zu den letzten großen Abenteuern unserer Erde gehört.

Die Austrittsöffnung der Lichtschranken ist fast immer rechteckig:

......20436

das zeigt auch das Datenblatt. Bei dieser Lichtschranke dürfte das Fenster etwa 0,5 mm breit und 2 .. 3 mm hoch sein. Wenn die Achse der Lichtschranke so wie in deinem Bild oben NICHT zum Mittelpunkt der Encoderscheibe zeigt (ich nehme mal an, die Encoderscheiben bekommen radiale Schlitze *ggg*) dann gibts erstens schlechte Durchlässigkeit weil ein grösserer Teil des Lichts abgeblendet wird, ein verschliffenes Signal und die Möglichkeit, dass durch die Nachbarschlitze ebenfalls ein Signal ausgelöst wird. Der Pfeil im Bild (ein Auszug aus dem entsprechenden Datenblatt) muss in Richtung der Mitte der Encoderscheibe zeigen und die vom Pfeil repräsentierte Bauteilachse muss mit dem Radius der Scheibe fluchten.

......20437

Ich hoffe, dass ich jetzt verständlich war.

021aet04
02.11.2011, 12:08
Es gibt aber auch andere GLS die eher einen Punkt ausgeben. Habe schon in der Firma einige GLS zerlegt und die Fototransistoren bzw Leds getauscht (da kein passende GLS vorhanden war). Die Leds hatten immer eine runde Linse. Den Austrittswinkel der Leds kenne ich jedoch nicht.

MfG Hannes

Arkon
02.11.2011, 12:54
Sorry, aber irgendwann werden alle wissen, dass das Arbeiten mit Mikrocontrollern/Mikroelektronik ohne Datenblatt zu den letzten großen Abenteuern unserer Erde gehört.
Meine eltern wollten mich auch eigentlich Indiana Jones nennen ;)



Ich hoffe, dass ich jetzt verständlich war.

Und wie. Ich danke vielmals für die Erklärung!

oberallgeier
02.11.2011, 13:41
Es gibt aber auch andere GLS die eher einen Punkt ausgeben ...Au ja, Hannes, das glaube ich Dir, das hatte ich zu absolutistisch ausgedrückt. Ich glaub es Dir, zumal es ja fast nix gibt das es nicht gibt. ABER von der Aufgabenstellung/Aufgabenlösung her ist so ein Teilchen zum Positionieren mit nem Schlitz einfach besser bedient: die geringe Schlitzbreite bedeutet hohe Auflösung und die große Schlitzlänge bedeutet ausreichend Lichtdurchtritt, damit der Fototransistor genug schnell wird.


Meine eltern wollten mich auch eigentlich Indiana Jones nennen ...Is gut, Indi, ich werd´s mir merken.

Richard
02.11.2011, 14:59
Sorry, aber irgendwann werden alle wissen, dass das Arbeiten mit Mikrocontrollern/Mikroelektronik ohne Datenblatt zu den letzten großen Abenteuern unserer Erde gehört.



Da spricht der Optimist. :-)

Gruß Richard

Arkon
16.11.2011, 09:15
Ich stehe im Moment vor einem optischen Problem. Die Aufnahme für den Tischtennisball gefällt mir optisch nicht und ist funktional auch nicht das Gelbe vom Ei:

20561

Zum Einen gefällt mir dieser Turm nicht, der nötig ist um die Grundplatte waargerecht zu halten. Zum Anderen belegt die aktuelle Aufnahme zwei der "Erweiterungsplätze"

Hat jemand eine Idee für mich, wie den vorderen Auflagepunkt besser gestalten kann?

Arkon
18.11.2011, 14:29
Eigentlich nicht meine Art aber mir fehlt noch immer ein zündender Gedanke. Daher: *push*

Searcher
18.11.2011, 15:11
Eine zweite Aufnahmeplatte in Höhe der Schnittfläche des Tischtennis Balles könnte noch mehr Platz schaffen. Tischtennisball dann daran und den Turm vermeiden.

Anstelle des Tischtennisballes eine Möbelrolle? Es gibt auch solche, hier schon gepostete Rollen mit eingefasster Kugel, Ähnlich Trackball. Finde es leider nicht auf die Schnelle.

Gruß
Searcher

mausi_mick
18.11.2011, 15:17
Hallo Arkon,

hast ja eigentlich viel Platz, würde vielleicht noch eine Federung einbauen oder ein passiv schwenkabares Rad (ähnlich Möbelrollen - ) verwenden, dessen Einschlagswinkel man aber auf < +- 90 Grad z.B. durch seitliche Federn einschränken sollte.
Aber das hängt alles auch vom Gewicht des Fahrzeugs und dem Untergrund ab. Meine Versuche mit Stahl-Rollkugeln (z.B. Hettrich) waren bei einem Fahrzeugmasse von ca 1 Kg vom Fahrgeräusch auf Parkett/Fliesen nervig. Hart-Gummi-Kugeln (aus Mäusen) neigten zu Verschmutzung (Staub/Haare).

Gruss mausi_mick

Arkon
18.11.2011, 20:02
@Searcher: Eine Aufnahmeplatte würde den Zugang zu den "Erweiterungsschlitzen" verdecken. Man müsste sie also zum erweitern abnehmen. Ist im Prinzip nicht soo schlimm, da man es auf wenige Schrauben optimieren könnte, aber schön ist es auch nicht

@mausi_mick: Auch diese Kugelgleiter müsste ich anschrauben. Schwenkbare Möbelrollen ebenfalls. Ausserdem haben diese die Eigenschafft, die Fahrtrichtung zu verfälschen wenn sie beim Anfahren schräg zur Fahrtrichtung stehen.

Searcher
19.11.2011, 09:15
Das ganze Fahrgestell tiefer legen - den hinteren Teil umbauen, so daß die vorhandene Aufnahmeplatte tiefer liegt.

Umstellen auf vier Räder.

Mit Verkleidung die unschönen Stellen verdecken.

EDIT: Mit Farben ein anderes optisches Design erzeugen - Turm in Tarnfarbe :-)

EDIT Noch 'ne Idee: Turm nicht als Turm sondern als senkrechte Aufnahmeplatte ausführen. Stützrad dann daran. Ob es schöner wird??? aber anders!

Hier noch der umgedrehte Trackball (Caster): http://www.komputer.de/zen/index.php?main_page=product_info&products_id=57&zenid=7d932faeeaad783c8857ffa4c6e9fd70

Gruß
Searcher

Manf
19.11.2011, 10:19
Eine solche Andruckrolle ist sehr leichtgängig und einigermaßen robust:
https://www.roboternetz.de/community/threads/5358-Alternative-zum-Tischtennisbal-des-ASURO?highlight=asuro+tischtennisball (https://www.roboternetz.de/community/threads/5358-Alternative-zum-Tischtennisbal-des-ASURO?highlight=asuro+tischtennisball)

Zum Sharp Sensor vorne wollte ich noch bemerken, dass er besser senkrecht eingebaut wird, zum horizontalen Schwenken.

Arkon
24.11.2011, 15:05
Danke für die Vorschläge und Anregungen:

Bei dem vorderen Auflagepunkt bleibe ich erst einmal beim Tischtennisball. Der Turm hat im Prinzip nur seine Form verändert. aber so gefällt es mir irgendwie deutlich besser:
20631

Zudem habe ich die Grundplatte weiteren Schlitzen ausgestattet welche um 90° gedreht zu den vorherigen liegen. Somit kann man auch Aufbauten um 90° drehen.

@Searcher: Zählt transparent als Tarnfarbe?

@Manf: Die falsche Orientierung des Sharps ist mir beim Lesen des Datenblattes (ja damit habe ich mittlerweile auch angefangen ;) ) auch aufgefallen. Wird bei der nächsten Revision überarbeitet.

Spätestens am Wochenende will ich die CAD-Daten aufbereitet haben, damit ich die Teile in die Fertigung schicken kann. Ich habe endlich ein paar Platinen zugschickt bekommen die ich noch auf Funktion testen muss. Das wird bis zum Wochenende erledigt, damit ich die ersten Routinen programmieren kann.

Searcher
24.11.2011, 17:38
... @Searcher: Zählt transparent als Tarnfarbe? ...
:-) Klar! Kommt dann aber auf die Farbe des Farbträgers an :-)

Bin gespannt wie es weitergeht. Viel Erfolg!

Arkon
01.12.2011, 14:16
Es gibt wieder ein paar neue Bilder:

Übersicht:
20699
Hier ein Übersichtsbild. Wie vor ein paar Tagen schon geschrieben hat die Grundplatte ein paar extra "Schlitze" bekommen. jetzt können Aufbauten auch um 90° gedreht aufgesetzt werden. Zudem sieht man eine überarbeitete Aufnahme des Servos an der Front an welchem der Sharp befestigt wird (welcher jetzt auch für die Schwenkbewegung korrekt ausgerichtet ist). Der Schwenkwinkel beträgt 120°.
Aus Platz- und Optikgründen sitzt das LC-Display mit den Bedienknöpfen jetzt etwas schräg.
Die grauen Blöcke auf den grünen Platinen stehen für den Bauraum, welcher durch Spannungswandler und Motortreiber begrenzt ist dar und dienen der Orientierung. Ich habe noch keine, für mich nachvollziehbare, Möglichkeit gefunden aus einem Eagle-Projekt ein CAD-Modell zu erstellen. Daher wird hier behelfsmäßig nur mit einem vereinfachten Modell gearbeitet.

Front:
20700
Hier die erneuerte Servoaufnahme und der Stützball, welcher ebenfalls eine neue Halterung erhalten hat.


Getriebe:
20701
Und hier in Nahaufnahme das Getriebe mit der Gabellichtschranke für die Odometrie. Auch diese wurde jetzt korrekt ausgerichtet.

Heute Abend werde ich dann den Teststand überarbeiten, an welchem ich die verschiedenen Dekoderscheiben auf ihre "Brauchbarkeit" in Verbindung mit der GLS testen möchte. Dann kann ich endlich die Teile bei meiner FH bestellen und den ersten Prototypen aufzubauen.

oberallgeier
01.12.2011, 18:40
Ok, jetzt sieht das mit der GLS viel besser aus. Aber es ist auch nur noch eine ! ? ! ?

Arkon
01.12.2011, 19:34
Am Bot selbst habe ich auch nur eine vorgesehen. Die Drehrichtung brauch ich ja nicht ermitteln, weshalb ich mir die Quadratur ersparen kann.

Zwei GLS habe ich am Teststand vorgesehen, um einen kompletten Umlauf der Dekoderscheibe ermitteln zu können. Die zweite GLS wird hier über eine extra Nase an der Scheibe betätigt.

Arkon
21.12.2011, 20:14
So.


Meine FH hat noch vor Weihnachten ein wenig gearbeitet und mir ein Paket gepackt:
20896
Hier mal ein Haufen Plexiglas. Die Teile habe ich, wie schon öfter erwähnt, mit einem CO2-Laser schneiden lassen. Die Schnitte sind super präzise und die Schnittkanten klar. Der Laser hat eine Schnittbreite von 0,2mm und fährt auf den vom CAD-System erzeugen Linien entlang. Somit ergibt sich ohne Kompensation ein Untermaß, durch welches die Feder-Nut-Verbindung fast spielfrei ineinander. Bei ersten Versuchen mit einer Kompensation passen die Teile nur mit Nachdruck zusammen. Und die so entstehenden Spannungen lassen das Plexi schnell springen. Lediglich bei Teilen, die passgenau sein müssen habe ich ein Aufmaß eingebracht. Dies war aber nur bei den Lagersitzen der Fall.

20897
Hier habe ich mal den Teststand zusammen geschraubt. Es fehlen noch die Gabellichtschranken(werden morgen geholt) und die Dekoderscheibe (Bohrung passt noch nicht auf die Welle, wird morgen schnell nachgearbeitet)
Die Verbindung mit dem Feder-Nut-System funktioniert super. Um den Roboter zusammen zu setzen muss ich noch ein paar Distanzbuchsen basteln. Über die Feiertage werden erstmal die Dekoderscheiben getestet.

HannoHupmann
24.12.2011, 10:29
Warum nimmst du statt Plexiglas nicht Macrolon? Das müsste sich genauso mit CO2 Laser schneiden lassen, hat aber den gigantischen Vorteil, dass es nicht splittert. Das Zeug wird zum Beispiel in Eishockeystadien verwendet um die transparenten Banden zu bauen zwischen Spielern und Publikum.

Noch eine Frage, was hat das Schneiden gekostet? Hätte da auch ein paar Anwendungen die ich gerne Laserschneidenlassen würde.

Arkon
26.12.2011, 23:56
Plexiglas habe ich benutzt weil es einfach vorhanden war.
Ich hab die Teile von meiner FH schneiden lassen. Da es ein Projekt für die FH ist musste ich dafür auch nichts bezahlen.

Ich habe über die Feiertage versucht, die beiden Platinen zum Laufen zu bekommen. Leider bin ich zu dem Schluss gekommen, dass beide im Eimer sind. Es lässt sich über das AVR Studio keine Verbindung herstellen. Egal ob die Stromversorgung über den ISP kommt oder von einem Akku. Zudem scheint bei einer Platine einer der Spannungsregler defekt zu sein, da nichtmal die HIntergrundbeleuchtung am LCD anspringt. Jetzt muss ich mir etwas einfallen lassen, wie ich weiter mache.

dussel07
27.12.2011, 01:51
Wenn Du einen Schaltplan posten würdest könnte man mal drüberschauen??

Arkon
27.12.2011, 11:33
2094820949
Hier Schaltplan und Layout der verwendeten Platinen.

021aet04
27.12.2011, 11:58
Hast du ein Bild mit einer besseren Auflösung bzw besserer Qualität? Wenn ich es vergrößere damit man etwas sieht ist das ganze Bild verschwommen. Man kann nichts lesen. Hast du schon die Spannungen gemessen?

MfG Hannes

Arkon
27.12.2011, 14:00
Einmal in größerer Auflösung.

Wirklich durchgemessen habe ich nichts, da ich
1) in Sachen Elektronik noch ein ziemlicher Anfänger bin
2) die Feiertage eine höhere Priorität hatten
3) ich in den kommenden Tagen all meine Zeit auf meine anstehenden Prüfungen konzentrieren werde, und mir daher von der FH neue, funktionierende Boards zuschicken lassen wollte/werde

Schaltplan (http://dl.dropbox.com/u/1745275/Kram/plan.png)
Board (http://dl.dropbox.com/u/1745275/Kram/Board.png)
(Der Bilder-assi behauptet, es seien ungültige URLs. Keine Ahnung was da wieder los ist ^^)

021aet04
27.12.2011, 17:14
Bei IC4 fehlt vor dem Regler ein 100n Kerko und ein Pufferelko. Welche Spannung liegt an der Versorgung an (wo normalerweise 12V ein sollten). Man sollte auch beachten das die Spannung an dem Ausgang der 78XX Spannungsreglerserie nie höher ein darf. Deswegen sieht man oft eine Diode vom Ausgang zum Eingang der Spannungsregler.

Wird irgendetwas warm oder heiß?

MfG Hannes

HannoHupmann
28.12.2011, 12:12
Erst mal saubere Fehlersuche machen bevor du gleich wieder neue Boards bestellst. Nicht dass die dann auch wieder kaputt gehen weil irgendwo ein Kurzschluss ist oder 12V auf den Controller fliessen. Sowas gehört nun mal zum Roboterbauen dazu und ich hab auch gerade erst fünf Tage "geopfert" um ein vermeindlich triviales Problem mit Servoansteuerung zu lösen.

Arkon
20.01.2012, 13:46
Soooo.....

Sry, dass ich mich in letzter Zeit hier nicht weiter geäußert hatte. Ich musste noch ein paar Klausuren hinter mich bringen, welche nunmal Vorrang hatte. Eure Einwände sollen natürlich nicht ungehört/kommentiert bleiben.

Eine genauer Fehlersuche steht noch aus. Dafür hatte ich in den letzten Tagen wie gesagt keine Zeit. Ich habe mir von meinem Prof aber eine neue Platine fertigen lassen, die ich gestern in Empfang genommen habe.

Diese Platinen sind , glaube das hatte ich irgendwo zu Beginn dieses Projektes schon einmal geschrieben, für einen Roboterwettkampf unserer FH vom studentischen Orga-Team entworfen worden. Die Platinen haben bereits ihre Funktionstüchtigkeit bewiesen und liefen im Groß auch sehr zuverlässig. Natürlich gab es auch ein paar Ausfälle, welche aber auf falsche Handhabung zurück zu führen waren. Die Platinen, welche ich mitgenommen habe stammen aus diesem Wettkampf. Wahrscheinlich habe ich schlicht die falsche Kiste erwischt und zwei defekte Platinen mitgenommen.

Die Verbesserungsvorschläge, die hier aufkamen habe ich aber nicht ignoriert sondern an das aktuelle Team weitergegeben, damit dies die Platinen auf etwaige Optimierungen prüfen können. Den aktuellen Status dazu kenne ich aber nicht. Die neue Platine welche mir übergeben wurde hat das gleiche Design wie die bisherigen.

So viel zum Rückblick. Jetzt zum Ausblick:

Da mein Studium sich dem Ende neigt wird es auch langsam Zeit handfeste Ergebnisse zu präsentieren. Dazu werde ich voraussichtlich am Wochenende den Bot montieren und eine Platine für den Teststand zusammen bauen. Im Laufe der kommenden Woche hoffe ich dann die ersten bewegten Bilder präsentieren zu können.

Arkon
30.01.2012, 21:35
Da bin ich wieder.

Natürlich bin ich nicht so weit gekommen wie geplant. Mein Zeitplan ist im Moment ein totales Schlachtfeld und lässt kaum Platz für den Bot.

Trotzdem habe ich meinen Teststand zusammen geschraubt und soeben in Betrieb genommen:
21365
Das sieht im Moment noch etwas chaotisch aus hat aber irgendwie Methode :D

Im Vordergrund sieht man den Displayhalter des späteren Bots. Den habe ich zum Debuggen und zur Anzeige der Messungen vorerst zweckentfremdet. Die verbauten Taster sind dummerweise Öffner (was so ein Zahlendreher in der Bestellung doch ausmacht -_-) und müssen nochmal neu verlötet werden.
Hinter dem Display steht der Teststand mit der Steuerungsplatine, Getriebemotor und den Dekoderscheiben. Die Lichtschranken werden einfach auf Pins des µC gelegt und geben ein sauberes High-Low-Signal aus.
Das Breadboard dient nur der provisorischen, fliegenden Verdrahtung und wird im Bot durch eine kleine Platine ersetzt.

Mein Testprogramm lässt den Motor jetzt mit einer gewählten Geschwindigkeit drehen. Eine Lichtschranke detektiert während der Drehung die eigentlichen "Dekoderschlitze" die zweite Lichtschranke weist einen etwas größeren Abstand zur Drehachse auf und detektiert eine Nase auf der Außenseite der Testscheibe. Damit wird eine volle Umdrehung ermittelt.
2136721366
Während der Testprozedur vollzieht die Dekoderscheibe im Moment 10 volle Umdrehungen. Die erste Lichtschranke zählt die Schritte und schreibt bei Auslösung der zweiten Lichtschranke den aktuellen Stand in ein Array. Dieses kann ich mir im Anschluss anzeigen lassen um zu sehen, ob während der Prozedur Abweichungen auftraten. Somit kann ich verschiedene Scheiben testen und ermittel somit die mit der größten Teilung welche aber noch zuverlässig erkannt wird.

oberallgeier
31.01.2012, 15:24
... Zeitplan ... Mein Testprogramm lässt den Motor jetzt mit einer gewählten Geschwindigkeit drehen ...Hübscher, aufwendiger Testaufbau. Sehr schön. Ich trau mich jetzt garnicht festzustellen, dass Du die Drehrichtungserkennung gestrichen hast. Schade.

Viel Erfolg - und einen guten Wirkungsgrad (sprich: Nutzleistung im Verhältnis zum Leistungseinsatz)

Arkon
31.01.2012, 15:54
Die Drehrichtungserkennung war noch nie vorgesehen :D Ständig hat jemand geschrieben, das ich die Sensoren so anbringen soll, dass dies möglich wäre. Von vorn herein war aber nur eine einfache "Schritterkennung" vorgesehen, was ich auch fast jedes Mal auf eine solche Aussage angemerkt habe :D

Und dank des Lasercutters meiner FH war der Teststand gar nicht so aufwändig. Nur bei den Verschraubungen hätte ich vll etwas sparen können :)

oberallgeier
31.01.2012, 16:06
Die Drehrichtungserkennung war noch nie vorgesehen Ständig ...Ohhh weia, wieder mal nicht (richtig) gelesen. Sorry.

PICture
31.01.2012, 17:04
Hallo!


Die Drehrichtungserkennung war noch nie vorgesehen :D

Richtig, man darf sich nicht zum unnötigen Komplizieren zwingen lassen. !

Deine Vorgehensweise finde ich optimal und glaube, dass du dein geplanntes Ziel erreichen würdest. ;)