-         
Seite 3 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 21 bis 30 von 34

Thema: Quadraturencoder mit Gabellichtschranken und Zahnrad

  1. #21
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    12.07.2006
    Ort
    Puchheim
    Alter
    70
    Beiträge
    435
    Anzeige

    Mit Untersetzung (Raddurchmesser 46mm) macht der Roboter pro Motorumdrehung ca 40 mm, mit den 48 Encoderzähnen komm ich wohl auf eine Schrittweite/Positionsgenauigkeit von unter 1mm, das dürfte wohl für einen Saugroboter reichen !
    Ab und an muss er sich dann mit einem VL53L0X oder besser VL53L1X erkundigen, wo er sich genau befindet .


    Jetzt muss ich aber mal was zu dem geplanten Saugroboter sagen:

    - nur für glatte Böden ausgelegt
    - nur Sauger, ohne Bürsten (bis auf denen in den Motoren ! )
    - relativ klein, angestrebter Duchmesser unter 20 cm / Höhe ca 10 cm
    - Betrieb mit nur einer ? 18650 Zelle (10 Wh)
    - Betriebsdauer ca 1h
    - extrem leise
    - gezielte Reinigung durch Abarbeiten nach Raumkoordinaten

    Ich werde daher ein 3/4 rädriges Fahrzeug bauen mit zwei angetriebenen Rädern links und rechts und einem Hilfsrad hinten.
    Auf das vordere Stützrad verzichte ich, da das Fahrzeug eine leichte Neigung nach hinten hat (z.T. durch den Akku).
    Die drei Räder sind auf einem gedachten Kreis angeordnet, daher kann das Fahrzeug (wie ein Panzer) um seine Achse drehen.
    Störend ist dabei das hintere Rad, wenn es nicht als Kugel/Omniwheel ausgelegt ist. Ich löse es aber dadurch, dass ich bei Kurvenfahrt
    ein Zusatzrad mit einem Servo absenke. Das funktioniert gut, und das/der Servo zieht eigentlich nur bei den kurzen auf/ab Bewegungen Strom.
    Es reicht bei dem kleinen Fahrzeuggewicht ein Mini-Servo, das ich aus der 5V Verorgung für den Microprozessor beziehe.

    Ich verwende einen NANO-Clone, den ich aber mit 3.6V betreibe (da läuft er noch sicher mit 16 MHz).
    Das spart mir dann die Pegelumsetzer für die Peripherie (z.B. Display).
    Neben den 2 Antriebsmotoren (12V) und dem Servo kommt als Hauptverbraucher der Lüfter hinzu (Radiallüfter ca 75x75mm mit 12V, <6 W).
    Zur Orientierung hat der Prozessor die Karte der Wohnung abgespeichert, orientiert/korrigiert sich aber auch mit Hilfe des Lasers (VL53L0X < 2m, VLX53L1X (< 4m, mit Entwickl. Kit noch etwas teuer)). Er schaut nur nach vorne, aber durch Rotation des Fahzeugs kann er sich auch ein Rundum"Bild" verschaffen.

    Zum Speichern der Koordinaten brauche ich wohl zusätzlichen Speicher, vielleicht eine SD-Karte (ist im Diplay integriert siehe unten).

    Als Testhilfe werde ich wohl auch noch ein SPI-Display (ILI9341) einbauen und eventuell eine Fernbedienung über nRF24L oder Bluetooth.



    Die Fahr-Genaigkeit des Antriebs hab ich bei einem anderen Fahrzeug bereits getestet (mit Namiki-Getriebemotoren), sie liegt mit den dort verwandten integriertem Encoder unter 1 %, auch die Dreheigenschaften (90° links/rechts) funktionieren gut.


    Probleme sehe ich noch bei der SW: wenn beim Abarbeiten des Plans Probleme auftreten (nicht Immobilien wie Stühle, Tiere ) ?
    Aber da scheinen auch die kaufbaren? Roboter noch Entwicklungsbedarf zu haben !!

    Die Materialkosten sehen momentan grob so aus:

    - Radial-Lüfter (ebm ca 35€, andere ca 10-15€)
    - Akku 18650( 4€, mit Protection ca 14€)
    - Akku-Lader (1A 1€)
    - Step-Up (4€: 2xMT3608 für Motoren und Microprozessor/peripherie, 1 x LM29xx für Lüfter)
    - Prozessor (2-4€)
    - Display (10-15€)
    - Motoren (2x3€), Servo (1,50€)
    - Encoder (1-2€)
    - Fernsteuerung(empfänger) (ca 2-7€)
    - Sensoren (VL53L0x) (ca 6€)

    Da lieg ich dann unter 100 €, fehlen nur noch die mechan. Teile
    (Bleche, Räder, Wellen, Kleinteile unter 10-20 €)
    und der Arbeitslohn !
    Geändert von mausi_mick (14.04.2018 um 04:22 Uhr)

  2. #22
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    7.683
    .. Ich verwende einen NANO-Clone, den ich aber mit 3.6V betreibe (da läuft er noch sicher mit 16 MHz) ..
    Vor etlicher Zeit hatte ich mit einem MEINER nanoClones@16Hz die Funktionsgrenzen der Versorgungsspannung bei unter 3,3V getestet. Hab ich eben wiederholt und bestätigt. Ich kenne als Vergleich diesen Thread zu ATMEGA 328P @3,3V und 16MHz. Normalerweise werden meine nanoClones aus Kompatibilitätsgründen umgequarzt auf 20 MHz.

    Mein Testaufbau:
    Dieser "Servotester" (Experimentierplatine) mit einem nanoClone@16MHz
    Servotester OHNE LCD, UART und Servo, aber mit Heartbeat-LED (im Bild direkt unter der Anschlussklemme und USERLed am Clone),
    ......keine weitere Peripherie, Anschlussklemme NC
    Servotest-Programm für Clone@20MHz (Test: Heartbeat 1Hz läuft bei 16MHz 10x in 12,5+ sec)
    Versorgung: Labornetzeil KORAD KA3005D
    Versorgung: Vcc am Clone-Pinn "5V", GND am Clone-Pinn "GND"
    Messung der Versorgungsspannung mit Netzeilanzeige
    Kontrolle der Netzeilanzeige mit METRAHit12s: ~12s : 2,720 V <=> LNT : 2,73 V

    Ergebnis:
    - bei Vcc = 2,71 V .. 2,73 V stellt der Heartbeat seine Tätigkeit ein, POW-Led des Clones leuchtet noch
    - bei Vcc = 2,79 V .. 2,80 V startet der nanoClone/328p - sichtbar durch Heartbeat-Funktion

    Das Ergebnis war reproduierbar (5 auf-ab-Zyklen).
    Ciao sagt der JoeamBerg

  3. #23
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    12.07.2006
    Ort
    Puchheim
    Alter
    70
    Beiträge
    435
    hab die beiden Lichtschranken jetzt stirnseitig am Motor befestigt mithilfe zweier kreissegmentförmigen Platinen, zwischen denen sie leichter auf Zahnhöhe und in "90°" Abstand justiert und fixiert werden können.

    https://www.youtube.com/watch?v=_mxm...ature=youtu.be

    - - - Aktualisiert - - -

    Hallo Oberrallgeier,

    kenne auch diesen Nano Umbau auf 3.3V, hab aber die Spannung mithilfe einer Schottkydiode am AMS1117 etwas in Richtung 3.6V angeghoben. Den Umbau mit 2 Widerständen bei der adj-Version hab ich auch mal gemacht, scheint mir aber vergleichsweise luxuriös.

    Werd das aber auch mal ohne Umbau testen.

    Gruss mausi_mick

  4. #24
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    12.07.2006
    Ort
    Puchheim
    Alter
    70
    Beiträge
    435
    Den 2. Fahrmotor für den Saugroboter hab ich jetzt auch mit Encoder versorgt.

    Als Encoderscheibe /Zahnrad verwende ich ein graues Zahnrad( M=0.5 , 48 Zähne) mit 2,5mm Dicke. Die TCYS 5201 Gabellichtschranken liefern mit diesem Zahnrad ein stabileres (konstantes Tastverhältnis) Rechtecksignal als mit dem roten Zahnrad mit 2mm Dicke.
    Die Justierung der zwischen zwei parallelen Scheiben eingeklemmten Gabellichtschranken mithilfe des 2-Kanaloscis ist relativ einfach.

    Aufbau und Signal siehe:

    https://www.youtube.com/watch?v=hWdgrUPHKrU

  5. #25
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    12.07.2006
    Ort
    Puchheim
    Alter
    70
    Beiträge
    435
    den letzten encoder hab ich jetzt mal mit einem kleinen Testprogramm getestet:

    vorwärts 100 ticks, vorwärts 500 ticks, vorwärts 1000 ticks und vorwärts 5000 ticks.
    Die selben Werte auch für rückwärts.
    Konfiguration:
    Arduino-Nano, MAX14870 H-Brücke, IL9341 2.2" SPI-Display.
    Die Encoderwerte werden über ISR (PCI) an PIN14/A0 und PIN15/A1 ermittelt.
    Auf dem Display werden die Vorgabewerte (rechts) und die ermittelten Encoderwerte ganz links dargestellt.

    Der Motor lief im Test bei ca 8V und PWM = 240. Geplant sind hier 12V und max. PWM um 150.


    Videosequenz: https://www.youtube.com/watch?v=hRih...ature=youtu.be

  6. #26
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    12.07.2006
    Ort
    Puchheim
    Alter
    70
    Beiträge
    435
    Hab den Encoder an einen Schneckenantrieb angepflockt, das führt zu einer schmaleren Antriebseinheit, sodass ich auf dem Saugroboter mehr Platz für Saugbehälter und Lüfter habe.
    die Gabellichtscharnken sind hier auch wieder zwischen zwei Pertinaxplatten zur einfacheren Ausrichtung eingeklemmt.

    1. Test:

    https://www.youtube.com/watch?v=eHtY6srf_Pc


    2. Test:

    https://www.youtube.com/watch?v=eHtY6srf_Pc&feature=youtu.be



    Geändert von mausi_mick (18.04.2018 um 02:36 Uhr)

  7. #27
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    12.07.2006
    Ort
    Puchheim
    Alter
    70
    Beiträge
    435
    Inzwischen (wurde auch Zeit) hab ich den zweiten Fahrmotor aufgebaut und zum Test auf einer Plattform montiert. Das hintere Stützrad wird nur bei Vorwärts-/Rückwärtsfahrt verwandt, bei Rotation wird per Servo ein zusätzliches Rad abgesenkt, das quer ( 90° versetzt) angebracht ist. So kann das Gerät - sofern gut austariert - perfekt auf der Stelle drehen.

    Die ersten Fahrversuche sind recht vielversprechend, man muss aber an der SW und an der Mechanik (gleicher Raddurchmesser, identische Abstände zum Mittelpunkt ... ) wohl noch etwas feilen.

    Das erste Video (Fahrt im Quadrat mit ca 1 m Kantenlänge) :

    https://www.youtube.com/watch?v=fAQzDsjtax4

    https://www.youtube.com/watch?v=fAQzDsjtax4


    Auf Flickr hab ich einige Fotos:










    Geändert von mausi_mick (19.06.2018 um 08:57 Uhr)

  8. #28
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    7.683
    .. ein zusätzliches Rad abgesenkt, das quer ( 90° versetzt) angebracht ist. So kann das Gerät - sofern gut austariert - perfekt auf der Stelle drehen ..
    Bravo, bravo bravo. Die Getriebe gefallen mir - vor solchen Aufbauten hatte ich mich bisher gedrückt mangels Werkstattausrüstung. Na diese Absenkvorrichtung ist ja ein Gag! Irgendwie schick - obwohl ich ohne so etwas, nur mit Hilfe der sowieso vorhandenen Gleitschuhe, mein MiniD0 auch ziemlich gut auf der Stelle drehen kann (und recht prächtig weite oder enge Kurven fahren).

    Wie hoch ist denn bei einer Umfahrung des Quadrates die Abweichung zwischen Abfahrt- und Ankunftspunkt?
    Ciao sagt der JoeamBerg

  9. #29
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    12.07.2006
    Ort
    Puchheim
    Alter
    70
    Beiträge
    435
    Die Abweichung ??

    etwas problematisch, theoretisch wohl bei wenigen mm , in der Praxis nach einer "eckigen" Runde 4-5cm.

    Wobei da einige Dinge zusammenkommen:
    - unterschiedlicher Start links/rechts führt zu leichtem Schwenk im Startmoment ("Urknall"). (scheint mittlerweile gut gelöst zu sein)
    - Kurvenlauf, ab ca 60 cm weicht der Fahrweg von der Geraden ab (z.T. durch geringfügig andere Raddurchmesser) Fehler unter 1% (1cm bei 1 m Fahrweg)
    - unterschiedliches Abbremsen links / rechts führt zu leichtem Schwenk beim Stopp. ( scheint mittlerweile gut gelöst zu sein)
    - Drehtoleranz und Versatz bei Drehung (Schlupf) (vermutlich unter 1°), Versatz nicht festgestellt , Fahrzeug ist aber nicht austariert.

    Ich weiss aber noch nicht, wie stabil das ist, auch in Abhängigkeit vom Akkuladezustand.

    Genauer untersuchen muss ich das auch mit dem Kurvenlauf, der wohl auch an den unterschiedlichen Motorkennlinien liegt.

    Werd mich jetzt aber hauptsächlich um die Fahrweg-Programmierung für das Saugen kümmern und parallel dazu den VL53L1 (<= 4m Reichweite)
    testen, vielleicht an einem Doppelservo, damit ich auf 360° Erfassungsbereich komme.

    Werd aber die grossen Flächen (gibt es so was ?) nicht mäanderförmig abfahren, sondern eher in verschachteleten Rechtecken.
    da brauch ich keine 180° Schwenks, sondern nur welche mit 90° - und auch deutlich weniger !

    Fahr das jezt mit Fast-PWM (Prescaler = 8, Phase-Correct-PWM machte Ärger mit delay(...), da ich PWM an PIN5/6 (TIMER0) habe.

    Die InterruptRoutinen für die Encoder gehen über PinChangeInterrupt, da bin ich nicht auf PIN2/3 angewiesen (UNO/NANO).
    Die Encoder hängen jetzt an A0,A1 bzw. A2,A3.
    Geändert von mausi_mick (20.06.2018 um 14:39 Uhr)

  10. #30
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    12.07.2006
    Ort
    Puchheim
    Alter
    70
    Beiträge
    435
    Die Antriebsräder hatten wohl echt leicht unterschiedlichen Durchmesser, ich hab sie getauscht geegen welche, wo der Durchmesser nur ca o,3mm abweicht (bei ca 46 mm Durchmesser). Sie sind auch nicht so elastisch, rutschen aber eher durch (Schlupf).
    Das Fahrverhalten damit sit insgesamt besser, ich komme auf ca 2-3cm seitlichen Versatz nach 2 "Runden", danach wird es deutlich schlechter.
    Werd mich aber jetzt primär mit dem VL53L1X Abstandsensor / TOF (< 4m) befassen. Ich hab heute zum Drehen mal einen kleinen Stepper getestet, gefällt mir aber vom Stromverbrauch nicht.
    Auch benötigt er bzw. ULN2003 4 Steuerleitungen . Da ist mir ein Servo angenehmer, auch wenn die Winkel-Genauigkeit schlechter ist. Ich möchte aber auf >= 360° kommen für ein Rundum-Radar,
    da muss ich mir noch was einfallen lassen.

Seite 3 von 4 ErsteErste 1234 LetzteLetzte

Berechtigungen

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