Innholdsfortegnelse:

DFRobot Turtle Robot: 12 trinn (med bilder)
DFRobot Turtle Robot: 12 trinn (med bilder)

Video: DFRobot Turtle Robot: 12 trinn (med bilder)

Video: DFRobot Turtle Robot: 12 trinn (med bilder)
Video: DFrobot Turtle Robot 2024, November
Anonim
DFRobot Turtle Robot
DFRobot Turtle Robot
DFRobot Turtle Robot
DFRobot Turtle Robot
DFRobot Turtle Robot
DFRobot Turtle Robot

Til dags dato har verkstedrobotprosjektene mine blitt drevet mot lave kostnader og enkel montering. Hva om ytelse og nøyaktighet var målene, og ikke kostnaden? Hva om et robotkitfirma var villig til å donere deler? Og hva om vi tegnet med noe annet enn markører?

Så målet med dette prosjektet er å lage en nøyaktig Turtle Robot ved å bruke deler fra hyllen som vil trekke noe interessant til neste Maker Fair.

Turtles Away!

Trinn 1: Deler

Deler
Deler
Deler
Deler
Deler
Deler
Deler
Deler

DFRobot ga hovedkomponentene. Her er hva vi bruker:

  • 1 stk., Bluno M0 hovedkort, SKU: DFR0416 eller en vanlig Arduino Uno
  • 1 stk., Dual Bipolar Stepper Motor Shield for Arduino (DRV8825), SKU: DRI0023
  • 2 stk., Hybrid trinnmotor, SKU: FIT0278
  • 1 stk., 5 mm gummihjulskoblingssett (par), SKU: FIT0387
  • 1 stk., 9G servo SKU: SER0006

For strøm, kommer jeg til å bruke 18650 litiumceller, så jeg kjøpte:

  • 3 ea., EBL 18650 Batteri 3,7V
  • 1 ea., KINDEN 18650 Smart batterilader
  • 3 ea., 18650 Batteriholder

Jeg brukte også litt forskjellig maskinvare:

  • 2 stk., Buna-N gummi #343 O-ring (3/16 "x 3-3/4" ID)
  • 1 stk., 1 "kulelager med lavt karbonstål
  • 10 stk., M3x6MM Panhodeskrue
  • 2 stk., M3x8MM Panhodeskrue
  • 4 stk., M3x6MM flatskrue
  • 14 ea., M3 mutter
  • 4 stk., #2 x 1/4 gjengeformende skrue

Vi kommer også til å trenge en kreativ måte å dele batteristrøm mellom motorskjoldet og Arduino siden det ikke ser ut til å være tilstrekkelig for det. Jeg brukte 2.1mm x 5mm fat jack -enden på en død strømforsyning, eller noe lignende.

Verktøy:

  • Phillips -skrutrekker
  • Wire strippere
  • Varm limpistol (valgfritt)
  • Loddejern og loddetinn

Og ikke minst:

  • Tålmodighet
  • Utholdenhet
  • Positiv holdning

Trinn 2: 3D -deler

3D -deler
3D -deler
3D -deler
3D -deler
3D -deler
3D -deler

Jeg bestemte meg for å prøve å designe alt 3D i FreeCad for denne roboten for å hjelpe meg å lære. Alt jeg trengte å gjøre var å overføre dimensjoner for servo- og pennarrangementet, og deretter skalere resten opp for å passe de mye større stepperne.

  • Større hjul for å gi klaring til batteriene.
  • Tykkere chassis for å gi styrke for den økte vekten.
  • Større hjul for å matche den hevede dekkhøyden.
  • Modulær for enkel testing og tilpasning.

Her er brikkene du trenger. Alle filene ligger på

  • 1 stk., Chassis
  • 1 ea., Toppstiver
  • 2 stk., Hjul
  • 1 stk., Fat
  • 1 stk., Servoholder

Trinn 3: Chassismontering Del 1

Chassismontering Del 1
Chassismontering Del 1
Chassismontering Del 1
Chassismontering Del 1
Chassismontering Del 1
Chassismontering Del 1
  • Start med å sette inn M3 -muttere i chassisavstandene. De kan enten presses inn eller trekkes inn med en M3 -skrue.
  • Monter stepperne med M3 -skruer med de elektriske kontaktene vendt mot den bakre (kortere) enden.
  • Monter batteriholderne med flatskruer.

Trinn 4: Chassismontering del 2

Chassismontering del 2
Chassismontering del 2
Chassismontering del 2
Chassismontering del 2
Chassismontering del 2
Chassismontering del 2
  • Monter fatet, toppstykket og servoen sammen med M3 -skruer og muttere.
  • Monter det kombinerte toppstykket på trinnene med M3 -skruer.
  • Sett stållageret inn i hjulholderen, varm det opp med en hårføner om nødvendig for å myke det opp.
  • Monter hjulet på kroppen ved hjelp av M3 -skruer.

Trinn 5: Hjulmontering

Hjulmontering
Hjulmontering
Hjulmontering
Hjulmontering
Hjulmontering
Hjulmontering
Hjulmontering
Hjulmontering
  • Å få navene til å gripe akselen er et problem siden akslene er 5 mm og navet (som påstår å være 5 mm) faktisk er 6 mm. Å bruke nok dreiemoment på klemmeskruene vil sannsynligvis fjerne dem, så jeg brukte et par visergrep for å lukke toleransen først.
  • Etter justering av toleransen, skyv navet på trinnakselen og stram klemmeskruene.
  • Plasser 3D -hjulet på navet, sett inn en stor bolt og stram til.
  • Plasser O-ringen over navet.
  • Sørg for at hjulet roterer uten å vingle. Juster om nødvendig.

Trinn 6: Kabling

Kabling
Kabling
Kabling
Kabling
Kabling
Kabling
Kabling
Kabling

La oss få strømmen ut av veien, slik at vi kan teste stepperne. Vi trenger:

  • Stepperskjoldet krever mellom 8 og 35V for å kjøre trinnene.
  • Stepper er vurdert til 3,4V, men er vanligvis drevet av 12V.
  • Bluno (Arduino) har en anbefalt inngangsspenning på 7 - 12V, eller kan drives direkte av 5V USB.

Litiumbatteriets celler har en nominell spenning på 3,7V. Hvis vi setter tre i serie, gir det oss 3 x 3,7V = 11,1 V og omtrent 3 x 3000 mAh = 9000 mAh. Bluno trekker sannsynligvis bare 20 mA, så mesteparten av avløpet kommer fra stepperne, som kan trekke opp til en forsterker eller mer avhengig av belastning. Det burde gi oss timers kjøretid.

For testing kan du levere 12V regulert til skjoldet og 5V USB til Arduino. Det kan være lettere å bare koble batteriene til strømmen samtidig.

  • Lodd batteriholderne parallelt i henhold til tegningen.
  • Monter Arduino ved hjelp av gjengeskruene #2.
  • Plasser motorskjermen på toppen av Arduino
  • Fjern de berørte 2,1 mm x 5 mm jackledninger og vri dem sammen med batteriledningene:

    Hvit stripe er positiv, vri med rød batteriledning

  • Sett inn den røde ledningen i VCC og den svarte ledningen i GND på motorskjermen.

Trinn 7: Stepping Stepper

Stepping Stepper
Stepping Stepper
Stepping Stepper
Stepping Stepper
Stepping Stepper
Stepping Stepper
Stepping Stepper
Stepping Stepper

Jeg hadde litt problemer med å sette sammen nok informasjon til å få dette til å fungere, så forhåpentligvis vil dette hjelpe andre. Nøkkeldokumentet du trenger er på

Koble trinntrådene og strømforsyningen til skjoldet ditt:

  • 2B blå
  • 2A Rød
  • 1A svart
  • 1B Grenn

Den medfølgende eksempelskissen fungerte for meg, men er ikke for lærerik. Vi må kontrollere hastighet og rotasjon, samt frigjøre trinnmotorene når de ikke er i bruk for å spare strøm.

Jeg fant et modifisert eksempel fra https://bildr.org/2011/06/easydriver/ som har hjelperfunksjoner. Den driver bare en stepper om gangen, men gir deg tillit til at vi er på rett spor. Vi vil skrive litt mer sofistikert kode senere.

Trinn 8: Servo

Servo
Servo
Servo
Servo
Servo
Servo

Servoen brukes til å heve og senke pennen for tegning.

  • Plasser armen på navet og vri trinnvis forsiktig mot klokken og se ned på den til den når stoppet.
  • Fjern armen og plasser den mot venstre (dette vil være nedover).
  • Sett inn den lille gjengeskruen og stram til.
  • Sett servoen inn i festet med navenden opp og fest med to større gjengeskruer.

Trinn 9: Kalibrering

Kalibrering
Kalibrering
Kalibrering
Kalibrering

På grunn av variasjoner i montering og justering, må roboten kalibreres slik at den kan bevege presiserte avstander og vinkler.

  • Mål hjuldiameteren fra ytterkantene på gummi-o-ringen.
  • Mål akselavstanden fra midten av o-ringene på bunnen av roboten (der den kommer i kontakt med gulvet).
  • Last ned vedlagt kalibreringsskisse
  • Skriv inn dine målte parametere.
  • Last opp skissen..

Forbered pennen:

  • Fjern hetten og skyv pennhalsbåndet fra tuppen.
  • Sett pennen i holderen med servoarmen rett opp.
  • Sørg for at pennen ikke berører papir i denne posisjonen.
  • Hvis pennen binder seg i skaftet, send oss en fil for å fjerne grovhet og øke boringsdiameteren.

Tegn en firkant:

  • Skyv strømbryteren til "På".
  • Vent flere sekunder til oppstartslasteren starter.
  • Etter at roboten er ferdig med den første firkanten, fjerner du pennen og slår den av.
Bilde
Bilde
Bilde
Bilde

Juster parameteren wheel_dia først. Mål lengden på siden av torget. Det bør være 100 mm:

  • Hvis den målte avstanden er for lang, øker du hjul_dia.
  • Hvis den målte avstanden er for kort, reduserer du hjul_dia.
Bilde
Bilde
Bilde
Bilde

Etter at du har avstandskalibreringen, justerer du hjulbase -parameteren som påvirker svingvinkelen. Legg roboten på et nytt ark, slå den på og la den tegne alle fire rutene:

  • Hvis roboten svinger for skarpt (boksen roterer med klokken), reduser du akselavstanden.
  • Hvis roboten ikke svinger kraftig nok (boksen roterer mot klokken), øker du akselavstanden.
  • På grunn av avrundingsfeil i trinnkoden og slop i girene til de rimelige stepperne, vil du aldri få det perfekt, så ikke bruk for mye krefter på det.

Trinn 10: Tegning

Tegning
Tegning
Tegning
Tegning
Tegning
Tegning

På tide å tegne! Last ned de vedlagte skissene for å gi deg en start.

Trinn 11: Hva nå? Læreplan

Hva nå? Læreplan!
Hva nå? Læreplan!
Hva nå? Læreplan!
Hva nå? Læreplan!
Hva nå? Læreplan!
Hva nå? Læreplan!

Det fungerer og tegner fine firkanter. Nå begynner moroa.

Her er et par ressurser for å lære skilpaddegrafikk.

  • https://blockly-games.appspot.com/ (blokkprogrammering)
  • TinyTurtle Tutorial (JavaScript)
  • Kode med Anna og Elsa fra Hour of Code

Jeg har også lagt ut en instruks om hvordan du bruker skilpadderoboten disse online-ressursene med Turtle Robot. Generelt kan en hvilken som helst Turtle JavaScript -kode limes inn og kjøres i kalibreringsskissen. Du kan teste utdataene på datamaskinen først og deretter laste den opp til skilpadden din for å trekke ut det i virkeligheten!

For studenter, her er et par prosjektideer:

  • Programmer roboten din til å skrive navnet ditt!
  • Design og 3D -utskrift av et navneskilt i TinkerCad fra en mal. Den kan festes under servomotoren.
  • Gi roboten din litt personlighet med litt varmt lim og bling. (Bare hold hjul og øyne fri for hindringer).
  • Ut fra OSTR_eyes -skissen, design og test en algoritme for å navigere i et rom. Hva gjør du når det ene øyet oppdager noe. Begge øynene? Kan du inkludere Arduinos tilfeldige () -funksjon.
  • Konstruer en labyrint på et stort ark på gulvet og programmer roboten din til å navigere gjennom den.
  • Konstruer en labyrint med vegger og design en algoritme for å navigere i den automatisk.
  • Knappen mellom lysdiodene er ikke tatt i bruk ennå, og er koblet til Arduino pin "A3". Hva kan den brukes til? Bruk den til å slå en LED på og av til å begynne med.
  • Hvis du ikke gjorde undersøkelsesdelen i trinnet "Firmware (FW): Testing and Blinking", kan du prøve tilbake.

Trinn 12: Men vent, det er mer

Men vent, det er mer!
Men vent, det er mer!

Hvis du har vært oppmerksom, la du merke til at fatet er firkantet. Av en eller annen merkelig kosmisk tilfeldighet har pastellkunstnerkritt samme bredde som diameteren på Crayola -markørene. Alt vi trenger er en måte å legge nok press på krittet, og vi er en fortauartist.

Du vil trenge:

  • 3D -trykt fat og ram (https://www.thingiverse.com/thing:2976527)
  • Kritt, enten pastell firkantet kunstner kritt eller liten rund kritt (ikke fett fortau ting).

    https://a.co/6B3SzS5

3/4 "skiver for vekt

Trinn:

  • Skriv ut de to vedlagte filene.
  • Fjern servoen og servoholderen.
  • Fest den firkantede matertønnen.
  • Slip krittet til et nærpunkt.
  • Legg kritt i fatet.
  • Legg væren i fatet.
  • Legg vaskemaskinens vekt på væren.

Anbefalt: