Innholdsfortegnelse:

High Five! - en robothånd: 5 trinn
High Five! - en robothånd: 5 trinn

Video: High Five! - en robothånd: 5 trinn

Video: High Five! - en robothånd: 5 trinn
Video: Syrebo™ soft hand rehabilitation robotic gloves for stroke patients 2024, Juli
Anonim
High Five! - en robothånd
High Five! - en robothånd
High Five! - en robothånd
High Five! - en robothånd
High Five! - en robothånd
High Five! - en robothånd
High Five! - en robothånd
High Five! - en robothånd

En dag, i vår Principles of Engineering -klasse, bestemte vi oss for å konstruere sammensatte maskiner av VEX -deler. Da vi begynte å bygge mekanismene, slet vi med å håndtere flere komplekse komponenter som måtte settes sammen. Hvis bare noen kunne gi oss en hånd …

Det er derfor vi, tre Irvington videregående elever i Ms. Berbawys klasse, bestemte oss for å designe og bygge en robothånd fra bunnen av! Med et økonomisk estimat på $ 150 for denne S. I. D. E. Prosjektet, vi var i stand til å skaffe alt materialet som trengs mens vi var godt under budsjettet. Det ferdige produktet består av en Arduino Mega, en servomikrokontroller som driver 5 servoer, som hver er koblet til en 3D-trykt finger som er i stand til å bevege seg individuelt med realistiske ledd.

Dette var et veldig ambisiøst prosjekt, gitt at alle teammedlemmene er videregående elever med travle ungdomsårsprogrammer, og ikke har noen tidligere erfaring med å designe et elektronikkbasert prosjekt helt fra grunnen av. Selv om teammedlemmene våre har tidligere datamaskinassistert design og programmeringserfaring, åpnet prosjektet våre øyne for den potensielle bruken av Arduino maskinvare og programvare på en måte som kan hjelpe folk med å utføre sine daglige oppgaver.

3D -modellering og design av Patrick Ding

Dokumentasjon og Arduino -koding av Ashwin Natampalli

Arduino Coding, Circuitry, and Instructable av Sandesh Shrestha

Trinn 1: CADing

CADing
CADing
CADing
CADing
CADing
CADing

Det første og vanskeligste trinnet i dette prosjektet er å lage 3D -modeller av hånden med fingre. For å gjøre dette, bruk Autodesk Inventor eller Autodesk Fusion 360 (Vi brukte den tidligere).

Bruk delfiler til å lage individuelle CAD -er for håndflaten, fingersegmentene, fingertuppene og pinky -fingersegmentet. Dette tok oss 2-3 revisjoner per del for at driften av ledd og servoer skulle være jevn.

Designet kan være uansett størrelse og form ønsket så lenge strengens vei tillater jevn fingeroperasjon og fingrene ikke kolliderer med hverandre. Sørg også for at fingrene kan falle helt sammen for en lukket knyttneve.

For å fikse problemet med strengforstyrrelser og ineffektive veier, som vi fant i vår første versjon, ble sløyfer, strengguider og tunneler lagt til slik at strengen enkelt kan trekkes og løsnes.

Her er våre ferdige multivisninger og.stl CAD -filer for hver del.

Trinn 2: 3D -utskrift

3D -utskrift
3D -utskrift
3D -utskrift
3D -utskrift
3D -utskrift
3D -utskrift

Etter å ha fullført CAD -ene, bruk en 3D -skriver for å få dem til å bli levende. Dette stadiet kan gjentas flere ganger hvis designet du lager har noen problemer.

For 3D -utskrift, eksporter først CAD -filene som STL -filer. For å gjøre dette i Autodesk Inventor, klikk på rullegardinmenyen Fil og hold markøren over Eksport. Velg CAD -format i popup -kolonnen. I Windows Utforsker -menyen kan du velge.stl -fil fra rullegardinmenyen og velge et sted for filen.

Når filen er klar til å importeres til 3D -skriverens programvare, konfigurerer du utskriftsalternativene etter eget ønske eller følger vår konfigurasjon. 3D -skriverprogramvare varierer fra merke til merke, så se online veiledninger eller håndboken for å navigere i programvaren. For vår hånd brukte vi LulzBot Mini på grunn av tilgjengeligheten i klassen.

Trinn 3: Montering

montering
montering
montering
montering
montering
montering

Når alle delene er trykt i 3D med flåter og støtter fjernet (hvis aktuelt), må hver del være forberedt for å begynne monteringen.

Siden 3D -skrivere ikke er veldig presise og små feil kan oppstå, kan du bruke en fil eller sandpapir eller en dremel med et slipefeste for å jevne ut visse ansikter. For den jevneste leddoperasjonen, fokuser du på ledd og skjæringspunkter for å jevne ut for optimale forbindelser. Noen ganger kan strengtunnelene i fingersegmenter og andre deler hule inn eller være ufullkomne. For å bekjempe store avvik, bruk en drill med en 3/16in -bor for å bore ut tunnelene.

For den enkleste strengruting, monter hver finger, før strengen gjennom tunnelene og bind strengen i endene. Før du fusjonerer hver finger til håndflaten, kjører du strengen gjennom føringsløkkene, en gjennom det øverste hullet og en gjennom bunnen, på håndflaten og fester den til motsatte ender av servoens medfølgende spoler. Når lengdene er korrekte, fester du fingrene til håndflaten.

Som vist på bildet ovenfor, sett inn m4x16 skruer i hver ledd for å holde fingeren sammen. Gjenta hver fingerbyggingsprosess for alle fingre, ved å bruke pinky -segmentene for pinky.

Trinn 4: Arduino Circuitry

Arduino Circuitry
Arduino Circuitry
Arduino Circuitry
Arduino Circuitry
Arduino Circuitry
Arduino Circuitry

Når skjelettet er samlet, må musklene og hjernen integreres. For å kjøre alle servoer samtidig må vi bruke en PCA 9685 motorstyring fra Adafruit. Denne kontrolleren krever en ekstern strømforsyning for å drive servoene. Du kan bruke denne kontrolleren og det proprietære kodingsbiblioteket her.

Når du kobler Arduino til kontrolleren, må du sørge for å registrere pinneutgangene. Hvis du bruker en Arduino Mega, vil dette ikke være nødvendig. I alle tilfeller må du imidlertid sørge for å registrere hvilke porter på motorstyringen servoene er montert på.

For å kontrollere servoer og hånd ved hjelp av en IR -fjernkontroll, legger du til IR -mottakeren og kobler strøm og jord til Arduino med datakabelen til de digitale portene. Sjekk pinout på IR -mottakeren for å sikre at kablingen er korrekt. Et eksempel på kretsen vår er vist.

For å lage denne kretsen må du først koble hver servo til portene 3, 7, 11, 13 og 15 på servomotorkontrollerkortet. Fest hele brettet med de fem pinnene på bunnen til et brødbrett.

Bruk jumperkabler til å koble Arduino's 5V strøm og jord til en strømskinne på brødbrettet (Sørg for at du merker eller husker hvilken side som har 5V fra Arduino!). Dette vil drive IR -sensoren og motorstyringen. Koble en 6V strømforsyning til den andre kraftskinnen. Dette vil drive servoene.

Plasser alle 3 pinnene på IR -sensoren i brødbrettet. Koble strøm og jord til 5V -skinnen og utgangen til digital pin 7.

Siden vi bruker en Arduino Mega, vil portene SDA og SCL på motorstyringen være koblet til SDA- og SCL -portene på Arduino. VCC- og bakkeportene kobles til 5V -skinnen.

Med batteripakken koblet til sin egen kraftskinne, bruker du jumperkabler og en liten flat skrutrekker for å sikre strømmen til servomotorene gjennom det grønne inngangshodet.

Sørg for at alle tilkoblinger er tette, og sjekk alle kabellinjer på nytt med vår TinkerCAD -krets.

Trinn 5: Koding

Koding
Koding
Koding
Koding
Koding
Koding

Det siste trinnet før denne hånden kan tas i bruk for bruk er å kode Arduino. Siden denne hånden bruker motorstyringen PCA 9685, må vi først installere biblioteket, som kan gjøres inne i Arduino Coding Environment. Etter installering må du også installere IRremote -biblioteket for IR Remote -funksjonalitet.

I koden vår er definisjonene av hver knapp på IR -fjernkontrollen vist med 8 -sifrede koder. Disse ble funnet ved hjelp av IRRecord -programmet, som skriver ut til 8 -sifret koden på hver knapp til Serial Monitor.

Vedlagt er både IRRecord -programmet og det ferdige håndkontrollprogrammet.

I begynnelsen av koden inkluderer du bibliotekene IRremote, Wire og Adafruit_PWMServoDriver.

Bruk deretter funnene fra IRRecord til å definere hver knapp på IR -fjernkontrollen. Selv om alt ikke er nødvendig (bare 10 er nødvendig), har alt mulig for rask utvidelse (legge til funksjoner og forhåndsinnstilte bevegelser) for fremtiden. Lag pwm ved hjelp av servodriverfunksjonen og tilordne servoene til pinner på motorstyringen. Bruk de samme verdiene for SERVOMAX/MIN som vist. Tilordne den digitale inngangspinnen til IR -sensoren som 7 og initialiser.

Deklarere oppsettsfunksjonen med initialiseringsserien med baudhastighet på 9600. Aktiver IR -sensoren og start servoen med servofrekvens på 60hz.

Opprett til slutt en if/else -bryter basert på den innkommende overføringen av IR -fjernkontrollen i loop -funksjonen. Deretter lager du en switch/case med tilfeller for hver knapp på IR -fjernkontrollen som skal brukes. Disse kan endres for foretrukne kontroller. For hvert tilfelle, skriv ut knappen som er trykket på seriell skjerm for feilsøking, og bruk en for sløyfe for å flytte servoen. Når alle tilfeller er opprettet, må du fortsette IR -sensoren for flere innkommende signaler før du lukker sløyfefunksjonen. Koding av servoene gjennom motorstyrerkortet finner du på

Anbefalt: