Raspi und Robby als Rampenverleger

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Hallo Forumsgemeinde.

    Möchte hier mal kurz mein (unser) neues Projekt vorstellen.

    Vorwort:

    Ausschlaggebend dazu war letztlich meine (Lieblings)-Nichte.
    Der Feger studiert Informatik/Robotik (Hätte ich nie gedacht) und hat noch 2 Semester.
    Sie brauch aber erstmal ein Päuschen und macht deswegen ein Praktikum bei einem Elektrokonzern.
    Klingt vernünftig, da war sie schon mal, und wird wohl dort zuletzt auch landen

    Immerhin kann sie schon löten und weiss auch, dass das auch recht schmerzlos ohne Asbesthandschuhe geht,
    und die innigst geliebten schwarz-lackierten Fingernägel sich nur bedingt als Lot eignen.
    Der erste Versuch hat ihren Aussagen nach,dem Lötkolben wohl das Leben gekostet.
    Dass ein "komisches Plastikbrett mit lauter sinnlosen Löchern drin" Bread-Board heisst und wie man das nutzt,
    hat etwas länger gedauert, weil das ja "aber sowas von" unlogisch ist.
    Computern und Mathe sind ihr Lieblingshobby, und wenn's mal brennt, steht "Önkelchen" mit Teamviewer parat.
    Auch ich hab schon die Notfallleine gezogen, wenn sie mir was von Theoremen auf Java'nisch vorgeflötet hat.

    Gestern hat sie ihr "Önkelchen" angerufen, und mir aufgeregt erzählt dass sie schon einen "Entwicklungsauftrag" bekommen hat,
    und deshalb ein paar läppische "Frägelchen" hätte.... OHAAA, da kommt was... ich kenn sie.
    WOW... nen Entwicklungsauftrag im Praktikum...:thumbs1:

    Jetzt das Projekt:

    Sie hat einen Raspi(konnte es fast nicht glauben), einen Raupen-Robby mit 2 Antriebsmotoren (PWM),eine Robby-Hand mit Servo,
    eine Mini-Kreuztischsteuerung mit Spindelantrieben (Schrittmotoren) zur X-Y Achsensteuerung, 5 Ultraschall-Sensoren und
    ein PWM Modul für die Fahrmotoren und den Handservo vor die Nase gelegt bekommen.
    Ziel... mit dem Raspi den Robby versuchen zu steuern.
    Die Module gelten nur als Vorgabe.Sollte sie weitere brauchen, keine Problem, wichtig ist das Ziel.
    Mit diesen Sensoren hatte ich im Dezember auch mal rumgespielt.. recht gut .. ~0,3cm - 4 M, wobei es ungenauer wird, je weiter.

    Das ganze bitte mit C.
    Java ist sie fit, C kennt sie so bischen... na dann.
    Die genannten Module sind ihr absolut keine Fremdwörter.

    Als ich das ganze hörte, bin ich senkrecht gestanden.

    Aufgaben:
    1.
    Der Robby soll quasi auf nem "Tisch" rumdüsen und mit Hile der 4 "Kantensensoren" nicht runterknallen.
    Die Sensoren sind vor-hinter und über die 4 Seiten angeordnet.(Bild weiter unten).

    Wenn er ne Kante erkennt, stoppen, rückwärt bis Kante weg, erinnern welcher Sensor das war, nun die gegenüberliegende Achse
    (einer per Zufallsgenerator-errechneten (200-1000ms)-Zeit rückwärts starten,stoppen, dann alles vergessen und auf ein neues.

    Iss ja kein großes Problem.
    Wenn Aufgabe 1 funktioniert, die erste Steigerung.

    Robby wird in die Tischmitte gesetzt, und bekommt ein "unüberwindliches" Hindernis vor die Nase gelegt,das er nocht nicht "sieht".
    Lostigern, stoppen bei Hindernis(Sensor 5),Hindernis mit Sensor 5 vermessen, Hindernis "modifizieren" und drüberfahren.
    Das Hindernis ist quasi ne "Dachlatte" mit variabler Höhe (akzeptiert werden 3cm +- mm) und variabler Breite (2-4 cm).
    Robby hat 2 Auffahrrampen gebunkert, die er vor und hinter das Hindernis legen muss, und dann drüberfahren.
    (Ein Problem das dabei auftritt, ignorieren), die Rampen sind richtig liegend gebunkert.
    Rampen hinlegen, fertig, drüber fahren.
    Dann darf er stoppen.
    Das ist es schon interressant.

    Wenn auch Aufgabe 2 funktioniert, die nächste Steigerung.

    Robby muss entdecken ob das Hindernis "scharf" oder "weich" ist.
    Wenn er das Hindernis entdeckt, muss er zwischem "scharfen" und "weichen" Übergang unterscheiden.
    Wenn es "scharf" ist, Auffahrrampen hinbauen wie oben, drüberfahren und fertig (Kanten vorderseite und Rückseitenerkennung).
    Wenn die Kanten "weich" sind, liegen die Auffahrrampen schon dort, dann Rampen abbauen, bunkern (Bunker sind da leer),
    möglichst 180° drehen, fahren bis Kante
    (hier sollen möglichst 2 Sensoren eng den Kantenrand entdecken, um die 180° Wende zu bestätigen), und fertig.
    Hier wird es lustiger.

    Mit den Raspi hat sie sich schon gut angefreundet(Spielt sie jetzt schon ne Weile mit rum).
    Mit der Robbyhand hat sie schon mit PlastikWürfeln, an anderen Systemen rumgespielt, also das sagt ihr auch was.
    Auch schon über Strommessungen rausgefunden, dass man die Hand stoppen sollte, bevor man den hohlen Plastikwürfel zerquetscht.
    Wenn man aber nach ersten erfolgreichen Test's da nen Finger reinhält ... "Boahhhh Alder, das Ding hat vielleicht gebissen,
    dem hab ich die Krallen gestutzt".(Mit der Fingernagelfeile die kleinen Greifriefen platt manikürt)...
    ....Das sind kleine Servos, also keine Knochenbrecher .....

    Auf'm Tisch rumflitzen ist ihr klar, mit dem Ultraschallsensor hat sie auch schon rumgespielt.
    PWM ..na ja.......zeigt ich ihr mit PIGPIO..ich mag diese Lib, PWM damit kein Problem.
    Das PWM Modul über I²C ... an das DVK511,DVK511 hat sie in der Firma schon bekommen.
    Harte, weiche Hinderniserkennung ...... mach ich mit ihr zusammen .

    Da die Sensoren bei möglichst naher Entfernung arbeiten sollen (Genauigkeit und Zeit pro Messung) ist der S5 Sensor unterhalb
    des Kreuztisches.
    Das hat aber zur Folge, dass die Auffahrrampen über den S5 Sensor hinausbewegt werden müssen, dann abgesenkt,
    zurück zur erkannten Kante und abgelegt werden müssen.
    Das gilt für beide Rampen ob beim hinlegen, oder zurückbunkern.
    Der S5 kriegt aber dann ein Problemchen , denn wenn die Rampe unter ihm vorbeifährt, verliert er den den erkannten gemessenen
    Höhenwert zur Kante,und wird sich denken ..."Ey Alder.. hab mich doch gar nicht bewegt"... WTF?......
    Damit muss er klarkommen, und darf das (erstmal) ignorieren.


    Wenn DAS auch noch funktioniert, die nächste Steigerung, und jetzt wird's: "from here it's then a little bit complicated".:s
    Robby wird "verarscht",und zwar nach Strich und Faden.
    Dann werden die gebunkerten Auffahrrampen wahlweise verkehrt herum reingelegt(wenn überhaupt) ,bzw.die "entschärften" Hinderniskanten
    mit (evtl.) falsch angelegten Rampen (oder keinen) versehen.
    Wenn er dann ne scharfe Hinderniskannte erkennt... VORSICHT, das könnte ne Falle sein.
    Er muss dann bei der Breitenvermessung feststellen... bleibt die Kante stabil? oder fällst sie beim rantasten ab, und ne 2. Kante kommt.
    ....Problem erkannt, da liegt schon ne falsche Rampe.
    Dann muss er erkennen, bevor er versucht das Teil zu bunkern ob ein Bunkerplatz frei..... ansonsten Sirene.
    Das gleiche mit Kante 2...
    Mikroschalteran der Hand stellt bein holen fest (Servo braucht aber lange..???),"nix Rampe da"
    .... Sirene, ansonsten holen, bzw bunkern.
    Beim holen stellt S5 fest, Rampe kommt...Robby weiss wohin vorn oder hinten, Rampe passt nicht, da S5 einen falschen hart/weich Übergang
    an der geholten Rampe festgestellt hat... Rampe zurück andere Rampe holen , gucken mit Mikroschalter ob Rampe da ?
    mit S5 richtig rum ? , ansonsten ...Alarm
    Und bitte gefälligst merken, welche Rampe mit welchem Ergebnis schon bearbeitet wurde... verkürzt (evtl)
    die ganze Phase.
    Das Hindernis kann auch an der Tischkannte liegen.
    Da der S5 Sensor über die Kantensensoren hinausragt,muss er die 2. Kante als "Abgrund" erkennen, und darf heim,
    (die evtl bereitsgelegte vordere Rampe wieder bunkern).

    Und das in allen Variationen (2 Kanten(scharf?,weich?, Abgrund ?) 2 Rampen(Bunkerergebnis ?,Rampen richtig rum?) ... da wird's dann heiss.

    Krönung:
    Die Hand wird durch eine rundum frei drehbare ersetzt, und Robby muss wenn nötig, die Rampe richtig rum drehen,
    neu vermessen, ob ok, und entspr. positioniert hinlegen.
    Das drehen geht allerdings nur, wenn die Rampe X-achsig gesehen am vorderen Max-punkt steht.
    Das Prob ist jetzt, er muss nach der Drehung, auch beim Abtasten erkennen, ob möglichst exakt um 180° gedreht wurde.
    D.h. er mauss quasi den Steigungswinkel berechnen.
    Der Schrittmotor mit Schrittfehlererkennung weis das.
    Mit diesem Sensor... niet.....
    Das lassen wir uns ne andere "Schweinerei" einfallen.:denker:


    Jetzt zu den Parametern.

    Die X-Y Positionen der "Greifwand" der 2 gebunkerten Auffahrrampen sind relativ zum Nullpunkt des Kreuztisches bekannt,
    die liegen also nicht so rum.(siehe Bild weiter unten).
    die Greifwand liegt direkt unter der Hand.
    Auch liegen die schon (erstmal)"richtig-rum" im Bunker, müssen also nicht gedreht werden.
    Die Breite der "Greifwand" ist bekannt, (Bild weiter unten).
    Die Höhe der Tischfläche zur Nullposition der Y-Achse ist bekannt.
    Die Höhe des S5 Sensors über dem Tisch ist bekannt.
    Der Y-Abstand beim Durchfahren der Rampe unter dem S5 Sensors relativ zur Höhe des Nullpunktes der Y-Achse ist bekannt.
    Die Höhe des Hindernises ist bekannt.... (muss aber überprüft werden),bei +- 1 cm Abweichung muss er streiken und ablehnen.
    Die Schallsensoren gehen recht gut bis +-~0,3 cm.(Steigungserkennung ist in Grenzen möglich, dafür auch tauglich).
    Das "Zittern" der gemessenen Werte kriegt man durch langsames rantasten in den Griff.
    Die Hindernisbreite muss erkannt werden , um die Auffahrrampen entspr. zu setzen.... +- paar Millimeter ist egal.
    Die X-Y Position des S5 Sensors relativ zum Nullpunkt des Kreuztisches ist bekannt.
    Die Greifhand muss nur auf und zu machen,die "Greifbreite der Wand" und damit die "ich habs", oder "Hand ist leer"
    Situation wird durch einen Microschalter an der Hand erkannt (Servostrommessung hat man gnädigerweis weggelassen).
    Das "ist da, oder nicht da" muss über die Laufzeit des Hand-servos ermittelt werden.
    Die Rampen sind simple Hölzchen, also kein Gewicht.
    Spannungsversorgung ist durch flexible litze(von oben) gewährleistet.
    Er soll sich ja frei bewegen können, und paar Akkus packen das nicht, wegen dem Motoren.


    Das ganze ist ein "Ziel" für sie, das weiss sie, und ist auch ganz fasziniert und begeistert (das ist das wichtige).
    Wenn's nicht komplett funktioniert wird ihr nichts abgerissen, man kennt sie in der Firma,sie wird halt mal "kräftig" gefordert.

    Nun ja.
    Ich war da natürlich sofort Feuer und Flamme.
    Raspi hab ich genügend da, einen Robby-Satz wie oben beschrieb hab ich nicht, aber bekomme ich diese Woche von ihrer Firma "probeweise" gestellt.
    Wir haben also beschlossen, ... DAS ZIEHEN WIR DURCH....
    ...Parallel...

    Hat auch Vorteile....
    Kenn die Göre seit ihrem Babyalter, mag sie ... hat mich beim probehalber Füttern im Babyalter als Dankeschön mal eben vollgekotzt...
    das Luder... meine ham das net gemacht.
    Der Kontakt ist später bißchen verflaut, umziehen zu ihrem Spezi paar hundert Kilometer... Studium... aber etzt wird's wieder.

    Falls es jemanden interressiert werde ich euch beim Verlauf des Projekt's mit paar Bildern und bißchen berichten sporatisch informieren.
    Falls es dann "finally" wird, werde ich nen kleinen Stream reinstellen, wenn Robby in der fertigen Endphase agiert.


    Hier mal paar Bilder zu den Einzelheiten.
    Der Link zeigt auf das 1. Bild ... rechts oben neben dem Bild hat's vorwärts-rückwärts Tasten zum durchblättern.
    zu Bild 2. Ähhm.. bin keine technischer Zeichner, die Rampen grob hingepfriemeld...
    Wenn man den Kopf um ~45° nach links neigt, kann man das Ding erahnen...:)
    Ist also quasi in der Mitte , vorn und hinten eingefräst, und ne "Greifwand" stehen gelassen.

    Pic's

    Dann kommt eben das übliche Zubehör....das seh ich auch erst gegen Wochenende.

    Gruß root

    Einmal editiert, zuletzt von root (14. Mai 2014 um 01:51)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!