Inhoudsopgave:

DFRobot Turtle Robot - Ajarnpa
DFRobot Turtle Robot - Ajarnpa

Video: DFRobot Turtle Robot - Ajarnpa

Video: DFRobot Turtle Robot - Ajarnpa
Video: DFrobot Turtle Robot 2024, November
Anonim
DFRobot Schildpadrobot
DFRobot Schildpadrobot
DFRobot Schildpadrobot
DFRobot Schildpadrobot
DFRobot Schildpadrobot
DFRobot Schildpadrobot

Tot op heden zijn mijn projecten voor werkplaatsrobots gericht op lage kosten en eenvoudige montage. Wat als prestaties en nauwkeurigheid de doelen waren en niet de kosten? Wat als een robotkitbedrijf bereid was onderdelen te doneren? En wat als we met iets anders dan stiften zouden tekenen?

Het doel van dit project is dus om een nauwkeurige Turtle Robot te maken met behulp van standaard onderdelen die iets interessants zal tekenen voor de volgende Maker Fair.

Schildpadden weg!

Stap 1: Onderdelen

Onderdelen
Onderdelen
Onderdelen
Onderdelen
Onderdelen
Onderdelen
Onderdelen
Onderdelen

DFRobot leverde de hoofdcomponenten. Dit is wat we gebruiken:

  • 1 ea., Bluno M0 moederbord, SKU:DFR0416 of een gewone Arduino Uno
  • 1 ea., Dubbel bipolair stappenmotorschild voor Arduino (DRV8825), SKU:DRI0023
  • 2 stuks, hybride stappenmotor, SKU:FIT0278
  • 1 stuk, 5 mm rubberen wielkoppelingsset (paar), SKU:FIT0387
  • 1 stuk, 9G servo SKU:SER0006

Voor stroom ga ik 18650 lithiumcellen gebruiken, dus kocht ik:

  • 3 stuks, EBL 18650 Batterij 3.7V
  • 1 stuk, KINDEN 18650 slimme batterijlader
  • 3 stuks, 18650 batterijhouder

Ik heb ook wat verschillende hardware gebruikt:

  • 2 stuks, Buna-N Rubber #343 O-ring (3/16" x 3-3/4" ID)
  • 1 stuk, 1 "kogellager van koolstofarm staal
  • 10 stuks, M3x6MM Panhead-schroef
  • 2 stuks, M3x8MM bolkopschroef
  • 4 stuks, M3x6MM schroef met platte kop
  • 14 st., M3 moer
  • 4 stuks, #2 x 1/4 draadvormende schroef

We hebben ook een creatieve manier nodig om batterijvermogen te delen tussen het Motor Shield en de Arduino, omdat daar geen voorzieningen voor lijken te zijn. Ik gebruikte het 2.1 mm x 5 mm barrel jack-uiteinde van een dode voeding, of iets dergelijks.

Gereedschap:

  • Kruiskopschroevendraaier
  • Draadstrippers
  • Heet lijmpistool (optioneel)
  • Soldeerbout & soldeer

En niet in de laatste plaats:

  • Geduld
  • doorzettingsvermogen
  • Positieve instelling

Stap 2: 3D-onderdelen

3D-onderdelen
3D-onderdelen
3D-onderdelen
3D-onderdelen
3D-onderdelen
3D-onderdelen

Ik besloot om te proberen alle 3D in FreeCad voor deze robot te ontwerpen om me te helpen leren. Het enige dat ik hoefde te doen, was de afmetingen voor de servo- en pen-opstelling overbrengen en vervolgens de rest opschalen om op de veel grotere steppers te passen.

  • Grotere wielen om ruimte te bieden aan de batterijen.
  • Dikker chassis om kracht te bieden voor het verhoogde gewicht.
  • Groter zwenkwiel passend bij de verhoogde dekhoogte.
  • Modulair voor eenvoudig testen en aanpassen.

Hier zijn de stukken die je nodig hebt. Alle bestanden zijn ondergebracht op

  • 1 stuk, chassis
  • 1 stuk, bovensteun
  • 2 stuks, wiel
  • 1 stuk, vat
  • 1 stuk, servohouder

Stap 3: Chassismontage deel 1

Chassismontage deel 1
Chassismontage deel 1
Chassismontage deel 1
Chassismontage deel 1
Chassismontage deel 1
Chassismontage deel 1
  • Begin met het plaatsen van M3-moeren in de chassisafstandhouders. Ze kunnen worden ingedrukt of naar binnen worden getrokken met een M3-schroef.
  • Monteer de steppers met M3-schroeven met de elektrische connectoren naar het achterste (kortere) uiteinde gericht.
  • Monteer de batterijhouders met platkopschroeven.

Stap 4: Chassismontage deel 2

Chassismontage deel 2
Chassismontage deel 2
Chassismontage deel 2
Chassismontage deel 2
Chassismontage deel 2
Chassismontage deel 2
  • Monteer de loop, het bovenstuk en de servo samen met M3-schroeven en moeren.
  • Monteer het gecombineerde bovenstuk aan de steppers met M3 schroeven.
  • Plaats het stalen lager in de houder van het zwenkwiel en verwarm het indien nodig met een föhn om het zachter te maken.
  • Monteer het zwenkwiel op het lichaam met behulp van M3-schroeven.

Stap 5: Wielmontage

Wiel montage
Wiel montage
Wiel montage
Wiel montage
Wiel montage
Wiel montage
Wiel montage
Wiel montage
  • Het is een probleem om de naven op de as te krijgen, aangezien de assen 5 mm zijn en de naaf (die beweert 5 mm te zijn) eigenlijk 6 mm is. Als u voldoende koppel op de klemschroeven gebruikt, worden ze waarschijnlijk verwijderd, dus ik heb een paar bankschroeven gebruikt om eerst de tolerantie te sluiten.
  • Na het aanpassen van de tolerantie de naaf op de stappenas schuiven en de klemschroeven vastdraaien.
  • Plaats het 3D-wiel op de naaf, steek de grote bout erin en draai vast.
  • Plaats de O-ring over de naaf.
  • Zorg ervoor dat het wiel draait zonder te wiebelen. Pas zo nodig aan.

Stap 6: Bedrading

Bedrading
Bedrading
Bedrading
Bedrading
Bedrading
Bedrading
Bedrading
Bedrading

Laten we de stroom uit de weg halen, zodat we de steppers kunnen testen. Wij hebben nodig:

  • Het stepper shield heeft tussen de 8 en 35V nodig om de steppers te laten werken.
  • De steppers zijn geschikt voor 3,4V, maar worden meestal aangedreven door 12V.
  • De Bluno (Arduino) heeft een aanbevolen ingangsspanning van 7 - 12V, of kan direct worden gevoed door 5V USB.

De lithiumbatterijcellen hebben een nominale spanning van 3,7 V. Als we er drie in serie zetten, krijgen we 3 x 3,7 V = 11,1 V en ongeveer 3 x 3000 mAh = 9000 mAh. De Bluno trekt waarschijnlijk slechts 20 mA, dus het grootste deel van de afvoer komt van de steppers, die afhankelijk van de belasting tot een ampère of meer kunnen trekken. Dat zou ons uren speeltijd moeten opleveren.

Voor het testen kun je 12V gereguleerd leveren aan het schild en 5V USB aan de Arduino. Het is misschien gemakkelijker om de batterijen gewoon op beide tegelijk van stroom te voorzien.

  • Soldeer de batterijhouders parallel volgens de tekening.
  • Monteer de Arduino met behulp van de # 2 draadvormende schroeven.
  • Plaats het motorschild bovenop de Arduino
  • Strip de geborgen 2,1 mm x 5 mm jack-draden en draai ze samen met de accukabels:

    Witte streep is positief, draai met rode batterijkabel

  • Steek de rode kabel in de VCC en de zwarte kabel in GND op het motorscherm.

Stap 7: Stappen op de stepper

De stepper stappen
De stepper stappen
De stepper stappen
De stepper stappen
De stepper stappen
De stepper stappen
De stepper stappen
De stepper stappen

Ik had een beetje moeite om voldoende informatie bij elkaar te krijgen om dit te laten werken, dus hopelijk zal dit anderen helpen. Het belangrijkste document dat u nodig hebt, vindt u op

Sluit de stappendraden en voeding aan op je shield:

  • 2B Blauw
  • 2A Rood
  • 1A Zwart
  • 1B Grenn

De meegeleverde voorbeeldschets werkte voor mij, maar is niet al te leerzaam. We moeten de snelheid en rotatie regelen en de stappenmotoren vrijgeven wanneer ze niet worden gebruikt om energie te besparen.

Ik vond een aangepast voorbeeld van https://bildr.org/2011/06/easydriver/ dat helperfuncties heeft. Hij bestuurt slechts één stepper tegelijk, maar geeft u het vertrouwen dat we op de goede weg zijn. We zullen later wat meer geavanceerde code schrijven.

Stap 8: servo

Servo
Servo
Servo
Servo
Servo
Servo

De servo wordt gebruikt om de pen omhoog en omlaag te brengen om te tekenen.

  • Plaats de arm op de naaf en draai de stepper voorzichtig tegen de klok in terwijl u erop neerkijkt totdat deze de aanslag bereikt.
  • Verwijder de arm en plaats deze naar links gericht (dit is de neerwaartse positie).
  • Plaats de kleine draadvormende schroef en draai vast.
  • Plaats de servo in de houder met het uiteinde van de naaf naar boven en bevestig met twee grotere draadvormende schroeven.

Stap 9: Kalibratie

Kalibratie
Kalibratie
Kalibratie
Kalibratie

Vanwege variaties in montage en uitlijning, moet de robot worden gekalibreerd zodat deze nauwkeurig bepaalde afstanden en hoeken kan verplaatsen.

  • Meet de wieldiameter vanaf de buitenranden van de rubberen o-ring.
  • Meet de wielbasis vanaf het midden van de O-ringen aan de onderkant van de robot (waar deze contact maakt met de vloer).
  • Bijgevoegde kalibratieschets downloaden
  • Voer uw gemeten parameters in.
  • Upload de schets..

Bereid de pen voor:

  • Verwijder de dop en schuif de penkraag van de puntzijde.
  • Plaats de pen in de houder met de servo-arm recht omhoog.
  • Zorg ervoor dat de pen in deze positie het papier niet raakt.
  • Als de pen in de schacht vastzit, gebruikt u een vijl om eventuele ruwheid te verwijderen en de boringdiameter te vergroten.

Teken een vierkant:

  • Schuif de aan/uit-schakelaar naar "Aan".
  • Wacht enkele seconden totdat de bootloader begint.
  • Nadat de robot zijn eerste vierkant heeft voltooid, verwijdert u de pen en schakelt u de robot uit.
Afbeelding
Afbeelding
Afbeelding
Afbeelding

Pas eerst de wheel_dia parameter aan. Meet de lengte van de zijde van het vierkant. Het moet 100 mm zijn:

  • Als de gemeten afstand te lang is, verhoog dan wheel_dia.
  • Als de gemeten afstand te kort is, verklein dan wheel_dia.
Afbeelding
Afbeelding
Afbeelding
Afbeelding

Nadat u de afstandskalibratie hebt uitgevoerd, past u de parameter wheel_base aan die de hoek van de bocht beïnvloedt. Plaats de robot op een nieuw vel papier, zet hem aan en laat hem alle vier de vierkanten tekenen:

  • Als de robot te snel draait (doos draait met de klok mee), verlaag dan de wielbasiswaarde.
  • Als de robot niet scherp genoeg draait (doos draait tegen de klok in), verhoog dan de wielbasiswaarde.
  • Door afrondingsfouten in de stepping code en slop in de versnellingen van de goedkope steppers, krijg je het nooit perfect, dus besteed er niet te veel moeite aan.

Stap 10: Tekenen

Tekening
Tekening
Tekening
Tekening
Tekening
Tekening

Tijd om wat te tekenen! Download de bijgevoegde schetsen om u op weg te helpen.

Stap 11: wat nu? leerplan

Wat nu? leerplan!
Wat nu? leerplan!
Wat nu? leerplan!
Wat nu? leerplan!
Wat nu? leerplan!
Wat nu? leerplan!

Het werkt en tekent mooie vierkanten. Nu begint het plezier.

Hier zijn een aantal bronnen voor het leren van afbeeldingen van schildpadden.

  • https://blockly-games.appspot.com/ (blokprogrammering)
  • TinyTurtle-zelfstudie (JavaScript)
  • Codeer met Anna en Elsa uit Hour of Code

Ik heb ook een Instructable gepost over het gebruik van de schildpadrobot deze online bronnen met de Turtle Robot. Over het algemeen kan elke Turtle JavaScript-code worden geplakt en uitgevoerd in de kalibratieschets. Je kunt de uitvoer eerst online testen op een computer en deze vervolgens uploaden naar je schildpad om deze in het echt uit te tekenen!

Voor studenten zijn hier een paar projectideeën:

  • Programmeer uw robot om uw naam te schrijven!
  • Ontwerp en 3D print een naamplaatje in TinkerCad vanuit een sjabloon. Het kan onder uw servomotor worden bevestigd.
  • Geef je robot wat persoonlijkheid met wat hete lijm en bling. (Houd de wielen en ogen vrij van obstakels).
  • Van de OSTR_eyes schets, ontwerp en test je een algoritme om door een kamer te navigeren. Wat doe je als één oog iets detecteert. Beide ogen? Zou je de random()-functie van Arduino kunnen opnemen.
  • Bouw een doolhof op een groot vel papier op de vloer en programmeer je robot om er doorheen te navigeren.
  • Bouw een doolhof met muren en ontwerp een algoritme om er automatisch doorheen te navigeren.
  • De knop tussen de LED's is nog niet in gebruik genomen en is verbonden met Arduino pin "A3". Waar zou het voor gebruikt kunnen worden? Gebruik het om om te beginnen een LED aan en uit.
  • Als u het gedeelte Onderzoek van de stap " Firmware (FW): testen en knipperen " niet hebt gedaan, gaat u terug en probeert u het.

Stap 12: Maar wacht, er is meer

Maar wacht, er is meer!
Maar wacht, er is meer!

Als je goed hebt opgelet, heb je gemerkt dat de loop vierkant is. Door een vreemd kosmisch toeval heeft pastelkrijt dezelfde breedte als de diameter van de Crayola-stiften. Alles wat we nodig hebben is een manier om genoeg druk op het krijt te zetten, en we zijn een stoepkunstenaar.

Je zal nodig hebben:

  • 3D-geprint vat en ram (https://www.thingiverse.com/thing:2976527)
  • Krijt, ofwel het pastel vierkante kunstenaarskrijt of kleine ronde krijt (niet het dikke stoep spul).

    https://a.co/6B3SzS5

3/4" ringen voor gewicht

Stappen:

  • Print de twee bijgevoegde bestanden uit.
  • Verwijder de servo en servohouder.
  • Bevestig de vierkante voerton.
  • Slijp het krijt tot een dichtbijgelegen punt.
  • Plaats krijt in vat.
  • Plaats ram in vat.
  • Plaats het gewicht van de ring op de ram.

Aanbevolen: